国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Voxel R-CNN:基于體素的高性能 3D 目標檢測

這篇具有很好參考價值的文章主要介紹了Voxel R-CNN:基于體素的高性能 3D 目標檢測。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

論文地址:https://arxiv.org/abs/2012.15712
論文代碼:https://github.com/djiajunustc/Voxel-R-CNN

論文背景

基于點的方法具有較高的檢測精度,但基于點的方法通常效率較低,因為對于點集抽象來說,使用點表示來搜索最近鄰的代價更高。
相比于基于點,更高效,基于體素的結構更適合于特征提取,但由于輸入點云被劃分為規(guī)則的網格,因此往往產生較低的準確性(體素化經常導致精確位置信息的丟失)。

基于點的方法一樣準確,與基于Voxels的方法一樣快速的方法?

首先,論文認為精確定位原始點云是不錯的,但沒有必要。基于體素的方法通常會對 bird-eye-view (BEV)表示執(zhí)行目標檢測,即使輸入數據是 3D 體素。相比之下,基于點的方法通常依賴于抽象的點表示來恢復 3D 結構上下文,并基于點方向的特征進行進一步的細化。
通過仔細觀察底層機制,發(fā)現現有的基于體素的方法的關鍵缺點在于,它們將3D特征體轉換為BEV表示,而從未恢復3D結構上下文。
Voxel R-CNN:基于體素的高性能 3D 目標檢測,自動駕駛,神經網絡,cnn,3d,目標檢測,自動駕駛
Voxel R-CNN:基于體素的高性能 3D 目標檢測,自動駕駛,神經網絡,cnn,3d,目標檢測,自動駕駛SECOND:將體素化數據饋送到三維骨干網進行特征提取。 然后將3D特征體轉換為BEV表示。 最后,利用一個二維主干網和一個區(qū)域建議網絡(RPN)進行檢測。

PV-RCNN:通過添加 Keypoints 分支來保存3D結構信息來擴展 SECOND。 引入體素集抽象(VSA)將多尺度三維體素特征集成到關鍵點中。 通過 ROI-grid-pooling 從關鍵點中進一步提取每個三維區(qū)域 proposals 的特征,進行 box refinement

SECOND 和 PV-RCNN 在檢測性能(即準確性和效率)上存在較大差距:
1.SECOND 是 one-stage 方法,PV-RCNN 提取檢測頭進行 box refinement;
2.PV-RCNN 中的關鍵點保留了三維結構信息,SECOND 直接對BEV表示進行檢測。
3.PV-RCNN 比 SECOND 慢得多;
3.SECOND AP 不如 PV-RCNN。

通過對比得到:
1.三維結構對于三維目標檢測器具有重要的意義,因為單憑BEV表示不足以精確預測三維空間中的 bounding boxes;
2.點-體素特征交互耗時且影響檢測器效率。

論文內容

Voxel R-CNN:基于體素的高性能 3D 目標檢測,自動駕駛,神經網絡,cnn,3d,目標檢測,自動駕駛
基于體素的 3D 目標檢測的兩階段框架。
a)一個 3D backbone;
b)一個 2D backbone,后面跟著 RPN;
c)一個 Voxel ROI pooling 和 一個用于 box refinement 的檢測子網。

首先將原始點云劃分為規(guī)則體素,并利用 3D backbone 進行特征提取。然后將稀疏的3D體素轉化為BEV表示,在BEV表示上應用 2D backbone 和 RPN 生成 3D 區(qū)域建議。隨后,使用 Voxel ROI pooling 提取 RoI 特征,并將這些特征輸入檢測子網進行 box refinement。

Voxel ROI pooling

Voxel R-CNN:基于體素的高性能 3D 目標檢測,自動駕駛,神經網絡,cnn,3d,目標檢測,自動駕駛
為了直接從三維體素特征體集合空間上下文,論文提出了 Voxel ROI pooling。

Voxel Volumes as Points。 將稀疏 3D volumes 表示為一組非空體素中心點 { v i = ( x i , y i , z i ) } i = 1 N \{v_i=(x_i,y_i,z_i)\}^N_{i=1} {vi?=(xi?,yi?,zi?)}i=1N?及其對應的特征向量{φi}ni=1。 具體而言,利用指數、體素大小和點云邊界計算體素中心的三維坐標。

