가져오기 작업 시작 - AWS HealthImaging

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

가져오기 작업 시작

StartDICOMImportJob 작업을 사용하여 픽셀 데이터 확인 확인을 시작하고 데이터 AWS HealthImaging 스토어로 대량 데이터 가져오기를 시작합니다. 가져오기 작업은 inputS3Uri 파라미터로 지정된 Amazon S3 입력 버킷에 있는 DICOM P10 파일을 가져옵니다. 가져오기 작업 처리 결과는 outputS3Uri 파라미터로 지정된 Amazon S3 출력 버킷에 저장됩니다.

참고

가져오기 작업을 시작하기 전에 다음 사항에 유의하세요.

  • HealthImaging 는 다양한 전송 구문으로 DICOM P10 파일 가져오기를 지원합니다. 일부 파일은 가져오기 중에 원래 전송 구문 인코딩을 유지하는 반면, 다른 파일은 기본적으로 무HTJ2K손실로 트랜스코딩됩니다. 자세한 내용은 지원되는 전송 구문 단원을 참조하십시오.

  • HealthImaging 는 지원되는 다른 리전 에 위치한 Amazon S3 버킷에서 데이터 가져오기를 지원합니다. Service 엔드포인트 이 기능을 사용하려면 가져오기 작업을 시작할 때 inputOwnerAccountId 파라미터를 제공합니다. 자세한 내용은 교차 계정 가져오기 대상 AWS HealthImaging 단원을 참조하십시오.

  • HealthImaging 는 가져오기 중에 특정 DICOM 요소에 길이 제약 조건을 적용합니다. 자세한 내용은 DICOM 요소 제약 조건 단원을 참조하십시오.

다음 메뉴는 AWS Management Console 및 의 AWS CLI 및 코드 예제에 대한 절차를 제공합니다 AWS SDKs. 자세한 내용은 참조StartDICOMImportJob의 섹션을 참조하세요. AWS HealthImaging API

가져오기 작업을 시작하려면

에 대한 액세스 기본 설정에 따라 메뉴를 선택합니다AWS HealthImaging.

  1. HealthImaging 콘솔 데이터 스토어 페이지를 엽니다.

  2. 데이터 스토어를 선택합니다.

  3. DICOM 데이터 가져오기를 선택합니다.

    DICOM 데이터 가져오기 페이지가 열립니다.

  4. 세부 정보 섹션에 다음 정보를 입력합니다.

    • 이름(선택 사항)

    • S3에서 소스 위치 가져오기

    • 소스 버킷 소유자의 계정 ID(선택 사항)

    • 암호화 키(선택 사항)

    • S3의 출력 대상

  5. 서비스 액세스 섹션에서 기존 서비스 역할 사용을 선택하고 서비스 역할 이름 메뉴에서 역할을 선택하거나 새 서비스 역할 생성 및 사용을 선택합니다.

  6. 가져오기를 선택합니다.

C++
SDK C++용
//! Routine which starts a HealthImaging import job. /*! \param dataStoreID: The HealthImaging data store ID. \param inputBucketName: The name of the Amazon S3 bucket containing the DICOM files. \param inputDirectory: The directory in the S3 bucket containing the DICOM files. \param outputBucketName: The name of the S3 bucket for the output. \param outputDirectory: The directory in the S3 bucket to store the output. \param roleArn: The ARN of the IAM role with permissions for the import. \param importJobId: A string to receive the import job ID. \param clientConfig: Aws client configuration. \return bool: Function succeeded. */ bool AwsDoc::Medical_Imaging::startDICOMImportJob( const Aws::String &dataStoreID, const Aws::String &inputBucketName, const Aws::String &inputDirectory, const Aws::String &outputBucketName, const Aws::String &outputDirectory, const Aws::String &roleArn, Aws::String &importJobId, const Aws::Client::ClientConfiguration &clientConfig) { Aws::MedicalImaging::MedicalImagingClient medicalImagingClient(clientConfig); Aws::String inputURI = "s3://" + inputBucketName + "/" + inputDirectory + "/"; Aws::String outputURI = "s3://" + outputBucketName + "/" + outputDirectory + "/"; Aws::MedicalImaging::Model::StartDICOMImportJobRequest startDICOMImportJobRequest; startDICOMImportJobRequest.SetDatastoreId(dataStoreID); startDICOMImportJobRequest.SetDataAccessRoleArn(roleArn); startDICOMImportJobRequest.SetInputS3Uri(inputURI); startDICOMImportJobRequest.SetOutputS3Uri(outputURI); Aws::MedicalImaging::Model::StartDICOMImportJobOutcome startDICOMImportJobOutcome = medicalImagingClient.StartDICOMImportJob( startDICOMImportJobRequest); if (startDICOMImportJobOutcome.IsSuccess()) { importJobId = startDICOMImportJobOutcome.GetResult().GetJobId(); } else { std::cerr << "Failed to start DICOM import job because " << startDICOMImportJobOutcome.GetError().GetMessage() << std::endl; } return startDICOMImportJobOutcome.IsSuccess(); }
참고

에는 더 많은 내용이 있습니다 GitHub. AWS 코드 예시 리포지토리에서 전체 예시를 찾고 설정 및 실행하는 방법을 배워보세요.

