説明

デプス補正装置及び方法

【課題】デプスマップを補正する。
【解決手段】一実施形態によれば、デプス補正装置は、補正対象画素に対応する演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部を含む。デプス補正装置は、各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する第1の算出部と、各クラス内の画素のデプス値を用いて各クラスの代表デプス値を算出する第2の算出部とを含む。デプス補正装置は、補正対象画素の画素値及び各クラスの画素値統計量に基づいて補正対象画素の対応クラスを判定し、補正対象画素のデプス値を対応クラスの代表デプス値に置き換える補正を行う補正を含む。

【発明の詳細な説明】
【技術分野】
【0001】
実施形態は、デプスの補正に関する。
【背景技術】
【0002】
2次元映像(静止画像または動画像)コンテンツに基づいて3次元映像コンテンツを作成する手法が提案されている。係る手法は、デプスマップを用いて2次元映像コンテンツに含まれる2次元画像から立体視のための視差画像を作成する。デプスマップは、2次元画像の各画素に割り当てられるデプス値を規定する。デプスマップは、2次元画像から自動的に推定されることもあれば、人間によって手動で作成されることもある。各画素の視差量は、幾何学的関係に従ってデプス値から一意に導出できる。係る手法は、2次元画像の各画素をその視差量に応じてワーピングさせて視差画像を作成する。
【0003】
更に、3次元映像コンテンツの立体感の強弱を調整(即ち、デプス値のダイナミックレンジを拡大または縮小)する手法も提案されている。立体感を強調すると、3次元映像コンテンツがより迫力のあるものとなる。立体感を抑制すると、3次元映像コンテンツの視聴によるユーザの疲労を軽減できる。係る手法は、3次元映像コンテンツに含まれる3次元画像のデプスマップを例えばステレオマッチングによって推定する。そして、係る手法は、推定デプスマップに所望の調整を施してから視差画像を作成する。
【0004】
推定により得られたデプスマップには、誤差が含まれる可能性がある。例えば、前景画素に背景用のデプス値が割り当てられたり、背景画素に前景用のデプス値が割り当てられたりすることがある。係る推定誤差が前景及び背景の境界付近(例えば、オブジェクト輪郭)で生じると、前景及び背景の境界線ががたついた視差画像が作成され、3次元画像の品質が劣化する。また、デプス値に誤差が含まれる可能性があるという点は、人間が手動でデプスマップを作成する場合も同じである。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Om Prakash Gangwal etc. "Depth Map Post-Processing for 3D-TV", ICCE '09. Digest of Technical Papers International Conference
【発明の概要】
【発明が解決しようとする課題】
【0006】
従って、実施形態は、デプスマップを補正することを目的とする。
【課題を解決するための手段】
【0007】
一実施形態によれば、デプス補正装置は、補正対象画素に対応する演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部を含む。デプス補正装置は、各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する第1の算出部と、各クラス内の画素のデプス値を用いて各クラスの代表デプス値を算出する第2の算出部とを含む。デプス補正装置は、補正対象画素の画素値及び各クラスの画素値統計量に基づいて補正対象画素の対応クラスを判定し、補正対象画素のデプス値を対応クラスの代表デプス値に置き換える補正を行う補正を含む。
【0008】
他の実施形態によれば、デプス補正装置は、補正対象画素に対応する演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部を含む。デプス補正装置は、各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する算出部を含む。デプス補正装置は、補正対象画素の画素値及び各クラスの画素値統計量に基づいて補正対象画素の対応クラスを判定し、補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて補正対象画素のデプス値を補正する補正部を含む。
【0009】
他の実施形態によれば、デプス補正装置は、補正対象画素に対応する演算範囲内の複数の画素のデプス値の高周波成分の大きさを示すデプス値統計量を算出する第1の算出部を含む。デプス補正装置は、デプス値統計量が閾値以上であれば、演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部を含む。デプス補正装置は、各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する第2の算出部を含む。デプス補正装置は、補正対象画素の画素値及び各クラスの画素値統計量に基づいて補正対象画素の対応クラスを判定し、補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて補正対象画素のデプス値を補正する補正部を含む。
【図面の簡単な説明】
【0010】
【図1】デプス値の誤差の影響の説明図。
【図2】フィルタリング処理によって得られるデプスマップの説明図。
【図3】2次元画像における画素位置の説明図。
【図4】背景画素の視差ベクトルの説明図。
【図5】前景画素の視差ベクトルの説明図。
【図6】第1の実施形態に係るデプス補正装置を例示するブロック図。
【図7】図6のデプス補正装置の動作を例示するフローチャート。
【図8】図6のデプス補正装置の効果の説明図。
【図9】第2の実施形態に係るデプス補正装置を例示するブロック図。
【図10】図9のデプス補正装置の動作を例示するフローチャート。
【図11】グラフカット法の説明図。
【図12】デプス値が緩やかに変化する初期デプスマップの説明図。
【図13】第3の実施形態に係るデプス補正装置を例示するブロック図。
【図14】図13のデプス補正装置の動作を例示するフローチャート。
【図15】第4の実施形態に係るデプス補正装置を例示するブロック図。
【図16】図15のデプス補正装置の動作を例示するフローチャート。
【図17】第5の実施形態に係るデプス補正装置を例示するブロック図。
【図18】図17のデプス補正装置の動作を例示するフローチャート。
【図19】第6の実施形態に係るデプス補正装置を例示するブロック図。
【図20】図19のデプス補正装置の動作を例示するフローチャート。
【発明を実施するための形態】
【0011】
以下、図面を参照して、実施形態について説明する。尚、以降の説明において、既に説明済みの要素と同一または類似の要素には同一または類似の符号を付して示し、重複する説明は基本的に省略する。
【0012】
各実施形態において、2次元画像11は、図3に示されるように、水平方向及び垂直方向に配列された複数の画素(図3の丸印)を含む。特に断りの無い限り、各画素の位置ベクトルは(0,0)を始点とする(x,y)で表される。x及びyは水平方向座標及び垂直方向座標を夫々示す。また、x及びyはいずれも整数値であるとする。
【0013】
各実施形態において、画素値(或いは、色情報と読み替えることもできる)とは、RGB信号値の一部または全部、RGB信号を変換したYUV信号のうちのUV信号(色差信号)値またはY信号(輝度信号)値、均等色空間LUV、Labの信号値などを指す。但し、ここに列挙した色空間とは異なる色空間によって定義される信号値もまた画素値として扱われても勿論よい。
【0014】
2次元画像11の各画素の(初期)デプス値は、初期デプスマップ12によって規定されている。ここで、各画素の視差量は、幾何学的関係に従ってデプス値から一意に導出できる。以下に図4及び図5を用いて説明するように、対象画素の視差量はデプス値から一意に導出できる。
【0015】
図4及び図5において、点Aは対象画素(図4の例では画面よりも奥側に配置される背景画素であり、図5の例では画面よりも手前側に配置される前景画素である)のデプス空間上の位置を表す。点D及び点Eを通る直線は表示デバイスの画面(の水平方向ライン)を表し、点Bは2次元画像11の撮影位置(或いは、視点と読み替えてもよい)を表し、点Cは視差画像に対応する撮影位置を表す。点Dは2次元画像11における対象画素の位置を表し、点Eは視差画像における対象画素の位置を表す。本例では、撮影位置間を結ぶ直線が、画面の水平方向ラインに対して平行であるという幾何学的関係を仮定する。故に、点B及び点Cを通る直線は、点D及び点Eを通る直線に対して平行である。Zsは撮影位置から画面までの距離を表し、bは点Bと点Cとの間の距離を表す。
【0016】
本例では、撮影位置(点Bまたは点C)から画面に向かって、画面の水平方向に直交するZ軸が定義される。画面位置のZ座標は零である。デプス値Zaは、Z軸上で定義される。即ち、図4の例ではデプス値Zaは正の値であり、図5の例ではデプス値Zaは負の値である。更に、本例では、点Bから点Cに向かって、画面の水平方向に平行なX軸が定義される。点Dを始点とし、点Eを終点とするベクトルdが視差ベクトルを表す。視差ベクトルdの大きさが視差量である。図4の例では視差ベクトルdは正方向であり、図5の例では視差ベクトルdは負方向である。
【0017】
前述の幾何学的関係によれば、図4において三角形ADE及び三角形ABCは相似である。従って、|d|:b=|Za|:|Za|+Zsが成立する。即ち、下記の数式(1)が導出される。
【数1】

