-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/point pillars #2029
Feature/point pillars #2029
Conversation
ros/src/computing/perception/detection/lidar_detector/packages/lidar_point_pillars/package.xml
Outdated
Show resolved
Hide resolved
ros/src/computing/perception/detection/lidar_detector/packages/lidar_point_pillars/package.xml
Outdated
Show resolved
Hide resolved
ros/src/computing/perception/detection/lidar_detector/packages/lidar_point_pillars/package.xml
Outdated
Show resolved
Hide resolved
ros/src/computing/perception/detection/lidar_detector/packages/lidar_point_pillars/README.md
Outdated
Show resolved
Hide resolved
...rc/computing/perception/detection/lidar_detector/packages/lidar_point_pillars/CMakeLists.txt
Show resolved
Hide resolved
DeepLearning based detection packages manage setups individually too. Can you prepare the scripts directory and prepare the setup script? (I would like to manage it with ansible etc. in the future) |
...rc/computing/perception/detection/lidar_detector/packages/lidar_point_pillars/CMakeLists.txt
Outdated
Show resolved
Hide resolved
...g/perception/detection/lidar_detector/packages/lidar_point_pillars/nodes/postprocess_cuda.cu
Outdated
Show resolved
Hide resolved
...perception/detection/lidar_detector/packages/lidar_point_pillars/nodes/preprocess_points.cpp
Outdated
Show resolved
Hide resolved
...eption/detection/lidar_detector/packages/lidar_point_pillars/test/src/test_point_pillars.cpp
Show resolved
Hide resolved
...eption/detection/lidar_detector/packages/lidar_point_pillars/test/src/test_point_pillars.cpp
Show resolved
Hide resolved
...detection/lidar_detector/packages/lidar_point_pillars/include/lidar_point_pillars/nms_cuda.h
Outdated
Show resolved
Hide resolved
...n/lidar_detector/packages/lidar_point_pillars/include/lidar_point_pillars/postprocess_cuda.h
Outdated
Show resolved
Hide resolved
...n/lidar_detector/packages/lidar_point_pillars/include/lidar_point_pillars/postprocess_cuda.h
Outdated
Show resolved
Hide resolved
...r_detector/packages/lidar_point_pillars/include/lidar_point_pillars/preprocess_points_cuda.h
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
terrific
* To display the results in Rviz `objects_visualizer` is required. | ||
(Launch file launches automatically this node). | ||
|
||
* Pretrained models are available [here](https://github.com/cirpue49/kitti_pretrained_pp), trained with the help of the KITTI dataset. For this reason, these are not suitable for commercial purposes. Derivative works are bound to the BY-NC-SA 3.0 License. (https://creativecommons.org/licenses/by-nc-sa/3.0/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@gbiggs @esteve @kfunaoka this package uses a pre-trained network that is not for commercial purposes.
I think that we need to find a way to clearly mark such packages, otherwise it will be difficult to find them later and it will also cause confusion with Autoware users trying to commercialize such packages.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I agree. I'll add it to my notes for the documentation template.
I think we also need a way for a user to easily select between using a non-commercial pre-trained network that we provide and a network they provide themselves (as well as a good method and documentation for how to train a network). This would improve the usefulness of Autoware without placing a burden on us to provide trained networks. I'll add this to my increasing pile of notes on what Autoware should be. :)
Hi, |
@k0suke-murakami |
Status
DEVELOPMENT
Description
Detection results are visualized through a nice "KITTI Viewer Web" from @traveller59 repo.
Implemented new feature PointPillars. paper
This is a neural network algorithm for 3D bounding box detection from pointcloud data.
Good accuracy is proved in KITTI object detection benchmark.KITTI link
Plus, the fastest algorithm in the KITTI benchmark.
According to the paper, it runs in 16ms.
But by writing CUDA code for both preprocess and postprocess, it achieves 12~15ms runtime.
Tested on Shinjuku video and Nisshin video
Related issue
autowarefoundation/autoware_ai#534
Todos
Interface
Input: /points_raw [sensor_msg::PointCloud2]
output: /detection/lidar_detector/objects [autoware_msgs::DetectedObjectArray]
output: /detection/lidar_detector/objects_markers [visualization_msgs::MarkerArray]
How to test
The reason for the small amount of test code is because some CUDA codes result in the different output for the same input.
How to launch
Dependency
Launch
Or, you can launch through runtime manager in
Computing
tab.You will see visualized output by subscribing to
/detection/lidar_detector/objects_markers