VS2019(x64)+ITK4.13.2手动新建项目配置ITK(不使用CMakeLists.txt构建)
完整博客见:Win10-64位(或Win7)+VS2019+ITK4.13.2+VTK8.2+CMake3.16环境配置
目录:
3.6 手动新建项目配置ITK(不使用CMakeLists.txt构建)
3.7 手动配置的ITK项目进行.png图像的读取与另存(在3.6节基础上)
3.6 手动新建项目配置ITK(不使用CMakeLists.txt构建)
3.6小节,本例程通过手动新建项目(不使用CMakeLists.txt构建)配置好的 ITK 可运行工程 itk2 文件夹下载(实现“ITK Hello World!!!”的窗口输出)
3.6.1 在 ITK4.13.2 文件下创建 itk2 文件夹(用于存放手动新建的项目文件),VS2019——>创建新项目——>空项目——>下一步——>项目名称命名为 helloItk
——> 位置自定义为 F:\Software\VTK8.2.0\vtk1
——>创建
3.6.2 在 源文件 中添加新建项 helloItk.cxx ,更改 名称 和 位置 ,添加
3.6.3 设置包含目录:解决方案中 右键 helloItk ——> 属性 ——> VC++目录 ——> 包含目录,添加
F:\Software\ITK4.13.2\Bin\include\ITK-4.13
F:\Software\ITK4.13.2\Build\Modules\Core\Common
F:\Software\ITK4.13.2\Source\InsightToolkit-4.13.2\Modules\IO\PNG\include
(注意平台选择x64,下同)
3.6.4 设置库目录:解决方案中 右键 helloItk ——> 属性 ——> VC++目录 ——> 库目录,添加 F:\Software\ITK4.13.2\Bin\lib
和 F:\Software\ITK4.13.2\Build\lib\Debug
3.6.5 配置预处理器:解决方案中 右键 helloItk ——> 属性 ——> C/C++ ——> 预处理器定义 中添加ITK_IO_FACTORY_REGISTER_MANAGER
注: 如果不添加此语句,读取图像时将会报错
3.6.6 配置链接器:解决方案中 右键 helloItk ——> 属性 ——> 链接器 ——> 输入 ——> 附加依赖项,添加 F:\Software\ITK4.13.2\Bin\lib 目录下的所有 .lib 文件
ITK4.13.2 的所有 .lib 文件如下:
ITKBiasCorrection - 4.13.lib
ITKBioCell - 4.13.lib
ITKCommon - 4.13.lib
ITKDICOMParser - 4.13.lib
itkdouble - conversion - 4.13.lib
ITKEXPAT - 4.13.lib
ITKFEM - 4.13.lib
itkgdcmcharls - 4.13.lib
itkgdcmCommon - 4.13.lib
itkgdcmDICT - 4.13.lib
itkgdcmDSED - 4.13.lib
itkgdcmIOD - 4.13.lib
itkgdcmjpeg12 - 4.13.lib
itkgdcmjpeg16 - 4.13.lib
itkgdcmjpeg8 - 4.13.lib
itkgdcmMEXD - 4.13.lib
itkgdcmMSFF - 4.13.lib
itkgdcmopenjp2 - 4.13.lib
itkgdcmsocketxx - 4.13.lib
ITKgiftiio - 4.13.lib
ITKIOBioRad - 4.13.lib
ITKIOBMP - 4.13.lib
ITKIOBruker - 4.13.lib
ITKIOCSV - 4.13.lib
ITKIOGDCM - 4.13.lib
ITKIOGE - 4.13.lib
ITKIOGIPL - 4.13.lib
ITKIOHDF5 - 4.13.lib
ITKIOImageBase - 4.13.lib
ITKIOIPL - 4.13.lib
ITKIOJPEG - 4.13.lib
ITKIOLSM - 4.13.lib
ITKIOMesh - 4.13.lib
ITKIOMeta - 4.13.lib
ITKIOMINC - 4.13.lib
ITKIOMRC - 4.13.lib
ITKIONIFTI - 4.13.lib
ITKIONRRD - 4.13.lib
ITKIOPNG - 4.13.lib
ITKIOSiemens - 4.13.lib
ITKIOSpatialObjects - 4.13.lib
ITKIOStimulate - 4.13.lib
ITKIOTIFF - 4.13.lib
ITKIOTransformBase - 4.13.lib
ITKIOTransformHDF5 - 4.13.lib
ITKIOTransformInsightLegacy - 4.13.lib
ITKIOTransformMatlab - 4.13.lib
ITKIOVTK - 4.13.lib
ITKIOXML - 4.13.lib
itkjpeg - 4.13.lib
ITKKLMRegionGrowing - 4.13.lib
ITKLabelMap - 4.13.lib
itklbfgs - 4.13.lib
ITKMesh - 4.13.lib
ITKMetaIO - 4.13.lib
itkminc2 - 4.13.lib
itknetlib - 4.13.lib
itkNetlibSlatec - 4.13.lib
ITKniftiio - 4.13.lib
ITKNrrdIO - 4.13.lib
ITKOptimizers - 4.13.lib
ITKOptimizersv4 - 4.13.lib
ITKPath - 4.13.lib
itkpng - 4.13.lib
ITKPolynomials - 4.13.lib
ITKQuadEdgeMesh - 4.13.lib
ITKSpatialObjects - 4.13.lib
ITKStatistics - 4.13.lib
itksys - 4.13.lib
itktestlib - 4.13.lib
itktiff - 4.13.lib
ITKTransform - 4.13.lib
ITKTransformFactory - 4.13.lib
itkv3p_netlib - 4.13.lib
itkvcl - 4.13.lib
ITKVideoCore - 4.13.lib
ITKVideoIO - 4.13.lib
itkvnl - 4.13.lib
ITKVNLInstantiation - 4.13.lib
itkvnl_algo - 4.13.lib
ITKVTK - 4.13.lib
ITKWatersheds - 4.13.lib
itkzlib - 4.13.lib
ITKznz - 4.13.lib
libitkhdf5_D.lib
libitkhdf5_cpp_D.lib
3.6.7 向 helloItk.cxx 中粘贴Demo代码(输出“ITK Hello World!")
#include <iostream>
#include "itkImage.h"using namespace std;int main()
{typedef itk::Image<unsigned short, 3> ImageType;ImageType::Pointer image = ImageType::New();cout << "ITK Hello World !" << endl;return 0;
}
3.6.8 配置完成,运行 本地Windows调试器
至此,手动新建项目配置ITK(不使用CMakeLists.txt构建)完成!!!
注:1、如果编译时出现缺少 .lib 文件 或者无法打开 .lib 文件,可以先去 3.6.4 设置库目录小节中添加的两个库目录中查看是否存在缺少的这个.lib库文件,如果没有,则需要去找别人相同环境编译后的库添加进来就可以了。
2、如果编译时提示无法打开 .lib 文件,也可能是 3.6.5 配置链接器小节中添加的附加依赖项的库,实际在 3.6.4 设置库目录小节中的两个库目录中都不存在,所以需要去看无法打开的这个.lib文件是不是由于版本原因略微更改了名称,如果是这样,就把 3.6.5 配置链接器小节中添加的附加依赖项的库中对于的名称更改下就可以了。
例如比较常见的:libitkhdf5.lib 和 libitkhdf5_cpp.lib 被改成了 libitkhdf5_D.lib 和 libitkhdf5_cpp_D.lib
3.7 手动配置的ITK项目进行.png图像的读取与另存(在3.6节基础上)
3.7小节,本例程通过手动新建项目(不使用CMakeLists.txt构建)配置好的 ITK 可运行工程 itk2 文件夹下载(实现png图像的读取与另存)
3.7.1 选择 F:\Software\ITK4.13.2\itk2\helloItk,将 itk_demo.png 和 itk_png_reader and writer.cxx 两个文件拷贝到此目录(你也可以选择其它png格式的图片)
itk_png_reader and writer.cxx 的源码:
#include "itkImage.h"//图像类的头文件
#include "itkImageFileReader.h"//图像读取类的头文件
#include <itkPNGImageIOFactory.h>// PNG对应
#include "itkImageFileWriter.h"//图像读取类的头文件int main(int, char* argv[])
{//指定表示图像的像素和维数的值来定义图像的类型typedef unsigned char PixelType;//图像的像素类型const unsigned int Dimension = 3;//图像的维数//定义图像的类型ImageTypetypedef itk::Image< PixelType, Dimension > ImageType;//使用图像类型把图像读取 Reader 类实例化typedef itk::ImageFileReader< ImageType > ReaderType;//使用图像类型把图像读取 writer 类实例化typedef itk::ImageFileWriter< ImageType > WriterType;//使用ReaderType类型来创建一个对象readerReaderType::Pointer reader = ReaderType::New();//使用WriterType类型来创建一个对象writerWriterType::Pointer writer = WriterType::New();//图像的文件名通过 SetFileName( )方法来实现//const char * filename = argv[0];reader->SetFileName("itk_demo.png");reader->Update();//建立管道writer->SetInput( reader -> GetOutput());writer->SetFileName("itk_demo_new.png");writer->Update();return 0;
}
3.7.2 双击 F:\Software\ITK4.13.2\itk2\helloItk 目录下 helloVtk.sln 使用VS2019打开工程,选择 解决方案资源管理器 下的源文件下的 helloItk.cxx 文件,然后 右键 选择栏下的 移除 选项(选择移除,如果以后要添加文件还存在,如果选择删除此文件将被删除不存在)
3.7.3 移除后,然后选中 源文件,然后 右键 选择栏下的 添加 ——现有项 选项,选中 F:\Software\ITK4.13.2\itk2\helloItk 目录下的 itk_png_reader and writer.cxx 进行添加
3.7.4 然后点击 本地Windows调试器 运行
itk_demo.png itk_demo_new.png
注:因为此例子并未进行RGB读取,所以另存出来的图片是灰度图片。
至此,手动配置的ITK项目进行.png图像的读取与另存完成!!!
VS2019(x64)+ITK4.13.2手动新建项目配置ITK(不使用CMakeLists.txt构建)相关推荐
- Pycharm新建项目配置虚拟环境
Pycharm新建项目配置虚拟环境 1.概述 使用python开发项目通常都会创建一个虚拟环境,将项目依赖包安装到虚拟环境中,避免一台电脑上开发多个项目时依赖包版本号不兼容造成冲突. 2.新项目配置虚 ...
- IDEA新建项目配置tomcat
IDEA新建项目配置tomcat 新建项目->java模块/下一步->下一步->自定义项目名称/自定义模块文件位置->完成 项目名称处右键->添加框架支持->WEB ...
- pycharm 设置虚拟工作空间_pycharm新建项目配置虚拟环境
pycharm来创建虚拟环境实际就是用流行的Virtualenv来创建虚拟环境,只不过pycharm集成了Virtualenv,并提供了一个Virtualenv的图形界面,对于小白来说比较好理解,比较 ...
- vue3 路由 vite方式新建项目 配置路由【适合新手】
一 配环境.并初始化项目 安装nodejs https://blog.csdn.net/lh155136/article/details/128444850 参考官网https://cn.vuejs. ...
- Jenkins 项目配置里缺少了 触发远程构建 (例如,使用脚本) Trigger builds remotely 选项的解决办法
原因是因为没有在Jenkins上没有开启安全选项,其实很简单 系统管理->Configure Global Security 如图配置好就额可以了
- Qt Creator新建项目详解
本文带你详细了解 Qt 新建项目步骤及每个项目文件的作用 文章目录 前言 Part1:Qt的优势 Part2:开发环境 Part3:新建项目 Part4:工作目录 Part5:构建目录 Part6:总 ...
- Windows 平台下基于MinGW和Qt 的OpenCV 之CMake 项目配置
1. MinGW 编译OpenCV 参考其他教程 2. 添加系统环境变量 OpenCV_DIR 如果有执行 mingw32-make install, 则为 build 目录下install 文件的完 ...
- GoLand/GO项目配置与使用
这里的Go(SDK).GoLand的安装就不多说了,网上自行下载,我们着重讲项目配置,import pkg时能够完美运行 一.Go版本以及GoLand版本 Go版本--------我这里是 Go1.1 ...
- Xcode 11 新建项目适配 iOS 13 以下设备
前言 Xcode 11 及以后版本新建项目都会多了一对 SceneDelegate 类文件(如下图所示) 原来是 iOS 13 之后,AppDelegate 不在负责 UI 生命周期. 所有的 UI ...
最新文章
- 从源码分析DEARGUI之动态特效
- C++ new和delete(C++动态分配和释放内存)
- Android --- java.lang.RuntimeException: Can‘t create handler inside thread that has not called Loop
- 【BIM入门实战】Revit 2018模型设计阶段重点及注意事项总结
- redis 哨兵_Redis哨兵机制的原理介绍
- day06【后台】两套分配
- b站怎么删自己的专栏_麦当劳B站直播翻车,品牌B站营销到底应该怎么做?
- Android支持库AndroidX和support-v4、appcompat-v7的前世今生!
- python处理时间序列非平稳_非平稳时间序列的自相关
- SCSI子系统基础学习笔记 - 3. SCSI设备探测
- Google地图下载器制作
- 云计算如何从计算机发展而来,云计算是如何发展起来的?
- 靠!我被项目经理和同事嘲笑了,因为不会远程debug调试...
- War3地图编辑器基础:玩家设置+地图元素的属性设置+地图事件设置
- Tuxera NTFS2023免费版Mac电脑系统读写软件
- python画抛物线_在python中利用最小二乘拟合二次抛物线函数的方法
- Live555源码阅读笔记(一):源码介绍文档 及 源码目录结构
- 想成为一名数据库工程师,你必须知道这些
- Ubuntu中安装Qt
- 做项目经理太累太辛苦,每天开不完的会议,还不如纯粹编写代码