Back to Projects List
Key Investigators
  - Rudolf Bumm  (KSGR)
 
  - Raul San Jose Estepar (Brigham)
 
  - Andras Lasso (PerkLab)
 
  - Steve Pieper (Kitware)
 
Project Description
The Chest Imaging Platform (CIP) is an extension to 3D Slicer.

It integrates:
  - chest image processing functionality as a toolkit by exposing the CLIs
 
  - Slicer specific modules to provide user-friendly chest CT quantitative solutions
 
  - Visualization of scale-space particles and labelmaps
 
  - Integrated workflows to end-to-end clinical evaluation
 
In the current preview versions of 3D Slicer (4.13.0) parts of CIP fail to load the following CIP modules because Slicer’s “Editor” module has been removed.
CIP_CalciumScoring
CIP_RVLVRatio
CIP_LesionModel
CIP_Calibration
CIP_MIPViewer
CIP_BodyComposition
CIP_ParenchymaSubtypeTrainingLabelling
CIP_ParenchymaAnalysis
CIP_PAARatio
CIP_AVRatio
CIP_InteractiveLobeSegmentation
The CIP extension currently uses legacy editor module, and charts infrastructure (instead of Segment editor, Plots, and Tables modules).
Objective
  - Replace the usage of the “Editor” module in CIP by something different, preferably the SegmentEditor.
 
  - Replace labelmaps with segmentations
 
  - Replace outdated fiducial calls (exceptions)
 
  - Replace the charts infrastructure
 
Approach and Plan
A fork and branch of SlicerCIP was created at https://github.com/rbumm/SlicerCIP/tree/Branch_CIPCompatSlicer5 to be used as the source base, all changes will later be included in a PR to https://github.com/acil-bwh/SlicerCIP.
Resolve compatibility problems step by step
Deactivate non-working or outdated modules in Slicer 5
Considerations
Progress and Next Steps
01/06/22:
Removing the “Editor” related imports from “Scripted/CIP_/CIP/ui/init.py” results in a complete CIP-startup in Slicer 4.13.0 without initial error messages.
A github search revealed that “Editor” calls are being made from three of the above modules:
  - CIP_Calibration
 
  - CIP_ParenchymaSubtypeTrainingLabelling
 
  - CIP_BodyComposition
 
01/11/22:
  - CIP_Calibration is probably outdated.
 
  - CIP_ParenchymaSubtypeTrainingLabelling is outdated, probably redundant.
 
  - CIP_BodyComposition is needed, but probably much better realized with AI segmentation
 
01/17/22: 12pm Meeting with Raul, Andras, Steve and Rudolf (Discord Red Slice)
  - Incompabilities between 4.13 and CIP seem to be caused by CIPLibrary
 
  - CIP, it’s CLI functions and their history were demonstrated by @Raul
 
  - CIP_Calibration is not outdated.
 
  - CIP_ParenchymaSubtypeTrainingLabelling should be kept.
 
  - CIP_BodyComposition is needed and should be kept
 
  - CIP Toolkit functions should be included in a future SlicerCIP release
 
  - A CIPLibrary compatibility branch “4.13” or “5.0” will be created
 
  - CIP GitHub write access was requested for @Andras to support merging, @Raul agreed
 
  - As labelmaps are used throughout CIP in nearly every module we will discuss a Slicer-based solution for that problem tomorrow
 
01/18/22: 12pm Meeting with Raul, Andras, Rudolf (Discord Red Slice)
  - good follow up meeting
 
  - 
@rbumm demonstrated the build process
 
  - a first module (Calibration) has been adapted to 4.13 and now works with the Segment Editor instead of Editor
 
  - ParenchymaSubtypeTrainingLabelling was demonstrated by Raul
 
  - we decided to prioritize certain modules during CIP adaptation
 
  - ParenchymaAnalysis probably the next to go
 
  - Andras promised to look into CLI modules and letting them use segmentations instead of labelmaps as an input maybe automatically
 
  - next meeting will be Thursday 11 am Red Slice
 
Final presentation start here
01/20/22: 11am-12:30pm Meeting with Raul, Andras, Rudolf (Discord Red Slice)
  - The Chest Imaging Platform extension’s “Calibrate” module has been finalized for Slicer 5 together with @lassoan and was demonstrated by @rbumm
 
  - see this SlicerCIP GitHub fork and this commit
 
  - will serve  as a skeleton to adopt the other CIP modules and is now fully functional
 
  - The “Calibration” widget uses a newly created segmentation for each volume instead of labelmaps
 
  - the segmentation can be edited in the embedded Segment Editor
 
  - before pressing “Calibrate” the segmentation is converted to a labelmap for the actual calibration in the logic()
 
  - in addition, we developed a strategy on how to transform the other CIP modules to Slicer 5
 
  - non-working modules will be excluded from CMake to provide only those functional to the community
 
  - 
@Raul demonstrated new vessel segmentation techniques and answered many questions
 
  - 
@Raul agreed on giving @lassoan write access to the SlicerCIP GitHub repository
 
Illustrations
New Slicer 5 CIP “Calibration” module with embedded “SegmentEditor” instead of the old “Editor”:

Background and References
https://chestimagingplatform.org/
https://discourse.slicer.org/t/exporting-csv-with-parenchyma-analysis-module/10697/58?u=rbumm