-
HoughLines랑 HoughLinesP의 차이컴공지식/컴퓨터비전 2024. 9. 25. 23:44
결과 값 차이로는
HoughLines()는 직선의 방정식을 찾아준다. 즉, 직선의 기울기와 거리를 찾는 거다.
vector<Vec2f> 형식의 벡터로 결과를 반환한다.
여기서 Vec2f는 두 개의 실수 값(소수점 포함)으로 이루어진 벡터인데, rho와 theta 값을 나타낸다.
요약하자면, HoughLines는 감지된 직선의 거리와 각도 정보를 주는 거다.
직선이 어느 방향으로, 얼마나 떨어져 있는지를 알 수 있다.
HoughLinesP()는 확률적 허프 변환(Probabilistic Hough Transform) 을 사용해서 직선을 찾는다.
이 방법은 더 효율적이고, 직선의 시작점과 끝점 좌표를 직접 제공한다.
vector<Vec4i> 형식의 벡터로 결과를 반환한다.
Vec4i는 4개의 정수 값으로 이루어진 벡터인데, 직선의 두 좌표를 나타낸다.
(x1,y1) 직선의 시작점과
(x2,y2) 직선의 끝점
요약하자면, HoughLinesP는 직선의 시작점과 끝점을 정확히 알려준다.
즉, 이 직선이 어디에서 어디까지 이어지는지를 확실히 알 수 있다.
기본 파라미터 차이로는
HoughLines()는 rho와 theta와 관련된 파라미터들이 기본값으로 설정돼 있다.
이 함수는 정확한 직선 검출을 원할 때 쓰고, 직선 자체보다는 방향과 거리에 더 초점을 맞춘다.
HoughLinesP()는 직선의 길이와 관련된 파라미터가 기본값으로 설정돼 있다.
여기서 중요한 파라미터는
최소 직선 길이(minLineLength) : 검출할 수 있는 직선의 최소 길이
최대 허용 간격(maxLineGap) : 같은 직선 위에서 끊어진 점들 간의 최대 허용 간격
등이 있다.
이 함수는 직선의 연결성과 구체적인 좌표가 중요한 경우에 사용된다.
조금 더 실용적으로 직선을 그릴 수 있다.
'컴공지식 > 컴퓨터비전' 카테고리의 다른 글
적응형 임계값(Adaptive Thresholding)이란 (0) 2024.10.02 Global Thresholding이란 (1) 2024.10.02 HoughLinesP를 사용한 확률적 허프 변환 코드 (0) 2024.09.25 HoughLines를 이용한 직선 감지 코드 (0) 2024.09.25 Canny 엣지 검출기 구현 (0) 2024.09.25