如何修复在我自己的图像上运行本地 Otsu 阈值示例的错误?

问题描述

我基本上是在尝试预处理图像以获得更好的 OCR 识别。我决定使用 scikit-image(或者我应该使用其他东西)?

我正在按照此处显示的示例进行操作:

https://scikit-image.org/docs/stable/auto_examples/applications/plot_thresholding.html#id4

而且,我已经下载了这个脚本:

https://scikit-image.org/docs/stable/_downloads/939bd4a228ba1525a5e2896c819e2218/plot_thresholding.py

为了用我自己的图像测试它,我已经替换了这一行

img = img_as_ubyte(data.page())

这样:

from skimage import io

img = img_as_ubyte(io.imread('test.jpg'))

但是,我收到此错误:

File "/Users/janine/Downloads/test.py",line 207,in <module>
  local_otsu = rank.otsu(img,selem)
File "/usr/local/lib/python3.9/site-packages/skimage/filters/rank/generic.py",line 1399,in otsu
  return _apply_scalar_per_pixel_3D(generic_cy._otsu_3D,image,File "/usr/local/lib/python3.9/site-packages/skimage/filters/rank/generic.py",line 278,in _apply_scalar_per_pixel_3D
  image,selem,out,mask,n_bins = _handle_input_3D(image,line 199,in _handle_input_3D
  raise ValueError('Image dimensions and neighborhood dimensions'
    ValueError: Image dimensions and neighborhood dimensionsdo not match

我尝试了多个图像,所以问题不是图像。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)