SampleNet: Differentiable Point Cloud Sampling

POWER發表於2021-12-25

Abstract

  • 經典的取樣方法(FPS)之類的沒有考慮到下游任務。
  • 改組上一篇工作沒有解決不可微性,而是提供了變通的方法。
  • 本文提出瞭解決不可微性的方法
  • 可微鬆弛點雲取樣,近似取樣點作為一個混合點在主要輸入點雲。

Introduction

FPS是任務無關的,它最小化了集合誤差,並且不考慮取樣點雲的後續處理。

Learning to Sample提出了一種根據任務的抽樣方法,他們的主要想法是簡化點雲,然後對點雲進行取樣。但是這個取樣得到的集合不能保證是輸入的子集。因此,在後處理步驟中,他們將每個簡化點與輸入點雲中最近的相鄰點進行匹配從而得到子集。

簡化的點雲必須平衡兩個相互衝突的條件:

  1. 簡化的點雲需要和原始點雲保持形狀的相似性
  2. 簡化的點雲對於後續的任務有優化效果

此文擴充套件了Learning to Sample的工作,在訓練過程中,通過匹配步驟引入一個可微的鬆弛(如最近鄰選擇,下圖2),這種我們稱之為軟投影的操作,用輸入中最近鄰的甲醛平均替代取樣集合中的每個點。在訓練過程中,對權值進行優化以逼近最近鄰的選擇,並在推理階段完成。

軟投影操作方式改變了表示方式,這些投影點不是在自由空間中的絕對座標,而是用他們在初始點雲中的區域性鄰域的權值座標來表示。這個操作由temperature引數控制,他在訓練過程中被最小化,以建立一個模擬退火計劃。

image

本文貢獻:

  1. 一種新穎的點雲取樣可微近似的方法
  2. 和非學習以及學習的方法相比,使用點雲取樣進行分類和重建任務的效能得到了改善
  3. 採用該方法進行點雲配準

此處是需要讀一下參考文獻

Nearest neighbor selection最近鄰方法在文獻中被廣泛應用於資訊融合。在神經網路的背景下,使用最近鄰的一個顯著缺點是,選擇的規則是不可微的,Goldberger 等人提出了最近鄰規則的隨機鬆弛。他們在候選鄰居集合上定義了一個分類分佈,其中1-NN規則是改分佈的極限情況。

後來Plotz and Roth通過提出k近鄰選擇規則的確定性鬆弛推廣了Goldberger的工作。他們提出了一種神經網路層,稱為神經最鄰近塊,它利用了KNN
鬆弛。在該層中。利用特徵空間中鄰居的加權平均進行資訊傳播。相鄰權值用控制權值分佈均勻性的溫度係數進行縮放。在我們的工作中使用放鬆最近鄰選擇作為一種近似點雲取樣的方法。而在Plotz and Roth的工作中,溫度係數是不受約束的,我們在訓練過程中提升一個小的溫度值,來近似最近鄰的選擇。

最近又提出了另一種子抽樣的方法,將特徵最活躍的點傳遞到下一網路層

Learning to Sample提出了一種面向學習任務的點雲取樣的方法,但是實現方法導致了訓練階段和推理階段之間的效能差距,此處我們在訓練過程中通過一個可微的最近鄰近似來減輕這個問題。

Method

圖3描述了我們的抽樣方法SampleNet的概述。首先,在n個點的完整點雲上對任務網路進行預訓練並固定引數。然後,SampleNet取一個完整的輸入P,通過神經網路將其簡化為一個更小有m個點的集合QQ是通過最近鄰選擇的可微鬆弛軟投影到P上的。最終將SampleNet的輸出R,喂到任務網路當中。

  1. 首先使用有\(n\)個點的完整點雲對任務網路進行預訓練並固定引數
  2. 然後SampleNet吃進去完整的點雲\(P\),並且通過神經網路將其簡化為只有\(m\)個點的集合Q
  3. Q是通過最近鄰選擇的可微鬆弛軟投影到P上的
  4. SampleNet輸出點集R作為TaskNet的輸入

image

SampleNet用一下三個損失函式進行訓練:

\[\mathcal{L}^{samp}_{total}=\mathcal{L}_{task}(R)+\alpha\mathcal{L}_{simplify}(Q,P)+\lambda\mathcal{L}_{project}\tag{1} \]

其中第一項\(\mathcal{L}_{task}(R)\)用於優化任務的取樣集合,他的目的是保持保持取樣點雲的任務效能。\(\mathcal{L}_{simplify}(Q,P)\)讓取樣集合儘量接近輸入集合的形狀。也就是說Q中的每個點在P中都有一個閉合點,反之亦然。最後一項,\(\mathcal{L}_{project}\)通過軟投影運算,對輸入點雲中的點進行近似取樣。

Learning to Sample的前置知識

給定一個有\(n\)個點的3D座標點雲\(P\in\mathbb{R}^{n\times 3}\),目標是找到一個有\(m\)個點的子集\(R^*\in\mathbb{R}^{m\times 3}\),使取樣的點雲\(R^*\)是針對目標任務\(T\)有過優化的。將\(T\)的目標函式表示為\(\mathcal{F}\),則\(R^*\)由下:

\[R^*=arg\min_R \mathcal{F}(T(R)), R\subset P, |R|=m\leq n.\tag{2} \]

  • 限制抽樣出來的子集對下游任務是有優化效果的

