OpenCV 中的奇怪错误
Weird Error in OpenCV
我正在使用 OpenCV 在 python 中编写一个程序,它从录像我的网络摄像头记录。我还使用了两个轨迹条来控制阈值(以便了解这些值如何改变此边缘检测器的输出)。
我写的代码如下:
import cv2
import numpy as np
def nothing(x):
pass
img = np.zeros((300,512,3), np.uint8)
cv2.namedWindow('cannyEdge')
cv2.createTrackbar("minVal", "cannyEdge", 0,100, nothing)
cv2.createTrackbar("maxVal", "cannyEdge", 100,200,nothing)
cap = cv2.VideoCapture(0)
while(True):
minVal = cv2.getTrackbarPos("minVal", "cannyEdge")
maxVal = cv2.getTrackbarPos("maxVal", "cannyEdge")
#capture frame by frame
ret, frame = cap.read()
cv2.imshow('frame', frame)
edge = cv2.Canny(frame,minVal,maxVal)
#display the resulting frame
cv2.imshow('frame', edge)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
#When everything is done, release the capture
cap.release
cv2.destroyAllWindows()
该程序仅用于教育目的,因为我目前正在学习使用 OpenCV。
每次我 运行 代码上面的程序似乎工作正常但我得到以下错误:
GLib-GObject-CRITICAL **:g_object_unref:断言'G_IS_OBJECT (object)'失败
我已经搜索了发生此错误的原因,但没有找到任何有用的信息。我的直觉告诉我,我对轨迹栏的实现是错误的,因此导致了这个错误。
我使用的教程如下:
有人知道为什么会出现这个错误吗?任何帮助将不胜感激!
我是 运行宁 Ubuntu 14.04,OpenCV 3.2.0 和 Python 2.7.6
尝试制作轨迹栏并在同一画面中显示图像window,看看错误是否仍然存在。我打赌不应该。变化:cv2.imshow('cannyEdge', edge)
您是否创建了另一个名为 "frame" 的 window?如果不是,您应该将 'frame' 更改为 'cannyEdge':
cv2.imshow('cannyEdge', frame)
我正在使用 OpenCV 在 python 中编写一个程序,它从录像我的网络摄像头记录。我还使用了两个轨迹条来控制阈值(以便了解这些值如何改变此边缘检测器的输出)。
我写的代码如下:
import cv2
import numpy as np
def nothing(x):
pass
img = np.zeros((300,512,3), np.uint8)
cv2.namedWindow('cannyEdge')
cv2.createTrackbar("minVal", "cannyEdge", 0,100, nothing)
cv2.createTrackbar("maxVal", "cannyEdge", 100,200,nothing)
cap = cv2.VideoCapture(0)
while(True):
minVal = cv2.getTrackbarPos("minVal", "cannyEdge")
maxVal = cv2.getTrackbarPos("maxVal", "cannyEdge")
#capture frame by frame
ret, frame = cap.read()
cv2.imshow('frame', frame)
edge = cv2.Canny(frame,minVal,maxVal)
#display the resulting frame
cv2.imshow('frame', edge)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
#When everything is done, release the capture
cap.release
cv2.destroyAllWindows()
该程序仅用于教育目的,因为我目前正在学习使用 OpenCV。
每次我 运行 代码上面的程序似乎工作正常但我得到以下错误:
GLib-GObject-CRITICAL **:g_object_unref:断言'G_IS_OBJECT (object)'失败
我已经搜索了发生此错误的原因,但没有找到任何有用的信息。我的直觉告诉我,我对轨迹栏的实现是错误的,因此导致了这个错误。
我使用的教程如下:
有人知道为什么会出现这个错误吗?任何帮助将不胜感激!
我是 运行宁 Ubuntu 14.04,OpenCV 3.2.0 和 Python 2.7.6
尝试制作轨迹栏并在同一画面中显示图像window,看看错误是否仍然存在。我打赌不应该。变化:cv2.imshow('cannyEdge', edge)
您是否创建了另一个名为 "frame" 的 window?如果不是,您应该将 'frame' 更改为 'cannyEdge':
cv2.imshow('cannyEdge', frame)