【发布时间】:2015-08-10 23:20:21
【问题描述】:
我正在尝试通过 openCV 捕获视频,然后对视频应用自适应阈值(以转换为黑白)。问题是这段代码非常频繁地抛出错误。我正在玩自适应阈值函数中的最后两个数字。
cv2.error: /tmp/opencv-UA2sOU/opencv-2.4.9/modules/imgproc/src/thresh.cpp:797: error: (-215) blockSize % 2 == 1 && blockSize > 1 in function adaptiveThreshold
我似乎无法理解导致此问题的原因。
import numpy as np
import cv2
import pylab as pl
cap = cv2.VideoCapture(0)
# take first frame of the video
ret,frame = cap.read()
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
thresh = cv2.adaptiveThreshold(gray,255,cv2.ADAPTIVE_THRESH_MEAN_C,cv2.THRESH_BINARY,40,15)
cv2.imshow('frame',thresh)
if cv2.waitKey(1) & 0xFF == ord('q'):
#cv2.imwrite("snap.jpg", thresh)
break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()
【问题讨论】: