라즈베리파이4에 OpenCV 3.4.3 설치 후 python3으로 라즈베리파이4에서 실행 했을 때 잘 됨.
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
while True:
ret, frame = cap.read()
roi = frame[269: 795, 537: 1416]
rows, cols, _ = roi.shape
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_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = sorted(contours, key=lambda x: cv2.contourArea(x), reverse=True)
for cnt in contours:
(x,y,w,h) = cv2.boundingRect(cnt)
cv2.rectangle(roi, (x,y), (x+w, y+h), (255, 0, 0), 2)
cv2.line(roi, (x+int(w/2), 0), (x+int(w/2), rows), (0, 255, 0), 2)
cv2.line(roi, (0, y+int(h/2), (cols, y+int(h/2)), (0,255,0), 2)
#cv2.drawContours(roi, [cnt], -1, (0,0,255),3)
break
cv2.imshow("Threshold", threshold)
cv2.imshow("gray roi", gray_roi)
cv2.imshow("Roi", roi)
key = cv2.waitKey(30)
if key == 27:
break
cv2.destroyAllWindows()
https://wiserloner.tistory.com/1099
https://www.youtube.com/watch?v=kbdbZFT9NQI&t=155s
https://pysource.com/2019/01/04/eye-motion-tracking-opencv-with-python/
_, contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
여기서 안된다ㅠ
-> 위의 코드는 opencv3 기준으로 작성되었는데 나는 opencv4에 위의 코드를 넣었으니 안됐음. 댓글보니 contours 부분을 수정해보라고 수정하면 된다고 해서 했는데 mask 어쩌구 오류 뜨면서 안됨,
그래서 결국 opencv3을 깔아본다..
Leo September 20, 2019 at 11:13 am
It seems the problem is the way findContours returns data depending on the installed version.
Try changing from:
_, contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
To:
contours, _ = cv2.findContours(threshold, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
And it should work.
roi를 저렇게 설정해주면 기존 화면 영역(검은 테두리) 에서 붉은 테두리 로 크롭되어 조정이 된다.
contours
https://m.blog.naver.com/samsjang/220516697251
'project > 2020.12-02 (라즈베리파이) 눈으로운전하는휠체어' 카테고리의 다른 글
라즈베리파이4에 OpenCV 3.4.3 설치 -완료 (0) | 2021.01.17 |
---|---|
라즈베리파이4에 opencv3.4.0 설치하기 -실패 (0) | 2021.01.16 |
메뉴얼 (0) | 2021.01.15 |
라즈베리파이4 opencv설치 :컴파일 (2) | 2021.01.02 |
라즈베리파이 웹캠 연결 (0) | 2020.12.24 |