1、MITK介绍
1.1 MITK概述
MITK 是一个开源框架,最初是作为德国癌症研究中心医学和生物信息学部 (MBI) 博士生的通用框架开发的。MITK 旨在支持开发具有高度交互性的领先医学成像软件。
MITK 几乎重复使用了 VTK 和 ITK 中的任何内容。因此,它根本不是 VTK 或 ITK 的竞争对手,而是一个扩展,它试图简化两者的结合,并添加 VTK 或 ITK 不支持的功能。由于类似 BSD 的软件许可证,研究机构、医疗专业人员和公司都可以使用 MITK 作为其研究的基本框架,甚至商业(需要彻底的代码研究)软件。研究机构将受益于 ITK 和 VTK 的高度集成,并在一个由各种研究人员和开发人员支持的单一框架中通过数据管理、高级可视化和交互功能得到增强。您无需一遍又一遍地重新发明轮子,可以专注于您的工作。
1.2 MITK用途
Medical Imaging Interaction Toolkit (MITK) 是一个免费的多功能开源软件项目,用于开发医学影像处理应用程序。它可以用作软件开发的 C++ 工具包或应用程序框架。您可以在下面找到针对不同使用场景的文档:
- 您可能希望将 MITK 用作应用程序
您可能希望以最终用户的身份使用 MITK Workbench,并且可以在 MITK 用户手册和 MITK 插件手册中找到用户手册。
- 您可能希望开发自己的软件框架,并使用 MITK 的一些数据结构和算法
您可能希望将 MITK 用作工具包,并且可能从构建说明和 MITK API 文档中受益最大。
- 您可能希望使用 MITK 和 BlueBerry 软件框架来开发自己的软件
在这里,您又有两个选项:
- 您可能希望使用 MITK Workbench 并扩展其功能
您可能希望将 MITK 用作软件框架,并为 MITK 编写自己的模块和插件。您可能需要阅读 构建说明 和 开始您的 MITK 开发。此外,您可能想看看我们的 CMake 常见问题解答。
- 您可能希望基于 MITK 创建自己的应用程序
这可能是使用 MITK 的最常见方式。您可能希望将 MITK 用作软件框架,并使用 MITK 构建自己的项目和应用程序。您可能希望阅读 创建新的 MITK 项目 和 开始 MITK 开发 中的一般信息。此外,您可能想看看我们的 CMake 常见问题解答。
1.3 MITK源码下载
MITK源码下载地址:https://github.com/MITK/MITK/releases;最新版本是MITK v2024.06,但要求Qt6以上,对于大多数开发者来说,可能使用低版本更加合适。
新旧版本第三方依赖库对比如下:
2、MITK编译环境配置
2.1 版本差异
由于Qt6版本原因,对于v2024版本不做介绍。本人仅编译了MITK v2023.04和MITK v2021.10,两个版本均采用了VS2019+Qt5.15.2的编译环境。两个版本的编译差别并不太大,显著的差别是MITK v2023移除了CMakeExternals文件夹中的*.patch文件;
此外从*.cmake文件中也开始看出,对第三方库的下载地址变了:
V2021版本在编译过程中从URL= http://mitk.org/download/thirdparty/中下载第三方依赖包;V2022版本在编译过程中直接从各个三方库的github仓库下载,例如 https://github.com/MITK/ITK.git。
2.2 编译环境配置
本次以MITK v2021-10.0编译为例进行详细讲述。
关于MITK v2023的编译遇到的问题并不多,安装opensslV3.4,设置好VPN以便正常访问github,然后记得把git的代理端口设定好,即可正常拉取三方库进行编译,唯一印象深刻的是,vtk自动编译以后的路径设定于别的库不太一致导致cmake文件报错,本人采用修改报错对应的.camke文件中绝对路径的方式进行了修改,并完成了编译。
在编译之前,需要先安装好以下软件:VS2019 ,Qt5.15.2 , CMake 3.18.6, Git,openSSL-v1.1.1。注意QT安装时,需要勾选Qt Script,否则config时候会提示找不到Qt模块。
3、MITK源码编译
3.1 修改patch文件格式
修改路径\MITK-2021.10\CMakeExternals*.patch文件的格式。把文件夹里面的6个patch文件使用notepad++文本编辑软件打开,统一修改换行方式为Windows PC方式(后缀为CRLF),不能是Unix方式。
关于notepad++软件,可以如下操作:
- 点击“试图”-“显示符号”-"显示行尾符"来查看行尾符格式;
- 点击“编辑”-“文档格式转换”-"转为Windows"来修改行尾符格式。
- 修改完后文件的结尾后缀应该为CRLF。
3.2 cmake生成 MITK-superbuild
在文件夹下新建build文件夹和install文件夹;打开cmkae-gui.exe,建议源码路径和build路径不要过长且不要包含中文,否则极有可能出错。
我这边出现了这个错误,所有的三方库文件地址:http://mitk.org/download/thirdparty/无法下载成功,但放在浏览器中可以正常下载。因此采用手动下载patch.exe文件的方式,然后修改cmake中patch.exe文件路径解决了config报错问题。
Generate生成VS工程,然后Open Project即可打开 MITK-superbuild.sln解决方案;
3.3 编译MITK-superbuild
如果编译过程发现同上面无法从http://mitk.org/download/thirdparty/ 地址下载文件包的错误,可以手动下载后放到对应的E:\MITK2021.10\build\ep\src文件夹下,解决下载失败的问题。
打开MITK-superbuild解决方案,然后选择ALL_BUILD进行生成。编译最后应该会报错MITK-Core错误类似的错误,此处可以暂时不必处理,只要不会影响下一步cmake的config操作即可。
3.4 cmake生成 MITK
再次打开cmake,不过build文件路径需要修改为build/MITK-build,MITK-build文件夹是上一步自动生成的,不需要新建。
同样进行config和Generate操作,最后生成打开MITK解决方案。
3.5 编译MITK
打开MITK解决方案,然后选择ALL_BUILD进行生成。