Pointpillars 모델에 사용한 데이터
- https://zhuanlan.zhihu.com/p/521277176 참조
- https://blog.csdn.net/qq_16137569/article/details/118873033 참조
kitti
|- training
|- calib (#7481 .txt)
|- image_2 (#7481 .png)
|- label_2 (#7481 .txt)
|- velodyne (#7481 .bin)
|- testing
|- calib (#7518 .txt)
|- image_2 (#7518 .png)
|- velodyne (#7418 .bin)
Image
- 이미지 파일
Ground Truth label information
Field | Field length | unit | meaning | examples |
type | 1 | - | Category name : Car, Van, Truck, Pedestrian, Sitting person, Bicycle, Tram, Misc (trailers 와 scooters 등의 기타) |
Truck |
truncated | 1 | - | Target truncation 정도 : 0부터 1 사이의 float 이미지 경계로부터 타겟 간의 거리를 나타냅니다. |
0.00 |
occluded | 1 | - | Target occlusion 정도 : 0부터 3까지의 정수 0: fully visible 1: partially occluded 2: mostly occluded 3: unknown |
0 |
Alpha | 1 | radian | Target viewing angle: [-pi, pi] | -1.57 |
Bbox | 4 | pixel | Target 2D detection frame position : upper left vertex and lower right vertex |
599.41, 156.40, 629.75, 189.25 |
Dimensions | 3 | Meter | 3D object size : height, width, length | 2.85, 2.63, 12.34 |
location | 3 | Meter | The center coordinates of the bottom surface of the target 3D frame : ( x, y, z ), the camera coordinate system. | 0.47, 1.49, 69.44 |
Rotation_y | 1 | radian | Target heading angle: [-pi, pi] | -1.56 |
- 모델을 훈련 시킬 때는 주로 Category inormation (type)과 3d bounding box information (location, dimension, rotation_y) 만을 쓴다고 한다.
Velodyne
- binary 파일을 pcd 파일로 변형하여 살펴 보았다.
- x, y, z, r
Calibrations
- 보정 시스템 오류를 최대한 줄이기 위해 KITTI는 매일 센서를 재보정하므로, 각 사진에는 해당 txt calibration parameter 파일이 있습니다.
parameter name | meaning |
P0 - P3 | The camera projection matrix (3 x 4) 왼쪽 흑백 카메라, 오른쪽 흑백 카메라, 왼쪽 컬라 카메라, 오른쪽 컬러 카메라 (3x4) |
R0_rect | 회전 보정 행렬 (3 x 3) |
Tr_velo_to_cam | 레이저 좌표계에서 카메라 좌표계로의 변환 행렬 ( 3 x 4 ) |
Tr_imu_to_velo | IMU 좌표계에서 레이저 좌표계로의 변환 행렬 ( 3 x 4 ) |
- Projection of target 3D box to image
\( x = (x,y,z,r)^T \)
- $$ Y = P_{rect}^{(i)}x $$
- Laser Point Cloud to Image Projection
- $$ Y = P_{rect}^{(i)}R_{rect}^{(0)}T_{velo}^{cam}x $$
Calibration을 따라서 적용시키면 효과는 다음과 같다는데 어렵다.
무슨 말인지 잘 모르겠다...
2D BBox 를 가지고 3D BBox를 만들고, 그 이후 색채를 통해 Depth를 입히는 느낌인데
조금 더 자세한 내용은 위의 참고 글을 읽어보시길 바란다..
'Project' 카테고리의 다른 글
[PCD] Cuboid 필터링 하기 (2) | 2023.02.01 |
---|---|
MaskRCNN 가이드 (0) | 2022.12.14 |
[Pointpillars] Kitty Dataset #2 (0) | 2022.12.05 |
[PointPillars] MMdetection3D와 Kitti dataset 을 활용한 시도 (0) | 2022.12.02 |
MMDetection 3D tutorial #1 (0) | 2022.11.30 |