NGC | Catalog
CatalogResourcesClara Deploy AI Liver Tumor Segmentation Pipeline [Deprecated]

Clara Deploy AI Liver Tumor Segmentation Pipeline [Deprecated]

Logo for Clara Deploy AI Liver Tumor Segmentation Pipeline [Deprecated]
Description
Clara Deploy AI Liver Tumor Segmentation Pipeline
Publisher
NVIDIA
Latest Version
0.8.1-2108.1
Modified
April 4, 2023
Compressed Size
1.31 GB

Clara Deploy SDK is being consolidated into Clara Holoscan SDK

More info https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara/collections/claradeploy

Clara AI Liver Tumor Segmentation Pipeline

This asset requires the Clara Deploy SDK. Follow the instructions on the Clara Ansible page to install the Clara Deploy SDK.

Overview

The Liver Segmentation pipeline is one of the reference pipelines provided with Clara Deploy SDK. This pipeline depends on the Clara Deploy DICOM Adapter to receive DICOM images, specifically an axial series of an abdominal CT study. Once the DICOM instances are stored, the pipeline is started to first convert the DICOM instances to a volume image in MetaIO format and then processes the input volume image with the Liver Segmentation AI model. The AI model generates the labeled liver and tumors (within the liver) as a binary mask on slices of the volume of the same size as the input. The liver is labeled as 1, tumors within the liver are labeled as 2, and the background is labeled as 0. In its final steps, the pipeline outputs the binary mask as a new DICOM series using the original study instance UID; also, it outputs the original and segmented volumes to the Clara Deploy Render Server for visualization on the Clara Dashboard.

Pipeline Definition

The Liver Segmentation pipeline is defined in the Clara Deploy pipeline definition language. This pipeline utilizes built-in reference containers to construct the following set of operators:

  • The dicom-reader operator converts input DICOM data into volume images in mhd format.
  • The liver-tumor-segmentation operator performs AI inference against the NVIDIA Triton Inference server to generate liver and tumor segmentation volume images.
  • The dicom-writer converts the segmented volume image into DICOM instances with a new series instance UID and the original DICOM study instance UID.
  • The register-dicom-output operator registers the DICOM instances with the Clara Deploy DICOM Adapter which in turn stores the instance on external DICOM devices per configuration.
  • The register-volume-images-for-rendering operator registers original and segmented volume images with the Clara Deploy Render Server for visualization.

The following is the details of pipeline definition, with comments describing each operator's functions as well as input and output.

api-version: 0.4.0
name: liver-tumor-pipeline
operators:
# dicom reader operator
# Input: '/input' mapped directly to the input of the pipeline, which is populated by the DICOM Adaptor.
# Output:'/output' for saving converted volume image in MHD format to file whose name
#            is the same as the DICOM series instance ID.
- name: dicom-reader
  description: Converts DICOM instances into MHD, one file per DICOM series.
  container:
    image: clara/dicom-reader
    tag: latest
  # Use the following variable to configure DICOM Reader to save mhd, nii, or nii.gz
  # Note the attribute 'variables' should indent should match that of 'container'.
  #variables:
  #  NVIDIA_CLARA_DCM_TO_FORMAT: nii.gz
  input:
  - path: /input
  output:
  - path: /output
# liver-tumor-segmentation operator
# Input: `/input` containing volume image data, MHD format, with a single volume.
# Output: `/output` containing segmented volume image, MHD format.
#         `/publish` containing original and segmented volume images, MHD format,
#             along with rendering configuration file.
- name: liver-tumor-segmentation
  description: Segmentation of liver and tumor inferencing using DL trained model.
  container:
    image: clara/ai-livertumor
    tag: latest
  requests:
    gpu: 1
    memory: 10240
  input:
  - from: dicom-reader
    path: /input
  output:
  - path: /output
    name: segmentation
  - path: /publish
    name: rendering
  models:
    - name: segmentation_liver_v1
      # name of the model registered with Clara Platform.  Confirm by runniner clara list models.
# dicom writer operator
# Input1: `/input` containing a volume image file, in MHD format, name matching the DICOM series instance UID.
# Input2: `/dicom` containing original DICOM instances, i.e. dcm file.
# Output: `/output` containing the DICOM instances converted from the volume image, with updated attributes
#         based on original DICOM instances.
- name: dicom-writer
  description: Converts MHD into DICOM instance with attributes based on the original instances.
  container:
    image: clara/dicom-seg-writer
    tag: latest
  variables:
    NVIDIA_SEG_LABELS: "[\"Liver\",\"Tumor\"]"
  input:
  - from: liver-tumor-segmentation
    name: segmentation
    path: /input
  - path: /dcm
  output:
  - path: /output
    name: dcm
# register-volume-images-for-rendering operator
# Input: Published original and segmented volume images, MHD format, along with rendering configuration file
#        from liver-tumor-segmentation operator.
# Output: N/A. Input data will be sent to the destination, namely `renderserver` for Render Server DataSet Service.
- name: register-volume-images-for-rendering
  description: Register volume images, MHD format, for rendering.
  container:
    image: clara/register-results
    tag: latest
    command: ["python", "register.py", "--agent", "renderserver"]
  input:
  - from: liver-tumor-segmentation
    name: rendering
    path: /input
# register-dicom-output operator
# Input: `/input` containing DICOM instances in the named output, `dicom` from dicom-writer operator.
# Output: N/A. Input data will be sent to the destinations, namely DICOM devices, by the Clara DICOM SCU agent.
- name: register-dicom-output
  description: Register converted DICOM instances with Results Service to be sent to external DICOM devices.
  container:
    image: clara/register-results
    tag: latest
    command: ["python", "register.py", "--agent", "ClaraSCU", "--data", "[\"MYPACS\"]"]
  input:
  - from: dicom-writer
    name: dcm
    path: /input

Executing the Pipeline

Please refer to the Quick Start Guide on how to register a pipeline, configure the DICOM Adapter, and execute the pipeline.

License

An End User License Agreement is included with the product. By pulling and using the Clara Deploy asset on NGC, you accept the terms and conditions of these licenses.

Suggested Reading

Release Notes, the Getting Started Guide, and the SDK itself are available at the NVIDIA Developer forum: (https://developer.nvidia.com/clara).

For answers to any questions you may have about this release, visit the NVIDIA Devtalk forum: (https://devtalk.nvidia.com/default/board/362/clara-sdk/).