Python OpenCV imshow 失败
Posted
技术标签:
【中文标题】Python OpenCV imshow 失败【英文标题】:Python OpenCV imshow fails 【发布时间】:2018-02-01 10:59:11 【问题描述】:我在我的 Ubuntu 14.04 系统上安装了 opencv,使用
pip install python-opencv
我的 Python 版本是 2.7.14
import cv2
cv2.__version__
告诉我我有 OpenCV 3.4.0 版。
之后我想按照OpenCV网站上的教程进行操作
import numpy as np
import cv2 as cv
img = cv.imread('messi5.jpg',0)
print img
到目前为止它工作正常,但是我应该进入
cv.imshow('image',img)
我收到以下错误:
QObject::moveToThread: Current thread (0x233cdb0) is not the object's thread (0x2458430).
Cannot move to target thread (0x233cdb0)
QObject::moveToThread: Current thread (0x233cdb0) is not the object's thread (0x2458430).
Cannot move to target thread (0x233cdb0)
QPixmap: Must construct a QApplication before a QPaintDevice
有谁知道问题出在哪里?
【问题讨论】:
“print img”显示什么? 不相关:为什么是 2.7?为什么不是 3.6.x? 试试from matplotlib import pyplot as plt
。
@jms print img 显示 rgb 值
@Thomas Kühn 这似乎没有任何改变
【参考方案1】:
尝试检查您正在阅读的图像是否正在加载
image = cv2.imread(filepath,0) #0 for gray scale
if image is None:
print "Cant Load Image"
else:
cv2.imshow("Image", image)
cv2.waitKey(0)
【讨论】:
【参考方案2】:显然
pip install python-opencv
根本不工作,不应使用。在我从他们的网站安装 Opencv 后,它就可以工作了
【讨论】:
【参考方案3】:在ubuntu上似乎很难安装opencv,我终于用docker镜像搞定了
https://hub.docker.com/r/jjanzic/docker-python3-opencv/
或者您可以下载源代码并按照说明进行安装 https://milq.github.io/install-opencv-ubuntu-debian/ 使用 bash 脚本
【讨论】:
以上是关于Python OpenCV imshow 失败的主要内容,如果未能解决你的问题,请参考以下文章