You will need two public subnets and two private subnets in a given Virtual Private Cloud (VPC). You can either follow this blog post to deploy the network infrastructure first, or deploy the VPC network infrastructure using this CloudFormation template (Optional)
To deploy the CloudFormation (CFN) on AWS console, using 1-click deployment button:
The required information will be EC2 Key pair and network infrastructure.
After the CFN stack is successfully created, the Orthanc endpoint URL will be available in the Outputs tab like:
Orthanc supports WADO-RS with its RESTful API. You can upload a DICOM image from local folder:
curl -u orthanc:orthanc -X POST https://<Orthanc URL>/instances --data-binary @<DICOM Image>.dcm -k
After uploaded, check the instance id assigned:
curl -u orthanc:orthanc https://<Orthanc URL>/instances -k
Then put instance IDs in source field of manifest.json. Assuming here is the output of the previous command (list of DICOM instances):
[ "502b0a4b-5cb43965-7f092716-bd6fe6d6-4f7fc3ce", "af163634-5f8009c8-a941f2a2-4d108bea-119181b5", "3e9562ab-3bd7b304-e003d1f8-0fe2e8f5-e6af3f36" ]
The manifest.json file will look at this.
click the button below to deploy lambda functions, S3 bucket, and Notebook instance with appropriate IAM roles:
Fill the parameter PreLabelLambdaSourceEndpointURL with the Orthanc endpoint URL from previous step.
Take a note of the outputs of CFN deployment, including SMGTLabelingExecutionRole and SageMakerAnnotationS3Bucket names:
The manifest.json file generated earlier will be uploaded the the SageMakerAnnotationS3Bucket.
- Upload the input manifest.json file generated earlier to the SageMakerAnnotationS3Bucket
- Create workforce and add team member
- Create a SageMaker GroundTruth Labeling Job: at step 1 specify the input and output data locations in SageMakerAnnotationS3Bucket plus the SMGTLabelingExecutionRole as IAM role for labeling job
- Copy the content in template.liquid.html to the Custom Template text field as well as configure the gt-prelabel-task-lambda and gt-postlabel-task-lambda functions deployed earlier.
After configuring the custom labeling task, click on the Preview button, you will see the following preview
If you created a private workforce, you can go to the Labeling Workforces tab and find the annotation console link there as shown earlier. The annotator will be able to see the task created like:
The CFN deployment earlier also create a SageMaker notebook instance, open the Jupyter notebook to train and deploy machine learning models using the annotated datasets from SageMaker GroundTruth labeling job:
See CONTRIBUTING for more information.
This library is licensed under the MIT-0 License. See the LICENSE file.