:)
Perception 기술 분류 본문
Perception 기술 분류
- 다양한 특징을 가지는 센서 사용
- 센서의 고유한 특징을 활용하여, 종합적인 정보를 추정.
Detection
- Vision, LiDAR, RADAR 등 다양한 센서를 활용하여 주행 환경에 존재하는 특정 Object 검출
- Vision 기반의 2D Image Object Detection, LiDar or RADAR를 활용한 3D Point Cloud Object Detection등이 있음.
- 최근 Vision 기반의 3D Object Detection을 검출하려는 다양한 노력이 있음.(속도, 속력을 추정하기 위해 3d를 사용)
Tracking
- Tracking은 검출한 객체의 고유한 ID를 부여하고, 해당 객체가 동일한 객체임을 추적하는 기술
- 다중 객체를 추적하는 Multiple Object Tracking(MOT)와 단일 객체를 추적하는 Single Object Tracking(SOT)으로 구분한다.
- 객체의 움직임을 지속적으로 추적해서 객체의 미래 움직임을 예측
Prediction
- 깩체의 현재까지의 움직임과 객체의 고유한 특징 등 다양한 정보를 바탕으로 객체의 미래 움직임을 추정
- Multimodal Trajectory Prediction이란 키워드로 활발한 연구 진행 중
3D POSE Estimation
- 객체를 인식하는 것 뿐만 아니라, 객체의 정확한 위치를 추정하는 기술
- Vision Geometry 정보를 사용하는 방법과 위치 정보를 획득할 수 있는 다른 센서와의 데이터 융합 방법으로 구분
Sensor Fusion
- 유의미한 정보를 획득하기 위해 센서 데이터를 융합 -> Sensor Fusion(Calibaration)
Acceleration
- DL 분야에 관련이 많음
- 자율주행은 빠른 속도로 움직이는 환경 -> 검출 성능 뿐만 아니라 검출 속도도 중요함
- Model Quantization, Pruning, Hardware Optimization 등 다양한 최적화 방법 존재
Perception dataset
KITTI - 2D Object Detection Labeling Format
Bbox on Image (Python, OpenCV)
이미지 리스트 = 파일 목록 가져오기(이미지 파일 경로)
레이블링_리스트 = 파일 목록 가져오기(레이블링 파일 경로)
for 이미지, 레이블링 in (이미지_리스트, 레이블링_리스트):
이미지 = cv2.imread(이미지, cv2.IMREAD_ANYCOLOR)
클랙스, BBox = 문자열 분할(레이블링)
cv2.rectangle(이미지, BBox[0], BBox[1], BGR_색상, 선_굵기)
if 파일 저장 == True:
cv2.imread(저장파일_이름, 이미지)
if 시각화 == True:
cv2.imshow(윈도우이름, 이미지)
cv2.waitKey(딜레이) # 0은 무한 기다림
YOLO_포맷_저장하기(클래스, BBox)
1. 파일_목록 가져오기() -> pytho glob or os 패키지 활용
2. 문자열 분할() -> 레이블링 데이터 포맷 참고
3. YOLO 포맷 저장하기 -> YOLO 바운딩 박스 표현에 맞게 변환하여 저장
Cityspace
- 따양한 도시의 도로 Semantic Segementation 데이터
- Segmentation은 객체의 형태를 다각형으로 표현
- Bbox를 그리기 위해 4개의 포인트가 필요했다면, 다각형은 N개의 포인트를 사용
'AI' 카테고리의 다른 글
YOLOv4 review (0) | 2022.12.30 |
---|---|
YOLOv3 시작하기 (0) | 2022.05.02 |
Object Detection (0) | 2022.04.30 |
CNN - Training (0) | 2022.04.29 |
CNN (0) | 2022.04.26 |
Comments