體素查詢
從 3D feature volumes 中查找相鄰體素。 與無序點云相比,體素在量化空間中有規(guī)律地排列,便于鄰居訪問。 例如,體素查詢的 26-neighbor voxels 可以通過在體素索引 ( i , j , k ) (i,j,k) (i,j,k)上添加一個三重偏移量 ( Δ i , Δ j , Δ k ) , Δ i , Δ j , Δ k ∈ { ? 1 , 0 , 1 } (Δ_i,Δ_j,Δ_k),Δi,Δj,Δk∈\{-1,0,1\} (Δi?,Δj?,Δk?)Δi,ΔjΔk{?1,0,1} 來計算。 利用這一特性,論文設計了體素查詢來有效地對體素進行分組。
首先將查詢點量化為一個體素,然后通過 indices translation 轉換獲取相鄰體素。在體素查詢中利用曼哈頓距離,在一個距離閾值內采樣多達 K K K 個體素。具體來說,體素 α = ( i α , j α , k α ) α=(i_α,j_α,k_α) α=(iα?jα?kα?) β = ( i β , j β , k β ) β=(i_β,j_β,k_β) β=(iβ?,jβ?,kβ?) 之間的曼哈頓距離 D ( α , β ) D(α,β) D(α,β) 計算如下: D m ( α , β ) = ∣ i α ? i β ∣ + ∣ j α ? j β ∣ + ∣ k α ? k β ∣ . (1) \tag1 D_m(\alpha , \beta) = |i_\alpha - i_\beta|+|j_\alpha - j_\beta|+ |k_\alpha - k_\beta|. Dm?(α,β)=iα??iβ?+jα??jβ?+kα??kβ?∣.(1)具體地,計算體素 α = ( i α , j α , k α ) α=(i_α,j_α,k_α) α=(iα?,jα?,kα?) β = ( i β , j β , k β ) β=(i_β,j_β,k_β) β=(iβ?,jβ?,kβ?) 之間的曼哈頓距離 D ( α , β ) D(α,β) D(α,β) 為:假設三維特征體中有 n n n 個非空體素,利用球查詢來查找給定查詢點的相鄰體素,時間復雜度為 O ( n ) O(n) O(n)。然而,進行體素查詢的時間復雜度只有 O ( K ) O(K) O(K),其中 K K K 為鄰居數。鄰居感知屬性使得使用體素查詢對鄰居體素特征進行分組比使用球體查詢對鄰居點特征進行分組更有效。

體素 ROI Pooling 層
首先將一個 region proposal 劃分為 G × G × G G×G×G G×G×G 的規(guī)則 sub-voxel。 中心點作為相應子體素的網格點。 由于3D特征量非常稀疏(非空體素占小于3%的空間),不能直接利用最大池化每個 sub-voxel 的特征。取而代之的是,論文將相鄰體素的特征集成到網格點中進行特征提取。具體來說,給定一個網格點 g i g_i gi?,首先利用體素查詢對一組相鄰的體素進行分組 Γ i = { v i 1 , v i 2 , . . . , v i K } Γ_i = \{ v^1_i, v^2_ i,...,v^K_i\} Γi?={vi1?,vi2?,...,viK?}。 然后,使用 PointNet 模塊聚合相鄰的體素特征: η i = max ? k = 1 , 2 , . . . , K { Ψ ( [ v i k ? g i ; ? i k ] ) } , (2) \tag2 \eta_i = \max_{k=1,2,...,K}\{ \Psi ([v_i^k - g_i;\phi_i^k]) \}, ηi?=k=1,2,...,Kmax?{Ψ([vik??gi?;?ik?])},(2)其中 v i ? g i v_i-g_i vi??gi? 表示相對坐標, ? i k \phi ^k_i ?ik? v i k v^k_i vik? 的體素特征, Ψ ( ? ) \Psi(·) Ψ(?) 表示MLP。沿著通道進 max pooling 操作 max ? ( ? ) \max(·) max(?) 以獲得聚合的特征向量 η i η_i ηi?。特別是,利用體素 RoI Pooling 從 3D backbone network 的最后兩個階段的 3D 特征體素特征中提取體素特征。對于每個階段,設置了兩個曼哈頓距離閾值,以用多個尺度對體素進行分組。然后,將不同階段、不同規(guī)模的特征聚合在一起,得到 RoI 特征。

