Larvitar Documentation
Home
Guide
API
GitHub
Home
Guide
API
GitHub
  • API

    • Initializing
    • Parsing
    • Loading
    • Rendering
    • Interacting
    • Testing
    • Modules

      • Logger
      • Store
      • Managers

        • Image Manager
        • GSPS Manager
        • File Manager
      • Parsers

        • PDF Parser
        • NRRD Parser
        • ECG Parser
      • Loaders
        • DICOM Loader
        • MultiFrame Loader
        • SingleFrame Loader
        • DSA Image Loader
        • File Loader
        • Nrrd Loader
      • Interaction Tools

        • Initialize and manage Tools
        • Default and Custom Tools
        • Segmentation Tools
        • DvTools
      • Utilities

        • DICOM Anonymization
        • DICOM Customization
        • Tags
        • Utils
        • Memory
      • Post Processing

        • DSA
      • Visualizations

        • Layers
        • ECG
        • Color Maps
        • Greyscale Presentation States
      • Testing

DSA Loader Module

The DSA Loader Module is a specialized DICOM loader designed to handle Digital Subtraction Angiography (DSA) images. This module enables efficient parsing, caching, and rendering of DSA frames while integrating seamlessly with the cornerstoneDICOMImageLoader ecosystem.

Key Responsibilities

  • Custom DSA Image Loading: Implements logic to load and process DSA image frames.
  • Pixel Shift Application: Supports pixel shift operations for improved DSA visualization.
  • Series Management: Works with the Image Manager to manage and retrieve DSA metadata.
  • Efficient Caching: Avoids redundant dataset parsing by utilizing an internal cache.
  • Cornerstone Integration: Generates Cornerstone-compatible images for seamless rendering.

Internal Workflow

  1. Image Parsing & Retrieval:
    • Extracts image metadata from the Image Manager.
  2. Image ID Assignment:
    • Generates unique image IDs for each frame.
  3. Pixel Data Processing:
    • Applies pixel shifts and processes pixel values.
  4. Custom Image Creation:
    • Converts processed frames into Cornerstone-compatible images.

Main Functions

loadDsaImage

Syntax:

loadDsaImage(imageId: string): ImageLoadObject

Parameters:

ParameterTypeDescription
imageIdstringThe ID of the DSA image to be loaded.

Returns:

ImageLoadObject – An object containing a Promise that resolves to the loaded image.


populateDsaImageIds

Syntax:

populateDsaImageIds(uniqueUID: string): void

Parameters:

ParameterTypeDescription
uniqueUIDstringA unique identifier for the DSA image series.

Returns:

void – Populates DSA image IDs for a given series.


setPixelShift

Syntax:

setPixelShift(pixelShift: number[] | undefined): void

Parameters:

ParameterTypeDescription
pixelShiftnumber[] | undefinedThe pixel shift array applied to DSA images.

Returns:

void – Sets the pixel shift values for DSA processing.


getDsaImageId

Syntax:

getDsaImageId(customLoaderName: string): string

Parameters:

ParameterTypeDescription
customLoaderNamestringThe name of the custom image loader.

Returns:

string – A unique image ID generated for the DSA loader.


createCustomImage

Syntax:

createCustomImage(imageId: string, srcImage: Image, pixelData: number[]): ImageLoadObject

Parameters:

ParameterTypeDescription
imageIdstringThe unique identifier for the DSA image.
srcImageImageThe original source image object.
pixelDatanumber[]The processed pixel data for the DSA image.

Returns:

ImageLoadObject – A Cornerstone-compatible image object.


Conclusion

The DSA Loader Module provides an efficient, optimized, and structured approach for handling Digital Subtraction Angiography images. By leveraging caching, pixel shift correction, and seamless Cornerstone integration, it ensures smooth performance and high-quality visualization of DSA datasets.


D/Vision Lab
Last Updated:
Contributors: Laura Borghesi, Simone "Lateralus" Manini
Prev
SingleFrame Loader
Next
File Loader