(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明を実施するための一実施形態について説明する。
図1は、本発明の実施形態による投射機能付きカメラ1を前方から見た図である。
図1において、投射機能付きカメラ1の正面には、撮像光学系121(図示せず。
図2参照。)を構成する撮影レンズ121Aと、投影光学系111(図示せず。
図2参照。)を構成する投影レンズ111Aとが設けられている。投射機能付きカメラ1は、机上などに載置された状態、または不図示のクレードル上に載置された状態で、前方のスクリーンなどに向けて、内蔵する投射ユニット110(プロジェクタ)によって画像などの投影情報を投影する。投射機能付きカメラ1の上面には、レリーズスイッチ103Aが設けられている。投射機能付きカメラ1において、投射ユニット110の投影光学系111は縦方向に配設される。
【0009】
図2は、投射機能付きカメラ1の構成を説明するブロック図である。
図2において投射機能付きカメラ1は、投射ユニット110と、撮像ユニット120と、制御回路101と、メモリ102と、操作部103と、外部インターフェイス(I/F)回路104と、メモリカードインターフェイス(I/F)105とを備え、メモリカードインターフェイス105にはメモリカード150が接続される。
【0010】
制御回路101は、マイクロプロセッサ及びその周辺回路からなる。制御回路101は、制御プログラムに基づいて、投射機能付きカメラ内各部から入力される信号を用いて所定の演算を行う。そして、制御回路101は、演算結果を制御信号として投射機能付きカメラ内各部に送出し、投射機能付きカメラ1の投影動作および撮影動作を制御する。なお、制御プログラムは制御101内の不図示のROMに格納される。
【0011】
制御回路101は画像処理部101Aを有する。画像処理部101Aでは、外部インターフェイス104を介して取得した画像データまたはメモリカード150より取得した画像データに対して画像処理を行う。画像処理部101Aで行う画像処理の詳細については後述する。
【0012】
メモリ102は制御回路101の作業用メモリとして使用される。操作部103はレリーズスイッチ103Aを含み、操作されたボタンやスイッチに対応する操作信号を制御回路101へ送出する。メモリカード150は、制御回路101の指示によりデータの書き込み、保存および読み出しが可能である。
【0013】
投射ユニット110は、投影光学系111、液晶パネル112、LED光源113、および投射制御回路114を含む。LED光源113は、供給電流に応じた明るさで液晶パネル112を照明する。液晶パネル112は、投射制御回路114からの駆動信号に応じて光像を生成する。投影光学系111は、液晶パネル112から射出される光像を投射する。投射制御回路114は、制御回路101からの指示により、LED光源113および液晶パネル112へ制御信号を送出する。
【0014】
投射ユニット110は、メモリカード150内に保存されている画像データの他、外部インターフェイス回路104を介して外部機器から供給される画像データによる画像を投影可能に構成され、制御回路101から指示された画像を投影する。メモリカード150内に保存されている画像データの画像、または、外部インターフェイス回路104を介して外部機器から供給される画像データの画像を、以下、投影原画像と呼ぶ。
【0015】
撮像ユニット120は撮像光学系121、撮像素子122および撮像制御回路123を有し、制御回路101からの指示に応じて投影面の撮像を行う。撮像光学系121は、撮像素子122の撮像面上に被写体像を結像させる。撮像素子122としては、CCDやCMOS撮像素子などが用いられる。撮像制御回路123は、制御回路101からの指示により撮像素子122を駆動制御するとともに、撮像素子122から出力される画像信号に対して所定の信号処理を行う。信号処理後の画像のデータは、所定形式の画像ファイルとしてメモリカード150に記録される。
【0016】
制御回路101の画像処理部101Aで行われる画像処理を説明する。本発明の実施形態の画像処理は、投影原画像の色補正を行う。また、画像処理部101Aは、投射光学系111の光軸と撮像光学系121の光軸とが一致していないことによる投影画像の歪や、投影光学系111の光軸が投影面に対して垂直でないことに起因する投影画像のあおりや歪に対する補正も行う。本発明の実施形態の画像処理は、投影画像の色補正に特徴を有するので、色補正について主に説明する。
【0017】
図3を参照して、本発明の実施形態における画像処理によって投影原画像の画像処理を行い、その処理された投影画像を投影したときに視認される投影画像について説明する。
図3(a)は、投影画像を投影する投影面30を説明するための図である。投影面30には、丸いシミ31が付着しているものとして説明する。
図3(b)は、投影面30に投影する投影原画像32を示す図である。
図3(c)は、本発明の実施形態における画像処理によって投影原画像32を処理した投影画像を投影面30に投影したときに視認される投影画像33を示す図である。投影画像33では、シミ31が目立たたず、投影画像33の視認性も良好である。
図3(d)は、従来の画像処理、つまりシミ31が全く見えなくなるように投影原画像32を画像処理した投影画像を投影面30に投影したときに視認される投影画像34を示す図である。投影画像34には、投影面30のシミ31は全く見えない。しかし、投影画像34のダイナミックレンジは非常に狭くなり、投影画像34の視認性が非常に悪くなる。
【0018】
図4のフローチャートを参照して、本発明の実施形態における画像処理について説明する。この画像処理は、投影画像において投影面である壁の模様やシミなどが目立たなくなるとともに、投影画像のダイナミックレンジが狭くなりすぎないように適切な補正量で投影原画像を補正する。
図4の処理は、投射機能付きカメラ1が投影を開始するための処理を開始すると、スタートするプログラムにより制御回路101において実行される。
【0019】
ステップS1では、投射ユニット110の投影特性の算出を行う。投影特性とは、投射ユニット110の照明ムラ、投影面の色や模様による影響、周囲照明による投影面への影響などを考慮した場合の、入力画像の画素値(R,G,B)と、投影面で再現される測色値(X,Y,Z)との間の関係を示す特性である。投射ユニット110から投影された所定の投影画像を、撮影ユニット120で撮影し、撮影した画像から測色値を検出して投影特性を算出する。具体的な処理については後述する。
【0020】
ステップS2では、投影画像の補正係数を決定する。ここで、補正係数とは、ステップS1で得られた投影特性を用いて、入力画像(投影原画像)と実際に投影した投影画像の見え方が近くなるように、入力画像に施す補正係数を決定する。投射ユニット110から投影された所定の投影画像を、撮影ユニット120で撮影し、撮影した画像を解析して投影画像の補正係数を決定する。この補正係数が投影原画像の補正量となる。この処理の詳細についても後述する。
【0021】
ステップS3では、投影原画像を、外部インターフェイス回路104を介して、またはメモリカード150より読み込み、メモリ102に記憶する。
【0022】
ステップS4では、ステップS2で決定した補正係数で、ステップS3で読み込んだ投影原画像を補正する。
【0023】
ステップS5では、ステップS4で補正した投影画像をアナログ変換し、投影画像を投影する。
【0024】
ステップS6では、次に投影する投影原画像があるか否かを判定する。次に投影する投影原画像がある場合はステップS6が肯定判定され、ステップS3に戻る。次に投影する投影原画像がない場合はステップS6が否定判定され、処理を終了する。
【0025】
次に、ステップS1、S2、S4について、さらに詳細に説明する。
【0026】
−投影特性の決定−
ステップS1で行う投影特性の決定について説明する。
i番目の画素値が(R,G,B)
iで与えられる画像データを投射ユニット110で投影したとき、i番目の画素値に対応する投影面の測色値(X,Y,Z)
iは以下のような関係式になる。ここで、γは投射ユニット110の階調特性を表し、M
piは投射ユニット110の画素値(R
γ,G
γ,B
γ)
iから投射ユニット110の照明の測色値へ変換する色変換マトリックス(投射ユニット110の照明ムラを考慮して添字iを付ける)を表す。(X
kp,Y
kp,Z
kp)
iは投射ユニット110で黒投影時の周囲照明も含めた投影面の照明条件(周囲照明や黒点の面内ムラを考慮して添字iを付ける)を表し、R
iは投影面の反射率特性(投影面の模様など、反射率のムラを考慮して添字iを付ける)を表す。
【数1】
ただし、
【数2】
【0027】
一方、黒画像((R,G,B)
i=(0,0,0)
i)投影時の投影面撮影画像から、(X
k,Y
k,Z
k)
iを決定する。なお、投影面の測色値は、撮影画像の画素値から予め決まった色変換処理を用いることで算出できる。画像のプロファイルがsRGBであれば、通常のsRGB変換処理を用いることで(X
k,Y
k,Z
k)
iを決定することができる。
【0028】
同様に、R画像((R,G,B)
i=(1,0,0))、G画像((R,G,B)
i=(0,1,0))およびB画像((R,G,B)
i=(0,0,1))を投影した投影面を撮影した撮影画像から、色変換マトリックスM
iの3×3のマトリックス係数を決定する。具体的には、R画像、G画像およびB画像を投影した投影面の測色値をそれぞれ、(X
r,Y
r,Z
k)、(X
g,Y
g,Z
g)および(X
b,Y
b,Z
b)とすると、色変換マトリックスM
iは以下のようになる。
【数3】
つまり、所定のテスト画像(黒画像、R画像、G画像、B画像)を投影した投影面を撮影した撮影画像から、色変換マトリックスM
iの3×3のマトリックス係数を決定する。
【0029】
なお、以上の説明では、撮像ユニット120による撮像画像と、投射ユニット110による投影画像の画素の位置/サイズが一致するものとして説明したが、画素の位置/サイズが一致しない場合には、対応する位置における画素値を補間して用いればよい。また、投影画像の角を検出することによって投影画像が投影されている領域を検出し、i番目の画素値が投影されている位置および範囲を検出できるようにしてもよい。
【0030】
−投影画像補正係数の決定−
ステップS2で行う投影画像補正係数の決定について説明する。
投影面にムラ(以後、投影面の反射率のムラや照明ムラを含めて、単に「ムラ」と表現する)や模様がある場合、投影面の各画素で最大表示可能な色域は変化するが、まずこの範囲を決定する。投影面での輝度Yiは、数式(1)より以下のように表すことができる。
【数4】
【0031】
したがって、表示可能な輝度範囲は数式(4)において、0≦R
i,G
i,B
i≦1の範囲で振ったときにY
iがとり得る範囲で決まり、通常、Y
r,Y
g,Y
b>Y
kより白画像((R,G,B)
i=(1,1,1))投影時の輝度を最大輝度Y
MAX,i、黒画像投影時の輝度を最小輝度Y
MIN,iとして求めることができる。
【0032】
たとえば、
図5のように投影面50の模様として白色面に所々黒色部分がある場合、最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの頻度分布を投影面内で算出すると、
図6、
図7に示すようになる。
【0033】
ここで、投影面のムラや模様が消えるように投影原画像を補正すると、投影後の画像の最大輝度Y
MAXをMIN(Y
MAX,i)、最小輝度Y
MINをMAX(Y
MIN,i)になるように補正する必要がある。しかし、この場合、ダイナミックレンジが非常に狭くなり、補正後の投影画像の視認性が悪くなる(
図3(d)参照)。そこで、投影面の暗い部分の輝度が予め定めた最大輝度の閾値Y
MIN,thより低い場合は補正量を緩和し、最大輝度Y
MAXを以下のように決定する。
【数5】
【0034】
最大輝度の閾値Y
MIN,thは、画像によらず予め定めた一定値Y
CONSTANT(0<
YCONSTANT≦1)でもよい。しかし、
図6のヒストグラムで輝度の最も小さい画素から輝度の最も大きい画素に向かって数えた所定割合の画素数となる輝度値を用いたり、
図6のヒストグラムで輝度の小さい方から数えた所定数の画素数となる輝度値を用いたり、MAX(Y
MAX,i)の所定割合の値を用いたりして、最大輝度の閾値Y
MIN,thを決定してもよい。たとえば、すべての画素のうちの80%の画素について補正を行えばよい場合は、
図6のヒストグラムで輝度の小さい方から数えた全体の20%の画素数となる輝度値を用いて閾値Y
MIN,thを決定してもよい。また、
図6のヒストグラムで輝度の最も大きい画素から輝度の最も小さい画素に向かって数えた所定割合の画素数となる輝度値を用いたり、
図6のヒストグラムで輝度の大きい方から数えた所定数の画素数となる輝度値を用いたりして最大輝度の閾値Y
MIN,thを決定してもよい。
【0035】
また、視覚の輝度順応により、同じ明るさの画像を見ていても、明るい周囲輝度に順応している場合の方が、暗い周囲輝度に順応している場合より画像が暗く感じられる。したがって、周囲の明るさに応じて最大輝度の閾値Y
MIN,thを調整した方がより最適な見えを提供できる。
図10に周囲輝度に対するY
MIN,thの設定例を示す。プロジェクタで白を表示したときの絶対輝度L
deviceに比べ、周囲輝度が暗い場合はY
MIN,thを低く設定し、周囲輝度がL
deviceと同レベル以上に明るい場合はY
MIN,thを前述のように予め定めた値Y
CONSTANTやヒストグラムを用いて決定した値などに設定すればよい。また、周囲輝度の感じ方は、直接観察しているプロジェクタの輝度(白を表示したときの輝度)と周囲輝度の比で変わるので、
図10の横軸を(周囲輝度/プロジェクタの輝度)の比を用いてもよい。
【0036】
なお、前述の例では、プロジェクタの輝度は一定値とし、白(R=G=B=1)に対する相対輝度値Y
MIN,thのレベル調整のみで対応する例で説明した。しかし、Y
MIN,thで調整すると表示画像の階調が圧縮され潰れてしまう場合がある。したがって、プロジェクタの表示輝度も可変とし、プロジェクタの輝度L
deviceと合わせて調整すれば画質への影響をさらに抑えることができる。たとえば、Y
MIN,thは前述のように予め定めた値Y
CONSTANTやヒストグラムを用いて決定した値などに設定し、輝度L
deviceを
図11のように調整する。
【0037】
−投影画像の補正−
ステップS4で行う投影画像の補正について説明する。
投影原画像の色空間がsRGBとすれば、投影原画像の画素値(R
0,G
0,B
0)に対して、投影面での測色値(X,Y,Z)
iは以下のようになればよい。
【数6】
ここで、最小輝度Y
MIN,iがY
MIN=MAX(Y
MIN,i)となる画素値を投影画面の黒点(X
k0,Y
k0,Z
k0)とする。なお、M
sRGB→XYZは規格に決まっているsRGBからXYZへの変換マトリックスである。
【0038】
したがって、数式(1)を用いて、補正後の投射ユニット110への入力画素値(R,G,B)
iは以下の式で算出できる。
(1)Y
MAX,i≧Y
MAXを満たす画素;
【数7】
【0039】
ただし、Y
MAX,i<Y
MAXの場合、表示できる輝度範囲が外れるため、以下の式で算出する。
(2)Y
MAX,i<Y
MAXを満たす画素;
【数8】
【0040】
数式(6),(7)は簡単のため、sRGBのγ=2.2として記述した。しかし、定義どおり線形関数とγ=2.4の組み合わせで算出してもよい。
【0041】
以上説明した実施形態によれば、次の作用効果が得られる。
(1)所定のテスト画像(白画像、黒画像)が投影された投影面50を撮影して得られる撮影画像の画素値分布(
図6、
図7)を解析し、その解析結果に基づいて、投影原画像の補正量を調整(数式(5),(6),(7))するようにした。これにより、投影面50に著しく暗い場所があっても、投影画像を暗くしないように補正量を調整でき、投影画面の見えを改善できる。
【0042】
(2)投影面50を撮影して得られる撮影画像の画素値から輝度値を算出し(数式(4))、その輝度値の頻度分布(
図6、
図7)を解析した結果に基づいて、投影原画像の補正量を調整するようにした。これにより、投影画像において投影面のシミなどが目立たなくなるとともに、投影画像のダイナミックレンジが狭くなりすぎない適切な補正量に調整することができる。
【0043】
(3)所定のテスト画像(白画像、黒画像)が投影された投影面50を撮影して得られる撮影画像の輝度値が最小閾値(Y
min,th)以上の画素値を用いて投影原画像の補正量を調整するようにした。これにより、投影画像において投影面のシミなどが目立たなくなるとともに、投影画像のダイナミックレンジが狭くなりすぎない適切な補正量に調整することができる。
【0044】
(4)所定のテスト画像(白画像、黒画像が投影された投影面50を撮影した撮影画像から得られる最大輝度値(Y
max,i)を基準とした所定割合を最小閾値(Y
min,th)として算出するようにした。これにより、投影面のシミなどが目立たなくなるとともに、投影画像のダイナミックレンジが狭くなりすぎない適切な補正量を算出するための適切な最小閾値(Y
min,th)を算出することができる。
【0045】
(5)所定のテスト画像(白画像、黒画像)が投影された投影面50を撮影して得られる撮影画像の輝度値(
図6)を最も小さい画素から大きい画素に向かって数えていき、その画素数が所定画素数となる輝度値を最小閾値(Y
min,th)として算出するようにした。これにより、投影面のシミなどが目立たなくなるとともに、投影画像のダイナミックレンジが狭くなりすぎない適切な補正量を算出するための適切な最小閾値(Y
min,th)を算出することができる。
【0046】
以上の実施形態を次のように変形することができる。
−他の実施の形態1−
本発明の実施形態では、Y
MAX,i<Y
MAXを満たす画素については、最大輝度となる色が飽和しない範囲で補正画素の画素値を算出していた。しかし、補正画素の画素値を対象画素値が表現しうる最大値としてもよい。たとえば、すべての画素について、数式(6)にしたがって画素値を算出し、画素値が入力範囲を超えた場合(たとえば8bitの場合、画素値が255より大きい場合)クリッピングしてもよい。また、数式(6)で算出したR,G,Bのうちの最大となる色情報が飽和しない範囲で最大値となるように、M
sRGB→XYZに乗算する係数を調整してもよい。
【0047】
−他の実施の形態2−
本発明の実施の形態では、ステップ2において、投影面内における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出した。しかし、投影画像の画像中心に相当する投影面上の位置(以下、画像中心と呼ぶ)からの距離が所定値以内の領域における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出し、画像中心からの距離が所定値より離れた領域における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出しないようにしてもよい。これにより、補正量を算出するために検出する画素数が少なくなり、画素値分布の解析を速く行うことができる。この場合、画像周辺部に投影面のムラなどが見えるが、画像中心から離れていれば、ユーザにとってそのムラなどが気になることが少ない。そして、画像周辺部に見える投影面のムラなどを見えなくするより、画像全体のダイナミックレンジを広げた方が投影画像の視認性が良好になるからである。
【0048】
投影画像の中で合焦した領域、あるいは顔認識を行った領域を検出し、その領域からの距離が所定値以内の領域における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出し、その領域からの距離が所定値より離れた領域における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出しないようにしてもよい。ユーザは、投影画像の合焦されている領域、あるいは顔認識された領域を中心に投影画像を視認するので、その領域から離れた位置に投影面のムラなどが見えても、気にならない。この場合、投影原画像を読み込んでから(
図4のステップS3)、投影画像補正係数を決定する(
図4のステップS2)。投影画像補正係数を決定する前に、投影画像の中で合焦した領域、あるいは顔認識を行った領域を検出する必要があるからである。
【0049】
また、投影画像がメニュー画面である場合、メニュー画面の内容を表す文字が表示されている領域からの距離が所定値以内の領域における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出し、その領域からの距離が所定値より離れた領域における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出しないようにしてもよい。ユーザは、メニューに表示されている文字を中心に投影画像を視認するので、それらの文字から離れた位置に投影面のムラなどが見えても、気にならないからである。この場合、投影原画像を読み込んでから(
図4のステップS3)、投影画像補正係数を決定する(
図4のステップS2)。投影画像補正係数を決定する前に、メニューの位置を検出する必要があるからである。
【0050】
−他の実施の形態3−
本発明の実施の形態では、ステップ2において、投影面内における最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出した。しかし、投影画像の画像中心からの距離に応じて最大輝度Y
MAX,iおよび最小輝度Y
MIN,iに対して重み付けを行い、重み付けを行った最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出するようにしてもよい。たとえば、画像中心においては、所定の最大輝度範囲における画素を1個見つけると度数1とカウントし、画像中心から離れるにしたがって、度数1とカウントする画素数を増やす(所定の最大輝度範囲における画素を10個見つけるごとに度数1とカウントするなど)。そして、この重み付けを行った最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布に基づいて、投影後の画像の最大輝度Y
MAXおよび最小輝度Y
MINを決定する。この場合も、投影面の周辺部に著しく暗い場所があっても、極端に投影画像を暗くしないように補正量を調整でき、投影画像の視認性を改善できる。
【0051】
投影画像の中で合焦した領域、あるいは顔認識を行った領域を検出し、その領域からの距離に応じて最大輝度Y
MAX,iおよび最小輝度Y
MIN,iに対して重み付けを行い、重み付けを行った最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出するようにしてもよい。ユーザは、投影画像の合焦されている領域、あるいは顔認識された領域を中心に投影画像を視認するので、その領域から離れた位置に投影面のムラなどが見えても、気にならないからである。この場合、投影原画像を読み込んでから(
図4のステップS3)、投影画像補正係数を決定する(
図4のステップS2)。投影画像補正係数を決定する前に、投影画像の中で合焦した領域、あるいは顔認識を行った領域を検出する必要があるからである。
【0052】
また、投影画像がメニュー画面である場合、メニュー画面の内容を表す文字が表示されている領域からの距離に応じて最大輝度Y
MAX,iおよび最小輝度Y
MIN,iに対して重み付けを行い、重み付けを行った最大輝度Y
MAX,iの分布および最小輝度Y
MIN,iの分布を算出するようにしてもよい。ユーザは、メニューに表示されている文字を中心に投影画像を視認するので、それらの文字から離れた位置に投影面のムラなどが見えても、気にならないからである。この場合、投影原画像を読み込んでから(
図4のステップS3)、投影画像補正係数を決定する(
図4のステップS2)。投影画像補正係数を決定する前に、メニューの位置を検出する必要があるからである。
【0053】
−他の実施の形態4−
投影面に暗い部分があっても、その暗い部分に原画像の暗い部分が投影される場合、その投影面の暗い部分を考慮に入れずに投影原画像の補正を行うようにしてもよい。
【0054】
図8を参照して、他の実施の形態4における画像処理について説明する。
図8(a)は、投影画像を投影する投影面80を説明する図である。投影面80には、矩形のシミ81と円形のシミ82とが付着しているものとして説明する。
図8(b)に示すように、投影面80に投影した投影画像83の黒い部分84(投影画像83に表示された女性の髪毛の部分)がシミ81,82に重畳する場合、投影原画像の画像処理を行わなくても、シミ81,82は全く見えない。したがって、投影原画像を補正するための補正量を算出するにあたって、投影面80の暗い部分81,82に対応する画素の輝度を考慮に入れないようにしてもよい。
【0055】
図9のフローチャートを参照して、本発明の他の実施の形態4における画像処理について説明する。
図9の処理は、投射機能付きカメラ1が、投影を開始するための処理を開始するとスタートするプログラムにより制御回路101において実行される。
図4の画像処理に共通するステップには共通の符号を付し、
図4の画像処理と異なる部分を主に説明する。
【0056】
ステップS1の処理の後、ステップS3に進む。ステップS3の次にステップS21に進む。ステップS21では、投影画像の補正係数を決定する。上述のステップS2と同様にヒストムグラムを作成し、MIN(Y
MAX,i)を算出する。ここで、投影面に白画像を投影したときの投影画像における輝度値の画像面内分布と、投影原画像の輝度値の面内分布とを比較する。そして、最大輝度Y
MAX,iがMIN(Y
MAX,i)と一致する画素位置における投影原画像の画素値を参照し、輝度が低ければMIN(Y
MAX,i)の算出対象から外す。Y
MAX,iが低い画素位置について順次、投影画像の画素値評価を繰り返し、投影画像の輝度が低くない画素で対応する撮影面の表現可能な最大輝度の最小値MIN(Y
MAX,i)を決定する。そして、ステップS4へ進む。
【0057】
また、ステップS21において、投影原画像の輝度値の面内分布を解析し、その中で輝度値が、所定割合以上の範囲(たとえば、20%以上の範囲)の画素を検出する。そして、白画像および黒画像を投影したときの投影画像において、投影原画像の輝度値の面内分布から検出した画素に対応する画素における輝度値をヒストグラム化して、最小値MIN(Y
MAX,i)を決定するようにしてもよい。つまり、最大輝度の最小値MIN(Y
MAX,i)などの決定において、投影原画像の暗い部分に対応する部分の投影面を考慮に入れないようにしてもよい。
【0058】
以上の他の実施の形態4によれば、投影面の一部に暗い場所があっても、投影原画像に応じてダイナミックレンジを適切に調節できる。
【0059】
−他の実施の形態5−
上述の画像処理を組合せてもよい。たとえば、他の実施の形態3と他の実施の形態4とを組合せてもよい。
【0060】
−他の実施の形態6−
上述の実施の形態では、色域の補正として、輝度範囲の補正について説明したが、彩度方向の補正についてもYCrCb空間のCr,Cb、もしくは彩度(XYZからCIELABに変換し、C*=√(a*
2+b*
2)を使用)について同様に色域の補正を行ってもよい。たとえば、投影面に彩度の高い赤い部分があるとする。そのような赤い部分に投影される投影原画像を補正しようとすると、彩度方向のダイナミックレンジが非常に狭くなり、無彩色に近い色となる。このような場合、投影面の赤い部分の彩度を無視して彩度方向の補正を行う。その結果、赤い部分は多少視認されるものの、投影画像全体として、彩度方向にもダイナミックレンジの広い投影画像を視認することができる。
【0061】
図12,13と第1の実施の形態の
図4を用いて補正方法の一例を説明する。撮像した所定のテスト画像(R画像、G画像、B画像)の撮影画像を解析し、その解析結果に基づいて、投影原画像の補正量を調整する。この場合、予め色相h毎にC*の最大閾値C*
th(h)を決めて記憶しておく。また補正方法について、第1の実施の形態における処理(
図4)と異なる点を説明する。
【0062】
図12は
図4のステップS2の処理である。ステップS31では、R画像(R=255,G=B=0)を投影し、ステップS32では投影した画像を撮影する。次にステップS33では、G画像(G=255,R=B=0)を投影し、ステップS34では投影した画像を撮影する。次にステップS35では、B画像(B=255,R=G=0)を投影し、ステップS36では投影した画像を撮影する。ステップS32,34,36で撮影した画像の各画素値を数式(1)を用いてXYZに変換し、さらにCIELAB空間に変換する。CIELAB空間で彩度C*を算出し、それぞれの撮影画像内での最大彩度MAX(C*
r,i),MAX(C*
g,i),MAX(C*
b,i)を算出する。
【0063】
ステップS39では、R画像、G画像、B画像に対する最大彩度の閾値をそれぞれC*
r,th、C*
g,th、C*
b,thとすると、各画素毎に彩度圧縮係数を以下のように算出し、処理を終了する。
【数9】
ただし、Cratio,i>1となる画素については、Cratio,i=1とする。
【0064】
次に、
図13を用いて、
図4のステップS4の処理である。ステップS41では、第1の実施の形態で説明したように、投影原画像の画素値(R
0,G
0,B
0)
iから投影面での測色値(X,Y,Z)
iに変換し、さらにCIELAB空間に各画素値を変換する。
【0065】
ステップS42では、CIELAB空間での彩度C*を算出し、ステップS39で算出した補正係数Cratio,iを用いて、C*’=Cratio×C*のように彩度を補正する。ステップS43では、C*’を用いてCIELAB空間からXYZに変換する。
【0066】
ステップS44では、数式(6)、(7)の代わりに以下の式を用いて、補正後の投射ユニット110への入力画素値(R,G,B)
iを算出する。
【数10】
【0067】
−他の実施の形態7−
投影画像補正係数を決定する際、画像によらず補正係数を決定し、投影画像の補正を行ったが、補正係数は投影面内で変化させてもよい。たとえば、投影画像を複数の画素からなる領域に分割し、その領域単位で投影画像の補正を行うようにしてもよい。この場合、それぞれの領域における輝度や彩度ヒストグラムをとり、第1の実施の形態や他の実施の形態1〜5のようにそれぞれの領域毎に補正係数を決定して補正する。模様が投影面上一様でない場合に、過度な補正をせずにそれぞれの位置に適した補正が可能となる。領域は投影画像の形状に合わせて分割するとよい。
【0068】
また領域に分割ではなく、補正対象画素の所定領域範囲内の周辺画素(たとえば、補正対象画素を中心として41×41画素といった予め定めた所定領域内の周辺画素)について輝度や彩度のヒストグラムをとり、第1の実施の形態や他の実施の形態1〜5のように画素毎に補正係数を決定して補正してもよい。
【0069】
−他の実施の形態8−
以上の実施の形態では投影画像によらず同じ補正係数としたが、投影画像の画像面内の画素値分布(輝度分布や色分布など)にしたがって、補正を画像にしたがって変化させる。たとえば、投影画像を領域に分割し、それぞれの領域で使用される画素値に対する輝度や彩度ヒストグラムを作成する。これらにしたがって、領域毎に第1の実施の形態の数式(5)のように最大輝度Y
MAXを決定し、数式(6)、(7)によって補正してもよい。また、領域に分割ではなく、補正対象画素の所定領域範囲内の平均輝度や色によって、補正対象画素毎に補正を変化させてもよい。
【0070】
−他の実施の形態9−
以上の実施形態の画像処理を行う装置は、投射機能付きカメラ1などの電子カメラに限定されない。たとえば、投影画像を撮影するカメラを備えたプロジェクタなどの投影装置でもよい。あるいは、投射機能および撮影機能を有する携帯電話などの電子機器でもよい。また、投影画像を投影する投影装置と、投影装置から投影される投影画像を撮影するカメラと、カメラが撮影した投影画像の画像データに基づいて画像処理を行い、画像処理を行った投影画像の画像データを投影装置に送信するコンピュータとを有する画像処理システムで、以上の実施形態の画像処理を実現するようにしてもよい。
【0071】
本発明の実施形態では、視認される投影画像から投影面30のシミ31を目立たないようにした。しかし、本発明の実施形態による画像処理によれば、投影面の傷、投影面の反射率のムラ、投影面の模様、投射ユニット110の照明ムラ、周囲の照明環境の影響なども目立たないようにすることができる。
【0072】
なお、投影面は、壁、ホワイトボードなど投影可能な被写体であればかまわない。また、布などのように凹凸がある面でも同様に補正できるが、凹凸が大きい面に投影する場合で観察者が投影画像を観察する方角が大きい場合は、凹凸による影の影響が観察する角度によって変化する。したがって、凹凸の少ない面に投影する方が望ましい。また、観察者の観察する角度を制限したり、観察する角度によって異なる投影画像を見せる方が望ましい。
【0073】
また、光源が反射している場合のように極端に輝度の高い部分がある場合、鏡面反射は観察する角度によって見え方が変わるので、補正をしても観察方向によっては見えが悪化することになる。また、鏡面反射がある部分は黒浮きが大きく、補正をしようとすると過剰補正になる場合がある。したがって、暗い方の補正に対しても最小輝度の最大閾値Y
MAX,thを予め決定しておき、最小輝度Y0=Y
MIN=MIN(Y
MAX,th,MAX(Y
MIN,i))とする。また、黒画像投影時の最小輝度Y
MIN,i>Y
MIN、かつ白画像投影時の最大輝度Y
MAX,i=1となる領域は光源など極端に明るい周囲環境の鏡面反射による影響を考え、投影不適切領域として観察者に示す表示を投影画像に表示したり、補正処理で該当領域を無視してもよい。
【0074】
以上の説明はあくまで一例であり、本発明は上記実施形態の構成に何ら限定されるものではない。
【0075】
次の優先権基礎出願の開示内容は引用文としてここに組み込まれる。
日本国特許出願2007年第163986号(2007年6月21日出願)