(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-18
(45)【発行日】2023-12-26
(54)【発明の名称】デプスマップ超解像装置、デプスマップ超解像方法、及びデプスマップ超解像プログラム
(51)【国際特許分類】
G06T 3/40 20060101AFI20231219BHJP
【FI】
G06T3/40 745
(21)【出願番号】P 2020079826
(22)【出願日】2020-04-28
【審査請求日】2022-07-28
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(73)【特許権者】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】八尾 泰洋
(72)【発明者】
【氏名】安藤 慎吾
(72)【発明者】
【氏名】島村 潤
(72)【発明者】
【氏名】石川 涼一
(72)【発明者】
【氏名】大石 岳史
【審査官】高野 美帆子
(56)【参考文献】
【文献】特開2014-150521(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 3/40
(57)【特許請求の範囲】
【請求項1】
各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出するテンソル導出部と、
前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成する平滑化部と、
を有するデプスマップ超解像装置。
【請求項2】
前記テンソル導出部は、前記デプスマップの各画素について
、水平方向
からみて境界位置であ
り、鉛直方向からみて境界位置でない場合に画素値を鉛直方向に拡散させるための配列、
並びに、水平方向からみて境界位置でなく、鉛直方向
からみて境界位置である場合に画素値を水平方向に拡散させるための配
列を要素として有する前記拡散テンソルを導出する請求項1記載のデプスマップ超解像装置。
【請求項3】
前記デプスマップから、境界位置及び境界方向を導出する境界導出部を更に含み、
前記テンソル導出部は、前記境界位置及び境界方向の導出結果に基づいて、前記拡散テンソルを導出する請求項1又は2記載のデプスマップ超解像装置。
【請求項4】
前記デプスマップに対応する領域を表す画像を用いて、前記デプスマップのうち、前記奥行き値に応じた画素値を有しない画素の画素値を補完した補完デプスマップを生成するアップサンプリング部を更に含み、
前記テンソル導出部は、前記補完デプスマップについての境界位置及び境界方向に基づいて、前記拡散テンソルを導出し、
前記平滑化部は、前記補完デプスマップと前記拡散テンソルとに基づいて、前記補完デプスマップを超解像度化した前記超解像デプスマップを生成する請求項1~請求項3の何れか1項記載のデプスマップ超解像装置。
【請求項5】
前記平滑化部は、前記拡散テンソル、前記超解像デプスマップを画像平面で微分したもの、及び前記デプスマップと前記超解像デプスマップとの差分を用いて表されるエネルギー関数を最小化するように、前記超解像デプスマップを生成する請求項1~請求項4の何れか1項記載のデプスマップ超解像装置。
【請求項6】
テンソル導出部が、各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出し、
平滑化部が、前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成する
デプスマップ超解像方法。
【請求項7】
コンピュータを、請求項1~請求項5の何れか1項に記載のデプスマップ超解像装置として機能させるためのデプスマップ超解像プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
開示の技術は、デプスマップ超解像装置、デプスマップ超解像方法、及びデプスマップ超解像プログラムに関する。
【背景技術】
【0002】
非特許文献1には、画素の位置と値の類似度から計算される重みを用いて、観測された奥行き値を重みづけて足し合わせることで超解像デプスマップを得ることが開示されている。
【0003】
非特許文献2には、平滑化項と、計測されたデータを再現できているかを評価する項であるデータ項とからなるエネルギーを最小化するような超解像デプスマップを導出することが開示されている。画像の勾配が大きいところでは平滑化項の影響を低減する異方性拡散テンソル(Anisotropic Diffusion Tensor)を考慮した平滑化項を用いることで、物体境界では奥行きが不連続に変化することを目指している。
【0004】
非特許文献3には、画像と疎なデプスマップから密なデプスマップを推定するようにニューラルネットワークを学習することで、デプスマップの超解像を実現することが開示されている。非特許文献3の手法は内挿や平滑化を実施しないため、オクルージョン境界で不連続となる超解像デプスマップを出力することが可能である。
【先行技術文献】
【非特許文献】
【0005】
【文献】Kopf, Johannes, et al. "Joint bilateral upsampling." ACM Transactions on Graphics (ToG). Vol. 26. No. 3. ACM, 2007.
【文献】Ferstl, David, et al. "Image guided depth upsampling using anisotropic total generalized variation." Proceedings of the IEEE International Conference on Computer Vision. 2013.
【文献】Chen, Yun, et al. "Learning Joint 2D-3D Representations for Depth Completion." Proceedings of the IEEE International Conference on Computer Vision. 2019.
【発明の概要】
【発明が解決しようとする課題】
【0006】
非特許文献1の手法の問題点は、オクルージョン境界付近では前景の物体の奥行きと後景の物体の奥行きとの間の奥行きがとられてしまうため、オクルージョン境界付近で奥行きが連続的に変化する不自然なデプスマップが得られることである。
【0007】
非特許文献2の手法の問題点は、異方性拡散テンソルの各要素は平滑化の度合いをコントロールするが、平滑化を完全に無効化することはできないため、結果として、オクルージョン境界付近で奥行きが連続的に変化する不自然なデプスマップが得られることである。
【0008】
非特許文献3の手法の問題点は、ニューラルネットワークの学習が必要であり、適用したい環境と同様のシーンで事前にデータを集めて学習をしておく必要があることである。そのような制約は手法の適用性を損なうものである。
【0009】
このように、上記の非特許文献1~非特許文献3の手法は、「平滑化や内挿を行う結果、オクルージョン境界において奥行きが連続的に変化するため、不自然なデプスマップが得られる」もしくは「適用先と同様のシーンで事前に学習をしていなければならない」という点が問題である。
【0010】
開示の技術は、上記の点に鑑みてなされたものであり、簡易な処理で、離散的な境界を有する適切な超解像デプスマップを得ることができるデプスマップ超解像装置、デプスマップ超解像方法、及びデプスマップ超解像プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本開示の第1態様は、デプスマップ超解像装置であって、各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出するテンソル導出部と、前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成する平滑化部と、を含む。
【0012】
本開示の第2態様は、デプスマップ超解像方法であって、テンソル導出部が、各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出し、平滑化部が、前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成することを含む。
【0013】
本開示の第3態様は、デプスマップ超解像プログラムであって、コンピュータを、上記第1態様のデプスマップ超解像装置として機能させるためのプログラムである。
【発明の効果】
【0014】
開示の技術によれば、簡易な処理で、離散的な境界を有する適切な超解像デプスマップを得ることができる。
【図面の簡単な説明】
【0015】
【
図1】本実施形態のデプスマップ超解像装置として機能するコンピュータの一例の概略ブロック図である。
【
図2】入力された疎なデプスマップの一例を示す図である。
【
図4】本実施形態のデプスマップ超解像装置の構成を示すブロック図である。
【
図8】本実施形態のデプスマップ超解像装置のデプスマップ超解像処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【0016】
以下、開示の技術の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一又は等価な構成要素及び部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0017】
<本実施形態の概要>
本実施形態では、LiDAR(Light Detection and Ranging)センサによる計測で得られた疎なデプスマップを、画像を用いてアップサンプリングした上で、オクルージョン境界を用いて導出した拡散テンソルを用いて、離散的なオクルージョン境界を有するようにしつつ、オクルージョン境界でない部分で平滑化をすることで、適切な超解像デプスマップを得る。
【0018】
<本実施形態に係るデプスマップ超解像装置の構成>
図1は、本実施形態のデプスマップ超解像装置10のハードウェア構成を示すブロック図である。
【0019】
図1に示すように、デプスマップ超解像装置10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ストレージ14、入力部15、表示部16及び通信インタフェース(I/F)17を有する。各構成は、バス19を介して相互に通信可能に接続されている。
【0020】
CPU11は、中央演算処理ユニットであり、各種プログラムを実行したり、各部を制御したりする。すなわち、CPU11は、ROM12又はストレージ14からプログラムを読み出し、RAM13を作業領域としてプログラムを実行する。CPU11は、ROM12又はストレージ14に記憶されているプログラムに従って、上記各構成の制御及び各種の演算処理を行う。本実施形態では、ROM12又はストレージ14には、ニューラルネットワークを学習するためのデプスマップ超解像プログラムが格納されている。デプスマップ超解像プログラムは、1つのプログラムであっても良いし、複数のプログラム又はモジュールで構成されるプログラム群であっても良い。
【0021】
ROM12は、各種プログラム及び各種データを格納する。RAM13は、作業領域として一時的にプログラム又はデータを記憶する。ストレージ14は、HDD(Hard Disk Drive)又はSSD(Solid State Drive)により構成され、オペレーティングシステムを含む各種プログラム、及び各種データを格納する。
【0022】
入力部15は、マウス等のポインティングデバイス、及びキーボードを含み、疎なデプスマップ及び当該デプスマップと対応する領域を撮影した画像を含む各種の入力を行うために使用される。例えば、
図2に示すような、疎なデプスマップと、
図3に示すような、当該デプスマップと対応する領域を撮影した画像とが入力される。
図2では、疎なデプスマップが、LiDARセンサによる計測で奥行き値が得られた画素のみを黒く表示している例を示している。
図3では、疎なデプスマップと対応する領域を撮影したカラー画像又はグレースケール画像の例を示している。
【0023】
具体的には、入力された画像は、カメラにより撮影された、各画素が、RGBもしくはグレースケールで表される画素値を有する。また、疎なデプスマップは、LiDARセンサで計測された計測情報を画像上に投影することで取得する、画像と同サイズの奥行き値を値として持つ配列である。奥行き値が計測されていない画素では値がゼロとなる。
【0024】
ここで、画像を撮影するカメラと、デプスマップを取得するLiDARセンサとは、事前にキャリブレーションされており、デプスマップは画像上に正確に投影されているとする。
【0025】
表示部16は、例えば、液晶ディスプレイであり、疎なデプスマップを超解像度化した超解像デプスマップを含む各種の情報を表示する。表示部16は、タッチパネル方式を採用して、入力部15として機能しても良い。ここで、超解像デプスマップは、画像と同サイズの奥行き値を値として持つ配列であり、すべての画素でゼロ以外の値を持つ。
【0026】
なお、疎なデプスマップにおいて、奥行き値が計測されていない画素では値を持たないようにしてもよく、この場合、超解像デプスマップでは、全ての画素で何らかの値を持つ点が、疎なデプスマップと異なる。
【0027】
通信インタフェース17は、他の機器と通信するためのインタフェースであり、例えば、イーサネット(登録商標)、FDDI、Wi-Fi(登録商標)等の規格が用いられる。
【0028】
次に、デプスマップ超解像装置10の機能構成について説明する。
図4は、デプスマップ超解像装置10の機能構成の例を示すブロック図である。
【0029】
デプスマップ超解像装置10は、機能的には、
図4に示すように、アップサンプリング部101、境界導出部102、テンソル導出部103、及び平滑化部104を備えている。
【0030】
アップサンプリング部101は、入力部15により受け付けた、疎なデプスマップに対応する領域を表す画像を用いて、疎なデプスマップのうち、奥行き値に応じた画素値を有しない画素の画素値を補完した補完デプスマップを生成する(
図6参照)。
図6では、補完デプスマップの全ての画素が、奥行き値に応じた値を濃淡で表示している例を示している。
【0031】
例えば、Joint Bilateral Nearest Neighborという手法を用いて、奥行き値に応じた画素値を有しない画素の画素値を補完する。具体的には、以下の式(1)の通り、位置xにおける補完デプスマップの奥行き値d’(x)は、画像平面での座標の距離と画素値の距離を統合した距離において、奥行き値を持つ画素のうちで最近傍である画素の奥行き値をとる。
【0032】
【0033】
なお、式(1)中において、a、bはあらかじめ定められた正の定数であり、I(x)は位置xにおける画像の画素値である。I(x)にどのような色空間を使うかは限定されるものではなく、ユーザが任意に定められる。例えば、グレースケール、RGB、XYZ、CIELAB、HSVなどの何れかの色空間が使用される。
【0034】
境界導出部102は、アップサンプリング部101から出力された補完デプスマップから、境界位置及び境界方向を表すオクルージョン境界を導出する。
【0035】
ここで、オクルージョン境界とは、
図5に示すように、画像と同じサイズの配列であり、画素値は、4値(”境界位置ではない”、”水平方向における境界位置”、”鉛直方向における境界位置”、”水平方向かつ鉛直方向における境界位置”)のいずれかをとる。
図5では、オクルージョン境界が、境界位置でない画素を、白で表し、水平方向における境界を、太い実線で表し、鉛直方向における境界を、細い実線で表し、水平方向かつ鉛直方向における境界を、破線で表した例を示している。
【0036】
例えば、補完デプスマップを入力として、予め定められた閾値vを用いて各画素x=(x_1,x_2)について以下の判定式1, 判定式2の判定を実施する。
【0037】
(判定式1) |d(x_1+1,x_2)-d(x_1,x_2)| > v
(判定式2) |d(x_1,x_2+1)-d(x_1,x_2)| > v
【0038】
そして、オクルージョン境界は、各画素xにおいて、以下の分岐1~分岐4に則り作成される。
【0039】
分岐1:(判定式1)が偽、(判定式2)が偽であれば、オクルージョン境界の画素xは、境界位置ではないことを示す値となる。
【0040】
分岐2:(判定式1)が真、(判定式2)が偽であれば、オクルージョン境界の画素xは、水平方向における境界位置であることを示す値となる。
【0041】
分岐3:(判定式1)が偽、(判定式2)が真であれば、オクルージョン境界の画素xは、鉛直方向における境界位置であることを示す値となる。
【0042】
分岐4:(判定式1)が真、(判定式2)が真であれば、オクルージョン境界の画素xは、水平方向かつ鉛直方向における境界位置であることを示す値となる。
【0043】
テンソル導出部103は、境界導出部102によって導出された、補完デプスマップについての境界位置及び境界方向を表すオクルージョン境界に基づいて、境界方向に応じて境界位置での画素値を拡散させるための拡散テンソルを導出する。
【0044】
具体的には、テンソル導出部103は、補完デプスマップの各画素について、境界位置でない場合に画素値を水平方向及び鉛直方向に拡散させるための配列、水平方向における境界位置である場合に画素値を鉛直方向に拡散させるための配列、鉛直方向における境界位置である場合に画素値を水平方向に拡散させるための配列、並びに水平方向及び鉛直方向における境界位置である場合に、画素値を拡散させないための配列の何れかを要素として有する拡散テンソルを導出する。
【0045】
例えば、拡散テンソルは、画像サイズ×2×2の配列であり、配列の値は実数値をとる。画像サイズを縦H、横Wとすると、拡散テンソルは、H×Wの画素それぞれについて2×2の配列を要素として持つ。拡散テンソルをTと表し、0≦h<H、0≦w<Wの整数とし、画素(h,w)の拡散テンソルの値をT(h,w)と表す。境界導出部102によって導出されたオクルージョン境界をBとし、画素(h,w)の値をB(h,w)と表す。なお前述の通り、T(h,w)は2×2の配列である。このとき、拡散テンソルは以下に従って導出される。
【0046】
まず、B(h,w)が境界位置ではないことを示す値であるとき、T(h,w)は以下の式に従って導出される。
【0047】
また、B(h,w)が水平方向における境界位置であることを示す値であるとき、T(h,w)は以下の式に従って導出される。
【0048】
また、B(h,w)が鉛直方向における境界位置であることを示す値であるとき、T(h,w)は以下の式に従って導出される。
【0049】
また、B(h,w)が水平方向かつ鉛直方向における境界位置であることを示す値であるとき、T(h,w)は以下の式に従って導出される。
【0050】
平滑化部104は、補完デプスマップと拡散テンソルとに基づいて、補完デプスマップを超解像度化した超解像デプスマップを生成する(
図7参照)。
図7では、上記
図6に示す補完デプスマップを超解像度化した超解像デプスマップの例を示している。
【0051】
具体的には、平滑化部104は、拡散テンソル、超解像デプスマップを画像平面で微分したもの、及び補完デプスマップと超解像デプスマップとの差分を用いて表されるエネルギー関数を最小化するように、超解像デプスマップを生成する。
【0052】
例えば、以下の式(2)で表されるエネルギー関数を最小化するHuberノルム平滑化により、超解像デプスマップを生成する。
【0053】
【0054】
ただし、超解像デプスマップをU、補完デプスマップをD、拡散テンソルをTと表し、それぞれの画素(h,w)における値をU(h,w)、D(h,w)、T(h,w)と表す。すなわち、上記式(2)のエネルギー関数は、拡散テンソルと超解像デプスマップを画像平面で微分したものとの積、及び補完デプスマップと超解像デプスマップとの差分を用いて表されている。
【0055】
また、|| ||εはHuberノルムであり、∇は画像平面での微分をとることを意味する。すなわち、∇U(h,w)は2次元のベクトルである。λuおよびλdはそれぞれの項のエネルギーへの寄与を定める重みであり、正の実数である。W(h,w)は要素ごとに重みづけを行う場合に導入する正の実数からなるH×Wのサイズの配列である。なお、重みづけをしない場合すべての要素を1とすればよい。
【0056】
上記式(2)のエネルギーを最小化するUはFirst Order Primal Dualアルゴリズムにより、双対変数Pを導入して、式(3)~式(5)の更新式により得ることができる。Uの初期値はDとする。Pの初期値は任意であるが、すべての要素をゼロとしてもよい。
【0057】
【数3】
(3)
【数4】
(4)
【数5】
(5)
【0058】
ここで、
である。τ
P、τ
UはそれぞれP、Uの更新のための正定数である。divは、発散を表す演算子である。収束するまで、上記式(3)~式(5)の更新式を繰り返し適用し、最終的なU
nを超解像デプスマップとする。
【0059】
<本実施形態に係るデプスマップ超解像装置の作用>
次に、デプスマップ超解像装置10の作用について説明する。
【0060】
図8は、デプスマップ超解像装置10によるデプスマップ超解像処理の流れを示すフローチャートである。CPU11がROM12又はストレージ14からデプスマップ超解像プログラムを読み出して、RAM13に展開して実行することにより、デプスマップ超解像処理が行なわれる。また、デプスマップ超解像装置10に、疎なデプスマップ及び当該デプスマップと対応する領域を撮影した画像が入力される。
【0061】
ステップS100で、CPU11は、アップサンプリング部101として、入力部15により受け付けた、疎なデプスマップに対応する領域を表す画像を用いて、疎なデプスマップのうち、奥行き値に応じた画素値を有しない画素の画素値を補完した補完デプスマップを生成する。
【0062】
ステップS102で、CPU11は、境界導出部102として、アップサンプリング部101から出力された補完デプスマップから、境界位置及び境界方向を表すオクルージョン境界を導出する。
【0063】
ステップS104では、CPU11は、テンソル導出部103として、境界導出部102によって導出された、補完デプスマップについての境界位置及び境界方向を表すオクルージョン境界に基づいて、境界方向に応じて境界位置での画素値を拡散させるための拡散テンソルを導出する。
【0064】
ステップS106では、CPU11は、平滑化部104として、補完デプスマップと拡散テンソルとに基づいて、補完デプスマップを超解像度化した超解像デプスマップを生成し、表示部16により表示して、デプスマップ超解像処理ルーチンを終了する。
【0065】
以上説明したように、本実施形態に係るデプスマップ超解像装置は、各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出する。デプスマップ超解像装置は、前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成する。これにより、簡易な処理で、離散的な境界を有する適切な超解像デプスマップを得ることができる。
【0066】
<変形例>
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0067】
例えば、境界導出部102の処理を省略してもよい。この場合には、デプスマップにおけるオクルージョン境界を、入力部15により受け付けるようにすればよい。
【0068】
また、アップサンプリング部101の処理を省略してもよい。この場合には、各画素が、奥行き値に応じた値を持つデプスマップを、入力部15により受け付けるようにすればよい。
【0069】
また、アップサンプリング部101は、最小画像勾配経路法を用いて、補完デプスマップを生成するようにしてもよい。具体的には、奥行き値を持つ画素を開始点として、奥行き値を浸潤させることにより、補完デプスマップを生成する。すなわち、奥行き値を浸潤させる際に、画像上の勾配を累積する。このとき、浸潤先の画素が、画像上の勾配の累積値よりも小さい値を持つ場合には、奥行き値を更新しない。一方、浸潤先の画素が、画像上の勾配の累積値以上の値を持つ場合、開始点となった画素の奥行き値で更新する。これを収束するまで繰り返す。これにより、奥行き値を持たない画素は、近傍の画素のうち、画像上の勾配の累積値が最小値となる画素の奥行き値で補完される。
【0070】
例えば、以下の疑似コードのように、画像上の勾配を累積させる際には画像上の方向を考慮してもよい。
【0071】
【0072】
11行目~16行目では、水平方向に画像上の勾配を累積し、浸潤先の画素が、画像上の勾配の累積値以上の値を持つ場合に、開始点となった画素の奥行き値で更新している。17行目~22行目では、鉛直方向に画像上の勾配を累積し、浸潤先の画素が、画像上の勾配の累積値以上の値を持つ場合に、開始点となった画素の奥行き値で更新している。
【0073】
また、以下の疑似コードのように、画像上の勾配を累積させる際に画像上の方向を考慮しなくてもよい。
【0074】
【0075】
11行目~16行目では、水平方向及び鉛直方向それぞれに画像上の勾配を累積し、浸潤先の画素が、画像上の勾配の累積値以上の値を持つ場合に、開始点となった画素の奥行き値で更新している。
【0076】
また、上記の疑似コードにおいてnはゼロ以上の定数であり、経路長が長くなることに対するコストである。Normは絶対値ノルム| |もしくは2乗ノルム|| ||2もしくはHuberノルムなどの任意のノルムである。
【0077】
また、テンソル導出部103は、オクルージョン境界と画像から、拡散テンソルを導出するようにしてもよい。具体的には、上記非特許文献2の手法と同様の方法で異方性拡散テンソルTaを導出し、上記実施形態と同様の方法で拡散テンソル(Tbと呼ぶ)を導出する。各画素(h,w)に対する拡散テンソルは、以下の式(6)で導出する。
【0078】
【0079】
上記式(6)においてTb(h,w)とTa(h,w)はともに2×2の行列であり、T(h,w)は2つの行列の積である。
【0080】
また、平滑化部104は、以下の式(7)で表されるエネルギー関数を最小化するTotal Generalized Variation平滑化により、超解像デプスマップを生成してもよい。
【0081】
【0082】
ただし、補完デプスマップはDであり、拡散テンソルはTであり、超解像デプスマップはUである。なお、新たにH×W×2のサイズの配列Vを定義する。また、λU、λVおよびλdはそれぞれの項のエネルギーへの寄与を定める重みであり、正の実数である。
【0083】
上記式(7)のエネルギーを最小化するU,VはFirst Order Primal Dualアルゴリズムにより、双対変数P,Qを導入して、式(8)、式(9)、式(10)、式(11)、式(12)、式(13)の更新式により得ることができる。Uの初期値はDとする。V、P、Qの初期値は任意であるが、すべての要素をゼロとしてもよい。
【0084】
【数8】
(8)
【数9】
(9)
【数10】
(10)
【数11】
(11)
【数12】
(12)
【数13】
(13)
【0085】
ここで、
であり、
である。τ
P、τ
Q、τ
U、τ
VはそれぞれP、Q、U、Vの更新のための正定数である。収束するまで更新式を繰り返し適用し、最終的なU
nを超解像デプスマップとする。
【0086】
また、平滑化部104は、以下の式(14)で表されるエネルギー関数を最小化する拡張Total Generalized Variation平滑化により、超解像デプスマップを生成してもよい。
【0087】
【0088】
なお、新たH×W×2のサイズの配列Vを定義する。また、λU、λVおよびλdはそれぞれの項のエネルギーへの寄与を定める重みであり、正の実数である。
【0089】
上記式(14)のエネルギーを最小化するU,VはFirst Order Primal Dualアルゴリズムにより、双対変数P,Qを導入して、式(15)~式(20)の更新式により得ることができる。Uの初期値はDとする。V、P、Qの初期値は任意であるが、すべての要素をゼロとしてもよい。
【0090】
【数15】
(15)
【数16】
(16)
【数17】
(17)
【数18】
(18)
【数19】
(19)
【数20】
(20)
【0091】
ここで、
であり、
である。τ
P、τ
Q、τ
U、τ
VはそれぞれP、Q、U、Vの更新のための正定数である。収束するまで更新式を繰り返し適用し、最終的なUnを超解像デプスマップとする。
【0092】
また、疎なデプスマップは奥行き値ではなく、奥行きの逆数(インバースデプス)を値として持っていてもよく、奥行きが計測されていないところでは奥行きの逆数をゼロとしてもよい。その場合は出力される補完デプスマップと超解像デプスマップも奥行きの逆数を値として持つようにすればよい。
【0093】
また、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した各種処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、デプスマップ超解像処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0094】
また、上記各実施形態では、デプスマップ超解像プログラムがストレージ14に予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的(non-transitory)記憶媒体に記憶された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【0095】
以上の実施形態に関し、更に以下の付記を開示する。
【0096】
(付記項1)
デプスマップ超解像装置であって、
メモリと、
前記メモリに接続された少なくとも1つのプロセッサと、
を含み、
前記プロセッサは、
各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出し、
前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成する
ように構成されるデプスマップ超解像装置。
【0097】
(付記項2)
デプスマップ超解像処理を実行するようにコンピュータによって実行可能なプログラムを記憶した非一時的記憶媒体であって、
前記デプスマップ超解像処理は、
各画素が、物体の奥行き値に応じた画素値を持つデプスマップについての境界位置及び境界方向に基づいて、前記境界方向に応じて前記境界位置での画素値を拡散させるための拡散テンソルを導出し、
前記デプスマップと前記拡散テンソルとに基づいて、前記デプスマップを超解像度化した超解像デプスマップを生成する
非一時的記憶媒体。
【符号の説明】
【0098】
10 デプスマップ超解像装置
15 入力部
16 表示部
101 アップサンプリング部
102 境界導出部
103 テンソル導出部
104 平滑化部