ML, OpenCV/OpenCV Lane Detection(2)
-
OpenCV 차선 인식 (2)
Edge 검출을 활용한 차선 인식 HSV, RGB를 통한 차선 인식은 색, 범위를 지정해줘야 하는 문제가 있었고 특히 그림자, 차선이 끊긴 구간에 취약했습니다. 문제를 해결하기 위해 Edge 검출을 활용했습니다. 우선 더욱 효과적인 Edge검출을 위해 Gaussian Filter를 사용해서 잡음을 제거했습니다. 잡음이 제거된 영상을 회색화 시킨 후 밝기 평활화를 통해 밝기 값을 추출한 후 Sobel, Canny 두 가지 필터를 사용해 보고, 비교했습니다. 먼저 Sobel필터가 대각선에 민감하게 반응하도록 2D Filter에 직접 필터 값을 대입했습니다. sobelX = np.array([[0, 1, 2], [-1, 0, 1], [-2, -1, 0]]) gx = cv2.filter2D(equ_frame, ..
2019.09.05 -
OpenCV 차선 인식 (1)
준비 운영체제 : Windows 10 언어 : Python 파이썬에서 OpenCV를 사용하기 위해 cv2 라이브러리를 설치했습니다. 추가로 numpy 라이브러리도 사용합니다. 보편적으로 아래와 같은 순서를 거쳐 차선을 인식합니다. 하지만 위 순서와는 조금 다르게 HSV 범위 값을 사용해서 색 추출을 활용한 차선 인식을 시도해봤습니다. HSV 차선 인식 차선 인식을 하기 위해 가장 먼저 차선의 색인 노란색과 흰색의 HSV범위 값이 필요했습니다. HSV 범위 값 추출은 마우스 이벤트를 활용해 10초 간격, 픽셀 단위로 추출했습니다. 영상의 프레임마다 차선의 명도가 다르기 때문에 단일 값으로 범위를 주지 않고 추출한 값의 최댓값과 최솟값으로 HSV 범위를 지정했습니다. frame = cv2.GaussianBl..
2019.09.03