安裝配置CADLab-master

Imaging Biomarkers and Computer-Aided Diagnosis Laboratory —?LymphNodeRFCNNPipeline

步驟來源:github

配置細節(jié)撰寫人:Zongwei Zhou

我使用的是Windows 7,64位系統(tǒng),如果碰巧一樣的話就直接按照提供的地址下載安裝即可,可以巧妙地避開很多坑。


Introduction

Developed by ?Kevin Cherry and Holger Roth

Please cite our papers if you end up using this code:

[1] HR Roth, L Lu, J Liu, J Yao, A Seff, C Kevin, L Kim, RM Summers: Improving Computer-aided Detection using Convolutional Neural Networks and Random View Aggregation.?Medical Imaging, IEEE Transactions on. Year: 2015, Volume: PP, Issue: 99, Pages: 1 - 1, DOI: 10.1109/TMI.2015.2482920

[2] KM Cherry ; S Wang ; EB Turkbey ; RM Summers: Abdominal lymphadenopathy detection using random forest.?Proc. SPIE 9035, Medical Imaging 2014: Computer-Aided Diagnosis, 90351G, doi:10.1117/12.2043837

Code includes open-source packages:

1. http://cs.nyu.edu/~wanli/dropc/?based on?https://code.google.com/p/cuda-convnet/

2.?https://code.google.com/p/randomforest-matlab/

3.?NiftyReg http://sourceforge.net/projects/niftyreg


Requirements

1. Matlab

我使用的版本是MATLAB 2013a,下載地址,下載下來安裝包,按照Matlab R2013a 安裝過程詳解.pdf一步步安裝即可。

2. CUDA-compatible graphics card

使用CUDA對GPU進行編程,我們需要準備以下必備工具:

硬件平臺,就是顯卡,如果你用的不是NVIDIA的顯卡,那么只能說抱歉,其他都不支持CUDA。

這個NVIDIA的要求比較坑,我原來的筆記本也算算是高配,但檢查了一下顯卡,只有intel,并沒有NVIDIA的,頓時感到無力,后來換了一臺電腦,選擇時首要的指標就是:“有沒有NVIDIA的顯卡”,一般來說高配的電腦都有,但大家一定要先確認一下。

Windows7:右鍵桌面‘計算機’->選擇設備管理器->查看顯示適配器,看看有沒有NVIDIA系列的顯卡,不管什么型號的,NVIDIA系列的就ok

檢查自己電腦的顯卡類型

原來其實導師還想了一個方案,就是我的筆記本桌面遠程,用他的電腦,但是我網(wǎng)上看了一下,感覺不靠譜,原因是:

你使用遠程桌面連接登錄到另一臺服務器,該服務器上有顯卡支持CUDA,但你遠程終端不能運行CUDA程序。這是因為遠程登錄使用的是你本地顯卡資源,在遠程登錄時看不到服務器端的顯卡,所以會報錯:“沒有支持CUDA的顯卡!”

解決方法:1.遠程服務器裝兩塊顯卡,一塊只用于顯示,另一塊用于計算;2.不要用圖形界面登錄,而是用命令行界面如telnet登錄。

3. Install CUDA 4.2 64-bit (https://developer.nvidia.com/cuda-toolkit-42-archive)

CUDA(Compute Unified Device Architecture),是顯卡廠商NVIDIA推出的運算平臺。 CUDA?是一種由NVIDIA推出的通用并行計算架構,該架構使GPU能夠解決復雜的計算問題。

按照自己電腦的情況依次下載安裝Download Toolkit, Drivers, SDK,我用的版本就是這個Toolkit, Drivers, SDK,大家可以直接下載。在安裝前首先確認你的顯卡用的是NVIDIA了,而且更新了驅動。

錯誤:NVIDIA最新顯卡驅動無法找到兼容的圖形硬件

雙顯卡的筆記本一定要注意顯卡安裝順序,首先要安裝集成顯卡(Internet)更新后重啟,否則無法安裝獨立顯卡或容易報錯,如上圖。安裝NVIDIA Graphics Driver時也可能會遇到這個錯誤,完美解決NVIDIA最新顯卡驅動無法找到兼容的圖形硬件,百度上有各種解決方法,有的好用有的沒用,我用的是這個解決方案,親測有效。

4. Python 2.7 64-bit with Numpy and Matplotlib!

Recommended to use Anaconda python distribution:?http://continuum.io/downloads

Make sure it's added to path (and remove any conflicting python versions from path)

安裝完python最好再安裝一個pip,pip相當于蘋果的app store,可以用它下載很多python需要的包,比如matplotlib就可以。python和pip的安裝詳細步驟可以參考這個教程,基本就沒什么別的問題了。需要注意的是numpyscipy這兩個包用pip安裝會出來各種問題,建議直接網(wǎng)上下載exe,雙擊安裝。下載地址:Numpy,Scipy。這兒要說明一下,雖然我的系統(tǒng)是64位的,但我還是安裝了32位的python和其附屬包,因為我在做深度學習的實驗的時候發(fā)現(xiàn)部分包64位不支持的。

另外,它有推薦Anaconda python distribution,我就安裝了。

python運行時遇到的問題

這兒再提一嘴,安裝完python,你運行程序,想看看到底python怎么樣的時候,可能會遇到上面的問題,解決方法是去Visual Studio安裝的目錄下查找cl.exe文件,把文件目錄添加到系統(tǒng)路徑里面。

添加系統(tǒng)路徑:高級系統(tǒng)設置->環(huán)境變量->Path

我用的是Visual Studio 2012,這個是下載地址,當然Visual Studio各個版本的地址也有,大家可以自行挑選,不建議安裝高版本的,原因是在后續(xù)的配置中,往往會不支持高版本。

5. Optional: MITK for viewing result (http://www.mitk.org/Download)


Run example (Windows 7, 64-bit):

1. Download example data from https://drive.google.com/file/d/0Byig_cLsHdU0VkdGTXQ1N195ZWc/view?usp=sharing and extract to .\data

數(shù)據(jù)挺大的,當時我在國外下載的,不能翻墻的話可以在這兒下載。

2. Open Matlab

3. CD to where 'run_LymphNodeRFCNNPipeline.m' is located and run it (it will automatically add necessary sub-folders to Matlab path)

劃線的那句不要信,把該添加路徑的都添加了,穩(wěn)妥,不然各種找不到函數(shù)的問題煩死你。

找不到函數(shù)的錯誤,把路徑添加進去!
選擇Add with Subfolders

4. Select ".\data\CTimage" as input folder

5. Select a suitable output folder

在run_LymphNodeRFCNNPipeline.m中修改input和output folder的地址
報錯1
報錯1的解決方法:在install_LymphNodeRFCNNPipeline.m中找到copyfile這行,把filesep刪掉
報錯2
報錯2解決方法:在install_LymphNodeRFCNNPipeline.m開頭修改pwd的值,即當前目錄

具體怎么修改呢,因為報錯的句子是optRF.randForestFilename地址找不到,只要Ctrl+F搜索randForestFilename,找到它的定義,應該是這句optRF.randForestFilename = [pwd,filesep,'trained_Forests\RF_regression.mat'];這兒有一個pwd,意思是當前路徑,默認的是你MATLAB安裝的路徑,所以當然不對。你去CADLab-master文件夾下搜索RF_regression.mat,找到了它的路徑,把與pwd無關的刪掉,就是pwd了,可以參見我的修改代碼。

把上面的代碼改完,這個MATLAB程序就可以開始運行一會兒了,大概一分鐘,然后繼續(xù)報錯:

報錯3,紅字上面的都是正常運行的結果,我就不截啦,這個是因為你沒有裝niftyreg或者裝完沒有修改m文件的相應代碼

按照上述方法做,估計還是會報出很多錯誤...因為要開始讀代碼了,但是不要怕,我也卡這兒了,先繼續(xù)把下面幾個步驟完成再來細讀代碼。

Compile yourself (should work on platforms other than Windows 7, 64-bit and Visual Studio 10, but links have to be updated):

Requirements

1. ITK v4.5.0 (others are untested)?http://sourceforge.net/projects/itk/files/itk/4.5/InsightToolkit-4.5.0.zip/download

ITK的作用相當于一個函數(shù)庫,是C++寫的,在后續(xù)的調用時都是要用到的。我用的不是v4.5.0版本 的。需要注意的是,ITK的版本需要與CMake的版本對應起來,具體怎么對應需要去官網(wǎng)查,我用的對應版本是ITKCMake。驗證可行,建議用我的下載地址。

先把ITK和Cmake對應的下載下來,然后開始編譯ITK。

因為ITK是C++的工程,編譯C++工程不同的系統(tǒng)都是不同的,Mac、Linux、Windows,而且不同版本的編譯器Visual Studio、Codeblocks也是不同的,對于這個跨平臺的編譯,需要一個翻譯,把C++工程翻譯成不同的可執(zhí)行的工程,這個“翻譯”就是CMake。進一步的CMake的使用可以參考這兒,主要講的是ITK借助CMake在VS2010下的使用。CMake的作用解釋明白了,那我們就可以翻譯。

打開下載完成的CMake,打開bin文件夾里面的cmake-gui.exe,跳出這個界面,就是CMake的界面啦。

CMake界面

Where is the source code:中填入下載完的ITK中CMakeLists.txt文件的路徑,這個CMakeLists.txt文件就是CMake的可執(zhí)行文件了,以后看到這種CMakeLists字樣腦子里面就應該反應過來,“哦,這兒需要CMake翻譯一下了”。在Where to build the binaries:中填入你想把翻譯完的工程放哪兒,我是新建了一個ITK_build文件夾。然后把Advanced的勾上

按Configure,選擇編譯器,我的是Visual Studio 2012,然后正常就開始運行啦,時間大概在5-10分鐘。這一步版本弄對了會很爽,一路DONE,DONE,DONE,要是有個什么不對了,各種報錯。

遇到這種問題就是你的CMake,VS和ITK的版本沒對上

Configure完成后,按Generate,這個很快的,看到done了,恭喜你,翻譯成功。打開翻譯后的工程文件,用Visual Studio打開ITK.sln文件,看一下解決方案,導入了多少個項目,我這兒遇到一個問題,導入的項目只有217個,而和我一起裝的同學,用的全是同一版本的ITK、CMake、Visual Studio,導入了600多個項目,我不知道是怎么回事,先放在一遍,反正暫時沒有報錯,還算順利。

只導入了217個項目

生成->生成解決方案,等待N久,看你的電腦配置,有的持續(xù)一下午,有的一小時就編譯完了。ok,至此,ITK算是安裝完成啦。

2. CUDA 4.2 (others are untested)?https://developer.nvidia.com/cuda-toolkit-42-archive

這一步和上面重復了,確保已經(jīng)安裝完成了就ok

3. BOOST 1.55 (others are untested):?http://sourceforge.net/projects/boost/files/boost-binaries/1.55.0/boost_1_55_0-msvc-10.0-64.exe/download


1. Locate ".\pyconvnet\CMakeLists.txt", run CMake and produce Visual Studio or makefile (untested)

這一步其實就是用CMake來翻譯..\CADLab-master\LymphNodeRFCNNPipeline\pyconvnet路徑下面的CMakeLists.txt,基本的步驟和上面的ITK翻譯差不多,但是還是會遇到一堆問題。

清一色的找不到Boost的路徑,當然前提是你明明已經(jīng)安裝的哦

對于這個清一色找不到boost的路徑我也是沒有辦法,我就裝作沒看到,不管它啰。

ITK的路徑找不到

對于ITK的路徑找不到,我的解決方法是把ITK_DIR-NOTFOUND這行替換成ITK翻譯完的ITK_build文件夾路徑,這個靠譜。

找不到顯卡

對于這種找不到顯卡的問題,我的解決方法是去設備管理器看看,發(fā)現(xiàn)是這種情況

NVIDIA顯卡邊上有感嘆號

那么直接把顯卡驅動升級一下就可以了。最后,我CMake完是這么一個提示,有瑕疵,但是至少done了,就可以繼續(xù)接下來的步驟。

有瑕疵,一個warning

2. Compile pyconvnet

用Visual Studio打開翻譯完的文件夾下的pyconvnet.sln,還是生成->生成解決方案,編譯完即可。

pyconvnet的解決方案
最終結果

3. compiling PACKAGE should include all binaries in a zip file, which can be installed in Matlab using 'install_LymphNodeRFCNNPipeline.m', called by 'run_LymphNodeRFCNNPipeline.m')

4. NiftyReg http://sourceforge.net/projects/niftyreg/files/nifty_reg-1.3.9/, Pre-build version with VS2010 is provided. Otherwise rebuild the code in 'niftyreg-git_prebuild_vs10_x64r' and modify m-scripts accordingly.?

CMake處理時遇到這種問題,各種NOTFOUND,原因是版本問題,原鏈接給的NiftyReg對應Visual Studio 2010
CMake錯誤,卸載掉.NET Framework 4.5,重新安裝.NET Framework 4.0即可解決
CMake編譯結束,出現(xiàn)了warning,沒管它,反正都done了
VS2010提示沒有安裝.NETFramework,但問題是我已經(jīng)在電腦中安裝了。
選擇“將項目保留為未加載”,直接導致項目都不可用




This NiftyReg version from git:

$ git log

commit 390df2baaf809a625ed5afe0dbc81ca6a3f7c647

Author: Marc Modat

Date:? Fri Nov 14 13:06:52 2014 +0000

Modified the bending energy computation so that it does not over-regularise

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容