본문 바로가기

카테고리 없음

opencv - hough line transform theory

Hough Tranfrom 에 대해서 배울 것이고, 이것은 자율주행 자동차 등에서 이용된다.

 

Hough Transform 은 어떠한 수학적 형태로 나타낼 수 있는 도형이라면 이를 탐지할 수 있는 유명한 기법이다. 이는 그 도형이 깨졌거나 조금 왜곡되었더라고 탐지할 수 있다. 예를 들어서 도로의 레인 선을 탐지하고 싶을 경우, edge를 detect 하는 방법 (canny edge detection 등등... ) 을 이용해서 모든 픽셀 값들을 다 돌리면서 기울기와 절편 값을 알 수 있지만 이는 매우 복잡한 과정이다.

대신 hough transform 을 이용해서 geometrical shape 모양으로 바꾸어 훨씬 간편하게 할 수 있다.

 

이미지에서 선은 두가지 방법으로 표현될 수 있다.

 

 

첫번째는 그래프로 내타내면

 

 

두번째는 그래프로 나타내면

 

이 방법으로 이용하면 선분을 하나의 점으로 표현할 수 있다. 선분은 여러개의 점이 모여서 만들어지는데 이를 하나의 점으로 표현한다면 훨씬 간편할 것이다.

 

그래서 Hough Transform 에서는 두번째 polar coordinate system을 많이 이용한다.

 

Hough transform 의 알고리즘은 다음 4가지 스텝을 따른다.

 

opencv 에서는 hough line transform 방법 2가지를 지원한다.

1. standard hough transform (houghlines method)

2. probabilistic hough transform (houghlinesP method)

 

다음시간부터 2가지를 차례대로 공부하겠다.