1. 程式人生 > >python下醫學影象處理庫的安裝問題(更新中)

python下醫學影象處理庫的安裝問題(更新中)

1. pip install dipy:DIPY is a python toolbox for analysis of MR diffusion imaging.

2. pip install nibabel:安裝用於讀寫影像資料檔案的程式包

3. pip install --trusted-host pypi.python.org SimpleITK:安裝ITK包

======================================================================

1. PyMVPA

解析:PyMVPA(Python MultiVariate Pattern Analysis)是一個用來簡化大型資料集的模式分類分析的Python模組。

提供一些高階的抽象的常用的處理步驟和一些常用演算法的實現,而且它不僅僅侷限於神經影像學領域。Windows下安

裝方式為pip install pymvpa-0.4.8-cp27-none-win_amd64.whl。

2. Nilearn

解析:Nilearn是一個能夠快速統計學習神經影像資料的Python模組。它利用Python語言中的scikit-learn工具箱和一些進行預測建模,分類,解碼,連通性分析的應用程式來進行多元的統計。

 pip install -U --user nilearn

3. Scikit-learn

解析:Scikit-learn是基於Scipy為機器學習建造的的一個Python模組,它的特色就是多樣化的分類,迴歸和聚類的演算法包括支援向量機,邏輯迴歸,樸素貝葉斯分類器,隨機森林,Gradient Boosting,聚類演算法和DBSCAN等。

Scikit-learn需要NumPy和SciPy等其他包的支援,因此在安裝Scikit-learn之前需要提前安裝一些支援包,

假定已經完整安裝了所有支援包,那麼利用安裝Scikit-learn只需要簡單的一條簡單的pip命令(也可以用conda命令,詳見官方文件):

$ sudo pip install -U scikit-learn

4. Scikit-image

解析:Scikit-image是用於影象處理的Python包,使用原生的NumPy陣列作為影象物件。

pip install skimage

5. PyOpenCV(或CV2)

解析:PyOpenCV(或CV2)是一個用Python實現的OpenCV的API。但是,

PyOpenCV與CV2的區別呢?

6. PyOpenGL

解析:PyOpenGL是一個用Python實現的OpenGL的API。

7. PIL

解析:PIL(Python Imaging Library)是Python中最常用影象處理庫,它的功能非常強大,並且API非常簡單易用。

8. FSL

解析:常用的分析fMRI的軟體有SPM,FSL和AFNI。官網對FSL的介紹:FSL is a comprehensive library of image 

analysis and statistical tools for fMRI, MRI and DTI brain imaging data. The suite consists of various command line 

tools, as well as simple GUIs for its core analysis pipelines. Among others, FSL offers implementations of standard 

GLM analysis, white matter tractography, tissue segmentation, affine and non-linear co-registration, and 

independent component analysis.

FSL提供的工具,如下所示:

(1)Functional MRI: FEAT, MELODIC, FABBER, BASIL, VERBENA

(2)Structural MRI: BET, FAST, FIRST, FLIRT & FNIRT, FSLVBM, SIENA & SIENAX, fsl_anat

(3)Diffusion MRI: FDT, TBSS, EDDY, TOPUP

(4)GLM / Stats: GLM general advice, Randomise, Cluster, FDR, Dual Regression, Mm, FLOBS

(5)Other: FSLView, Fslutils, Atlases, Atlasquery, SUSAN, FUGUE, MCFLIRT, Miscvis, POSSUM, BayCEST

FSL安裝,如下所示:

(1)下載FSL

(2)安裝FSL

  1. sudo su  
  2. mkdir /opt/software  
  3. tar -zxvf fsl-5.0.9-centos6_64.tar.gz  
(3)配置環境變數
  1. vim ~/.bashrc  
  2. FSLDIR=/opt/software/fsl  
  3. . ${FSLDIR}/etc/fslconf/fsl.sh  
  4. PATH=${FSLDIR}/bin:${PATH}  
  5. export FSLDIR PATH  
說明:source ~/.bashrc即可,不需要重啟計算機。

可能遇到的問題,如下所示:

(1)error while loading shared libraries: libmng.so.1: cannot open shared object file: No such file or directory

解析:

