← 메인 페이지로 돌아가기





2022.10 ~ 2022.12
Vehicle Features
OpenCV와 YOLO를 활용한 차량 주행 보조 기능 구현 프로젝트입니다. 차선 이탈 감지, 전방 차량 출발 감지, 보행자 및 차량 근접 감지 기능을 제공합니다.
GitHub →주요 기능
차선 이탈 감지 및 경고
Hough Transform을 이용한 차선 검출, 좌우 차선 각도 분석, 차선 이탈 지속성 판단을 통한 안전한 주행 지원
전방 차량 출발 감지 및 알림
YOLO를 이용한 차량 객체 검출, 차량 크기 변화 모니터링, 정지 상태에서의 차량 이동 감지로 교통 흐름 개선
보행자 및 차량 근접 감지 및 경고
YOLO를 이용한 객체 검출, 객체 크기 기반 근접도 판단, 차량과 보행자에 대한 차별화된 경고 제공
기술 스택
Computer Vision
OpenCV
YOLO
Programming Language
C++
핵심 알고리즘/기술
차선 이탈 감지
Hough Transform을 이용한 차선 검출, 좌우 차선 각도 분석 (30-60도, 120-150도), 차선 이탈 지속성 판단 (5프레임 이상)
전방 차량 출발 감지
YOLO를 이용한 차량 객체 검출, 차량 크기 변화 모니터링, 정지 상태에서의 차량 이동 감지
보행자/차량 근접 감지
YOLO를 이용한 객체 검출, 객체 크기 기반 근접도 판단, 차량: 너비 130px 또는 높이 110px 이상, 보행자: 높이 120px 이상
개발자 역할
컴퓨터 비전 엔지니어
OpenCV와 YOLO를 활용한 객체 검출 및 추적 알고리즘 구현, 실시간 영상 처리 파이프라인 구축
결과 예시
차선 이탈 감지
차선 이탈 시 'Lane departure!' 경고 메시지 표시

전방 차량 출발 감지
전방 차량 출발 시 'Start Moving!' 알림 메시지 표시

보행자/차량 근접 감지
보행자/차량 근접 시 'Human/Car detected nearby!' 경고 메시지 표시


프로젝트 구조
프로젝트 구조
모듈화된 구조로 각 기능의 독립적인 개발과 테스트가 가능
VehicleFeatures/ ├── main.cpp # 메인 소스 코드 ├── YOLO/ # YOLO 모델 파일 │ ├── yolov4-tiny.cfg │ ├── yolov4-tiny.weights │ └── coco.names └── src/ # 테스트 사진 및 기타 리소스 ├── lanedeparture.png ├── startmoving.png ├── humandetect.png └── cardetect.png
설치 및 실행
환경 요구사항
- OpenCV 4.x
- YOLO v4-tiny
- C++ 컴파일러
설치 방법
sudo apt update && sudo apt install -y libopencv-devwget https://raw.githubusercontent.com/AlexeyAB/darknet/master/cfg/yolov4-tiny.cfg -O YOLO/yolov4-tiny.cfgwget https://github.com/AlexeyAB/darknet/releases/download/darknet_yolo_v4_pre/yolov4-tiny.weights -O YOLO/yolov4-tiny.weightsg++ main.cpp -o main `pkg-config --cflags --libs opencv4`./main
주의사항
- OpenCV 4.x가 필요합니다
- YOLO v4-tiny 모델 파일이 필요합니다