Medical imaging · CT segmentation

Segmentation and Measurement of Skeletal Muscle Areas on CT Scans

Estimation of sarcopenia on different lumbar vertebrae levels (L3-L2-L1)

Aissam Djahnine

3
vertebra levels: L3, L2, L1
8,155
axial slices, 512 × 512
4,472
image–mask pairs in the final training set
~0.99
median validation Dice
Skeletal muscle segmentation examples on CT slices
Skeletal muscle segmentations on CT slices. Select the figure to view it at full resolution.

Abstract

Skeletal muscle area measured on CT is used to estimate sarcopenia, usually at the third lumbar vertebra (L3). Extending automatic measurement to L2 and L1 requires masks that did not exist at those levels.

We train a U-Net to segment skeletal muscle on 512 × 512 axial slices and grow the dataset step by step: models trained on L3 generate masks for L2 and L1, accepted masks are added back, and training repeats. A Laplacian "hard filter", rotations, artificial hands and corrected error masks improve robustness, and a ribs-removal post-processing step cleans the L2 and L1 masks.

The final training set holds 4,472 image–mask pairs across the three levels, and the final models reach a median validation Dice around 0.99 on both the L3-only and the L3-L2-L1 datasets.

Keywords: skeletal muscle · sarcopenia · CT segmentation · U-Net · data augmentation · continual adding

Method

The network is a classic U-Net on 512 × 512 inputs, with a 6-stage encoder (16 to 512 feature maps) and a matching decoder. It trains for 30 epochs with RMSProp on a 90:10 split, in 3 to 5 hours on a single NVIDIA TITAN RTX GPU. Images are clipped to [0, 2000] HU and normalized to [-1, 1].

  1. Hard filter. A Laplacian filter is applied to low-noise images so the model learns both soft and hard reconstruction textures.
  2. Rotation. Random rotations in [−30°, 30°] cover patients who lie slightly rotated.
  3. Artificial hands. Hands and objects extracted from the dataset are added to training images, so the model stops segmenting them.
  4. Ribs removal. A post-processing step removes regions inside the ribs, needed at L2 and L1.
  5. Continual adding. Models trained on L3 generate L2 and L1 masks; accepted masks join the training set and the cycle repeats.
U-NetData augmentationPost-processingCT

Dataset

Table 1: Dataset after all augmentations

LevelFinal trainingError remainingAugmentationTotal
L31,786417882,291
L21,5591,03902,598
L11,0392,22703,266
Total4,4723,683888,155
Diagram of how the L3, L2 and L1 training sets grew across four steps
Figure 1: Dataset evolution for L3, L2 and L1 through data augmentation and continual adding.

Results

Table 2: Experiments, in chronological order.

ModelsLevelsDescription
M1, M11L3Hard filter only
M2, M22L3Hard filter + rotation
M3, M33L3Hard filter + hand masks (88)
M4, M44L3Hard filter + hand masks (88) + error added (59)
M5, M55L3Hard filter + rotation + error added (59)
M6, M66L3Hard filter + rotation + hand masks (88) + error added (102)
M7, M77L3Same as M6 + GN 3
M8, M88L3-L2Same as M7 + L2 added (1,093)
M9, M99L3-L2Same as M7 + L2 added (1,559)
M10, M100L3-L2-L1Same as M7 + L2 added (1,559) + L1 added (1,039)

Experiments M1 to M77 train on L3 only, adding the hard filter, rotation, artificial hands and corrected error masks step by step. M8 to M100 add L2 and then L1 samples. Results between experiments are not directly comparable, since the validation set grows each time new image–mask pairs are added.

Boxplots of validation Dice for the L3-only experiments
Figure 2: Validation Dice for the L3-only experiments (M1 to M77).
Boxplots of validation Dice for the L3-L2-L1 experiments
Figure 3: Validation Dice for the L3, L2 and L1 experiments (M8 to M100).

Key findings

  • Final models: M7/M77 on L3 only and M10/M100 on L3-L2-L1 perform well, with median validation Dice around 0.99.
  • Three levels from one: segmentation now works at L3, L2 and L1, starting from L3 masks only.
  • Open challenges: noisy samples and images with unusual texture remain difficult.

Conclusions & limitations

The results obtained are both satisfying and promising: segmentation succeeds on the different lumbar vertebrae levels (L3, L2 and L1), but some challenges remain, such as noisy samples and texture variability. The next step is full fine-tuning of the models’ hyperparameters to improve segmentations.

More research