【0018】
また、図5においても三角形ADE及び三角形ABCは相似である。従って、|d|:b=|Za|:−|Za|+Zsが成立する。ここで、前述のX軸及びZ軸の定義から、図4及び図5の両方について、下記の数式(2)が成立する。
【数2】

【0019】
以上のように、デプス値Zaから視差ベクトルd(及び視差量)を一意に導出できる。また、数式(2)を変形すれば、視差ベクトルdからデプス値Zaを一意に導出することもできる。従って、以降の説明において、視差ベクトル(或いはデプス値)についての記載は、デプス値(或いは視差ベクトル)についての記載として適宜読み替えることもできる。尚、上記説明において視差ベクトルの導出のために仮定した幾何学的関係は一例であり、他の幾何学的関係を仮定しても視差ベクトルはデプス値から一意に導出できる。
【0020】
(第1の実施形態)
第1の実施形態に係るデプス補正装置は、図6に示されるように、仮クラスタリング部101、代表画素値算出部102、代表デプス値算出部103及びデプス補正部104を含む。図6のデプス補正装置は、2次元画像11と、2次元画像11の各画素の(初期)デプス値を規定する初期デプスマップ12とを入力し、補正デプスマップ16を得る。
【0021】
初期デプスマップ12において一部の画素に誤ったデプス値が割り当てられている可能性がある。図1には、前景画素fg01,・・・,fg05及び背景画素bg01,・・・,bg05が例示されている。前景画素fg01,・・・,fg05のうちfg03及びfg05には背景用のデプス値(即ち、背景用の視差ベクトル)が誤って割り当てられている。尚、図1において、実線矢印は前景用の視差ベクトルを表し、破線矢印は背景用の視差ベクトルを表す。従って、視差画像においてfg03及びfg05は誤った位置にワーピングされ、前景画素fg01,・・・,fg05及び背景画素bg01,・・・,bg05の境界ががたつく。図6のデプス補正装置は、初期デプスマップ12におけるこのような推定誤差を補正する。
【0022】
仮クラスタリング部101は、2次元画像11及び初期デプスマップ12を取得する。仮クラスタリング部101は、2次元画像11のうち後述する演算ブロック内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、これら複数の画素をK個(Kは2以上の整数)のクラスに分類する。仮クラスタリング部101は、演算ブロック内の複数の画素の各々に所属クラスを示すラベル情報13を付与する。仮クラスタリング部101は、このラベル情報13を代表画素値算出部102及び代表デプス値算出部103に通知する。
【0023】
2次元画像11における1つまたは複数の画素が補正対象ブロックとして指定される。以降の説明において、補正対象ブロックは、m×nサイズの矩形の画素集合(或いは一画素)である(m≧1かつn≧1)。更に、この補正対象ブロックに対応する複数の画素が演算ブロックとして指定される。以降の説明において、演算ブロックはM×Nサイズの矩形の画素集合である(M≧1かつN≧1、但しM及びNの少なくとも一方は2以上)。演算ブロックは、典型的には、補正対象ブロックを包含する。但し、演算ブロックは、必ずしも補正対象ブロックの全ての画素を包含しなくてもよい。また、説明の簡単化のために、矩形の画素集合(補正対象ブロック及び演算ブロック)を前提としているが、これらの画素集合の形状は矩形に限られず、任意の形状の補正対象範囲及び演算範囲として扱うことも可能である。
【0024】
2次元画像11中の全ての画素が少なくとも1度は補正対象ブロックに含まれるように補正対象ブロックを順次移動すれば、デプスマップの全体を補正することが可能である。尚、2次元画像11中の部分領域(例えば、オブジェクトの境界付近など)に限ってデプスマップの補正を行っても勿論よい。係る場合には、当該部分領域中の全ての画素が少なくとも1度は補正対象ブロックに含まれるように補正対象ブロックを順次移動すればよい。
【0025】
Kの値は、3以上でも勿論よいが、演算ブロックは2次元画像11の内部の局所領域なので高々1つのオブジェクト輪郭を含む場合が多いと考えられる。従って、Kの値を2に設定することで、クラスタリングを容易にしながらも効果的な補正を期待できる。
【0026】
K=2の場合に、デプス値(或いは、輝度値などの1次元の画素値ベクトル)についてのクラスタリングは、例えば以下のように実現できる。
仮クラスタリング部101は、演算ブロック内の複数の画素のデプス値の平均値または中央値を算出する。仮クラスタリング部101は、算出した平均値または中央値を閾値として利用し、演算ブロック内の複数の画素をデプス値が閾値より大きいクラスとデプス値が閾値以下のクラスとに分類する。尚、閾値は、平均値または中央値に限られない。例えば、閾値は、演算ブロック内の複数の画素のデプス値の最大値と最小値との平均値(即ち、最大値及び最小値の和の1/2倍)であってもよい。
【0027】
K≧3の場合、デプス値及び画素値の両方についてクラスタリングを行う場合、2成分以上の画素値についてクラスタリングを行う場合などには、仮クラスタリング部101は例えばK平均法を利用してもよい。以下、K平均法の概要を説明する。
【0028】
以下の説明では、クラスタリングの対象となる画素ベクトルを規定する。画素ベクトルの要素は、デプス値及び画素値の少なくとも一方である。本例では、位置ベクトルiで特定される画素の画素ベクトルを下記の数式(3)で定義する。
【数3】

