Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何进行阈值化?_Python_Image Processing_Simpleitk_Image Thresholding - Fatal编程技术网

Python 如何进行阈值化?

Python 如何进行阈值化?,python,image-processing,simpleitk,image-thresholding,Python,Image Processing,Simpleitk,Image Thresholding,当我应用阈值时,我得到一个错误: import SimpleITK as sitk img = sitk.ReadImage("Sub1.png") img=img>20 错误是: RuntimeError Traceback (most recent call last) <ipython-input-48-a1d4494dca15> in <module>() 1 #img = sitk.I

当我应用阈值时,我得到一个错误:

import SimpleITK as sitk
img = sitk.ReadImage("Sub1.png")
img=img>20
错误是:

RuntimeError                              Traceback (most recent call last)
<ipython-input-48-a1d4494dca15> in <module>()
      1 #img = sitk.Image(img.GetSize(), sitk.sitkUInt8)
----> 2 img=img>20

~/sitkpy/lib/python3.5/site-packages/SimpleITK/SimpleITK.py in __gt__(self, other)
   4424            return Greater( self, other )
   4425         try:
-> 4426            return Greater( self, float(other) )
   4427         except (ValueError, TypeError):
   4428            return NotImplemented

~/sitkpy/lib/python3.5/site-packages/SimpleITK/SimpleITK.py in Greater(*args)
  34345 
  34346     """
> 34347     return _SimpleITK.Greater(*args)
  34348 class GridImageSource(ImageFilter_0):
  34349     """

RuntimeError: Exception thrown in SimpleITK Greater: /tmp/SimpleITK/Code/Common/include/sitkMemberFunctionFactory.hxx:209:
sitk::ERROR: Pixel type: vector of 8-bit unsigned integer is not supported in 2D byN3itk6simple18GreaterImageFilterE
运行时错误回溯(最近一次调用)
在()
1#img=sitk.Image(img.GetSize(),sitk.sitkUInt8)
---->2 img=img>20
~/sitkpy/lib/python3.5/site-packages/simpletk/simpletk.py in(self,other)
4424返回较大值(自身、其他)
4425尝试:
->4426返回较大值(自身、浮动(其他))
4427除外(ValueError,TypeError):
4428返回未执行
~/sitkpy/lib/python3.5/site-packages/simpletk/simpletk.py,小写(*args)
34345
34346     """
>34347返回值_simpletk.更大(*args)
34348类GridImageSource(ImageFilter_0):
34349     """
运行时错误:SimpleTk中引发异常:/tmp/simpleTk/Code/Common/include/sitkMemberFunctionFactory.hxx:209:
sitk::错误:像素类型:2D byN3itk6simple18GreaterImageFilterE中不支持8位无符号整数的向量
我应用了
img=sitk.Image(img.GetSize(),sitk.sitkUInt8)
但是我得到了一个黑色图像

Python中是否有类似于
double(img)
im2bw
的选项?工作会正常化吗? 打印(img)提供了以下信息

矢量图像(0x2f57af0)RTTI类型信息:itk::矢量图像引用计数:1修改时间:1289调试:关闭对象名称:观察者: 无源:(无)源输出名称:(无)发布数据:关闭发布数据:假全局发布数据:关闭管道时间:1278更新时间:1288实时戳:0秒最大可能区域: 尺寸:2 索引:[0,0] 大小:[305,305]缓冲区区域: 尺寸:2 索引:[0,0] 大小:[305,305]请求的区域: 尺寸:2 索引:[0,0] 大小:[305,305]间距:[1,1]原点:[0,0]方向:1

索引点矩阵:1 0 1

PointToIndexMatrix:1 0 1

反向:1 0 1

矢量长度:4像素容器: ImportImageContainer(0x24ba950) RTTI类型信息:itk::ImportImageContainer 参考计数:1 修改时间:1285 调试:关闭 对象名称: 观察员: 没有一个 指针:0x30bb390 容器管理内存:true 尺寸:372100 容量:372100

您的异常内容如下:

运行时错误:SimpleTk中引发异常:/tmp/simpleTk/Code/Common/include/sitkMemberFunctionFactory.hxx:209:
sitk::错误:像素类型:2D byN3itk6simple18GreaterImageFilterE中不支持8位无符号整数的向量

尝试运行:

将SimpleTk作为sitk导入
img=sitk.ReadImage(“Sub1.png”)
打印图像

这意味着您的输入图像不是标量图像,而是包含多个组件的图像。“>”或
sitk.gratterhan
不支持矢量图像。它只支持标量图像

问题是:你的图像应该是RGB图像吗?您想如何处理多通道图像的“阈值化”问题?

您的例外情况如下:

运行时错误:SimpleTk中引发异常:/tmp/simpleTk/Code/Common/include/sitkMemberFunctionFactory.hxx:209:
sitk::错误:像素类型:2D byN3itk6simple18GreaterImageFilterE中不支持8位无符号整数的向量

尝试运行:

将SimpleTk作为sitk导入
img=sitk.ReadImage(“Sub1.png”)
打印图像

这意味着您的输入图像不是标量图像,而是包含多个组件的图像。“>”或
sitk.gratterhan
不支持矢量图像。它只支持标量图像


问题是:你的图像应该是RGB图像吗?您想如何处理多通道图像的“阈值化”?

实际上,我使用itksnap将nii图像保存到png中。如何设置阈值?我用print编辑了这个问题。你能帮我从305*305*39 nii imageprint(img.GetNumberOfComponentsPerPixel())中提取切片吗?return 4听起来你的错误是将医学图像保存为png。“帮我提取?”这是一个不同的问题。输出格式不良的
打印
的编辑问题表明组件数量为4。组件数量为4。实际上,我使用itksnap将nii图像保存到png中。如何设置阈值?我用print编辑了这个问题。你能帮我从305*305*39 nii imageprint(img.GetNumberOfComponentsPerPixel())中提取切片吗?return 4听起来你的错误是将医学图像保存为png。“帮我提取?”这是一个不同的问题。输出格式不良的
print
编辑问题表明组件数量为4。组件数量为4