IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本放送協会の特許一覧

特許7489253デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム
<>
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図1
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図2
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図3
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図4
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図5
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図6
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図7
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図8
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図9
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図10
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図11
  • 特許-デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-15
(45)【発行日】2024-05-23
(54)【発明の名称】デプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システム
(51)【国際特許分類】
   G06T 7/00 20170101AFI20240516BHJP
   G06T 7/50 20170101ALI20240516BHJP
   G06T 7/70 20170101ALI20240516BHJP
【FI】
G06T7/00 C
G06T7/50
G06T7/70 Z
【請求項の数】 8
(21)【出願番号】P 2020127411
(22)【出願日】2020-07-28
(65)【公開番号】P2022024688
(43)【公開日】2022-02-09
【審査請求日】2023-06-05
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001807
【氏名又は名称】弁理士法人磯野国際特許商標事務所
(72)【発明者】
【氏名】加納 正規
(72)【発明者】
【氏名】河北 真宏
【審査官】▲広▼島 明芳
(56)【参考文献】
【文献】特開2009-300268(JP,A)
【文献】特開2020-028114(JP,A)
【文献】特開2019-184308(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
(57)【特許請求の範囲】
【請求項1】
同一光軸の撮影カメラ及びデプスカメラと光学素子アレイとで構成された撮影装置が各視点で被写体を撮影した撮影画像及びデプス画像を用いて、各視点の前記撮影画像に対応したデプスマップを生成するデプスマップ生成装置であって、
奥行き方向で所定間隔の奥行きレイヤ及び前記撮影画像の画素位置毎に、前記奥行きレイヤに投影された前記撮影画像間の類似度を表すコストを算出し、当該コストを前記奥行きレイヤ及び前記画素位置で三次元配列したコストボリュームを生成するコストボリューム生成手段と、
前記デプス画像の各画素の画素値を奥行きに変換する奥行き変換関数により、前記デプス画像を中間デプスマップに変換する奥行き変換手段と、
前記中間デプスマップの重みを正規分布関数で表したコストウェイトを算出するコストウェイト算出手段と、
前記中間デプスマップから、オクルージョン発生時に前記コストを低下させるビジビリティウェイトを算出するビジビリティウェイト算出手段と、
前記コストボリュームに前記コストウェイト及び前記ビジビリティウェイトを適用するウェイト適用手段と、
ウェイト適用後の前記コストボリュームで同一画素位置のコスト列において、前記コストが最小となる前記奥行きレイヤのデプスを示す最終デプスマップを生成する最終デプスマップ生成手段と、
を備えることを特徴とするデプスマップ生成装置。
【請求項2】
前記デプス画像を平滑化する平滑化手段、をさらに備え、
前記奥行き変換手段は、前記奥行き変換関数により、前記平滑化手段が平滑化したデプス画像を前記中間デプスマップに変換することを特徴とする請求項1に記載のデプスマップ生成装置。
【請求項3】
前記コストボリューム生成手段が生成したコストボリュームで同一画素位置のコスト列において、前記コストが最小となる前記奥行きレイヤのデプスを示す初期デプスマップを生成する初期デプスマップ生成手段と、
前記初期デプスマップと前記中間デプスマップとのデプス差が閾値以下の画素について、前記奥行きレイヤ間でデプス差の平均を補正値として求め、前記中間デプスマップのデプスを前記補正値で補正する中間デプスマップ補正手段と、
をさらに備えることを特徴とする請求項1又は請求項2に記載のデプスマップ生成装置。
【請求項4】
前記中間デプスマップのデプスを最も近い前記奥行きレイヤのデプスに置き換えるレイヤ化処理を施すレイヤ化処理手段、をさらに備え、
前記中間デプスマップ補正手段は、前記レイヤ化処理手段がレイヤ化処理を施した中間デプスマップのデプスを前記補正値で補正することを特徴とする請求項3に記載のデプスマップ生成装置。
【請求項5】
前記撮影装置が各視点で校正パターンを撮影した撮影画像にカメラ校正処理を施すことで、各視点に対応した仮想カメラの初期カメラパラメータを算出する初期カメラパラメータ算出手段と、
前記初期カメラパラメータを初期値とした前記カメラ校正処理により、各仮想カメラの間でカメラパラメータを最適化するカメラパラメータ最適化手段と、
最適化した前記カメラパラメータが示す仮想カメラの位置から前記校正パターンまでの距離を前記デプス画像の各画素の画素値に対応させることで、前記奥行き変換関数を算出する奥行き変換関数算出手段と、
をさらに備えることを特徴とする請求項1から請求項4の何れか一項に記載のデプスマップ生成装置。
【請求項6】
前記撮影装置が各視点で前記校正パターンを撮影したデプス画像の画角が前記撮影画像の画角に一致するように、当該デプス画像を射影変換する画角補正手段、をさらに備え、
前記奥行き変換関数算出手段は、前記仮想カメラの位置から前記校正パターンまでの奥行きを、前記画角補正手段が射影変換した前記デプス画像の各画素の画素値に対応させることで、前記奥行き変換関数を算出することを特徴とする請求項5に記載のデプスマップ生成装置。
【請求項7】
コンピュータを、請求項1から請求項6の何れか一項に記載のデプスマップ生成装置として機能させるためのプログラム。
【請求項8】
同一光軸の撮影カメラ及びデプスカメラと光学素子アレイとで構成された撮影装置と、
請求項1から請求項6の何れか一項に記載のデプスマップ生成装置と、
を備えることを特徴とするデプスマップ生成システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デプスマップを生成するデプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システムに関する。
【背景技術】
【0002】
近年、空間中に存在する被写体の三次元形状(デプスマップ)を取得する技術が盛んに研究されている。この技術は、三次元映像制作、AR(Augmented Reality)、VR(Virtual Reality)、ロボティクスなど様々な分野への適用が期待されている。被写体の三次元形状を取得するアプローチとしては、能動的な手法と受動的な手法に大別される(非特許文献1)。
【0003】
能動的な手法は、計測装置が光源を有し、被写体からの反射光を利用して奥行き(デプス)を計測するものである。具体的な手法としては、パターン光投影、光飛行時間法(ToF:Time of Flight)、照度差ステレオ法がある。これらの中で近年注目されているのが、ToFカメラを用いた手法である。ToFカメラは、光源から照射した光が被写体で反射して戻るまでの時間を計測することで、ToFカメラから被写体までの距離を求める。能動的な手法のメリットは、高度な計算処理を行うことなくリアルタイムで高精度な距離が得られることである。一方、能動的な手法のデメリットは、外乱光に弱い、被写体の反射率や距離によっては測定誤差が生じる、スケールの校正が必要な場合があることである。
【0004】
受動的な手法は、複数台のカラーカメラ(以降、「RGBカメラ」)、又は1台のRGBカメラを移動させて、その視差から奥行き距離を計測するものである。具体的な手法としては、ステレオ法(多眼ステレオ)、モーションステレオがある。これらの原理はステレオ法であり、2台以上のカメラの視差からデプスを計算する。受動的な手法のメリットは、被写体に特殊な光を照射する必要がない、外乱光の影響を受けない、一般的なカラーカメラとコンピュータだけで実現できることである。一方、受動的な手法のデメリットは、得られるデプスに曖昧さが残る(テクスチャレス、オクルージョン領域)、計算コストが高くなることである。
【0005】
その他、RGBカメラとデプスカメラを同一光軸上に配置し、レンズアレイを用いて、複数視点分のRGB画像及びデプス画像を取得できるRGB-Dカメラが知られている(特許文献1)。この手法では、カメラレンズから入射した光線をミラー(例えば、ハーフミラーやダイクロイックミラー)で分光し、RGBカメラとデプスカメラで受光する。
【先行技術文献】
【特許文献】
【0006】
【文献】特開2009-300268号公報
【非特許文献】
【0007】
【文献】ディジタル画像処理(改訂新版)、CG-ARTS協会、2015年
【発明の概要】
【発明が解決しようとする課題】
【0008】
前記したように、三次元形状の取得は、その応用できる分野が広いため、様々な手法が提案されているが、未だ確立されていない。汎用的な目的を考えると、1視点のカラー画像(以降、RGB画像)とデプスマップのみでなく、様々な視点のRGB画像とデプスマップがあると使い勝手がよい。つまり、複数視点のRGB画像及びデプスマップのセットがあると、汎用性が向上する。
【0009】
また、デプスマップの精度も重要である。RGB-Dカメラで得られるデプス画像は、画素値(輝度値)で表されているため、この画素値を実スケールのデプスマップに変換する必要がある。しかし、実スケールへの変換関数が、デプスマップの精度に大きな影響を与える。さらに、デプスマップの精度は、撮影環境や被写体の種類によっても影響される。なお、実スケールとは、実空間上の距離(奥行き)のことである。
【0010】
本発明は、前記した問題を解決し、複数視点の撮影画像及び高精度なデプスマップを容易に取得できるデプスマップ生成装置及びそのプログラム、並びに、デプスマップ生成システムを提供することを課題とする。
【課題を解決するための手段】
【0011】
前記課題を解決するため、本発明に係るデプスマップ生成装置は、同一光軸の撮影カメラ及びデプスカメラと光学素子アレイとで構成された撮影装置が各視点で被写体を撮影した撮影画像及びデプス画像を用いて、各視点の撮影画像に対応したデプスマップを生成するデプスマップ生成装置であって、コストボリューム生成手段と、奥行き変換手段と、コストウェイト算出手段と、ビジビリティウェイト算出手段と、ウェイト適用手段と、最終デプスマップ生成手段と、を備える構成とした。
【0012】
かかる構成によれば、コストボリューム生成手段は、奥行き方向で所定間隔の奥行きレイヤ及び撮影画像の画素位置毎に、奥行きレイヤに投影された撮影画像間の類似度を表すコストを算出し、コストを奥行きレイヤ及び画素位置で三次元配列したコストボリュームを生成する。
奥行き変換手段は、デプス画像の各画素の画素値を奥行きに変換する奥行き変換関数により、デプス画像を中間デプスマップに変換する。
コストウェイト算出手段は、中間デプスマップの重みを正規分布関数で表したコストウェイトを算出する。
【0013】
また、ビジビリティウェイト算出手段は、中間デプスマップから、オクルージョン発生時にコストを低下させるビジビリティウェイトを算出する。
ウェイト適用手段は、コストボリュームにコストウェイト及びビジビリティウェイトを適用する。
最終デプスマップ生成手段は、ウェイト適用後のコストボリュームで同一画素位置のコスト列において、コストが最小となる奥行きレイヤのデプスを示す最終デプスマップを生成する。
【0014】
すなわち、デプスマップ生成装置は、デプス画像から生成したデプスマップに基づいて、撮影画像から生成したコストボリュームを2つのウェイトで制約するリファインメント処理を行う。このリファインメント処理によって、デプスマップ生成装置は、各視点の撮影画像に対応した高精度なデプスマップを生成できる。
【0015】
なお、本発明は、コンピュータを、前記したデプスマップ生成装置として機能させるためのプログラムで実現することができる。
【0016】
また、本発明は、同一光軸の撮影カメラ及びデプスカメラと光学素子アレイとで構成された撮影装置と、前記したデプスマップ生成装置と、を備えることを特徴とするデプスマップ生成システムで実現することもできる。
【発明の効果】
【0017】
本発明によれば、複数視点の撮影画像及び高精度なデプスマップを容易に取得できる。
【図面の簡単な説明】
【0018】
図1】実施形態に係る三次元形状取得システムの全体構成図である。
図2】実施形態に係る三次元形状取得装置の構成を示すブロック図である。
図3】RGB-Dカメラによる校正パターンの撮影を説明する説明図であり、(a)は校正データAを示し、(b)は校正データBを示す。
図4】校正パターンを撮影した画像の分割を説明する説明図であり、(a)はRGB画像を示し、(b)はデプス画像を示す。
図5】スケール変換関数の算出を説明する説明図であり、(a)は仮想カメラから校正パターンまでの距離を示し、(b)はスケール変換関数の一例を示す。
図6】被写体を撮影した画像の分割を説明する説明図であり、(a)はRGB画像を示し、(b)はデプス画像を示す。
図7】奥行きレイヤの一例を説明する説明図である。
図8】コストボリュームを説明する説明図である。
図9】正規分布関数を説明する説明図である。
図10】(a)はコストウェイト関数の一例を説明する説明図であり、(b)はビジビリティ関数の一例を説明する説明図である。
図11】実施形態において、カメラ校正処理を示すフローチャートである。
図12】実施形態において、リファインメント手理を示すフローチャートである。
【発明を実施するための形態】
【0019】
以下、本発明の実施形態について図面を参照して説明する。但し、以下に説明する実施形態は、本発明の技術思想を具体化するためのものであって、特定的な記載がない限り、本発明を以下のものに限定しない。
【0020】
[三次元形状取得システムの概要]
図1を参照し、実施形態に係る三次元形状取得システム(デプスマップ生成システム)1の概要について説明する。
三次元形状取得システム1は、被写体9について、複数視点のRGB画像(撮影画像)及びデプスマップと、仮想カメラCのカメラパラメータとを取得するものである。図1に示すように、三次元形状取得システム1は、RGB-Dカメラ(撮影装置)2と、三次元形状取得装置(デプスマップ生成装置)3とを備える。
【0021】
複数視点で撮影するために多数のRGBカメラ及びデプスカメラを配置した場合、システムが大規模となり、コストが高くなる。そこで、三次元形状取得システム1では、後記する1台のRGB-Dカメラ(撮影装置)2により、多数のRGBカメラ及びデプスカメラを配置したのと同等の構成を実現し、システム構成を簡略化できる。
【0022】
三次元映像制作などの分野では、仮想カメラCのカメラパラメータが必要となる。さらに、デプス画像は画素値(輝度値)で表されているため、この画素値を実スケールのデプスマップに変換するスケール変換関数も必要となる。そこで、三次元形状取得システム1では、三次元形状取得装置3によって、校正パターンを用いたカメラ校正処理を行って、仮想カメラCのカメラパラメータとスケール変換関数を算出する。
【0023】
デプスマップの精度も重要である。前記したように、スケール変換関数が、デプスマップの精度に大きな影響を与えてしまう。さらに、デプスマップの精度は、撮影環境や被写体の種類によって大きく低下する。そこで、三次元形状取得システム1では、後記する三次元形状取得装置3によって、複数視点のRGB画像及びデプス画像を用いて、デプスマップの精度を改善する(リファインメント処理)。このとき、三次元形状取得装置3では、1台のRGB-Dカメラ2で撮影した1枚のRGB画像を視点毎に分割してマッチングするため、複数台のRGBカメラで撮影した画像をマッチングする場合に比べ、色の差に起因するエラーを抑制できる。
【0024】
最初に、RGB-Dカメラ2の構成について説明する。次に、三次元形状取得装置3によるカメラ校正処理について説明する。このカメラ校正処理は、各仮想カメラCのカメラパラメータ、及び、スケール変換関数を算出する処理である。最後に、三次元形状取得装置3による、デプスマップの精度を改善するリファインメント処理について説明する。
【0025】
[RGB-Dカメラの構成]
図1に示すように、RGB-Dカメラ2は、カメラ本体20と、レンズ系21とを備える撮像装置である。本実施形態では、カメラ本体20は、図示を省略したRGBカメラ及びデプスカメラを同一光軸上に配置したものである。また、カメラ本体20は、被写体9からの光線を分光素子(不図示)で分光し、分光した光線をRGBカメラ及びデプスカメラでそれぞれ受光する。例えば、RGBカメラとしては、一般的なカラーカメラがあげられる。また、分光素子としては、ハーフミラー又はダイクロイックミラーがあげられる。
【0026】
本実施形態では、デプスカメラとして、ToFカメラを用いる。このToFカメラは、距離計測時、被写体9に赤外線を照射するための赤外線LEDアレイ25を備える。ToFカメラが撮影した赤外線画像のフレーム間差分を求めることにより、デプス画像を取得できる。
【0027】
レンズ系21は、フレネルレンズ22と、レンズアレイ(光学素子アレイ)23とを備える。レンズアレイ23は、N×N個の要素レンズ24を2次元状に配列したものである。RGB-Dカメラ2は、このレンズアレイ23を介することで、N×N視点分のRGB画像及びデプス画像を取得できる。すなわち、RGB-Dカメラ2は、N×N個の仮想カメラCを配置したのと同等の構成を実現している。本実施形態では、2×2個の要素レンズ24に対応した4視点(4台の仮想カメラC)であることとする。
【0028】
なお、カメラ本体20とレンズ系21との位置関係を調整すると、仮想カメラCの画角を調整できる。また、図1では、4台の仮想カメラCのうち、2台の仮想カメラCのみを図示した。
【0029】
[三次元形状取得装置の構成]
図2を参照し、三次元形状取得装置3の構成について説明する。
三次元形状取得装置3は、RGB-Dカメラ2が各視点で被写体9を撮影したRGB画像及びデプス画像を用いて、各視点のRGB画像に対応したデプスマップを生成するものである。図2に示すように、三次元形状取得装置3は、カメラ校正処理を行うカメラ校正手段4と、リファインメント処理を行うリファインメント手段5とを備える。
【0030】
<カメラ校正手段>
カメラ校正手段4は、2種類のパラメータを推定する。一つ目は、仮想カメラCのカメラパラメータである。仮想カメラCのカメラパラメータは、レンズの焦点距離、レンズ歪み、仮想カメラCの位置や姿勢など表す。二つ目は、各仮想カメラCのスケール変換関数である。さらに、カメラ校正手段4は、必要に応じて、RGB画像及びデプス画像の画角補正を行う。なお、カメラ校正手段4は、撮影の都度、カメラ校正処理を行う必要がなく、RGB-Dカメラ2の焦点距離やRGB-Dカメラ2とフレネルレンズ22とレンズアレイ23との位置・姿勢の関係が変化したときにカメラ校正処理を行えばよい。
【0031】
図3(a)に示すように、カメラ校正手段4には、RGB-Dカメラ2で校正パターン90を撮影したRGB画像及びデプス画像が入力される。校正パターン90は、平面状で特徴点の配置が既知のパターンである(例えば、チェスボードパターン)。このとき、RGB-Dカメラ2は、校正パターン90の姿勢を2回以上変更して撮影する(破線で図示)。なお、RGB-Dカメラ2は、内部パラメータのスキューを0以外とする場合、校正パターン90の姿勢を3回以上変更して撮影する。図3(a)に示すように、レンズ系21を配置して撮影したRGB画像及びデプス画像を校正データAと呼ぶ。前記した画角補正を行う場合、図3(b)に示すように、レンズ系21を外して校正パターン90を撮影する。このように、レンズ系21を外して撮影したRGB画像及びデプス画像を校正データBと呼ぶ。
【0032】
図2に示すように、カメラ校正手段4は、画角補正手段40と、画像分割手段41と、初期カメラパラメータ算出手段42と、カメラパラメータ最適化手段43と、スケール変換関数算出手段(奥行き変換関数算出手段)44とを備える。
【0033】
画角補正手段40は、RGB-Dカメラ2から入力されたデプス画像の画角がRGB画像の画角に一致するように、デプス画像を射影変換するものである。RGB-Dカメラ2の取り付け精度に起因して、RGBカメラで撮影したRGB画像とデプスカメラで撮影したデプス画像との画角が微妙にずれることがある。このため、画角補正手段40は、校正データBを用いて、この微妙な画角のずれを補正する。具体的には、画角補正手段40は、RGB画像及びデプス画像の間で4点以上の対応点(校正パターン90の特徴点)を基準として、ホモグラフィ行列を算出する(参考文献1)。そして、画角補正手段40は、このホモグラフィ行列によりデプス画像を射影変換することで、デプス画像の画角をRGB画像の画角に一致させる。
なお、画角補正手段40は、RGBカメラ及びデプスカメラの画角が一致している場合、前記した画角補正処理を行う必要がない。
【0034】
参考文献1:“OpenCV”,[online]、[令和2年6月24日検索]、インターネット〈URL:https://opencv.org/〉
【0035】
また、画角補正手段40は、校正データBを用いて、レンズ歪みを除去できる。例えば、画角補正手段40は、Zhangの手法により、RGB-Dカメラ2のレンズ歪み係数を算出し、RGB画像及びデプス画像からレンズ歪みを除去する(参考文献2)。
【0036】
参考文献2:Z. Zhang, “A flexible new technique for camera calibration”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 22, No. 11, pp. 1330-1334 (2000)
【0037】
画像分割手段41は、画角補正手段40から入力されたRGB画像及びデプス画像を視点(要素レンズ24)毎に分割するものである。つまり、画像分割手段41は、RGB画像及びデプス画像を仮想カメラC毎に分割することで、仮想カメラCで仮想的に撮影したRGB画像及びデプス画像を生成する。本実施形態では、画像分割手段41は、図4(a)及び(b)に示すように、RGB画像P及びデプス画像Pを4分割する。
【0038】
なお、RGB画像P及びデプス画像Pを分割する領域αは、手動で設定する。このとき、分割後のRGB画像P及びデプス画像Pでは、レンズアレイ23の外側や要素レンズ24同士の隙間が不要なので、これら不要領域を分割せずともよい。以後の説明を簡易にするため、分割後のRGB画像P及びデプス画像Pは、同一の画像サイズであることとする。
【0039】
初期カメラパラメータ算出手段42は、画像分割手段41から入力された各視点のRGB画像Pにカメラ校正処理を施すことで、各視点に対応した仮想カメラCの初期カメラパラメータを算出するものである。例えば、初期カメラパラメータ算出手段42は、各視点のRGB画像PにZhangの手法を適用し、各仮想カメラCのカメラパラメータ及び各校正パターン90の位置・姿勢が含まれる初期カメラパラメータを算出する。
【0040】
カメラパラメータ最適化手段43は、初期カメラパラメータ算出手段42から入力された初期カメラパラメータを初期値としたカメラ校正処理により、各仮想カメラCの間でカメラパラメータを最適化するものである。前記した初期カメラパラメータ算出手段42では、各仮想カメラCのカメラパラメータを個別に算出していたが、全ての仮想カメラCの間でカメラパラメータを最適化することで、カメラパラメータの精度が向上する。
【0041】
ここで、校正パターン90の位置・姿勢を共通のパラメータとする。最適化するカメラパラメータは、各仮想カメラCのカメラパラメータと、共通化した校正パターン90の位置・姿勢が含まれる。具体的には、カメラパラメータ最適化手段43は、各仮想カメラCのカメラパラメータ及び校正パターン90の位置・姿勢の平均値を初期値として、初期カメラパラメータに含まれる仮想カメラCの位置・姿勢を使用する。そして、カメラパラメータ最適化手段43は、これら初期値をバンドル調整することでカメラパラメータを最適化する。
【0042】
スケール変換関数算出手段44は、カメラパラメータ最適化手段43より入力されたカメラパラメータが示す仮想カメラCの位置から校正パターン90までの距離をデプス画像Pの各画素の画素値に対応させることで、スケール変換関数を算出するものである。すなわち、スケール変換関数算出手段44は、デプス画像Pを実スケールのデプスマップに変換するためのスケール変換関数を算出する。前記したように、カメラパラメータにおいて、仮想カメラCの位置・姿勢と校正パターン90の位置・姿勢とが既知のため、仮想カメラCから校正パターン90までの距離rが実スケールで算出できる。
【0043】
具体的には、スケール変換関数算出手段44は、図5(a)に示すように、仮想カメラCから校正パターン90までの距離rと、デプス画像Pの各画素の輝度値q(画素値)とを対応づける。このとき、デプス画像Pに含まれる校正パターン90では、黒色模様の部分で反射率が低下するため、正確な対応付けが困難である。このため、スケール変換関数算出手段44は、デプス画像Pに含まれる校正パターン90の白色部分のみで対応付けを行うことが好ましい。ここで、スケール変換関数算出手段44は、校正パターン90を撮影した全てのデプス画像Pで対応付けを行うことで、図5(b)に示すようにグラフが得られる。そして、スケール変換関数算出手段44は、このグラフを関数(例えば、5次関数)で近似することで、スケール変換関数h(q)を算出できる。なお、スケール変換関数算出手段44は、このグラフをスケール変換関数で近似せず、ルックアップデーブルとしてもよい。
【0044】
その後、カメラ校正手段4は、算出したスケール変換関数をスケール変換手段54に出力し、仮想カメラCのカメラパラメータをコストボリューム生成手段51及びウェイト適用手段59に出力する。
【0045】
<リファインメント手段>
リファインメント手段5は、RGB-Dカメラ2で被写体9を撮影したRGB画像P及びデプス画像Pが入力される。そして、リファインメント手段5は、デプス画像Pから生成したデプスマップに基づいて、RGB画像Pから生成したコストボリュームを2つのウェイトで制約することで、デプスマップの精度を向上させる。なお、リファインメント手段5は、撮影の都度、リファインメント処理を行う。
【0046】
図2に示すように、リファインメント手段5は、画像分割手段50と、コストボリューム生成手段51と、初期デプスマップ生成手段52と、平滑化手段53と、スケール変換手段(奥行き変換手段)54と、レイヤ化処理手段55と、スケール補正手段(中間デプスマップ補正手段)56と、コストウェイト算出手段57と、ビジビリティウェイト算出手段58と、ウェイト適用手段59と、最終デプスマップ生成手段60とを備える。
【0047】
画像分割手段50は、RGB-Dカメラ2から入力されたRGB画像P及びデプス画像Pを視点毎に分割するものである。図6(a)及び(b)に示すように、画像分割手段50は、画像分割手段41と同様、被写体9が撮影されたRGB画像P及びデプス画像Pを分割する。
【0048】
なお、図6では、レンズ系21を介しているため、RGB画像P及びデプス画像Pで被写体9が逆立像になっている。この場合、被写体9が正立像となるようにRGB画像P及びデプス画像Pに反転処理を施してもよい。
【0049】
コストボリューム生成手段51は、後記する奥行きレイヤ及びRGB画像Pの画素位置毎にコストを算出し、コストを奥行きレイヤ及び画素位置で三次元配列したコストボリュームを生成するものである。本実施形態では、コストボリューム生成手段51は、コストボリュームを推定する手法の一つであるプレーンスイープ法を用いることとする(参考文献3)。
【0050】
参考文献3:David Gallup, et al. , "Real-time plane-sweeping stereo with multiple sweeping directions", IEEE Conference on Computer Vision and Pattern Recognition, pp. 1-8 (2007)
【0051】
まず、コストボリューム生成手段51は、図7に示すように、被写体9が配置された空間中に、奥行き方向で所定間隔の奥行きレイヤNを複数設定する。図7の例では、5つの奥行きレイヤNが設定されている(D=1,…,5)。なお、図7では、x軸が水平方向、y軸が垂直方向、z軸が奥行方向を示す。次に、コストボリューム生成手段51は、全ての仮想カメラCのうち何れか1台をリファレンスカメラとして、このリファレンスカメラと、別のもう1台の仮想カメラCとでカメラペアを設定する。そして、コストボリューム生成手段51は、カメラペアを構成する各仮想カメラCのRGB画像Pを射影変換により奥行きレイヤNに投影する。さらに、コストボリューム生成手段51は、奥行きレイヤNに投影した2つのRGB画像Pの各画素の画素値の差分(例えば、SAD:Sum of Absolute Difference)を求めることで、コストを算出する。このコストは、その奥行きレイヤNに投影された2つのRGB画像Pの類似度を表し、その値が小さくなる程、その奥行きレイヤNに被写体9の奥行きが存在する可能性が高いことを表す。
【0052】
コストボリューム生成手段51は、前記した処理を全ての奥行きレイヤNで行うことで、コストボリュームを生成できる。図8に示すように、RGB画像PのサイズをU×V画素とすると、コストボリューム91は、U×V×Nのコストの3次元配列となる。また、コストボリューム91では、同一画素位置で奥行方向に配列されたコストをコスト列92とする。つまり、コスト列92は、1×1×Nのコストの3次元配列となる。そして、コストボリューム生成手段51は、リファレンスカメラのRGB画像Pをガイドとして、ガイデッドフィルタをコストボリューム91に適用する(参考文献4)。これにより、エッジを保持したままコストボリューム91を平滑化できるため、コストボリューム91のノイズを低減できる。
【0053】
参考文献4:Kaiming He, Sun Jian, and Tang Xiaoou, "Guided image filtering", European conference on computer vision. Springer, pp. 1-10, (2010)
【0054】
リファレンスカメラの周辺にある仮想カメラCの集合をSとすると、集合の要素数|S|だけカメラペアを設定できる。このとき、コストボリューム91もカメラペアと同数できる。例えば、仮想カメラCが4台の場合、1台のリファレンスカメラに対して、カメラペアが3つとなり、コストボリューム91も3つとなる。例えば、仮想カメラCがリファレンスカメラの場合、カメラペアが(C,C)、(C,C)、(C,C)となる。
【0055】
初期デプスマップ生成手段52は、コストボリューム生成手段51から入力されたコストボリューム91で同一画素位置のコスト列92において、コストが最小となる奥行きレイヤNのデプスを示す初期デプスマップを生成するものである。
【0056】
ここで、初期デプスマップ生成手段52は、1台のリファレンスカメラに対して複数のコストボリューム91が存在するため、各コストボリューム91の総和をリファレンスカメラの最終的なコストボリューム91として求める。そして、初期デプスマップ生成手段52は、各コスト列92で最小のコストを有する奥行きレイヤNを正しいデプスとして求め、リファレンスカメラの初期デプスマップDを生成する。
【0057】
その後、初期デプスマップ生成手段52は、初期デプスマップDをスケール補正手段56に出力し、最終的なコストボリューム91をウェイト適用手段59に出力する。
【0058】
平滑化手段53は、画像分割手段50から入力したデプス画像Pを平滑化するものである。ここで、平滑化手段53は、デプスカメラのショットノイズなどのノイズがデプス画像Pに含まれるため、このデプス画像Pをフィルタ処理により平滑化する。例えば、フィルタ処理として、ガイデッドフィルタがあげられる。このガイデッドフィルタは、平滑化フィルタの一種であり、ガイド画像を用いて対象の画像を平滑化する。ここでは、ガイド画像として、RGB画像Pを用いる。
【0059】
なお、フィルタ処理によりノイズを除去できる一方、過度な平滑化によりデプス画像Pの精度が低下する可能性がある。このため、平滑化手段53は、必要に応じでフィルタ処理を実行すればよい。
【0060】
スケール変換手段54は、デプス画像Pの各画素の画素値を実スケールのデプスに変換するスケール変換関数により、デプス画像Pを中間デプスマップに変換するものである。本実施形態では、スケール変換手段54は、スケール変換関数算出手段44から入力されたスケール変換関数により、平滑化手段53から入力されたデプス画像Pを実スケールのデプスマップへと変換する。なお、スケール変換手段54は、RGB-Dカメラ2のメーカからスケール変換関数が提供される場合、これを使用してもよい。
【0061】
レイヤ化処理手段55は、スケール変換手段54から入力された中間デプスマップのデプスを最も近い奥行きレイヤNのデプスに置き換えるレイヤ化処理を施すものである。具体的には、レイヤ化処理手段55は、カメラパラメータが既知のため、実スケールの中間デプスマップを3次元点群化できる。ここで、レイヤ化処理手段55は、中間デプスマップがカメラ座標系における光軸方向(一般的にはz方向)の距離ではなく、光学中心からの距離を表している場合、その距離を考慮して3次元点群化する。そして、レイヤ化処理手段55は、各点のデプスを最も近い奥行きレイヤNの所属とすることで、中間デプスマップを奥行きレイヤNで表現する。以後、レイヤ化処理を施した中間デプスマップをDとする。
【0062】
スケール補正手段56は、初期デプスマップDと中間デプスマップDとのデプス差が閾値以下の画素について、各奥行きレイヤNでデプス差の平均を補正値として求め、中間デプスマップDのデプスを補正値で補正するものである。つまり、スケール補正手段56は、スケール変換関数の精度が低い場合、デプス画像Pから生成した中間デプスマップDをRGB画像Pから生成した初期デプスマップDに合わせるように補正する。
【0063】
具体的には、スケール補正手段56は、初期デプスマップDと中間デプスマップDとの各画素のデプス差DSub=D-Dを算出する。次に、スケール補正手段56は、|DSub|≦thresoldを満たす画素のみを対象として、初期デプスマップDの各デプスd(d=1,2,・・・,N)でデプス差DSubの平均を算出し、補正値とする。なお、閾値thresoldは手動で設定する。そして、スケール補正手段56は、D New=D Old+DCorのように、補正前の中間デプスマップD Oldに補正デプス値DCorを適用し、補正後の中間デプスマップD Newを求める(以後、中間デプスマップD)。
なお、スケール補正手段56は、スケール変換関数の精度が高い場合、処理を行わなくともよい。
【0064】
コストウェイト算出手段57は、スケール補正手段56から入力された中間デプスマップDの重みを正規分布関数で表したコストウェイトWを算出するものである。前記したように、コストボリューム91は、RGB画像Pのみから生成されており、デプスマップを考慮していない。そこで、中間デプスマップDから算出したコストウェイトWをコストボリューム91に適用することで、RGB画像Pとデプスマップとの両方が考慮されたコストボリューム91となる。
【0065】
コストウェイトWは、中間デプスマップDが正しいデプス値を有する可能性が高いとして、そのデプスのウェイトを最小値とした正規分布で表す。図9に示すように、正規分布の最大値を1とし、奥行きレイヤdの正規分布関数g(d)を以下の式(1)で定義する。
【0066】
【数1】
【0067】
ここで、μは平均、σは分散、σは標準偏差を表す。この正規分布関数g(d)を用いてコストウェイト関数f(d)を以下の式(2)で定義する。なお、aは、コストウェイトWを決めるパラメータである。また、図10(a)に示すように、式(2)の正規分布関数g(d)において、平均μが中間デプスマップDの画素(u,v)のデプス値D(u,v)の平均を表し、分散σがコストウェイト関数f(d)の設計方針に応じて予め設定される(例えば、σ=N/3)。
【0068】
【数2】
【0069】
コストウェイトWは、コストボリューム91と同一サイズの3次元配列となる。そして、コストウェイトWの各要素には、以下の式(3)に示すように、コストウェイト関数f(d)の値が入る。以上より、コストウェイト算出手段57は、式(3)を用いて、コストウェイトWを算出する。
【0070】
【数3】
【0071】
ビジビリティウェイト算出手段58は、コストウェイト算出手段57から入力された中間デプスマップDから、オクルージョン発生時にコストを低下させるビジビリティウェイトWを算出するものである。
【0072】
ここで、コストボリューム91を生成したときにオクルージョンが考慮されておらず、オクルージョンが発生した部分のコストがノイズとなり、前記したレイヤ化処理でもエラーが発生している。複数のカメラペアでコストボリューム91の総和を求めた場合でも、このエラーは同様に発生する。なお、オクルージョンとは、一方の仮想カメラCで見え、かつ、他方の仮想カメラCで見えない領域が発生することである。
【0073】
その一方、中間デプスマップDは、1台のデプスカメラから生成されているため、オクルージョンの影響を受けない。そこで、ビジビリティウェイト算出手段58は、オクルージョンの影響を緩和する(オクルージョンが発生した部分のコストを低下させる)ため、中間デプスマップDからビジビリティウェイトWを算出する。
【0074】
図10(b)に示すように、ビジビリティウェイト関数f(d)を以下の式(4)で定義する。なお、aは、ビジビリティウェイトWを決めるパラメータである。式(4)の正規分布関数g(d)において、平均μは、デプス値D(u,v)の平均に定数shiftを加えた値D(u,v)+shiftを表す(但し、shift≧0)。また、分散σは、ビジビリティウェイト関数f(d)の設計方針に応じて予め設定される(例えば、σ=N/10)。定数shiftの値を大きくすることで、中間デプスマップDに誤差が存在しても許容される一方、ビジビリティウェイトWの効果が小さくなる。
【0075】
【数4】
【0076】
ビジビリティウェイトWは、コストボリューム91と同一サイズの3次元配列となる。そして、ビジビリティウェイトWの各要素には、以下の式(5)に示すように、ビジビリティウェイト関数f(d)の値が入る。以上より、ビジビリティウェイト算出手段58は、式(5)のビジビリティウェイトWを算出する。
【0077】
【数5】
【0078】
ウェイト適用手段59は、初期デプスマップ生成手段52から入力されたコストボリューム91にコストウェイトW及びビジビリティウェイトWを適用するものである。ここで、最終的なコストボリュームEは、リファレンスカメラCとして、全てのカメラペアで統合したコストボリューム91である。つまり、ウェイト適用手段59は、以下の式(6)に示すように、リファレンスカメラのコストウェイトW(x,y,z)、コストボリュームE、ビジビリティウェイトWにより、最終的なコストボリュームEを算出する。
【0079】
【数6】
【0080】
なお、コストボリュームEは、リファレンスカメラCと周囲のカメラ集合Sに含まれる仮想カメラC(j∈S)とのコストボリューム91である。また、warpは、仮想カメラCからリファレンスカメラCへの各奥行きレイヤNを平面とした射影変換を表す。
【0081】
最終デプスマップ生成手段60は、ウェイト適用手段59から入力されたコストボリューム91で同一画素位置のコスト列92において、コストが最小となる奥行きレイヤNのデプスを示す最終デプスマップを生成するものである。つまり、最終デプスマップ生成手段60は、各コスト列92で最小のコストを有する奥行きレイヤNを正しいデプスとして求め、最終的なデプスマップを生成する。
なお、最終デプスマップ生成手段60は、初期デプスマップ生成手段52と同様の手法で最終的なデプスマップを生成するため、これ以上の説明を省略する。
【0082】
その後、リファインメント手段5は、各視点のRGB画像P及び最終的なデプスマップと、カメラ校正手段4から入力された仮想カメラCのカメラパラメータとをセットで出力する。
【0083】
[カメラ校正処理]
図11を参照し、カメラ校正処理について説明する。
図11に示すように、ステップS1において、画角補正手段40は、RGB-Dカメラ2から入力されたデプス画像Pの画角がRGB画像Pの画角に一致するように、デプス画像Pを射影変換する。なお、ステップS1の処理は、必須でないため破線で図示した。
【0084】
ステップS2において、画像分割手段41は、RGB画像P及びデプス画像Pを視点毎に分割する。
ステップS3において、初期カメラパラメータ算出手段42は、各視点のRGB画像Pにカメラ校正処理を施すことで、各視点に対応した仮想カメラCの初期カメラパラメータを算出する。
ステップS4において、カメラパラメータ最適化手段43は、初期カメラパラメータを初期値としたカメラ校正処理により、各仮想カメラCの間でカメラパラメータを最適化する。
ステップS5において、スケール変換関数算出手段44は、カメラパラメータが示す仮想カメラCの位置から校正パターンまでの距離をデプス画像Pの各画素の画素値に対応させることで、スケール変換関数を算出する。
【0085】
[リファインメント処理]
図12を参照し、リファインメント処理について説明する。
図12に示すように、ステップS10において、画像分割手段50は、RGB画像P及びデプス画像Pを仮想カメラC毎に分割する。
ステップS11において、コストボリューム生成手段51は、奥行きレイヤ及びRGB画像Pの画素毎にコストを算出し、コストの三次元配列であるコストボリューム91を生成する。
【0086】
ステップS12において、初期デプスマップ生成手段52は、コストボリューム91で同一画素位置のコスト列92において、コストが最小となる奥行きレイヤのデプスを示す初期デプスマップを生成する。
なお、ステップS11,S12の処理と、後記するステップS13~S18の処理は、並列で実行できる。
【0087】
ステップS13において、平滑化手段53は、デプス画像Pを平滑化する。
ステップS14において、スケール変換手段54は、デプス画像Pの各画素の画素値を実スケールのデプスに変換するスケール変換関数により、デプス画像Pを中間デプスマップに変換する。
ステップS15において、レイヤ化処理手段55は、中間デプスマップのデプスを最も近い奥行きレイヤのデプスに置き換えるレイヤ化処理を施す。
【0088】
ステップS16において、スケール補正手段56は、初期デプスマップDと中間デプスマップDとのデプス差が閾値以下の画素について、各奥行きレイヤNでデプス差の平均を補正値として求め、中間デプスマップDのデプスを補正値で補正する。なお、ステップS16の処理は、必須でないため破線で図示した。
ステップS17において、コストウェイト算出手段57は、中間デプスマップDの重みを正規分布関数で表したコストウェイトWを算出する。
ステップS18において、ビジビリティウェイト算出手段58は、中間デプスマップDから、オクルージョン発生時にコストを低下させるビジビリティウェイトWを算出する。
【0089】
ステップS19において、ウェイト適用手段59は、コストウェイトW及びビジビリティウェイトWをコストボリューム91に適用する。
ステップS20において、最終デプスマップ生成手段60は、コストボリューム91で同一画素位置のコスト列92において、コストが最小となる奥行きレイヤNのデプスを示す最終デプスマップを生成する。
【0090】
[作用・効果]
以上のように、三次元形状取得システム1は、複数視点のRGB画像P及び高精度なデプスマップと、仮想カメラCのカメラパラメータとを容易に取得できる。すなわち、三次元形状取得システム1は、簡易なシステム構成を実現し、複数視点分のRGB画像P及び高精度なデプスマップと、仮想カメラCのカメラパラメータとを提供できる。これらデータは、様々なアプリケーションで利用可能である。例えば、三次元画像を生成する場合、密な多視点RGB画像が必要になる。三次元形状取得システム1が提供するデータは、仮想カメラCのカメラパラメータや高精度なデプスマップを含んでいるため、簡単な処理で三次元画像を生成できる。
【0091】
以上、本発明の実施形態を詳述してきたが、本発明はこれに限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【0092】
前記した実施形態では、デプスカメラがToFカメラであることとして説明したが、これに限定されない。例えば、デプスカメラがステレオカメラであってもよい。
【0093】
本発明は、コンピュータが備えるCPU、メモリ、ハードディスク等のハードウェア資源を、前記した三次元形状取得装置として動作させるプログラムで実現することもできる。これらのプログラムは、通信回線を介して配布してもよく、CD-ROMやフラッシュメモリ等の記録媒体に書き込んで配布してもよい。
【符号の説明】
【0094】
1 三次元形状取得システム(デプスマップ生成システム)
2 RGB-Dカメラ(撮影装置)
20 カメラ本体
21 レンズ系
22 フレネルレンズ
23 レンズアレイ
24 要素レンズ
25 赤外線LEDアレイ
3 三次元形状取得装置(デプスマップ生成装置)
4 カメラ校正手段
40 画角補正手段
41 画像分割手段
42 初期カメラパラメータ算出手段
43 カメラパラメータ最適化手段
44 スケール変換関数算出手段(奥行き変換関数算出手段)
5 リファインメント手段
50 画像分割手段
51 コストボリューム生成手段
52 初期デプスマップ生成手段
53 平滑化手段
54 スケール変換手段(奥行き変換手段)
55 レイヤ化処理手段
56 スケール補正手段(中間デプスマップ補正手段)
57 コストウェイト算出手段
58 ビジビリティウェイト算出手段
59 ウェイト適用手段
60 最終デプスマップ生成手段
9 被写体
90 校正パターン
91 コストボリューム
92 コスト列
C 仮想カメラ
初期デプスマップ
中間デプスマップ
奥行きレイヤ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12