{"id":13443519,"url":"https://github.com/AlejandroBarrera/birdnet2","last_synced_at":"2025-03-20T16:31:43.773Z","repository":{"id":152578709,"uuid":"246914145","full_name":"AlejandroBarrera/birdnet2","owner":"AlejandroBarrera","description":"Official Pytorch implementation of Birdnet+","archived":false,"fork":false,"pushed_at":"2022-03-03T15:09:03.000Z","size":3643,"stargazers_count":60,"open_issues_count":2,"forks_count":14,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-10-28T06:58:29.621Z","etag":null,"topics":["autonomous-driving","deep-learning","neural-network","object-detection","point-cloud","pytorch"],"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/AlejandroBarrera.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}},"created_at":"2020-03-12T19:23:23.000Z","updated_at":"2024-09-11T02:41:28.000Z","dependencies_parsed_at":"2024-01-18T14:44:07.005Z","dependency_job_id":"755269ad-fb1b-4335-9ad3-69c9684d9ec3","html_url":"https://github.com/AlejandroBarrera/birdnet2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejandroBarrera%2Fbirdnet2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejandroBarrera%2Fbirdnet2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejandroBarrera%2Fbirdnet2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlejandroBarrera%2Fbirdnet2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlejandroBarrera","download_url":"https://codeload.github.com/AlejandroBarrera/birdnet2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244649902,"owners_count":20487517,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["autonomous-driving","deep-learning","neural-network","object-detection","point-cloud","pytorch"],"created_at":"2024-07-31T03:02:02.773Z","updated_at":"2025-03-20T16:31:43.208Z","avatar_url":"https://github.com/AlejandroBarrera.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"﻿# BirdNet+: End-to-End 3D Object Detection in LiDAR Bird’s Eye View\n\n![3D detections example](val_images/3D_000021.png)\n![BEV detections example](val_images/BEV_000021.png)\n\n[BirdNet+](https://arxiv.org/abs/2003.04188) software implements a state-of-the-art 3D object detection algorithm based only on LiDAR technology. It represents a clear advance on its predecessor, the [BirdNet](https://arxiv.org/abs/1805.01195).\nAlgorithm developed at the Universidad Carlos III de Madrid.\n\n### What's New\n- The framework behind the algorithm is [Detectron2](https://github.com/facebookresearch/detectron2) in Pytorch.\n- Removes all the post processing stage using only the network to perform 3D predictions, which improves the detection accuracy.\n\n### Installation\n\nYou will need the Detectron2 requirements:\n- Linux with Python ≥ 3.6\n- PyTorch ≥ 1.3\n- [torchvision](https://github.com/pytorch/vision/) that matches the PyTorch installation.\n\tYou can install them together at [pytorch.org](https://pytorch.org) to make sure of this.\n- OpenCV\n- pycocotools: `pip install cython; pip install -U 'git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI'`\n\nAfter having the above dependencies and gcc \u0026 g++ ≥ 5, run:\n```\ngit clone https://github.com/AlejandroBarrera/birdnet2\ncd birdnet2 \u0026\u0026 python -m pip install -e .\n```\n\nPlease refer to the [Detectron2 installation section](https://github.com/facebookresearch/detectron2/blob/master/INSTALL.md) for more details.\n\n### Quick Start\n\n1. Add birdnet2 top level to your PYTHONPATH.\n```\nexport DETECTRON_ROOT=/path/to/birdnet2\nexport PYTHONPATH=$PYTHONPATH:$DETECTRON_ROOT\n```\n2. Download the pre-trained model from [here](https://www.dropbox.com/s/5v9hczmpw1ijuis/ITSC_2020_model.pth?dl=1) and put it in a new folder named **models** inside DETECTRON_ROOT (you can change this path through the field **OUTPUT_DIR** in the configuration file *Base-BirdNetPlus.yaml*)\n3. Launch the script *python demo/demo_BirdNetPlus.py* for an example of how BirdNet+ works.\n\nThis demo uses data from the [KITTI Vision Benchmark Suite](http://www.cvlibs.net/datasets/kitti/).\n\n### Usage\n\n0. Follow the steps 1 and 2 from Quick Start.\n1. Download the training and validation splits [here](https://xiaozhichen.github.io/files/mv3d/imagesets.tar.gz).\n2. To train with [KITTI object detection dataset](http://www.cvlibs.net/datasets/kitti/eval_object.php):\n- Download the dataset.\n- Generate BEV KITTI images. The tool that we used can be found at [lidar_bev](https://github.com/beltransen/lidar_bev).\n- In DETECTRON_ROOT, arrange everything according to the directory tree below (We leave annotations folder empty for now):\n```\n.\n|-- datasets\n|   |-- bv_kitti\n|   |   |-- annotations\n|   |   |   |-- {train,val} JSON files\n|   |   |-- lists\n|   |   |   |-- {train,val} splits\n|   |   |-- image\n|   |   |   |-- BEV KITTI {train,val} images\n|   |   |-- label\n|   |   |   |-- KITTI {train,val} labels\n|   |   |-- calib\n|   |   |   |-- KITTI calibration files\n```\nNOTE: In the current version, the *label* subfolder must contain the original KITTI annotations (*label_2*).\n\n3. Launch *python tools/train_net_BirdNetPlus.py --config_file Base-BirdNetPlus* with the parameters required inside of the configuration file. The annotations are generated automatically.\n4. For validation use *python tools/val_net_BirdNetPlus.py* instead with as many arguments as you want. Please review the arguments carefully. For the evaluation, we strongly recommend using an offline KITTI evaluator such as [eval_kitti](https://github.com/cguindel/eval_kitti) after obtaining the evaluation annotations.\n\n\n### Citation\n\nIf you use BirdNet+ in your research, please cite our work using the following BibTeX entry.\n```\n@article{barrera2021birdnet+,\n  title={BirdNet+: Two-Stage 3D Object Detection in LiDAR Through a Sparsity-Invariant Bird’s Eye View},\n  author={Barrera, Alejandro and Beltr{\\'a}n, Jorge and Guindel, Carlos and Iglesias, Jos{\\'e} Antonio and Garc{\\'\\i}a, Fernando},\n  journal={IEEE Access},\n  volume={9},\n  pages={160299--160316},\n  year={2021},\n  publisher={IEEE}\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAlejandroBarrera%2Fbirdnet2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAlejandroBarrera%2Fbirdnet2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAlejandroBarrera%2Fbirdnet2/lists"}