SimpleElastix — 一個影像對準工具的安裝流程
影像對準(Image Registration)在影像處理的領域中算是很重要的處理過程,舉例來說當現在有好幾張不同的影像需要作分析,但是在每一張影像中我們想要觀察的區域可能因為拍攝角度,或者是拍攝時間不同導致會有些微偏移的結果。這時候就可以使用影像對準的技術讓觀察區域對齊方便作後續影像分析。
由於我習慣使用Python來作數據處理,因此有試著找了一下Python中哪些模組是比較容易完成這份工作,而因此找上了SimpleElastix。底下是一個官方文件提供的小範例,夠簡單吧!再來也是因為這個模組就是為了醫學影像而設計的,更驅使我使用它作為我的工具。
切入正題,由於我在安裝過程中遇到了不少麻煩,因此想特別說明完整的安裝流程以供後人參考。(SimpleITK為1.2.0版本)
Step 1: 使用CMake生成檔案
首先要下載CMake,下載完後會在bin的資料夾中找到cmake-gui.exe
再來要到以下網站下載SimpleElastix,點擊Clone or download即可下載壓縮檔
最後還要下載Git,不然會在生成檔案的過程中會出錯!
載完這三項之後,打開cmake-gui.exe。設定source code指向SimpleElastix中的SuperBuild資料夾。生成的資料夾則沒有要求說要取什麼名子,像我是取直白的SimpleElastix,你也可以取成其他你喜歡的名子,不過需要注意的是根據官方文件所說不要超過50個字元。
再來底下的方框只需勾取Python的部分即可
完成後點選Configure會跑出以下畫面,Visual Studio的部分基本上選擇最新版的即可,底下則設定成Use default native compilers。
點擊Finish後,再點選Generate就會開始生成檔案。
Step 2: 使用Visual Studio進行編譯
開啟Visual Studio,從File->Open->Project/Solution開啟剛剛在自己命名的資料夾中產生的SuperBuildSimpleITK.sln
將”Debug”模式改成”Release”,根據官方文件說沒有這個步驟在接下來的執行過程會少東西。再來對右側的Solution Explorer裡面的ALL_BUILD點右鍵選擇”Build”。
接下來就等待編譯器編譯,大概會需要幾個小時的時間。(以我的情況大約2小時)
Step 3: 進入命令提示字元(cmd)
開啟cmd之後,如果當初命名的資料夾儲存在C槽的話請輸入”cd 命名資料夾路徑\SimpleITK-build\Wrapping\Python\Packaging”。
如果是設定在其他槽,例如像是D槽時,請先輸入”D:”,再輸入”cd 命名資料夾路徑\SimpleITK-build\Wrapping\Python\Packaging”。
不過這時如果根據官方文件所說需要執行”python setup.py install”,但這時會出錯,原因出在找不到名為_SimpleITK.pyd的檔案。至於解決這個問題的方式就是退回前面Python的資料夾就可以找到了,再從那邊複製過來就可以順利執行。
完成了!最後可以用本篇這上面的程式碼做測試,如果可以順利import就代表安裝成功!
題外話,根據官方文件的建議是使用以下的範例程式作修改,自己可以操作的空間較大,實用性也會較高!
Resources
[1] SimpleElastix Documentation
[2] SimpleElastix安裝及所遇問題(windows)
[3] Python wrapper installation #243 from GitHub