如何使用 cv2.face 和 cv2 使用 QT 创建窗口而不会出错?

Posted

技术标签:

【中文标题】如何使用 cv2.face 和 cv2 使用 QT 创建窗口而不会出错?【英文标题】:How can I use cv2.face and cv2 with creating a window by using QT, without getting errors? 【发布时间】:2020-05-31 06:01:36 【问题描述】:

我想使用 openCV,但是使用不同的 openCV 版本会出现不同的错误。

例如,当我使用 pip install opencv-python-headless 代码时:

import cv2

img = cv2.imread('lena.jpg', -1)

cv2.imshow('image', img)
cv2.waitKey(5000)
cv2.destroyAllWindows()

工作正常。但是当我想使用face 属性时,它会因错误而崩溃

Traceback (most recent call last):
  File "main.py", line 9, in <module>
    print(cv2.face.LBPHFaceRecognizer_create())
AttributeError: module 'cv2.cv2' has no attribute 'face'

要解决这个问题,我需要使用sudo python3 -m pip install opencv-contrib-python 安装openCV。但是如果我现在执行上面的脚本,就会报错

qt.qpa.plugin: Could not find the Qt platform plugin "cocoa" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

出现。

那么我怎样才能避免这两个错误呢?

编辑: 正常安装pip install opencv-python 会出现两个错误。所以找不到face属性也无法使用QT创建窗口

【问题讨论】:

问题重复,链接:***.com/questions/51853018/…可以给你答案。 没有原因,当我使用正常方式安装它时,两种情况下都会出现错误。 为什么这是一个不好的问题?这两个问题在 *** 和 github 上都很少用不好的解决方案来回答。而且这个特殊问题在任何平台上都没有被问到。 【参考方案1】:

原来最新的opencv-python版本坏了,我只需要pip install opencv-contrib-python==4.1.0.25

【讨论】:

以上是关于如何使用 cv2.face 和 cv2 使用 QT 创建窗口而不会出错?的主要内容,如果未能解决你的问题,请参考以下文章

matrix.cpp:310: 错误: (-215) s >= 0 in function cv::setSize

将CV2 numpy数组转换为QImage时如何配置颜色?

Windows:Python + OpenCV + Qt:“import cv2”给出“dll not found”错误

OpenCV中LBPH人脸识别器识别人脸实战(附Python源码)

如何在多个图像上使用 cv2.split 和 cv2.merge?

如何在 cv2 和 python 中使用霍夫圆?