このページでは、アノテーション レコードの作成、表示、一覧表示、削除の方法について説明します。アノテーション レコードの例として、医療のテキスト、画像、音声のラベルとタグがあります。アノテーション ストアとアノテーション レコードの概要については、アノテーションをご覧ください。
アノテーション レコードの作成
アノテーション レコードを作成する前に、アノテーション ストアを作成する必要があります。
次のサンプルは、アノテーション レコードの作成方法を示しています。詳細については、projects.locations.datasets.annotationStores.annotations.create
をご覧ください。
curl
アノテーション レコードを作成するには、POST
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコードのソース
- アノテーション レコードのタイプ
- アクセス トークン
次のサンプルは、DICOM イメージのアノテーション レコードを作成する curl
を使用する POST
リクエストを示しています。アノテーションでは、境界ボックスを使用してイメージの一部のディメンションをマークし、境界領域に「bounding-box」という名前のラベルを付けます。このサンプルでは、すでに DICOM ストアに DICOM インスタンスを格納していることを前提としています。この DICOM インスタンスは、cloudHealthcareSource
の name
フィールドで参照されます。
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"
リクエストが成功すると、サーバーは 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
アノテーション レコードを作成するには、POST
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコードのソース
- アノテーション レコードのタイプ
- アクセス トークン
次のサンプルは、Windows PowerShell を使用して DICOM イメージのアノテーション レコードを作成する POST
リクエストを示しています。アノテーションでは、境界ボックスを使用してイメージの一部のディメンションをマークし、境界領域に「bounding-box」という名前のラベルを付けます。このサンプルでは、すでに DICOM ストアに DICOM インスタンスを格納していることを前提としています。この DICOM インスタンスは、cloudHealthcareSource
の name
フィールドで参照されます。
$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
リクエストが成功すると、サーバーは 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" } ] } }
アノテーション レコードの編集
次のサンプルは、アノテーション レコードの作成からアノテーション レコードを編集してリソースタイプにラベルを付ける方法を示しています。詳細については、projects.locations.datasets.annotationStores.annotations.patch
をご覧ください。
curl
アノテーション レコードを編集するには、PATCH
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコード ID
- 更新するデータ
- 更新マスク
- アクセス トークン
次のサンプルは、DICOM インスタンスのアノテーション レコードに対して curl
を使用する PATCH
リクエストを示しています。
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"
リクエストが成功すると、サーバーは 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
アノテーション レコードを編集するには、PATCH
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコード ID
- 更新するデータ
- 更新マスク
- アクセス トークン
次のサンプルは、DICOM インスタンスのアノテーション レコードに対して Windows PowerShell を使用する PATCH
リクエストを示しています。
$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
リクエストが成功すると、サーバーは 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" } }
アノテーション レコードの詳細の取得
次のサンプルは、アノテーション レコードの詳細を取得する方法を示しています。詳細については、projects.locations.datasets.annotationStores.annotations.get
をご覧ください。
curl
アノテーション レコードの詳細を取得するには、GET
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコード ID
- アクセス トークン
次のサンプルは、curl
を使用して DICOM インスタンスのアノテーション レコードを表示する GET
リクエストを示しています。
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"
リクエストが成功すると、サーバーは 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" } } }
Annotation
リソースでフィールドを構成した場合は、そのフィールドもレスポンスに表示されます。
PowerShell
アノテーション レコードの詳細を取得するには、GET
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコード ID
- アクセス トークン
次のサンプルは、Windows PowerShell を使用して DICOM インスタンスのアノテーション レコードを表示する GET
リクエストを示しています。
$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
リクエストが成功すると、サーバーは 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" } } }
Annotation
リソースでフィールドを構成した場合は、そのフィールドもレスポンスに表示されます。
アノテーション ストア内のアノテーション レコードの一覧表示
次のサンプルは、アノテーション ストア内のアノテーションレコードを一覧表示する方法を示しています。
詳細については、projects.locations.datasets.annotationStores.annotations.list
をご覧ください。
curl
アノテーション ストア内のアノテーション レコードを一覧表示するには、GET
リクエストを作成し、次の情報を指定します。
- 親データセットの名前
- アノテーション ストアの名前
- アクセス トークン
次のサンプルは、DICOM インスタンスのアノテーション レコードが含まれるアノテーション ストアに対する curl
を使用する GET
リクエストを示しています。
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"
リクエストが成功すると、サーバーは 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" } } } ] }
Annotation
リソースでフィールドを構成した場合は、そのフィールドもレスポンスに表示されます。
PowerShell
アノテーション ストア内のアノテーション レコードを一覧表示するには、GET
リクエストを作成し、次の情報を指定します。
- 親データセットの名前
- アノテーション ストアの名前
- アクセス トークン
次のサンプルは、DICOM インスタンスのアノテーション レコードが含まれるアノテーション ストアに対して Windows PowerShell を使用する GET
リクエストを示しています。
$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
リクエストが成功すると、サーバーは 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" } } } ] }
Annotation
リソースでフィールドを構成した場合は、そのフィールドもレスポンスに表示されます。
アノテーション レコードの削除
次のサンプルは、アノテーション レコードを削除する方法を示しています。詳細については、projects.locations.datasets.annotationStores.annotations.delete
をご覧ください。
curl
アノテーション レコードを削除するには、DELETE
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコード ID
- アクセス トークン
次のサンプルは、curl
を使用した DELETE
リクエストを示しています。
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"
リクエストが成功すると、サーバーは JSON 形式の空のレスポンス本文を返します。
{}
PowerShell
アノテーション レコードを削除するには、DELETE
リクエストを行い、次の情報を指定します。
- 親データセットの名前
- 親アノテーション ストアの名前
- アノテーション レコード ID
- アクセス トークン
次のサンプルは、Windows PowerShell を使用した DELETE
リクエストを示しています。
$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
リクエストが成功すると、サーバーは JSON 形式の空のレスポンス本文を返します。
{}