加速局部聚合
即使使用論文提出的體素查詢,在體素 RoI pooling 中的局部聚合操作(即 PointNet)模塊仍然涉及很大的計算復雜度即使使用論文提出的體素查詢。
Voxel R-CNN:基于體素的高性能 3D 目標檢測,自動駕駛,神經網絡,cnn,3d,目標檢測,自動駕駛
如圖所示,總共有 M M M 個網格點( M = r × G 3 M=r×G^3 M=r×G3,其中 r r r 為ROI個數, G G G為網格大?。?,每個網格點分組 K K K 個體素。 分組特征向量的維數為 C + 3 C+3 C+3,包括 C ? d i m C-dim C?dim 體素特征和 3 ? d i m 3-dim 3?dim 相對坐標。 在應用FC層時,分組體素占用了大量的內存,并導致了較大的計算 FLOPs ( O ( M × K × ( C + 3 ) × C ′ ) ) (O(M×K×(C+3)×C^{'})) (O(M×K×(C+3)×C))。

論文另外引入了一個加速的 PointNet 模塊,以進一步降低 Voxel Query 的計算復雜度。
Voxel R-CNN:基于體素的高性能 3D 目標檢測,自動駕駛,神經網絡,cnn,3d,目標檢測,自動駕駛
將體素特征和相對坐標分解為兩個流。 給定權重為 W ∈ R C ′ , C + 3 W∈\R^{C^{'},C+3} WRC,C+3 的 FC 層,將其劃分為 W F ∈ R C ′ , C W_F∈\R^{C^{'},C} WF?RC,C W C ∈ R C ′ , 3 W_C∈\R^{C^{'},3} WC?RC,3。 由于體素特征與網格點無關,在進行體素查詢之前,在體素特征上應用了一個帶 W F W_F WF? 的 FC 層。 然后,在體素查詢后,只將分組的相對坐標乘以 W C W_C WC? 得到相對位置特征,并將其添加到分組的體素特征中。加速的 PointNet 模塊的 Flop 為 O ( N × C × C ′ + M × K × 3 × C ′ ) O(N×C×C^{'}+M×K×3×C^{'}) O(N×C×C+M×K×3×C)。 由于分組體素的個數 ( M × K ) (M×K) (M×K) N N N 高出一個數量級,加速的 PointNet 模塊比原來的的 PointNet 模塊效率更高。

Backbone 和 RPN

3D backbone network 逐漸將體素化輸入轉換成 feature volumes。然后,將輸出張量沿 Z 軸疊加生成 BEV 特征圖。
2D backbone network 由兩個部分組成:一個自頂向下的特征提取子網絡和一個多尺度的特征融合子網絡,該子網絡由兩個標準的3×3卷積層組成,該子網絡對自頂向下的特征進行上采樣和級聯(lián)。
最后,將 2D backbone network 的輸出與兩個 1×1 卷積層進行卷積,生成3D RPN。

檢測頭

檢測頭以 ROI 特征作為輸入進行 box refinement。 具體來說,共享的2層 MLP 首先將 ROI 特征轉換為特征向量。 然后,將扁平化特征注入兩個 sibling 分支:一個用于 bounding box 回歸,另一個用于置信度預測。bounding box 回歸分支預測從3D RPN 到地面真值 box 的殘差,而置信度分支預測與 IOU 相關的置信度得分。

Training Objectives

RPN損失
將RPN的損失設計為分類損失和 box 回歸損失的組合,如下: L R P N = 1 N f g [ ∑ i L c l s ( p i a , c i ? ) + L ( c i ? ≥ 1 ) ∑ i L r e g ( δ i a , t i ? ) ] (3) \tag3 \mathcal L_{RPN} = \frac{1}{N_{fg}}[\sum_i \mathcal L_{cls}(p_i^{a},c_i^{*})+ \mathbb L(c_i^{*} \geq 1)\sum_i \mathcal L_{reg}(\delta_{i}^{a},t_{i}^{*})] LRPN?=Nfg?1?[i?Lcls?(pia?,ci??)+L(ci??1)i?Lreg?(δia?,ti??)](3)其中, N f g N_{fg} Nfg? 表示前景錨點的數量, p i a p^a_i pia? δ i a δ^a_i δia? 為分類分支和框回歸分支的輸出, c i ? c^?_i ci?? t i ? t^?_i ti?? 分別為分類標簽和回歸目標。 L ( c i ? ≥ 1 ) \mathbb L(c_i^{*} \geq 1) L(ci??1) )表示僅使用前景錨點計算的回歸損失。在這里,利用 Focal 損失進行分類,利用 Huber 損失進行 box regression。

檢測頭損失
分配給 confidence 分支的目標是與IOU相關的值: l i ? ( IoU i ) = { 0 IoU i < θ L , IoU i ? θ L θ H ? θ L θ L ≤ IoU i < θ H , 1 IoU i > θ H , (4) \tag4 l_i^* (\text{IoU}_i) = \begin{cases} 0 &\text{IoU}_i < \theta_L, \\ \frac{\text{IoU}_i - \theta_L}{\theta_H - \theta _ L} & \theta_L \leq \text{IoU}_i < \theta_H,\\ 1 &\text{IoU}_i > \theta_H, \end{cases} li??(IoUi?)=? ? ??0θH??θL?IoUi??θL??1?IoUi?<θL?,θL?IoUi?<θH?,IoUi?>θH?,?(4) 其中, IoU i \text{IoU}_i IoUi? 是第 i i i 個 proposal 和相應的地面真值 box 之間的 I o U IoU IoU, θ H θ_H θH? θ L θ_L θL? 是前景和背景 I o U IoU IoU 閾值 。論文利用二元交叉熵損失進行置信度預測。 與RPN一樣,Box回歸分支也使用Huber損失。 探測頭的損失計算如下: L h e a d = 1 N s [ ∑ i L c l s ( p i , l i ? (IoU i ) ) + L ( c i ? ≥ 1 ) ] (5) \tag5 \mathcal L_{head} = \frac{1}{N_s}[\sum_i \mathcal L_{cls}(p_i,l_i^*\text{(IoU}_i))+\mathbb L(c_i^{*} \geq 1)] Lhead?=Ns?1?[i?Lcls?(pi?,li??(IoUi?))+L(ci??1)](5) 其中 N s N_s Ns? 是訓練階段的抽樣區(qū)域 proposal 數, L ( IoU i ≥ θ r e g ) \mathbb L(\text{IoU}_i≥θ_{reg}) L(IoUi?θreg?) 表示只有 IoU > θ r e g \text{IoU}>θ_{reg} IoU>θreg? 的區(qū)域 proposals 才會導致回歸損失。

論文總結

論文提出了一種基于體素表示的新型 3D 目標檢測器——Voxel R-CNN。以體素為輸入,Voxel R-CNN首先從鳥瞰視圖的特征表示中生成密集區(qū)域 proposals,然后利用 voxel RoI pooling 從3D體素特征中提取區(qū)域特征,進一步細化。通過充分利用體素表示,Voxel R-CNN在準確性和效率之間取得了平衡。文章來源地址http://www.zghlxwxcb.cn/news/detail-701678.html

到了這里,關于Voxel R-CNN:基于體素的高性能 3D 目標檢測的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 字節(jié)跳動開源 Shmipc:基于共享內存的高性能 IPC

    字節(jié)跳動開源 Shmipc:基于共享內存的高性能 IPC

    動手點關注 干貨不迷路 CloudWeGo - Shmipc?是字節(jié)跳動服務框架團隊研發(fā)的 高性能進程間通訊庫 ,它基于 共享內存 構建,具有 零拷貝 的特點,同時它引入的同步機制具有 批量收割 IO 的能力,相對于其他進程間通訊方式能明顯提升性能。在字節(jié)內部,Shmipc 應用于 Service Mesh 場

    2023年04月08日
    瀏覽(27)
  • 基于Springboot3+微服務實現12306高性能售票系統(tǒng)

    基于Springboot3+微服務實現12306高性能售票系統(tǒng)

    ??博主介紹:全網CSDN特邀作者、博客專家、CSDN新星計劃導師、全棧領域優(yōu)質創(chuàng)作者,博客之星、掘金/華為云/阿里云/InfoQ等平臺優(yōu)質作者。 專注于Java、小程序技術領域和畢業(yè)項目實戰(zhàn)?? ?Java、SSM+Vue、SpringBoot+Vue、NodeJS+Vue、微信小程序、Python、大數據、安卓。 你想要的我

    2024年02月20日
    瀏覽(100)
  • 用freesurfer對擴散指標(FA,MD)進行VBA分析(基于體素的分析)-dt_recon

    freesurfer官網–https://surfer.nmr.mgh.harvard.edu/fswiki/dt_recon 步驟:需要對3DT1圖像進行renconall預處理 將輸入轉換為 nifti(創(chuàng)建 dwi.nii) 使用 FSL 的 eddy_correct進行渦流和運動校正,創(chuàng)建 dwi-ec.nii??赡苄枰?1-2 小時。 DTI GLM 擬合和張量構造。包括創(chuàng)建: tensor.nii – maps of the tensor (9 fra

    2024年01月22日
    瀏覽(23)
  • 基于lvs+keepalived+nginx的web高性能集群項目

    基于lvs+keepalived+nginx的web高性能集群項目

    模擬企業(yè)里的web項目需求,最終目的是構建一個高性能高可用的web集群系統(tǒng)。部署lvs負載均衡系統(tǒng)和keepalived高可用軟件,后端使用nginx做web服務器,同時搭建內部的一套基于prometheus的監(jiān)控系統(tǒng)。使用ansible實現整個集群系統(tǒng)的自動化運維工作。 ceotos7 nginx1.25.3 node_exporter-1.4.0

    2024年02月20日
    瀏覽(18)
  • 網易NDH基于Impala的高性能SQL引擎建設實踐

    網易NDH基于Impala的高性能SQL引擎建設實踐

    導讀:本文將從四個方面來進行介紹。首先是分析在網易NDH中使用 Impala 過程遇到的一些痛點;第二個部分是基于這些痛點問題,我們提出了建設高性能SQL引擎的方案,以及這些方案是基于什么原則來創(chuàng)建的;第三個是基于這些原則,我們做了哪些的優(yōu)化實踐的嘗試;最后會

    2024年02月09日
    瀏覽(28)
  • 高性能計算實驗——矩陣乘法基于MPI的并行實現及優(yōu)化

    高性能計算實驗——矩陣乘法基于MPI的并行實現及優(yōu)化

    熟練掌握MPI編程方法,并將通用矩陣乘法轉為MPI并行實現,進一步加深MPI的使用與理解。 進一步熟悉MPI矩陣乘法的實現,學習MPI點對點通信與集合通信的異同點和各自的優(yōu)缺點,學會比較二者的性能以及各自使用的情形。 學習如何將自己編寫的代碼改造為標準庫函數,供其

    2024年02月03日
    瀏覽(31)
  • 基于 Redis 實現高性能、低延遲的延時消息的方案演進

    基于 Redis 實現高性能、低延遲的延時消息的方案演進

    ??歡迎來系統(tǒng)設計專欄:基于 Redis 實現高性能、低延遲的延時消息的方案演進 ??其他專欄:java面試?數據結構?源碼解讀?故障分析 ??作者簡介:大家好,我是小徐?? ??博客首頁:CSDN主頁 小徐的博客 ??每日一句: 好學而不勤非真好學者 ?? 歡迎大家關注! ?? 隨著

    2024年01月22日
    瀏覽(21)
  • 基于k8s的高性能高可用的web集群

    基于k8s的高性能高可用的web集群

    模擬公司里的k8s生產環(huán)境,部署web,MySQL,nfs,harbor,Prometheus,Jenkins等應用,構建一個高性能高可用的web集群 CentOS7,k8s,docker,Prometheus,nfs,jumpserver,harbor,ansible,Jenkins等 k8s-master:192.168.121.101 k8s-node1:192.168.121.102 k8s-node2:192.168.121.103 nfs:192.168.121.104 harbor:192.168.121

    2024年04月28日
    瀏覽(26)
  • 【大數據】Doris:基于 MPP 架構的高性能實時分析型數據庫

    【大數據】Doris:基于 MPP 架構的高性能實時分析型數據庫

    Apache Doris 是一個基于 MPP ( Massively Parallel Processing , 大規(guī)模并行處理 )架構的高性能、實時的分析型數據庫,以極速易用的特點被人們所熟知,僅需亞秒級響應時間即可返回海量數據下的查詢結果,不僅可以支持高并發(fā)的點查詢場景,也能支持高吞吐的復雜分析場景?;?/p>

    2024年02月11日
    瀏覽(27)
  • OpenResty安裝-(基于Nginx的高性能Web平臺,可在Nginx端編碼業(yè)務)

    OpenResty安裝-(基于Nginx的高性能Web平臺,可在Nginx端編碼業(yè)務)

    首先你的Linux虛擬機必須聯(lián)網 首先要安裝OpenResty的依賴開發(fā)庫,執(zhí)行命令: 你可以在你的 CentOS 系統(tǒng)中添加 openresty 倉庫,這樣就可以便于未來安裝或更新我們的軟件包(通過 yum check-update 命令)。運行下面的命令就可以添加我們的倉庫: 如果提示說命令不存在,則運行:

    2024年02月07日
    瀏覽(54)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包