
OpenPCDet是一個基於激光雷達的3D對象檢測的清晰,簡單,獨立的開源項目。
它也是[PointRCNN] , [Part-A2-Net] , [PV-RCNN] , [Voxel R-CNN] , [PV-RCNN++]和[MPPNet]的官方代碼發布。
亮點:
OpenPCDet已更新為v0.6.0 (2022年9月)。 [2023-06-30]新的:對DSVT的添加支持,該支持以實時推理速度(27Hz使用Tensorrt)在大規模Waymo開放數據集中實現最先進的性能。
[2023-05-13]新的:對Nuscenes數據集中多模式3D對象檢測模型的添加支持。
BEVFusion ,它融合了BEV空間上的多模式信息,並在Nuscenes驗證數據集上達到70.98%的NDS。 (請參閱有關如何用BevFusion訓練/測試的指南)。 [2023-04-02]在Nuscenes,Waymo和Argoverse2數據集上增加了對VoxelNeXt的支持。它是一個完全稀疏的3D對象檢測網絡,它是一個乾淨的稀疏CNN網絡,直接在體素上預測3D對象。
[2022-09-02] New:將OpenPCDet更新為v0.6.0:
MPPNet for temporal 3D object detection, which supports long-term multi-frame 3D object detection and ranks 1st place on 3D detection learderboard of Waymo Open Dataset on Sept. 2th, 2022. For validation dataset, MPPNet achieves 74.96%, 75.06% and 74.52% for vehicle, pedestrian and cyclist classes in terms of mAPH@Level_2. (請參閱有關如何使用MPPNET訓練/測試的指南)。--use_tqdm_to_record支持以前的TQDM進度欄)。如果您還想記錄與GPU相關的信息,請使用pip install gpustat 。[2022-08-22]增加了對自定義數據集教程和模板的支持
[2022-07-05]增加了對3D對象檢測骨幹網絡Focals Conv的支持。
[2022-02-12]增加了對使用Docker的支持。請參閱./docker中的指南。
[2022-02-07]在Nuscenes數據集上增加了對Centerpoint模型的支持。
[2022-01-14]在H^23D R-CNN中提出的實現,並具有獨特的操作和torch_scatter軟件包,增加了對動態支柱體素化的支持。
[2022-01-05]新:將OpenPCDet更新為v0.5.2:
PV-RCNN++的代碼已發布給該倉庫,其性能更高,更快的推理/推理速度和比PV-RCNN更少的內存消耗。 [2021-12-09]新:將OpenPCDet更新為v0.5.1:
[2021-12-01]新的: OpenPCDet V0.5.0發行了以下功能:
CenterPoint的配置,並PV-RCNN with CenterHead 。USE_SHARED_MEMORY使用共享內存來潛在地加快訓練過程,以防您遇到IO問題。 [2021-06-08]增加了對基於體素的3D對象檢測模型Voxel R-CNN的支持。
[2021-05-14]增加了對單眼3D對象檢測模型CaDDN的支持。
[2020-11-27] Bug-Fixed:如果您想使用我們提供的Waymo評估工具(請參閱PR),請重新銷售Waymo數據集(版本1.2)的驗證信息(版本1.2)。請注意,您不需要重新培訓培訓數據和地面數據庫。
[2020-11-10] Waymo Open數據集得到了最先進的結果。當前,我們在Waymo Open DataSet上提供了SECOND , PartA2和PV-RCNN的配置和結果,並且可以通過修改其數據集配置來輕鬆支持更多模型。
[2020-08-10] Bug-Fixed:已更新了提供的Nuscenes型號以修復加載錯誤。如果您需要使用驗證的Nuscenes型號,請重新下載。
[2020-07-30] OpenPCDet V0.3.0的發行以下功能:
PointRCNN , PartA2-Free )。SECOND-MultiHead (CBGS)和PointPillar-MultiHead )。[2020-07-17]添加簡單的可視化代碼和快速演示以使用自定義數據進行測試。
[2020-06-24] OpenPCDet V0.2.0發布了具有漂亮的新結構,以支持更多的模型和數據集。
[2020-03-16] OpenPCDet V0.1.0已發布。
OpenPCDet工具箱有什麼作用?請注意,我們已將PCDet從v0.1升級到v0.2 ,並具有支持各種數據集和模型的漂亮新結構。
OpenPCDet是一種基於Pytorch的一般代碼庫,用於從點雲中檢測3D對象。目前,它支持多個最新的3D對象檢測方法,具有高度重構的代碼,用於一階段和兩階段3D檢測框架。
基於OpenPCDet工具箱,我們在3D檢測中贏得了Waymo Open DataSet挑戰,3D跟踪,域適應所有僅激光雷達方法中的三個軌道,並且與Waymo相關的模型將很快發佈到OpenPCDet 。
我們目前正在積極更新此存儲庫,並將很快支持更多的數據集和模型。還歡迎捐款。
OpenPCDet設計模式
統一的3D框定義:( x,y,z,dx,dy,dz,標題)。
靈活而清晰的模型結構,可以輕鬆支持各種3D檢測模型:


