【问题标题】:imshow() opencv python pyinstaller not openingimshow() opencv python pyinstaller 没有打开
【发布时间】:2021-05-03 10:28:53
【问题描述】:

我正在尝试编辑用户将提供的图像,我的 opencv 程序将对该图像执行一些步骤

我在 tkinter 中为此创建了一个 gui,然后我所做的是使用 pyinstaller 将该 tkinter gui 制作成可执行文件

程序的 tkinter 部分工作正常,但是当图像应该使用 imshow 函数显示时,它不起作用

我已经在堆栈溢出中搜索了这个问题,另一个用户似乎有这个问题,但不像 imshow 他想显示视频然后出现了这个问题,但在我的情况下是调用 imshow 时

This is that question

现在,如果我按照这个答案,他们说要进入以下目录:C:\PATH\Python\Python35-32\Lib\site-packages\cv2\opencv_videoio_ffmpeg411.dll;. 但是当我转到站点包时,没有 cv 文件夹,而是有 opencv 4.4.0 并且里面没有 . dll的

更新

它确实给了我错误并显示 tkinter 没有正确安装:

我如何安装 tcl,因为我正在从 pyinstaller 制作 exe

【问题讨论】:

  • minimal-reproducible-example 在哪里?在imshow 之后添加cv2.waitKey(0) 吗?
  • 代码太长,分割成多个python文件,所以这里不能展示。我还添加了 cv2.waitKey(0)
  • @Ahx Actullay 它向我显示了一些错误,错误显示在上面的问题上
  • 我也试过调试,当我不使用 tkinter 时,opencv 工作正常,但只要我想要 tkinter,窗口就永远不会打开并显示此消息

标签: python opencv tkinter


【解决方案1】:

我在使用cv.imshow 时遇到的一个常见问题是您传递给函数的类型不正确。我建议您检查 numpy 数组中元素的类型。例如,如果您使用的是黑白图像,则应将类型转换为“uint8”。

im.astype('uint8')
cv.imshow('Some window name', im)

【讨论】:

  • 我正在使用彩色图像我应该输入什么
  • 我查过,这也是彩色图像的类型。你能粘贴错误的输出吗?
  • 尝试调试您的代码,在文件开头添加行 import pbd 并在您要检查的行之后添加行 pdb.set_trace() 正在运行
猜你喜欢
  • 2017-11-08
  • 2014-04-12
  • 2021-03-30
  • 2023-01-05
  • 2021-12-05
  • 2018-02-14
  • 2017-06-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多