【0029】
また、数式(3)において、z(i)は位置ベクトルiで特定される画素のデプス値を表し、I(i)は位置ベクトルiで特定される画素の画素値ベクトルを表す。I(i)は、RGB値を表すならば3次元ベクトルであるし、輝度値を表すならば1次元ベクトルである。尚、画素ベクトルを数式(3)とは異なるように定義したとしても、K平均法は適用可能である。例えば、数式(3)のうちデプス値z(i)または画素値ベクトルI(i)を除去してもよい。
【0030】
K平均法によるクラスタリングは、下記のステップ1、ステップ2及びステップ3で実現される。尚、簡単化のためにK=2として説明するが、後述するようにKを3以上に拡張することは可能である。
【0031】
仮クラスタリング部101は、演算ブロック内の複数の画素の各々にいずれかのクラスのラベル情報を暫定的に割り当てる(ステップ1)。即ち、仮クラスタリング部101は、演算ブロック内の複数の画素について、LABEL(i)=kを暫定的に設定する(k=0,1,・・・,K−1)。LABEL(i)は、位置ベクトルiの画素に割り当てられているラベル情報を表す。尚、ステップ1において、いずれの画素にいずれのラベル情報を割り当てるかは任意であり、例えば任意の画素に無作為に選択したラベル情報を割り当てることができる。演算ブロック内の全ての画素にラベル情報が割り当てられると、処理はステップ2に進む。
【0032】
ステップ2において、仮クラスタリング部101は、各クラスの重心ベクトルを計算する。具体的には、仮クラスタリング部101は、下記の数式(4)に従って、各クラスの重心ベクトルを計算する。全てのクラスの重心ベクトルが計算されると、処理はステップ3に進む。
【数4】

【0033】
ここで、k_mean(k)は、ラベル情報(=k)の示すクラスの重心ベクトルを表す。Bc(k)は、演算ブロック内でラベル情報(=k)が割り当てられた画素の集合を表す。N(k)は、ラベル情報(=k)が割り当てられた画素の総数(即ち、Bc(k)の要素の総数)を表す。
【0034】
ステップ3において、仮クラスタリング部101は、演算ブロック内の複数の画素のラベルを画素ベクトルと各クラスの重心ベクトルとの間の距離に応じて再設定する。具体的には、仮クラスタリング部101は、演算ブロック内の複数の画素のラベル情報を下記の数式(5)に従って再設定する。
【数5】

【0035】
尚、数式(5)では画素ベクトルと重心ベクトルとの間の距離をL2ノルムで評価しているが、L1ノルムで評価することもできる。
【0036】
ラベル情報の再設定の結果、演算ブロック内の1つ以上の画素のラベル情報が変更されれば、処理はステップ2に戻る。一方、ラベル情報の再設定の結果、演算ブロック内の全ての画素のラベル情報が変更されずに維持されれば、処理は終了する(画素のラベル情報13が確定する)。
【0037】
尚、K平均法においてKを3以上に拡張する場合には、前述のステップ1において単に3以上のラベルを割り当てればよい。或いは、K平均法に前述の2クラスへのクラスタリング手法を組み合わせてKを拡張することも可能である。例えば、K平均法により複数のクラスに分類してから、各クラスの画素のデプス値(或いは、1次元の画素ベクトル)の平均値などを閾値として利用すれば、各クラスを更に2クラスに細分化することができる。更に、係る手法によれば、K平均法で分類されたクラスの総数を再帰的に2倍、4倍、8倍・・・(即ち、2の冪乗倍)に拡張できる。
【0038】
代表画素値算出部102は、2次元画像11及びラベル情報13を取得する。代表画素値算出部102は、ラベル情報13に従って、クラス毎に代表画素値14を算出する。代表画素値算出部102は、各クラスの代表画素値14をデプス補正部104に入力する。
【0039】
具体的には、代表画素値算出部102は、下記の数式(6)または数式(7)に従って、演算ブロック内でラベル情報(=k)が割り当てられた画素の画素値を用いてラベル情報(=k)の示すクラスの代表画素値(ベクトル)Ir(k)を算出する。
【数6】

【0040】
【数7】

【0041】
数式(6)によれば、ラベル情報(=k)が割り当てられた画素の画素値の平均値が代表画素値14となる。数式(7)によれば、ラベル情報(=k)が割り当てられた画素の画素値の中央値が代表画素値14となる。ここで、jは、iと同様に、画素の位置ベクトルを表す。尚、数式(7)において、L2ノルムに代えてL1ノルムを用いても勿論よい。
【0042】
代表デプス値算出部103は、初期デプスマップ12及びラベル情報13を取得する。代表デプス値算出部103は、ラベル情報13に従って、クラス毎に代表デプス値15を算出する。代表デプス値算出部103は、各クラスの代表デプス値15をデプス補正部104に入力する。
【0043】
具体的には、代表デプス値算出部103は、下記の数式(8)または数式(9)に従って、演算ブロック内でラベル情報(=k)が割り当てられた画素のデプス値を用いてラベル情報(=k)の示すクラスの代表デプス値zr(k)を算出する。
【数8】

【0044】
【数9】

【0045】
数式(8)によれば、ラベル情報(=k)が割り当てられた画素のデプス値の平均値が代表デプス値15となる。数式(9)によれば、ラベル情報(=k)が割り当てられた画素のデプス値の中央値が代表デプス値15となる。尚、数式(9)において、L2ノルムに代えてL1ノルムを用いても勿論よい。
【0046】
デプス補正部104は、補正対象ブロック内の補正対象画素の画素値及び各クラスの代表画素値14に基づいて、補正対象画素の対応クラスを判定する。尚、補正対象画素の対応クラスは、補正対象画素に割り当てられたラベル情報13の示すクラスとは必ずしも一致しない。例えば、デプス補正部104は、補正対象画素の画素値と最も距離の小さい代表画素値14を持つクラスを当該補正対象画素の対応クラスと判定する。デプス補正部104は、補正対象画素のデプス値を対応クラスの代表デプス値15に置き換える。デプス補正部104は、補正対象ブロック内の全ての補正対象画素のデプス値をその対応クラスの代表デプス値15に置き換えることにより、補正対象ブロックの補正デプスマップ16を得る。
【0047】
具体的には、デプス補正部104は、下記の数式(10)に従って、位置ベクトルiの補正対象画素のデプス値z(i)を対応クラスの代表デプス値15に置き換える。
【数10】