sudo dpkg -i libmng1_1.0.10-3_amd64.deb

9. FreeSurfer

解析:FreeSurfer是一個處理大腦3D結構像資料,進行自動皮層和皮下核團分割的軟體。該軟體是一款用於分析腦神

經資料的工具集合,它提供了一系列的演算法來量化人腦的功能、連線以及結構屬性,能對高解析度的磁共振影象進行

三維重建,生成展平或脹平影象,並能得到皮質厚度、面積、灰質容積等解剖引數。

FreeSurfer安裝,如下所示:

(1)配置環境變數

export FREESURFER_HOME=/home/ssw/freesurfer

source $FREESURFER_HOME/SetUpFreeSurfer.sh

(2)yum install tcsh

(3)將license複製到/home/ssw/freesurfer中。

(4)分別輸入tkregister2、tkmedit、tksurfer 和recon-all --help。

(5)recon-all -s bert -autorecon1。

10. Slicer

解析:3D Slicer是一個跨平臺的,免費和開源的資料視覺化和醫學影象計算軟體包。

11. nipy,nibabel

解析:Python醫療影像開發包。pip install nipy-0.4.0-cp27-none-win_amd64.whl;pip install nibabel。

12. VTK

解析:VTK(visualization toolkit)是一個開源的免費軟體系統,主要用於三維計算機圖形學、影象處理和視覺化。

VTK是在面向物件原理的基礎上設計和實現的,它的核心是用C++構建的,包含有大約250,000行程式碼,2000多個

類,還包含有幾個轉換介面,可以通過Python語言使用VTK。

參考文獻:

==================================================================

1. 醫學影像學

醫學影像學Medical Imaging,是研究藉助於某種介質(如X射線、電磁場、超聲波等)與人體相互作用,把人體內部組織器官結構、密度以影像方式表現出來,供診斷醫師根據影像提供的資訊進行判斷,從而對人體健康狀況進行評價的一門科學,包括醫學成像系統和醫學影象處理兩方面相對獨立的研究方向。

儀器主要包括X光成像儀器、CT(普通CT、螺旋CT)、正子掃描(PET)、超聲(分B超、彩色多普勒超聲、心臟彩超、三維彩超)、核磁共振成像(MRI)、心電圖儀器、腦電圖儀器等。

課程設定包括:(1)主幹學科:基礎醫學、臨床醫學、醫學影像學.(2)主要課程:物理學、電子學基礎、計算機原理與介面、影像裝置結構與維修、醫學成像技術、攝影學、人體解剖學、診斷學、內科學、影像診斷學、影像物理、超聲診斷、放射診斷、核素診斷、介入放射學、核醫學、醫學影像解剖學、腫瘤放療治療學、B超診斷學。

2. MNI空間

解析:MNI空間是Montreal Neurological Institute根據一系列正常人腦的磁共振影象而建立的座標系統。Native空間就

是原始空間,影象沒有做任何變換時就是在原始空間。在這個空間中影象的維度、原點、voxel size等都是不同的,

不同被試的影象之間不具有可比性,計算出來的任何特徵都不能進行統計分析,或是用於機器學習。所以必須對所有

被試的影象進行配準標準化到同一個模板上,這樣所有被試的維度、原點、voxel size就一樣了。使用MNI標準模板,

就表示把影象轉換至MNI空間了。一般而言MNI模板是最常用的,研究的比較多。標準空間的影象也是指MNI空間的

影象。Talairach空間和MNI空間的座標有對應的關係,很多軟體都提供這個功能,比如Mricron、REST等。Talairach

空間主要是為了判別當前座標在什麼結構上,Talairach atlas and Talairach coordinates就是Stereotaxic space。

3. 腦成像資料模態 [16]

解析:腦成像資料主要有DTI、FMRI、3D三種模態。其中,DTI,3DT1是三維資料,FMRI是四維資料。

(1)DTI:Diffusion Tensor Imaging,磁共振彌散張量成像。

(2)FMRI:Functional Magnetic Resonance Imaging,功能性磁共振成像。

4. DICOM格式

解析:DICOM(Digital Imaging and Communications in Medicine)即醫學數字成像和通訊,是醫學影象和相關資訊

