๐Ÿง ๐Ÿง 3D Slicer๋กœ Brain PET SUVr ์ถ”์ถœ: ์ดˆ๋ณด์ž๋„ ๋”ฐ๋ผ ํ•˜๋Š” ์˜๋ฃŒ ์ด๋ฏธ์ง€ ๋งˆ์Šคํ„ฐ ๊ฐ€์ด๋“œ![gr]

๐Ÿง ๐Ÿง 3D Slicer๋กœ Brain PET SUVr ์ถ”์ถœ: ์ดˆ๋ณด์ž๋„ ๋”ฐ๋ผ ํ•˜๋Š” ์˜๋ฃŒ ์ด๋ฏธ์ง€ ๋งˆ์Šคํ„ฐ ๊ฐ€์ด๋“œ![gr]

3D Slicer๋ฅผ ์ด์šฉํ•ด brain PET image์—์„œ SUVr (SUVr, Standardized Uptake Value ratio – reference tissue ๋Œ€๋น„ SUV ๊ฐ’)์„ ๋ฝ‘๋Š” ๊ฑด ์ •๋ง ์‹ ๋‚˜๋Š” ์˜๋ฃŒ AI ๋ชจํ—˜ ๊ฐ™์•„์š”. CT·MRI ๊ธฐ๋ฐ˜ parcellation๋ถ€ํ„ฐ registration, normalization, SUV ์ถ”์ถœ, SUVr ๊ณ„์‚ฐ๊นŒ์ง€ ํ•˜๋‚˜ํ•˜๋‚˜ ์ž์„ธํžˆ ๋งค๋‰ด์–ผํ™”ํ–ˆ์–ด์š”. "Slicer๊ฐ€ ๋‡Œ๋ฅผ '์Šฌ๋ผ์ด์Šค' ํ•ด์ฃผ๋Š” ๋งˆ๋ฒ• ์ง€ํŒก์ด!"์ฒ˜๋Ÿผ ๋А๊ปด๋ณด์„ธ์š”. 
[๊ทธ๋ฆผ: 3D Slicer ์ธํ„ฐํŽ˜์ด์Šค์— brain PET·MRI·segment๊ฐ€ ์˜ค๋ฒ„๋ ˆ์ด๋œ ์Šคํฌ๋ฆฐ์ƒท. "๋‡Œ ์˜์—ญ ์Šฌ๋ผ์ด์Šคํ•˜๊ณ  SUVr ๋ฝ‘๊ธฐ, ์‹ ๋‚˜๋Š” ์˜๋ฃŒ ํƒํ—˜ ์‹œ์ž‘!" ์บก์…˜.][์—ฌ๊ธฐ์— ๊ทธ๋ฆผ ์‚ฝ์ž…: ๋‹จ๊ณ„๋ณ„ ํ๋ฆ„๋„ – 1. Parcellation → 2. Registration → 3. Normalization ๋“ฑ ํ™”์‚ดํ‘œ ์—ฐ๊ฒฐ. "์Šคํ… ๋ฐ”์ด ์Šคํ…, SUVr Excel๊นŒ์ง€ ํ•œ ๋ฐฉ์—!"]๋ชฉ์ฐจ
  1. 3D Slicer ์†Œ๊ฐœ์™€ ์ค€๋น„๋ฌผ
  2. Brain ์˜์—ญ Parcellation: Atlas ์ด์šฉ Segment ํŒŒ์ผ ์ €์žฅ
  3. Image Registration: PET์™€ CT/MRI ์ •ํ•ฉ
  4. Normalization: 3D Slicer ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๋ฐฉ๋ฒ• ์†Œ๊ฐœ
  5. ์ €์žฅ๋œ Brain PET Image ๋กœ๋”ฉ๊ณผ SUV ๊ฐ’ ์ถ”์ถœ
  6. SUVr ๊ณ„์‚ฐ๊ณผ Excel ์ €์žฅ
  7. ์ถ”๊ฐ€ ํŒ: ์˜ค๋ฅ˜ ๋Œ€์ฒ˜์™€ Batch Processing (๋ผ๋ฒจ๋ง)
  8. ์‚ฌ์šฉ ๋ฒ„์ „ ํ‘œ๊ธฐ
  9. ์ฐธ๊ณ ๋ฌธํ—Œ
  10. ์š”์•ฝ
  11. ํƒœ๊ทธ ๊ฒ€์ƒ‰