【0048】
尚、数式(10)において、L2ノルムに代えてL1ノルムを用いても勿論よい。デプス補正部104によって、補正対象ブロック内の補正対象画素のデプス値はいずれかのクラスの代表デプス値15に補正される。
【0049】
以下、図7を用いて図6のデプス補正装置の例示的な動作を説明する。図7の処理が開始すると、補正対象ブロックが設定され(ステップS111)、この補正対象ブロックに対応する演算ブロックが設定される(ステップS112)。ステップS111及びステップS112は、仮クラスタリング部101によって行われてもよいし、図示しない他の要素によって行われてもよい。
【0050】
仮クラスタリング部101は、2次元入力画像11及び初期デプスマップ12を取得し、ステップS112において設定された演算ブロック内の複数の画素に仮クラスタリングを行う(ステップS113)。ステップS113の仮クラスタリングの結果、演算ブロック内の複数の画素には個別にラベル情報13が割り当てられる。
【0051】
代表画素値算出部102は、ステップS113において割り当てられたラベル情報13に従って、各クラスの代表画素値14を算出する(ステップS114)。一方、代表デプス値算出部103は、ステップS113において割り当てられたラベル情報13に従って、各クラスの代表デプス値15を算出する(ステップS115)。尚、ステップS114及びステップS115は、図7のように並行して実行されてもよいし、いずれか一方が他方よりも先に実行されてもよい。
【0052】
ステップS114及びステップS115の後に、デプス補正部104が補正対象ブロック内の各補正対象画素のデプス値を補正して(ステップS116)、処理は終了する。前述のように、デプス補正部104は、補正対象ブロック内の補正対象画素の画素値及び各クラスの代表画素値14に基づいて補正対象画素の対応クラスを判定し、補正対象画素のデプス値を対応クラスの代表デプス値15に置き換える。
【0053】
本実施形態に対する比較例として、Cross-Bilateralフィルタによるデプスマップの補正を想定する。Cross-Bilateralフィルタは、補正対象画素の周辺画素に重みを与え、デプス値の畳み込み演算を行う。各周辺画素に与えられる重みは、補正対象画素との間の画素値の差分及び補正対象画素からの空間的距離によって決まる。
【0054】
図2には所定の範囲内の各画素の画素値(丸印)及び初期デプス値(四角印)が例示されている。尚、図2及び後述する他の図面では、簡単化のために画素位置を1次元で表現しているが、画素位置を2次元に拡張しても同様の議論が成り立つ。
【0055】
図2において、画素p_xは、オブジェクト輪郭を隔てた画素に近い初期デプス値が割り当てられている。更に、画素p_xに隣接する画素p_(x+1)もまた、オブジェクト輪郭を隔てた画素に近い初期デプス値が割り当てられている。即ち、図2の例において、画素p_x及び画素p_(x+1)の初期デプス値には誤差が含まれていると考えられる。
【0056】
画素p_xの隣接画素p_(x+1)及びp_(x−1)は、補正対象画素p_xとの間の画素値差分及び補正対象画素p_xからの距離の両方が小さいので、共に大きな重みを与えられる。前述のように、隣接画素p_(x+1)の初期デプス値には誤差が含まれているので、画素p_xのフィルタリング後のデプス値にもこの誤差が残留することになる。従って、係る状況において、補正対象画素p_xにCross-Bilateralフィルタを適用しても、補正対象画素p_xの初期デプス値に含まれる誤差を大きく改善することは困難である。例えば、図2に示されるように、Cross-Bilateralフィルタを適用して得られるデプスマップmap_fは、所望のデプスマップmap_dから乖離してしまう。ここで、所望のデプスマップmap_dは、オブジェクト輪郭に沿ってデプス値が変化するデプスマップを意味している。
【0057】
図8には、図2と同じ範囲内の各画素の画素値及び初期デプス値が例示されている。仮クラスタリング部101は、クラスタリングを行って、各画素にクラス01またはクラス02を示すラベル情報13を割り当てる。代表画素値算出部102はクラス01及びクラス02の代表画素値14を夫々算出し、代表デプス値算出部103はクラス01及びクラス02の代表デプス値15を夫々算出する。前述のように、補正対象画素p_xのデプス値には誤差が含まれている。しかしながら、補正対象画素p_xの画素値は、クラス02の代表画素値14よりもクラス01の代表画素値14に近い。故に、デプス補正部104は補正対象画素p_xのデプス値をクラス01の代表デプス値15に置き換えるので、補正対象画素値p_xのデプス値の誤差が低減する。即ち、図6のデプス補正装置によれば、所望のデプスマップmap_dに近い補正デプスマップ16を得ることができる。
【0058】
以上説明したように、第1の実施形態に係るデプス補正装置は、補正対象画素の画素値と最も近い代表画素値を持つクラスの代表デプス値によって補正対象画素のデプス値を置き換える。従って、本実施形態に係るデプス補正装置によれば、オブジェクト輪郭付近にある補正対象画素の初期デプス値に誤差が含まれている場合であっても、この誤差を低減させて3次元画像の品質を向上させることができる。
【0059】
尚、補正対象ブロックを順次処理するときに、補正済みの画素が演算ブロックに含まれることがある。係る場合に、補正済みのデプス値を使用してもよいし、補正前の(初期)デプス値を使用してもよい。前者によれば、初期デプスマップ12の中の局所領域が順次更新される。後者によれば、初期デプスマップ12とは別に出力用の補正デプスマップ16が保持される。
【0060】
また、同一の画素が補正対象ブロックに複数回含まれてもよい(即ち、同一の画素のデプス値が複数回に亘って補正されてもよい)。複数回の補正を行う場合には、前回の補正デプスマップ16が初期デプスマップ12として入力されることになる。複数回の補正を行う場合に、補正対象ブロックまたは演算ブロックのサイズを順次変更したり、Kの値を順次変更したりしてもよい。
【0061】
(第2の実施形態)
第2の実施形態に係るデプス補正装置は、図9に示されるように、仮クラスタリング部101、画素値統計量算出部202、代表デプス値算出部103及びデプス補正部204を含む。図9のデプス補正装置は、2次元画像11と、2次元画像11の各画素の(初期)デプス値を規定する初期デプスマップ12とを入力し、補正デプスマップ26を得る。
【0062】
仮クラスタリング部101は、第1の実施形態と同様に、演算ブロック内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、これら複数の画素をK個のクラスに分類する。仮クラスタリング部101は、演算ブロック内の複数の画素の各々に所属クラスを示すラベル情報13を付与する。仮クラスタリング部101は、このラベル情報13を画素値統計量算出部202、代表デプス値算出部103及びデプス補正部204に通知する。
【0063】
画素値統計量算出部202は、ラベル情報13に従って、クラス毎に画素値統計量24を算出する。画素値統計量算出部202は、各クラスの画素値統計量24をデプス補正部204に入力する。ここで、画素値統計量24は、各クラスの画素値を統計的に分析して算出される値である。従って、前述の代表画素値14もまた画素値統計量24の一種とみなすことができる。以降の説明では、画素値統計量24として各クラスの画素値のヒストグラムを用いる。
【0064】
画素値統計量算出部202は、各クラスに属する画素の画素値の分布に忠実なヒストグラムを作成してもよいし、各クラスに属する画素の画素値の分布を下記の数式(11)に従って正規分布に近似してもよい。
【数11】