由於抽樣問題的不可微性,從而就有一個挑戰性問題。提出了一種由\(P\)生成\(Q\)的網路,它主要有以下兩種性質:其中\(Q\)是問題的最優解,其點接近於\(P\)的點。並且由於損失函式的約束(如Learning to Sample),生成的Q的集合中的點比較接近原始輸入P集合中的點位置。為了鼓勵點之間的距離儘量接近此處提出一個損失函式用於約束:

\[\mathcal{L}_a(X,Y)=\frac{1}{|X|}\sum_{x\in X}\min_{y\in Y}||x-y||^2_2\tag{3} \]

最大近鄰損失為:

\[\mathcal{L}_m(X,Y)=\max_{x\in X}\min_{y\in Y}||x-y||_2^2\tag{4} \]

\(P\)是輸入,\(Q\)是輸出,\(R\)是喂到任務網路的輸入。綜上所述,Simplification Loss為:

\[\mathcal{L}_{simplify}(Q,P)=\mathcal{L}_a(Q,P)+\beta\mathcal{L}_m(Q,P)+(\gamma+\delta|Q|)\mathcal{L}_a(P,Q)\tag{5} \]

  • \(\mathcal{L}_a(Q,P)\) 讓生成點儘量和原始輸入點重合
  • \(\mathcal{L}_a(P,Q)\) 約束生成點的形狀儘量和輸入點的形狀相似
  • \(\mathcal{L}_m(Q,P)\) 最差情況下生成點距離原始點的最大距離。

為了針對任務優化點集Q,我們將任務損失新增到優化目標當中,所以Simplification network的損失為:

\[\mathcal{L}_s(Q,P)=\mathcal{L}_{task}(Q)+\alpha\mathcal{L}_{simplify}(Q,P)\tag{6} \]

上面的取樣網路是針對取樣大小為m進行訓練的。Learning to Sample提出了一種針對可變取樣大小的網路,針對任務對點的關鍵性進行排序,並且可以輸出任意大小的取樣樣本。

\[\mathcal{L}_{prog}(Q,P)=\sum_{c\in C_s}\mathcal{L}_s(Q_c,P)\tag{7} \]

其中的\(Q_c\)的大小是可以控制的。

對於前人工作的擴充套件

此處沒有像之前一樣針對簡化之後的點雲進行匹配從而得到取樣的點,反而使用軟投影操作。該操作如圖4所示,\(q\in Q\)中的每個點\(q\)被軟投影到他的鄰域當中,這裡的鄰域指的是他在原始完整點雲中\(P\)\(k\)個最近鄰的鄰域定義,從而得到一個投影點\(r\in R\)。點\(r\)是原始點\(P\)的加權平均:

\[r=\sum_{i\in\mathcal{N}_P(q)}\omega_i P_i\tag{8} \]

image

其中\(\mathcal{N}_P(q)\)包含\(P\)中與\(q\)最鄰近的\(k\)個座標,其中的權重\(\{\omega_i\}\)是根據\(q\)和與其鄰居之間的距離確定的,用一個可學習的溫度係數\(t\)確定。

\[\omega_i=\frac{e^{-d^2_i/t^2}}{\sum_{j\in \mathcal{N}_P(q)}e^{-d^2_j/t^2}}\tag{9} \]

其中的距離函式為\(d_i=||q-P_i||_2\)
鄰域的大小\(k=|\mathcal{N}_P(q)|\)在取樣中也扮演了一個重要的角色,通過距離項,網路可以對簡化後的點進行調整,使其逼近區域性區域內的不同輸入點。雖然小的區域性鄰域大小可以降低探索區域,但是過大的大小也會 造成區域性上下文的資訊損失。

權值\(\{\omega_i\}\)可以看作是點\(\{P_i\}\)上的概率分佈,其中\(r\)為期望值。溫度係數控制著這種分佈的形狀。在\(t→0\)的極限下,分佈收斂於一個位於最近鄰點的克羅內克函式。考慮到這些觀察結果,我們希望點r從P的區域性鄰域近似取樣。為了實現這一點,我們新增了一個投影損失,如下所示:

\[\mathcal{L}_{project}=t^2\tag{10} \]

該損失函式使\(t\)值儘量地小。

在這種取樣方法中,任務網路喂進去的使投影的點集\(R\)而不是簡化的集合\(q\)來輸入的。因為\(R\)中的每一個點都從\(P\)中估計選擇了一個點,所以我們的網路使取樣輸入點雲而不是簡化輸入點雲。我們的取樣方法也可以很容易的擴充套件到可變取樣大小的網路中,此時的損失函式的形式為:

\[\mathcal{L}_{total}^{prog}=\sum_{c\in C_s}(\mathcal{L}_{task}(R_c)+\alpha\mathcal{L_{simplify}(Q_c,P)})+\lambda\mathcal{L}_{project}\tag{11} \]

其中\(R_c\)為對\(Q_c\)進行軟投影運算得到的點集。在推理階段,我們使用取樣替代軟投影,以獲得一個取樣點雲\(R^*\)。就像在分類問題中,對於每個點\(r^*\in R^*\),我們選擇具有最高投影權值的點\(P_i\)

\[r^*\in P_i*, i^*=arg\max_{i\in \mathcal{N}P(q)}\omega_i\tag{12} \]

Learning to Sample類似,如果多個點\(r^*\)對應同一個點\(P_i*\),我們去唯一的取樣點集,使用最多m點的FPS完成它,並評估任務效能。

軟投影作為冪等運算,嚴格的講軟投影(公式8)不是冪等運算,因此不構成數學投影。然而當方程9中的溫度係數趨近於0的時候,得到冪等抽樣運算。

Result

image

相關文章