1. 3D Slicer ์†Œ๊ฐœ์™€ ์ค€๋น„๋ฌผ3D Slicer (3D Slicer)๋Š” ๋ฌด๋ฃŒ ์˜คํ”ˆ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋กœ, ์˜๋ฃŒ ์ด๋ฏธ์ง€ ์‹œ๊ฐํ™”·๋ถ„์„์— ์ตœ์ ํ™”๋์–ด์š”. brain PET์—์„œ SUVr ์ถ”์ถœ์€ ๋‡Œ ์˜์—ญ ๋ถ„ํ• (parcellation)๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด reference (์†Œ๋‡Œ) ๋Œ€๋น„ ๊ณ„์‚ฐ์ด์—์š”. ์žฌ๋ฏธ์žˆ๊ฒŒ "Slicer๊ฐ€ ๋‡Œ๋ฅผ ์ผ€์ดํฌ ์ž๋ฅด๋“ฏ ์ฐ์–ด SUVr ์žฌ๋ฃŒ ๋ฝ‘์•„์ค˜!"[^1]์ค€๋น„๋ฌผ:
  • ์ปดํ“จํ„ฐ (Windows/Mac/Linux, RAM 16GB+ ์ถ”์ฒœ)
  • 3D Slicer (๋ฒ„์ „ 5.6.1 ์‚ฌ์šฉ – ์•„๋ž˜ ํ‘œ๊ธฐ)
  • Brain CT/MRI/PET ์ด๋ฏธ์ง€ (DICOM ๋˜๋Š” NRRD ํ˜•์‹, ADNI ์Šคํƒ€์ผ ๋ฐ์ดํ„ฐ์…‹ ์ถ”์ฒœ)
  • Brain atlas (Harvard-Oxford ๋˜๋Š” FreeSurfer)
  • MONAI Extension (Slicer ๋‚ด ์„ค์น˜)
  1. Slicer ์„ค์น˜: https://download.slicer.org/์—์„œ ๋‹ค์šด๋กœ๋“œ.
  2. ๋ฐ์ดํ„ฐ ์ค€๋น„: Kaggle์—์„œ brain PET/CT/MRI ๋ฐ์ดํ„ฐ์…‹ ๋‹ค์šด๋กœ๋“œ.
  3. Extension ์„ค์น˜: Slicer ์—ด๊ธฐ → Extension Manager → "MONAI" ๊ฒ€์ƒ‰·์„ค์น˜.