CLI
AWS CLI

dicom 가져오기 작업 시작

다음은 dicom 가져오기 작업을 시작하는 start-dicom-import-job 코드 예제입니다.

aws medical-imaging start-dicom-import-job \ --job-name "my-job" \ --datastore-id "12345678901234567890123456789012" \ --input-s3-uri "s3://medical-imaging-dicom-input/dicom_input/" \ --output-s3-uri "s3://medical-imaging-output/job_output/" \ --data-access-role-arn "arn:aws:iam::123456789012:role/ImportJobDataAccessRole"

출력:

{ "datastoreId": "12345678901234567890123456789012", "jobId": "09876543210987654321098765432109", "jobStatus": "SUBMITTED", "submittedAt": "2022-08-12T11:28:11.152000+00:00" }

자세한 내용은 AWS HealthImaging 개발자 안내서가져오기 작업 시작을 참조하세요.

Java
SDK Java 2.x용
public static String startDicomImportJob(MedicalImagingClient medicalImagingClient, String jobName, String datastoreId, String dataAccessRoleArn, String inputS3Uri, String outputS3Uri) { try { StartDicomImportJobRequest startDicomImportJobRequest = StartDicomImportJobRequest.builder() .jobName(jobName) .datastoreId(datastoreId) .dataAccessRoleArn(dataAccessRoleArn) .inputS3Uri(inputS3Uri) .outputS3Uri(outputS3Uri) .build(); StartDicomImportJobResponse response = medicalImagingClient.startDICOMImportJob(startDicomImportJobRequest); return response.jobId(); } catch (MedicalImagingException e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } return ""; }
참고

에는 더 많은 내용이 있습니다 GitHub. AWS 코드 예시 리포지토리에서 전체 예시를 찾고 설정 및 실행하는 방법을 배워보세요.

JavaScript
SDK 용 JavaScript (v3)
import { StartDICOMImportJobCommand } from "@aws-sdk/client-medical-imaging"; import { medicalImagingClient } from "../libs/medicalImagingClient.js"; /** * @param {string} jobName - The name of the import job. * @param {string} datastoreId - The ID of the data store. * @param {string} dataAccessRoleArn - The Amazon Resource Name (ARN) of the role that grants permission. * @param {string} inputS3Uri - The URI of the S3 bucket containing the input files. * @param {string} outputS3Uri - The URI of the S3 bucket where the output files are stored. */ export const startDicomImportJob = async ( jobName = "test-1", datastoreId = "12345678901234567890123456789012", dataAccessRoleArn = "arn:aws:iam::xxxxxxxxxxxx:role/ImportJobDataAccessRole", inputS3Uri = "s3://medical-imaging-dicom-input/dicom_input/", outputS3Uri = "s3://medical-imaging-output/job_output/", ) => { const response = await medicalImagingClient.send( new StartDICOMImportJobCommand({ jobName: jobName, datastoreId: datastoreId, dataAccessRoleArn: dataAccessRoleArn, inputS3Uri: inputS3Uri, outputS3Uri: outputS3Uri, }), ); console.log(response); // { // '$metadata': { // httpStatusCode: 200, // requestId: '6e81d191-d46b-4e48-a08a-cdcc7e11eb79', // extendedRequestId: undefined, // cfId: undefined, // attempts: 1, // totalRetryDelay: 0 // }, // datastoreId: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // jobId: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx', // jobStatus: 'SUBMITTED', // submittedAt: 2023-09-22T14:48:45.767Z // } return response; };
참고

에는 더 많은 내용이 있습니다 GitHub. AWS 코드 예시 리포지토리에서 전체 예시를 찾고 설정 및 실행하는 방법을 배워보세요.

Python
SDK Python용(Boto3)
class MedicalImagingWrapper: def __init__(self, health_imaging_client): self.health_imaging_client = health_imaging_client def start_dicom_import_job( self, job_name, datastore_id, role_arn, input_s3_uri, output_s3_uri ): """ Start a DICOM import job. :param job_name: The name of the job. :param datastore_id: The ID of the data store. :param role_arn: The Amazon Resource Name (ARN) of the role to use for the job. :param input_s3_uri: The S3 bucket input prefix path containing the DICOM files. :param output_s3_uri: The S3 bucket output prefix path for the result. :return: The job ID. """ try: job = self.health_imaging_client.start_dicom_import_job( jobName=job_name, datastoreId=datastore_id, dataAccessRoleArn=role_arn, inputS3Uri=input_s3_uri, outputS3Uri=output_s3_uri, ) except ClientError as err: logger.error( "Couldn't start DICOM import job. Here's why: %s: %s", err.response["Error"]["Code"], err.response["Error"]["Message"], ) raise else: return job["jobId"]

다음 코드는 MedicalImagingWrapper 객체를 인스턴스화합니다.

client = boto3.client("medical-imaging") medical_imaging_wrapper = MedicalImagingWrapper(client)
참고

에는 더 많은 내용이 있습니다 GitHub. AWS 코드 예시 리포지토리에서 전체 예시를 찾고 설정 및 실행하는 방법을 배워보세요.

가용성 예제

필요한 예제를 찾을 수 없습니까? 이 페이지 하단의 피드백 제공 링크를 사용하여 코드 예제를 요청합니다.