【问题标题】:skimage.color.rgb2gray import troubleskimage.color.rgb2gray 导入麻烦
【发布时间】:2017-04-10 11:05:00
【问题描述】:

我在导入 skimage.color 模块时遇到问题。虽然我可以从 python shell 导入和调用skimage.color.rgb2gray,但我不能在我的应用程序中做同样的事情。

我检查了我 PC 上的 skimage 库位置。他们似乎都很好。但是当我尝试调用 skimage.color 时。从我的代码中它总是给我这个

Traceback (most recent call last):
File "main-video2.py", line 44, in <module>
image = color.rgb2gray(image)

我像这样检查了模块

username@ubuntu:~/dev/computer_vision$ python 
Python 2.7.12 (default, Nov 19 2016, 06:48:10) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
 >>> 
 KeyboardInterrupt
 >>> from skimage import color 
 >>> color 
 <module 'skimage.color' from '/usr/local/lib/python2.7/dist-packages/skimage/color/__init__.pyc'>

任何人都可以帮助我理解为什么我可以从 shell 调用它而不是从我的代码调用它的原因?

【问题讨论】:

  • 我认为这可能不是模块的错——你能把你的代码放在问题中吗? (另外,如果您想知道错误是否是由于模块未正确导入,ImportError 应该出现在您的 image = color.rgb2gray(image) 之后)

标签: python image-processing computer-vision scikit-image


【解决方案1】:

我认为您的 PC 上没有安装其他库。检查THIS PAGE 并验证您是否拥有运行时应用程序所需的库。

此错误的原因是因为尽管skimage 包可能存在并且可用(在python shell 中),但如果没有其他提到的包的支持,您将无法运行任何应用程序,例如:matplotlib、@987654324 @、pilnumpysix

访问链接以安装/更新所需的软件包。

如果您仍有问题,请发表评论。 :)

【讨论】:

  • 感谢@Jeru Luke 的帮助。就像你说的那样,我刚刚解决了这个问题。但是这里忘记更新了。重新安装skimage 解决了我的问题。
  • @enterbutton 正如 sansingh 回答的那样,如果您同时开始在 OpenCV 中编码也很好
【解决方案2】:

我有一个替代方案。您可以使用以下代码将 rgb 图像转换为灰色:

# libraries
import cv2
import Image

# reading an image
image = cv2.imread(path_to_image)

# converting into gray image
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# saving image
Image.fromarray(gray_image).save(save_path)

【讨论】:

  • 谢谢@sansingh,但因为我正在与项目的其他部分一起使用skimage。我不喜欢使用 opencv
【解决方案3】:

如果您使用的是 anaconda,重启内核有助于解决问题。该错误是由于 skimage.color 包本身的循环导入造成的。 在常规代码中,尝试from skimage.io import imshow。为我节省了大量时间More on the subject

【讨论】:

    猜你喜欢
    • 2012-08-23
    • 2014-06-28
    • 2018-10-29
    • 1970-01-01
    • 2019-09-17
    • 2020-12-23
    • 2023-02-05
    • 1970-01-01
    • 2011-01-18
    相关资源
    最近更新 更多