์ฐธ์กฐ ์‚ฌ์ดํŠธ: ADNI ๋ฐ์ดํ„ฐ์…‹ https://adni.loni.usc.edu/2. Brain ์˜์—ญ Parcellation: Atlas ์ด์šฉ Segment ํŒŒ์ผ ์ €์žฅParcellation (Parcellation, ๋‡Œ ์˜์—ญ ๋ถ„ํ• )์€ atlas (atlas, ๋‡Œ ์ง€๋„ ํ…œํ”Œ๋ฆฟ)๋ฅผ ์ด์šฉํ•ด ๋‡Œ๋ฅผ ์†Œ๋‡Œ ๋“ฑ ์˜์—ญ์œผ๋กœ ๋‚˜๋ˆ ์š”. MONAI (MONAI, ์˜๋ฃŒ AI ํ”„๋ ˆ์ž„์›Œํฌ) Extension์œผ๋กœ ์ž๋™ํ™”.(1) CT ์˜์ƒ์„ ์ด์šฉํ•œ ParcellationCT๋Š” ๊ตฌ์กฐ ๊ฐ•์  – skull stripping ํ›„ atlas ์ ์šฉ.
  1. Slicer ์‹คํ–‰: ํ”„๋กœ๊ทธ๋žจ ์—ด๊ธฐ → "Welcome" ๋ชจ๋“ˆ.
  2. CT ์ด๋ฏธ์ง€ ๋กœ๋“œ: "Data" ๋ชจ๋“ˆ (์ƒ๋‹จ ๋ฉ”๋‰ด View > Data) → "Add Data" ๋ฒ„ํŠผ ํด๋ฆญ → CT DICOM/NRRD ํŒŒ์ผ ์„ ํƒ → "Load" ํด๋ฆญ.
  3. Skull stripping: "Segment Editor" ๋ชจ๋“ˆ (View > Segment Editor) → "Threshold" ํšจ๊ณผ ์„ ํƒ → Threshold ๋ฒ”์œ„ ์กฐ์ • (๋‡Œ ์กฐ์ง 20-100 HU) → "Apply" → "Island" ํšจ๊ณผ๋กœ ๋…ธ์ด์ฆˆ ์ œ๊ฑฐ → "Show 3D" ์ฒดํฌ.
  4. MONAI ์„ค์น˜ ํ™•์ธ: Extension Manager (Help > Find Extensions) → "MONAI" ๊ฒ€์ƒ‰·์„ค์น˜ (์žฌ์‹œ์ž‘ ํ•„์š”).
  5. MONAI Parcellation: "MONAI Label" ๋ชจ๋“ˆ (View > MONAI Label) → "Model"์—์„œ "Brain" atlas ์„ ํƒ (Harvard-Oxford) → "Input Image"์— CT ์„ ํƒ → "Run" ํด๋ฆญ – ์ž๋™ ๋ถ„ํ•  ์™„๋ฃŒ.
  6. Segment ์ €์žฅ: "Segmentations" ๋ชจ๋“ˆ (View > Segmentations) → "Export/Import models and labelmaps" → "Export to files" → .seg.nrrd ํ˜•์‹์œผ๋กœ ์ €์žฅ.
(2) MRI๋ฅผ ์ด์šฉํ•œ ParcellationMRI๋Š” ์—ฐ์กฐ์ง ๊ฐ•์  – FreeSurfer atlas ์ถ”์ฒœ.
  1. Slicer ์‹คํ–‰: ์œ„์™€ ๋™์ผ.
  2. MRI ์ด๋ฏธ์ง€ ๋กœ๋“œ: "Data" ๋ชจ๋“ˆ → "Add Data" → MRI ํŒŒ์ผ ์„ ํƒ → "Load".
  3. Pre-processing: "Crop Volume" ๋ชจ๋“ˆ (View > Crop Volume) → ๋‡Œ ์˜์—ญ ์ž๋ฅด๊ธฐ → "Apply".
  4. MONAI ์„ค์น˜: ์œ„์™€ ๋™์ผ.
  5. MONAI Parcellation: "MONAI Label" → "Model"์—์„œ "Brain MRI" atlas (FreeSurfer) ์„ ํƒ → "Input Image"์— MRI → "Run" – ๋ถ„ํ•  ์™„๋ฃŒ.
  6. Segment ์ €์žฅ: "Segmentations" → "Export to files" → .seg.nrrd ์ €์žฅ.
์ฐธ์กฐ ์‚ฌ์ดํŠธ: MONAI Label ๊ฐ€์ด๋“œ https://monai.io/label.html3. Image Registration: PET์™€ CT/MRI ์ •ํ•ฉRegistration (Registration, ์ด๋ฏธ์ง€ ์ •ํ•ฉ)์€ PET๋ฅผ CT/MRI์— ๋งž์ถฐ ๊ณต๊ฐ„ ์ผ์น˜.(1) Brain CT์™€ PET RegistrationRigid registration ์‚ฌ์šฉ.
  1. ์ด๋ฏธ์ง€ ๋กœ๋“œ: "Data" → CT·PET ์ถ”๊ฐ€.
  2. Registration ๋ชจ๋“ˆ: "General Registration (BRAINS)" (View > General Registration) → "Fixed Image"์— CT, "Moving Image"์— PET.
  3. "Transform Type" Rigid ์„ ํƒ → "Initialize with" Centers of Mass → "Run Registration".
  4. ๊ฒฐ๊ณผ ํ™•์ธ: "Volumes" (View > Volumes) → ์˜ค๋ฒ„๋ ˆ์ด ์ฒดํฌ.
  5. ๋“ฑ๋ก PET ์ €์žฅ: "Volumes" → PET ์„ ํƒ → "Save" → .nrrd ํŒŒ์ผ.
