자율주행 : 차선 추출 및 주행 이론
<차선추출>
ROI(Region Of interest)
=> 이미지의 관심 영역만을 추출하는 방법, 전체 이미지에서 필요한 부분만을 추출하여, 이미지 처리에 사용
Perspective Transform (Bird Eye View Transform)
=> 이미지의 특정 점들을 새로운 점으로 변환하는 행렬을 계산하고 계산된 행렬을 기반으로 이미지를 변환하여 새로운 시점의 이미지로 변경, 차선을 위쪽으로 본 듯한 형태의 이미지로 변경
Color Space Conversion
=> RGB를 대신해 이미지를 HSV, HSL, YUV로 나타내는 기법
=> 차선을 다양한 형태로 확인할 수 있고 차선을 쉽게 구분 가능한 space로 변환하여 차선 추출을 진행할 수 있다.
Image Threshod (Binary Image)
=> 이미지를 이진화 시켜, 0 또는 1만 존재하는 이미지로 변경.
=> 필요한 부분은 1, 필요 없는 부분은 0으로 변경 (차선=1, 그 외=0)
Sliding WIndow
=> WIndow 크기와 개수를 지정하고, 탐색할 최소 pixel의 개수를 명시한다.
=> Histogram을 통해 픽셀의 분포를 분석한 후 시작점을 정해 순차적으로 이미지를 탐색
Histogram 분석
=> Binary bird eye view 영상을 y축 기준으로 픽셀의 분포를 histogram화 한다.
=> Histogram을 절반으로 나누어 좌우 histogram에서 가장 값이 큰 index를 찾는다.
=> 찾은 index부터 sliding window를 진행한다.
Sliding window
=> Searching 에 사용할 window의 개수, window의 크기, 탐색할 최소 픽셀의 개수를 지정.
=> Sliding window를 진행하며 윈도우 내 설정한 pixel개수 이상이 탐지 되면, 픽셀들의 x좌표 평균으로 업데이트.
=> 진행 이후 최종으로 업데이트 된 x값을 사용하여 좌,우 차선의 2차 함수 계수 추정후 2차 함수 추정
=> 추정한 결과를 통해 차선의 픽셀 좌표 확인.
<차선 기반 주행>
=> 검출된 차선을 이용한 주행
=> 현재 카메라가 차량 가운데에 위치한다고 가정
=> 카메라 렌즈 기준으로 왼쪽 차선 및 오른쪽 차선과의 거리를 계산
=> Bird Eye View에서 녹색 Center Line을 기준으로 각 차선 사이의 픽셀 사이 거리 계산.