現在、円の検出をリアルタイムで行うプログラムを作成しています。以下に示すものが実際のプログラムです。
python
1コード 2import numpy as np 3import cv2 4cap = cv2.VideoCapture(0) 5while True: 6 ret, frame = cap.read() 7 gray = cv2.cvtColor(frame, cv2.COLOR_RGB2GRAY) 8 gray = cv2.GaussianBlur(gray, (33,33), 1) 9 circles = cv2.HoughCircles(gray, cv2.HOUGH_GRADIENT, 1, 60, param1=10, param2=85, minRadius=10, maxRadius=80) 10 if circles is not None: 11 circles = np.uint16(np.around(circles)) 12 for i in circles[0,:]: 13 cv2.circle(frame,(i[0],i[1]),i[2],(0,0,255),2) 14 cv2.circle(frame,(i[0],i[1]),2,(0,0,255),3) 15 16 cv2.imshow('preview', frame) 17 key = cv2.waitKey(10) 18 if key == ord("q"): 19 break 20 21cv2.destroyAllWindows() 22
winsowsのAnacondaのpythonとOpenCVで上記のプログラムを起動させると動きますが、同じプログラムをラズパイで動かそうとするとエラーが起きてしまいます。
エラーは以下の通りです。
circles = cv2.HoughCircles(gray, cv2.HOUGH_GRADIENT, 1, 60, param1=10, param2=85, minRadius=10, maxRadius=80)
AttributeError: "module" object has has no attribute "HOUGH_GRADIENT"
pythonのバージョンは2.7.3、OpenCVのバージョンは2.4.1と、研究室のものを使っているため古めです。
回答の方よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/20 06:23
2018/07/20 06:26
2018/07/20 13:37
2018/07/20 13:46
2018/07/20 13:52