C/C++

Windows 10 使用 Visual Studio 2019 編譯 ITK 應用程式教學與範例

介紹如何在 Windows 10 中使用微軟的 Visual Studio 2019 編譯 ITK 的應用程式。

ITK(Insight Toolkit)是一套 C++ 影像分析處理函式庫,其編譯與安裝的方式跟 VTK 相當類似,以下是編譯、安裝 ITK 函式庫,以及編譯 ITK 應用程式的步驟。

由於 ITK 與 VTK 的編譯步驟幾乎相同,基本的編譯環境請參考 Windows 10 上的 VTK 的編譯教學,這裡就不再重複介紹。

編譯 ITK 函式庫

Step 1
下載最新版的 ITK 函式庫原始碼,這裡我用的版本是 ITK 5.1 Release Candidate 2。將其解壓縮之後,放在 D:ITKInsightToolkit-5.1rc02 目錄之下,然後再建立一個 D:ITKbuild 目錄放置編譯產生的檔案。

ITK 目錄

Step 2
開啟 CMake 視窗介面,將原始碼目錄(source code)指定為 D:ITKInsightToolkit-5.1rc02,建置(build)目錄指定為 D:ITKbuild,然後按下「Configure」按鈕。

CMake 視窗介面

Step 3
選擇對應的編譯環境,這裡我們使用 MSVC 2019,所以就選擇「Visual Studio 16 2019」。

選擇編譯環境

Step 4
若沒有錯誤產生,則按下「Generate」繼續建立 MSVC 專案。

設定完成

Step 5
若沒有錯誤產生,就完成建立 MSVC 專案的步驟了,產生的 ITK 專案會放在 build 目錄中。

建立 MSVC 專案完成

Step 6
以 MSVC 開啟 build 目錄中的 ITK.sln 專案之後,選擇編譯的類型,然後在 ALL_BUILD 方案上按下滑鼠右鍵、選擇「建置」,即可自動編譯整個 ITK 專案。

Visual Studio 2019 開啟 ITK 專案

Step 7
編譯完成之後,確認沒有失敗的方案,即可在右方 INSTALL 方案上按下滑鼠右鍵,選擇「建置」以安裝 ITK 函式庫。

成功編譯 ITK 函式庫

Step 8
若沒有出現錯誤,這樣就完成 ITK 函式庫的安裝了。

成功安裝 ITK 函式庫

預設的 ITK 函式庫安裝路徑位於 C:Program Files (x86)ITK

ITK 函式庫

編譯 ITK 應用程式

在 ITK 原始碼的 ExamplesInstallation 目錄中,有一個 ITK 的 hello world 範例,以下我們將介紹如何編譯這個範例程式。

ITK Installation 範例

Step 1
開啟 CMake 視窗介面,設定好原始碼與建置目錄,按下「Configure」按鈕。

CMake 視窗介面

Step 2
確認沒有錯誤後,按下「Generate」產生 MSVC 專案。

設定完成

Step 3
確認沒有錯誤,這樣就完成產生 MSVC 專案的步驟。

產生 MSVC 專案完成

Step 4
打開 build 目錄下的 MSVC 專案,使用右方的 ALL_BUILD 編譯整個專案。

MSVC 專案

Step 5
確認編譯有成功,這樣就完成了。

編譯成功

Step 6
打開命令提示字元或 PowerShell,執行編譯好的執行檔。

PowerShell

布署 ITK 應用程式

ITK 函式庫預設都是以靜態連結的方式編譯,所以編譯出來的執行檔只要搭配基本的 Visual C++ 可轉散發套件(可從微軟的官方網站下載,或是從 C:Program Files (x86)Microsoft Visual Studio2019CommunityVCRedistMSVC14.25.28508 目錄之下複製)即可布署至其他地方使用。

Share
Published by
Office Guide
Tags: ITK

Recent Posts

Python 使用 PyAutoGUI 自動操作滑鼠與鍵盤

本篇介紹如何在 Python ...

9 個月 ago

Ubuntu Linux 以 WireGuard 架設 VPN 伺服器教學與範例

本篇介紹如何在 Ubuntu ...

9 個月 ago

Linux 網路設定 ip 指令用法教學與範例

本篇介紹如何在 Linux 系...

9 個月 ago

Windows 使用 TPM 虛擬智慧卡保護 SSH 金鑰教學與範例

本篇介紹如何在 Windows...

10 個月 ago

Linux 以 Shamir’s Secret Sharing 分割保存金鑰教學與範例

介紹如何在 Linux 中使用...

11 個月 ago

Linux 以 Cryptsetup、LUKS 加密 USB 隨身碟教學與範例

介紹如何在 Linux 系統中...

11 個月 ago