HOME ABOUT CONTACT

技術(Python) - 3D Brain Viewer

Rain March 22, 2025
Outline

1. 程式源碼

2. 專案簡介

3. 程式簡介

4. 程式源碼簡介

5. 未來目標

程式源碼 top

Github: 3D Brain Viewer

專案簡介 top

3D Brain Viewer 主要是擷取DICOM影像檔案中的腦組織區域,並將擷取結果以3D體積繪製的方式呈現在GUI上。目前3D Brain Viewer沒有通過任何醫學認證標準,純粹是軟體開發及研究性質,於此主視窗上除了會顯示3D腦組織之外,也會將每一步驟的2D影像呈現在不同的View Widget上,目的是驗證每一個影像處理的步驟是否符合預期。

此主題源自於本人的碩士論文 ” 研製可顯示深部電極之腦部三維重建系統 ”,由於當時所採用的2D影像處理演算法過於繁瑣和老舊,因此開放源碼沒有提供完整的影像處理源碼,儘管如此文章還是會稍微說明當時的影像處理實作的部分,未來影像處理的部分會採用AI的技術去做腦組織影像擷取的處理。

程式簡介 top

程式架構簡圖:



程式介面:

程式源碼簡介 top

Gui package:
1. main_dialog.py: 主程式視窗。
2. file_dialog.py: 檔案瀏覽視窗,供使用者選擇DICOM檔案資料夾位置。
3. image_view_widget.py: 供顯示各步驟2D影像處理的結果,如程式簡介附圖,顯示包含影像原圖、邊緣偵測、影像擷取,滾動滑鼠滾輪可切換斷層影像。
4. opengl_view_widget.py: 供顯示3D腦組織的視圖,如程式簡圖附圖(下),W、A、S、D按鍵可轉動3D腦組織物件。

Image processing package: (目前所有處理都放在一個類別,未來擴展開發會再分類)
1. image_processor.py: 目前是2D影像處理的演算法的總集合。

每個2D影像處理步驟結束之後,會產出img資料夾,並在此目錄下依據各自處理的主題來新增資料夾,將處理結果的影像放在其中,而view widget都會從這些資料夾中讀取影像並顯示。目前影像資料因可能涉及醫療個資,恕暫不提供,使用者可自行搜尋可開放使用的DICOM檔案。

未來目標 top

1. 腦組織擷取可採用AI技術來做擷取,評估是否可省去繁雜的參數設定和影像處理,讓整個執行流程更為精簡。
2. 3D繪製目前是以影像堆疊的方式呈現,影像之間的體積空缺可用OpenGL其他API來彌補。

Last updated:

Related Article List

  1. CAD工作對應徵EDA職缺有哪些幫助
  2. CAD工程師在做什麼
  3. 什麼是GDSII Stream Format
  4. 技術(Python) - PySide實作PyOpenGL繪製的基本架構
  5. 技術 - CUDA 重點整理和範例