選定的支持方法顯示在下表中。結果是Kitti數據集的Val集合中適度難度的3D檢測性能。
| 訓練時間 | 汽車@r11 | 行人@r11 | 騎自行車的人@r11 | 下載 | |
|---|---|---|---|---|---|
| 尖利柱 | 〜1.2小時 | 77.28 | 52.29 | 62.68 | 型號18m |
| 第二 | 〜1.7小時 | 78.62 | 52.98 | 67.15 | 型號20m |
| 第二 | - | 79.09 | 55.74 | 71.31 | 型號46m |
| Pointrcnn | 〜3小時 | 78.70 | 54.41 | 72.11 | 型號16m |
| pointrcnn-iou | 〜3小時 | 78.75 | 58.32 | 71.34 | 型號16m |
| 不含A2的部分 | 〜3.8小時 | 78.72 | 65.99 | 74.29 | 型號226m |
| A2-n-andor | 〜4.3小時 | 79.40 | 60.05 | 69.90 | 型號244m |
| PV-RCNN | 〜5小時 | 83.61 | 57.90 | 70.47 | 型號50m |
| Voxel R-CNN(汽車) | 〜2.2小時 | 84.54 | - | - | 型號28m |
| 焦點交流-F | 〜4小時 | 85.66 | - | - | 型號30m |
| 卡德(單聲道) | 〜15小時 | 21.38 | 13.02 | 9.76 | 型號774m |
我們在Waymo Open數據集(WOD)上提供DATA_CONFIG.SAMPLED_INTERVAL的設置,以進行培訓和評估,因此您也可以通過設置較小的DATA_CONFIG.SAMPLED_INTERVAL來使用WOD,即使您只有有限的GPU資源。
默認情況下,所有型號均經過8 GTX 1080TI GPU的所有訓練樣本的單一幀(〜32K幀)的訓練,此處的每個單元格的結果是MAP/MAPH由整個驗證集(版本1.2)的官方Waymo評估指標計算得出的。
| Performance@(訓練20%數據) | VEC_L1 | VEC_L2 | ped_l1 | PED_L2 | CYC_L1 | CYC_L2 |
|---|---|---|---|---|---|---|
| 第二 | 70.96/70.34 | 62.58/62.02 | 65.23/54.24 | 57.22/47.49 | 57.13/55.62 | 54.97/53.53 |
| 尖利柱 | 70.43/69.83 | 62.18/61.64 | 66.21/46.32 | 58.18/40.64 | 55.26/51.75 | 53.18/49.80 |
| Centerpoint-Pillar | 70.50/69.96 | 62.18/61.69 | 73.11/61.97 | 65.06/55.00 | 65.44/63.85 | 62.98/61.46 |
| Centerpoint-Dynamic-Pillar | 70.46/69.93 | 62.06/61.58 | 73.92/63.35 | 65.91/56.33 | 66.24/64.69 | 63.73/62.24 |
| 中心點 | 71.33/70.76 | 63.16/62.65 | 72.09/65.49 | 64.27/58.23 | 68.68/67.39 | 66.11/64.87 |
| 中心點(重新連接) | 72.76/72.23 | 64.91/64.42 | 74.19/67.96 | 66.03/60.34 | 71.04/69.79 | 68.49/67.28 |
| A2-n-andor | 74.66/74.12 | 65.82/65.32 | 71.71/62.24 | 62.46/54.06 | 66.53/65.18 | 64.05/62.75 |
| PV-RCNN(錨點) | 75.41/74.74 | 67.44/66.80 | 71.98/61.24 | 63.70/53.95 | 65.88/64.25 | 63.39/61.82 |
| PV-RCNN(中心頭) | 75.95/75.43 | 68.02/67.54 | 75.94/69.40 | 67.66/61.62 | 70.18/68.98 | 67.73/66.57 |
| 體素R-CNN(中心) - 動態素 | 76.13/75.66 | 68.18/67.74 | 78.20/71.98 | 69.29/63.59 | 70.75/69.68 | 68.25/67.21 |
| PV-RCNN ++ | 77.82/77.32 | 69.07/68.62 | 77.99/71.36 | 69.92/63.74 | 71.80/70.71 | 69.31/68.26 |
| PV-RCNN ++(RESNET) | 77.61/77.14 | 69.18/68.75 | 79.42/73.31 | 70.88/65.21 | 72.50/71.39 | 69.84/68.77 |
在這裡,我們還提供了在完整培訓集中訓練的幾種模型的性能(請參閱PV-RCNN ++的論文):
| performance@(使用100%數據的訓練) | VEC_L1 | VEC_L2 | ped_l1 | PED_L2 | CYC_L1 | CYC_L2 |
|---|---|---|---|---|---|---|
| 第二 | 72.27/71.69 | 63.85/63.33 | 68.70/58.18 | 60.72/51.31 | 60.62/59.28 | 58.34/57.05 |
| Centerpoint-Pillar | 73.37/72.86 | 65.09/64.62 | 75.35/65.11 | 67.61/58.25 | 67.76/66.22 | 65.25/63.77 |
| A2-n-andor | 77.05/76.51 | 68.47/67.97 | 75.24/66.87 | 66.18/58.62 | 68.60/67.36 | 66.13/64.93 |
| VoxelNext-2d | 77.94/77.47 | 69.68/69.25 | 80.24/73.47 | 72.23/65.88 | 73.33/72.20 | 70.66/69.56 |
| VoxelNext | 78.16/77.70 | 69.86/69.42 | 81.47/76.30 | 73.48/68.63 | 76.06/74.90 | 73.29/72.18 |
| PV-RCNN(中心頭) | 78.00/77.50 | 69.43/68.98 | 79.21/73.03 | 70.42/64.72 | 71.46/70.27 | 68.95/67.79 |
| PV-RCNN ++ | 79.10/78.63 | 70.34/69.91 | 80.62/74.62 | 71.86/66.30 | 73.49/72.38 | 70.70/69.62 |
| PV-RCNN ++(RESNET) | 79.25/78.78 | 70.61/70.18 | 81.83/76.28 | 73.17/68.00 | 73.72/72.66 | 71.21/70.19 |
| DSVT柱 | 79.44/78.97 | 71.24/70.81 | 83.00/77.22 | 75.45/69.95 | 76.70/75.70 | 73.83/72.86 |
| DSVT-voxel | 79.77/79.31 | 71.67/71.25 | 83.75/78.92 | 76.21/71.57 | 77.57/76.58 | 74.70/73.73 |
| PV-RCNN ++(Resnet,2幀) | 80.17/79.70 | 72.14/71.70 | 83.48/80.42 | 75.54/72.61 | 74.63/73.75 | 72.35/71.50 |
| mppnet(4幀) | 81.54/81.06 | 74.07/73.61 | 84.56/81.94 | 77.20/74.67 | 77.15/76.50 | 75.01/74.38 |
| mppnet(16幀) | 82.74/82.28 | 75.41/74.96 | 84.69/82.25 | 77.43/75.06 | 77.28/76.66 | 75.13/74.52 |
由於Waymo數據集許可協議,我們無法提供上述驗證的模型,但是您可以通過使用默認配置培訓來輕鬆實現類似的性能。
所有型號均經過8 GPU培訓,可供下載。有關BEVFUSION的培訓,請參閱指南。
| 伴侶 | mase | 毛 | 馬夫 | 麥 | 地圖 | NDS | 下載 | |
|---|---|---|---|---|---|---|---|---|
| 尖頭 - 穆爾蒂黑德 | 33.87 | 26.00 | 32.07 | 28.74 | 20.15 | 44.63 | 58.23 | 型號23m |
| 第二-Multihead(CBGS) | 31.15 | 25.51 | 26.64 | 26.26 | 20.46 | 50.59 | 62.29 | 型號35m |
| Centerpoint Pointpillar | 31.13 | 26.04 | 42.92 | 23.90 | 19.14 | 50.03 | 60.70 | 型號23m |
| CenterPoint(voxel_size = 0.1) | 30.11 | 25.55 | 38.28 | 21.94 | 18.87 | 56.03 | 64.54 | 34m型 |
| CenterPoint(voxel_size = 0.075) | 28.80 | 25.43 | 37.27 | 21.55 | 18.24 | 59.22 | 66.48 | 34m型 |
| voxelNext(voxel_size = 0.075) | 30.11 | 25.23 | 40.57 | 21.69 | 18.56 | 60.53 | 66.65 | 型號31m |
| 輸血l* | 27.96 | 25.37 | 29.35 | 27.31 | 18.55 | 64.58 | 69.43 | 32m型 |
| Bevfusion | 28.03 | 25.43 | 30.19 | 26.76 | 18.48 | 67.75 | 70.98 | 型號157m |
*:使用淡出策略,該策略可以在培訓期間的最後幾個時期內禁用數據增加。
所有型號均經過8 GPU培訓。
| 車輛 | 行人 | 騎自行車的人 | 地圖 | |
|---|---|---|---|---|
| Pointrcnn | 52.09 | 4.28 | 29.84 | 28.74 |
| 尖利柱 | 68.57 | 17.63 | 46.81 | 44.34 |
| 第二 | 71.19 | 26.44 | 58.04 | 51.89 |
| PV-RCNN | 77.77 | 23.50 | 59.37 | 53.55 |
| 中心點 | 78.02 | 49.74 | 67.22 | 64.99 |
所有型號均經過4個GPU培訓。
| 地圖 | 下載 | |
|---|---|---|
| VoxelNext | 30.5 | 32m型 |
歡迎通過提交拉請請求來支持其他數據集。
請參閱install.md以安裝OpenPCDet 。
請參閱Demo.md進行快速演示,以使用驗證的模型進行測試,並對您的自定義數據或原始KITTI數據可視化預測結果。
請參閱get_started.md,以了解有關此項目的更多用法。
OpenPCDet在Apache 2.0許可下發布。
OpenPCDet是基於LiDAR的3D場景感知的開源項目,該項目支持基於LIDAR的多個基於LIDAR的感知模型,如上所示。 PCDet的某些部分是從上述支持方法的官方釋放代碼中學到的。我們要感謝他們提出的方法和官方實施。
我們希望該回購可以作為強大而靈活的代碼庫來通過加快重新進化以前的工作和/或開發新方法的過程來使研究社區受益。
如果您發現此項目對您的研究有用,請考慮引用:
@misc{openpcdet2020,
title={OpenPCDet: An Open-source Toolbox for 3D Object Detection from Point Clouds},
author={OpenPCDet Development Team},
howpublished = {url{https://github.com/open-mmlab/OpenPCDet}},
year={2020}
}
歡迎通過為此倉庫做出貢獻,並隨時與我們聯繫以獲得任何潛在的貢獻,歡迎成為OpenPCDET開發團隊的成員。