数学がわからない

日々の勉強をアウトプットする。

論文 "Fast bilateral-space stereo for synthetic defocus" ②

論文"Fast bilateral-space stereo for synthetic defocus. "[2]を読む。

背景

前回まで

文献[0]は低品質のセグメンテーション結果\textbf{t}から高品質のセグメンテーション結果\textbf{x}を生成するバイラテラルソルバー(式8)を提案している。

 \begin{align}
\hat{\textbf{x}}=S^T(A^{-1}\textbf{b})
\tag{8}
\end{align}

 
\begin{gather}
A=\lambda(D_m-D_n\bar{B}D_n)+diag(S\textbf{c})\ \ \ \ 
\textbf{b}=S(\textbf{c}\circ\textbf{t})\ \ \ \ 
c=\displaystyle\frac{1}{2}(\textbf{c}\circ\textbf{t})^T\textbf{t}
\end{gather}

実際にプログラミングするにあたり必要な、行列S^TA^{-1}Aを構成する\lambda, D_m, D_n, \bar{B}, S、信頼度画像\textbf{c})、ベクトル\textbf{b}の具体的な作り方を調べるために参考文献から文献[2]を当たる。

文献[2]で分からなければ、文献[0]補足、文献[1,5]を読むことになりそう。

疑問点

  • バイラテラルソルバーを計算するために必要な行列、ベクトルの作り方。

具体的にはS^TA^{-1}Aを構成する\lambda, D_m, D_n, \bar{B}, S、信頼度画像\textbf{c})、\textbf{b}、何一つ分からない。

これらはバイラテラル親和性行列\hat{W}_{i,j}を行列因数分解して取得する(式(4))はずなので、“splat/blur/slice”が理解できれば良いのだろうか?だとすると、文献[1,2,5]、特に式(4)の説明に引用されている文献[2]を読めばよい?

  • 親和性行列\hat{W}_{i,j}の作り方

なお、バイラテラル親和性行列\hat{W}_{i,j}は親和性行列W_{i,j}を二重確率化したものとのことだが、これも具体的なやり方は分からない。二重確率化というのは一般的な用語なのか?

  • 信頼度c_iの作り方

最初からずっと不明。

その他要調査事項

  • 複数のターゲット画像がある場合(多値化の場合?)→文献[0]補足
  • preconditioned conjugate gradient(共役勾配法アルゴリズム →補足、文献[36]
  • ディープラーニングパイプラインに統合→(3章)
  • 前処理と初期化のための高度な技術を使用→(4章)
  • ソルバーのロバストで多変量一般化→ 文献[0]補足

論文を読む

文献[2]のAbstractまで読んだ。文献[2]はデフォーカスレンダリングを目的とするデプスマップ作成のために、バイラテラル空間で行なわれる新しい最適化フレームワークを提案し、高速に視差図を求める。

f:id:rettouseinosugakubenkyo:20190424053419p:plain

1. Introduction-6

最初の5つの段落はステレオアルゴリズムに関してなので読み飛ばす。ここでは興味のある6、7段落目を引用する。

ほとんどのステレオアルゴリズムは、画像内の各ピクセルに視差ラベル(disparity label)を割り当てることによって機能します。

私たちの技術の核心となるアイデアは、高速バイラテラルフィルタリング[1, 5]の技術を利用して、ピクセル空間からはるかに小さい「バイラテラル空間」へと、密ステレオ問題を「リサンプリング」することによって、ピクセルごとの推論を回避することです。

バイラテラル空間は、ピクセル空間(またはバイラテラルアフィニティが計算される任意のベクトル空間)のリサンプリングです。小さな、バイラテラル空間での隣接する頂点間の単純なぼかしが、大きな、ピクセル空間内のエッジを意識したぼかしと同等になるようにしています。

画像内のすべてのピクセルに関して推論を実行する代わりに、我々はピクセルごとの最適化問題をこの縮小されたバイラテラル空間に近似します。

我々のバイラテラル空間は次に用に定義される。

  • 計算コストが安価
  • 一般的な最適化問題をその空間に効率的に埋め込むことが可能
  • 推論後に生成されるピクセル毎の深度ラベリングが、我々のデフォーカスタスクに有用なエッジアウェア特性を有する

推論がピクセル空間の代わりにこのコンパクトな「バイラテラル空間」で行われるため、非局所平滑性事前問題を用いた大域的最適化問題を解くにもかかわらず、我々のアプローチは高速かつスケーラブルである。

なんだか冗長な文章だが、巨大ピクセル空間から小さなバイラテラル空間へリサンプリングし、バイラテラル空間上で処理することで計算量を抑えることができる、とのこと。

ここで、ピクセル空間上で行いたいエッジ認識平滑化が、バイラテラル空間上で行う単純な平滑化処理で実現できるようにしているという。

ただ、どうしても近似になると思うが、十分な精度が得られる根拠はどこにあるのだろうか。

1. Introduction-7

私たちは、ステレオ、またはオプティカルフローの類似の問題という観点で、エッジ認識フィルタリングを利用したのは初めてではありません。

  • いくつかのオプティカルフロー技術は、バイラテラルフィルタリングを用いて、エッジを意識したフローフィールドを生成しています[27, 31]。
  • 他の技術はこの考えをさらに一歩進めて、高速バイラテラルフィルタリング技術を用いて、加速フローアルゴリズムを提案しています[18, 24]。
  • 他のものは、ガイド付きフィルタ[23]やMSTベースの非ローカルフィルタ[33]など、異なる非ローカルエッジアウェアフィルタを使用しています。
  • 高速バイラテラルフィルタリングは、セマンティックセグメンテーションにも使用されています[17]。

高速バイラテラルフィルタリングに基づくこれらの手法は、一般に、ピクセルに関して推論を実行し、推論中に使用されるピクセルごとのフィルタを高速化するために高速バイラテラルフィルタリング技術を使用する。

我々はこのアイデアをさらに一歩進め、高速バイラテラルフィルタリング手法の背後にあるコアアイデアを使用して、バイラテラルフィルタリングが高速な空間に最適化問題を再サンプリングし、その最適化問題をその縮小された空間で解決します。

以前の手法とは対照的に、我々のバイラテラルフィルタの使用は、単純な局所的な滑らかさに基づくほとんどのアプローチよりも効率的に最適化問題を解くことを可能とし、より積極的なバイラテラルフィルタ(フィルタサイズが大きい)で最適化が速くなります。

最も速いステレオ研究は「局所的」技術に焦点を合わせる傾向がありますが、我々の技術は完全にグローバルであり(すべてのピクセルに関して最適化問題を解く)、これらの局所的技術よりも速いです。ほとんどの「グローバル」ステレオ技術とは異なり、最適化問題は凸面であり、最適化が容易になり収束が保証されます。

何だか同じことを何度も言っていてくどい。あと既存技術との関係もよく分からない。

  • 従来はピクセルベースだが、提案は再サンプリングを利用して計算空間を縮小するのがコアアイデア
  • 従来が「局所的」技術による高速化であるのに対して「大域的」
  • 高速、また最適化問題が凸面であり収束を保証

まとめ

1. INTRODUCTION をざっと読む。長くてくどくて良く分からなかった。

提案手法の特徴はピクセル空間からバイラテラル空間の再サンプリングによりバイラテラルフィルタを高速化するということで、大域的な処理を高効率に行えるところが利点。