SimpleITK是Insight工具包(ITK)的算法和数据结构的简化编程接口。 它支持多种编程语言的绑定,包括C ++,Python,R,Java,C#,Lua,Ruby和TCL。 这些绑定使科学家能够使用他们最熟悉的编程语言来开发图像分析工作流。 该工具包支持超过15种不同的图像文件格式,提供了280多种图像分析过滤器,并为基于ITK强度的注册框架实现了统一的界面。官方使用手册地址:https://simpleitk.readthedocs.io/en/master/about.html
1、问题描述
在使用SimpleITK进行可视化操作时,往往需要调用其他可视化接口,比如ImageJ,3Dslicer、ITK-SNAP等。可直接使用SimpleITK.Show()函数进行显示,该函数会自动搜索上述接口是否存在,如果搜索到了就调用相应接口进行显示,但是需要预先配置好,否则会出现如下报错:
“Traceback (most recent call last):
File "", line 1, in
sitk.Show(image)
File "C:\Python27\lib\site-packages\SimpleITK.py", line 4158, in Show
return _SimpleITK.Show(*args, **kwargs)
RuntimeError: Exception thrown in SimpleITK Show: ............\Build\ITK\SimpleITK-0.7.1\Code\IO\src\sitkShow.cxx:463:
sitk::ERROR: Error in administrating child process: [参数错误。]”
也就是没有检测到可视化接口,需要进行配置,以下是对ImageJ配置方法。
2、配置方法
这里参考了stack overflow上方法,并自己成功运行了。下面进行一个总结:
2.1、ImageJ安装
1、前往官网下载安装包:https://imagej.nih.gov/ij/download.html
2、确保下载合适的版本
2.2、ImageJ配置
1、前往:https://imagej.nih.gov/ij/plugins/nifti.html,下载’nifti_io.jar’ 文件
2、找到ImageJ的安装地址,在‘ImageJ\plugins\Input-Output’这个文件夹下粘贴刚才下载的’nifti_io.jar’文件,同时替换掉该同名文件
3、重新启动ImageJ,在File -> Import -> NIfTI-Analyze查看是否存在,如果存在表示安装成功
2.3、SimpleITK配置
1、转到环境变量配置页,在环境变量里面添加SITK_SHOW_COMMAND ,路径指向ImageJ.exe
2、在环境变量中的path中添加%SITK_SHOW_COMMAND%
接下来将编译软件或者‘cmd’界面关闭后重新打开应该就可以使用show()函数了,大功告成!