本頁說明如何建立、編輯、查看、列出及刪除數位醫學影像和通訊 (DICOM) 儲存庫。
DICOM 儲存庫會保留 DICOM 例項。您可以使用 Cloud Healthcare API 中的 DICOMweb 實作項目,在 DICOM 儲存庫中新增及管理 DICOM 例項,也可以使用 Google Cloud 服務匯入及匯出 DICOM 例項。
如要進一步瞭解 Cloud Healthcare API 如何符合 DICOM 標準,請參閱 DICOM 符合聲明。
建立 DICOM 儲存庫
您必須先建立資料集,才能建立 DICOM 儲存庫。
以下範例說明如何建立 DICOM 儲存庫:
控制台
如要建立 DICOM 儲存庫,請按照下列步驟操作:
- 在 Google Cloud 控制台中,前往「Datasets」(資料集) 頁面。
- 選取要建立 DICOM 儲存庫的資料集。
- 按一下「建立資料儲存庫」。
- 選取 DICOM 做為資料儲存庫類型。
- 輸入資料集中不重複的名稱。如果名稱不具唯一性,資料儲存庫建立作業會失敗。
- 點選「下一步」。
-
如果您想為資料儲存庫設定 Pub/Sub 主題,請按一下「Receive Cloud Pub/Sub notifications」(接收 Cloud Pub/Sub 通知),然後選取主題名稱。指定 Pub/Sub 主題時,請輸入主題的完整 URI,如以下範例所示:
projects/PROJECT_ID/topics/PUBSUB_TOPIC
- 點選「下一步」。
- 如要將一或多個標籤新增至儲存庫,請按一下「新增標籤以便整理資料儲存庫」,然後輸入鍵/值標籤。如要進一步瞭解資源標籤,請參閱「使用資源標籤」一文。
- 按一下 [Create] (建立)。
新的資料儲存庫會顯示在清單中。
gcloud
如要建立 DICOM 儲存庫,請執行 gcloud healthcare dicom-stores create
指令。
使用下列任何指令資料之前,請先替換以下項目:
LOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫的 ID。DICOM 儲存庫 ID 必須包含下列項目:- 資料集中的專屬 ID
- 1 到 256 個字元的 Unicode 字串,包含下列項目:
- Numbers
- 信件
- 底線
- 破折號
- 週期
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare dicom-stores create DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare dicom-stores create DICOM_STORE_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare dicom-stores create DICOM_STORE_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
您應該會收到類似以下的回應:
回應
Created dicomStore [DICOM_STORE_ID].
REST
如要建立 DICOM 儲存庫,請使用 projects.locations.datasets.dicomStores.create
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫的 ID。DICOM 儲存庫 ID 必須包含下列項目:- 資料集中的專屬 ID
- 1 到 256 個字元的 Unicode 字串,包含下列項目:
- Numbers
- 信件
- 底線
- 破折號
- 週期
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores?dicomStoreId=DICOM_STORE_ID"
PowerShell
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores?dicomStoreId=DICOM_STORE_ID" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 API Explorer 面板。 您可以使用這項工具來傳送要求。完成所有必填欄位,然後按一下「執行」。
您應該會收到如下的 JSON 回應:
Go
Java
Node.js
Python
編輯 DICOM 儲存庫
以下範例說明如何對 DICOM 儲存庫進行下列變更:
指定 Pub/Sub 主題時,請輸入主題的完整 URI,如以下範例所示:projects/PROJECT_ID/topics/PUBSUB_TOPIC
控制台
如要編輯 DICOM 儲存庫,請完成下列步驟:
gcloud
如要編輯 DICOM 儲存庫,請執行 gcloud healthcare dicom-stores update
指令。gcloud CLI 不支援編輯標籤。
使用下列任何指令資料之前,請先替換以下項目:
LOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫 IDPUBSUB_TOPIC
:當資料儲存庫發生事件時,訊息會發布至此 Pub/Sub 主題
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare dicom-stores update DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --pubsub-topic=projects/PROJECT_ID/topics/PUBSUB_TOPIC
Windows (PowerShell)
gcloud healthcare dicom-stores update DICOM_STORE_ID ` --dataset=DATASET_ID ` --location=LOCATION ` --pubsub-topic=projects/PROJECT_ID/topics/PUBSUB_TOPIC
Windows (cmd.exe)
gcloud healthcare dicom-stores update DICOM_STORE_ID ^ --dataset=DATASET_ID ^ --location=LOCATION ^ --pubsub-topic=projects/PROJECT_ID/topics/PUBSUB_TOPIC
您應該會收到類似以下的回應:
回應
Updated dicomStore [DICOM_STORE_ID]. ... name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID notificationConfig: pubsubTopic: projects/PROJECT_ID/topics/PUBSUB_TOPIC
REST
如要編輯 DICOM Store,請使用 projects.locations.datasets.dicomStores.patch
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫 IDPUBSUB_TOPIC
:當資料儲存庫發生事件時,訊息會發布至此 Pub/Sub 主題KEY_1
:第一個標籤鍵VALUE_1
:第一個標籤值KEY_2
:第二個標籤鍵VALUE_2
:第二個標籤值
JSON 要求主體:
{ "notificationConfig": { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC" }, "labels": { "KEY_1": "VALUE_1", "KEY_2": "VALUE_2" } }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中。在終端機中執行下列指令,即可在目前目錄中建立或覆寫此檔案:
cat > request.json << 'EOF' { "notificationConfig": { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC" }, "labels": { "KEY_1": "VALUE_1", "KEY_2": "VALUE_2" } } EOF
接著,執行下列指令來傳送 REST 要求:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID?updateMask=notificationConfig,labels"
PowerShell
將要求主體儲存在名為 request.json
的檔案中。在終端機中執行下列指令,即可在目前目錄中建立或覆寫此檔案:
@' { "notificationConfig": { "pubsubTopic": "projects/PROJECT_ID/topics/PUBSUB_TOPIC" }, "labels": { "KEY_1": "VALUE_1", "KEY_2": "VALUE_2" } } '@ | Out-File -FilePath request.json -Encoding utf8
接著,執行下列指令來傳送 REST 要求:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID?updateMask=notificationConfig,labels" | Select-Object -Expand Content
APIs Explorer
複製要求主體並開啟方法參考頁面。系統會在頁面右側開啟 API Explorer 面板。 您可以使用這項工具來傳送要求。將要求主體貼到這項工具中,並填妥其他必填欄位,然後按一下「執行」。
您應該會收到類似以下的回應。
如果您在 DicomStore
資源中設定了任何欄位,這些欄位也會顯示在回應中。
Go
Java
Node.js
Python
取得 DICOM 儲存庫詳細資料
下列範例說明如何取得 DICOM 存放區的詳細資料。
控制台
如要查看 DICOM 儲存庫的詳細資料,請按照下列步驟操作:
- 在 Google Cloud 控制台中,前往「Datasets」(資料集) 頁面。
- 選取包含要查看的 DICOM 儲存庫的資料集。
- 按一下 DICOM 存放區的名稱。
「總覽」分頁會顯示所選 DICOM 儲存庫的詳細資料。 「Metrics」分頁會顯示 DICOM 儲存庫、DICOM 研究和 DICOM 系列指標。詳情請參閱「查看 DICOM 儲存空間、DICOM 研究和 DICOM 系列指標」。
gcloud
如要取得 DICOM 儲存庫詳細資料,請執行 gcloud healthcare dicom-stores describe
指令。
使用下列任何指令資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫 ID
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare dicom-stores describe DICOM_STORE_ID \ --project=PROJECT_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare dicom-stores describe DICOM_STORE_ID ` --project=PROJECT_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare dicom-stores describe DICOM_STORE_ID ^ --project=PROJECT_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
您應該會收到類似以下的回應。
如果您在 DicomStore
資源中設定了任何欄位,這些欄位也會顯示在回應中。
回應
name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID
REST
如要進一步瞭解 DICOM Store,請使用 projects.locations.datasets.dicomStores.get
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫 ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID"
PowerShell
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 API Explorer 面板。 您可以使用這項工具來傳送要求。完成所有必填欄位,然後按一下「執行」。
您應該會收到類似以下的回應。
如果您在 DicomStore
資源中設定了任何欄位,這些欄位也會顯示在回應中。
Go
Java
Node.js
Python
列出資料集中的 DICOM 儲存庫
以下範例說明如何列出資料集中的 DICOM 存放區:
控制台
如要查看資料集中的資料儲存庫,請按照下列步驟操作:
- 在 Google Cloud 控制台中,前往「Datasets」(資料集) 頁面。
- 選取包含要查看的資料儲存庫的資料集。
gcloud
如要列出資料集中的 DICOM 儲存庫,請執行 gcloud healthcare dicom-stores list
指令。
使用下列任何指令資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare dicom-stores list \ --project=PROJECT_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare dicom-stores list ` --project=PROJECT_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare dicom-stores list ^ --project=PROJECT_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
您應該會收到類似以下的回應。
如果您在 DicomStore
資源中設定了任何欄位,這些欄位也會顯示在回應中。
ID LOCATION TOPIC DICOM_STORE_ID LOCATION PUBSUB_TOPIC ...
REST
如要在資料集中列出 DICOM 儲存庫,請使用 projects.locations.datasets.dicomStores.list
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores"
PowerShell
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 API Explorer 面板。 您可以使用這項工具來傳送要求。完成所有必填欄位,然後按一下「執行」。
您應該會收到類似以下的回應。
如果您在 DicomStore
資源中設定了任何欄位,這些欄位也會顯示在回應中。
Go
Java
Node.js
Python
刪除 DICOM 儲存庫
下列範例說明如何刪除 DICOM 儲存庫:
控制台
如何刪除資料儲存庫:
- 在 Google Cloud 控制台中,前往「Datasets」(資料集) 頁面。
- 選取含有要刪除資料儲存庫的資料集。
- 在「動作」下拉式清單中,為要刪除的資料儲存庫選擇「刪除」。
- 如要確認,請輸入資料儲存庫名稱,然後按一下「Delete」。
gcloud
如要刪除 DICOM 儲存庫,請執行 gcloud healthcare dicom-stores delete
指令。
使用下列任何指令資料之前,請先替換以下項目:
LOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫 ID
執行下列指令:
Linux、macOS 或 Cloud Shell
gcloud healthcare dicom-stores delete DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare dicom-stores delete DICOM_STORE_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare dicom-stores delete DICOM_STORE_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
Deleted dicomStore [DICOM_STORE_ID].
REST
如要刪除 DICOM 儲存庫,請使用 projects.locations.datasets.dicomStores.delete
方法。
使用任何要求資料之前,請先替換以下項目:
PROJECT_ID
: Google Cloud 專案的 IDLOCATION
:資料集位置DATASET_ID
:DICOM 儲存庫的父資料集DICOM_STORE_ID
:DICOM 儲存庫 ID
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID"
PowerShell
執行下列指令:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID" | Select-Object -Expand Content
APIs Explorer
開啟方法參考頁面。系統會在頁面右側開啟 API Explorer 面板。 您可以使用這項工具來傳送要求。完成所有必填欄位,然後按一下「執行」。
您應該會收到如下的 JSON 回應: