Obtendo metadados do conjunto de imagens - AWS HealthImaging

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Obtendo metadados do conjunto de imagens

Use a GetImageSetMetadata ação para recuperar metadados de uma determinada imagem definida em. HealthImaging Os menus a seguir fornecem um procedimento para AWS Management Console e exemplos de código para o AWS CLI e AWS SDKs. Para obter mais informações, consulte GetImageSetMetadatana AWS HealthImaging APIReferência.

nota

Por padrão, HealthImaging retorna atributos de metadados para a versão mais recente de um conjunto de imagens. Para visualizar os metadados de uma versão mais antiga de um conjunto de imagens, forneça o versionId com sua solicitação.

Os metadados do conjunto de imagens são compactados gzip e retornados como um JSON objeto. Portanto, você deve descompactar o JSON objeto antes de visualizar os metadados normalizados. Para obter mais informações, consulte Normalização de metadados.

Use GetDICOMInstanceMetadata HealthImaging a representação de um DICOMweb serviço para retornar os metadados da DICOM instância (.jsonarquivo). Para obter mais informações, consulte Obtendo metadados da DICOM instância de HealthImaging.

Para obter metadados do conjunto de imagens

Escolha um menu com base na sua preferência de acesso AWS HealthImaging a.

  1. Abra a página Armazenamentos de dados do HealthImaging console.

  2. Escolha um datastore.

    A página Detalhes do datastore é aberta e a guia Conjuntos de imagens é selecionada por padrão.

  3. Escolha um conjunto de imagem.

    A página Detalhes do conjunto de imagens é aberta e os metadados do conjunto de imagens são exibidos na seção Visualizador de metadados do conjunto de imagens.

C++
SDKpara C++

Função de utilitário para obter metadados do conjunto de imagens.

//! Routine which gets a HealthImaging image set's metadata. /*! \param dataStoreID: The HealthImaging data store ID. \param imageSetID: The HealthImaging image set ID. \param versionID: The HealthImaging image set version ID, ignored if empty. \param outputFilePath: The path where the metadata will be stored as gzipped json. \param clientConfig: Aws client configuration. \\return bool: Function succeeded. */ bool AwsDoc::Medical_Imaging::getImageSetMetadata(const Aws::String &dataStoreID, const Aws::String &imageSetID, const Aws::String &versionID, const Aws::String &outputFilePath, const Aws::Client::ClientConfiguration &clientConfig) { Aws::MedicalImaging::Model::GetImageSetMetadataRequest request; request.SetDatastoreId(dataStoreID); request.SetImageSetId(imageSetID); if (!versionID.empty()) { request.SetVersionId(versionID); } Aws::MedicalImaging::MedicalImagingClient client(clientConfig); Aws::MedicalImaging::Model::GetImageSetMetadataOutcome outcome = client.GetImageSetMetadata( request); if (outcome.IsSuccess()) { std::ofstream file(outputFilePath, std::ios::binary); auto &metadata = outcome.GetResult().GetImageSetMetadataBlob(); file << metadata.rdbuf(); } else { std::cerr << "Failed to get image set metadata: " << outcome.GetError().GetMessage() << std::endl; } return outcome.IsSuccess(); }

Obter metadados do conjunto de imagens sem versão.

if (AwsDoc::Medical_Imaging::getImageSetMetadata(dataStoreID, imageSetID, "", outputFilePath, clientConfig)) { std::cout << "Successfully retrieved image set metadata." << std::endl; std::cout << "Metadata stored in: " << outputFilePath << std::endl; }

Obter metadados do conjunto de imagens com versão.

if (AwsDoc::Medical_Imaging::getImageSetMetadata(dataStoreID, imageSetID, versionID, outputFilePath, clientConfig)) { std::cout << "Successfully retrieved image set metadata." << std::endl; std::cout << "Metadata stored in: " << outputFilePath << std::endl; }
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

CLI
AWS CLI

Exemplo 1: para obter os metadados de um conjunto de imagens sem versão

O exemplo de código get-image-set-metadata a seguir obtém metadados para um conjunto de imagens sem especificar uma versão.

Observação: outfile é um parâmetro obrigatório

aws medical-imaging get-image-set-metadata \ --datastore-id 12345678901234567890123456789012 \ --image-set-id ea92b0d8838c72a3f25d00d13616f87e \ studymetadata.json.gz

Os metadados retornados são compactados com o gzip e armazenados no arquivo studymetadata.json.gz. Para visualizar o conteúdo do JSON objeto retornado, você deve primeiro descompactá-lo.

Saída:

{ "contentType": "application/json", "contentEncoding": "gzip" }

Exemplo 2: para obter os metadados de um conjunto de imagens com versão

O exemplo de código get-image-set-metadata a seguir obtém metadados para um conjunto de imagens com uma versão especificada.

Observação: outfile é um parâmetro obrigatório

aws medical-imaging get-image-set-metadata \ --datastore-id 12345678901234567890123456789012 \ --image-set-id ea92b0d8838c72a3f25d00d13616f87e \ --version-id 1 \ studymetadata.json.gz

Os metadados retornados são compactados com o gzip e armazenados no arquivo studymetadata.json.gz. Para visualizar o conteúdo do JSON objeto retornado, você deve primeiro descompactá-lo.

Saída:

{ "contentType": "application/json", "contentEncoding": "gzip" }

Para obter mais informações, consulte Como obter metadados do conjunto de imagens no AWS HealthImaging Guia do desenvolvedor.

Java
SDKpara Java 2.x
public static void getMedicalImageSetMetadata(MedicalImagingClient medicalImagingClient, String destinationPath, String datastoreId, String imagesetId, String versionId) { try { GetImageSetMetadataRequest.Builder getImageSetMetadataRequestBuilder = GetImageSetMetadataRequest.builder() .datastoreId(datastoreId) .imageSetId(imagesetId); if (versionId != null) { getImageSetMetadataRequestBuilder = getImageSetMetadataRequestBuilder.versionId(versionId); } medicalImagingClient.getImageSetMetadata(getImageSetMetadataRequestBuilder.build(), FileSystems.getDefault().getPath(destinationPath)); System.out.println("Metadata downloaded to " + destinationPath); } catch (MedicalImagingException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

JavaScript
SDKpara JavaScript (v3)

Função de utilitário para obter metadados do conjunto de imagens.

import { GetImageSetMetadataCommand } from "@aws-sdk/client-medical-imaging"; import { medicalImagingClient } from "../libs/medicalImagingClient.js"; import { writeFileSync } from "fs"; /** * @param {string} metadataFileName - The name of the file for the gzipped metadata. * @param {string} datastoreId - The ID of the data store. * @param {string} imagesetId - The ID of the image set. * @param {string} versionID - The optional version ID of the image set. */ export const getImageSetMetadata = async ( metadataFileName = "metadata.json.gzip", datastoreId = "xxxxxxxxxxxxxx", imagesetId = "xxxxxxxxxxxxxx", versionID = "" ) => { const params = { datastoreId: datastoreId, imageSetId: imagesetId }; if (versionID) { params.versionID = versionID; } const response = await medicalImagingClient.send( new GetImageSetMetadataCommand(params) ); const buffer = await response.imageSetMetadataBlob.transformToByteArray(); writeFileSync(metadataFileName, buffer); console.log(response); // { // '$metadata': { // httpStatusCode: 200, // requestId: '5219b274-30ff-4986-8cab-48753de3a599', // extendedRequestId: undefined, // cfId: undefined, // attempts: 1, // totalRetryDelay: 0 // }, // contentType: 'application/json', // contentEncoding: 'gzip', // imageSetMetadataBlob: <ref *1> IncomingMessage {} // } return response; };

Obter metadados do conjunto de imagens sem versão.

try { await getImageSetMetadata( "metadata.json.gzip", "12345678901234567890123456789012", "12345678901234567890123456789012" ); } catch (err) { console.log("Error", err); }

Obter metadados do conjunto de imagens com versão.

try { await getImageSetMetadata( "metadata2.json.gzip", "12345678901234567890123456789012", "12345678901234567890123456789012", "1" ); } catch (err) { console.log("Error", err); }
  • Para API obter detalhes, consulte GetImageSetMetadataem AWS SDK for JavaScript APIReferência.

nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.

Python
SDKpara Python (Boto3)

Função de utilitário para obter metadados do conjunto de imagens.

class MedicalImagingWrapper: def __init__(self, health_imaging_client): self.health_imaging_client = health_imaging_client def get_image_set_metadata( self, metadata_file, datastore_id, image_set_id, version_id=None ): """ Get the metadata of an image set. :param metadata_file: The file to store the JSON gzipped metadata. :param datastore_id: The ID of the data store. :param image_set_id: The ID of the image set. :param version_id: The version of the image set. """ try: if version_id: image_set_metadata = self.health_imaging_client.get_image_set_metadata( imageSetId=image_set_id, datastoreId=datastore_id, versionId=version_id, ) else: image_set_metadata = self.health_imaging_client.get_image_set_metadata( imageSetId=image_set_id, datastoreId=datastore_id ) print(image_set_metadata) with open(metadata_file, "wb") as f: for chunk in image_set_metadata["imageSetMetadataBlob"].iter_chunks(): if chunk: f.write(chunk) except ClientError as err: logger.error( "Couldn't get image metadata. Here's why: %s: %s", err.response["Error"]["Code"], err.response["Error"]["Message"], ) raise

Obter metadados do conjunto de imagens sem versão.

image_set_metadata = self.health_imaging_client.get_image_set_metadata( imageSetId=image_set_id, datastoreId=datastore_id )

Obter metadados do conjunto de imagens com versão.

image_set_metadata = self.health_imaging_client.get_image_set_metadata( imageSetId=image_set_id, datastoreId=datastore_id, versionId=version_id, )

O código a seguir instancia o MedicalImagingWrapper objeto.

client = boto3.client("medical-imaging") medical_imaging_wrapper = MedicalImagingWrapper(client)
  • Para API obter detalhes, consulte GetImageSetMetadataem AWS SDKpara referência em Python (Boto3). API

nota

Tem mais sobre GitHub. Encontre o exemplo completo e saiba como configurar e executar no AWS Repositório de exemplos de código.