雷鋒網(wǎng)(公眾號:雷鋒網(wǎng))按:本文由圖普科技編譯自《Medical Image Analysis with Deep Learning Part4》,是最近發(fā)表的《深度學(xué)習(xí)下的醫(yī)學(xué)圖像分析(三)》的后續(xù)文章葛假。雷鋒網(wǎng)獨家首發(fā)障陶。
對與深度學(xué)習(xí)相關(guān)的醫(yī)療保障工作而言聊训,2017年的“Nvidia GTC大會”絕對是一個絕佳的信息來源抱究。在大會上,有諸如Ian GoodFellow和Jeremy Howard的深度學(xué)習(xí)專家分享了他們對深度學(xué)習(xí)的見解带斑;還有一些頂級醫(yī)學(xué)院(例如西奈山醫(yī)學(xué)院鼓寺、紐約大學(xué)醫(yī)學(xué)院、麻省綜合醫(yī)院等)和Kaggle在大會上介紹他們的建模戰(zhàn)略勋磕。
?在上一篇文章中妈候,我們談?wù)摿松疃葘W(xué)習(xí)相關(guān)的基本內(nèi)容。本文挂滓,我們將關(guān)注于醫(yī)學(xué)圖像及其格式苦银。
本文分為三個部分——醫(yī)學(xué)圖像及其組成、醫(yī)學(xué)圖像格式和醫(yī)學(xué)圖像的格式轉(zhuǎn)換赶站。本文希望通過對深度學(xué)習(xí)的相關(guān)知識的介紹幔虏,最終達(dá)到醫(yī)學(xué)圖像分析的目的。
醫(yī)學(xué)圖像及其組成?
由Michele Larobina和Loredana Murino發(fā)表的論文贝椿,對本文即將展開的討論來說是一個很好的信息參考想括。Michele Larobina和Loredana Murino二人是意大利“生物架構(gòu)和生物成像協(xié)會”(IBB)的成員。IBB是意大利“國家研究委員會”的組成部分团秽,同時也是意大利最大的公共研究機構(gòu)主胧。我們的另一個參考信息資源是一篇題為《Working with the DICOM and NIfTI data standards in R》的論文。
?什么是醫(yī)學(xué)圖像习勤??
醫(yī)學(xué)圖像是反映解剖區(qū)域內(nèi)部結(jié)構(gòu)或內(nèi)部功能的圖像,它是由一組圖像元素——像素(2D)或立體像素(3D)——組成的焙格。醫(yī)學(xué)圖像是由采樣或重建產(chǎn)生的離散性圖像表征图毕,它能將數(shù)值映射到不同的空間位置上。像素的數(shù)量是用來描述某一成像設(shè)備下的醫(yī)學(xué)成像的眷唉,同時也是描述解剖及其功能細(xì)節(jié)的一種表達(dá)方式予颤。像素所表達(dá)的具體數(shù)值是由成像設(shè)備、成像協(xié)議冬阳、影像重建以及后期加工所決定的蛤虐。
?醫(yī)學(xué)圖像的組成
醫(yī)學(xué)圖像組成 醫(yī)學(xué)圖像有四個關(guān)鍵成分——像素深度、光度表示肝陪、元數(shù)據(jù)和像素數(shù)據(jù)驳庭。這些成分與圖像大小和圖像分辨率有關(guān)。
?圖像深度(又稱比特深度或顏色深度)是用來編碼每個像素信息的比特數(shù)。比如說饲常,一個8比特的光柵可以有256個從0到255數(shù)值不等的圖像深度蹲堂。
來源:?desktop.arcgis.com/en/arcmap/10.3/manage-data/raster-and-images/bit-depth-capacity-for-raster-dataset-cells.htm
“光度表示”解釋了像素數(shù)據(jù)如何以正確的圖像格式(單色或彩色圖片)顯示。為了說明像素數(shù)值中是否存在色彩信息贝淤,我們將引入“每像素采樣數(shù)”的概念柒竞。單色圖像只有一個“每像素采樣”,而且圖像中沒有色彩信息播聪。圖像是依靠由黑到白的灰階來顯示的朽基,灰階的數(shù)目很明顯取決于用來儲存樣本的比特數(shù)。在這里离陶,灰階數(shù)與像素深度是一致的稼虎。醫(yī)療放射圖像,比如CT圖像和磁共振(MR)圖像枕磁,是一個灰階的“光度表示”渡蜻。而核醫(yī)學(xué)圖像,比如正電子發(fā)射斷層圖像(PET)和單光子發(fā)射斷層圖像(SPECT)计济,通常都是以彩色映射或調(diào)色板來顯示的茸苇。
?“元數(shù)據(jù)”是用于描述圖形象的信息。它可能看起來會比較奇怪沦寂,但是在任何一個文件格式中学密,除了像素數(shù)據(jù)之外,圖像還有一些其他的相關(guān)信息传藏。這樣的圖像信息被稱為“元數(shù)據(jù)”腻暮,它通常以“數(shù)據(jù)頭”的格式被儲存在文件的開頭,涵蓋了圖像矩陣維度毯侦、空間分辨率哭靖、像素深度和光度表示等信息。
?“像素數(shù)據(jù)”是儲存像素數(shù)值的位置侈离。根據(jù)數(shù)據(jù)類型的不同试幽,像素數(shù)據(jù)使用數(shù)值顯示所需的最小字節(jié)數(shù),以整點或浮點數(shù)的格式儲存卦碾。 ?圖像大小=數(shù)據(jù)頭大衅涛搿(包括元數(shù)據(jù))+行數(shù) ?欄數(shù)*像素深度*(圖像幀數(shù))
?醫(yī)學(xué)圖像格式??
放射圖像有6種主要的格式,分別為DICOM(醫(yī)學(xué)數(shù)字成像和通訊)洲胖、NIFTI(神經(jīng)影像信息技術(shù))济榨、PAR/REC(Philips磁共振掃描格式)、ANALYZE(Mayo醫(yī)學(xué)成像)绿映、NRRD(近原始柵格數(shù)據(jù))和MNIC擒滑。
2017年5月的醫(yī)學(xué)圖像格式
在上圖的五個格式中,DICOM和NIFTI是接受度最高的。
?DICOM格式的基本內(nèi)容
?DICOM表示“醫(yī)學(xué)數(shù)字成像和通訊”橘忱。DICOM是由“美國國家電氣制造商協(xié)會”(NEMA)發(fā)布的標(biāo)準(zhǔn)赴魁,這一標(biāo)準(zhǔn)規(guī)范了醫(yī)學(xué)成像的管理、儲存钝诚、打印和信息傳輸颖御,這些都是掃描儀或醫(yī)院“醫(yī)療影像儲傳系統(tǒng)”(PACS)中的文件格式。 DICOM包括了一個文件格式和一個網(wǎng)絡(luò)通訊協(xié)議凝颇,其中的網(wǎng)絡(luò)通訊協(xié)議是醫(yī)療實體間使用TCP/IP進(jìn)行溝通的一個規(guī)范和準(zhǔn)則潘拱。 一個DICOM文件由一個數(shù)據(jù)頭和圖像數(shù)據(jù)組成的。數(shù)據(jù)頭的大小取決于數(shù)據(jù)信息的多少拧略。數(shù)據(jù)頭中的內(nèi)容包括病人編號芦岂、病人姓名等等。同時垫蛆,它還決定了圖像幀數(shù)以及分辨率禽最。這是圖片查看器用于顯示圖像的。即使是一個單一的圖像獲取袱饭,都會有很多DICOM文件川无。
來源:https://www.leadtools.com/sdk/medical/dicom-spec1?
Pydicom是用于讀取DICOM文件的Python庫,詳情請參閱文本第一部分的代碼示例虑乖。 “oro.dicom”是用于讀取DICOM數(shù)據(jù)的 R-package懦趋。?
使用oro.dicom工具包來讀取未壓縮的DICOM文件
NIFTI格式的基本內(nèi)容
?“神經(jīng)成像信息技術(shù)創(chuàng)新”將NIFTI格式視為ANALYZE7.5格式的替代品。NIFTI最初是用于神經(jīng)成像的疹味,但它也適用于一些其他的領(lǐng)域仅叫。NIFTI中一個主要的特點在于它包含了兩個仿射坐標(biāo)定義,這兩個仿射坐標(biāo)定義能夠?qū)⒚總€立體元素指標(biāo)(i,j,k)和空間位置(x,y,z)聯(lián)系起來糙捺。 Nibabel是用于讀取nifti文件的一個朋友Python庫诫咱,“oro.nifti”是用于讀取nifti數(shù)據(jù)的一個R工具包。
?DICOM和NIFTI間的區(qū)別?
DICOM和NIFTI之間最主要的區(qū)別在于NIFTI中的原始圖像數(shù)據(jù)是以3D圖像的格式儲存的洪灯,而DICOM是以3D圖像片段的格式儲存的遂跟。這就是為什么在一些機器學(xué)習(xí)應(yīng)用程序中NIFTI比DICOM更受歡迎,因為它是3D圖像模型婴渡。處理一個單個的NIFTI文件,與處理上百個DICOM文件相比要輕松得多凯亮。NIFTI的每一張3D圖像中只需儲存兩個文件边臼,而在DICOM中則要儲存更多文件。??
NRRD格式的基本內(nèi)容?
靈活的NRRD格式中包含了一個單個的數(shù)據(jù)頭文件和既能分開又能合并的圖像文件假消。一個NRRD數(shù)據(jù)頭能夠為科學(xué)可視化和醫(yī)學(xué)圖像處理準(zhǔn)確地表示N維度的柵格信息柠并。“國家醫(yī)學(xué)圖像計算聯(lián)盟”(NA-MIC)開發(fā)了一種用NRRD格式來表示“擴散加權(quán)圖像”(DWI)和“擴散張量圖像”(DTI)的方法。NRRD的“擴散加權(quán)圖像”和“擴散張量圖像”數(shù)據(jù)可以被解讀為一個“3D切片機”臼予,能夠直觀地確定張量圖像的方向與神經(jīng)解剖的預(yù)期是一致的鸣戴。 一個NRRD文件的大致格式(帶有數(shù)據(jù)頭)如下圖所示:
來源http://teem.sourceforge.net/nrrd/format.html#general.1?
MINC格式的基本內(nèi)容
?MINC代表的是“醫(yī)學(xué)成像NetCDF工具包”。MINC文件格式的開發(fā)始于1992年“蒙特利神經(jīng)研究所”(MNI)粘拾。目前窄锅,McGill的“腦成像中心”(BCI)正積極地對MINC進(jìn)行進(jìn)一步開發(fā)。MINC格式的第一個版本(Minc1)是建立在標(biāo)準(zhǔn)的“網(wǎng)絡(luò)常見格式”(NetCDF)之上的缰雇;而第二個版本的MINC格式入偷,即Minc2,則是以“分級數(shù)據(jù)格式第五版”(HDF5)為基礎(chǔ)建立的械哟。HDF5支持無限制的多種數(shù)據(jù)類型疏之,它適用于靈活高效的I/O和高容量、復(fù)雜的數(shù)據(jù)暇咆。正是有了這些新的特性和功能锋爪,Minc2才能處理大量的、復(fù)雜的數(shù)據(jù)庫爸业。 以下是一些研究性論文針對這些格式數(shù)據(jù)頭所作的比較:
來源:出版于2014年的《醫(yī)學(xué)圖像格式》
?格式轉(zhuǎn)換
?從DICOM格式轉(zhuǎn)換為NIFTI格式
?dicom2nii是將DICOM格式轉(zhuǎn)換為NIFTI格式的常見工具其骄。一個讀取和編寫NIFTI文件的Python庫是nibabel。如果想要將DICOM格式轉(zhuǎn)換為NIFTI格式沃呢,有很多自動轉(zhuǎn)換的工具年栓,比如dcm2nii。Python2的“dcmstack”能讓一系列DICOM圖像堆疊成多維度的數(shù)組薄霜,這些數(shù)組能夠被編寫為帶有“數(shù)據(jù)頭擴展”(DcmMeta擴展)的NIFTI文件某抓,其中的“數(shù)據(jù)頭擴展”其實就是一份DICOM文件元數(shù)據(jù)的摘要。?
由DICOM格式轉(zhuǎn)換為MINC格式
?BIC的MINC團(tuán)隊開發(fā)了一種將DICOM轉(zhuǎn)換為MINC圖像的工具惰瓜,這個程序是用C語言編寫的否副,點擊此鏈接查看github報告。 由NIFTI或ANALYZE轉(zhuǎn)換為MINC格式 在BIC的MINC團(tuán)隊開發(fā)了另外一種能夠?qū)IFTI或ANALYZE圖像轉(zhuǎn)換為MINC圖像的工具崎坊,這個程序叫做nii2mnc备禀。點擊此鏈接查看包括nii2mnc在內(nèi)的一系列轉(zhuǎn)換工具。?
總結(jié)?
我們在本文介紹了好幾種可以用于儲存成像和深度學(xué)習(xí)的格式奈揍。我們的目標(biāo)就是利用最佳的格式曲尸,讓我們的卷積神經(jīng)網(wǎng)絡(luò)作出準(zhǔn)確的預(yù)測。
?在下一篇文章中男翰,我們將討論如何利用其中一種格式從CT掃描圖像中進(jìn)行肺部切割另患。
雷鋒網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載蛾绎。詳情見轉(zhuǎn)載須知昆箕。