1
법원의 윤곽을 감지하려고하지만 이미지의 직사각형 모양을 인식 할 수 없습니다. Python/OpenCV - 공중 이미지에서 농구 코트 라인을 감지합니다.
b,g,r = cv2.split(img)
rgb_img = cv2.merge([r,g,b])
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
edges = cv2.Canny(gray,100,200,apertureSize = 3)
lines = cv2.HoughLines(edges,1,np.pi/180,200)
for rho,theta in lines[0]:
a = np.cos(theta)
b = np.sin(theta)
x0 = a*rho
y0 = b*rho
x1 = int(x0 + 1000*(-b))
y1 = int(y0 + 1000*(a))
x2 = int(x0 - 1000*(-b))
y2 = int(y0 - 1000*(a))
cv2.line(img,(x1,y1),(x2,y2),(0,0,255),2)
검출 라인
는 이미지의 우측에 표시되는 적색이다.* HoughLinesP()도 시도했지만 필요하지 않은 라인을 선택합니다. 임계 값과 최소 및 최대 라인 길이를 조정 해 보았습니다.
** Input Image
입력 이미지를 게시 할 수 있습니까? – GaneshTata
편집 및 게시 @GaneshTata – Reward
당신은 그냥 캐니와 hough 직접하여 좋은 결과를 얻을 수 없습니다. https://i.stack.imgur.com/mtLA3.png 그리고 당신은 또한 당신이 정말로 원하는 윤곽을 말하지 않습니다. 모든 흰색 직선? 흰둥이? – Silencer