【问题标题】:skimage.io.imshow(winname, image_arr) gives TypeError: unhashable type: 'numpy.ndarray'skimage.io.imshow(winname, image_arr) 给出 TypeError: unhashable type: 'numpy.ndarray'
【发布时间】:2021-03-28 10:23:57
【问题描述】:

代码如下:

#  https://github.com/anilkay/ComputerVisionExamples/blob/master/beatian.ipynb
import cv2
import matplotlib.pyplot as plt
import skimage.io as imageio
import numpy as np
import pandas as pd

import sys

we_photo=cv2.imread(r"data\photos\we_small.jpg")

if we_photo is None:
    sys.exit("Could not read the image.")

winname = "Photo to analize"
cv2.namedWindow(winname) 
imageio.imshow(winname, we_photo)

我从here 中选择了此代码。我只为我的大照片添加了窗口。这段代码 给出输出:

Traceback (most recent call last):
  File "d:\OneDrive\=Книги=\MachineLearning\ML_code_PyTorch\recognition\dlib68_one_image.py", line 18, in <module>
    imageio.imshow(winname, we_photo)
  File "D:\Games\conda\envs\dlib\lib\site-packages\skimage\io\_io.py", line 158, in imshow
    arr = call_plugin('imread', arr, plugin=plugin)
  File "D:\Games\conda\envs\dlib\lib\site-packages\skimage\io\manage_plugins.py", line 200, in call_plugin
    _load(plugin)
  File "D:\Games\conda\envs\dlib\lib\site-packages\skimage\io\manage_plugins.py", line 287, in _load
    if plugin in find_available_plugins(loaded=True):
TypeError: unhashable type: 'numpy.ndarray'

不知道该怎么想。该代码在 VS Code 中在 Windows10/Anaconda 上运行。
没有像imageio.imshow(we_photo) 这样的窗口已完成但不显示任何内容。

【问题讨论】:

  • 出于某种原因,您尝试使用 skimage.io.imshow,就好像它是 cv2.imshow - 它不是,它有一个 different signature
  • 谢谢。所以这个代码的来源现在如果错了。谢谢。你能写下答案吗?我会标记你的解决方案

标签: python opencv visual-studio-code


【解决方案1】:

试试这个:

import cv2


we_photo=cv2.imread(r"data\photos\we_small.jpg")

if we_photo is None:
    sys.exit("Could not read the image.")

winname = "Photo to analize"
cv2.imshow(winname, we_photo)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-31
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多