Project

[MMDetection3D] Calib 없는 Custom 데이터로 Pointpillars 학습하기

scone 2023. 2. 14. 21:43

ValueError: need at least one array to stack

 

config file에서 voxel size와 point_cloud_range 를 수정해주자 오류 없이 train은 되나..

예측 결과 bounding box를 전혀 생성하지 않는 걸 발견하였습니다.

마치 학습한 것 같지만 Bounding Box Loss 보면 Loss 값이 5에서 4가 됐습니다.

학습이 전혀 되지 않았어요.

 

데이터를 잘못 넣어줬거나, 또는 config 설정이 잘못돼서 그런 것 같습니다.

 

데이터 체크

python tools/misc/browse_dataset.py configs/pointpillars/hv_pointpillars_secfpn_6x8_160e_carla-3d-car.py --task det --output-dir showdir/ --online

데이터가 잘못 들어간 것이었습니다.

base config 모든 경로에 대하여 data_root를 kitti가 아닌 제가 넣은 custom data 경로인 data/carla로 바꿔줌으로써 데이터를 확인해볼 수 있었습니다.

 

1차 시도

자체 코드로 visualize 해본 결과

dimensions 값 순서가 서로 다른 것을 알 수 있었고, 따라서 맞겠끔 수정해줬습니다.

dimensions 값 위치 수정
변환한 데이터로 visualize한 결과

2차 시도

변환하면서 x, y, z 의 좌표 자체가 달라져서 발생한 문제인것 같습니다.

 

bounding box의 좌표 위치를 바꿔가면서 한번 실험해보겠습니다.

 

  • x, z, y

gre

 

  • z, x, y

 

  • z, y, x

 

 

  • x, -z, y

 

  • y, -z, x

  • y, -z, -x

  • -y, -z, x

찾은 것 같습니다.

 

dimensions 값이 다시 안맞네요.

dimensions도 한번 맞춰보겠습니다.

 

드디어 해결한 것 같아요.

 

cuboid가 좀 너무 타이트한거 같아서 조금 늘려서 해보겠습니다.

 

 

해결 돼서 다행입니다...

 

 

이제 화각을 조정해야겠네요