Scientific-Networks

CTLungAnalyzer

CTLungAnalyzer

CTLungAnalyzer is a new 3DSlicer extension for segmentation and spatial reconstruction of infiltrated and collapsed areas in chest CT examinations.

Aim
In CT scans, pulmonary infiltrations as well as non-ventilated areas like emphysema or bullae are usually analyzed visually. Up to now, the extend of these abnormalities can not be quantified in numbers or milliliters and thus it is difficult to objectively compare results. This especially crucial in the light of the current COVID-19 pandemia, where there are high case loads of patients with severe lung infiltrations, which additionally need meticulous follow up over time. The aim of this project was to develop a software program that enables threedimensional segmentation of the CT data and calculate their individual volumes. 3D slicer (1) is an established an freely available 3D imaging platform for scientific use. Therefore, we chose 3DSlicer and Python as our main developing tool.

Methods
DICOM CT datasets of patients can be imported into 3DSlicer via URL, direct file read or DICOM LAN operations. As a first step, we call up the CT scan in the segment editor, create a new volume node "Segmentation" and add two segments into this node: "Right lung mask" and "Left lung mask". Next, we use the "Draw" function of 3DSlicer and place 4-5 hand drawn slices over the right and left lung from top to bottom. Then we use the "Fill between slices" function to generate the two lung masks. Until further notice and program version, these steps have to be performed manually. We then developed the CTLungAnalyzer (CTLA) extension from scratch in the programming language Python. The software uses freely definable threshold ranges to identify five regions of interest: "Bulla/emphysema","Ventilated","Infiltrated", "Collapsed" and "Lung Vessel". Segments are generated using 3DSlicer's segment editor "Threshold" function and the volume of each segment is calculated by using 3DSlicer's "Segment statistics" function. The results are then superimposed to the CT 2D views in standard colors: "Bulla" = black, "Ventilated" = blue, "Infiltrated" = yellow, "Collapsed" = pink and "Vessel" = red. In addition, spatial reconstruction (3D) of the diseased lung segments is available. The total results of the segmentation include:

Total lung volume (100%)
Right lung volume (% of total lung volume)
Left lung volume (% of total lung volume)
Functional right lung volume (ventilated, % of right lung volume)
Functional left lung volume (ventilatzed, % of left lung volume)
Functional total lung volume (ventilated, % of total lung volume)
Affected right lung volume (infiltrated + collapsed right volume, % of right lung volume)
Affected left lung volume (infiltrated + collapsed left volume, % of left lung volume)
Affected total lung volume (infiltrated + collapsed total volume, % of total lung volume)
CovidQ (COVID-19 quotient: total affected lung volume [ml] / total lung volume [ml])

Vessel volume is subtracted from right lung volume, left lung volume and total lung volume to compensate for this anatomic compartment. Intrapulmonary airways are not yet measured by CTLA and are not compensated for in the results.

Results
If used with sensible thresholds, CTLA is feasible, easy to use and 100% reproducible. Spacial reconstruction of the segments yield impressive visual results. Although the production of a right and left lung mask is still rather time consuming (15 min), running CTLA only takes 5-6 seconds, running CTLA with 3D reconstruction takes about 1-2 minutes. CTLA has bee developed and tested with 3DSlicer V 4.11.200930.

Limitations
Lung volumes represent areas within the lung masks only. This induces a marginal volume error. Lung vessels have a thin infiltration-like parenchyma cover around them. This induces a small volume error. CovidQ has not been clinically evaluated yet. Do NOT base and treatment decisions on that value alone. 3DSlicer is NOT FDA approved. It is the users responsibility to ensure compliance with applicable rules and regulations.
See also: https://www.slicer.org/wiki/CommercialUse

Tutorial:


Discussion


Planned features:

Quantitative ventrodorsal lung infiltrate analysis (effect of patient positioning)
Fiduical placements in trachea, normal lung, COVID lung, vessel and calculating autothresholds
Compensate for the "vessel infiltrate" error
Compensate for the "lung airway volume " error
Serial examinations
(semi) automated lung masks

Version history
V1.0 is what you see here.

(1) https://www.slicer.org/

Github page and download:
https://github.com/rbumm/SlicerCTLungAnalyzer


Idea and realization :
Prof. Rudolf Bumm
Department of Surgery
Kantonsspital Graubünden
Chur, Switzerland

(c) 2020 by R. Bumm, Munich / Chur.
All rights reserved. The code presented here is distributed under the https://www.apache.org/licenses/LICENSE-2.0 license.

Development and marketing: c/o Scientific-Networks Munich
info@scientific-networks.com

Images

COVID-19 patient under surveillance, published with patients permission.

Screenshot1
Fig 1: Zwo- and threedimensional representation of the segments


Screenshot1
Fig 2: Volumetric segment results


Screenshot1
Fig 3: CTLungAnalyzer GUI