{"id":26758308,"url":"https://github.com/ksm26/ros-based-3d-detection-tracking","last_synced_at":"2026-05-04T03:33:46.963Z","repository":{"id":167246450,"uuid":"605486526","full_name":"ksm26/ROS-based-3D-detection-Tracking","owner":"ksm26","description":"Deployment of 3D-Detection and Tracking pipeline in simulation based on rosbags and real-time.","archived":false,"fork":false,"pushed_at":"2024-02-08T16:25:11.000Z","size":96988,"stargazers_count":15,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-03-06T20:33:14.613Z","etag":null,"topics":["3d-detection","deployment","detection-model","lidar","lidar-point-cloud","ml-deployment","mmdeploy","nuscenes","onnx","openpcdet","pointpillars","regnet","ros","tensorrt","tracking","tracking-algorithm","tracking-by-detection"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ksm26.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-02-23T09:02:59.000Z","updated_at":"2025-09-21T06:02:58.000Z","dependencies_parsed_at":null,"dependency_job_id":"9b9e7e02-beda-46eb-8067-3e5bf7eaaff7","html_url":"https://github.com/ksm26/ROS-based-3D-detection-Tracking","commit_stats":null,"previous_names":["ksm26/ros-based-3d-detection-tracking"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ksm26/ROS-based-3D-detection-Tracking","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksm26%2FROS-based-3D-detection-Tracking","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksm26%2FROS-based-3D-detection-Tracking/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksm26%2FROS-based-3D-detection-Tracking/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksm26%2FROS-based-3D-detection-Tracking/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ksm26","download_url":"https://codeload.github.com/ksm26/ROS-based-3D-detection-Tracking/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ksm26%2FROS-based-3D-detection-Tracking/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32593943,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"online","status_checked_at":"2026-05-04T02:00:06.625Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-detection","deployment","detection-model","lidar","lidar-point-cloud","ml-deployment","mmdeploy","nuscenes","onnx","openpcdet","pointpillars","regnet","ros","tensorrt","tracking","tracking-algorithm","tracking-by-detection"],"created_at":"2025-03-28T16:19:11.656Z","updated_at":"2026-05-04T03:33:46.949Z","avatar_url":"https://github.com/ksm26.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ROS-based-3D-detection-Tracking\n\n## Implementation results on rosbags\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/2.gif\" width=\"280\" height=\"240\" alt=\"Image 1 Description\"\u003e\n  \u003cimg src=\"images/3.gif\" width=\"280\" height=\"240\" alt=\"Image 2 Description\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cem class=\"caption\"\u003e\u003cstrong\u003eScenario 1:\u003c/strong\u003e Detecting multiple objects in the scene\u003c/em\u003e\n  \u003cem class=\"caption\"\u003e\u003cstrong\u003eScenario 2:\u003c/strong\u003e Accurately retaining detection and track ids\u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/4.gif\" width=\"280\" height=\"240\" alt=\"Image 3 Description\"\u003e\n  \u003cbr\u003e\n  \u003cem\u003e \u003cstrong\u003eScenario 3:\u003c/strong\u003e Detecting objects in the reverse direction \u003c/em\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/5.gif\" width=\"700\" height=\"300\" alt=\"Image 4 Description\"\u003e\n  \u003cbr\u003e\n  \u003cem\u003e \u003cstrong\u003eScenario 4:\u003c/strong\u003e Detecting a virtual vehicle on point-cloud data \u003c/em\u003e\n\u003c/p\u003e\n\n-----------------------------------------------------------------------------------------------------------------------------------------------\n## Deployment results \n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/6.gif\" width=\"280\" height=\"240\" alt=\"Image 6 Description\"\u003e\n  \u003cimg src=\"images/7.gif\" width=\"280\" height=\"240\" alt=\"Image 7 Description\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cem class=\"caption\"\u003e\u003cstrong\u003eScene:\u003c/strong\u003e Pointpillar + Regnet\u003c/em\u003e\n  \u003cem class=\"caption\"\u003e \u003cstrong\u003eScene:\u003c/strong\u003e Pointpillar (TensorRT)\u003c/em\u003e\n\u003c/p\u003e\n\n\n| Backbone | mAP (nuScenes) | FPS | Memory (GPU) |\n| --------------- | --------------- | --------------- | --------------- |\n| **[Pointpillars](https://github.com/open-mmlab/mmdetection3d/tree/1.0/configs/pointpillars)**    | 39.26    | 8.88  | 3.5 Gb |\n| **Pointpillars (TensorRT)**    | ----    | **15.15**    | 4.5 Gb |\n| **Pointpillar + [Regnet](https://github.com/open-mmlab/mmdetection3d/tree/1.0/configs/regnet)**    | **48.2**    | 7.76    | 3.5 Gb |\n\n-----------------------------------------------------------------------------------------------------------------------------------------------\n## Installation\n1) Create virtual environment\n```\nconda create --name rosdeploy python=3.8\nconda activate rosdeploy\n```\n\n2) Install pytorch \nconda install pytorch from https://pytorch.org/ according to cuda version or lower for eg. \n```\nconda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge\n```\n\n3) Clone this repository \n```\ngit clone git@github.com:ksm26/ROS-based-3D-detection-Tracking.git\n```\n\n4) Install steps \n```\npip install -U openmim\nmim install mmcv-full\nmim install mmdet\nmim install mmsegmentation\n```\n\n5) Install [mmdetection3d](https://mmdetection3d.readthedocs.io/en/latest/getting_started.html)\n```\ncd mmdetection3d\npip install -e .\n```\n6) Install [mmdeploy](https://github.com/open-mmlab/mmdeploy/blob/master/docs/en/get_started.md)\n```\ncd mmdeploy \npip install -e .\n```\n\n7) Install tf and jsk \n[tf tutorial](http://wiki.ros.org/tf/Tutorials/Writing%20a%20tf%20listener%20%28Python%29)\n[Bounding box visualization](https://blog.csdn.net/weixin_36354875/article/details/125935782)\n[ROS jsk_visualization](https://limhyungtae.github.io/2020-09-05-ROS-jsk_visualization-%EC%84%A4%EC%B9%98%ED%95%98%EB%8A%94-%EB%B2%95/)\n[jsk_recognition_msgs](http://otamachan.github.io/sphinxros/indigo/packages/jsk_recognition_msgs.html)\n\n```\nsudo apt-get install ros-melodic-jsk-recognition-msgs \nsudo apt-get install ros-melodic-jsk-rviz-plugins\nsudo apt-get install ros-melodic-jsk-rqt-plugins\nsudo apt-get install ros-melodic-jsk-visualization\n```\n8) Install tensorrt \n```\npip install nvidia-tensorrt\npython3 -m pip install --upgrade tensorrt\n```\n-----------------------------------------------------------------------------------------------------------------------------------------------\n## Additional installation\nError with rospy.init_node(): An error with ros packages installation into conda environment.\nRun the above ros_python_environment.yml using: \n```\npip install scikit-build\nconda env update --file ros_python_environment.yml\n```\n\nimport tf: Error\\\nImport tf does not work with python 3 as it is compiled for python 2.\nSolution: [Recompile with python3 in catkin_workspace](https://answers.ros.org/question/326226/importerror-dynamic-module-does-not-define-module-export-function-pyinit__tf2/)\\\nTo be able to work with python interpreter (pycharm,visual studio) add the compile path as below:\n```\nsys.path.append(\"~/Desktop/ROS-tracker/catkin_ws/src:/opt/ros/melodic/share\")\n```\n\nSource catkin envrionment after tf installation and creation of new catkin workspace\n```\nsource ~/catkin_ws/devel/setup.bash\n```\n-----------------------------------------------------------------------------------------------------------------------------------------------\n\n## Benchmark and Model Zoo\nDownload the checkpoint for 3D-detection [model-zoo](https://github.com/open-mmlab/mmdetection3d/blob/master/docs/en/model_zoo.md). This repository evaluates the performance of [Pointpillars](https://github.com/open-mmlab/mmdetection3d/tree/master/configs/pointpillars) and [Regnet](https://github.com/open-mmlab/mmdetection3d/tree/master/configs/regnet) models pretrained on nuScences dataset. \\\nTest by running a rosbag and subscribe to appropriate rostopics \n```\nrosbag play rosbag_name.bag\npython3 mmdetection3d/demo/pcd_demo_class.py\n```\n\nConvert the checkpoint into ONNX file and than to tensorRT .engine file\n```\npython3 mmdeploy/tools/deploy.py\n```\nONNX file can be visualized using [NETRON](https://github.com/lutzroeder/netron).\n\n-----------------------------------------------------------------------------------------------------------------------------------------------\n## Licence\nThis project is released under the [Apache 2.0 license](https://github.com/ksm26/ROS-based-3D-detection-Tracking/blob/main/LICENSE).\n\n## Reference \n- [MMDetection3D](https://github.com/open-mmlab/mmdetection3d): OpenMMLab's next-generation platform for general 3D object detection.\n- [MMDeploy](https://github.com/open-mmlab/mmdeploy): OpenMMLab model deployment framework.\n- [3D-Multi-Object-Tracker](https://github.com/hailanyi/3D-Multi-Object-Tracker): Tracking multiple objects in 3D scene.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fksm26%2Fros-based-3d-detection-tracking","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fksm26%2Fros-based-3d-detection-tracking","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fksm26%2Fros-based-3d-detection-tracking/lists"}