maudzung / SFA3D

Super Fast and Accurate 3D Object Detection based on 3D LiDAR Point Clouds (The PyTorch implementation)
https://github.com/maudzung/Super-Fast-Accurate-3D-Object-Detection
MIT License
1k stars 271 forks source link

Using the model trained on the kitti dataset, testing our own dataset #56

Open Sunganghao opened 2 years ago

Sunganghao commented 2 years ago

hi,guys,I used the kitti dataset from the project for training and the resulting model was used to detect the vehicles in my own dataset and why it was invalid.My own dataset has been converted to kitti format (.bin) and is displayed correctly in the test, but it does not show the red box in the point cloud plot. image

maudzung commented 2 years ago

Can you please share with me your LiDAR specs?

Sunganghao commented 2 years ago

Thanks for your reply, I tested it with two LiDARs. Virtual LIDAR is VLS-128(Matlab/simulink/lidar toolbox) and Real LiDAR is VLP-16.

leducnguyen21 commented 2 years ago

@Sunganghao hello, I also want to applythe model into my own dataset (like video in KITTI), can you show me the way how I can make point cloud file like in KITTI dataset (bin)?

ghost commented 1 year ago

Can you please share with me your LiDAR specs?

Hii Maudzung, Even I'm having the same problem after converting to .bin format, its not detecting, only showing pointcloud. Why its like that? Even I tried pandaset and loaded directly .pkl.gz instead of .bin file. the same problem is happening. Can you please tell why its happening?

applededipan commented 8 months ago

@jacobsmarvel Hi, have you solved this problem? or do you have any idea about it ?

Manojit-IITK commented 7 months ago

@Sunganghao @jacobsmarvel have you solved the problem ? I am having the same problem while testing with my won dataset

Manojit-IITK commented 5 months ago

try to normalize your intensity values then it will work

Jason-bot commented 5 months ago

@Manojit-IITK Can I ask how you do it?

Manojit-IITK commented 5 months ago

@Manojit-IITK Can I ask how you do it?

Take the intensity column from the lidar data and the normalize it i.e (value - min_value)/(max_value - min_value) then replaced this normalized column with the precious one and make the bev map

Jason-bot commented 5 months ago

@Manojit-IITK Can I ask how you do it?

Take the intensity column from the lidar data and the normalize it i.e (value - min_value)/(max_value - min_value) then replaced this normalized column with the precious one and make the bev map

Thank you very much for your answer. This question has troubled me for a long time.

I would like to ask if intensity is the value of PointCloud_top[:, 3] in kitti_bev_utils.py in the program?

 normalizedCounts = np.minimum(1.0, np.log(unique_counts + 1) / np.log(64))
 intensityMap[np.int_(PointCloud_top[:, 0]), np.int_(PointCloud_top[:, 1])] = PointCloud_top[:, 3]
 densityMap[np.int_(PointCloud_top[:, 0]), np.int_(PointCloud_top[:, 1])] = normalizedCounts

If I print it out, the value of each frame looks like this: PointCloud_top[:, 3] : [0.0213623 0.02868652 0.03173828 ... 0.03710938 0.04272461 0.0300293 ]

(value - min_value)/(max_value - min_value) What is the value?

Manojit-IITK commented 5 months ago

@Manojit-IITK Can I ask how you do it?

Take the intensity column from the lidar data and the normalize it i.e (value - min_value)/(max_value - min_value) then replaced this normalized column with the precious one and make the bev map

Thank you very much for your answer. This question has troubled me for a long time.

I would like to ask if intensity is the value of PointCloud_top[:, 3] in kitti_bev_utils.py in the program?

 normalizedCounts = np.minimum(1.0, np.log(unique_counts + 1) / np.log(64))
 intensityMap[np.int_(PointCloud_top[:, 0]), np.int_(PointCloud_top[:, 1])] = PointCloud_top[:, 3]
 densityMap[np.int_(PointCloud_top[:, 0]), np.int_(PointCloud_top[:, 1])] = normalizedCounts

If I print it out, the value of each frame looks like this: PointCloud_top[:, 3] : [0.0213623 0.02868652 0.03173828 ... 0.03710938 0.04272461 0.0300293 ]

(value - min_value)/(max_value - min_value) What is the value?

when you extract the lidar data into the liar variable at that time you normalized the 4tth column i.e lidar[:,3]. normalized the data before passing through it make_bev function.

(value - min_value)/(max_value - min_value) this is the formula for normalizing the data between 0 to 1.