的國際標準(ISO 12052)。它定義了質量能滿足臨床需要的可用於資料交換的醫學影象格式。DICOM被廣泛應用於

放射醫療,心血管成像以及放射診療診斷裝置(X射線,CT,核磁共振,超聲等),並且在眼科和牙科等其它醫學領

域得到越來越深入廣泛的應用。在數以萬計的在用醫學成像裝置中,DICOM是部署最為廣泛的醫療資訊標準之一。當

前大約有百億級符合DICOM標準的醫學影象用於臨床使用。

5. 原子(原子核,電子),原子核(質子,中子)

解析:氫原子模型:電中性的原子含有一個正價的質子與一個負價的電子,被庫侖定律束縛於原子核。質子和電子都

是構成物質的基本粒子。任何物質都是由原子構成的,而原子可以看作一個模型:原子核和繞原子核運動的電子。原

子核可以進一步分為質子和中子。電子帶負電荷,質量非常小。質子帶正電荷,其質量和中子的質量大致相等。

6. 軌道磁矩和自旋磁矩

解析:在原子中,電子因繞原子核運動而具有軌道磁矩;電子因自旋具有自旋磁矩;原子核、質子、中子以及其它基

本粒子也都具有各自的自旋磁矩。這些對研究原子能級的精細結構,磁場中的塞曼效應以及磁共振等有重要意義,也

表明各種基本粒子具有複雜的結構。

7. 磁化強度

解析:磁化強度(M)是描述磁介質磁化狀態的物理量。在國際單位制中,M的單位為安培/米。定義為媒質微小體元

ΔV內的全部分子磁矩向量和與ΔV之比。即對於順磁與抗磁介質,無外加磁場時,M恆為零;存在外加磁場時,如右所示:

(1)抗磁性物質的磁化強度的大小與外磁場的大小成正比,但是方向與外磁場方向相反。

(2)順磁性物質的磁化強度的大小與外磁場的大小成正比,而且方向與外磁場方向相同。

8. fMRI資料結構

解析:

(1)時間解析度

(2)空間分佈率

(3)結構影象:空間解析度相對很高。

(4)功能影象:時間解析度相對很高。

9. K空間

解析:K空間的資料分佈實際上是影象空間中資料的二維傅立葉變換結果。K空間中的資料點和影象空間中的資料點並

不是一一對應的。一個K空間中的資料點對應了影象空間中所有資料點的一部分資訊。事實上,K空間中的資料正是圖

像空間中的資料作二維傅立葉變換的結果,也就是說,我們的“大腦影象”可以被看作是由一系列頻率、相位、方向各

異的二維正弦波疊加而成的,而K空間的資料正表示了影象的正弦波組成。因此,為了理解如何從K空間中的資料變換

得到影象空間中的資料,必須首先理解傅立葉變換。 

10. MRI與fMRI

解析:

(1)MRI掃的是大腦的結構影象,也叫T1權重影象。它有著很高的空間解析度,可以從中看到非常清晰的解剖結

構,也可以從中區分出各種不同的組織。 

(2)fMRI往往用於研究大腦的具體功能,掃出來的是功能影象,也叫做T2*權重影象。雖然它的空間解析度比較低,

但是時間解析度很高,可以在很短的時間內掃出一疊功能影象。這樣就可以研究實驗操作究竟是如何影響大腦的MRI

訊號的。 

11. BOLD指數

解析:BOLD指數指的是有氧血紅蛋白(Oxygenated Hemoglobin)的含量和脫氧血紅蛋白(Deoxygenated 

Hemoglobin)含量的比值。 

12. BOLD原理

解析:有氧血紅蛋白是抗磁性(Diamagnetic)的,脫氧血紅蛋白是順磁性(Paramagnetic)的。fMRI(T2*權重)

正是利用了血紅蛋白在這兩種狀態下不同的磁性性質,順磁性的脫氧血紅蛋白可以增強MR的原磁場。當它的含量下

降時,BOLD fMRI訊號會跟著上升。脫氧血紅蛋白上升,會導致訊號的下降,因為它會干擾主磁場,導致訊號的衰減

速。

13. fMRI資料預處理 

