0

即使在升级了我的 opencv 库并卸载并重新安装了几次之后,上述错误仍然存​​在。

还有其他解决此错误的提示吗?

这是我的源代码, cv2.imshow() 函数开始给我错误。

cap = cv2.VideoCapture(0)
while True:
    _, frame = cap.read()

    sobelx = cv2.Sobel(frame, cv2.CV_64F, 1, 0, ksize=5)
    sobely = cv2.Sobel(frame, cv2.CV_64F, 0, 1, ksize=5)
    cv2.imshow('frame', frame)
    cv2.imshow('sobelx', sobelx)
    cv2.imshow('sobely', sobely)

    if cv2.waitKey(5) & 0xFF == 27:
        break

 cv2.destroyAllWindows()
 cap.release()

我收到的错误消息:

    cv2.imshow('sobelx', sobelx)
    cv2.error: OpenCV(4.0.0) C:\projects\
    opencv-python\opencv\modules\highgui\src\window_w32.cpp:1230: 
    error: (-215:Assertion failed) dst.data == (uchar*)dst_ptr in function 'cvShowImage'

另一方面, cv2.imshow() 函数适用于以下代码。请注意:下面的代码不会对视频提要应用任何过滤器,如拉普拉斯或索贝尔。

cap = cv2.VideoCapture(0)
while True:
    _, frame = cap.read()
    cv2.imshow('frame', frame)

    if cv2.waitKey(5) & 0xFF == 27:
        break

cv2.destroyAllWindows()
cap.release()
4

1 回答 1

0

这个Github 问题讨论中,提到这个错误在 OpenCV 4.0.1 中已修复。根据您收到的错误,您似乎拥有 4.0.0,因此可能需要再次升级。

于 2019-03-22T05:07:24.510 回答