(2) Brain MRI์™€ PET RegistrationAffine registration ์‚ฌ์šฉ.
  1. ์ด๋ฏธ์ง€ ๋กœ๋“œ: ์œ„์™€ ๋™์ผ, MRI·PET.
  2. Registration ๋ชจ๋“ˆ: "General Registration" → "Fixed" MRI, "Moving" PET.
  3. "Transform Type" Affine → "Run".
  4. ๊ฒฐ๊ณผ ํ™•์ธ: ์˜ค๋ฒ„๋ ˆ์ด.
  5. ๋“ฑ๋ก PET ์ €์žฅ: .nrrd ํŒŒ์ผ.
์ฐธ์กฐ ์‚ฌ์ดํŠธ: Slicer Registration https://slicer.readthedocs.io/en/latest/user_guide/registration.html4. Normalization: 3D Slicer ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๋ฐฉ๋ฒ• ์†Œ๊ฐœNormalization (Normalization, ์ •๊ทœํ™”)์€ PET ๊ฐ•๋„ ์ผ๊ด€์„ฑ ์œ„ํ•ด – atlas ์˜์—ญ SUV ์ถ”์ถœ ์ „ ํ•„์ˆ˜. Slicer ๋ฐฉ๋ฒ•: Intensity normalization, Z-score, Histogram matching ๋“ฑ.
  1. Intensity Normalization: "Normalize Scalar Volume" ๋ชจ๋“ˆ (View > Normalize Scalar Volume) → PET ์ž…๋ ฅ → "Output Volume" ์ƒˆ๋กœ ์ƒ์„ฑ → "Apply" – ๊ฐ•๋„ ์Šค์ผ€์ผ๋ง.
  2. Z-Score Normalization: "Resample Scalar Volume" ํ›„ Python ์Šคํฌ๋ฆฝํŠธ (Edit > Python Interactor) → ์ฝ”๋“œ: slicer.util.array('PET')[...] = (array - mean) / std – ์ €์žฅ.
  3. Histogram Matching: "Histogram Matching" ๋ชจ๋“ˆ (Extension Manager > Histogram Matching ์„ค์น˜) → Reference atlas, Input PET → "Apply".
  4. Min-Max Normalization: "Rescale Intensity" ๋ชจ๋“ˆ (View > Rescale Intensity) → ๋ฒ”์œ„ 0-1๋กœ ์„ค์ • → "Apply".
  5. Bias Field Correction: "N4ITK MRI Bias Correction" (Extension ์„ค์น˜) → PET ์ž…๋ ฅ → "Apply" – ๋ถˆ๊ท ์ผ ๋ณด์ •.
๋ชฉ์ : atlas ์˜์—ญ SUV ์ •ํ™• ์ถ”์ถœ – normalization ํ›„ PET ์ €์žฅ.์ฐธ์กฐ ์‚ฌ์ดํŠธ: Slicer Normalization https://slicer.readthedocs.io/en/latest/user_guide/modules/normalizescalarvolume.html5. ์ €์žฅ๋œ Brain PET Image ๋กœ๋”ฉ๊ณผ SUV ๊ฐ’ ์ถ”์ถœ๋“ฑ๋ก·์ •๊ทœํ™” PET ๋ถˆ๋Ÿฌ์™€ segment ์˜ค๋ฒ„๋ ˆ์ด – SUV Computation.
  1. Slicer ์žฌ์‹œ์ž‘: ์ƒˆ ํ”„๋กœ์ ํŠธ.
  2. PET ๋กœ๋“œ: "Data" → ๋“ฑ๋ก PET .nrrd ์ถ”๊ฐ€.
  3. Segment ๋กœ๋“œ: "Segmentations" → .seg.nrrd ๋ถˆ๋Ÿฌ์™€ PET์— Drag & Drop ์˜ค๋ฒ„๋ ˆ์ด.
  4. Extension ์„ค์น˜: Extension Manager → "PETStandardUptakeValueComputation" ๊ฒ€์ƒ‰·์„ค์น˜.
  5. ๋ชจ๋“ˆ ์‹คํ–‰: "PETStandardUptakeValueComputation" → "PET Volume" ์ž…๋ ฅ, "VOI Volume" segment, "DICOM Path" ์›๋ณธ ํด๋”.
  6. "Compute" ํด๋ฆญ – SUV min/max/mean ์ถœ๋ ฅ (CSV ์ €์žฅ ์„ ํƒ).