【0065】
数式(11)において、mは画素値ベクトルIの次元数を表し、μはラベル情報(=k)の示すクラスに属する画素の画素値の平均値ベクトルを表し、Sはラベル情報(=k)の示すクラスに属する画素の画素値の分散共分散行列を表す。また、Tはベクトルの転置を意味する記号であり、−1は逆行列を意味する記号である。
【0066】
デプス補正部204は、補正対象ブロック内の補正対象画素の画素値と、各クラスの画素値統計量24と、補正対象画素の周辺画素の画素値とに基づいて補正対象画素の対応クラスを判定する。デプス補正部204は、補正対象画素のデプス値を対応クラスの代表デプス値15に置き換える。デプス補正部204は、補正対象ブロック内の全ての補正対象画素のデプス値をその対応クラスの代表デプス値15に置き換えることにより、補正対象ブロックの補正デプスマップ26を得る。
【0067】
前述のデプス補正部104は、補正対象画素の対応クラスの判定において、補正対象画素と周辺画素との間の画素値の空間的相関を考慮していない。しかしながら、通常、2次元画像11には画素値の空間的連続性があることが知られている。従って、補正対象画素と周辺画素との間の画素値の空間的相関を考慮することで、例えばオブジェクト輪郭の判定精度が向上すると考えられる。
【0068】
具体的には、デプス補正部204は、下記の数式(12)に示すエネルギー関数Eを最小化するkの組み合わせ(即ち、演算ブロック内の各画素の対応クラスの組み合わせ)を導出する。
【数12】

【0069】
ここで、g(j,k)はラベル情報(=k)の示すクラスが位置ベクトルjで特定される補正対象画素の対応クラスであることの(対数)尤度を補正対象画素の画素値及び各クラスの画素値統計量24によって評価する関数である。尤度関数g(j,k)は、尤度が高いほど小さな値を示す。e(j,l)は位置ベクトルjの補正対象画素と位置ベクトルlの周辺画素との間の画素値の空間的相関を表す関数である。相関関数e(j,l)は、空間的相関が大きいほど小さな値を示す。Ω(j)は、位置ベクトルjで特定される補正対象画素の周辺画素の位置ベクトルlの集合を表す。
【0070】
画素値統計量24が各クラスに属する画素の画素値のヒストグラムであるならば、尤度関数g(j,k)は例えば下記の数式(13)で導出される。
【数13】

【0071】
ここで、h(k,I)はラベル情報(=k)の示すクラスに属する画素の画素値のヒストグラムを表す。h(k,I(j))はこのヒストグラムh(k,I)における画素値I(j)の度数を表す。
【0072】
また、画素値統計量24が上記の数式(11)によって計算された正規分布であるならば、尤度関数g(j,k)は例えば下記の数式(14)で導出される。
【数14】

【0073】
相関関数e(j,l)は、例えば下記の数式(15)で導出される。
【数15】

【0074】
尚、数式(15)において、L2ノルムに代えてL1ノルムを用いても勿論よい。ここで、[論理式?]は、論理式が成立すれば「1」を返し、成立しなければ「0」を返す関数である。γは、経験的に定めることのできる正の係数を表し、例えば「10」に設定される。βは、正の係数を表し、例えば補正対象画素及び周辺画素の画素値の分散に設定される。dis(j,l)は、位置ベクトルjの補正対象画素と位置ベクトルlの周辺画素との間の空間的距離(例えば、ユークリッド距離)を表す。
【0075】
即ち、位置ベクトルjの補正対象画素及び位置ベクトルlの周辺画素に割り当てられたラベル情報13が一致すれば、相関関数e(j,l)は「0」となる。一方、両者が一致しなければ、補正対象画素及び周辺画素の間の画素値差分及び空間的距離が小さいほど相関関数e(j,l)は小さな値となる。
【0076】
デプス補正部204は、グラフカット法と呼ばれるアルゴリズムを利用してエネルギー関数Eの最小化問題を解くことができる。尚、デプス補正部204は、信念伝搬法(Belief Propagation)などの他のアルゴリズムを利用してエネルギー関数Eの最小化問題を解いてもよい。以下、図11を用いてグラフカット法の概要を説明する。
【0077】
以下の説明では、簡単化のためにK=2とするが、Kを3以上に拡張しても同様の議論が成り立つ。図11において、クラス判定のためのノードがS及びTで表される。また、隣接して一列に配列される4つの画素(位置ベクトルは、j、j+1、j+2及びj+3)を示す画素ノードが、j、j+1、j+2及びj+3で表される。各画素ノードとノードS及びTとの間は夫々エッジで結ばれる。画素ノードjとノードS及びノードTとの間のエッジの重み(或いは、コストと読み替えることもできる)c(S,j)及びc(T,j)は、下記の数式(16)で夫々規定される。
【数16】

【0078】
更に、隣接する画素ノードの間もエッジで結ばれる。画素ノードjと画素ノードj+1との間のエッジの重みc(j,j+1)は、下記の数式(17)で規定される。
【数17】

【0079】
尚、数式(17)は、上記の数式(15)においてl=j+1、LABEL(j)≠LABEL(l)と設定した場合に相当する。数式(17)において、L2ノルムに代えてL1ノルムを用いても勿論よい。デプス補正部204は、各エッジの重みを算出したうえで、最大流最小切断問題を解く。最大流最小切断問題を解くと、各画素ノードとノードS及びノードTのうちの一方との間のエッジが切断される(図11の破線を参照)。画素ノードとノードTとの間のエッジが切断されれば(即ち、画素ノードとノードSとの間のエッジが維持されれば)、デプス補正部204はk=0のクラスを当該画素ノードの示す補正対象画素の対応クラスと判定する。一方、画素ノードとノードSとの間のエッジが切断されれば(即ち、画素ノードとノードTとの間のエッジが維持されれば)、デプス補正部204はk=1のクラスを当該画素ノードの示す補正対象画素の対応クラスと判定する。図11の例では、k=0のクラスが位置ベクトルj+2の補正対象画素の対応クラスと判定され、k=1のクラスが位置ベクトルj、j+1及びj+3の補正対象画素の対応クラスと判定される。
【0080】
図10は、図9のデプス補正装置の動作を例示する。図10に例示する動作は、図7に例示する動作のうちステップS114及びステップS116を後述するステップS214及びステップS216に夫々置き換えることで実現できる。
【0081】
ステップS214において、画素値統計量算出部202は、ステップS113において割り当てられたラベル情報13に従って、各クラスの画素値統計量24を算出する。このステップS214及び前述のステップS115の後に、処理はステップS216に進む。
【0082】
ステップS216においてデプス補正部204が補正対象ブロック内の各補正対象画素のデプス値を補正して、処理は終了する。前述のように、デプス補正部204は、画素値統計量24に基づく各クラスの尤度に加えて周辺画素との空間的相関を考慮して補正対象画素の対応クラスを判定し、補正対象画素のデプス値を対応クラスの代表デプス値15に置き換える。
【0083】
以上説明したように、第2の実施形態に係るデプス補正装置は、画素値統計量に基づく各クラスの尤度に加えて補正対象画素と周辺画素との間の空間的相関を考慮して補正対象画素の対応クラスを判定する。従って、本実施形態に係るデプス補正装置によれば、2次元画像における画素値の空間的連続性を利用した効果的なデプス補正が可能となる。
【0084】
(第3の実施形態)
第3の実施形態に係るデプス補正装置は、図13に示されるように、仮クラスタリング部101、代表画素値算出部102、代表デプス値算出部103、デプス補正部104、デプス値統計量算出部305、処理切り替え部306、セレクタ307及びスイッチ308を含む。図13のデプス補正装置は、2次元画像11と、2次元画像11の各画素の(初期)デプス値を規定する初期デプスマップ12とを入力し、出力デプスマップ36を得る。
【0085】
前述の第1の実施形態に係るデプス補正は、演算ブロックにオブジェクト輪郭が含まれる場合に効果的である。一方、演算ブロックにおいてデプス値が滑らかに変化している場合に、係るデプス補正は必ずしも適さない。
【0086】
例えば、図12に示される初期デプスマップでは、各画素のデプス値(四角印で表示)は破線で示すように滑らかに変化している。第1の実施形態に係るデプス補正によれば、係る初期デプスマップは階段状のデプスマップmap_cに補正される。この補正デプスマップmap_cは、デプス値のマッハバンドを招き、3次元画像の品質を却って劣化させるおそれがある。本実施形態は、第1の実施形態に係るデプス補正を適応的に実施することで、過度な補正を回避しつつオブジェクト輪郭付近の初期デプス値の誤差を低減させる。
【0087】
デプス値統計量算出部305は、初期デプスマップ12を取得し、演算ブロック内の画素のデプス値統計量を算出する。デプス値統計量算出部305は、デプス値統計量を処理切り替え部306に入力する。デプス値統計量は、演算ブロック内の画素の高周波成分の大きさを示す指標である。
【0088】
デプス値統計量は、例えば演算ブロック内の画素のデプス値の標本分散であってもよい。また、デプス値統計量は、演算ブロック内の画素のデプス値にハイパスフィルタ処理を適用して得られる高周波成分値(出力信号値)の系列でもよい(或いは、係る系列の総和、平均値、中央値などでもよいし、係る系列のうち所定の閾値を超える高周波成分値の割合などであってもよい)。また、デプス値統計量は、演算ブロック内の画素のデプス値にDCT(離散コサイン変換)などを施して得られる高周波成分値であってもよい。
【0089】
演算ブロック内の画素のデプス値の高周波成分が大きいことは、当該演算ブロック内の画素のデプス値の変化が激しいことを意味する。即ち、係る演算ブロックは、オブジェクト輪郭(或いは、エッジと読み替えることもできる)を含む可能性が高い。故に、係る演算ブロックにデプス補正を適用することで初期デプス値の誤差が効果的に低減すると予想される。
【0090】
一方、演算ブロック内の画素のデプス値の高周波成分が小さいことは、当該演算ブロック内の画素のデプス値の変化が緩やかであることを意味する。即ち、係る演算ブロックは、オブジェクト輪郭を含まない可能性が高い。故に、係る演算ブロックにデプス補正を適用すると、滑らかな初期デプス値の変化が階段状に補正され、マッハバンドが生じるおそれがある。
【0091】
処理切り替え部306は、デプス値統計量算出部305からのデプス値統計量に応じてセレクタ307の出力及びセレクタ308の入力を制御する。例えば、処理切り替え部306は、デプス値統計量を所定の閾値と比較する。デプス値統計量が閾値以上であれば、処理切り替え部306は、セレクタ307に初期デプスマップ12を仮クラスタリング部101、代表デプス値算出部103及びデプス補正部104へ出力させると共に、セレクタ308にデプス補正部104からの補正デプスマップ16を入力させる。一方、デプス値統計量が閾値未満であれば、処理切り替え部306は、セレクタ307に初期デプスマップ12をセレクタ308へ出力させると共に、セレクタ308にセレクタ307からの初期デプスマップ12を入力させる。
【0092】
セレクタ307は、処理切り替え部306からの制御に応じて、初期デプスマップ12の出力先を選択する。セレクタ307が初期デプスマップ12を仮クラスタリング部101、代表デプス値算出部103及びデプス補正部104へ出力すると、補正対象ブロックに対して第1の実施形態に係るデプス補正が行われる。一方、セレクタ307が初期デプスマップ12をセレクタ308へ出力すると、補正対象ブロックのデプス補正が省略される。
【0093】
セレクタ308は、処理切り替え部306からの制御に応じて、補正デプスマップ16及び初期デプスマップ12のいずれか一方を選択して入力する。セレクタ308は入力したデプスマップを補正対象ブロックの出力デプスマップ36として出力する。
【0094】
図14は、図13のデプス補正装置の動作を例示する。図14に例示する動作は、図7に例示する動作に後述するステップS317及びステップS318を追加することで実現できる。
【0095】
ステップS111及びステップS112の終了後、処理はステップS317に進む。ステップS317において、デプス値統計量算出部305は、初期デプスマップ12を取得し、演算ブロック内の画素のデプス値統計量Vを算出する。前述のように、デプス値統計量Vは、演算ブロック内の画素のデプス値の標本分散など、演算ブロック内の画素のデプス値の高周波成分の大きさを表す指標である。
【0096】
処理切り替え部306は、ステップS317において算出されたデプス値統計量Vを所定の閾値THと比較する(ステップS318)。VがTH未満であればデプス補正が省略されて処理は終了する。VがTH以上であればデプス補正が有効となり、処理はステップS113へ進む。
【0097】
以上説明したように、第3の実施形態に係るデプス補正装置は、補正対象ブロックが補正に適しているか否かを判定し、第1の実施形態に係るデプス補正を適応的に実施する。従って、本実施形態に係るデプス補正装置によれば、過度な補正を回避しつつ第1の実施形態に係るデプス補正により主にオブジェクト輪郭付近の初期デプス値の誤差を低減させることができる。
【0098】
尚、本実施形態ではデプス値統計量が利用されているが、演算領域がオブジェクト輪郭を含むか否か(或いは、デプス値の変化が滑らかな領域であるか否か)を判定するための指標はこれに限られない。従って、デプス値統計量算出部305は、初期デプスマップ12または2次元画像11に基づいて係る指標を算出する機能部として適宜読み替えられてもよい。
【0099】
(第4の実施形態)
第4の実施形態に係るデプス補正装置は、図15に示されるように、仮クラスタリング部101、画素値統計量算出部202、代表デプス値算出部103、デプス補正部204、デプス値統計量算出部305、処理切り替え部306、セレクタ307及びセレクタ308を含む。図15のデプス補正装置は、2次元画像11と、2次元画像11の各画素の(初期)デプス値を規定する初期デプスマップ12とを入力し、出力デプスマップ46を得る。
【0100】
前述の第2の実施形態に係るデプス補正は、第1の実施形態に係るデプス補正と同様に、演算ブロックにオブジェクト輪郭が含まれる場合に効果的である。一方、演算ブロックにおいてデプス値が滑らかに変化する場合に、係るデプス補正は必ずしも適さない。即ち、第2の実施形態に係るデプス補正もまた、場合によっては、デプス値のマッハバンドを招き、3次元画像の品質を却って劣化させるおそれがある。本実施形態は、第2の実施形態に係るデプス補正を適応的に実施することで、過度な補正を回避しつつオブジェクト輪郭付近の初期デプス値の誤差を低減させる。
【0101】
処理切り替え部306は、第3の実施形態と同様に、デプス値統計量算出部305からのデプス値統計量に応じてセレクタ307の出力及びセレクタ308の出力を制御する。例えば、処理切り替え部306は、デプス値統計量を所定の閾値と比較する。デプス値統計量が閾値以上であれば、処理切り替え部306は、セレクタ307に初期デプスマップ12を仮クラスタリング部101、代表デプス値算出部103及びデプス補正部204へ出力させると共に、セレクタ308にデプス補正部204からの補正デプスマップ26を入力させる。
【0102】
セレクタ307は、第3の実施形態と同様に、処理切り替え部306からの制御に応じて、初期デプスマップ12の出力先を選択する。セレクタ307が初期デプスマップ12を仮クラスタリング部101、代表デプス値算出部103及びデプス補正部204へ出力すると、補正対象ブロックに対して第2の実施形態に係るデプス補正が行われる。
【0103】
セレクタ308は、第3の実施形態と同様に、処理切り替え部306からの制御に応じて、補正デプスマップ26及び初期デプスマップ12のいずれか一方を選択して入力する。セレクタ308は入力したデプスマップを補正対象ブロックの出力デプスマップ46として出力する。
【0104】
図16は、図15のデプス補正装置の動作を例示する。図16に例示する動作は、図14に例示する動作のうちステップS114及びステップS116を図10のステップS214及びステップS216に夫々置き換えることで実現できる。
【0105】
以上説明したように、第4の実施形態に係るデプス補正装置は、補正対象ブロックが補正に適しているか否かを判定し、第2の実施形態に係るデプス補正を適応的に実施する。従って、本実施形態に係るデプス補正装置によれば、過度な補正を回避しつつ第2の実施形態に係るデプス補正により主にオブジェクト輪郭付近の初期デプス値の誤差を低減させることができる。
【0106】
(第5の実施形態)
第5の実施形態に係るデプス補正装置は、図17に示されるように、仮クラスタリング部101、画素値統計量算出部202及びデプス補正部504を含む。図17のデプス補正装置は、2次元画像11と、2次元画像11の各画素の(初期)デプス値を規定する初期デプスマップ12とを入力し、補正デプスマップ56を得る。
【0107】
前述の第1乃至第4の実施形態に係るデプス補正装置は、補正対象画素のデプス値を対応クラスの代表デプス値15に置き換える補正を行う。しかしながら、他の方法によって補正対象画素のデプス値を補正することも可能である。
【0108】
デプス補正部504は、前述のデプス補正部204と同様に、補正対象ブロック内の補正対象画素の画素値と、各クラスの画素値統計量24と、補正対象画素の周辺画素の画素値とに基づいて補正対象画素の対応クラスを判定し、補正対象画素のラベル情報を更新する。そして、デプス補正部504は、例えば下記の数式(18)に従って、位置ベクトルiの補正対象画素のデプス値z(i)を補正する。
【数18】

