前提・実現したいこと
ハフ変換で円検出を行っています。
最終的に実現したいことは、検出した2つの円の中心間の距離の算出です。
そのために円の座標情報を得たいです。
python
1print (circles)
で返される値は円の中心座標と円の直径?を示しているという認識でよろしいでしょうか?
また、円の中心間の距離を算出する方法もあわせて教えていただけますと幸いです。
該当のソースコード
python
1import cv2 2import numpy as np 3 4img = cv2.imread('C:/Users/ito/Anaconda3/envs/Sample/pic/testimg/IMG_0634.jpg', 0) 5img = cv2.medianBlur(img, 5) 6cimg = cv2.cvtColor(img, cv2.COLOR_GRAY2BGR) 7 8circles = cv2.HoughCircles(img, cv2.HOUGH_GRADIENT, 1, 30, param1=50, param2=30, minRadius=0, maxRadius=0) 9 10circles = np.uint16(np.around(circles)) 11for i in circles[0,:]: 12 cv2.circle(cimg, (i[0], i[1]), i[2], (0,255,0), 2) 13 cv2.circle(cimg, (i[0], i[1]), 2, (0,0,255), 3) 14 15 16print(circles) 17 18cv2.imshow('detected circles', cimg) 19cv2.waitKey(0) 20cv2.destroyAllWindows 21cv2.imwrite('C:/Users/ito/Anaconda3/envs/Sample/pic/result/Hough_sample01.jpg', cimg)
補足情報(FW/ツールのバージョンなど)
windows7 professional
python3.6.5
opencv3.3.1

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/17 10:15
2018/10/17 10:16
2018/10/17 10:19
2018/10/17 10:21