Skip to content

[BUG] Defacer produces a plane in front of the head instead of removing the face #163

@Ignatiusboadi

Description

@Ignatiusboadi

Describe the bug
When running the AtlasCentricPreprocessor with the QuickShear defacer, the output does not remove the patient’s face as intended. Instead, a plane appears in front of the head.

To Reproduce
Steps to reproduce the behavior:

  1. Install brainles_preprocessing and dependencies.
  2. Run the code below
from pathlib import Path
from brainles_preprocessing.normalization.windowing_normalizer import WindowingNormalizer
from brainles_preprocessing.modality import CenterModality
from brainles_preprocessing.preprocessor import AtlasCentricPreprocessor
import os

windowing_normalizer = WindowingNormalizer(150, 150)

patient = "Patient01"
patient_folder = Path(f"/path/to/data/{patient}")
output_folder = patient_folder / "output"
os.makedirs(output_folder, exist_ok=True)

center = CenterModality(
    modality_name="ncct",
    input_path=patient_folder / f"{patient}_1_BaseCTtrans.nii.gz",
    normalizer=windowing_normalizer,
    raw_skull_output_path=output_folder / "ncct_raw.nii.gz",
    normalized_skull_output_path=output_folder / "ncct_norm.nii.gz",
    raw_defaced_output_path=output_folder / "ncct_defaced_raw.nii.gz",
    normalized_defaced_output_path=output_folder / "ncct_defaced_norm.nii.gz",
    defacing_mask_output_path=output_folder / "ncct_deface_mask.nii.gz",
)

preprocessor = AtlasCentricPreprocessor(
    center_modality=center,
    moving_modalities=[],
    atlas_image_path="/path/to/template_1mm.nii"
)

preprocessor.run()
  1. Run commands '....'
    Expected behavior
    The defacer should remove the face of the patient while preserving the rest of the head.

Screenshots

Image

Environment

  • OS: Rocky Linux 8.8 (Green Obsidian)
  • Platform ID: platform:el8

NVIDIA drivers and GPUs

+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.95.05 Driver Version: 580.95.05 CUDA Version: 13.0 |
+-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 2080 Ti On | 00000000:B2:00.0 Off | N/A |
| 0% 27C P8 9W / 250W | 1MiB / 11264MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+

Python environment and version?

Miniconda3 environment with Python 3.12.0

version of brainles_preprocessing ?

brainles_preprocessing==0.6.5

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions