반응형 C++17 [ openCV | C++ ] 차선 검출 이미지 전처리 작업. 왜곡 현상 보정 하는 방법. undistort 함수 사용 리뷰 🚀 서론(참고한 글) Camera Calibration 체스보드를 이용하는 이유 보정 작업 결과(with 와이드 렌즈) CODE 이미지 프레임에 반영되어 있는 왜곡현상을 없애주기 위한 작업입니다. 이런 왜곡현상은 특정 카메라의 고유특성에 의해서 발생되는데, opencv 함수를 이용해서 보정할 수 있습니다. opencv에서는 체스보드 이미지를 활용하는 함수가 있으며, 차선 검출을 구현하기 위한 전처리 작업으로서 많이 사용되는 것 같습니다. 이 글은 아래 글 들을 참고해서 학습하며 작성하였습니다. 왜곡 보정 작업 외에도 차선 검출 파이프 라인의 전반적인 내용들이 잘 설명되어 있으니 참고하면 좋을 것 같습니다. 1. Calibrating & Undistorting with O.. 2021. 5. 8. [ openCV | C++ ] fillPoly 함수 사용 방법.(픽셀 필터링 활용 용도.) 어떤 함수 ❓ 🤔 "그리는" 함수입니다. 다각형 형상을 이미지에 표현합니다. 이때 다각형 내면을 Fill(채우기) 함으로써, 다각형 내부를 특정 픽셀 데이터로 채우게 됩니다. fillPoly( 타겟이미지, 다각형 포인트 어레이, 다각형 색상, 다각형 라인 타입, ... ) 매개변수 (설명) 📌 타겟이미지 : 다각형을 표현하기 위한 이미지 소스를 지정합니다. Mat 형태의 이미지 파일을 지정하면 됩니다. 📌 다각형 포인트 어레이 : 포인트 데이터를 그 요소로 갖는 2차원 어레이를 지정합니다. C/C++의 일반적인 어레이 설정방법을 사용해도 되지만, vector 변수를 써보려고 노력하고 있습니다. 다각형 포인트의 순서는 시계방향 또는 반시계 방향을 생각하고 지정해주면 될 것 같습니다. 맨 처음과 맨 끝 포인.. 2021. 4. 21. [ openCV | C++ ] HoughLinesP 함수 사용 방법. (+HoughLines함수와 비교) 어떤 함수 ❓ 🤔 직선을 추출하는 개념으로는 HoughLines과 같습니다. 하지만 이 함수에서는 확률적인 방법으로 접근하는데요. 구체적으로 말하자면 직선 속성을 추출하기 위해 픽셀을 랜덤 하게 선택하는 거죠.(기본 허프 변환에서는 모든 픽셀에 대한 알고리즘 검사를 하게 되기 때문에, 계산에 대한 비용이 매우 큽니다.) 그래서 기본 HoughLines 함수에다가 P(Probabilistic, 확률적인.)만 덧붙이는 형태로 구분됩니다. 간단하게 Probabilistic Hough transform 알고리즘을 써서 직선을 검출하는 겁니다. 알고리즘에 대한 공부는 각자 해보도록 합시다. HoughLinesP( 타겟이미지, 직선속성변수(vector 타입의 어레이 변수), r 방향변위값(경계값), 회전방향각도(경.. 2021. 3. 28. [ openCV | C++ ] HoughLines 함수 사용 방법. (차선 검출 준비단계) 어떤 함수 ❓ 🤔 직선을 "검출하는" 함수입니다. 직선을 검출하는 방법으로 Hough Line Transform 알고리즘이 사용되었습니다. 이진화된 이미지(엣지 검출 데이터)를 기반으로, 픽셀 포인트가 같은 직선상에 있다는 조건을 만족하면, 직선의 속성(r, θ) 값을 반환해줍니다. 이론 편은 다음 글을 참고하세요. [ openCV | C++ ] Hough Line Transform 이론편.개념정리. 1. 기본개념 2. 조금 더 깊이(논문) FINITE LINE 1. 기본개념 허프 변환 - 위키백과, 우리 모두의 백과사전 허프 변환 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 허프 변환(Houg fwanggu-lee.tistory.com HoughLines( 타겟이미지, 직선속성.. 2021. 3. 26. [ openCV | C++ ] 비주얼 스튜디오 코드(Visual Studio Code)에서 openCV 환경 설정 하는 방법(맥 버전) 1. 비주얼 스튜디오 코드 설치 2. C++ 컴파일 환경 구성(일반) 🔗 tasks.json 파일 3. C++ 디버그 환경구성(일반) 🔗 launch.json 파일 4. opencv 패키지 설치 5. opencv 환경 설정 🔗 c_cpp_properties.json 파일 5.1 pkg-config 설정 5.2 pkg-config PATH 설정 5.3 opencv 패키지를 참조하여 컴파일하기 환경 설정을 해 본 결과, Xcode를 이용하는 편이 환경설정은 간단합니다. [ openCV | C++ ] Xcode 에서 openCV 환경 설정 하는 방법 맥의 Xcode IDE 사용자를 대상으로 하는 글인 점 참고 부탁드립니다. 그리고, 이 내용은 유투부 튜토리얼 및 게시자의 웹사이트 내용과 동일하며, 본인의 학습.. 2021. 3. 5. [ 환경설정 ] Visual Studio Code 에서 C++ 컴파일 디버그 환경 설정 방법(맥 버전.) 1. 다음을 설치 🛠 ✅ Visual Studio Code(IDE) Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined and optimized for building and debugging modern web and cloud applications. Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. code.visualstudio.com ✅ 컴파일러 : g++ 터미널 실행 후 다음을 입력하면, 설치 여부 확인(버전 및 실행파일 위치 확인)이 가능하며 설치되어 있지 않을 .. 2021. 3. 2. 이전 1 2 3 다음 반응형