Cette page explique comment importer des objets DICOM depuis Cloud Storage et comment y exporter des instances DICOM. Une instance DICOM est généralement une image, mais il peut s'agir d'un autre type de données persistantes, par exemple un rapport structuré. Un objet Cloud Storage est une instance DICOM qui réside dans Cloud Storage.
Vous pouvez importer et exporter des données groupées entre un bucket Cloud Storage et un datastore DICOM. Par exemple, vous pouvez importer de nombreux fichiers d'instance DICOM dans un datastore DICOM. Plutôt que de stocker les données par programmation directement, vous pouvez les stocker dans un bucket Cloud Storage, puis importer les fichiers dans un datastore DICOM au moyen d'une seule opération d'importation. Pour en savoir plus, consultez la page Cloud Storage.
Pour stocker une instance DICOM directement, par exemple à partir de votre ordinateur local, vous pouvez stocker les données DICOM à l'aide du service Web RESTful Store Transaction mis en œuvre dans l'API Cloud Healthcare. Pour récupérer une seule instance ou étude à partir d'un datastore DICOM, vous pouvez récupérer des données DICOM à l'aide du service Web RESTful Retrieve Transaction mis en œuvre dans l'API Cloud Healthcare.
Définir des autorisations Cloud Storage
Avant d'importer des données DICOM depuis Cloud Storage ou de les exporter vers ce service, vous devez accorder des autorisations supplémentaires au compte de service Agent de service Cloud Healthcare. Pour en savoir plus, consultez la section Autorisations Cloud Storage pour les datastores DICOM.
Importer des objets DICOM
Les exemples suivants montrent comment importer des objets DICOM depuis un bucket Cloud Storage.
Console
Pour importer des objets DICOM à partir d'un bucket Cloud Storage, procédez comme suit :
Dans Cloud Console, accédez à la page Ensembles de données.
Cliquez sur l'ensemble de données pour lequel vous importez des objets DICOM.
Dans la liste des magasins DICOM, choisissez Importer dans la liste Actions.
La page Importer dans le magasin DICOM s'affiche.
Dans la liste Projet, sélectionnez un projet Cloud Storage.
Dans la liste Emplacement, sélectionnez un bucket Cloud Storage.
Pour définir un emplacement spécifique pour l'importation de fichiers, procédez comme suit :
- Développer les options avancées
- Sélectionnez Remplacer le chemin d'accès Cloud Storage.
- Pour définir une source spécifique pour l'importation de fichiers, définissez le chemin d'accès à l'aide des variables suivantes dans la zone de texte Emplacement :
*
- correspond aux caractères non séparateurs.**
- correspond aux caractères, y compris les séparateurs. Cela peut être utilisé avec une extension de nom de fichier pour correspondre à tous les fichiers du même type.?
- correspond à 1 caractère.
Cliquez sur Importer pour importer des objets DICOM à partir de la source définie.
gcloud
Pour importer des objets DICOM à partir d'un bucket Cloud Storage, utilisez la commande gcloud healthcare dicom-stores import gcs
. Spécifiez le nom de l'ensemble de données parent, le nom du magasin DICOM et l'emplacement de l'objet dans un bucket Cloud Storage.
- L'emplacement des fichiers dans le bucket est arbitraire et ne doit pas nécessairement respecter exactement le format spécifié dans l'exemple suivant.
- Lorsque vous spécifiez l'emplacement des objets DICOM dans Cloud Storage, vous pouvez importer plusieurs fichiers depuis un ou plusieurs répertoires au moyen de caractères génériques.
Les caractères génériques suivants sont acceptés :
- Utilisez
*
pour correspondre à 0 ou plusieurs caractères non séparateurs. Par exemple,gs://BUCKET/DIRECTORY/Example*.dcm
correspond à Example.dcm et Example22.dcm dans DIRECTORY. - Utilisez
**
pour correspondre à 0 caractère ou plus (séparateurs compris). Doit être utilisé à la fin d'un chemin d'accès et sans autres caractères génériques. Peut également être utilisé avec une extension de nom de fichier (.dcm, par exemple), qui importe tous les fichiers portant l'extension dans le répertoire spécifié et ses sous-répertoires. Par exemple,gs://BUCKET/DIRECTORY/**.dcm
importe tous les fichiers portant l'extension .dcm dans DIRECTORY et ses sous-répertoires. - Utilisez
?
pour correspondre à 1 caractère. Par exemple,gs://BUCKET/DIRECTORY/Example?.dcm
correspond à "Example1.dcm", mais ne correspond pas à "Example.dcm" ou "Example01.dcm".
- Utilisez
L'exemple suivant montre comment importer des objets DICOM à partir d'un bucket Cloud Storage.
gcloud healthcare dicom-stores import gcs DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --gcs-uri=gs://BUCKET/DIRECTORY/DICOM_INSTANCE.dcm
La ligne de commande affiche l'ID de l'opération :
name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID
Pour afficher l'état de l'opération, exécutez la commande gcloud healthcare operations describe
en fournissant le OPERATION_ID spécifié dans la réponse :
gcloud healthcare operations describe OPERATION_ID \ --location=LOCATION \ --dataset=DATASET_ID
Une fois la commande terminée, la réponse inclut done: true
.
done: true metadata: '@type': type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata apiMethodName: google.cloud.healthcare.v1.dicom.DicomService.ImportDicomData counter: success: SUCCESSFUL_INSTANCES failure: FAILED_INSTANCES createTime: "CREATE_TIME" endTime: "END_TIME" name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID response: '@type': "..."
API
Pour importer des objets DICOM à partir d'un bucket Cloud Storage, utilisez la méthode projects.locations.datasets.dicomStores.import
.
- L'emplacement des fichiers dans le bucket est arbitraire et ne doit pas nécessairement respecter exactement le format spécifié dans les exemples suivants.
- Lorsque vous spécifiez l'emplacement des objets DICOM dans Cloud Storage, vous pouvez importer plusieurs fichiers depuis un ou plusieurs répertoires au moyen de caractères génériques.
Les caractères génériques suivants sont acceptés :
- Utilisez
*
pour correspondre à 0 ou plusieurs caractères non séparateurs. Par exemple,gs://BUCKET/DIRECTORY/Example*.dcm
correspond à Example.dcm et Example22.dcm dans DIRECTORY. - Utilisez
**
pour correspondre à 0 caractère ou plus (séparateurs compris). Doit être utilisé à la fin d'un chemin d'accès et sans autres caractères génériques. Peut également être utilisé avec une extension de nom de fichier (.dcm, par exemple), qui importe tous les fichiers portant l'extension dans le répertoire spécifié et ses sous-répertoires. Par exemple,gs://BUCKET/DIRECTORY/**.dcm
importe tous les fichiers portant l'extension .dcm dans DIRECTORY et ses sous-répertoires. - Utilisez
?
pour correspondre à 1 caractère. Par exemple,gs://BUCKET/DIRECTORY/Example?.dcm
correspond à "Example1.dcm", mais ne correspond pas à "Example.dcm" ou "Example01.dcm".
- Utilisez
curl
Pour importer des objets DICOM, envoyez une requête POST
et fournissez les informations suivantes:
- Nom et emplacement de l'ensemble de données parent
- Le nom du magasin DICOM
- L'emplacement des objets dans un bucket Cloud Storage
L'exemple suivant montre une requête POST
utilisant curl
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'gcsSource': { 'uri': 'gs://BUCKET/*.dcm' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:import"
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
La réponse contient un nom d'opération. Pour suivre l'état de l'opération, vous pouvez utiliser la méthode get
:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
Si la requête aboutit, le serveur renvoie une réponse avec l'état de l'opération au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.dicom.DicomService.ImportDicomData", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/viewer/CLOUD_LOGGING_URL", "counter": { "success": SUCCESSFUL_INSTANCES "failure": FAILED_INSTANCES }, }, "done": true, "response": { "@type": "..." } }
PowerShell
Pour importer des objets DICOM, envoyez une requête POST
et fournissez les informations suivantes:
- Nom et emplacement de l'ensemble de données parent
- Le nom du magasin DICOM
- L'emplacement des objets dans un bucket Cloud Storage
L'exemple suivant montre une requête POST
utilisant Windows PowerShell.
$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 "{ 'gcsSource': { 'uri': 'gs://BUCKET/*.dcm' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:import" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
La réponse contient un nom d'opération. Pour suivre l'état de l'opération, vous pouvez utiliser la méthode get
:
$cred = gcloud auth application-default 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/operations/OPERATION_ID" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie une réponse avec l'état de l'opération au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.dicom.DicomService.ImportDicomData", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/viewer/CLOUD_LOGGING_URL", "counter":{ "success": SUCCESSFUL_INSTANCES "failure": FAILED_INSTANCES } }, "done": true, "response": { "@type": "..." } }
Go
Java
Node.js
Python
Résoudre les problèmes liés aux requêtes d'importation DICOM
Si des erreurs se produisent lors d'une requête d'importation DICOM, elles sont consignées dans Cloud Logging. Pour en savoir plus, consultez la section Afficher les journaux d'erreurs dans Cloud Logging.
Exporter des instances DICOM
Les exemples suivants montrent comment exporter des instances DICOM vers un bucket Cloud Storage. Lorsque vous exportez des instances DICOM depuis un datastore DICOM, toutes les instances qu'il contient sont exportées.
Console
Pour exporter des instances DICOM vers Cloud Storage, procédez comme suit :
Dans Cloud Console, accédez à la page Ensembles de données.
Cliquez sur l'ensemble de données pour lequel vous exportez des instances DICOM.
Dans la liste des magasins DICOM, choisissez Exporter dans la liste Actions.
La page Exporter un magasin DICOM s'affiche.
Sélectionnez Bucket Google Cloud Storage.
Dans la liste Projet, sélectionnez un projet Cloud Storage.
Dans la liste Emplacement, sélectionnez un bucket Cloud Storage.
Dans Paramètres d'exportation DICOM, sélectionnez le type de fichier utilisé pour exporter les instances DICOM. Les types suivants sont disponibles :
- Fichier DICOM (
.dcm
) - Octetstream
- Image (
.jpg
,.png
)
- Fichier DICOM (
Pour définir une syntaxe de transfert supplémentaire, sélectionnez-la dans la liste Syntaxe de transfert.
Cliquez sur Exporter pour exporter des instances DICOM vers l'emplacement défini dans Cloud Storage.
gcloud
Pour exporter des instances DICOM vers un bucket Cloud Storage, utilisez la commande gcloud healthcare dicom-stores export gcs
.
- Indiquez le nom de l'ensemble de données parent, le nom du magasin DICOM et le bucket Cloud Storage de destination.
- Écrivez dans un bucket ou un répertoire Cloud Storage plutôt qu'un objet, car l'API Cloud Healthcare crée un fichier
.dcm
pour chaque objet. - Si la commande spécifie un répertoire qui n'existe pas, celui-ci est créé.
L'exemple suivant montre la commande gcloud healthcare dicom-stores export gcs
.
gcloud healthcare dicom-stores export gcs DICOM_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --gcs-uri-prefix=gs://BUCKET/DIRECTORY
La ligne de commande affiche l'ID de l'opération :
name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID
Pour afficher l'état de l'opération, exécutez la commande gcloud healthcare operations describe
en fournissant le OPERATION_ID spécifié dans la réponse :
gcloud healthcare operations describe OPERATION_ID \ --location=LOCATION \ --dataset=DATASET_ID
Une fois la commande terminée, la réponse inclut done: true
.
done: true metadata: '@type': type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata apiMethodName: google.cloud.healthcare.v1.dicom.DicomService.ExportDicomData counter: success: SUCCESSFUL_INSTANCES failure: FAILED_INSTANCES createTime: "CREATE_TIME" endTime: "END_TIME" name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID response: '@type': "..."
API
Pour exporter des instances DICOM vers un bucket Cloud Storage, utilisez la méthode projects.locations.datasets.dicomStores.export
.
- Écrivez dans un bucket ou un répertoire Cloud Storage plutôt qu'un objet, car l'API Cloud Healthcare crée un fichier
.dcm
pour chaque objet DICOM. - Si la commande spécifie un répertoire qui n'existe pas, celui-ci est créé.
curl
Pour exporter des instances DICOM, envoyez une requête POST
, puis indiquez les informations suivantes:
- Nom et emplacement de l'ensemble de données parent
- Le nom du magasin DICOM
- Le bucket Cloud Storage de destination
L'exemple suivant montre une requête POST
utilisant curl
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'gcsDestination': { 'uriPrefix': 'gs://BUCKET/DIRECTORY' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:export"
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
La réponse contient un nom d'opération. Pour suivre l'état de l'opération, vous pouvez utiliser la méthode get
:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
Si la requête aboutit, le serveur renvoie une réponse avec l'état de l'opération au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.dicom.DicomService.ExportDicomData", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/viewer/CLOUD_LOGGING_URL", "counter":{ "success": SUCCESSFUL_INSTANCES "failure": FAILED_INSTANCES } }, "done": true, "response": { "@type": "..." } }
PowerShell
Pour exporter des instances DICOM, envoyez une requête POST
, puis indiquez les informations suivantes:
- Nom et emplacement de l'ensemble de données parent
- Le nom du magasin DICOM
- Le bucket Cloud Storage de destination
L'exemple suivant montre une requête POST
utilisant Windows PowerShell.
$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 "{ 'gcsDestination': { 'uriPrefix': 'gs://BUCKET/DIRECTORY' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:export" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie la réponse au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
La réponse contient un nom d'opération. Pour suivre l'état de l'opération, vous pouvez utiliser la méthode get
:
$cred = gcloud auth application-default 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/operations/OPERATION_ID" | Select-Object -Expand Content
Si la requête aboutit, le serveur renvoie une réponse avec l'état de l'opération au format JSON :
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.dicom.DicomService.ExportDicomData", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/viewer/CLOUD_LOGGING_URL", "counter":{ "success": SUCCESSFUL_INSTANCES "failure": FAILED_INSTANCES }, }, "done": true, "response": { "@type": "..." } }
Go
Java
Node.js
Python
Exporter des instances DICOM à l'aide de filtres
Par défaut, lorsque vous exportez des fichiers DICOM vers Cloud Storage, tous les fichiers DICOM du magasin DICOM spécifié sont exportés. De même, lorsque vous exportez des métadonnées DICOM vers BigQuery, les métadonnées de toutes les données DICOM du magasin DICOM spécifié sont exportées.
Vous pouvez exporter un sous-ensemble de données DICOM ou des métadonnées à l'aide d'un filtre. Vous définissez le filtre dans un fichier de filtre.
Configurer des fichiers de filtrage
Un fichier de filtre définit les fichiers DICOM à exporter vers Cloud Storage ou BigQuery. Vous pouvez configurer les fichiers de filtrage aux niveaux suivants:
- Au niveau de l'étude
- Au niveau de la série
- Au niveau de l'instance
Le fichier de filtre est constitué de plusieurs lignes. Chaque ligne définit l'étude, la série ou l'instance que vous souhaitez exporter. Chaque ligne utilise le format /studies/STUDY_UID[/series/SERIES_UID[/instances/INSTANCE_UID]]
.
Si une étude, une série ou une instance n'est pas spécifiée dans le fichier de filtre lorsque vous transmettez le fichier de filtre, cette étude, cette série ou cette instance ne sera pas exportée.
Seule la partie /studies/STUDY_UID
du chemin est obligatoire. Vous pouvez exporter une étude entière en spécifiant /studies/STUDY_UID
ou exporter une série entière en spécifiant /studies/STUDY_UID/series/SERIES_UID
.
Prenons l'exemple du fichier de filtre suivant : Le fichier de filtre génère une étude, deux séries et trois instances individuelles qui sont exportées:
/studies/1.123.456.789 /studies/1.666.333.111/series/123.456 /studies/1.666.333.111/series/567.890 /studies/1.888.999.222/series/123.456/instances/111 /studies/1.888.999.222/series/123.456/instances/222 /studies/1.888.999.222/series/123.456/instances/333
Créer un fichier de filtre à l'aide de BigQuery
Pour créer un fichier de filtrage, vous devez généralement exporter les métadonnées d'un magasin DICOM vers BigQuery. Cela vous permet d'utiliser BigQuery pour afficher les UID d'étude, de série et d'instance des données DICOM dans votre magasin DICOM. Vous pouvez ensuite effectuer les étapes suivantes:
-
Demander les UID d'étude, de série et d'instance qui vous intéressent.
Par exemple, après avoir exporté des métadonnées DICOM vers BigQuery, vous pouvez exécuter la requête suivante pour concaténer les identifiants UID de l'étude, de la série et de l'instance dans un format compatible avec les exigences de fichier de filtre:
SELECT CONCAT ('/studies/', StudyInstanceUID, '/series/', SeriesInstanceUID, '/instances/', SOPInstanceUID) FROM [PROJECT_ID:BIGQUERY_DATASET.BIGQUERY_TABLE]
- Si la requête renvoie un grand ensemble de résultats, vous pouvez matérialiser une nouvelle table en enregistrant les résultats de la requête dans une table de destination dans BigQuery.
- Si vous avez enregistré les résultats de la requête dans une table de destination, vous pouvez enregistrer le contenu de la table de destination dans un fichier et l'exporter vers Cloud Storage. Pour obtenir des instructions sur la procédure à suivre, consultez la page Exporter des données de table. Le fichier exporté est votre fichier de filtre. Vous utilisez l'emplacement du fichier de filtre dans Cloud Storage lorsque vous spécifiez le filtre dans l'opération d'exportation.
Créer un fichier de filtre manuellement
Vous pouvez créer un fichier de filtre avec du contenu personnalisé et l'importer dans un bucket Cloud Storage. Vous utilisez l'emplacement du fichier de filtre dans Cloud Storage lorsque vous spécifiez le filtre dans l'opération d'exportation. L'exemple suivant montre comment importer un fichier de filtre dans un bucket Cloud Storage à l'aide de la commandegsutil cp
:
gsutil cp PATH/TO/FILTER_FILE gs://BUCKET/DIRECTORY
Transmettre dans le fichier de filtre
Après avoir créé un fichier de filtre, vous pouvez appeler l'opération d'exportation DICOM et transmettre le fichier de filtre à l'aide de l'API REST.
Pour utiliser un fichier de filtre, vous devez saisir le chemin d'accès au fichier dans Cloud Storage dans le champ resourcePathsGcsUri
de la commande de l'API REST.
API
Pour exporter des données DICOM à l'aide d'un filtre, utilisez la méthode projects.locations.datasets.dicomStores.export
.
curl
Pour exporter des données DICOM à l'aide d'un fichier de filtre, envoyez une requête POST
et fournissez les informations suivantes:
- Nom et emplacement de l'ensemble de données parent
- Le nom du magasin DICOM
- Le bucket Cloud Storage de destination
- L'emplacement du fichier de filtre dans un bucket Cloud Storage
L'exemple suivant montre une requête POST
utilisant curl
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'gcsDestination': { 'uriPrefix': 'gs://BUCKET/DIRECTORY' }, 'filterConfig': { 'resourcePathsGcsUri': 'gs://BUCKET/DIRECTORY/FILTER_FILE' } }" "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:export"
Si la requête aboutit, le serveur affiche la réponse suivante au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/operations/OPERATION_ID" }
La réponse contient un nom d'opération. Vous pouvez suivre l'état de l'opération à l'aide de la méthode Operation 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/operations/OPERATION_NAME"
Si la requête aboutit, le serveur affiche la réponse suivante au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1beta1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1beta1.dicom.DicomService.ExportDicomData", "createTime": "CREATE_TIME", "endTime": "END_TIME" }, "done": true, "response": { "@type": "..." } }
PowerShell
Pour exporter des données DICOM à l'aide d'un fichier de filtre, envoyez une requête POST
et fournissez les informations suivantes:
- Nom et emplacement de l'ensemble de données parent
- Le nom du magasin DICOM
- Le bucket Cloud Storage de destination
- L'emplacement du fichier de filtre dans un bucket Cloud Storage
L'exemple suivant montre une requête POST
utilisant Windows PowerShell.
$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 "{ 'gcsDestination': { 'uriPrefix': 'gs://BUCKET/DIRECTORY' }, 'filterConfig': { 'resourcePathsGcsUri': 'gs://BUCKET/DIRECTORY/FILTER_FILE' }" ` -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:export" | Select-Object -Expand Content
Si la requête aboutit, le serveur affiche la réponse suivante au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/operations/OPERATION_ID" }
La réponse contient un nom d'opération. Vous pouvez suivre l'état de l'opération à l'aide de la méthode Operation 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/operations/OPERATION_NAME" | Select-Object -Expand Content
Si la requête aboutit, le serveur affiche la réponse suivante avec l'état de l'opération au format JSON :
{ "name": "projects/PROJECT_ID/locations/REGION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1beta1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1beta1.dicom.DicomService.ExportDicomData", "createTime": "CREATE_TIME", "endTime": "END_TIME" }, "done": true, "response": { "@type": "..." } }
Résoudre les problèmes liés aux requêtes d'exportation DICOM
Si des erreurs se produisent lors d'une requête d'exportation DICOM, elles sont consignées dans Cloud Logging. Pour en savoir plus, consultez la section Afficher les journaux d'erreurs dans Cloud Logging.