#numpy #opencv
#numpy #opencv
Вопрос:
Я получаю ошибку при запуске кода python для обнаружения движения глаз, я следую инструкциям в https://www.youtube.com/watch?v=kbdbZFT9NQI
#https://www.youtube.com/watch?v=kbdbZFT9NQI
import cv2
import numpy
cap = cv2.VideoCapture("C:\Users\sinsbv\Desktop\Project\Kaggle\Tutorial_Mini_Project\open_cv\eye_recording.flv")
while True:
ret,frame = cap.read()
roi = frame[269:795,537:1416]
gray_roi = cv2.cvtColor(roi,cv2.COLOR_BGR2GRAY)
gray_roi = cv2.GaussianBlur(gray_roi , (7 , 7) ,0)
_,threshold = cv2.threshold(gray_roi,5,255,cv2.THRESH_BINARY_INV)
_, contours = cv2.findContours ( threshold , cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE )
for cnt in contours:
# ctr = numpy.array(cnt).reshape((-1,1,2)).astype(numpy.int32)
cv2.drawContours(roi,cnt , -1,(0,0,255) ,3)
cv2.imshow("threshold" , threshold)
cv2.imshow("gray roi" , gray_roi)
cv2.imshow("Roi" , roi)
key = cv2.waitKey(30)
if key == 27:
break
cv2.destroyAllWindows()
ожидаемый результат — обнаружение движения глаз
фактический результат — ошибка ниже,
Обратная трассировка (последний последний вызов): файл «C:/Users/sinsbv/Desktop/Project/Kaggle/Tutorial_Mini_Project/open_cv/open_cv.py «, строка 14, в cv2.drawContours(roi, cnt, -1,(0,0,255),3) cv2.ошибка: OpenCV(4.0.0) C:projectsopencv-pythonopencvmodulesimgprocsrcdrawing.cpp:2509 : ошибка: (-215: ошибка утверждения) npoints > 0 в функции ‘cv::drawContours’
Комментарии:
1. Это
contours, _ = cv2.findContours (threshold, cv2.RETR_LIST, cv2.CHAIN_APPROX_SIMPLE)
, смотрите документ .2. хорошо, позвольте мне попробовать это.
3. это сработало!! спасибо, Ханширсе 🙂