解析:資料預處理步驟包括:視覺化(Visualization)、去偽影(Artifact removal)、時間配準(Slice

time correction)、頭動校正(Motion correction)、生理噪音校正(Correction for physiological effect)、結構功能

配準(Co-registration)、標準化(Normalization)和時空間濾波(Spatial and temporal filtering)。

14. 現代神經影像學技術

解析:腦電圖(EEG);單光子發射體層成像(SPECT);正電子發射型計算機斷層顯像(PET);功能性磁共振

成像(fMRI);侵入性光學成像(Invasive Optical Imaging);顱內電極記錄(Intracranial Recording);腦皮層電

(ECoG)。其中應用最為廣泛的是fMRI和PET。

15. Analyze格式

解析:Analyze格式儲存的每組資料組包含2個檔案,一個為資料檔案,其副檔名為.img,包含二進位制的影象資料;另

外一個為標頭檔案,副檔名為.hdr,包含影象的元資料。在fMRI的早期,Analyze格式最常用的格式,但現在逐漸被

NIfTI格式所取代。Analyze格式主要不足就是標頭檔案不能真正反映元資料。      

16. NIfTI格式

解析:標準NIfTI影象的副檔名是.nii,包含了標頭檔案及影象資料。由於NIfTI格式和Analyze格式的關係,因此NIfTI格式

也可使用獨立的影象檔案(.img)和標頭檔案(.hdr)。單獨的.nii格式檔案的優勢就是可以用標準的壓縮軟體(如

gzip),而且一些分析軟體包(比如FSL)可以直接讀取和寫入壓縮的.nii檔案(副檔名為.nii.gz)。

17. nilearn模組

解析:

(1)nilearn.connectome: Functional Connectivity

(2)nilearn.datasets: Automatic Dataset Fetching

(3)nilearn.decoding: Decoding

(4)nilearn.decomposition: Multivariate decompositions

(5)nilearn.image: Image processing and resampling utilities

(6)nilearn.input_data: Loading and Processing files easily

(7)nilearn.masking: Data Masking Utilities

(8)nilearn.regions: Operating on regions

(9)nilearn.mass_univariate: Mass-univariate analysis

(10)nilearn.plotting: Plotting brain data

(11)nilearn.signal: Preprocessing Time Series

說明:Nilearn是一個將機器學習、模式識別、多變數分析等技術應用於神經影像資料的應用中,能完成多體素模式分

析(MVPA:Mutli-Voxel Pattern Analysis)、解碼、模型預測、構造功能連線、腦區分割、構造連線體等功能。一般

用於處理功能磁共振影象(FMRI)、靜息狀態(resting-state),或者基於體素的形態學分析(VBM)。對於機器學

習專家來說,Nilearn的價值體現在特定領域特定工程的構造,也就是將神經影像資料表達成為非常適合於統計學習的

特徵矩陣。[17]

18. 可獲取的三種磁共振訊號

(1)自由感應衰減訊號(FID):一般不用FID訊號來重建影象,因為訊號的較大幅度部分被掩蓋在90度射頻內;線

圈發射和接受通路之間來不及切換。

(2)自旋迴波訊號(SE):較為常用的也是最早用以進行磁共振影象重建的訊號,只是需要多施加一次1800RF脈

衝,回波時間較長。

(3)梯度回波訊號(GrE):較新的可大大縮減磁共振掃面時間的用以重建影象的訊號,又稱場回波。

說明:MPRAGE即快速梯度回波成像。

19. SPM和AFNI

解析:

(1)SPM:A powerful set of MATLAB functions for preprocessing, analysis, and display of fMRI and PET data. It 

is currently freely available.

(2)AFNI:A set of programs for processing, analyzing, and displaying functional MRI (fMRI) data. It runs on Unix-

based systems and is currently freely available.

20. fMRI分析的主要步驟

解析:fMRI資料分析之所以複雜是由許多因素造成的:第一,資料容易受到許多偽跡的影響,比如頭動。第二,資料

中存在許多變異來源,包括個體間差異以及個體內不同時間的變異。第三,資料的維度很大,對許多慣於分析小型數

據的科學工作者們來說存在許多挑戰。fMRI資料分析的主要步驟分別對應於解決上述這些問題。如下所示:

(1)質量控制:確保資料不被偽跡破壞。

(2)扭曲校正:校正fMRI影象經常發生的空間扭曲失真。

(3)頭動校正:校正頭動,將掃描的時間序列影象重新對準。

(4)層間時間校正:校正影象不同層之間的時間差異。

(5)空間標準化:將不同個體的資料對準到一個通用空間結構上,使得所有資料可以合併進行組分析。

(6)空間平滑:有意模糊資料以降低噪聲。

(7)時間過濾:在時間維度上過濾資料,以去除低頻噪聲。

(8)統計建模:將統計模型擬合到觀測資料,以估計任務或刺激引起的響應。

(9)統計推斷:估計結果的統計顯著性,對在整個大腦中進行的大量統計檢驗進行校正。

(10)視覺化:對結果進行視覺化,並估計效應量。

21. 神經元與神經系統

解析:神經元,又稱神經原或神經細胞,是構成神經系統結構和功能的基本單位。神經元是具有長突起的細胞,它由

細胞體和細胞突起構成。神經系統是機體內對生理功能活動的調節起主導作用的系統,主要由神經組織組成,分為中

樞神經系統和周圍神經系統兩大部分。中樞神經系統又包括腦和脊髓,周圍神經系統包括腦神經和脊神經。


22. 基於MRI標準座標空間的三個主要座標軸示意圖

解析:在用於神經成像資料的標準空間中,X代表左/右;Y代表前/後;Z代表上/下。在資料矩陣中,一個特定的體素

可以被標記為[Xvox, Yvox, Zvox],通過這三個維度的座標就可以確定體素的位置。如下所示:


23. SPM資料轉換

解析:使用SPM進行資料處理前,必須先將其它檔案格式轉換成spm可以讀取的Analyze檔案格式,包含.img檔和.hdr

標頭檔。相關的轉檔軟體有XMedCon和MRIcro等。   

參考文獻:



相關推薦

python醫學影象處理安裝問題(更新)

1. pip install dipy:DIPY is a python toolbox for analysis of MR diffusion imaging.2. pip install nibabel:安裝用於讀寫影像資料檔案的程式包3. pip install --

Win7 64位Python安裝PIL影象處理

DOS命令窗下進入Python的pip所在目錄下,比如我的D:\python2.7\Scripts,輸入pip install PIL進行影象處理類庫的安裝時遇到錯誤,查資料發現PIL官方網站提供的PIL都是32位的,而我的電腦是64位,於是經過一系列查資料和問

Win7安裝Python影象處理PIL

近期為了研究影象處理相關知識,我需要搭建一個環境,可以編寫影象處理方面的程式。通過比較,最後決定使用python語言。 Python(英國發音:/ˈpaɪθən/美國發音:/ˈpaɪθɑːn/),是一

Win7安裝Python影象處理PIL、pytesser、tesseract進行驗證碼識別

前言 今天看見一個關於Python進行驗證碼識別的文章,其中程式碼很短,但是感覺很有趣,加上最近也在學習一些簡單的Python知識,所以決定實驗一下 準備工作 PIL版本選擇 從網上搜索得知,PIL官方只有32位的安裝檔案,安裝時會提示找不到py

Windows7安裝Python影象處理PIL、pytesser

PIL模組的安裝: PIL版本選擇 從網上搜索得知,PIL官方只有32位的安裝檔案,安裝時會提示找不到python的安裝路徑。64位Win7下無法安裝PIL庫的原因是:PIL官方http://www.pythonware.com/products/pil/提供的PIL二進位

Windows安裝Python影象處理:PIL模組

平常一般都在Linux下用Python,今天女票突然說讓幫忙把一些圖片全部弄成一個解析度的,作為程式設計師,這種重複的工作還是交給計算機吧。 廢話不多說,開啟Cmd看下Windows的python下面是否有PIL(python imaging library)這個庫,很不辛

Python影象處理PIL影象格式轉換(二)

參考:https://blog.csdn.net/icamera0/article/details/50843196?utm_source=blogxgwz0 接上一篇《Python影象處理庫PIL中影象格式轉換(一)》 二、其他不同模式轉換為“RGB”模式 模式“RGB”為24位彩色影