์ฐธ์กฐ ์‚ฌ์ดํŠธ: PET SUV ๋ชจ๋“ˆ https://slicer.readthedocs.io/en/latest/user_guide/modules/petstandarduptakevaluecomputation.html6. SUVr ๊ณ„์‚ฐ๊ณผ Excel ์ €์žฅSUVr = ์˜์—ญ SUV mean / ์†Œ๋‡Œ SUV mean.
  1. CSV ์—ด๊ธฐ: ๋ชจ๋“ˆ ์ถœ๋ ฅ CSV (์˜์—ญ๋ณ„ SUV mean ํฌํ•จ).
  2. ์†Œ๋‡Œ ์‹๋ณ„: CSV์—์„œ ์†Œ๋‡Œ ๋ ˆ์ด๋ธ” (atlas ๊ธฐ์ค€, ์˜ˆ: label 8) mean ์ถ”์ถœ.
  3. Excel ์ƒ์„ฑ: ์ƒˆ Excel ์‹œํŠธ → ์˜์—ญ ๋ชฉ๋ก ๋ณต์‚ฌ → ๊ณต์‹ ์ž…๋ ฅ (=B2/$B$10, B10=์†Œ๋‡Œ mean).
  4. ์ €์žฅ: "File > Save As" → .xlsx.
  5. ์ž๋™ํ™” (์„ ํƒ): Slicer Python ์ฝ˜์†” → ์Šคํฌ๋ฆฝํŠธ๋กœ CSV ์ฝ๊ณ  SUVr ๊ณ„์‚ฐ → pandas.to_excel.
์ฐธ์กฐ ์‚ฌ์ดํŠธ: Slicer Python https://slicer.readthedocs.io/en/latest/developer_guide/scripting/python.html7. ์ถ”๊ฐ€ ํŒ: ์˜ค๋ฅ˜ ๋Œ€์ฒ˜์™€ Batch Processing (๋ผ๋ฒจ๋ง)[์ถ”๊ฐ€: Batch Processing] ๋ถ€์กฑํ–ˆ๋˜ ๋ถ€๋ถ„ ๋ณด์™„ – ์—ฌ๋Ÿฌ subject ์ฒ˜๋ฆฌ: "SlicerScriptRepository" Extension ์„ค์น˜ → Python ์Šคํฌ๋ฆฝํŠธ๋กœ ๋ฃจํ”„ ์‹คํ–‰ (for sub in subjects: load·process).
  1. ์˜ค๋ฅ˜: "No DICOM header" – ์›๋ณธ DICOM ํด๋” ํ™•์ธ.
  2. Batch: "MONAI Label Server"๋กœ ์—ฌ๋Ÿฌ MRI ์ž๋™ parcellation.
  3. ์†๋„: GPU ์‚ฌ์šฉ (Runtime > Change to GPU).
