(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-05
(45)【発行日】2024-08-14
(54)【発明の名称】画像処理装置及び画像処理方法、並びに画像投影システム
(51)【国際特許分類】
H04N 5/74 20060101AFI20240806BHJP
【FI】
H04N5/74 D
(21)【出願番号】P 2021562481
(86)(22)【出願日】2020-10-09
(86)【国際出願番号】 JP2020038405
(87)【国際公開番号】W WO2021111733
(87)【国際公開日】2021-06-10
【審査請求日】2023-08-18
(31)【優先権主張番号】P 2019220759
(32)【優先日】2019-12-05
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100093241
【氏名又は名称】宮田 正昭
(74)【代理人】
【識別番号】100101801
【氏名又は名称】山田 英治
(74)【代理人】
【識別番号】100095496
【氏名又は名称】佐々木 榮二
(74)【代理人】
【識別番号】100086531
【氏名又は名称】澤田 俊夫
(74)【代理人】
【識別番号】110000763
【氏名又は名称】弁理士法人大同特許事務所
(72)【発明者】
【氏名】黒川 益義
【審査官】益戸 宏
(56)【参考文献】
【文献】特開2012-079294(JP,A)
【文献】国際公開第2017/104447(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/74
H04N 9/31
G01B 11/00
(57)【特許請求の範囲】
【請求項1】
第1の画像から抽出された所定のパターンの領域毎に付与された誤り検出機能に基づいて領域内の誤りを検出する検出部と、
前記第1の画像から抽出された所定のパターンの領域毎に付与された識別機能に基づいて元の所定のパターンにおける領域の対応点情報を取得する取得部と、
を具備し、
前記所定のパターンは、それぞれ0~3の2ビットで表される属性値を有する複数のドットを格子状に配置して構成され、
前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の和はmodulo 3を0とする第1の制約条件を満たすように構成され、
前記検出部は、3×3個のドットからなる領域内の複数のドットの属性値が前記第1の制約条件を満たすかどうかに基づいて領域内の誤りを検出する、
画像処理装置。
【請求項2】
前記検出部は、前記抽出された所定のパターンから検出した属性値が3のドットの近傍8ドットの属性値の和はmodulo 3が0となるかどうかに基づいて、該当する3×3個のドットからなる領域内の誤りを検出する、
請求項1に記載の画像処理装置。
【請求項3】
前記取得部は、前記検出部で誤りが検出されなかった領域の対応点情報を取得する、
請求項1に記載の画像処理装置。
【請求項4】
前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の系列は固有とする第2の制約条件を満たすように構成され、
前記取得部は、3×3個のドットからなる領域内の複数のドットの属性値の系列に設定された前記第2の制約条件に基づいて、元の所定のパターンにおける領域の対応点情報を取得する、
請求項1に記載の情報処理装置。
【請求項5】
前記取得部は、前記抽出された所定のパターンから検出した属性値が3のドットの近傍8ドットの属性値の系列と元の所定のパターンにおける属性値の系列との比較結果に基づいて対応点情報を取得する、
請求項4に記載の画像処理装置。
【請求項6】
前記第1の画像はプロジェクタの投影画像をカメラで撮影した撮影画像である、
請求項1に記載の画像処理装置。
【請求項7】
前記プロジェクタは、前記所定のパターンが埋め込まれた画像を投影し、
前記プロジェクタの投影画像を前記カメラで撮影した前記第1の画像から、前記投影画像に埋め込まれた前記所定のパターンを抽出する、
請求項6に記載の画像処理装置。
【請求項8】
前記所定のパターンは、楕円形状で、輝度変化方向が正方向及び負方向の2種類で且つ楕円の長軸方向が2種類となるドットを
格子状に配置して構成される、
請求項1に記載の画像処理装置。
【請求項9】
第1の画像から抽出された所定のパターンの領域毎に付与された誤り検出機能に基づいて領域内の誤りを検出する検出ステップと、
前記第1の画像から抽出された所定のパターンの領域毎に付与された識別機能に基づいて元の所定のパターンにおける領域の対応点情報を取得する取得ステップと、
を有し、
前記所定のパターンは、それぞれ0~3の2ビットで表される属性値を有する複数のドットを格子状に配置して構成され、
前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の和はmodulo 3を0とする第1の制約条件を満たすように構成され、
前記検出ステップでは、3×3個のドットからなる領域内の複数のドットの属性値が前記第1の制約条件を満たすかどうかに基づいて領域内の誤りを検出する、
画像処理方法。
【請求項10】
プロジェクタと、
前記プロジェクタの投影画像を撮影するカメラと、
前記プロジェクタが所定のパターンを埋め込んだ画像を投影した投影画像を前記カメラで撮影した撮影画像から前記所定のパターンを抽出し、
所定のパターンの領域毎に付与された誤り検出機能に基づいて、前記抽出された所定のパターンの領域毎の誤りを検出する検出部と、
所定のパターンの領域毎に付与された識別機能に基づいて、
元の所定のパターンにおける領域毎に対応点情報を取得する取得部と、
取得した対応点情報に基づいて、前記プロジェクタから投影する画像を補正処理する画像補正部と、
を具備し、
前記所定のパターンは、それぞれ0~3の2ビットで表される属性値を有する複数のドットを格子状に配置して構成され、
前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の和はmodulo 3を0とする第1の制約条件を満たすように構成され、
前記検出部は、3×3個のドットからなる領域内の複数のドットの属性値が前記第1の制約条件を満たすかどうかに基づいて領域内の誤りを検出する、
画像投影システム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で開示する技術(以下、「本開示」とする)は、プロジェクタの投影画像を処理する画像処理装置及び画像処理方法、並びに画像投影システムに関する。
【背景技術】
【0002】
スクリーンに映像を投影するプロジェクション技術は古くから知られており、教育現場や会議、プレゼンテーションなどで広く利用されている。比較的大きなスクリーンで映像を拡大して表示できるので、複数人に対して同じ映像を同時に提示できるなどの利点がある。最近では、建造物などの任意形状を有するスクリーンの表面に映像を投影して表示するプロジェクションマッピングや、複数のプロジェクタを用いて同じ投影面を重畳して投影するプロジェクタスタッキングも利用されるようになってきている。
【0003】
さまざまな環境で投影画像の歪みを低減し、あるいは複数のプロジェクタによる投影画像の位置合わせを行うために、プロジェクタの投影状況を把握する必要がある。一般には、プロジェクタからテストパターンを投影し、カメラでその投影画像を撮影して、元のテストパターンと撮影画像上のテストパターンとの対応関係に基づいて元の映像に幾何補正を行う方法が用いられている。
【0004】
通常、プロジェクタの投影状況の把握は、投影を開始する前に行われる。また、映像を投影している最中にも、温度や振動などの外乱の影響によりプロジェクタの姿勢や投影面の形状が変化するおそれがある。このため、投影を開始した後もプロジェクタの投影状況を把握して、映像の補正を再度行う必要がある。プロジェクタの投影状況を確認する度に、投影動作を止めてプレゼンテーションなどを中断することは、プレゼンター及び聴衆にとって好ましくない。そこで、映像の投影動作を続けながら、プロジェクタの投影状況の確認を行うオンラインセンシングも提案されている(例えば、特許文献1を参照のこと)。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
本開示の目的は、所定のパターンを含んだ投影画像を処理する画像処理装置及び画像処理方法、並びに画像投影システムを提供することにある。
【0007】
本開示の第1の側面は、
第1の画像から抽出された所定のパターンの領域毎に付与された誤り検出機能に基づいて領域内の誤りを検出する検出部と、
前記第1の画像から抽出された所定のパターンの領域毎に付与された識別機能に基づいて元の所定のパターンにおける領域の対応点情報を取得する取得部と、
を具備する画像処理装置である。
【0008】
各ドットは0~3の2ビットで表される属性値を有し、前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の和はmodulo 3を0とする前記第1の制約条件を満たすように構成される。
【0009】
前記検出部は、前記抽出された所定のパターンから検出した属性値が3のドットの近傍8ドットの属性値の和はmodulo 3が0となるかどうかに基づいて、該当する3×3個のドットからなる領域内の誤りを検出する。
【0010】
また、前記取得部は、前記抽出された所定のパターンから検出した属性値が3のドットの近傍8ドットの属性値の系列と元の所定のパターンにおける属性値の系列との比較結果に基づいて対応点情報を取得する。
【0011】
また、本開示の第2の側面は、
第1の画像から抽出された所定のパターンの領域毎に付与された誤り検出機能に基づいて領域内の誤りを検出する検出ステップと、
前記第1の画像から抽出された所定のパターンの領域毎に付与された識別機能に基づいて元の所定のパターンにおける領域の対応点情報を取得する取得ステップと、
を具備する画像処理方法である。
【0012】
また、本開示の第3の側面は、
プロジェクタと、
前記プロジェクタの投影画像を撮影するカメラと、
前記プロジェクタが所定のパターンを埋め込んだ画像を投影した投影画像を前記カメラで撮影した撮影画像から前記所定のパターンを抽出し、
所定のパターンの領域毎に付与された誤り検出機能に基づいて、前記抽出された所定のパターンの領域毎の誤りを検出する検出部と、
所定のパターンの領域毎に付与された識別機能に基づいて、前記抽出された所定のパターンの領域毎に対応点情報を取得する取得部と、
取得した対応点情報に基づいて、前記プロジェクタから投影する画像を補正処理する画像補正部と、
を具備する画像投影システムである。
【0013】
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
【発明の効果】
【0014】
本開示によれば、オンラインセンシングによりプロジェクタの投影状況の確認動作を行う画像処理装置及び画像処理方法、並びに画像投影システムを提供することができる。
【0015】
なお、本明細書に記載された効果は、あくまでも例示であり、本開示によりもたらされる効果はこれに限定されるものではない。また、本開示が、上記の効果以外に、さらに付加的な効果を奏する場合もある。
【0016】
本開示のさらに他の目的、特徴や利点は、後述する実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【図面の簡単な説明】
【0017】
【
図1】
図1は、画像投影システム100の外観構成例を示した図である。
【
図2】
図2は、画像投影システム100の機能的構成例を示した図である。
【
図3】
図3は、投影部201の内部構成例を示した図である。
【
図4】
図4は、画像処理部202の内部構成例を示した図である。
【
図5】
図5は、ISL方式の動作原理を説明するための示した図である。
【
図6】
図6は、構造化光パターン600の一実施形態を示した図である。
【
図7】
図7は、構造化パターン600で使用されるドット601の種類を示した図である。
【
図8】
図8は、構造化光パターン600で使用されるドット601の種類を示した図である。
【
図9】
図9は、本開示で使用する構造化光パターンの具体例を示した図である。
【
図10】
図10は、構造化光パターンを生成する方法を説明するための図である。
【
図11】
図11は、構造化光パターンを作成する処理手順を示したフローチャートである。
【
図12】
図12は、本開示で使用する構造化光パターンの具体例を示した図である。
【
図13】
図13は、
図12に示した構造化光パターンに含まれる各3×3個のドット群毎に設定された属性値の検証結果を示した図である。
【
図14】
図14は、対応点情報取得部204が対応点情報を取得するための処理手順を示したフローチャートである。
【
図15】
図15は、画像投影システム100が投影状況の確認動作時に実行する処理手順を示したフローチャートである。
【
図16】
図16は、幾何歪みを含んだ投影画像を例示した図である。
【
図17】
図17は、幾何補正後の投影画像を例示した図である。
【発明を実施するための形態】
【0018】
以下、図面を参照しながら本開示の実施形態について詳細に説明する。
【0019】
A.システム構成
図1には、本開示を適用した画像投影システム100の外観構成例を模式的に示している。図示の画像投影システム100は、スクリーン102に映像を投影するプロジェクタ101と、スクリーン102上の投影画像を撮影するカメラ103と、カメラ103の撮影信号の現像処理などを行う映像信号処理部104と、プロジェクタ101に投影用の映像信号を供給する映像ソース105を備えている。
【0020】
プロジェクタ101が映像を投影する方式は特に限定されない。また、スクリーン102の構造、形状、材質は特に限定されない。スクリーン102は、布などでできた投影用のスクリーンであってもよいし、部屋の壁や建造物の外壁などでもよい。映像ソース105は、任意であり、ディスク再生装置やパーソナルコンピュータなどの情報端末、クラウドなどであってもよい。また、映像ソース105がプロジェクタ101に映像信号を伝送する通信路は特に限定されず、HDMI(登録商標)(High Definition Multimedia Interface)、VGA(Video Graphic Array)、USB(Universal Serial Bus)などの有線ケーブルや、Wi-Fi(登録商標)などの無線通信であってもよい。
【0021】
プロジェクタ101は、通常の投影動作時には、映像索子105から供給される映像をスクリーン102上に投影する。また、プロジェクタ101は、投影状況の確認時には、テストパターンをスクリーン102上に投影する。本実施形態では、後述するように投影状況の確認動作をオンラインセンシングで実施することを想定している。したがって、プロジェクタ101は、本来の映像にテストパターンを埋め込んでスクリーン102上に投影する。プロジェクタ101は、あらかじめ外部装置(図示しない)で生成しておいたテストパターンを内部記憶しておき、投影状況の確認動作時に読み出して使用するようにしてもよい。あるいは、プロジェクタ101は、テストパターンを内部で生成する機能を備えていてもよい。
【0022】
カメラ103は、投影状況の確認動作時に、スクリーン102上の投影画像を撮影する。映像信号処理部104は、カメラ103の撮影信号に現像処理などの信号処理を行って、プロジェクタ101に出力する。あるいは、カメラ103は、スクリーン102上の投影画像を常時撮影し、プロジェクタ101は投影状況の確認動作時に映像信号処理部104から映像を取得するようにしてもよい。
【0023】
プロジェクタ101は、元のテストパターンと撮影画像上のテストパターンとの対応関係に基づいて元の映像に幾何補正を行う。幾何補正の原理について簡単に説明しておく。
【0024】
スクリーン102の投影面に対するプロジェクタ101の姿勢や投影面の形状などによって、投影画像が例えば
図16に示すように歪んでしまい、見えづらくなることがある。このような場合、プロジェクタ101が投影する元の画像に対して歪みをキャンセルするような幾何補正を施すことによって、
図17に示すような、歪みが低減され、元の画像に近い画像を投影して、見え易くすることができる。
【0025】
投影画像の幾何補正は、プロジェクタ101を操作する操作者などが手動により行うこともできるが、作業が煩雑である。そこで、本実施形態に係る画像投影システム100では、カメラ103を用いてプロジェクタ101の投影画像を撮影し、その撮影画像を用いて自動で幾何補正を行う方法を用いるようにしている。
【0026】
カメラ103を用いて投影画像の幾何補正を行う場合、投影される元の画像と撮影画像との間で対応点を求める必要がある。すなわち、カメラ103がスクリーン102上の投影画像を撮影した撮影画像と、プロジェクタ101が投影する元の画像の間で画素の対応関係を求める必要がある。元の画像と撮影画像間で対応点の位置を比較することで、撮影画像、言い換えればプロジェクタ101が投影した投影画像の各対応点における歪みを計算することができ、歪みをキャンセルするように元の画像の各対応点の位置の幾何補正を行うことで、投影画像の歪みを低減することができる。
【0027】
このような幾何補正を行なう際のプロジェクタ101の投影状況の確認は、投影する元の画像とスクリーン102上の投影映像の撮影画像の間の対応点の情報を取得することに相当する。
【0028】
図2には、画像投影システム100の機能的構成例を示している。画像投影システム100は、スクリーン(
図2には図示しない)に映像を投影するプロジェクタ101と、スクリーン上の投影画像を撮影するカメラ103と、カメラ103の撮影信号の現像処理などを行う映像信号処理部104と、プロジェクタ101に投影用の映像信号を供給する映像ソース(
図2には図示しない)を備えている。プロジェクタ101は、投影部201と、画像処理部202と、画像入力部203と、対応店情報取得部204を備えている。
【0029】
画像入力部203は、ディスク再生装置や情報端末、クラウドなどの映像ソースから映像信号を入力する。
【0030】
画像処理部202は、投影部201から投影出力する画像の処理を行なう。画像処理部202から出力される画像は、画像入力部203から入力される入力画像と、画像処理部102内で保持するテストパターンである。本実施形態では、後述するようにオンラインセンシングが適用され、画像処理部202は、投影状況の確認動作時(又は、対応点情報の取得時)には、入力画像にテストパターンを埋め込んだ画像を投影部201に出力する。
【0031】
画像処理部202内では、対応点情報取得部204から供給される対応点情報に基づいて、投射画像に発生している歪みの幾何補正も行なう。補正の対象となる歪みは、投影面に対するプロジェクタ101の姿勢や投影面の形状に基づく歪みであるが、プロジェクタ101やカメラ103の光学系に起因する光学歪みを含んでもよい。
【0032】
投影部201は、画像処理部202から出力される画像を、スクリーン(
図2には図示しない)に投影する。投影面に対するプロジェクタ101の姿勢や投影面の形状に起因して、投影画像には幾何歪みが発生する。
【0033】
カメラ103は、投影状況の確認動作時(又は、対応点情報の取得時)には、投影部201からスクリーンに投影されたテストパターンが埋め込まれた投影画像を撮影する。カメラ103の撮影画像は、映像信号処理部104で信号処理が施された後に、対応点情報取得部204に供給される。
【0034】
対応点情報取得部204は、テストパターンが埋め込まれた撮影画像からテストパターンを検出して、投影される元の画像と撮影画像との間で対応点の情報を求めて、画像処理部202に対応点情報を供給する。画像処理部202内では、対応点情報に基づいて、投影画像に含まれる幾何歪みを補正するための補正量を計算して、出力画像に対して射影変換を行なうことにより幾何歪みを補正する。
【0035】
なお、カメラ103は、投影部201の照射位置と異なる位置に配設され、撮影範囲が投影部201の照射範囲を極力包含するように光軸が設定されている。投影状況の確認時(又は、対応点情報の取得時)には、投影部201からテストパターンが埋め込まれた画像をスクリーンに投影して、カメラ部104で撮影する。そして、対応点情報取得部204は、撮影画像からテストパターンを抽出して、投影される元の画像と撮影画像との間で対応点の情報を求め、画像処理部202に出力する。画像処理部202内では、対応点情報に基づいて、投影画像を幾何補正するための補正パラメータを算出すると、以降は、画像入力部203から入力されるすべて画像に補正パラメータを適用し、投影部201からは幾何歪みが補正された画像が照射される。
【0036】
図3には、投影部201の内部構成例を示している。図示の投影部201は、照明光学部301と、液晶パネル302と、液晶パネル駆動部303と、投影光学部304を備えている。
【0037】
液晶パネル駆動部303は、画像処理部202から入力される画像信号に基づいて液晶パネル302を駆動して、その表示画面に投影画像を描画する。照明光学部301は、液晶パネル302を背面から照射する。画像投影システム100がピコプロジェクターの場合、照明光学部301の光源には例えばLED(Light Emitting Diode)やレーザーが用いられる。投影光学部304は、液晶パネル302を透過した光を、投影光学部304を介してスクリーン(
図3には図示しない)に拡大投影する。投影部201からは、画像入力部203への入力画像が投影される。また、投影状況の確認動作時(又は、対応点情報の取得時)には、投影部201からは、画像入力部203への入力画像にテストパターンが埋め込まれたが投影される。投影光学部304は、1枚又は2枚以上の光学レンズからなる。投影光学部304がレンズ歪みを持つことが想定され、このため、投影画像の幾何歪みはプロジェクタ101の姿勢や投影面の形状の他にレンズ歪みも起因する。
【0038】
図4には、画像処理部202の内部構成例を示している。図示の画像処理部202は、画像書き込み読み出し制御部401と、フレームメモリ402と、画像補正部403と、画質調整部404と、テストパターン記憶部405と、出力画像切り替え部406を備えている。
【0039】
フレームメモリ402には、画像入力部203から供給される画像を記憶する。画像書き込み読み出し制御部401は、フレームメモリ402への画像フレームの書き込み及び読み出しを制御する。
【0040】
画像補正部403は、対応点情報取得部204から受け取った対応点情報に基づいて、フレームメモリ402から読み出した画像に対して、投影部201から被写体に投影した際に幾何歪みが解消するよう補正を行なう。幾何補正については、
図16及び
図17を参照しながら説明したが、これに限定されるものではない。
【0041】
画質調整部404は、歪み補正を行なった後の投影画像が所望の表示状態となるよう、輝度、コントラスト、同期、トラッキング、色の濃さ、色合いなどの画質調整を行なう。
【0042】
テストパターン記憶部405は、プロジェクタ101の投影状況の確認動作時(又は、対応点情報取得時)に、投影される画像に埋め込むテストパターンを記憶している。テストパターン記憶部405は、あらかじめ外部装置(図示しない)で生成しておいたテストパターンを記憶しておいてもよいし、画像処理部202(又は、プロジェクタ101)内でテストパターンを生成する機能を備えていてもよい。後述するように、本開示では、対応点情報の取得にはオンラインセンシングのうちISL(Imperceptible Structured Light)方式が適用され、テストパターンは構造化光パターンからなる。出力画像切り替え部406は、投影状況の確認動作時(又は、対応点情報の取得時)には、テストパターン記憶部405から読み出したテストパターンを埋め込んだ画像を出力するように、出力画像の切り替え処理を行う。
【0043】
B.オンラインセンシング
プロジェクタ101を設置したときに投影上機能の確認を行うが、映像を投影している最中にもプロジェクタ101の姿勢やスクリーン102の投影面の形状が変化するおそれがある。このため、投影を開始した後も、プロジェクタ101の投影状況を確認して、投影画像の幾何補正を再度行う必要がある。
【0044】
プロジェクタの投影状況を確認する度に、投影動作を止めてプレゼンテーションなどを中断することは、プレゼンター及び聴衆にとって好ましくない。そこで、本実施形態に係る画像投影システム100は、プロジェクタ101の投影動作を継続したまま、プロジェクタ101の投影状況の確認、すなわち元の画像とカメラ103の撮影画像の間の対応点の情報を取得する処理を実施するようにしている。
【0045】
オンラインセンシング技術として、例えば、Infraredなどの不可視光を利用した方式、SIFT(Scale Invariant Feature Transform)などの画像特徴量を利用した方式、ISL方式などが挙げられる。Infraredなどの不可視光を利用した方式の場合、不可視光を投影するプロジェクタ(例えばInfraredプロジェクタ)がさらに必要になるためコストが増大する。また、SIFTなどの画像特徴量を利用した方式の場合、対応点の検出精度や密度が投影する画像コンテンツに依存してしまうため、対応点検出を安定した精度で行うことが困難である。
【0046】
これらに対してISL方式の場合、可視光を利用するため、システム構成要素の増大(すなわちコストの増大)を抑制することができる。また、ISL方式は、投影する画像に依存せずに安定した精度で対応点検出を行うことができる。
【0047】
ISL方式の動作原理について、
図5を参照しながら説明する。プロジェクタ101は、入力画像のあるフレームに対して所定の構造化光パターンを足すことにより、入力画像に構造化光パターンのポジ画像を合成したフレーム画像を生成し、入力画像のその次のフレームに対して構造化光パターンを引くことにより、入力画像に構造化光パターンのネガ画像を合成したフレーム画像を生成する。そして、プロジェクタ101は、ポジ画像フレームとネガ画像フレームをフレーム毎に交互に連続投影する。高速に切り替えられたポジ画像及びネガ画像の連続する2フレームは、積分効果により人間の目には足し合わされて知覚される。その結果、投影画像を観察するユーザにとって、入力画像に埋め込まれた構造化光パターンを認識することが困難、すなわち観測画像からは構造化光パターンは不可視になる。
【0048】
カメラ103は、ポジ画像フレーム及びネガ画像フレームの投影画像を撮影する。そして、対応点情報取得部204は、両フレームの撮影画像の差分を求めることにより、撮影画像に含まれる構造化光パターンのみを抽出する。この抽出された構造化光パターンを用いて対応点検出が行われる。
【0049】
このように、ISL方式では撮影画像の差分を求めるだけで容易に構造化光パタ-ンを抽出することができるので、投影する画像に依存せずに安定した精度で対応点検出を行うことができる。
【0050】
ISL方式で用いる構造化光パターンとして、グレイコード並びにチェッカーパターンを挙げることができる。グレイコード並びにチェッカーコードの詳細については、例えば特許文献1を参照されたい。グレイコードやチェッカーパターンは、輝度変化勾配が大きく且つ空間的に規則性の高いパターンを有するため、投影画像を見ているユーザに知覚され易く、不可視性が低減するおそれがある。構造化光パターンは、本来投影すべき画像にとって不要であり、ユーザが構造化光パターンを知覚することは投影画像の画質低減に相当する。なお、グレイコードやチェッカーパターンを用いる場合、対応点情報を取得するために多くの枚数を投影する必要がある。一般的に、投影する枚数が増大するほどよりユーザに知覚され易くなり、不可視性がより低減するおそれがある。また、多くの枚数を投影する分だけ対応点検出の時間が増大する。
【0051】
C.構造化光パターンの構造
本開示では、オンラインセンシングにおいて、可視光を利用するため、システム構成要素の増大(すなわちコストの増大)を抑制することができるISL方式を採用する。また、本開示では、グレイコードやチェッカーパターンにおける課題を解決し、不可視性を確保しつつ、検出時間を短縮できる構造化光パターンを採用する。具体的には、本開示では、輪郭又は形状と、輝度変化方向によって情報を表現するドットを組み合わせた構造化光パターンを、対応点情報の取得に利用する。
【0052】
図6には、本開示で使用する構造化光パターンの一実施形態を示している。構造化光パターンは、投影される元の画像と投影画像の撮影画像の間の対応点を検出するために使用される。
図6に示す構造化光パターン600は、周辺と輝度値が異なる楕円形状のドット601を格子状に配置して構成される。プロジェクタ101の投影状況の確認時すなわち対応点情報の取得時に、構造化パターン600が埋め込まれた画像の投影画像をカメラ103で撮影し、その撮影画像から各ドット601を検出することで、投影される元の画像と撮影画像との間で対応点を求めることができる。
【0053】
図6中の白及び黒のドット601は、実際には、それぞれ周辺から中心に向かって正又は負の方向に向かって2次元ガウス関数状の輝度分布を持つ楕円形状とすることにより、ポジ画像及びネガ画像のそれぞれにおいてドット601の不可視性を向上させることができる。
図7には、輝度変化方向が正方向及び負方向のそれぞれのドットの輝度分布を示している。輝度変化方向が正方向のドット701の輝度値は、曲線711に示すように、楕円の周辺から幾何重心に向かって正の方向にガウス関数状に変化する。これに対し、輝度変化方向が負方向のドット702の輝度値は、曲線712に示すように、楕円の周辺から幾何中心に向かって負の方向にガウス関数状に変化する。つまり、構造化光パターン600は、輝度変化方向が互いに逆の2種類のドットを有する。
【0054】
高速に切り替えられたポジ画像及びネガ画像の2フレームは、積分効果により人間の目には足し合わされて知覚される。その結果、投影画像を観察するユーザにとって、画像に埋め込まれた構造化光パターンを認識することが困難、すなわち不可視になる。一方、ポジ画像フレーム及びネガ画像フレームの投影画像をカメラ103で撮影した撮影画像の差分をとることで、撮影画像に含まれる構造化光パターンのみを抽出する。この抽出された構造化光パターンを用いて対応点検出が行われる。
【0055】
ドット601の輝度変化方向は2種類(
図6では白と黒で表現)、楕円形状は長軸が水平方向又は垂直方向の2種類である。したがって、各ドット601は、輝度変化方向で1ビット、楕円形状の長軸の向きで1ビットの情報を持つことができ、輝度変化方向と長軸の向きを組み合わせて2ビットすなわち4値の情報を持つことができる。但し、
図6中の白で示すドットは輝度変化方向が正であり、黒で示すドットは輝度変化方向が負であるとする。
【0056】
図8には、本実施形態において、構造化光パターン600で使用されるドット601の種類を示している。図示のように、輝度変化方向(正又は負)と楕円の長軸の向き(縦又は横)の組み合わせで、4種類のドット601-1、601-2、601-3、601-4を有する。したがって、ドット601は2ビットの情報を表すことができる。以下の説明では、各ドット601-1、601-2、601-3、601-4をそれぞれ「0」、「1」、「2」、「3」の4つの属性値で示すことにする。
【0057】
D.構造化光パターンにおける課題の解決
図6に示したような、輪郭又は形状と、輝度変化方向によって情報を表現するドットを組み合わせた構造化光パターンを用いれば、積分効果により不可視性を確保することができ、且つ、ポジ画像フレーム及びネガ画像フレームの2枚の投影画像の撮影画像の差分をとることで構造化光パターンを抽出することができるので、対応点情報取得時間を短縮することができる。
【0058】
しかしながら、
図6に示したような構造化光パターンを用いて対応点情報の取得を行なう際にも課題がある。構造化光パターンの不可視性を確保するために、正方向及び負方向にそれぞれ変化する輝度の振幅を微小にしている(
図7を参照のこと)。このため、投影している画像の輝度、あるいは輝度変動などによって、検出処理が影響を受けて、ドットを検出できないことや、ドットが表す2ビットの情報を誤判定する可能性が生じる。
【0059】
上記では、ISL方式のオンラインセンシングで使用する構造化光パターンを構成する各ドットに2ビットの情報を表すことを説明した。これに対し、本開示は、近傍の複数個のドットの組み合わせに対して、さらに識別機能と誤り検出機能という2つの機能を付与するようにしている。
【0060】
識別機能は、同じ構造化光パターン内では、近傍の複数個のドットの組み合わせで表される情報系列が固有の情報であり、他のドットの組み合わせと識別できる機能である。したがって、近傍の複数個のドットの組み合わせが表す情報系列に基づいて、これらのドットの構造化光パターン内での位置情報を取得することができる。投影画像の撮影画像をオンラインセンシングするとき、情報系列を読み取ることができたドットの組み合わせについては、元の画像の対応点を特定することができる。
【0061】
誤り検出機能は、近傍の複数個のドットの組み合わせで表される情報系列が所定の規則又は条件に適合するかによって、各ドットの情報を誤判定していないかどうかを検出できる機能である。具体的には、近傍の複数個のドットから読み取った値の合計値が所定の規則又は条件に適合するかによって、各ドットの情報を誤判定していないかどうかを検出する。近傍の複数個のドットの組み合わせが表す情報系列に基づいて対応点情報を取得することができたとしても、情報系列の誤りが検出されたときには、その対応点情報を破棄して使用しない。
【0062】
したがって、対応点情報取得部204は正しい対応点情報のみを取得することができ、画像処理部202内の画像補正部403は、正しい対応点情報に基づいて、投影される画像に対して正しい幾何補正を行うことができる。また、たとえすべてのドットを検出することができなくても、例えば検出できなかった箇所の近傍4隅の対応点情報を取得することができたならば、補間などの手法で対応点情報を推定できる可能性がある。他方、誤判定したドットに基づく誤った対応点情報を用いると、誤った幾何補正を行うことになり、投影画像の歪みはむしろひどくなるおそれがある。
【0063】
本開示で使用する構造化光パターンについて、具体的に説明する。
図6と同様に、構造化光パターンは輝度変化方向と長軸の向きの組み合わせで2ビットの情報を持つドットの配列で構成される。以下では、図面の簡素化のため、
図8に則って各ドットをそれぞれ「0」、「1」、「2」、「3」の4つの属性値で示すことにする。
【0064】
図9には、本開示で使用する構造化光パターンの一部となる、格子状に配置された7×5個のドット群を例示している。
図9は、
図5を参照しながら説明したISL方式の動作原理に従って検出されたドットのパターンを表しているものとする。
【0065】
従来、撮影画像から検出した各ドットが表す2ビットの情報から、元の構造化光パターン上のドットとの対応付けを行い、対応付けされたドットの重心位置に基づいて座標上での対応点を算出する方法が用いられている。ところが、ここで使用する構造化光パターンは、不可視性を重視して正方向及び負方向にそれぞれ変化する輝度の振幅を微小にしているため(
図7を参照のこと)、投影している画像の輝度や輝度変動などによって検出処理が影響を受けて、ドットを検出できないことや、ドットが表す2ビットの情報を誤判定する可能性が生じる。
【0066】
そこで、本開示では、近傍の複数個のドットの組み合わせに対して、さらに識別機能と誤り検出機能という2つの機能を付与する。
図9に示す実施形態では、近傍の複数個のドットの組み合わせとして、3×3の9ドットからなるドット群毎に識別機能と誤り検出機能を付与している。
【0067】
まず、3×3の9ドットの中央に、3×3の9ドットの中央のドットであることを示す、属性値「3」を示すドットを配置する。
図9に示すように、上下及び左右に1ドット置きに属性値「3」を示すドットが配置される。また、3×3の9ドットの中央以外には、属性値「3」以外、すなわち属性値「0」、「1」、「2」のいずれかを示すドットが配置される。
【0068】
ここで、3×3の9ドットの中央以外(すなわち、属性値「3」を表すドットの近傍)の8ドットがそれぞれ表す属性値の和がmodulo 3が0すなわち3の倍数となるように、属性値「3」を表すドットの近傍に8ドットを配置することを、構造化光パターンを作成する際の制約条件とする。すなわち、属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値の和が0、3、6、9、12、15のいずれかとなるように、3×3の9ドットを配置する。
【0069】
図9に示す例では、参照番号901で示す3×3の9ドットでは、属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値を合計すると、1+1+0+1+2+2+0+2=9となりmodulo 3は0となる。また、参照番号901で示した位置から右に1ドット及び下に1ドット移動した、参照番号902で示す3×3の9ドットでは、属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値を合計すると、0+2+0+2+1+2+1+1=9となりmodulo 3は0である。
【0070】
対応点情報を取得するとき、プロジェクタ101の投影画像をカメラ103で撮影した画像から
図9に示すような構造化光パターンを抽出すると、属性値が「3」のドットの近傍の8ドットがそれぞれ表す属性値の和が制約条件「modulo 3は0」を満たすかどうかをチェックする。そして、制約条件を満たすときにはその3×3の9ドットの判定に誤りがないと推定するが、制約条件を満たさないときにはその3×3の9ドットの判定が誤判定を含むと推定する。すなわち、構造化光パターンの作成時にこの制約条件を設定することにより、構造化光パターンに誤り検出機能を付与することができる。但し、moduloを利用した1誤り検出だけでは2以上の誤判定を検出できない可能性があるため、moduloを使用する方法に加えて(又は、moduloを使用する方法に代えて)他の誤り検出方法を用いるようにしてもよい。
【0071】
なお、上記の制約条件を満たさず誤判定と推定された3×3の9ドットについては、誤った対応点情報を取得しないように、後続の対応点情報取得処理には使用しない。あるいは、誤判定と推定された3×3の9ドットの近傍4隅の3×3の9ドットの判定結果に基づいて対応点を補間するようにしてもよい。
【0072】
また、3×3の9ドットの中央以外(すなわち、属性値「3」を表すドットの近傍)の8ドットがそれぞれ表す属性値の系列が、同じ構造化光パターン内では、他の3×3の9ドットとは重複しないこと(すなわち、固有の情報であること)を、構造化光パターンを作成する際のもう1つの制約条件とする。
【0073】
図9に示す例では、参照番号901で示す3×3の9ドットでは、属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値の系列は11012202である。また、参照番号901で示した位置から右に1ドット及び下に1ドット移動した、参照番号902で示す3×3の9ドットでは、属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値の系列は02021211であり、参照番号901で示す3×3個のドット群とは重複しない。
【0074】
各3×3個のドット群において属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値の系列は、同じ構造化光パターン内では固有の情報であり、他の3×3個のドット群の識別することができる。すなわち、構造化光パターンの作成時にもう1つの制約条件を設定することにより、構造化光パターンに識別機能を付与することができる。
【0075】
構造化光パターンの作成時には、3×3個のドット群の属性値を設定する度に、1番目の制約条件を満たすように、中央の属性値「3」を表すドットの近傍の8個のドットがそれぞれ表す属性値の系列を生成して、その属性値の系列をドットの画素位置と対応付けて対応付けリストに記録しておく。また、次の3×3個のドット群の属性値を設定する際には、同様に1番目の制約条件を満たしつつ、既に設定した3×3個のドット群の8個の属性値の系列とは重複しないように、近傍の8個のドットがそれぞれ表す属性値の系列を生成して、その属性値の系列をドットの画素位置と対応付けて対応付けリストに記録しておく。
【0076】
対応点情報を取得するとき、プロジェクタ101の投影画像をカメラ103で撮影した画像から
図9に示すような構造化光パターンを抽出して、属性値が「3」のドットの近傍の8ドットがそれぞれ表す属性値の系列を取得すると、対応付けリストを参照してドットの画素位置すなわち対応点情報を取得することができる。例えば、参照番号901で示す3×3個のドット群からは8個の属性値の系列「11012202」を検出し、この属性値の系列を対応付けリストで参照して、このドット群の各ドットの画素位置すなわち対応点情報を取得することができる。また、参照番号902で示す3×3個のドット群からは8個の属性値の系列「02021211」を検出し、この属性値の系列を対応付けリストで参照すると、参照番号901で示す3×3個のドット群を含む他の3×3個のドット群とは重複することなく、このドット群の各ドットの画素位置すなわち対応点情報を取得することができる。
【0077】
ここで、本開示で使用する構造化光パターンを作成する処理手順の一例について、簡単に説明しておく。但し、説明の簡素化のため、構造化光パターンは格子状に配置された多数のドットで構成されるものとし、
図8に則って各ドットをそれぞれ「0」、「1」、「2」、「3」の4つの属性値で示すことにする。
【0078】
図10に示すように、ドットが配置される格子を3×3個のドットの単位で、1ドット置きに水平方向に移動して、スキャン位置毎に上述した2つの制約条件を満たすように、3×3個のドット内の各ドットの属性値を生成する。
図11には、構造化光パターンを作成する処理手順の一例をフローチャートの形式で示している。
【0079】
まず、現在のスキャン位置にて(ステップS1101)、3×3の9ドットの中央に、3×3の9ドットの中央のドットであることを示す、属性値「3」を示すドットを配置する(ステップS1102)。
【0080】
次いで、属性値「3」を表すドットの近傍に8ドットの各値を、例えば乱数を生成して(ステップS1103)、属性値の和がmodulo 3が0となり、且つ、近傍の8ドットがそれぞれ表す属性値の系列が、既に作成した3×3の9ドットと重複しないことを確認する(ステップS1104)。
【0081】
生成した乱数が少なくとも一方の制約条件を満たさない場合には(ステップS1105のNo)、再度乱数を生成して、制約条件を満たすかどうかをチェックする。
【0082】
そして、2つの制約条件を満たす3×3の9ドットの各属性値を生成することができたならば(ステップS1105のYes)、近傍の8個のドットがそれぞれ表す属性値の系列を、各ドットの画素位置と対応付けて対応リストに記録しておく(ステップS1106)。
【0083】
上記のようにして、3×3の9ドットの属性値を設定した後、現在のスキャンライン上で1ドット置きに3×3個のドット群の位置を移動する(ステップS1107のNo、ステップS1109)。また、水平方向に1ラインのスキャンが終了すると(ステップS1107のYes)、1ライン置きに垂直方向にスキャンラインを移動させる(ステップS1110)。次のスキャンライン上でも、上記と同様に1ドット置きに水平方向に移動して、スキャン位置毎に上述した2つの制約条件を満たすように、3×3個のドット群内の各ドットの属性値を生成する。そして、すべてのスキャンラインに到達して(ステップS1108のYes)、構造化光パターンを構成するすべてのドットの属性値の設定を完了すると、本処理を終了する。
【0084】
近隣8ドットの属性値の系列と各ドットの画素位置の対応関係を記録する対応付けリストは、対応点情報取得部204が構造化光パターンの対応点情報を取得する際に必須である。
図11に示した処理手順では、構造化光パターンの作成と同時に対応付けリストの作成も行う。
【0085】
なお、
図11に示した構造化光パターンの作成処理手順は一例であり、これに限定される訳ではない。上述した2つの制約条件を満たす構造化光パターンを作成することができれば、他の処理手順に従ってもよい。
【0086】
図9には、7×5個のドットからなる構造化光パターンの具体例を示した。
図12には、21×21個のドットからなる構造化光パターンの例を示している。
図12に示す構造化光パターンの具体例を示している。
図12に示す構造化光パターンを、
図11に示した処理手順に従って生成することができる。また、
図12に示す構造化光パターンの各ドットに設定された属性値は、上述した2つの制約条件を満たしている。
【0087】
図13には、
図12に示した構造化光パターンに含まれる各3×3個のドット群毎に設定された属性値の検証結果をリスト形式で示している。但し、リストの各項目は、スキャンした順を示すシリアル番号(#)と、8個の属性値の系列と、8個の属性値の和を含んでいる。
【0088】
図13中の各項目において、8個のドットがそれぞれ表す属性値の和は、すべてmodulo 3は0という制約条件を満たしている。したがって、
図12に示した構造化光パターンは第1の制約条件を満たすように生成されているということができる。対応点情報の取得時に、構造化光パターンが埋め込まれた投影画像の撮像画像から抽出された構造化光パターンにおいて、属性値が「3」のドットの近傍の8ドットがそれぞれ表す属性値の和が制約条件「modulo 3は0」を満たさなければ、その3×3個のドット群において誤判定が発生していると推定することができる。
【0089】
また、
図13中の各項目を比較すると、8個のドットの属性値の系列が重複する項目は存在しない。したがって、全項目の属性値の系列は固有の情報であり、
図12に示した構造化光パターンは第2の制約条件を満たすように生成されているということができる。対応点情報の取得時に、構造化光パターンが埋め込まれた投影画像の撮像画像から抽出された構造化光パターンに含まれる、属性値「3」を表すドットの近傍の8個のドットが表す属性値の系列を対応付けリストで参照することによって、このドット群の各ドットの画素位置すなわち対応点情報を取得することができる。
【0090】
図11に示した処理手順あるいはその他の処理手順に従って作成された、上記2つの制約条件を満たす構造化光パターンとその対応付けリストが、出荷前にプロジェクタ101内にあらかじめ格納される。そして、対応点情報取得部204は、あらかじめ格納された構造化光パターンとその対応付けリストを用いて、対応点情報の取得処理を実施する。あるいは、プロジェクタ101内で、
図11に示した処理手順あるいはその他の処理手順に従って構造化光パターンとその対応付けリストを生成するようにしてもよい。
【0091】
図14には、対応点情報取得部204において、対応点情報を取得するための処理手順をフローチャートの形式で示している。但し、
図14は、カメラ103で撮影した投影画像を映像信号処理部105で信号処理した後、ポジ画像フレーム及びネガ画像フレームの投影画像の撮影画像の差分をとって構造化光パターンを抽出した以降の処理を示している。また、構造化光パターンの各ドットを
図8に則ってそれぞれ「0」、「1」、「2」、「3」の4つの属性値で示すこととする。
【0092】
対応点情報取得部204は、現在のスキャンライン上で属性値「3」を示すドットを探索し、1ラインのスキャンが終了すると、垂直方向にスキャンラインを移動させて、次のスキャンライン上でも同様に属性値「3」を示すドットを探索する。そして、属性値「3」を示すドットを検出する度に、
図14に示す処理手順に従って、検出したドットを含む3×3個のドット群の対応点情報取得処理を実施する。
【0093】
対応点情報取得部204は、撮影画像から抽出した構造化光パターンをスキャンして、属性値「3」を示すドットを検出すると(ステップS1401のYes)、そのドットの周辺で検出された各ドットとの距離を計算する(ステップS1402)。
【0094】
そして、対応点情報取得部204は、ドット間距離の検出結果に基づいて、属性値「3」を示すドットの近傍の8ドットを検出して、検出した近傍8ドットの属性値の和を計算する(ステップS1403)。
【0095】
次いで、対応点情報取得部204は、第1の制約条件の検証、すなわち属性値の和のmoduloが0であるかどうかをチェックする(ステップS1404)。
【0096】
属性値の和のmoduloが0である場合には(ステップS1404のYes)、ステップS1401で検出したドットを含む3×3個のドット群は第1の制約条件を満たすことが分かる。対応点情報取得部204は、近傍8ドットの属性値の系列を対応付けリストで検索する(ステップS1405)。第2の制約条件に基づいて、対応付けリストからはただ1つの項目が見つかることが保証される。そして、対応点情報取得部204は、対応付けリスト中でヒットした項目から、この3×3の個ドット群の各ドットの画素位置すなわち対応点情報を取得する(ステップS1406)。
【0097】
一方、属性値の和のmoduloが0でない場合には(ステップS1404のNo)、対応点情報取得部204は、投影画像をカメラ103で撮影した撮影画像から抽出した構造化光パターンに誤判定があると推定して、ステップS1401で検出したドットを含む3×3個のドット群については対応点情報がないものとする。なお、対応点情報がないとされたドット群については、カメラ103の撮影画像から抽出した構造化光パターン全体について対応点情報取得処理を終了した後に、誤判定と推定された3×3の9ドットの近傍4隅の3×3の9ドットの判定結果に基づいて対応点を補間するようにしてもよい。
【0098】
図15には、画像投影システム100が投影状況の確認動作時に実行する処理手順をフローチャートの形式で示している。
【0099】
まず、プロジェクタ101から構造化光パターンを埋め込んだ画像をスクリーン102に投影し、カメラ103でその投影画像を撮影する(ステップS1501)。プロジェクタ101は、元の画像に構造化光パターンを足したポジ画像フレームと、元の画像に構造化光パターンを引いたネガ画像を交互に連続投影する。そして、カメラ103は、ポジ画像フレーム及びネガ画像フレームの投影画像を撮影する。なお、オンラインではなくオフラインでセンシングを行う場合には、プロジェクタ101から構造化光パターンのみを投影するようにしてもよい。
【0100】
対応点情報取得部204は、ポジ画像フレームとネガ画像フレームの各々に対応する撮影画像の差分を求めることにより、構造化光パターンを構成する各ドットを検出する(ステップS1502)。ここでは、格子状に配列されたドットの検出結果として、各ドットの属性値が検出されたものとする。
【0101】
対応点情報取得部204は、検出したドットの配列をスキャンして、属性値「3」を示すドットを探索する。そして、属性値「3」を示すドットを検出すると、対応点情報取得部204は、
図14に示した処理を起動して、検出したドットを含む3×3個のドット群の対応点情報取得処理を実施する(ステップS1503)。
【0102】
対応点情報取得部204は、例えば検出したドットの配列を水平方向にスキャンし、1ラインのスキャンが終了すると、垂直方向にスキャンラインを移動させて、次のスキャンライン上でも属性値「3」を示すドットを探索する。
【0103】
最後のスキャンラインの終端に到達し、検出したドットの配列のすべての属性値「3」を示すドットについて対応点情報取得処理を完了すると(ステップS1504のYes)、対応点情報取得部204は、対応点情報の取得結果を確認する。具体的には、対応点情報取得部204は、対応点情報を取得できなかったドットを探索し(ステップS1505)、対応点情報を取得できないドットの対応点情報を近傍4隅で取得した対応点情報に基づいて補間処理が可能かどうかをチェックする(ステップS1506)。
【0104】
例えば、対応点情報を取得できないドットの近傍の対応点情報も取得できなかった場合には、補間処理できない。対応点情報を取得できないドットの対応点情報がないドットの対応点情報の補間処理が可能でない場合には(ステップS1506のNo)、ステップS1501に戻って、投影状況の確認動作を最初からやり直す。
【0105】
また、対応点情報を取得できないドットの対応点情報がないドットの対応点情報の補間処理が可能な場合には(ステップS1506のYes)、対応点情報取得部204は補間処理を実施する。この結果、カメラ103の撮影画像から抽出した構造化光パターンのすべてのドットの対応点情報を取得することができる。なお、ステップS1503の対応点情報取得処理によりすべてのドットの対応点情報を取得できた場合は、このフローチャート上では補間処理が可能な場合と同様として処理する。
【0106】
そして、画像補正部403は、対応点情報取得部204から受け取った対応点情報に基づいて、フレームメモリ402から読み出した画像に対して、投影部201から被写体に投影した際に幾何歪みが解消するよう補正を行なう(ステップS1507)。
【0107】
誤判定したドットに基づく誤った対応点情報を用いると、誤った幾何補正を行うことになり、投影画像の歪みはむしろひどくなるおそれがある。これに対し、本開示によれば、構造化光パターンに課された第1の制約条件、すなわち近傍8ビットの属性値の和はmodulo 3が0であることを利用してドットの誤判定を検出することができるので、誤った幾何補正を防止することができる。
【0108】
また、
図15に示した処理手順では、対応点情報の取得状況がよくない場合には再度の計測が必要となるが、その頻度を低減することができる。
【産業上の利用可能性】
【0109】
以上、特定の実施形態を参照しながら、本開示について詳細に説明してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
【0110】
本開示は、さまざまなタイプの画像投影システムに適用することができる。また、本明細書では詳細な説明を省略したが、本開示はプロジェクタスタッキングにも適用することができる。また、本開示は、投影画像の補正の他に、映像内に視聴者が知覚できないように情報を埋め込む技術、及び映像に埋め込まれた情報を取得する技術にも適用することができる。
【0111】
要するに、例示という形態により本開示について説明してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本開示の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【0112】
なお、本開示は、以下のような構成をとることも可能である。
【0113】
(1)第1の画像から抽出された所定のパターンの領域毎に付与された誤り検出機能に基づいて領域内の誤りを検出する検出部と、
前記第1の画像から抽出された所定のパターンの領域毎に付与された識別機能に基づいて元の所定のパターンにおける領域の対応点情報を取得する取得部と、
を具備する画像処理装置。
【0114】
(2)前記所定のパターンは格子状に配置された複数のドットで構成され、且つ、各ドットは所定のビット数で表される属性値を有し、
前記検出部は、N×M個のドットからなる領域内の複数のドットの属性値が第1の制約条件を満たすかどうかに基づいて領域内の誤りを検出する、
上記(1)に記載の画像処理装置。
【0115】
(3)各ドットは0~3の2ビットで表される属性値を有し、
前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の和はmodulo 3を0とする前記第1の制約条件を満たすように構成され、
前記検出部は、前記抽出された所定のパターンから検出した属性値が3のドットの近傍8ドットの属性値の和はmodulo 3が0となるかどうかに基づいて、該当する3×3個のドットからなる領域内の誤りを検出する、
上記(2)に記載の画像処理装置。
【0116】
(4)前記取得部は、前記検出部で誤りが検出されなかった領域の対応点情報を取得する、
上記(1)乃至(3)のいずれかに記載の画像処理装置。
【0117】
(5)前記所定のパターンは格子状に配置された複数のドットで構成され、且つ、各ドットは所定のビット数で表される属性値を有し、
前記取得部は、N×M個のドットからなる領域内の複数のドットの属性値の系列に設定された第2の制約条件に基づいて、元の所定のパターンにおける領域の対応点情報を取得する、
上記(1)乃至(4)のいずれかに記載の情報処理装置。
【0118】
(6)各ドットは0~3の2ビットで表される属性値を有し、
前記元の所定のパターンは、3×3個のドットからなる前記領域毎に、中央のドットが属性値3を持ち、且つ、前記中央のドットの近傍の8ドットの属性値の系列は固有とする前記第2の制約条件を満たすように構成され、
前記取得部は、前記抽出された所定のパターンから検出した属性値が3のドットの近傍8ドットの属性値の系列と元の所定のパターンにおける属性値の系列との比較結果に基づいて対応点情報を取得する、
上記(5)に記載の画像処理装置。
【0119】
(7)前記第1の画像はプロジェクタの投影画像を前記カメラで撮影した撮影画像である、
上記(1)乃至(6)のいずれかに記載の画像処理装置。
【0120】
(8)前記プロジェクタは、前記所定のパターンが埋め込まれた画像を投影し、
前記プロジェクタの投影画像を前記カメラで撮影した前記第1の画像から、前記投影画像に埋め込まれた前記所定のパターンを抽出する、
上記(1)乃至(7)のいずれかに記載の画像処理装置。
【0121】
(9)前記所定のパターンは、楕円形状で、輝度変化方向が正方向及び負方向の2種類で且つ楕円の長軸方向が2種類となるドットを格子状に配置に配置して構成される、
上記(1)乃至(8)のいずれかに記載の画像処理装置。
【0122】
(10)第1の画像から抽出された所定のパターンの領域毎に付与された誤り検出機能に基づいて領域内の誤りを検出する検出ステップと、
前記第1の画像から抽出された所定のパターンの領域毎に付与された識別機能に基づいて元の所定のパターンにおける領域の対応点情報を取得する取得ステップと、
を具備する画像処理方法。
【0123】
(11)プロジェクタと、
前記プロジェクタの投影画像を撮影するカメラと、
前記プロジェクタが所定のパターンを埋め込んだ画像を投影した投影画像を前記カメラで撮影した撮影画像から前記所定のパターンを抽出し、
所定のパターンの領域毎に付与された誤り検出機能に基づいて、前記抽出された所定のパターンの領域毎の誤りを検出する検出部と、
所定のパターンの領域毎に付与された識別機能に基づいて、前記抽出された所定のパターンの領域毎に対応点情報を取得する取得部と、
取得した対応点情報に基づいて、前記プロジェクタから投影する画像を補正処理する画像補正部と、
を具備する画像投影システム。
【符号の説明】
【0124】
100…画像投影システム、101…プロジェクタ
102…スクリーン、103…カメラ、104…映像信号処理部
105…映像ソース
201…投影部、202…画像処理部、203画像入力部
204…対応点情報取得部
301…投影光学部、302…液晶パネル
303…液晶パネル駆動部、304…照明光学部
401…画像書き込み読み出し部、402…フレームメモリ
403…画像補正部、404…画質調整部
405…出力画像切り替え部