本文是 CVPR 2022入選論文《Projective Manifold Gradient Layer for Deep Rotation Regression》的解讀。該論文由北京大學(xué)王鶴課題組與陳寶權(quán)課題組、北京通用人工智能研究院、斯坦福大學(xué)、帝國理工學(xué)院合作,針對用神經(jīng)網(wǎng)絡(luò)預(yù)測黎曼流形上的元素這一過程中的梯度反傳問題,提出了一個針對流形的投影梯度層,大幅提升了用神經(jīng)網(wǎng)絡(luò)回歸旋轉(zhuǎn)矩陣的準確性。
實驗證明,我們的梯度層作為一個即插即用的模塊,可以在不帶來額外時空開銷的前提下,在旋轉(zhuǎn)矩陣的多種表示、多項任務(wù)中取得顯著的效果提升;此外我們的方法還可以進一步拓展到其他黎曼流形上。
圖文 | 陳嘉毅
Embodied Perception and InteraCtion (EPIC)
論文地址:https://arxiv.org/abs/2110.11657
該工作代碼已開源,歡迎大家關(guān)注~
項目主頁:https://jychen18.github.io/RPMG/
代碼地址:https://github.com/JYChen18/RPMG
1
引 言
三維旋轉(zhuǎn)(朝向)估計旨在預(yù)測三維空間中三自由度的旋轉(zhuǎn)。這一問題廣泛存在于計算機視覺領(lǐng)域中的眾多任務(wù)中,如物體/人體/手的位姿估計、相機重定位等。近年來,隨著神經(jīng)網(wǎng)絡(luò)的興起,人們開始嘗試用神經(jīng)網(wǎng)絡(luò)來解決三維旋轉(zhuǎn)的預(yù)測任務(wù)。其中,直接回歸(regression)三維旋轉(zhuǎn)具有速度快、端到端的優(yōu)勢,吸引了很多研究者的關(guān)注。
我們知道三維平移和三維旋轉(zhuǎn)一同構(gòu)成了六維位姿。然而與三維平移不同的是,三維旋轉(zhuǎn)屬于非歐幾里得變量,其非歐的性質(zhì)對神經(jīng)網(wǎng)絡(luò)直接進行回歸帶來了重大的挑戰(zhàn)。具體來說,全部三維旋轉(zhuǎn)構(gòu)成了一個連續(xù)群 SO(3),這一連續(xù)群是一種三維黎曼流形(Riemannian manifold),而并非傳統(tǒng)的歐幾里得空間。我們知道神經(jīng)網(wǎng)絡(luò)的輸出在線性激活的情況下是處在歐式空間
上的,這種空間性質(zhì)上的差異為旋轉(zhuǎn)預(yù)測帶了不小的困難,如何彌合這一鴻溝就成為了一個重要的研究問題。
現(xiàn)有的工作主要圍繞三維旋轉(zhuǎn)的表示(representation)。我們知道三維旋轉(zhuǎn)只有三個獨立自由度,但是學(xué)界為其發(fā)展出了多種不同的表示方法,包括三維的歐拉角(Euler angle)表示、三維的軸角(axis-angle)表示、四維的四元數(shù)(quaternion)表示和九維的旋轉(zhuǎn)矩陣表示。雖然旋轉(zhuǎn)的歐拉角和軸角表示是最小表示且張成了一個歐式空間,但是已有的工作發(fā)現(xiàn)使用神經(jīng)網(wǎng)絡(luò)直接回歸歐拉角和軸角表示的準確度偏低,因此長久以來四元數(shù)成為了比較主流的神經(jīng)網(wǎng)絡(luò)的預(yù)測表示。
2019年 Zhou et al. [1] 在 CVPR 的工作第一提出了一個理論框架,對不同旋轉(zhuǎn)表示與神經(jīng)網(wǎng)絡(luò)的契合程度進行了分析并提出了一種六維的冗余表示。在此之后學(xué)者們相繼提出了基于 SVD 正交化的九維旋轉(zhuǎn)矩陣表示和十維表示。這些表示的一個共性問題是他們的維數(shù)
都高于實際的三維自由度,構(gòu)成了在高維歐幾里得空間中嵌入的三維黎曼流形。因此神經(jīng)網(wǎng)絡(luò)的輸出需要經(jīng)過一個流形映射(manifold mapping),將
維歐幾里得空間的輸出投影到流形上才能轉(zhuǎn)化為有效的流形上表示,并最終轉(zhuǎn)化成一個旋轉(zhuǎn)矩陣作為輸出并施加監(jiān)督。
在本項工作中,我們第一次關(guān)注到了這樣常常是多對一的流形映射在梯度回傳中構(gòu)成的特有問題,并針對這樣一類從歐式空間到黎曼流形的映射設(shè)計了一個新的梯度反傳層——針對流形的正則投影梯度層(regularized projective manifold gradient layer),來取代簡單的基于鏈式法則的梯度回傳,以促進網(wǎng)絡(luò)的優(yōu)化。我們的方法不僅能廣泛適用于之前工作提出的各種非歐表示(四元數(shù)/六維/九維/十維),還能推廣到其他的黎曼流形,如回歸
上的二維方向向量等。通過大量的實驗,我們展示了我們的方法能夠在不帶來額外時空開銷的情況下,在旋轉(zhuǎn)矩陣的各種非歐表示(四元數(shù)/六維/九維/十維)及多項任務(wù)(如基于點云的三維物體位姿估計、基于圖像的三維物體位姿估計、相機重定位等)中取得一致且顯著的提升。
2
方法簡介
圖1. 方法完整流程圖。
為了便于理解,我們用一個簡單的例子,預(yù)測三維空間中的單位球面
(也是一個黎曼流形)上的一個單位方向向量來介紹我們的方法。如果我們要用神經(jīng)網(wǎng)絡(luò)去回歸
上的一個元素
(滿足
),那么最常用的做法是首先用神經(jīng)網(wǎng)絡(luò)去預(yù)測一個
中的元素
,然后再通過一個流形映射
來得到
。這就是神經(jīng)網(wǎng)絡(luò)正向傳播的過程。在訓(xùn)練的時候,人們會對
施加一個損失函數(shù)
(常見的選擇是
),然后用基于鏈式法則來計算
梯度并進一步反向傳播給網(wǎng)絡(luò),用于更新網(wǎng)絡(luò)的參數(shù)。
我們發(fā)現(xiàn)這樣的反向傳播過程并不是最優(yōu)的。我們注意到,由于
屬于一個嵌入在三維空間中的二維流形(單位球面),我們希望網(wǎng)絡(luò)利用梯度更新權(quán)重后能夠使得
更加靠近同在流形上的
,可以理解為可以得到一個特殊的梯度(黎曼梯度)使得
可以在流形上更新。然而,直接根據(jù)
計算梯度(歐幾里得梯度)然后加到
上,常常會導(dǎo)致
離開球面上。從這個意義上講,這樣的梯度含有噪聲,繼續(xù)反傳這一梯度給網(wǎng)絡(luò)權(quán)重會使得更新后的網(wǎng)絡(luò)未必能回歸出一個很好的
使得其經(jīng)過流形映射
后得到的
更接近
。
因此,我們首先采用流形上的優(yōu)化技術(shù)——黎曼優(yōu)化(Riemannian optimization)來得到一個在黎曼流形
上的更新
,之后進一步利用它來計算
的梯度:我們希望達到的目的是讓
沿梯度方向做一次更新后能滿足
。最直接的解決辦法是令
,但是由于映射
常常是多對一的映射,
得到的往往是一個集合而非單一元素(對二維球面來說,這個元素集合就是一條從原點指出通過
的射線),因此我們需要從這個集合中選一個最優(yōu)的
來計算
。
我們進一步意識到,這個尋找最優(yōu)的過程其實可以類比于多正確答案(multi-ground truth)的監(jiān)督問題。He et al. [4] 在監(jiān)督網(wǎng)絡(luò)四元數(shù)的輸出時曾遇到過這樣一個問題:由于四元數(shù)
和
都代表了同一個旋轉(zhuǎn)矩陣,相當于存在兩個正確答案,但是網(wǎng)絡(luò)的輸出并不是一個分布而是一個特定向量,它只能往
或者
其中一個靠近,因此在計算損失函數(shù)時必須從
和
這兩個答案中選取其一??紤]到希望網(wǎng)絡(luò)能以盡可能小的變動去實現(xiàn)所需要的更新,他們提出的解決辦法是選取離當前網(wǎng)絡(luò)輸出值最近的那個答案。受他們的啟發(fā),我們也采用了同樣的辦法去選取最優(yōu)的
:
。針對旋轉(zhuǎn)矩陣的不同表示,我們都進行了推導(dǎo),求出了這一步的解析解,因此不需要采用優(yōu)化的辦法去找
,不會引入額外的時間開銷。至此,我們可以得到
的 PMG(projective manifold gradient,圖2左藍色箭頭)
。
在實驗中,我們發(fā)現(xiàn)由于
,以上述方式計算出來的梯度 PMG 會持續(xù)地給
的模長
一個變小的趨勢(如圖2中),在不同流形、不同表示上均有此現(xiàn)象。這會使得網(wǎng)絡(luò)的輸出變得特別的小,相當于等效地增加了相對學(xué)習(xí)率(learning rate),造成了訓(xùn)練的不穩(wěn)定和網(wǎng)絡(luò)收斂的困難。為了解決這一問題,我們需要引入一項額外的正則項來穩(wěn)定輸出的模長,最終得到
的 RPMG(regularized projective manifold gradient,圖2左紫色箭頭)
。如圖2右所示,我們在實驗中發(fā)現(xiàn)只需要取一個非常小的
就可以避免模長消失的問題。
圖2. 方法直觀示意圖(左);不加正則項時網(wǎng)絡(luò)直接輸出 x 的模長關(guān)于訓(xùn)練過程的變化趨勢圖(中);加正則項時網(wǎng)絡(luò)直接輸出 x 的模長關(guān)于訓(xùn)練過程的變化趨勢圖(右)。
2
實驗結(jié)果
雖然上面我們只介紹了
的情形,但我們的方法可以推廣到旋轉(zhuǎn)矩陣的各種表示(representation),如四元數(shù)(quaternion)、6D[1]、9D[2]、10D[3]。通過大量實驗,我們驗證了在旋轉(zhuǎn)矩陣的各種表示、各類任務(wù)中,使用我們提出的梯度反傳層得到的方法RPMG-Quat、RPMG-6D、RPMG-9D、RPMG-10D,相較于各自的 baseline 都能有極其顯著的性能提升。
我們的主實驗是基于三維點云的類別級物體位姿估計。我們用一個物體的三維點云作為輸入,希望網(wǎng)絡(luò)去預(yù)測輸入的點云
相對于該類物體預(yù)定義的物體坐標系的旋轉(zhuǎn)
。我們采用和 ground truth 旋轉(zhuǎn)矩陣的 L2 loss 來作為損失函數(shù)。實驗結(jié)果如圖3、圖4所示,可以看出我們的梯度層能在不同類別的物體、不同的旋轉(zhuǎn)矩陣表示下(圖3),在各個誤差區(qū)間都能獲得顯著的提升(圖4右)。另外我們的方法能收斂得更快更好(圖4左)。
圖3. 基于 ModelNet [5] 三維點云的類別級物體位姿估計。Mn,Md,Acc 分別代表平均角度誤差(Mean)、角度誤差中位數(shù)(Median)、角度誤差小于5°的百分比(5°Accuracy)。
下左圖是對于飛機這個類的訓(xùn)練過程中平均角度誤差的變化情況,可以看出我們的方法能收斂的更快更好。下右圖是角度誤差的分布情況,可以看出我們的方法在各個誤差區(qū)間都能顯著優(yōu)于 baseline。
圖4. 訓(xùn)練過程中訓(xùn)練集上平均角度誤差的變化情況(左),訓(xùn)練完成后在測試集上角度誤差的分布情況(右)。物體類別均為飛機。
此外,我們的方法在基于圖片的類別級物體位姿估計的實驗中(圖5),也能有顯著、一致的提升。實驗的設(shè)置和第一個實驗完全一致,唯一的區(qū)別是給網(wǎng)絡(luò)的輸入變成了一張包含特定類別物體的二維圖片。
圖5. 基于 ModelNet [5] 二維圖片的類別級物體位姿估計。Mn,Md,Acc 分別代表平均角度誤差(Mean)、角度誤差中位數(shù)(Median)、角度誤差小于5°的百分比(5°Accuracy)。
我們還利用對于瓶子這一類的三維點云位姿估計實驗,在其他流形(
)上驗證了我們提出的算法(圖6)。由于瓶子具有對稱性,它的位姿被長軸方向唯一確定,因此我們只需要預(yù)測一個三維空間中模長為1的單位向量即可(也是我們在介紹方法時所舉的簡單的例子)。網(wǎng)絡(luò)的輸入依然是完整的、隨機旋轉(zhuǎn)后的物體點云,輸出是該瓶子點云的長軸方向。我們的 RPMG 依然可以顯著提升該任務(wù)的表現(xiàn)。
圖6. 其他流形(
)上元素的回歸實驗。
更多其他實驗,如自監(jiān)督的三維點云位姿估計、相機重定位的實驗,請詳見原論文。
參考文獻:
[1] Zhou, Yi, et al. "On the continuity of rotation representations in neural networks." CVPR 2019.
[2] Levinson, Jake, et al. "An analysis of svd for deep rotation estimation." NeurIPS 2020.
[3] Peretroukhin, Valentin, et al. "A smooth representation of belief over so (3) for deep rotation learning with uncertainty." Robotics: Science and Systems 2020.
[4] Wang, He, et al. "Normalized object coordinate space for category-level 6d object pose and size estimation." CVPR 2019.
[5] Wu, Zhirong, et al. "3d shapenets: A deep representation for volumetric shapes." CVPR 2015.
具身感知與交互實驗室
具身感知與交互實驗室 EPIC Lab (Embodied Perception and InteraCtion Lab)由王鶴博士于2021年創(chuàng)立。該實驗室專注于研究三維計算機視覺和機器人學(xué),研究目標是建立和學(xué)習(xí)面向通用智能體的、可泛化的機器人視覺系統(tǒng)和物體操控策略。
關(guān)鍵詞: CVPR 2022|應(yīng)用于旋轉(zhuǎn)回歸的流形投影梯度層 cvpr