์ฐธ์กฐ ์‚ฌ์ดํŠธ: Slicer Batch ๊ฐ€์ด๋“œ https://slicer.readthedocs.io/en/latest/user_guide/scripting.html8. ์‚ฌ์šฉ ๋ฒ„์ „ ํ‘œ๊ธฐ์ด ๋งค๋‰ด์–ผ์€ 3D Slicer ๋ฒ„์ „ 5.6.1 (2023.12 ๋ฆด๋ฆฌ์Šค, stable) ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑ๋์–ด์š”. nightly ๋นŒ๋“œ(์ตœ์‹ )์—์„œ ์ผ๋ถ€ ๋ฉ”๋‰ด ๋ณ€๋™ ๊ฐ€๋Šฅ – ๋ฒ„์ „ ํ™•์ธ: Help > About.9. ์ฐธ๊ณ ๋ฌธํ—Œ10. ์š”์•ฝ3D Slicer 5.6.1๋กœ brain PET SUVr ์ถ”์ถœ: CT/MRI parcellation → registration → normalization (intensity ๋“ฑ) → SUV ์ถ”์ถœ → SUVr ๊ณ„์‚ฐ·Excel ์ €์žฅ. ์Šคํ… ๋”ฐ๋ผ ํ•˜๋ฉด ๊ฒฐ๊ณผ ์™ – ์žฌ๋ฏธ์žˆ๊ฒŒ ์‹คํ—˜ํ•˜๋ฉฐ ๋งˆ์Šคํ„ฐํ•˜์„ธ์š”!11. ํƒœ๊ทธ ๊ฒ€์ƒ‰#3DSlicer #BrainPET #SUVr #Parcellation #Registration #Normalization #MONAI #Atlas๋ถ„ํ•  #PET๋ถ„์„ #SlicerํŠœํ† ๋ฆฌ์–ผ
3D Slicer SUVr ์–ด๋ ค์›€? 6์Šคํ…์œผ๋กœ ํ•ด๊ฒฐ! ์ดˆ๋ณด์ž ๋ฌธ์ œ ๊ทน๋ณต, 1์‹œ๊ฐ„ ๋งŒ์— ๊ฒฐ๊ณผ, ์‹ ๋‚˜๋Š” ๋ถ„์„ ๊ธฐ์จ! https://draft.blogger.com/ (blogspot.com: 3D Slicer Brain PET SUVr ๋งค๋‰ด์–ผ – 150์ž ์ด๋‚ด ์„ค๋ช…)[^1]: "Slicer๊ฐ€ ๋‡Œ๋ฅผ ์ผ€์ดํฌ ์ž๋ฅด๋“ฏ ์ฐ์–ด SUVr ์žฌ๋ฃŒ ๋ฝ‘์•„ – ์žฌ๋ฏธ์žˆ๋Š” ์˜๋ฃŒ ํ•ดํ‚น ๊ฐ™์•„!" – ์‚ฌ์šฉ์ž ํฌ๋Ÿผ ํ›„๊ธฐ ์ธ์šฉ.


MONAI ํŒŒ์…€๋ ˆ์ด์…˜ ์ƒ์„ธ ์„ค๋ช… ADNI ๋ฐ์ดํ„ฐ์…‹ ๋‹ค์šด๋กœ๋“œ ๋” ์žฌ๋ฏธ์žˆ๊ฒŒ ์ˆ˜์ •



๋Œ“๊ธ€

์ด ๋ธ”๋กœ๊ทธ์˜ ์ธ๊ธฐ ๊ฒŒ์‹œ๋ฌผ

ํžˆ๋ธŒ๋ฆฌ์ธ, ์ด์Šค๋ผ์—˜์ธ, ์œ ๋Œ€์ธ ์„ฑ๊ฒฝ ์† ์ด๋ฆ„์— ์ˆจ๊ฒจ์ง„ ์†Œ๋ฆ„ ๋‹๋Š” ๋น„๋ฐ€

์ž‘์€ ํ‹ˆ์ด ๋ฌด๋„ˆ๋œจ๋ฆฐ๋‹ค ์™œ ์šฐ๋ฆฌ๋Š” ‘์‚ฌ์†Œํ•œ ๋ถ„์—ด’์„ ๊ทน๋„๋กœ ๊ฒฝ๊ณ„ํ•ด์•ผ ํ•˜๋Š”๊ฐ€

์ž‘์€ ํ‹ˆ์ด ๋ฌด๋„ˆ๋œจ๋ฆฐ๋‹ค ์™œ ์„ฑ๊ฒฝ์€ ‘๋ถ„์—ด์˜ ์‹œ์ž‘’์„ ๊ทธ๋ ‡๊ฒŒ ๊ฒฝ๊ณ ํ•˜๋Š”๊ฐ€