【0109】
ここで、W(i)は、位置ベクトルiの補正対象画素の周辺画素の位置ベクトルjの集合を表す。数式(18)のN(LABEL(i))は、下記の数式(19)で表される。
【数19】

【0110】
或いは、デプス補正部504は、例えば下記の数式(20)に従って、位置ベクトルiの補正対象画素のデプス値z(i)を補正してもよい。数式(20)によれば、画像の空間的連続性を更に反映したデプス補正が可能となる。
【数20】

【0111】
数式(20)のN(LABEL(i))は、下記の数式(21)で表される。
【数21】

【0112】
図18は、図17のデプス補正装置の動作を例示する。図18に例示する動作は、図10に例示する動作からステップS115を除去し、ステップS116を後述するステップS516に置き換えることで実現できる。
【0113】
ステップS516において、デプス補正部504が補正対象ブロック内の各補正対象画素のデプス値を補正して、処理は終了する。前述のように、デプス補正部504は、画素値統計量24に基づく各クラスの尤度に加えて周辺画素との空間的相関を考慮して補正対象画素の対応クラスを判定し、補正対象画素のラベル情報を更新する。そして、デプス補正部504は、補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて補正対象画素のデプス値を補正する。
【0114】
以上説明したように、第5の実施形態に係るデプス補正装置は、補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて補正対象画素のデプス値を補正する。従って、本実施形態に係るデプス補正装置によれば、画像の空間的連続性を考慮した補正が可能となる。
【0115】
(第6の実施形態)
第6の実施形態に係るデプス補正装置は、図19に示されるように、仮クラスタリング部601、画素値統計量算出部202、デプス補正部604、デプス値統計量算出部305及び処理切り替え部606を含む。図19のデプス補正装置は、2次元画像11と、2次元画像11の各画素の(初期)デプス値を規定する初期デプスマップ12とを入力し、補正デプスマップ66を得る。
【0116】
処理切り替え部606は、前述の処理切り替え部306と同様に、デプス値統計量を所定の閾値と比較する。デプス値統計量が閾値以上であれば、処理切り替え部606はNOT_THROUGHフラグを仮クラスタリング部601に入力する。一方、デプス値統計量が閾値未満であれば、処理切り替え部606はTHROUGHフラグを仮クラスタリング部601に入力する。
【0117】
仮クラスタリング部601は、処理切り替え部606からNOT_THROUGHフラグが入力されると、前述の仮クラスタリング部101と同一または類似の仮クラスタリングを行う。一方、仮クラスタリング部601は、処理切り替え部606からTHROUGHフラグが入力されると、演算ブロック内の全画素にTHROUGHラベルを割り当てる。仮クラスタリング部601は、演算ブロック内の複数の画素に割り当てたラベル情報63を画素値統計量算出部202及びデプス補正部604に通知する。
【0118】
デプス補正部604は、仮クラスタリングが行われていれば、前述のデプス補正部504と同様に、補正対象ブロック内の補正対象画素の画素値と、各クラスの画素値統計量24と、補正対象画素の周辺画素の画素値とに基づいて補正対象画素の対応クラスを判定し、補正対象画素のラベル情報を更新する。一方、デプス補正部604は、仮クラスタリングが行われていなければ(即ち、演算ブロック内の全画素にTHROUGHラベルが割り当てられていれば)、ラベル情報の更新を行わない。
【0119】
そして、デプス補正部604は、例えば下記の数式(22)に従って、位置ベクトルiの補正対象画素のデプス値z(i)を補正する。
【数22】

【0120】
ここで、vは論理和を表す。数式(22)のN’(LABEL(i))は、下記の数式(23)で表される。
【数23】

【0121】
或いは、デプス補正部604は、例えば下記の数式(24)に従って、位置ベクトルiの補正対象画素のデプス値z(i)を補正してもよい。数式(24)によれば、画像の空間的連続性をより反映したデプス補正が可能となる。
【数24】

【0122】
数式(24)のN’(LABEL(i))は、下記の数式(25)で表される。
【数25】

