(実施例1)
以下、本発明の第1の実施例(実施例1)について説明する。図2は、実施例1に係る装置を用いて画像を投影する様子を示す概略説明図である。なお、本明細書では、同一の参照番号は、同一の要素を指し示すので留意されたい。
図2に示すように、本実施例では、複数のプロジェクタ110、111の投影領域をつなぎ合わせることで表示領域を構成し、つなぎ合わせ部分においてシームレスな高精細画像の表示を行う。なお、本実施例におけるプロジェクタとは、フロントプロジェクタ、リアプロジェクタ等の形態にはよらず、投影面で画像が構成される表示装置全てを指す。
このシームレスな表示を行うためには、一般的に全投影領域に渡って輝度を均一にする方法がとられることは前述したとおりである。しかし、この方法では、前述したように黒色を入力した際に黒浮きが発生してしまうため、黒色を含む画像を表示したときに、1台のプロジェクタで表示する場合に比べてコントラストが低下してしまう。
これに対して本発明では、黒色を含む画像を表示しようとするときに、重複投影領域以外の領域の輝度を重複投影領域の輝度に合わせるように任意の表示画像を補正することはない。本発明では、コントラストを優先する第1の色補正モード(色補正モードA)と、従来技術のようにコントラストは低下してしまうが黒色の表示輝度を上げることで輝度を均一にする第2の色補正モード(色補正モードB)との2種類の色補正モードを用意する。そして、2種類の色補正モードを表示用画像データに応じて切り替える。これによって、違和感がなく且つできる限りコントラストが高い画像を表示することができる。
なお、本実施例では説明を簡単にするため、プロジェクタ110、111はスクリーン113に正対(正対とは即ち、プロジェクタ110、111の各光軸がスクリーン113の面法線方向と平行な状態である)している。また、プロジェクタ110、111による2つの投影領域は、スクリーン113の上下方向にはずれがないものとする。さらに、重複投影領域の位置や大きさも既知であることを前提として説明を行う。ただし、プロジェクタ110、111がスクリーン113に正対していない場合であっても、公知のカメラを用いたプロジェクタの幾何学的キャリブレーション技術を用いて重複投影領域の算出や投影画像の幾何補正を行うことにより、本発明を適用することができる。
次に、本発明に係る画像処理装置の構成例について説明する。図1は、実施例1に係る画像処理装置の構成要素を示すブロック図である。ただし、本発明に係る画像処理装置は、図1に示す構成に限定されない。
CPU101は、RAM102をワークメモリとしてROM103およびハードディスクドライブ(HDD)105に格納されたプログラムを実行し、システムバス112を介して後述する各構成を制御する。これにより、後述する様々な処理が実行される。
HDDインタフェイス(I/F)104は、HDD105や光ディスクドライブ等の二次記憶装置を接続する、例えばシリアルATA(SATA)等のインタフェイスである。HDDI/F104を介して、CPU101は、HDD105からのデータ読み出しおよびHDD105へのデータ書き込みが可能である。さらに、CPU101は、HDD105に格納されたデータをRAM102に展開し、同様に、RAM102に展開されたデータをHDD105に保存することが可能である。そしてCPU101は、RAM102に展開したデータをプログラムとみなし、実行することができる。
入力インタフェイス(I/F)106は、キーボードやマウス等の入力デバイス109を接続する、例えばUSBやIEEE1394等のシリアルバスインタフェイスである。入力I/F106を介して、CPU101は、入力デバイス109からデータを受け取ることが可能である。出力インタフェイス(I/F)107、108は、画像を表示するためのプロジェクタ110、111を接続する、例えばDVIやHDMI等の映像出力インタフェイスである。出力I/F107、108を介して、CPU101は、プロジェクタ110、111にデータを送り、表示を実行させることができる。
次に、本発明に係る一連の処理を行う際の概要機能構成について説明する。図3は、実施例1に係る画像処理装置の機能を示す概要機能構成図である。ただし、本発明に係る画像処理装置は、図3に示す構成に限定されない。
パラメータ入力部301は、表示用画像データ306と、色補正パラメータ309と、投影領域情報311とを、入力デバイス109またはROM103もしくはHDD105等の記憶装置から取得する。投影領域情報311は、各プロジェクタの投影領域の位置および大きさと、複数のプロジェクタによる重複投影領域の位置および大きさとを含む。パラメータ入力部301は、表示用画像データ306を領域分割画像生成部303および色補正処理部305に出力し、色補正パラメータ309を色補正処理部305に出力し、投影領域情報311を色補正モード設定部304に出力する。
画像出力部302は、補正画像データ310をプロジェクタ110、111へ出力する。プロジェクタ110、111は、補正画像を投影する。
領域分割画像生成部303は、表示用画像データ306に対して領域分割処理を行い、領域分割画像データ307を生成し、生成した領域分割画像データ307を色補正モード設定部304に出力する。
色補正モード設定部304は、領域分割画像データ307と、投影領域情報311とに基づいて色補正モードの決定を行い、色補正モード情報308を色補正処理部305に出力する。
色補正処理部305は、色補正モード情報308に従って色補正パラメータ309を選択し、選択した色補正パラメータに基づき表示用画像データ306に対して色補正を行うことで補正画像データ310を生成し、画像出力部302に出力する。
本実施例では、表示用画像データは静止画データであることを前提に説明を行う。図4は、実施例1に係る画像処理装置における画像投影処理の動作手順を示すフローチャートである。詳細には、図4のフローチャートに示す手順を記述したコンピュータ実行可能なプログラムをROM103またはHDD105からRAM102上に読み込んだ後に、CPU101によって当該プログラムを実行することによって当該画像投影処理が実行される。以下、図4に示す各処理について説明する。
ステップS401において、パラメータ入力部301は、表示用画像データ306と、あらかじめ算出しておいた色補正パラメータ309と、投影領域情報311とをROM103やHDD105等の記録装置等から読み込むことで取得する。なお、色補正パラメータ309の算出方法の詳細は後述する(<色補正パラメータ算出処理>の項目を参照)。
ステップS402において、領域分割画像生成部303は、表示用画像データ306に対して領域分割処理を行い、領域分割画像データ307を生成する。
ステップS403において、色補正モード設定部304は、投影領域情報311と、ステップS402で生成した領域分割画像データ307とに基づき、色補正モード設定処理を行う。本実施例では、色補正モードは、輝度の均一性よりもコントラストを優先した色補正モードAと、低コントラストではあるが輝度が均一な色補正モードBとの2種類からなる。従って、ステップS403ではこのどちらかが選択され、色補正モード情報308として出力される。
ステップS404において、色補正処理部305は、ステップS403で算出した色補正モード情報308に従い色補正パラメータ309を選択し、この色補正パラメータに基づき表示用画像データ306に対し色補正処理を行い補正画像データ310を生成する。
ステップS405において、画像出力部302は、ステップS404で生成した補正画像データ310を受け取り、補正画像をプロジェクタ110、111を用いてスクリーンに投影する。
以上の処理により、表示する画像データの特徴に応じて色補正モードを切り替えることで、黒色を含む画像のコントラストをできる限り高い状態で表示することが可能となる。
<色補正パラメータ算出処理>
図5は、実施例1に係る画像処理装置における色補正パラメータ算出処理の動作手順を示すフローチャートである。この色補正パラメータ算出処理によって算出された色補正パラメータを使用して、図4のステップS404として示した色補正処理が行われる。なお、色補正パラメータ算出処理は、図4のフローチャートで説明した画像投影処理の前処理として1度行えばよい処理であり、一般的には色変換のための3D−LUTを生成する処理として説明することができる。本実施例では、黒色の目標色を変えて色補正パラメータA、色補正パラメータBという2種類の3D−LUTを生成する。以下、図5に示す各処理について説明する。
ステップS501において、CPU101は、全てのプロジェクタに対して色の測定が終了したかどうかを判定する。全てのプロジェクタに対して色の測定が終了している場合、ステップS505へ進み、全てのプロジェクタに対して色の測定が終了していない場合、ステップS502へ進む。
ステップS502において、CPU101は、色の測定対象となるプロジェクタをまだ測定を行っていないプロジェクタへと変更する。
ステップS503において、CPU101は、色補正パラメータ算出用画像データを出力し、色補正パラメータ算出用画像を測定対象のプロジェクタで投影する。ここで色補正パラメータ算出用画像データとは、例えばR、G、B夫々の色に対して0、32、64、96、128、160、192、224、255の9色の組み合わせで構成される合計729(=9×9×9)色のカラーパッチ画像データである。このカラーパッチ画像データは一般的に、色変換用のための3D−LUTを作成する際に使用される画像データである。従って色数は729色には限定されないが、どのような色数であっても(R、G、B)=(0、0、0)の黒色を含んだ画像データである必要がある。
ステップS504において、CPU101は、直前のステップS503で投影された色補正パラメータ算出用画像の色を測色器等により測定する。ここでは、直前のステップS503で投影された全ての色に対して、例えば三刺激値XYZ値を測定する。これにより、デバイス(即ちプロジェクタ)におけるRGB値と、三刺激値XYZ値との関係が得られる。
ステップS505において、CPU101は、色補正モードAの目標色を設定する。色補正モードAは上述のとおり黒色の輝度は補正せずコントラストを優先するモードであるため、黒色の目標色は各プロジェクタのデバイス特性そのものであるプロジェクタ固有の色を使用する。つまり、色補正モードAでは、黒色に関しては色を補正しないということになる。黒色を除いた他の色に関しては、黒色同様夫々のプロジェクタの色域を目標色として設定するか、あるいは2台のプロジェクタの色域の重複した領域等を目標色として定めてもよい。
ステップS506において、CPU101は、ステップS504で得た夫々のプロジェクタの測色値と、ステップS505で設定された目標色とから、該目標色を再現するための3D−LUTを生成する。この3D−LUTは、夫々のプロジェクタに対して公知の色域圧縮アルゴリズムを用いることにより生成される。この処理によって生成された3D−LUTを色補正パラメータAとする。色補正パラメータAは、各プロジェクタに対して1対1で生成されるので、プロジェクタ台数と等しい数の色補正パラメータAが生成されることになる。
ステップS507において、CPU101は、色補正モードBの目標色を設定する。色補正モードBは上述のとおり黒色の輝度を重複投影領域の輝度まで持ち上げるように補正するモードである。このモードにおける目標色は、例えば2台のプロジェクタの色域の重複した領域とし、黒色の目標色が重複投影領域の黒色となるように目標とする色域全体あるいは色域の一部を圧縮しておく。この際、色相ごとに圧縮率を変化させながら圧縮を行ってもよい。こうすることで、黒色以外の色に対しても複数のプロジェクタに渡って均一な色の再現が可能となる。
ステップS508において、CPU101は、ステップS504で得た夫々のプロジェクタの測色値と、ステップS507で設定された目標色とから、該目標色を再現するための3D−LUTを生成する。この3D−LUTは、夫々のプロジェクタに対して公知の色域圧縮アルゴリズムを用いることにより生成される。この処理によって生成された3D−LUTを色補正パラメータBとする。この色補正パラメータBは、色補正パラメータAと同様に、各プロジェクタに対して1対1で生成されるので、プロジェクタ台数と等しい数の色補正パラメータBが生成されることになる。
以上の処理により、色補正モードA、色補正モードBに対応した色補正パラメータA、色補正パラメータBを生成することができる。
<領域分割画像生成処理>
ここでは、図4のステップS402で行う領域分割画像生成処理について詳しく説明する。図4を再度参照されたい。領域分割画像生成処理(ステップS402)では、ステップS401で入力された表示用画像データ306に対して領域分割処理を行い、領域分割画像データ307を生成することは上述のとおりである。
図6は、実施例1に係る画像処理装置における領域分割画像生成処理の動作手順を示すフローチャートである。以下、図6に示すフローチャートを用いて領域分割画像生成処理の流れを説明する。
ステップS601において、領域分割画像生成部303は、ステップS401で入力された表示用画像データ306を取得する。
ステップS602において、領域分割画像生成部303は、表示用画像データ306に対して、例えば平均値シフト法等の公知の領域分割アルゴリズムによって領域分割処理を行う。平均値シフト法とは、ある円内の画素の平均を取って、その平均となる画素をとり、これをあらたな中心として、この操作を逐次的に行い、同じ収束先を持つような画素によって一つのエリアを生成するという手法である。
ステップS603において、領域分割画像生成部303は、ステップS602で得られた領域分割処理結果に対してラベリング処理を行い、領域分割画像データ307を生成する。ここでは、領域ごとの色(RGB値)を使用してラベリング処理を行う(例えば、領域A(0,0,0)や領域B(200,0,0)等)。
以上の処理により、表示用画像データ306に対して、RGB値でラベリングされた領域分割画像データ307を生成することができる。
図7は、実施例1に係る画像処理装置における領域分割画像生成処理の前後の様子を示す説明図であり、図7(a)は表示用画像の一例であり、図7(b)は領域分割画像の一例である。図7(a)に示すような表示用画像に対して領域分割画像生成処理を行った結果が図7(b)となる。図7(b)に示す例では、画像が領域A〜領域Dという4つの領域に分割されている。夫々の領域のRGB値によって領域A〜領域Dの各々に固有のラベルが、領域A〜領域Dの夫々に対して付与されている。
<色補正モード設定処理>
ここでは、図4のステップS403で行う色補正モード設定処理について詳しく説明する。図4を再度参照されたい。色補正モード設定処理(ステップS403)では、領域分割画像生成処理(ステップS402)で生成された領域分割画像データ307と、パラメータ入力部301からの投影領域情報311とに従って色補正モードの設定を行う。設定された色補正モードを色補正モード情報308として色補正処理部305に出力する。
図8は、実施例1に係る画像処理装置における色補正モード設定処理の動作手順を示すフローチャートである。以下、図8に示すフローチャートを用いて色補正モード設定処理の流れを説明する。
ステップS801において、色補正モード設定部304は、領域分割画像生成処理において生成された領域分割画像データ307について判定を行い、領域分割画像の中にRGB値が全て0となる黒色領域(0,0,0)が含まれているかどうかを判定する。具体的には、領域分割画像データ307の全てのラベルのRGB値を順にチェックすることでこの処理を行う。領域分割画像に黒色領域が含まれる場合、ステップS802へ進み、領域分割画像に黒色領域が含まれない場合、ステップS806へ進む。
ステップS802において、色補正モード設定部304は、投影領域情報311を取得する。投影領域情報311は、個々のプロジェクタの投影領域の位置および大きさと、複数のプロジェクタによる重複投影領域の位置および大きさとを含む。図9は、スクリーン上のある点を原点とする座標系における投影領域と、重複投影領域とに対する、領域分割画像の位置関係を示している。プロジェクタ110の投影領域の形状は矩形であり、プロジェクタ110の投影領域の左上のコーナーの座標は(X1,Y1)であり、プロジェクタ110の投影領域の大きさは幅W1、高さH1である。プロジェクタ111の投影領域の形状は矩形であり、プロジェクタ111の投影領域の左上のコーナーの座標は(X2,Y2)であり、投影領域の大きさは幅W2、高さH2である。本実施例では2つの投影領域は上下にずれがないものとしているためY2=Y1となる。また、重複投影領域の左上のコーナーの座標はプロジェクタ111の投影領域の左上のコーナーの座標と等しく(X2,Y2)であり、重複投影領域の大きさは幅Wx、高さHxである。このモデルから重複投影領域の各画素の座標が一意に求まることになる。
ステップS803において、色補正モード設定部304は、ステップS802で取得した投影領域情報311に基づいて、投影領域に内接する大きさに領域分割画像を変倍し、投影領域の中央と、領域分割画像の中央とが合うように領域分割画像を配置する。図9は、処理結果の一例を示している。変倍後の領域分割画像の幅はWi、高さはHiであり、領域分割画像の左上のコーナーの座標が(Xi、Yi)の位置に配置されている。領域分割画像は投影領域に内接するので、H1≧Hiの関係が常に成立する。
ステップS804において、色補正モード設定部304は、黒色領域を構成する画素の座標を算出し、これらが重複投影領域に入っているかどうかを判定する。具体的には、ステップS803で配置した領域分割画像に対して、ラベリングされた領域の内、黒色のRGB値を持つ領域に注目し、黒色のRGB値を持つ領域を選択して、その領域に含まれる各画素の座標が重複投影領域に入っているかどうかを判定する。例えば、黒色領域のある画素の座標を(Xb,Yb)とすると、この判定は以下の条件式に基づいて行うこととなる。
Xb≧X2 式(1)
Xb<(X2+Wx) 式(2)
Yb≧Y2 式(3)
Yb<(Y2+Hx) 式(4)
式(1)から式(4)までの4つの条件式を同時に満たす画素が1画素でもある場合、黒色領域が重複投影領域に入っているという判定が、色補正モード設定部304において、なされる。この結果、黒色領域が重複投影領域に入っていない場合、ステップS805へ進み、黒色領域が重複投影領域に入っている場合、ステップS806へ進む。
ステップS805において、色補正モード設定部304は、色補正モードを色補正モードAに設定する。設定された結果は、色補正モード情報308として色補正処理部305に出力される。
ステップS806において、色補正モード設定部304は、色補正モードを色補正モードBに設定する。設定された結果は、色補正モード情報308として色補正処理部305に出力される。
以上の処理により、表示用画像データに含まれる黒色領域の情報に応じて色補正モードの設定を行うことができる。図10に、黒色領域と、重複投影領域との関係の一例を示す。この例では、黒色領域である領域Aが重複投影領域に入っていないため、結果として色補正モードは、色補正モードAに設定される。
<色補正処理>
ここでは、図4のステップS404で行う色補正処理の詳細について説明する。図4を再度参照されたい。色補正処理(ステップS404)では、色補正モード設定処理(ステップS403)で設定された色補正モード情報308と、色補正モード情報308に対応する色補正パラメータ309とを使用して、表示用画像データ306に対して色補正処理を行う。表示用画像データ306に対して色補正処理を行った結果、補正画像データ310が生成される。
図11は、実施例1に係る画像処理装置における色補正処理の動作手順を示すフローチャートである。以下、図11に示すフローチャートを用いて色補正処理の流れを説明する。
ステップS1101において、色補正処理部305は、色補正モード情報308に含まれる色補正モードが色補正モードAかどうかを判定する。色補正モード情報308に含まれる色補正モードが色補正モードAである場合、ステップS1102へ進み、色補正モード情報308に含まれる色補正モードが色補正モードAではない場合、ステップS1103へと進む。
ステップS1102では、色補正処理部305は、HDD105あるいはRAM102から色補正パラメータ算出処理により算出された色補正パラメータのうち、各々のプロジェクタに対応する色補正パラメータAを取得する。
ステップS1103では、色補正処理部305は、HDD105あるいはRAM102から色補正パラメータ算出処理により算出された色補正パラメータのうち、各々のプロジェクタに対応する色補正パラメータBを取得する。
ステップS1104では、色補正処理部305は、HDD105あるいはRAM102から表示用画像データを取得する。
ステップS1105では、色補正処理部305は、表示用画像データに対して、各々のプロジェクタの表示対象領域を算出する。この算出は、色補正モード設定処理のステップS803で説明した領域分割画像を投影領域に内接するように配置する方法と同様の方法で行う。ステップS803では、領域分割画像を配置する対象としていたが、ここでは領域分割画像の代わりに表示用画像データを配置する対象として同様の処理を行う。これにより、各プロジェクタが表示用画像データのどの領域を投影すればよいかが決まる。図12に、プロジェクタ110と、プロジェクタ111との表示対象領域の一例を示す。
ステップS1106では、色補正処理部305は、ステップS1105で算出された各プロジェクタの表示対象領域に対して、ステップS1102あるいはステップS1103で取得した各プロジェクタの色補正パラメータを使用して色補正処理を行う。具体的には、表示対象領域の画像データのRGB値に対して、色補正パラメータである3D−LUTによる色変換処理を行うことで色補正を行う。さらに、ここで各プロジェクタの表示対象領域の中で重複投影領域となる部分に関しては、公知のエッジブレンド処理によりつなぎ目を目立たなくするような処理をしてもよい。もちろん、コントラストを優先する色補正モードAの場合は、各プロジェクタの黒色はこれ以上暗くならないような色となっているため、黒色に関してはエッジブレンド処理により明るさを抑えるような処理は不可能である。よって、色補正モードAでは、黒色に対するエッジブレンド処理は行われない。
以上の処理により、黒色を含む画像に対して、違和感がなく且つできる限りコントラストが高くなるように処理された補正画像データを生成することが可能となる。
なお、本実施例では黒色に着目して説明を行ったが、デバイスの表示輝度の下限値となるような他の色相の低輝度な色に対しても適用可能なことは言うまでもない。この場合、色補正パラメータ算出処理にて黒色同様に輝度を均一にするような目標色と、コントラストを高くするような目標色とを設定することで色補正パラメータを算出する。さらに、色補正モード設定処理にて該当色を用いることで色補正モードを設定すればよい。
また、本実施例では、あらかじめ準備された色補正モードを切り替えることで表示コントラストを制御したが、モードを設けずにコントラストを制御することも可能であることは言うまでもない。例えば、表示用画像データ中のデバイスの表示輝度の下限値となるような低輝度な領域が、重複投影領域に含まれるかどうかを判定し、これに応じて色補正モード設定部が色補正パラメータを算出して色補正を行うことでも同様の効果を得ることができる。
(実施例2)
以下、本発明の第2の実施例(実施例2)について説明する。実施例1では、補正された静止画を表示する方法について説明したが、本実施例では、表示用画像データが動画データである場合の処理について説明する。
動画は連続した複数の静止画の集合であると考えることができる。よって、動画の各フレームに対して実施例1で説明した方法により色補正を行うことで、各フレームに関してはできる限りコントラストの高い表示を実現することが可能である。しかしながら、例えば前述の処理によりフレームごとにコントラストが大きく変わるような結果となった場合、これを動画として再生してみると、大きな違和感を覚えることになることは言うまでもない。そこで、本実施例では、動画のシーンチェンジを検出してシーンごとに色補正モードを設定し、1つのシーンの中では同一の色補正モードを適用して同一の色補正を行うことで、違和感のない高コントラストな表示を実現する方法について説明する。
図13は、実施例2に係る画像処理装置における画像投影処理の動作手順を示すフローチャートである。詳細には、図13のフローチャートに示す手順を記述したコンピュータ実行可能なプログラムをROM103またはHDD105からRAM102上に読み込んだ後に、CPU101によって当該プログラムを実行することによって当該画像投影処理が実行される。以下、図13に示す各処理について説明する。
ステップS1301において、パラメータ入力部301は、表示用画像データ306と、あらかじめ算出しておいた色補正パラメータ309と、投影領域情報311とをROM103やHDD105等の記録装置から読み込むことで取得する。ここで表示用画像データ306は、1つ以上のシーンで構成される動画データとする。また、色補正パラメータ309および投影領域情報311の算出方法に関しては、実施例1と同様であるため詳細な説明は省略する。
ステップS1302において、公知の動画のシーンチェンジ検出処理により表示用画像データ306を複数のシーンに分割する。図14にこの一例を示す。図14に示す例では、動画データである表示用画像データ306が10フレームで構成されているとし、シーンチェンジ検出処理により最初の5フレームがシーン1、後の5フレームがシーン2として2つのシーンに分割された場合を示している。なお、もしシーンチェンジが検出されなかった場合は、表示用画像データ306を1つのシーンから成るデータであるとみなし、以降の処理を行う。
ステップS1303において、全てのシーンに対して色補正モード設定処理が終了したかどうかを判定する。全てのシーンに対して色補正モード設定処理が終了している場合、ステップS1310へ進み、全てのシーンに対して色補正モード設定処理が終了していない場合、ステップS1304へ進む。
ステップS1304において、処理対象のシーンを未処理のシーンへと更新する。
ステップS1305において、色補正モードが設定されていないシーン内の全てのフレーム画像に対して色補正モード設定処理が終了したかどうかを判定する。全てのフレーム画像に対して色補正モード設定処理が終了している場合、ステップS1306へ進み、全てのフレーム画像に対して色補正モード設定処理が終了していない場合、ステップS1307へ進む。
ステップS1306において、処理対象のシーンに対する色補正モードの決定を行う。具体的には、シーン内の各フレーム画像に対して色補正モードが設定されているため、これに対して多数決をとること(即ち、色補正モードAのフレーム数と、色補正モードBのフレーム数とを比較すること)でそのシーンの色補正モードを決定する。図14に示す例では、シーン1に対しては、色補正モードAが4フレーム、色補正モードBが1フレームであるため、色補正モードAのフレーム数が色補正モードBのフレーム数より多い。よって、シーン1の色補正モードは色補正モードAとなる。同様に、シーン2に対しては、色補正モードAが2フレーム、色補正モードBが3フレームであるため、色補正モードBのフレーム数が色補正モードAのフレーム数より多い。よって、シーン2の色補正モードは色補正モードBとなる。
ステップS1307において、処理対象のフレーム画像を未処理のフレーム画像へと更新する。
ステップS1308において、領域分割画像生成部303は、処理対象のフレーム画像を静止画とみなし、これに対して領域分割画像生成処理を行う。領域分割画像生成処理は実施例1と同様であるため、詳細な説明は省略する。
ステップS1309において、色補正モード設定部304は、処理対象のフレーム画像を静止画とみなし、これに対して色補正モード設定処理を行う。次いで、処理は、ステップS1305へ移行する。色補正モード設定処理は実施例1と同様であるため、詳細な説明は省略する。
ステップS1310において、色補正処理部305は、ステップS1306で決定された各シーンの色補正モード情報308と、各シーンの色補正モード情報308に対応する色補正パラメータ309とを使用して、表示用画像データ306に対し色補正処理を行う。表示用画像データ306に対して色補正処理を行った結果、補正画像データ310が生成される。ここで色補正処理は、シーンごとに実施例1で説明した処理を行えばよいため、処理の詳細な説明は省略する。
ステップS1311において、画像出力部302は直前のステップS1310で生成した補正画像データ310を受け取り、プロジェクタ110、111を用いて補正画像をスクリーンに投影する。
以上説明した処理により、1つ以上のシーンを含む動画データに対して、シーンごとに画像データの特徴に応じた色補正モードを設定することで、黒色を含む動画を、違和感がなく且つコントラストができる限り高い状態で表示することが可能となる。
(実施例3)
実施例1および実施例2では、表示用画像データの黒色領域のようなデバイスの表示輝度の下限値となるような低輝度領域に着目して色補正モードを色補正モードAと、色補正モードBとの間で切り替える処理について説明した。しかし、本発明により、例えば白色領域のようなデバイスの表示輝度の上限値となるような高輝度領域に着目して同様の処理を行うことによっても高コントラストな表示を実現することができる。
この場合、色補正パラメータ算出処理では、色補正パラメータAおよび色補正パラメータBが生成される。色補正パラメータAは、白色に代表されるようなデバイスの表示輝度の上限値となるような高輝度な色の目標色として、各プロジェクタのデバイス特性そのものであるプロジェクタ固有の色を使用した色補正パラメータである。また、色補正パラメータBは、全プロジェクタの中で最も輝度の低い同色相の色を目標色として使用した色補正パラメータである。
色補正パラメータAおよび色補正パラメータBが生成された後、デバイスの表示輝度の上限値となるような高輝度な色をもつ領域が重複投影領域に入っているかどうかを判定する。該当色を持つ領域が重複投影領域に入っている場合、色補正パラメータBを使用して色補正処理を行い、該当色を持つ領域が重複投影領域に入っていない場合、色補正パラメータAを使用して色補正処理を行う。これにより、デバイスの表示輝度の上限値となるような高輝度な色を含む画像に対して、違和感がなく且つコントラストができる限り高い状態で画像を表示することが可能となる。もちろん、黒色領域のようなデバイスの表示輝度の下限値となるような低輝度な色に対する処理と、白色領域のようなデバイスの表示輝度の上限値となるような高輝度な色に対する処理とを組み合わせて行ってもよいことは言うまでもない。また、これらの処理は並列に実行可能である。
(実施例4)
以下、本発明の第4の実施例(実施例4)について説明する。実施例1では、表示用画像データ中のデバイスの表示輝度の下限値となるような低輝度な領域が、重複投影領域に含まれるかどうかを判定し、判定結果に応じて2種類の色補正モードを切り替える方法について説明した。この方法により、違和感がなく且つできる限りコントラストが高い画像を表示することが可能となる。
これに対し、本実施例では、表示用画像データ中のデバイスの表示輝度の下限値となるような低輝度な領域が重複投影領域に含まれる場合に、前記低輝度な領域が重複投影領域に入らないように画像の表示位置をシフトさせる。これにより、高コントラストな画像表示を実現する。
図15は、実施例4に係る画像処理装置における色補正モード設定処理の動作手順を示すフローチャートである。図15のフローチャートに示す手順を記述したコンピュータ実行可能なプログラムをROM103またはHDD105からRAM102上に読み込んだ後、CPU101によって当該プログラムを実行することによって当該色補正モード設定処理が実行される。以下、図15に示す各処理について説明する。
ステップS1501において、色補正モード設定部304は、領域分割画像生成処理において生成された領域分割画像データ307について判定を行い、領域分割画像の中にRGB値が全て0となる黒色領域(0,0,0)が含まれているかどうかを判定する。処理の詳細は、実施例1と同様であるため説明は省略する。
ステップS1502において、色補正モード設定部304は、投影領域情報311を取得する。処理の詳細は、実施例1と同様であるため説明は省略する。
ステップS1503において、色補正モード設定部304は、ステップS1502で取得した投影領域情報311に基づいて、投影領域に内接する大きさに領域分割画像を変倍し、投影領域の中央と、領域分割画像の中央とが合うように領域分割画像を配置する。
ステップS1504において、画像シフトパラメータ設定部は、領域分割画像を投影領域に対して2次元的にシフトさせるための画像シフトパラメータを初期化する。この画像シフトパラメータは、シフト方向と、シフト量とから成る。本実施例では、シフト方向は左右の2方向とし、シフト量は重複投影領域の幅Wxとする。本ステップでは、シフト方向を左方向、シフト量を0として設定する。
ステップS1505において、黒色領域を構成する画素の座標を算出し、これらが重複投影領域に入っているかどうかを判定する。この結果、黒色領域が重複投影領域に入っていない場合、ステップS1506へ進み、黒色領域が重複投影領域に入っている場合、ステップS1508へ進む。なお、判定処理の詳細は、実施例1と同様であるため説明は省略する。ステップS1505の判定処理は、実施例1と同様に色補正モード設定部304が行っても良いし、あるいは、画像シフトパラメータ設定部が行っても良い。
ステップS1506において、画像シフトパラメータ設定部は、シフト方向と、シフト量とから成る画像シフトパラメータをHDD105あるいはRAM102に出力する。HDD105あるいはRAM102は、画像シフトパラメータを記憶する。
ステップS1507において、色補正モード設定部304は、色補正モードを色補正モードAに設定する。設定された結果は、色補正モード情報308として色補正処理部305に出力される。
ステップS1508において、画像シフトパラメータ設定部は、シフト方向と、シフト量との全ての組み合わせに対して領域分割画像をシフトさせたかどうかを判定する。本実施例では、シフト方向は左右方向の2パターンで、シフト量は重複投影領域の幅Wxの1パターンとしているため、これらの組み合わせとなる2パターンに対して、領域分割画像のシフト処理が終了しているかどうかを判定すればよい。
ステップS1509において、画像シフトパラメータ設定部は、画像シフトパラメータを、ステップS1508でまだシフト処理が終了していないと判定されたシフト方向と、シフト量との組み合わせに設定する。次いで、画像シフト部は、設定された画像シフトパラメータ(シフト方向と、シフト量との組み合わせ)に基づいて、領域分割画像をシフトさせる。図16は、画像シフトの一例を示す図である。図16(a)は、画像シフトパラメータが初期値の場合の各プロジェクタの投影領域と、領域分割画画像と、黒色領域と、重複投影領域との関係を示した図であり、黒色領域が重複投影領域に含まれている。図16(b)は、画像シフトパラメータとして、シフト方向が左方向であり、シフト量がWx(重複投影領域の幅)の場合の画像シフト結果を示している。図16(b)に示す例では、黒色領域は重複投影領域に含まれていない。図16(c)は、画像シフトパラメータとしてシフト方向が右方向であり、シフト量がWx(重複投影領域の幅)の場合の画像シフト結果を示している。図16(c)に示す例では、黒色領域は重複投影領域に入っている。
ステップS1510では、色補正モード設定部304は、色補正モードを色補正モードBに設定する。設定された結果は、色補正モード情報308として色補正処理部305に出力される。
以上の処理により、表示用画像データに含まれる黒色領域の情報と、画像シフトパラメータとに応じて色補正モードの設定を行うことができる。図16に示した例では、左方向にシフトした場合に黒色領域が重複投影領域に入っていないため、結果として、画像シフトパラメータのシフト方向は左方向、シフト量は重複投影領域の幅Wxとして出力される。また、色補正モードは色補正モードAに設定される。
次に、本実施例における色補正処理ついて詳細に説明する。前述した色補正モード設定処理で設定された色補正モード情報および画像シフトパラメータと、色補正モード情報に対応する色補正パラメータとを使用して、表示用画像データに対して色補正処理を行う。
図17は、実施例4に係る画像処理装置における色補正処理の動作手順を示すフローチャートである。詳細には、図17のフローチャートに示す手順を記述したコンピュータ実行可能なプログラムをROM103またはHDD105からRAM102上に読み込んだ後に、CPU101によって当該プログラムを実行することによって当該色補正処理が実行される。以下、図17に示す各処理について説明する。
ステップS1701において、色補正処理部305は、色補正モード情報308に含まれる色補正モードが色補正モードAかどうかを判定する。色補正モードが色補正モードAである場合、ステップS1702へ進み、色補正モードが色補正モードAではない場合、ステップS1703へと進む。
ステップS1702において、色補正処理部305は、HDD105あるいはRAM102から色補正パラメータ算出処理により算出された色補正パラメータのうち、各々のプロジェクタに対応する色補正パラメータAを取得する。
ステップS1703において、色補正処理部305は、HDD105あるいはRAM102から色補正パラメータ算出処理により算出された色補正パラメータのうち、各々のプロジェクタに対応する色補正パラメータBを取得する。
ステップS1704において、色補正処理部305は、HDD105あるいはRAM102から表示用画像データ306を取得する。
ステップS1705において、色補正処理部305は、画像のシフト方向と、シフト量とから成る画像シフトパラメータをHDD105あるいはRAM102から取得する。
ステップS1706において、色補正処理部305は、表示用画像データ306に対して、各々のプロジェクタの表示対象領域を算出する。まず、色補正モード設定処理のステップS1503で説明した領域分割画像を投影領域に内接するように配置する方法と同様の方法を用いて表示用画像データを配置する。ステップS1503では、領域分割画像を配置する対象としていたが、ステップS1706では領域分割画像の代わりに表示用画像を配置する対象としてステップS1503同様の処理を行う。次に、ステップS1705で取得した画像シフトパラメータに基づき、配置された表示用画像をシフトさせる。これにより、各プロジェクタが表示用画像のどの領域を投影すればよいかが決まる。図18に、プロジェクタ110と、プロジェクタ111との表示対象領域の一例を示す。図18では、画像シフトパラメータとして、シフト方向が左方向、シフト量が重複投影領域の幅Wxの場合の例を示している。
ステップS1707において、色補正処理部305は、ステップS1706で算出された各プロジェクタの表示対象領域に対して、ステップS1702あるいはステップS1703で取得した各プロジェクタの色補正パラメータを使用して色補正処理を行う。処理の詳細は、実施例1と同様であるため説明は省略する。
以上の処理により、黒色を含む画像に対して、違和感がなく且つできる限りコントラストが高くなるように処理された補正画像データを生成することが可能となる。
本実施例では、これまで説明したように、画像シフトパラメータに基づいて表示用画像をシフトさせることによって、高コントラストな表示を実現することが可能となるが、一方で投影領域に余白が生じてしまうという問題もある。そこで、表示用画像をあらかじめ拡大処理し、これをオーバースキャン表示しておくことで余白が生じる問題を解決する方法について、図19を用いて説明する。
図19(a)は、画像シフトおよびオーバースキャン表示が無い場合の、各プロジェクタの投影領域と、重複投影領域と、表示用画像との関係を示す図である。
図19(b)は、表示用画像を左方向にシフトさせてオーバースキャンなしで表示した場合の、各プロジェクタの投影領域と、重複投影領域と、表示用画像との関係を示す図である。この場合、図19(b)に示すように、プロジェクタ113の投影領域において余白部分が生じてしまう。
図19(c)は、シフト量に応じて表示用画像をあらかじめ拡大処理しておいて、拡大された表示用画像をオーバースキャン表示した場合の、各プロジェクタの投影領域と、重複投影領域と、表示用画像との関係を示す図である。
図19(d)は、シフト量に応じて表示用画像をあらかじめ拡大処理した上で、拡大された表示用画像を左方向にシフトさせてオーバースキャン表示した場合の、各プロジェクタの投影領域と、重複投影領域と、表示用画像データとの関係を示す図である。この場合、図19(d)に示すように、図19(b)では生じていた余白がなくなることがわかる。以上説明したように、表示用画像をあらかじめシフト量に応じて拡大処理した上でオーバースキャン表示することによって、投影領域に余白が生じることなく高コントラストな表示を実現することが可能となる。
なお、本実施例では、画像シフトパラメータのシフト方向は左右の2方向として説明したが、これに限らず、例えば、シフト補正を投影面上の360度方向に拡張してもよいことは言うまでもない。また、画像シフトパラメータのシフト量は重複投影領域の幅Wxとして説明したが、これに限らず、例えば、重複投影領域の幅を最大値として1ピクセルずつ順にシフトさせるようにしてもよい。あるいは、表示用画像中の低輝度領域を重複投影領域に入らない位置へシフトする際に必要なシフト量そのものを、画像シフトパラメータのシフト量として設定するようにしてもよい。
(実施例5)
以下、本発明の第5の実施例(実施例5)について説明する。実施例4では、補正された静止画を表示する方法について説明したが、本実施例では、表示用画像データが動画データである場合の処理について説明する。本実施例では、実施例2と同様に、動画のシーンチェンジを検出してシーンごとに色補正モードと、画像シフトパラメータとを設定し、1つのシーンの中では同一の色補正モードと、同一の画像シフトパラメータとを適用して同一の色補正を行う。これにより、違和感のない高コントラストな表示を実現する。
図20は、実施例5に係る画像処理装置における画像投影処理の動作手順を示すフローチャートである。詳細には、図20のフローチャートに示す手順を記述したコンピュータ実行可能なプログラムをROM103またはHDD105からRAM102上に読み込んだ後に、CPU101によって当該プログラムを実行することによって当該画像投影処理が実行される。以下、図20に示す各処理について説明する。
ステップS2001において、パラメータ入力部301は、表示用画像データ306と、あらかじめ算出しておいた色補正パラメータ309と、投影領域情報311とをROM103やHDD105等の記録装置から読み込むことで取得する。ここで表示用画像データ306は、1つ以上のシーンで構成される動画データとする。また、色補正パラメータ309および投影領域情報311の算出方法に関しては、実施例1と同様であるため詳細な説明は省略する。
ステップS2002において、公知の動画のシーンチェンジ検出処理により表示用画像データ306を1つ以上のシーンに分割する。
ステップS2003において、領域分割画像を投影領域に対して2次元的にシフトさせるための画像シフトパラメータを初期化する。実施例4と同様に、この画像シフトパラメータは、シフト方向と、シフト量とから成り、シフト方向は左右の2方向とし、シフト量は重複投影領域の幅Wxとする。本ステップでは、シフト方向を左方向、シフト量を0として設定する。
ステップS2004において、全てのシーンに対して色補正モードの設定処理および画像シフトパラメータの設定処理が終了したかどうかを判定する。全てのシーンに対してこれらの処理が終了している場合、ステップS2015へ進み、全てのシーンに対してこれらの処理が終了していない場合、ステップS2005へ進む。
ステップS2005において、処理対象のシーンを未処理のシーンへと更新する。
ステップS2006において、画像シフトパラメータのシフト方向と、シフト量との全ての組み合わせ(初期値を含む)に対して、現在処理対象となっているシーン内の全てのフレームを処理したかどうかを判定する。本実施例では、シフト方向は左右方向の2パターンとし、シフト量は重複投影領域の幅Wxの1パターンとしている。従って、これらの組み合わせとなる2パターンの画像シフトパラメータと、ステップS2003で設定した初期値とに対して処理が終了しているかどうかを判定すればよい。
ステップS2007において、画像シフトパラメータを、ステップS2006でまだシフト処理が終了していないと判定されたシフト方向と、シフト量との組み合わせに設定する。
ステップS2008において、色補正モードが設定されていないシーン内の全てのフレーム画像に対して色補正モード設定処理が終了したかどうかを判定する。全てのフレーム画像に対して色補正モード設定処理が終了している場合、ステップS2012へ進み、全てのフレーム画像に対して色補正モード設定処理が終了していない場合、ステップS2009へ進む。
ステップS2009において、処理対象のフレーム画像を未処理のフレーム画像へと更新する。
ステップS2010において、領域分割画像生成部303は、処理対象のフレーム画像を静止画とみなし、これに対して領域分割画像生成処理を行う。領域分割画像生成処理は実施例1と同様であるため、詳細な説明は省略する。
ステップS2011において、色補正モード設定部304は、処理対象のフレーム画像を静止画とみなし、これに対して色補正モード設定処理を行う。次いで、処理は、ステップS2008へ移行する。本実施例における色補正モード設定処理は後述する。
ステップS2012において、現在設定されている画像シフトパラメータに対する色補正モードの評価値を算出する。次いで、処理は、ステップS2006へ移行する。この色補正モードの評価値は、シーン内の全フレーム画像に対して、色補正モード設定処理において色補正モードAに設定されたフレームの割合とする。図21は、本実施例におけるシーン内の色補正モード設定処理の一例を示した図である。図21は、5フレームの画像から成る1つのシーンを示している。シフト方向が左方向、シフト量がWxの場合の色補正モードの評価値は、色補正モードAに設定されたフレームが4枚、色補正モードBに設定されたフレームが1枚であるため、4/5=0.8となる。同様に、シフト方向が右方向、シフト量がWxの場合の色補正モードの評価値は、2/5=0.4となる。なお、ここで算出された色補正モードの評価値は、画像シフトパラメータと対応づけた状態で記憶される。
ステップS2013において、ステップS2012で算出した色補正モードの評価値に基づき、シーン内の色補正モードを決定する。具体的には、各画像シフトパラメータに対して算出された色補正モードの評価値を比較することでこれを決定する。まず、色補正モードの評価値が最も高くなるものを算出し、色補正モードの評価値が0.5以上であった場合は、シーン内の色補正モードを色補正モードAに設定する。色補正モードの評価値が0.5よりも小さかった場合は、シーン内の色補正モードを色補正モードBに設定する。
ステップS2014において、現在処理対象となっているシーンに対する画像シフトパラメータが、HDD105またはRAM102に記憶される。具体的には、ステップS2013において最も高い値として評価された色補正モードの評価値に対応する画像シフトパラメータを、本ステップにおける出力対象とする。次いで、処理は、ステップS2003へ移行する。
ステップS2015において、色補正処理部305は、表示用画像データ306に対し色補正処理を行う。この際、色補正処理部305は、ステップS2014で決定された各シーンの色補正モード情報と、各シーンの色補正モード情報に対応する色補正パラメータと、各シーンの画像シフトパラメータとを使用する。色補正処理の詳細は、実施例4と同様であるため説明は省略する。
ステップS2016において、画像出力部302は、直前のステップS2015で生成した補正画像データ310をプロジェクタ110、111を用いてスクリーンに投影する。
次に、本実施例における色補正モード設定処理について詳細に説明する。図22は、実施例5に係る画像処理装置における色補正モード設定処理の動作手順を示すフローチャートである。図22のフローチャートに示す手順を記述したコンピュータ実行可能なプログラムをROM103またはHDD105からRAM102上に読み込んだ後に、CPU101によって当該プログラムを実行することによって当該色補正モード設定処理が実行される。以下、図22に示す各処理について説明する。
ステップS2201において、色補正モード設定部304は、領域分割画像生成処理において生成された領域分割画像データ307について判定を行い、領域分割画像の中にRGB値が全て0となる黒色領域(0,0,0)が含まれているかどうかを判定する。処理の詳細は実施例1と同様であるため説明は省略する。領域分割画像に黒色領域が含まれる場合、ステップS2202へ進み、領域分割画像に黒色領域が含まれない場合、ステップS2207へ進む。
ステップS2202において、色補正モード設定部304は、投影領域情報311を取得する。処理の詳細は実施例1と同様であるため説明は省略する。
ステップS2203において、色補正モード設定部304は、ステップS2202で取得した投影領域情報311に基づいて、投影領域に内接する大きさに領域分割画像を変倍し、投影領域の中央と、領域分割画像の中央とが合うように領域分割画像を配置する。
ステップS2204において、色補正モード設定部304は、ステップS2007で設定された画像シフトパラメータに基づき、領域分割画像をシフトさせる。
ステップS2205において、色補正モード設定部304は、黒色領域を構成する画素の座標を算出し、これらが重複投影領域に入っているかどうかを判定する。処理の詳細は実施例1と同様であるため説明は省略する。
ステップS2206において、色補正モード設定部304は、色補正モードを色補正モードAに設定する。設定された結果は、色補正モード情報308として色補正処理部305に出力される。
ステップS2207において、色補正モード設定部304は、色補正モードを色補正モードBに設定する。設定された結果は、色補正モード情報308として色補正処理部305に出力される。
以上説明した処理により、1つ以上のシーンを含む動画データに対して、シーンごとに画像データの特徴に応じた色補正モードを設定することで、黒色を含む動画を、違和感がなく且つコントラストができる限り高い状態で表示することが可能となる。
(その他の実施形態)
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。