이번대회에 작년과 다르게 베이스라인 대비 FLOPs(연산)가 2배 초과하는 모델은 탈락이라는 기준이 있다.
베이스라인 모델은 Centerpoint-pillars이므로 CenterPoint-Pillars의 연산량과 추론속도를 알아야 다른 모델과 비교하여 더 좋은 모델을 고를 수 있기 때문에 한번 훈련을 시켜 연산량과 추론속도를 구하기로 해보았다.
일단 평가기준은 Waymo 3D object Detection 지표를 사용한다고 하였다.
<waymo 지표 계산 방식>
1. 클래스별 성능 측정
- Vehicle, Pedestrian, Cyclist (3종)
각 클래스마다 mAP과 mAPH를 계산
- mAP (mean Average Precision)
: 클래스별로 3D IoU (Intersection over Union) 기준을 만족하는 검출이 얼마나 정확한지 평가 - mAPH (heading 고려한 mAP)
: mAP에 방향(orientation) 정확도까지 포함한 지표.
→ 검출된 bounding box가 올바른 위치/크기일 뿐 아니라 차량의 앞뒤 방향(yaw)까지 제대로 예측했는지 평가
- IoU 기준: Vehicle ≥ 0.7, Pedestrian ≥ 0.5, Cyclist ≥ 0.5
2. 거리 구간별 성능 분리
0–30m, 30–50m, 50m+ (3개 구간)
→ 각 구간마다 mAP, mAPH 계산
3. 난이도 기준
LEVEL 1: 라벨 포인트 ≥ 5
LEVEL 2: 라벨 포인트 ≥ 1 (더 어려움)
→ 즉, L2가 더 난이도가 높음 (희미하게 보이는 객체도 포함)
→ 모든 지표(mAP, mAPH)는 L1, L2로 나눠서 별도로 보고됨
→ 리더보드 최종 점수는 LEVEL 2 기준
4. 최종 점수(mAPH @ LEVEL 2)
클래스 3개 × 거리 3개 = 총 9개 성능 지표
각 지표의 mAPH를 평균 내서 최종 점수로 사용
최종수식
<waymo 지표와 KITTI지표의 비교>
| 항목 | KITTI | Waymo Open Dataset |
| 평가 클래스 | Car, Pedestrian, Cyclist (3종) | Vehicle, Pedestrian, Cyclist (3종) |
| IoU 기준 | Car: 0.7 Pedestrian: 0.5 Cyclist: 0.5 | 동일 (Vehicle: 0.7, Pedestrian: 0.5, Cyclist: 0.5) |
| 거리 구간 | 없음 (전체 대상) | 0–30m, 30–50m, 50m+ (multi-range 평가) → KITTI와 다르게 거리 구간별(multi-range) 성능을 별도로 측정 |
| 난이도 구분 | Easy, Moderate, Hard (occlusion, truncation 기준) | LEVEL 1 (≥ 5 points), LEVEL 2 (≥ 1 point) |
| 지표 종류 | AP (Average Precision) | mAP (mean Average Precision), mAPH (heading 고려한 mAP) |
| 방향(Heading) 평가 | 없음 | 포함 (mAPH: 박스 방향까지 정확히 맞췄는지 평가) |
| 최종 리더보드 점수 | AP (Car Moderate, etc.) | mAPH (LEVEL 2, 전체 거리 평균) |
<훈련>
작년 자율주행 AI 챌린지의 3D 동적객체 데이터셋으로 훈련진행
--> 작년꺼 베이스라인 코드 다운받아 훈련 진행
활용 메뉴얼 대로 따라하면 훈련 가능함
pre-trained 모델은 따로 사용하지 않았고, CenterPoint-Pillars로 훈련을 진행중임.
훈련이 끝난 후 val.py를 돌릴때 --infer_time 옵션을 주면 추론시간 기록해줌
--infer_time 옵션을 주면 eval_utils.py에서 추론시간 기록용 AverageMeter 준비한다.
그다음 각 배치마다 time.time()으로 시작/끝을 기록해서 ms 단위로 저장한다.
→ 현재 배치 시간(val)과 평균 시간(avg)을 tqdm 프로그레스바에 표시
결과적으로 evaluation 끝나면 평균 추론 시간이 로그에 찍힌다.
추론시간은 베이스라인코드가 알아서 구해주는데 FLOPs(연산량)은 직접 구하는 코드를 작성해야함.
댓글
댓글 리스트-
작성자Sungryul Lee 작성시간 25.08.25 1. FLOPs 논문에 나와있는지 조사해볼것
2. 논문에 나와있는 mAP, FLOPs를 찾아서 점수 계산해볼것
3. 설마 1977시간을 기다릴건지 어떻게 할건지 답해볼것
4. 텐서보드로 실시간 모니터링 확인가능한지?
5. 작년에 최종점수구하는 코드를 소스분석할것
6. 오늘내로 모두 완료할것
-
답댓글 작성자한윤지 작성자 본인 여부 작성자 작성시간 25.08.26 3. pre-trained모델로 백본 freeze 해 훈련을 돌릴겁니다.
4. 실시간 모니터링 가능합니다 -
작성자Sungryul Lee 작성시간 25.08.26 왜 빨리 안하냐?
-
답댓글 작성자한윤지 작성자 본인 여부 작성자 작성시간 25.08.26 해서 새로운 게시글로 올린겁니다!
-
답댓글 작성자Sungryul Lee 작성시간 25.08.26 한윤지 새로운 게시글은 어디있는데?