Python影象處理PIL-convert()函式

在數字影象處理中,針對不同的影象格式有其特定的處理演算法。所以,在做影象處理之前,我們需要考慮清楚自己要基於哪種格式的影象進行演算法設計及其實現。本文基於這個需求,使用python中的影象處理庫PIL來實現不同影象格式的轉換。 PIL的九種不同模式:1,L,P,RGB,RGB

Python影象處理PIL的Image模組介紹(四)

(Image模組方法16-25) 16、  Paste 定義1:im.paste(image,box) 含義1:將一張圖貼上到另一張影象上。變數box或者是一個給定左上角的2元組,或者是定義了左,上,右和下畫素座標的4元組,或者為空(與(0,0)一樣)。如果給定4元組,

python執行及第三方安裝過程遇到的問題彙總(持續更新。。。)

一:安裝NLTK庫時報錯 問題描述:pip安裝nltk庫時未遇到問題但import匯入的時候報錯“ModuleNotFoundError: No module named 'nltk'”; 解決辦法:嘗試了一些辦法沒有解決,後來直接去PyCharm裡面找nltk庫進行安裝,此時報錯“Attr

Python影象處理PIL的ImageFilter模組介紹

Python影象處理庫PIL的ImageFilter模組介紹 ImageFilter模組提供了濾波器相關定義;這些濾波器主要用於Image類的filter()方法。 一、ImageFilter模組所支

Python的PIL影象處理標準介紹及相應程式碼例項

PIL:Python Imaging Library,已經是Python平臺事實上的影象處理標準庫了。PIL功能非常強大,但API卻非常簡單易用。操作影象來看看最常見的影象縮放操作,只需三四行程式碼:import Image # 開啟一個jpg影象檔案,注意路徑要改成你自己

DICOM醫學影象處理:開源mDCM與DCMTK的比較分析(一),JPEG無失真壓縮DCM影象

背景介紹: 最近專案需求,需要使用C#進行最新的UI和相關DICOM3.0醫學影象模組的開發。在C++語言下,我使用的是應用最廣泛的DCMTK開源庫,在本專欄的起初階段的大多數博文都是對DCMTK開源庫的介紹和學習。目前由於專案需要,現開始對mDCM開源庫繼續學習分析,因此本專欄接下來的文章會大

Python影象處理PIL的濾波_ImageFilter

            Python影象處理庫PIL的濾波_ImageFilter ImageFilter模組提供了濾波器相關定義;這些濾波器主要用於Image類的filter()方法。 一、ImageFilter模組所支援的濾波器

Python影象處理PIL影象格式轉換(一)

在數字影象處理中,針對不同的影象格式有其特定的處理演算法。所以,在做影象處理之前,我們需要考慮清楚自己要基於哪種格式的影象進行演算法設計及其實現。本文基於這個需求,使用python中的影象處理庫PIL

Python影象處理PIL的ImageEnhance模組介紹

一、ImageEnhance模組的介面所有的增強類都實現了一個通用的介面,包括一個方法:enhancer.enhance(factor) ⇒ image該方法返回一個增強過的影象。變數factor是一個浮點數,控制影象的增強程度。變數factor為1將返回原始影象的拷貝;fa

Python影象處理:Pillow 初級教程

Image.getpixel((x, y)) Image.putpixel((x, y), (r, g, b ,a)) Pillow由PIL而來,所以該匯入該庫使用import PIL Image類 Pillow中最重要的類就是Image,該類存在於同名的模組中。可

Python影象處理PIL的ImageOps模組介紹

(Newin 1.1.3)ImageOps模組包含了一些“ready-made”的影象處理操作。這個模組somewhatexperimental,大多數操作只工作在L和RGB影象上。 一、Image

為php安裝imagick拓展與image magick影象處理

1 CentOS下安裝 1. # yum install gcc php-devel php-pear 2. # yum install ImageMagick ImageMagick-devel 3. # pecl install imagick 直接敲回車

Python影象處理PIL的基本概念介紹

這一節我們介紹一下PIL中的基本概念。 PIL中所涉及的基本概念有如下幾個:通道(bands)、模式(mode)、尺寸(size)、座標系統(coordinate system)、調色盤(palet