在python中配置simpleITK时,遇到了以下这个问题。
simpleITK已经通过pip install安装,但是sitk.show()功能无法正常使用,类似如下
实例代码
import SimpleITK as sitk
import sys
import os
example = sitk.ReadImage("filename")
sitk.show(example)
在sitk.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: [参数错误。]”
原因是SimpleITK的图像显示功能是通过类似ITK-snap,ImageJ进行实现的,所以在进行sitk.show()之前,需要对此进行设置才能正常实现。
这里参考stack overflow别人给的意见https://stackoverflow.com/questions/43215774/can-not-linksimpleitkshow-with-fiji
ImageJ Installation
Go to https://imagej.nih.gov/ij/download.html
Make sure to download the bundled with 64-bit Java 1.8.0_112 version
ImageJ Setup
Go to https://imagej.nih.gov/ij/plugins/nifti.html
Download nifti_io.jar
Go to C:\blah\blah\ImageJ\plugins\Input-Output
Delete the existing nifti_io.jar file from the folder
Copy the downloaded nifti_io.jar file into the folder
Restart ImageJ and check if File -> Import -> NIfTI-Analyze is there
If it is there, the plugin was successfully installed
SimpleITK Setup
Find the path where your ImageJ.exe file exists
Open cmd
Type in setx SITK_SHOW_COMMAND "C:\blah\blah\ImageJ\ImageJ.exe"
You should get the message SUCCESS: Specified value was saved
Check if everything works
Restart your text editor or IDE (if it was already open)
Run your code
除了下载ImageJ操作,另外的很简单。
在环境变量里面添加SITK_SHOW_COMMAND ,以imageJ为例,路径指向ImageJ-win64.exe 在环境变量中的path中添加%SITK_SHOW_COMMAND%到此这篇关于python sitk.show()与imageJ结合使用常见的问题的文章就介绍到这了,更多相关sitk.show()结合imageJ内容请搜索软件开发网以前的文章或继续浏览下面的相关文章希望大家以后多多支持软件开发网!
您可能感兴趣的文章:Python库skimage绘制二值图像代码实例Python 实现Image和Ndarray互相转换Python 实现将数组/矩阵转换成Image类Python Pillow.Image 图像保存和参数选择方式Python 实现OpenCV格式和PIL.Image格式互转详解python opencv、scikit-image和PIL图像处理库比较Python imageio读取视频并进行编解码详解Python图像处理模块ndimage用法实例分析在python image 中安装中文字体的实现方法解决Python3用PIL的ImageFont输出中文乱码的问题