1,2일차
[1단계] 안전모 영상을 통한 이미지 준비
- open cv 활용
- 동영상 기반 이미지 추출
[2단계] 학습할 이미지 준비( 가 라벨링된 이미지 활용 )
- Roboflow에서 학습데이터 수집
- Yolov5 학습을 위한 데이터 구조
[3단계] 학습 및 Detect
- Yolov5를 통한 OBJECT DETECTION
3일차
[1단계] Detect할 이미지 준비
- OPEN CV 활용
- 동영상 기반 이미지 추출
[2단계] 학습할 이미지 준비(직접 라벨링)
- LabelImg를 통한 라벨링
[3단계] 학습 및 Detect
- Yolov5를 통한 OBJECT DETECTION
실시간 차량 인식 사례
- 교통상황 분석 , 실시간 신호 자동 제어를 통한 통행 시간 감소
- 실시간 차량 통행량을 파악하기 위해 CCTV로 파악된 차량 수 확인
Domain Knowledge
1)
Object Detection = Multi-Labeled Classification + Bounding Box Regression
2) Video Frame
- 비디오를 구성하는 일련의 이미지 중 하나의 이미지
- 하나의 영상에는 수많은 정적 이미지, 즉 Frame으로 이루어져있음
3) FPS(Frame per second)
- 초당 나타나는 프레임 수 의미
- 비디오 제작 및 재생에서 프레임 속도는 비디오가 보는 사람에게 얼마나 매끄럽게 보이는지 결정
- 프레임 속도가 높을수록 일반적으로 움직임이 더 매끄럽고 유동적이며, 프레임 속도가 낮으면 더 고르지 않거나 더듬거리게 됨
4) Roboflow
- 학습할 이미지 데이터 세트를 TensorFlow, PyTorch, YOLO와 같은 널리
사용되는 이미지 학습 프레임워크에 맞춰 제공하는 플랫폼
- 이미지 학습을 위해 데이터를 확보하고 전처리하는 수고를 덜어줌
- 특히 이미지안에 이미 라벨링된 객체들을 제공해주고 있음
5) Labeling
- 물체 감지에 사용할 주석이 달린 데이터 세트를 만들기 위해서 이미지, 비디오에서 관심 있는 물체를 수동으로 식별
6) yaml
- YAML은 "YAML Ai n't Markup Language"의 약자이며 구성(환경설정) 파일, 데이터 교환 및 기타 유사한 작업을 위해 표준화된 데이터파일
7) yolov5
- YOLOv5는 You only look once의 줄임말로 Ultralytics에서 개발한 객체 감지 모델
- Github를 통해서 설치 한다
라벨링을 통한 객체 탐지 결과물!!
정확도는 조금 낮았지만 직접한 라벨링을 통해 차량 인식을 하는 것이 신기하고 뿌듯했다 :)