陳富強(qiáng),周學(xué)成,2,李一海,楊自尚,王高峰,閆露露
1.華南農(nóng)業(yè)大學(xué) 工程學(xué)院,廣州 510642
2.南方農(nóng)業(yè)機(jī)械關(guān)鍵技術(shù)與裝備教育部重點(diǎn)實(shí)驗(yàn)室,廣州 510642
根系是植物的重要組成器官,其形態(tài)構(gòu)型決定了植物吸收水分和養(yǎng)分的能力。目前對(duì)植物根系測量與分析技術(shù)的研究大都集中在基于二維圖像的根系平面構(gòu)型參數(shù)的測量與分析,專門針對(duì)原位根系的三維構(gòu)型參數(shù)檢測與分析的研究則少見報(bào)道。其主要原因在于土壤等介質(zhì)的阻隔限制了對(duì)根系構(gòu)型的直接觀測,以及根系本身的復(fù)雜性和重疊性也加大了根系精確測量的難度[1-2]?,F(xiàn)有的相關(guān)研究工作主要集中在原位成像技術(shù)、圖像處理和三維可視化等方面,而對(duì)基于原位空間序列圖像數(shù)據(jù),尤其是原位斷層序列圖像數(shù)據(jù)的利用大都停留在三維可視化階段,對(duì)三維根系的定量描述和分析方法的研究則明顯不足。RootReader3D軟件是美國康奈爾大學(xué)在2011年開發(fā)的,該軟件可以獲取根系的三維重建模型,并對(duì)根長、最大水平寬度、最小水平寬度、最大垂直深度等27個(gè)測量參數(shù)進(jìn)行分析[3]。但其測試的根系樣本是生長在培養(yǎng)液中的水稻根系幼苗,這與實(shí)際土壤生長環(huán)境有極大的差別,所以獲取的參數(shù)不具備絕對(duì)的參考意義。諾丁漢大學(xué)開發(fā)的RooTrak軟件,它通過對(duì)虛擬根切片中每一個(gè)根截面進(jìn)行追蹤來從土壤中獲取到完整的植物根系模型。但該軟件只是實(shí)現(xiàn)了三維根系的可視化,并不能測量根系參數(shù)[4]。德國的Dagmar van Dusschoten等人開發(fā)了NMRooting軟件,該軟件以MRI獲取的圖像作為數(shù)據(jù)源進(jìn)行三維可視化,并計(jì)算了一些根系整體參數(shù)。但該軟件對(duì)于細(xì)小根系獲取不到理想結(jié)果。且測量精度也有待提高[5]。為了實(shí)現(xiàn)原位根系三維構(gòu)型參數(shù)的無損檢測,筆者所在的課題組在國家自然科學(xué)基金和“863”計(jì)劃等科研項(xiàng)目的資助下,相繼開展了基于XCT技術(shù)的植物根系原位成像方法、CT序列圖像的處理與分析方法、原位根系的三維可視化重建方法、原位根系三維矢量模型構(gòu)建等一系列的相關(guān)研究工作。在此基礎(chǔ)上,設(shè)計(jì)開發(fā)了以CT序列圖像為數(shù)據(jù)基礎(chǔ)的植物根系三維構(gòu)型測量系統(tǒng),以期為相關(guān)研究人員提供一個(gè)可視化的三維根系構(gòu)型分析平臺(tái)。
本系統(tǒng)是借助Qt、ITK、VTK三大開源工具包開發(fā)完成的。主要由序列圖像分割、三維重建、矢量模型構(gòu)建以及根構(gòu)型參數(shù)測量四大功能模塊構(gòu)成。原型系統(tǒng)的總體設(shè)計(jì)框架如圖1。
圖1 總體框架設(shè)計(jì)
系統(tǒng)所使用到的開源庫都具有不同的作用。其中Qt是一款跨平臺(tái)C++圖形用戶界面開發(fā)框架,其完全面向?qū)ο螅苋菀讛U(kuò)展,并且允許真正的組件編程[6]。能夠?yàn)橄到y(tǒng)提供良好的圖像交互界面。VTK是一個(gè)開源、跨平臺(tái)的圖形圖像應(yīng)用函數(shù)庫[7]。利用VTK可以完成三維圖像可視化功能。ITK提供了一個(gè)圖像處理、分割與配準(zhǔn)的算法平臺(tái)[8]??梢詾橄到y(tǒng)圖像處理、分割等算法提供支持。整個(gè)軟件框架是基于Qt完成的。其示意圖如圖2。
圖2 VTK、ITK、Qt結(jié)合示意圖
流水線是一種ITK和VTK特有機(jī)制,其是以數(shù)據(jù)處理為中心,將算法和數(shù)據(jù)對(duì)象分開考慮。這種機(jī)制有助于將大量不同的算法結(jié)合到一起。這種機(jī)制的表示如圖3。
圖3 流水線示意圖
Source、Filter和Target分別表示3種不同的抽象算法對(duì)象,它們的意義分別是:
Source為流水線的起點(diǎn),沒有輸入,產(chǎn)生至少有一個(gè)輸出。主要作為流水線的數(shù)據(jù)源。
Filter為負(fù)責(zé)對(duì)數(shù)據(jù)對(duì)象進(jìn)行處理,可以有一個(gè)或多個(gè)輸入,產(chǎn)生一個(gè)或多個(gè)輸出。其具有GetOutput()輸出接口和SetInputData()輸入接口。
Target為流水線的終點(diǎn),只有輸入沒有輸出。具有SetInputData()接口。
信號(hào)槽機(jī)制是Qt的核心機(jī)制,該機(jī)制可以實(shí)現(xiàn)對(duì)象與對(duì)象之間的通信,降低模塊之間的耦合性。該機(jī)制的使用需要自定義類繼承于QObject,并且在類內(nèi)開始位置引用了Q_OBJECT宏。通過簡單例子來說明信號(hào)槽機(jī)制?,F(xiàn)在有一個(gè)按鈕和對(duì)話框,其類圖如圖4。
圖4 QPushButton和QDialog類圖
其中按鈕類(QPushButton)有信號(hào)clicked();進(jìn)度對(duì)話框類(QProgressDialog)有槽函數(shù)exec()。當(dāng)按鈕被點(diǎn)擊會(huì)發(fā)出一個(gè)clicked()信號(hào)給進(jìn)度對(duì)話框,激活進(jìn)度對(duì)話框的exec()函數(shù),彈出一個(gè)模態(tài)對(duì)話框。整個(gè)過程可以由一個(gè)協(xié)作圖表示,如圖5。
圖5 對(duì)話框彈出協(xié)作圖
軟件在開發(fā)過程中同時(shí)融合了這兩種機(jī)制,以保證既可以簡化數(shù)據(jù)處理過程,又可以降低模塊之間的耦合度。其主要思路為:用Qt封裝ITK和VTK類以提供信號(hào)與槽的功能。同時(shí)實(shí)現(xiàn)了VTK、ITK中作為算法對(duì)象的接口setInputData()和getOutPut()。使得這些Qt類也可以作為流水線算法的一部分加入。下面通過一個(gè)讀取圖片顯示的實(shí)例來描述這種機(jī)制:現(xiàn)有ImageReader的Qt類和ImageViewer的Qt類,其類圖如圖6。
圖6 ImageReader和ImageViewer類圖
其中圖像讀取類(ImageReader)封裝了一個(gè)VTK讀取類(vtkPNGReader),并定義一個(gè)信號(hào)iGotImageData;圖像顯示類(ImageViewer)封裝了一個(gè)VTK顯示類(vtkImageViewer2),并定義了一個(gè)槽函數(shù)iLikeImage-Data();當(dāng)圖像讀取類讀取到了一幅圖像會(huì)發(fā)出一個(gè)iGotImageData信號(hào)給圖像顯示類,并激活一個(gè)槽函數(shù)iLikeImageData()實(shí)現(xiàn)圖片的顯示。整個(gè)過程的協(xié)作圖如圖7。
圖7 圖像讀取與顯示的協(xié)作圖
這個(gè)過程中將圖像讀取和顯示的算法抽象成為兩個(gè)算法對(duì)象,簡化了處理過程;又可以使用Qt信號(hào)槽機(jī)制在算法對(duì)象之間傳遞數(shù)據(jù),降低耦合性。
本系統(tǒng)在開發(fā)過程中涉及到多個(gè)算法。為了提高算法效率,在實(shí)現(xiàn)過程中引用了一些設(shè)計(jì)模式的規(guī)則進(jìn)行設(shè)計(jì)。這里簡要介紹幾個(gè)最為關(guān)鍵的算法。
三維重建是實(shí)現(xiàn)根系可視化的重要環(huán)節(jié),也是后續(xù)參數(shù)測量的重要依據(jù)。重建過程分為體重建和表面重建兩類重建方式,每類方式又有基于不同原理的重建方法。因此該算法具有較高的復(fù)雜度。為了提高算法的效率與靈活度,在實(shí)現(xiàn)過程中采取了工廠模式[9]來設(shè)計(jì)算法。重建算法的結(jié)構(gòu)圖如圖8。
結(jié)構(gòu)圖的詳細(xì)說明如下:
BaseReconstruction:這是三維重建的基類,包含了兩個(gè)純虛成員函數(shù):setPipLine()、getProp()。其中setPipLine()函數(shù)表示的是重建流水線算法。根據(jù)重建方法的不同,其內(nèi)部算法的實(shí)現(xiàn)也會(huì)有所不同。該函數(shù)的具體實(shí)現(xiàn)由其子類中的同名函數(shù)完成。getProp()函數(shù)可以獲取重建結(jié)果對(duì)象。
BaseSurfaceReconstruction:表面重建基類,繼承于BaseReconstruction。該類包含一個(gè)成員變量:actor,該變量用來表示表面重建得到的結(jié)果;兩個(gè)成員虛函數(shù):setPipLine(),該函數(shù)封裝了部分表面重建的流水線算法。GetProp(),該函數(shù)返回表面重建的結(jié)果。
BaseVolumeReconstruction:體重建基類,繼承于BaseReconstruction。該類包含一個(gè)成員變量:volume,該變量用來表示體重建的結(jié)果;兩個(gè)成員虛函數(shù):setPipeLine(),該函數(shù)封裝了部分體重建的流水線算法。GetProp,該函數(shù)返回體重建的結(jié)果。
ContourFilter:基于平面輪廓的表面重建方法。基本原理是:首先從每個(gè)切片或斷層輪廓中提取感興趣輪廓曲線,再將這一組輪廓曲線重建為三維物體形態(tài)[6]。setPipLine()中封裝了該重建方法的流水線算法。
MarchingCube:基于移動(dòng)立方體的表面重建方法。基本原理是:逐個(gè)處理數(shù)據(jù)場中的立方體(體素),分類出與等值面相交的立方體,再采用插值計(jì)算出等值面與立方體的交點(diǎn)。將獲取的交點(diǎn)以一定方式連接成等值面,作為該立方體的一個(gè)逼近表示[10-12]。setPipLine()中封裝了該重建方法的流水線算法。
圖8 重建算法結(jié)構(gòu)圖
VolumeTexture:基于紋理映射的體重建方法。基本原理:將每個(gè)坐標(biāo)軸方向的切片圖像作為二維紋理保存至圖形硬件緩存中,在光線投射時(shí),選擇與當(dāng)前視線方向垂直的一組紋理圖像,在硬件中進(jìn)行插值和合成運(yùn)算以實(shí)現(xiàn)體繪制。getPipLine()中封裝了該重建方法的流水線算法。
FixedPointVolumeRayCast:基于光線投射的體重建方法。基本原理:向圖像平面的每個(gè)像素發(fā)射一條沿視線方向的射線,在射線穿過體數(shù)據(jù)集時(shí)按照一定的步長采樣顏色值和不透明度。然后累計(jì)每條射線上的顏色值和不透明度直至光線被完全吸收。getPipLine()中封裝了該重建方法的流水線算法。
Reconstruct3D:工廠類。包含一個(gè)成員函數(shù):createReconstructMethod()。該函數(shù)可以根據(jù)不同的需求創(chuàng)建不同的重建算法對(duì)象。
植物根系的矢量模型主要包括提取根系骨架和根節(jié)點(diǎn)屬性值兩方面內(nèi)容。其是植物根構(gòu)型參數(shù)測量最為重要的基礎(chǔ)模型,好的矢量模型可以提高構(gòu)型參數(shù)的測量精度和運(yùn)算效率[13-16]。矢量模型構(gòu)建算法實(shí)現(xiàn)流程圖如圖9所示。
圖9 矢量模型算法流程圖
流程圖的詳細(xì)說明如下。
(1)構(gòu)建初始根節(jié)點(diǎn):根節(jié)點(diǎn)構(gòu)建需要獲取根節(jié)點(diǎn)的中心坐標(biāo)以及對(duì)應(yīng)的根截面面積。在三維可視化模型的基礎(chǔ)上,使用重切器對(duì)模型進(jìn)行重切來獲取其根節(jié)點(diǎn)的三維坐標(biāo)和面積。由于重切器角度以及截面輪廓不規(guī)則導(dǎo)致獲取的根節(jié)點(diǎn)位置和面積存在一定的誤差,所以通過該步獲取的根節(jié)點(diǎn)稱之為初始根節(jié)點(diǎn),有待進(jìn)一步減小誤差。
(2)構(gòu)建初始根分支:前一步獲取的根節(jié)點(diǎn)集合只是一個(gè)空間散點(diǎn)集合,為了提取到根系矢量模型,需要對(duì)這些空間散點(diǎn)進(jìn)行分組來構(gòu)建根分支。具體分組策略是采用空間連通性和最短路徑作為分組依據(jù),并將面積變化率、偏轉(zhuǎn)角閾值作為約束條件來提高空間散點(diǎn)分組的正確率。
(3)重構(gòu)根節(jié)點(diǎn)和根分枝:為了糾正初始根節(jié)點(diǎn)的位置偏差,以根分支為處理單元進(jìn)行三次B樣條擬合。擬合得到一條光滑的根分支曲線,來替代那些有偏差的根節(jié)點(diǎn)。通過該重構(gòu)步驟,基本消除根節(jié)點(diǎn)的位置偏差。為獲取到精準(zhǔn)的根系矢量模型做準(zhǔn)備。
(4)獲取根節(jié)點(diǎn)屬性:在獲取到根節(jié)點(diǎn)的精確坐標(biāo)值后,需要進(jìn)一步補(bǔ)充根節(jié)點(diǎn)的面積、周長、圓率等基本屬性值。獲取屬性數(shù)據(jù)的方法是使用重切器沿著根分支曲線的切向量進(jìn)行二次重切。對(duì)得到的重切截面圖像進(jìn)行分析提取有用參數(shù)。
(5)判定根分支關(guān)系:該步驟是建立根分支的拓?fù)浣Y(jié)構(gòu)。根據(jù)根構(gòu)型的特點(diǎn),其結(jié)構(gòu)近似于一種樹形結(jié)構(gòu),每個(gè)根分支節(jié)點(diǎn)都有一個(gè)父節(jié)點(diǎn)和n個(gè)子節(jié)點(diǎn)。根據(jù)其結(jié)構(gòu)特點(diǎn)采用了樹形數(shù)據(jù)結(jié)構(gòu)來保存根分支。并設(shè)計(jì)一種遍歷算法,從主根出發(fā)依次向下遍歷,以連通性和最短路徑為約束條件進(jìn)行根分支關(guān)系的判定。
(6)補(bǔ)充根節(jié)點(diǎn):在一些根分支位置根節(jié)點(diǎn)較為稀疏,為了提高根構(gòu)型參數(shù)測量精度,需要通過插值的方法對(duì)根分支部分進(jìn)行節(jié)點(diǎn)補(bǔ)充。
參數(shù)計(jì)算是系統(tǒng)的核心功能,本系統(tǒng)實(shí)現(xiàn)了根數(shù)、根長、根表面積、根體積、根夾角5種參數(shù)的測量。下面對(duì)一些核心參數(shù)計(jì)算原理進(jìn)行介紹。
3.3.1 根體積和表面積
同一根分枝相鄰根節(jié)點(diǎn)之間的根段可近似為圓臺(tái)(圖10),因此可以分別使用圓臺(tái)體積和側(cè)面積公式計(jì)算相鄰根節(jié)點(diǎn)之間的根段的體積和側(cè)面積[17]。
圖10 根段示意圖
相鄰根節(jié)點(diǎn)間根段體積公式如下:
相鄰根節(jié)點(diǎn)間根段側(cè)面積公式如下:
根分枝體積和表面積分別為相鄰根節(jié)點(diǎn)間根段的體積之和以及側(cè)面積之和,分別如式(4)和式(5)。
3.3.2 根夾角
定義1(根夾角)設(shè)子根分枝根心線在起始端點(diǎn)處的切向量為V1,父根分枝根心線在相應(yīng)分叉根節(jié)點(diǎn)處的切向量為V0,則V0與V1的夾角θ即為根夾角(圖11)。需要注意的是V0和V1都必須和根分枝的生長方向一致[18]。
圖11 根夾角示意圖
V0與V1的數(shù)量積如式(6)所示。
由式(6)可得根夾角ψ計(jì)算公式為:
本系統(tǒng)是在Windows 10(64 bit)系統(tǒng)上借助Qt應(yīng)用程序開發(fā)框架進(jìn)行設(shè)計(jì)開發(fā)的。其設(shè)計(jì)主要目的是實(shí)現(xiàn)根系構(gòu)型參數(shù)的無損和自動(dòng)化檢測,輔助根系研究人員的研究。軟件系統(tǒng)主界面如圖12所示。其中標(biāo)號(hào)1為菜單和工具欄,用于提供快捷操作;標(biāo)號(hào)2為文件瀏覽器;標(biāo)號(hào)3為圖像瀏覽器,用于顯示序列圖像;標(biāo)號(hào)4為三維圖形瀏覽器,用于顯示重建模型和矢量模型;標(biāo)號(hào)5為屬性欄,用于顯示參數(shù)測量結(jié)果;標(biāo)號(hào)6為狀態(tài)欄,用于顯示圖形圖像的拾取坐標(biāo)。
圖12 系統(tǒng)主界面
構(gòu)型參數(shù)測量的具體操作流程如下:
步驟1對(duì)原始序列圖像進(jìn)行分割獲取分割數(shù)據(jù)源。
步驟2以分割后的序列圖像作為數(shù)據(jù)源進(jìn)行三維重建以獲取根系的可視化模型。
步驟3使用重切技術(shù)對(duì)根系三維模型重切獲取其根系的根節(jié)點(diǎn)以及相對(duì)應(yīng)的屬性值;以此為基礎(chǔ)構(gòu)建根系矢量模型。
步驟4利用矢量模型并根據(jù)構(gòu)型參數(shù)的計(jì)算方法來計(jì)算根系的各種參數(shù)。
矢量模型的保存格式為.rvm格式(軟件自有格式)。這樣對(duì)于已有矢量模型的根系樣本可以直接通過步驟4獲取根構(gòu)型參數(shù)。
系統(tǒng)測試環(huán)境為聯(lián)想p50移動(dòng)圖形工作站,其操作系統(tǒng)為Win10(64 bit)。測試目的是為了驗(yàn)證系統(tǒng)中三維模型和矢量模型構(gòu)建算法實(shí)際效果。并將獲取的構(gòu)型參數(shù)測量結(jié)果與手工測量結(jié)果做對(duì)比來驗(yàn)證參數(shù)測量的精確度。
為獲取對(duì)比數(shù)據(jù),本文采用了一系列傳統(tǒng)方法來獲取根構(gòu)型參數(shù)。如:采用排沙法獲取根系體積;采用染色液蘸根法獲取根系表面積。采用直接截獲法獲取根系總長度。
本文采用了兩組測試樣本,分別是生長在有機(jī)基質(zhì)中的榕樹和梔子幼苗根系圖像。圖像由工業(yè)CT設(shè)備獲取。主要掃描參數(shù)為:管電壓80 kV,管電流1 mA。經(jīng)過掃描,獲取到分辨率為512×512的16位斷層序列圖像。對(duì)原位CT序列圖像經(jīng)過適當(dāng)濾波、插值和三維封裝預(yù)處理后用作圖像分割數(shù)據(jù)源。
對(duì)封裝后的樣本數(shù)據(jù)使用三維區(qū)域生長法進(jìn)行分割。其中種子點(diǎn)通過系統(tǒng)的坐標(biāo)拾取器來確定。樣本分割結(jié)果被保存為分辨率為512×512的8位png序列圖像。
對(duì)分割后的序列圖像進(jìn)行三維重建。重建采用移動(dòng)立方體法。設(shè)置其等值面參數(shù)為128。重建完成后對(duì)模型進(jìn)行孔洞修補(bǔ),設(shè)置其孔洞填充最小尺寸參數(shù)為10。最后生成的三維重建模型如圖13。
圖13 榕樹苗三維重建結(jié)果
在三維模型的基礎(chǔ)上提取其矢量模型,首先對(duì)三維體數(shù)據(jù)進(jìn)行重切獲取根系骨架節(jié)點(diǎn)。重切間隔參數(shù)設(shè)置為0.5 mm。通過連通性分組獲取根系拓?fù)浣Y(jié)構(gòu)。連通性限制條件相鄰節(jié)點(diǎn)最大間距設(shè)置為7 mm。最后生成的矢量模型如圖14所示。其中紅色線條表示根系骨架,綠色為矢量模型,藍(lán)色分枝表示當(dāng)前被選中分枝。
圖14 榕樹苗矢量模型
以樣本矢量模型為數(shù)據(jù)源,根據(jù)根系參數(shù)的計(jì)算公式獲取整根和各根分枝構(gòu)型參數(shù)。參數(shù)結(jié)果在屬性欄中顯示。效果如圖15。
圖15 榕樹苗參數(shù)測量結(jié)果
原型系統(tǒng)所測量的三維構(gòu)型參數(shù)值與對(duì)應(yīng)手工測量值如表1所示。由表可知,根分枝數(shù)、根總長、根總表面積以及根總體積的測量誤差分別為4.55%、2.10%、6.26%、1.02%。
表1 榕樹苗總體參數(shù)對(duì)比結(jié)果
本次實(shí)驗(yàn)的另外一組樣本是梔子幼苗,對(duì)數(shù)據(jù)進(jìn)行三維封裝、分割、重建并進(jìn)行矢量模型提取,獲得的結(jié)果如圖16。
圖16 梔子苗重建模型和矢量模型
原型系統(tǒng)所測量的根構(gòu)型參數(shù)如圖17。
圖17 梔子苗參數(shù)測量結(jié)果
原型系統(tǒng)所測量的三維構(gòu)型參數(shù)值與對(duì)應(yīng)手工測量值如表2所示。由表可知,根分枝數(shù)、根總長、根總表面積以及根總體積的測量誤差分別為0%、4.1%、2.91%、1.68%。
表2 梔子苗總體參數(shù)對(duì)比結(jié)果
由上述測試與分析結(jié)果可知,原型系統(tǒng)基本滿足了設(shè)計(jì)需求。系統(tǒng)參數(shù)測量結(jié)果與手工測量結(jié)果有一定誤差主要因?yàn)楦当砻孑^為粗糙造成了一系列偽根心點(diǎn)。后續(xù)將繼續(xù)完善偽根心點(diǎn)剔除算法以進(jìn)一步提高測量精度。
本文介紹了植物根系三維構(gòu)型測量系統(tǒng)的設(shè)計(jì)目標(biāo)、整體框架以及關(guān)鍵算法。在根系可視化的基礎(chǔ)上提出并實(shí)現(xiàn)了一種具有可行性的根系矢量模型構(gòu)建方法,并以此模型為依據(jù)實(shí)現(xiàn)了原位根系構(gòu)型參數(shù)的自動(dòng)測量。目前該系統(tǒng)尚處于原型階段,系統(tǒng)的穩(wěn)定性有待繼續(xù)完善。系統(tǒng)所采用的根構(gòu)型參數(shù)測量方法有待繼續(xù)通過大量實(shí)例來進(jìn)行論證。
:
[1]羅錫文,周學(xué)成,嚴(yán)小龍,等.基于XCT技術(shù)的植物根系原位形態(tài)可視化研究[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2004,35(2):104-133.[2]張常玲,周學(xué)成,李駢臻.土壤中植物根系的層析成像檢測試驗(yàn)[J].光學(xué)應(yīng)用:中英文版,2014(2):19-24.
[3]Clark,Randy T,Curdy M,et al.Three-dimensional root phenotyping with a novel imaging and software platform[J].Plant Physiology,2011,156(2):455-465.
[4]Mairhofer S,Tracy S R.RooTrak:automated recovery of three-dimensional plant root architecture in soil from XRay microcomputed tomography images using visual tracking[J].Plant Physiology,2012,158(2):561-569.
[5]Van D D,Metzner R,Kochs J,et al.Quantitative 3D analysis of plant roots growing in soil using magnetic resonance imaging[J].Plant Physiology,2016,170(3):1176-1188.
[6]霍亞飛,程梁.Qt5編程入門[M].北京:北京航空航天大學(xué)出版社,2015:1-2.
[7]張曉東,羅火靈.VTK圖形圖像開發(fā)進(jìn)階[M].北京:機(jī)械工業(yè)出版社,2015:170-192.
[8]周振環(huán),鄭小中,趙明.三維圖像編程實(shí)驗(yàn)[M].北京:電子工業(yè)出版社,2011:82-86.
[9]程杰.大話設(shè)計(jì)模式[M].北京:清華大學(xué)出版社,2011:67-72.
[10]Heeraman D A,Hopmans J W,Clausnitzer V.Three dimensional imaging of plant roots in situ with X-Ray computed tomography[J].Plant and Soil,1997,189(2):167-179.
[11]胡占利.基于VTK的醫(yī)學(xué)圖像三維重建及交互研究[D].哈爾濱:哈爾濱工程大學(xué),2008.
[12]陳郁淦,周學(xué)成,羅錫文,等.基于ITK和VTK的原位根系三維可視化研究[C]//中國農(nóng)業(yè)工程學(xué)會(huì)2011年學(xué)術(shù)年會(huì)論文集,2011:1164-1168.
[13]李一海.植物根系三維矢量模型的構(gòu)建與分析方法[D].廣州:華南農(nóng)業(yè)大學(xué),2016.
[14]Kuijken R C,van Eeuwijk F A,Marcelis L F,et al.Root phenotyping:from component trait in the lab to breeding[J].Journal of Experimental Botany,2015,66(18):5389-5401.
[15]田緒紅,李志垣,韓國強(qiáng),等.基于橫截面算法的三維植物根系圖象骨架生成方法[C]//第十二屆全國圖象圖形學(xué)學(xué)術(shù)會(huì)議論文集,2005:655-658.
[16]李駢臻,周學(xué)成,張常玲,等.基于骨架模型的植物根系三維構(gòu)型可視化方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2014,35(11):3913-3917.
[17]陳郁淦.植物根系三維可視化分析系統(tǒng)的研究與實(shí)現(xiàn)[D].廣州:華南農(nóng)業(yè)大學(xué),2012.
[18]Ralf M,Anja E,van D D,et al.Direct comparison of MRI and X-ray CT technologies for 3D imaging of root systems in soil:potential and challenges for root trait quantification[J].Plant Methods,2015,11(1).