Cette page explique comment créer, afficher, répertorier et supprimer des enregistrements d'annotations. Les libellés et les tags pour le texte, les images et le contenu audio des soins de santé sont des exemples d'enregistrements d'annotations. Pour obtenir une présentation des magasins d'annotations et des enregistrements d'annotations, consultez la section Annotations.
Créer un enregistrement d'annotation
Pour pouvoir créer un enregistrement d'annotation, vous devez d'abord créer un magasin d'annotations.
Les exemples suivants montrent comment créer un enregistrement d'annotation. Pour en savoir plus, consultez projects.locations.datasets.annotationStores.annotations.create
.
curl
Pour créer un enregistrement d'annotation, envoyez une requête POST
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- Source de l'enregistrement d'annotation
- Type d'enregistrement d'annotation
- Un jeton d'accès
L'exemple suivant montre une requête POST
utilisant curl
qui crée un enregistrement d'annotation pour une image DICOM. L'annotation utilise un cadre de délimitation pour marquer les dimensions d'une partie de l'image et ajouter un libellé à la zone limitée avec le nom "bounding-box". Cet exemple suppose que vous avez déjà stocké une instance DICOM dans un magasin DICOM. Cette instance DICOM est référencée dans le champ name
de cloudHealthcareSource
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'annotationSource': { 'cloudHealthcareSource': { 'name': 'projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID' } }, 'imageAnnotation': { 'boundingPolys': [ { 'vertices': [ { 'x': 100, 'y': 100 }, { 'x': 100, 'y': 400 }, { 'x': 400, 'y': 100 }, { 'x': 400, 'y': 400 } ], 'label': 'bounding-box' } ] } }" \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations"
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } }, "imageAnnotation": { "boundingPolys": [ { "vertices": [ { "x": 100, "y": 100 }, { "x": 100, "y": 400 }, { "x": 400, "y": 100 }, { "x": 400, "y": 400 } ], "label": "bounding-box" } ] } }
PowerShell
Pour créer un enregistrement d'annotation, envoyez une requête POST
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- Source de l'enregistrement d'annotation
- Type d'enregistrement d'annotation
- Un jeton d'accès
L'exemple suivant montre une requête POST
utilisant Windows PowerShell qui crée un enregistrement d'annotation pour une image DICOM. L'annotation utilise un cadre de délimitation pour marquer les dimensions d'une partie de l'image et ajouter un libellé à la zone limitée avec le nom "bounding-box". Cet exemple suppose que vous avez déjà stocké une instance DICOM dans un magasin DICOM. Cette instance DICOM est référencée dans le champ name
de cloudHealthcareSource
.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'annotationSource': { 'cloudHealthcareSource': { 'name': 'projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID' } }, 'imageAnnotation': { 'boundingPolys': [ { 'vertices': [ { 'x': 100, 'y': 100 }, { 'x': 100, 'y': 400 }, { 'x': 400, 'y': 100 }, { 'x': 400, 'y': 400 } ], 'label': 'bounding-box' } ] } }" ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } }, "imageAnnotation": { "boundingPolys": [ { "vertices": [ { "x": 100, "y": 100 }, { "x": 100, "y": 400 }, { "x": 400, "y": 100 }, { "x": 400, "y": 400 } ], "label": "bounding-box" } ] } }
Modifier un enregistrement d'annotation
Les exemples suivants montrent comment modifier l'enregistrement d'annotation depuis la section Créer un enregistrement d'annotation afin qu'il possède un libellé de type de ressource. Pour en savoir plus, consultez projects.locations.datasets.annotationStores.annotations.patch
.
curl
Pour modifier un enregistrement d'annotation, envoyez une requête PATCH
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- ID de l'enregistrement d'annotation
- Données à mettre à jour
- Un masque de mise à jour
- Un jeton d'accès
L'exemple suivant montre une requête PATCH
utilisant curl
sur un enregistrement d'annotation pour une instance DICOM.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'resourceAnnotation': { 'label': 'VALUE' } }" \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID?updateMask=resourceAnnotation"
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } }, "resourceAnnotation": { "label": "VALUE" } }
PowerShell
Pour modifier un enregistrement d'annotation, envoyez une requête PATCH
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- ID de l'enregistrement d'annotation
- Données à mettre à jour
- Un masque de mise à jour
- Un jeton d'accès
L'exemple suivant montre une requête PATCH
utilisant Windows PowerShell sur un enregistrement d'annotation pour une instance DICOM.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Patch ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'resourceAnnotation': { 'label': 'VALUE' } }" ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID?updateMask=resourceAnnotation" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } }, "resourceAnnotation": { "label": "VALUE" } }
Obtenir les détails de l'enregistrement d'annotation
Les exemples suivants montrent comment obtenir des détails sur un enregistrement d'annotation. Pour en savoir plus, consultez projects.locations.datasets.annotationStores.annotations.get
.
curl
Pour obtenir des détails sur un enregistrement d'annotation, envoyez une requête GET
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- ID de l'enregistrement d'annotation
- Un jeton d'accès
L'exemple suivant montre une requête GET
utilisant curl
pour afficher un enregistrement d'annotation pour une instance DICOM.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID"
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } } }
Si vous avez configuré des champs dans la ressource Annotation
, ils apparaissent également dans la réponse.
PowerShell
Pour obtenir des détails sur un enregistrement d'annotation, envoyez une requête GET
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- ID de l'enregistrement d'annotation
- Un jeton d'accès
L'exemple suivant montre une requête GET
utilisant Windows PowerShell pour afficher un enregistrement d'annotation pour une instance DICOM.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } } }
Si vous avez configuré des champs dans la ressource Annotation
, ils apparaissent également dans la réponse.
Répertorier les enregistrements d'annotation dans un magasin d'annotations
Les exemples suivants montrent comment répertorier les enregistrements d'annotation dans un magasin d'annotations.
Pour en savoir plus, consultez la page projects.locations.datasets.annotationStores.annotations.list
.
curl
Pour répertorier les enregistrements d'annotations dans un magasin d'annotations, envoyez une requête GET
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations
- Un jeton d'accès
L'exemple suivant montre une requête GET
utilisant curl
sur un magasin d'annotations contenant des enregistrements d'annotation pour une instance DICOM.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations"
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "annotations": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } } } ] }
Si vous avez configuré des champs dans la ressource Annotation
, ils apparaissent également dans la réponse.
PowerShell
Pour répertorier les enregistrements d'annotations dans un magasin d'annotations, envoyez une requête GET
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations
- Un jeton d'accès
L'exemple suivant montre une requête GET
utilisant Windows PowerShell sur un magasin d'annotations contenant des enregistrements d'annotation pour une instance DICOM.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "annotations": [ { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID", "annotationSource": { "cloudHealthcareSource": { "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_UID" } } } ] }
Si vous avez configuré des champs dans la ressource Annotation
, ils apparaissent également dans la réponse.
Supprimer un enregistrement d'annotation
Les exemples suivants montrent comment supprimer un enregistrement d'annotation. Pour en savoir plus, consultez la section sur projects.locations.datasets.annotationStores.annotations.delete
.
curl
Pour supprimer un enregistrement d'annotation, envoyez une requête DELETE
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- ID de l'enregistrement d'annotation
- Un jeton d'accès
L'exemple suivant montre une requête DELETE
utilisant curl
.
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID"
Si la requête aboutit, le serveur renvoie un corps de réponse vide au format JSON :
{}
PowerShell
Pour supprimer un enregistrement d'annotation, envoyez une requête DELETE
et fournissez les informations suivantes :
- Nom de l'ensemble de données parent
- Nom du magasin d'annotations parent
- ID de l'enregistrement d'annotation
- Un jeton d'accès
L'exemple suivant montre une requête DELETE
utilisant Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Delete ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/annotationStores/ANNOTATION_STORE_ID/annotations/ANNOTATION_ID" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie un corps de réponse vide au format JSON :
{}