今日は古典の再読です。これは BMVC2020 で公開された、MVS の可視性の問題を解決しようとする記事です。この記事は、拡張後の IJCV に最近公開されました。この記事の解釈はIJCVの増補版に基づいており、ジャーナル版の内容はより詳細です。
記事リンク:BMVC2020版、IJCV版
コードリポジトリ:Github
目次
抽象的な
ピクセルレベルの可視性を明示的に考慮している既存のネットワークはほとんどないため、遮蔽されたピクセルの誤ったコスト集計が発生します。この論文では、マッチング不確実性推定を介して、MVS ネットワーク内のピクセルレベルのオクルージョン情報を明示的に推論し、統合します。ペアワイズ不確実性マップは、ペアワイズ深度マップと共同して推論され、マルチビューのコストとボリュームの融合中に重み付けガイドとしてさらに使用されます。このようにして、コストフュージョンにおいてオクルージョンされたピクセルの悪影響が抑制されます。
1 イントロ
MVSの基本的な内容を紹介しました。
ピクセル可視性情報を考慮したエンドツーエンドネットワークの構造を提案する。深度マップは、多視点画像から 2 つのステップで推定されます。まず、ref と src のペアを照合して、照合品質を表す潜在ボリュームを取得します。このボリュームをさらに回帰して、深度マップと不確実性マップの中間推定値を取得します。不確実性は、深さ方向のエントロピーから変換されます。確率本体。第 2 に、ペア マッチングの不確実性を重み付きガイドとして使用し、すべてのペアの潜在ボリュームをマルチビュー ボリュームに融合して、不一致ピクセルを軽減します。融合ボリュームは正規化され、最終的な深さの推定値に回帰されます。同時に、全体的な再構成の品質をさらに向上させるために、グループ相関と粗密戦略も統合します。ネットワークはエンドツーエンドでトレーニング可能であり、不確実性部分は教師なしでトレーニングされます。したがって、実際の深度マップを含む既存の MVS データセットをトレーニングに直接利用できます。
2 関連作品
関連する研究として、学習ベースの MVS、可視性推定、不確実性推定が紹介されています。
3 方法
3.1 概要
CasMVSNet に似ています。まず、参照画像I 0 I_{0}私0和一组相邻的src images { I i } i = 1 N {\{I_{i}\}}_{i=1}^{N} {
私私は}i = 1N低解像度から高解像度までの 3 段階での奥行き推定および不確実性マップのためのマルチスケール画像特徴抽出のための 2D UNet を入力します。kthのためにK段階の再構成、不確実性に応じた潜在ボリュームの融合、コストボディの構築、正則化、および入力特徴マップと同じ解像度で深さマップD k , 0 D_{k, 0} をDk 、 0。前のステージの中間深度マップは、次のステージのコスト ボリュームの構築に使用されます。最後に、D 3 , 0 D_{3,0}D3、0 _ _システムの最終出力としてD 0 D_{0}D0。
3.2 特徴抽出
砂時計型のエンコーダ/デコーダ UNet を使用すると、3 つのレベルの出力解像度は1 8 × 1 8 \frac{1}{8} \times \frac{1}{8} になります。81×81、1 4 × 1 4 \frac{1}{4} \times \frac{1}{4}41×41、1 2 × 1 2 \frac{1}{2} \times \frac{1}{2}21×21の 32 チャネル機能マップ。
3.3 コスト量と正規化
Kkでkスケーリング段階では、すべてのビューから統一コスト ボリュームを直接構築するのではなく、最初に各 ref-src ペアのペアごとのコスト ボリュームを構築します。Ⅱ用ペアi、参照画像の深さddd、ワープ後の特徴マップ F k を src ビューから取得できます、 i → 0 ( d ) F_{k,i→0}(d)Fk 、i → 0( d )。グループごとの相関を適用して、ref 特徴マップとワープされた src 特徴マップの間のコスト マップを計算します。具体的には、2 つの 32 チャネル特徴マップが与えられた場合、すべてのチャネルをそれぞれ 4 チャネルからなる 8 つのグループに分割します。次に、対応する各ペア間の相関が計算され、ピクセルごとに 8 つの値が得られます。すべての深度仮説のコスト マップは、コスト ボリュームとしてスタックされます。kth__iiステージki個の画像ペアの最終コストC k , i C_{k,i}Ck 、 iサイズはN d , k × H × W × N c N_{d,k}×H×W×N_{c} ですNd 、 k×H×W×Ncここで、N d , k N_{d,k}Nd 、 kk番目ですk段階の深度仮説の数N c = 8 N_{c}=8Nc=8はグループ相関演算のグループ番号です。第 1 ステージの仮説セットは事前に決定されており、第 2 ステージと第 3 ステージの仮説セットは、前ステージの深度マップ出力に従って動的に決定されます。
コスト調整は 2 つのステップで行われます。まず、k 番目のステージの i 番目のペアについて、各ペアごとのコスト ボリュームが潜在ボリュームV k , i V_{k,i}として正規化されます。Vk 、 i。次に、すべてがV k V_{k}に融合されますVk、さらに確率量P k P_{k}に正規化されます。Pk、そして、soft-argmax 演算を通じて現在のステージD k , 0 D_{k,0}に戻ります。Dk 、 0の最終的な深度マップ。具体的には、まずペアごとの深さと不確実性を共同推論することで可視性を測定します。各潜在ボリュームは、追加の 3D CNN およびソフトマックス演算 P_{k,i} によって確率ボリュームP k, iに変換されます。Pk 、 i。次に、深度マップD k, i は、soft-argmax とエントロピー演算 D_{k,i} によって共同で推論されます。Dk 、 iおよび対応する不確実性マップU k , i U_{k,i}Uk 、 i。不確実性マップは、潜在ボリューム融合中の重み付けガイドとして使用されます。
3.4 ペアごとの接合深さと不確実性の推定
深度マップは、soft-argmax 演算を使用して確率ボリュームから回帰されます。簡単のため、以下ではステージの番号kを省略する。すべての深度仮説の確率分布を { Pi , j } j = 1 N d \{P_{i,j}\}_{j=1}^{N_{d}} と表します。{
P私、 j}j = 1Nd。Soft-argmax 演算は分布の期待値を計算することと等価です。Di は次のように計算されます:
D i = ∑ j = 1 N ddj Pi , j \begin{aligned} \mathbf {D}_{i} = \ sum _{j= 1}^{N_d} d_j \mathbf {P}_{i, j} \end{aligned}D私は=j = 1∑NddjP私、 j
深さの推定値とその不確実性を一緒に回帰するために、深さの推定値がラプラス分布に従うと仮定します。この場合、推定された深さと不確実性は、観測された GT ケースの尤度を最大化します。
p ( D gt , i ∣ D i , U i ) = 1 2 U i ⋅ exp ( ∣ D i − D gt , i ∣ U i ) \begin{aligned} p( \mathbf {D}_{gt, i} | \mathbf {D}_{i}, \mathbf {U}_{i} ) = \ frac{1}{2\ mathbf {U}_{i}} \cdot \exp \left( \frac{|\mathbf {D}_{i} - \mathbf {D}_{gt, i}|} {\mathbf {U}_ {i}} \right) \end{整列}p ( Dgt 、 i _∣D _私は、U私は)=2U _私は1⋅経験値(U私は∣D _私は−Dgt 、 i _∣)
其中 U i U_{i} U私はは、ピクセルの深度推定の不確実性です。確率分布{ Pi , j } j = 1 N d \{P_{i,j}\}_{j=1}^{N_{d}} に注意してください。{
P私、 j}j = 1Nd試合の質も反映されます。したがって、{ P i , j } j = 1 N d \{P_{i,j}\}_{j=1}^{N_{d}} を適用します。{
P私、 j}j = 1NdエントロピーマップH i H_{i}H私は深度推定の品質を測定するには、関数fu f_{u}を使用します。fあなた将 H i H_{i} H私は不確実性グラフU i U_{i}に変換するU私は、ふふ_{う}fあなた浅層の 2D CNN:
U i = fu ( Hi ) = fu ( ∑ j = 1 N d − P i , j log Pi , j ) \begin{aligned} \mathbf {U}_{i } = f_u(\mathbf {H}_{i}) = f_u(\sum _{j=1}^{N_d} - \mathbf {P}_{i, j} \log \mathbf {P}_{ i, j}) \end{整列}U私は=fあなた( H私は)=fあなた(j = 1∑Nd−P _私、 jログ_P私、 j)
エントロピーを使用する理由は、分布のランダム性が単峰分布と負の相関があるためです。単峰性は、深度推定値の信頼性が高いことを示す指標です。
デプスマップ推定の共同学習用D i D_{i}D私はとその不確実性U i U_{i}U私は,我们最小化上記の数に似ています:
L ijoint = 1 ∣ I 0 valid ∣ ∑ x ∈ I 0 valid − log ( 1 2 U i exp ∣ D i − D gt , i ∣ U i ) = 1 ∣ I 0 有効 ∣ ∑ x ∈ I 0 有効 1 U i ∣ D i − D gt , i ∣ + log U i \begin{aligned} \begin{aligned} L_{i}^{joint}&= \frac {1}{|I_0^{有効}|} \sum _{x\in I_0^{有効}} -\log \left( \frac{1}{2\mathbf {U}_{i}}\exp \frac{| \mathbf {D}_{i} - \mathbf {D}_{gt, i} |}{\mathbf {U}_{i}}\right) \\&=\frac{1} {|I_0^{有効}|} \sum _{x\in I_0^{有効}} \frac{1}{\mathbf {U}_{i}} | \mathbf {D}_{i} - \mathbf {D}_{gt, i} | + \log \mathbf {U}_{i} \end{整列} \end{整列}L私ジョイント_ _ _=∣私0ヴァリド_ _ _ _∣1x ∈ I0ヴァリド_ _ _ _∑−ログ_(2U _私は1経験値U私は∣D _私は−Dgt 、 i _∣)=∣私0ヴァリド_ _ _ _∣1x ∈ I0ヴァリド_ _ _ _∑U私は1∣D _私は−Dgt 、 i _∣+ログ_U私は
定数は式から省略されています。数値安定性のために、実際にはS i = log U i S_{i}=logU_{i}を直接推論します。S私は=ログユー_ _ _私は而不是 U i U_{i} U私は。対数不確実性プロットS i S_{i}S私はまた、エントロピー マップH i H_{i}からの浅い 2D CNN によってもH私は変換された。
損失は、正則化項を使用した推定値と真の値の間の L1 損失の減衰として解釈することもできます。直感的には、トレーニング中に誤ったサンプルのノイズを低減する必要があると考えられます。
3.5 ボリューム フュージョン
段数省略kkk、潜在体積のペア{ V i } i = 1 N v \{V_{i}\}_{i=1}^{N_{v}} が{
V私は}i = 1Nv、重み付けされた合計によって単一の V がボリュームから融合されます。ここで、重みは推定されたペアごとの不確実性と負の関係にあります。
V = ( ∑ i = 1 N v 1 exp S i ) − 1 ∑ i = 1 N v ( 1 exp S i V i ) \begin{aligned} \mathbf {V} = \left( \sum _{ i=1}^{N_v} \frac{1}{\exp \mathbf {S}_i} \right) ^{-1} \sum _{i=1}^{N_v} \left( \frac{1 }{\exp \mathbf {S}_i} \mathbf {V}_i\right) \end{整列}V=(i = 1∑Nv経験値S私は1)− 1i = 1∑Nv(経験値S私は1V私は)
私たちの観察によると、不確実性が大きいピクセルは、遮蔽された領域に位置する可能性が高くなります。したがって、潜在ボリューム内のこれらの値は弱まる可能性があります。
加重合計の代わりにS i S_{i}を適用することもできます。S私はピクセルごとにハードビジビリティの選択を実行します。ただし、ペアS i S_{i}が存在しない場合は、S私は値の解釈では、経験的なしきい値処理のみを実行できますが、これは一般化できない可能性があります。代わりに、加重和の定式化にはすべての観点が自然に組み込まれており、相対的な方法で対数不確実性Si を考慮します。S私は。
3.6 粗いアーキテクチャから細かいアーキテクチャへ
CasMVSNet と同様の階層構造を導入しました。
3.7 トレーニングの損失
各ステージについて、ペアごとの L1 損失、ペアごとの結合損失、および最終的な深度マップの L1 損失が計算され、合計損失は 3 つのステージすべての損失の加重合計になります。さまざまなトレーニング シーンにわたるスケールを正規化するために、最終段階ですべての深度の差が事前定義された深度間隔で除算されます。
L = ∑ k = 1 3 λ k [ L 1 , kfinal + 1 N v ∑ i = 1 N v ( L 1 , k , ipair + L k , ijoint ) ] \begin{aligned} L = \sum _{k =1}^3\lambda _k\left[ L_{1,k}^{final} + \frac{1}{N_v} \sum _{i=1}^{N_v} (L_{1, k,i }^{ペア} + L_{k,i}^{ジョイント})\right] \end{整列}L=k = 1∑3私k[ L1 、k最終_ _+Nv1i = 1∑Nv( L1 、k 、iペア_ _+Lk 、iジョイント_ _ _) ]
不確実性損失はペアごとの深さと不確実性の推定値を過度に緩和する傾向があるため、ペアごとの L1 損失も含まれます。ここでの操作により、適格なペアごとの深度マップ推定が保証されます。
3.8 点群の生成
点群がどのように生成されるかを説明します。
4 実験
実験部分のデータは表示されませんので、興味のある方はご自身で確認してください。
4.1 実装
4.2 戦車と寺院のデータセットのベンチマーク
4.3 ETH3D データセットのベンチマーク
4.4 DTU データセットのベンチマーク
4.5 アブレーション研究
4.6 メモリと時間の消費量
5。結論
我々は、マルチビューステレオ再構成のための可視性を意識した深度推論フレームワークを提案します。我々は、2 段階のコストとボリュームの正則化、ペアごとの深さと不確実性の共同推論、および不確実性マップからのペアごとのボリュームの加重平均融合を提案します。提案された方法は、複数のデータセットで広範囲に評価されています。定性的には、システムはより正確でより高密度の点群を生成でき、これは提案された可視性を考慮した深度推論フレームワークの有効性を示しています。