Skip to content

Latest commit

 

History

History
65 lines (38 loc) · 4.79 KB

README.md

File metadata and controls

65 lines (38 loc) · 4.79 KB

Project

This prototype project built on Unity explores alternative methodologies aiming for speed to calculate pixel colors to Hounsfield units set by the user and assess the quality of two different types of render methods.

Methodologies: Unity's Burst compiler (v 1.4.1) multithreaded jobs on CPU and Compute Buffers on GPU.

Rendering scenarios tested for quad meshes (2D-plane equivalent images) and raymarching volumetric cloud. Each scenario is contained in a Unity scene.

Each prototype scene was not extended in full because these are a proof of concept and used determine the viability of the approach for our purposes. There is no further support for this repo.

Project collaborator and donor of dicom images: Centre de Diagnosi per la Imatge de Tarragona. The project currently has no dicom images, unfortunately the images were never further anonymized for github distribution.

star


Project Software

Unity version: Unity 2020.3.36f1, Build Platform PC Standalone.

Unity Render Pipeline: Built-in.

Dicom images data processed with the Fellow Oak DICOM library subject to The MIT License (MIT), Copyright (c) Microsoft Corporation license

License

This project is licensed under the MIT License. See LICENSE.txt for more information.

Features

  • Dicom Processing: When the scene is played, progress of the dicom images being processed is displayed in the Inspector:

    Dicom-Images-Processed-Progress
  • Render options:

    • Axial, Coronal and Sagittal axis are available. Axial axis was the base for our study and it is recommended to explore the Unity project.

    • Render Scenes (Scenes found in unity project folder ..\Assets\Scenes):

      • VolumetricRender_3DRenderTexture.unity: Raymarching volumetric cloud render using 3D Render Textures with Slicing functionality. Hounsfield units set according to Window width and Window Center selected by the user. Single study axis (axial, coronal, sagittal) at once.

        VolumetricRender_3DRenderTexture.mp4
      • VolumetricRender_3DTexture.unity: Raymarching volumetric cloud render using 3D Textures with Slicing functionality. Hounsfield units cannot be re-adjusted. Single study axis (axial, coronal, sagittal) at once.

        VolumetricRender_3DTexture.mp4
      • QuadMesh_CPU-RGBA_Range_Picker.unity: 3D model renders on multiple quad meshes according to the RGBA (0-255) unit range selected by the user. Multiple study axis (axial, coronal, sagittal) may be rendered at once and aligned.

        quadmesh_cpu-rgba_range_picker_video.mp4
      • QuadMesh_GPU_CB_Windowing.unity: Quad meshes: 3D model renders on multiple quad meshes according to the Hounsfield unit set on a Window width and Window Center selected by the user. Multiple study axis (axial, coronal, sagittal) may be rendered at once and aligned.

        QuadMesh_GPU_CB_Windowing.mp4
        showslices-quadmesh-windowing.Original.mp4

        If you find this helpful you can buy me a coffee :)

        Buy Me A Coffee