【0123】
尚、デプス補正部604は、前述の数式(18)または数式(20)に従って補正を行ってもよい。また、デプス値補正部604は、仮クラスタリングが行われていない場合に(即ち、演算ブロック内の全画素にTHROUGHラベルが割り当てられている場合に)、デプス値の補正を省略してもよい。
【0124】
図20は、図19のデプス補正装置の動作を例示する。図20に例示する動作は、図16に例示する動作からステップS115を除去し、後述するステップS619を追加し、ステップS216を後述するステップS616に置き換えることで実現できる。
【0125】
処理切り替え部606は、ステップS317において算出されたデプス値統計量Vを所定の閾値THと比較する(ステップS318)。VがTH未満であれば処理はステップS619へ進む。VがTH以上であれば処理はステップS113へ進む。
ステップS619において、仮クラスタリング部601は演算ブロック内の全画素にTHROUGHラベルを割り当て、処理はステップS616へ進む。
【0126】
ステップS616において、デプス補正部604が補正対象ブロック内の各補正対象画素のデプス値を補正して、処理は終了する。前述のように、デプス補正部604は、ステップS214が実行されていれば、画素値統計量24に基づく各クラスの尤度に加えて周辺画素との空間的相関を考慮して補正対象画素の対応クラスを判定し、補正対象画素のラベル情報を更新する。一方、デプス補正部604は、ステップS619が実行されていれば、ラベル情報の更新を行わない。そして、デプス補正部604は、補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて補正対象画素のデプス値を補正する。
【0127】
以上説明したように、第6の実施形態に係るデプス補正装置は、第5の実施形態に係るデプス補正を適応的に実施する。従って、本実施形態に係るデプス補正装置によれば、過度な補正を回避しつつ第5の実施形態に係るデプス補正により主にデプス値のブロック歪を低減させることができる。
【0128】
上記各実施形態の処理は、汎用のコンピュータを基本ハードウェアとして用いることで実現可能である。上記各実施形態の処理を実現するプログラムは、コンピュータで読み取り可能な記憶媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記憶媒体に記憶される。記憶媒体としては、磁気ディスク、光ディスク(CD−ROM、CD−R、DVD等)、光磁気ディスク(MO等)、半導体メモリなど、プログラムを記憶でき、かつ、コンピュータが読み取り可能な記憶媒体であれば、何れの形態であってもよい。また、上記各実施形態の処理を実現するプログラムを、インターネットなどのネットワークに接続されたコンピュータ(サーバ)上に格納し、ネットワーク経由でコンピュータ(クライアント)にダウンロードさせてもよい。
【0129】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0130】
11・・・2次元画像
12・・・初期デプスマップ
13,63・・・ラベル情報
14・・・代表画素値
15・・・代表デプス値
16,26,56,66・・・補正デプスマップ
24・・・画素値統計量
36,46・・・出力デプスマップ
101,601・・・仮クラスタリング部
102・・・代表画素値算出部
103・・・代表デプス値算出部
104,204,504,604・・・デプス補正部
202・・・画素値統計量算出部
305・・・デプス値統計量算出部
306,606・・・処理切り替え部
307,308・・・セレクタ

【特許請求の範囲】
【請求項1】
補正対象画素に対応する演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、前記演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部と、
各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する第1の算出部と、
各クラス内の画素のデプス値を用いて各クラスの代表デプス値を算出する第2の算出部と、
前記補正対象画素の画素値及び前記各クラスの画素値統計量に基づいて前記補正対象画素の対応クラスを判定し、前記補正対象画素のデプス値を前記対応クラスの代表デプス値に置き換える補正を行う補正部と
を具備する、デプス補正装置。
【請求項2】
前記各クラスの画素値統計量は、前記各クラスの代表画素値であり、
前記補正部は、前記補正対象画素の画素値との間の距離の最も小さい代表画素値を持つクラスを前記対応クラスと判定する、
請求項1のデプス補正装置。
【請求項3】
前記距離は、前記補正対象画素の画素値との間の画素値の差分の絶対値である、請求項2のデプス補正装置。
【請求項4】
前記代表画素値は、クラス内の画素の画素値の平均値である、請求項2のデプス補正装置。
【請求項5】
前記補正部は、前記各クラスの画素値統計量及び前記補正対象画素の画素値によって評価される各クラスの尤度と、前記補正対象画素と前記補正対象画素の周辺画素との間の空間的相関とに基づいて前記対応クラスを判定する、請求項1のデプス補正装置。
【請求項6】
前記演算範囲内の複数の画素のデプス値の高周波成分の大きさを示すデプス値統計量を算出する第3の算出部と、
前記デプス値統計量が閾値未満であれば、前記補正対象画素のデプス値の補正を省略させるように処理を切り替える切り替え部と
を更に具備する、請求項1のデプス補正装置。
【請求項7】
前記デプス値統計量は、前記演算範囲内の複数の画素のデプス値の標本分散である、請求項6のデプス補正装置。
【請求項8】
前記補正対象画素のデプス値は複数回に亘って補正される、請求項1のデプス補正装置。
【請求項9】
前記クラスタリング部は、前記演算範囲内の複数の画素のデプス値から閾値を算出し、前記閾値よりも大きいデプス値を持つ画素を第1のクラスに分類し、前記閾値以下のデプス値を持つ画素を第2のクラスに分類する、請求項1のデプス補正装置。
【請求項10】
前記代表デプス値は、クラス内の画素のデプス値の平均値である、請求項1のデプス補正装置。
【請求項11】
前記代表デプス値は、クラス内の画素のデプス値の中央値である、請求項1のデプス補正装置。
【請求項12】
補正対象画素に対応する演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、前記演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部と、
各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する算出部と、
前記補正対象画素の画素値及び前記各クラスの画素値統計量に基づいて前記補正対象画素の対応クラスを判定し、前記補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて前記補正対象画素のデプス値を補正する補正部と
を具備する、デプス補正装置。
【請求項13】
補正対象画素に対応する演算範囲内の複数の画素のデプス値の高周波成分の大きさを示すデプス値統計量を算出する第1の算出部と、
前記デプス値統計量が閾値以上であれば、前記演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、前記演算範囲内の複数の画素を複数のクラスに分類するクラスタリング部と、
各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出する第2の算出部と、
前記補正対象画素の画素値及び前記各クラスの画素値統計量に基づいて前記補正対象画素の対応クラスを判定し、前記補正対象画素と対応クラスの一致する周辺画素のデプス値を用いて前記補正対象画素のデプス値を補正する補正部と
を具備する、デプス補正装置。
【請求項14】
補正対象画素に対応する演算範囲内の複数の画素の画素値及びデプス値の少なくとも一方についてクラスタリングを行い、前記演算範囲内の複数の画素を複数のクラスに分類することと、
各クラス内の画素の画素値を用いて各クラスの画素値統計量を算出することと、
各クラス内の画素のデプス値を用いて各クラスの代表デプス値を算出することと、
前記補正対象画素の画素値及び前記各クラスの画素値統計量に基づいて前記補正対象画素の対応クラスを判定し、前記補正対象画素のデプス値を前記対応クラスの代表デプス値に置き換える補正を行うことと
を具備する、デプス補正方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate


【公開番号】特開2012−78942(P2012−78942A)
【公開日】平成24年4月19日(2012.4.19)
【国際特許分類】
【出願番号】特願2010−221594(P2010−221594)
【出願日】平成22年9月30日(2010.9.30)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】