図1は、本発明の実施の形態に係るプロジェクタ付携帯電話の実施例1を示す斜視図である。図1(A)はプロジェクタ付携帯電話2を縦持ちにし、大画面表示部4に表示されるテンキー6等によって通話等のための通常操作を行う場合を示す。一方、図1(B)は、プロジェクタ付携帯電話2を両手で横持ちにしてプロジェクタ部8から壁などに投影画面10を投影している場合を示す。なお、図1(A)および図1(B)において説明の重複を避けるため同一部分には同一番号を付す。
以下、図1について詳細に説明する。図1(A)に示すように、プロジェクタ付携帯電話2は、写真やウェブサイト画面などを表示可能な大画面表示部4を有するいわゆるスマートフォンとして構成されている。そして、大画面表示部4はタッチパネルを兼ねており、表示されるテンキー6等の種々の操作部を含む操作画面への指のタッチやスライドによるGUI(グラフィカル・ユーザ・インタフェース)が可能となっている。なお、操作部3は主電源のオンオフ等のためのメカ的操作部である。また、プロジェクタ付携帯電話2には、操作者の口から発音される音声を拾うマイク12、および操作者の耳に音声を伝えるスピーカ14が設けられている。さらに、プロジェクタ付携帯電話2をテレビ電話として利用する場合において表示部4を見ている操作者の顔を写すことができるとともに、自分撮りの際にも利用される内側カメラ16が配置されている。なお、図1では図示しないが、プロジェクタ付携帯電話2の背面には背面主カメラが設けられており、表示部4でモニタされる被写体を撮影することができるようになっている。
図1(A)で見てプロジェクタ付携帯電話2の左側部分には、超小型のプロジェクタ部8が内蔵されており、その光軸は、図1(A)の左側を向いている。後述するように、プロジェクタ付携帯電話2には3軸の加速度センサが設けられており、重力加速度方向の検知によりプロジェクタ付携帯電話2の姿勢が検知できるようになっている。そして図1(A)に示すような縦位置での操作状態や通話状態などのようにスピーカ14がマイク12よりも所定角度を超えて上方に来るような傾斜姿勢にある場合は超小型のプロジェクタ部8による投影が行われる状況ではないものと看做し、誤って投影操作が行われても、投影を禁止する。これは、周囲に迷惑を及ぼす誤操作を防止するとともに無用の電力消費を避ける意味がある。
これに対し、図1(B)の投影姿勢では、プロジェクタ付携帯電話2が横持ちとなるので、スピーカ14とマイク12はほぼ水平に近くなる姿勢となっていることが加速度センサにより検知され、プロジェクタ部8から壁などに投影画面10を投影するプロジェクタモードの操作が許可される。このとき、天井や壁などの上方または床や壁などの下方に投影画面10を投影する場合もあるので、図1(B)における横持ちの前後方向については、スピーカ14とマイク12を結ぶ線まわりの360度どの方向に投影光軸が向いていてもプロジェクタモードの操作は許可される。
なお、プロジェクタモードは、上記のようにプロジェクタ付携帯電話2が縦持ちであることが加速度センサにより検知されている限り大画面表示部4に表示されるメニュー画面の選択肢から消されることにより禁止されているが、横持ち状態が検知されるメニュー画面の選択肢に加えられ、その選択が許可される。プロジェクタモードが選択されると、大画面表示部4には右手親指操作部18および左手親指操作部20が表示され、これらの部分における両手親指のタッチやスライド操作の組合せにより投影画面の選択や拡大、縮小、スクロールなどが可能となる。また、この部分における操作によって、後述する補正停止操作も可能である。このような横長状態における両手持ちの親指操作は、ゲーム画面の操作等に好適である。また、プロジェクタモードでは、投影内容22が横長状態の大画面表示部4に表示され、同じ投影内容24が横長の投影画面10内に投影される。従って、プレゼンテーションなどに実施例1を用いる場合、大画面表示部4によって可能な最大の横長画像をモニタしながら、投影画面10の説明や操作を行うことが可能となる。
図2は、実施例1のブロック図であり、同一部分には図1と同一番号を付し、必要のない限り、説明は省略する。プロジェクタ付携帯電話2は、記憶部26に記憶されるプログラムに従って動作する制御部28によって制御される。記憶部26はまた、制御部28の制御に必要なデータを一時記憶するとともに、種々の測定データや画像も記憶することができる。表示部4の表示は、表示メモリ30の保持する表示データに基づいて表示ドライバ32が行う。その制御は、制御部28が行う。表示部4は表示バックライト34を有しており、照度センサ36が検知する周囲の明るさに基づいて制御28が表示バックライト34の明るさを自動調節する。
マイク12およびスピーカ14を含む電話機能部38は、制御部28の制御下にある電話通信部40により、無線電話回線に接続可能である。スピーカ14は、制御部28の制御に基づく音量制御により、通話だけでなく、着信音や種々の案内を行うとともにテレビ電話時の相手の声を出力する。なお、これら耳につけて聞く音以外の音の出力のためには別に専用のスピーカを設けてもよい。
画像処理部42は、制御部28に制御されて内側カメラ16および背面主カメラ44によって撮像される画像を処理し、これらの処理結果の画像を記憶部26に入力する。
プロジェクタ部8は、赤レーザダイオード46、緑レーザダイオード48および青レーザダイオード50を光源とし、これらからの各RGBレーザ光を合成プリズム52で合成してMEMS(Micro Electro Mechanical Systems)ミラー部152で走査させることにより壁5等に投影画面10を投影するもので、投影レンズのない超小型のプロジェクタエンジンを構成している。そして、投影コントローラ54は、入力される表示データに基づいて赤レーザダイオード46、緑レーザダイオード48および青レーザダイオード50のそれぞれの発光強度およびMEMSミラー部152の走査を同期制御して投影画面10を作画している。
プロジェクタ部8への表示データ入力は、表示メモリ30から手振れ/台形補正部56を介して入力される。手振れ/台形補正部56は、プロジェクタ部8の画面書換えのためのスキャンレート(走査方向が水平なら垂直スキャンレート)に対応できる速度で表示データに基づく画像処理を行い、可能な書換え画面単位で手振れ補正画像を作成することができる。手振れ/台形補正部56の画像補正処理は、XYZ3軸の加速度センサ58およびXYZ3軸のジャイロセンサ60による手振れ検知に基づいて制御部28が制御する。この結果、表示メモリ30が保持する表示データは変わらなくても手振れ検知に基づいて手振れ/台形補正部56から補正された表示データが可能な書換え画面単位で刻々出力される。このようにして、プロジェクタ部8自身には手振れ補正光学系がなくても、電子的な画像処理により手振れ補正が行われる。なお、手振れ周波数に対しスキャンレートが高い場合は、書換え画面毎に手振れ補正画面を作成しなくても何回かの書換え画面に一回補正画面を作成するよう構成してもよい。なお、手振れが検知されない場合は、補正画面の作成を省略し、表示データが変わらない限り前回の画面を援用する。
図3は、実施例1における手振れ補正の基本について説明するための投影画面図である。なお、以下の説明においては、図1または図2と同じ部分について同じ番号を付し、必要のない限り説明を省略する。図3(A)は、手振れが起こっても補正をしない状態を示すもので、投影画面10およびその中の投影内容22が、プロジェクタ付携帯電話2を持つ手の右下方向へのブレによって投影画面11および投影内容23のように移動した様子を示す。そしてこのようなブレの往復が繰り返されるモデルを考えると、矢印62で示すように、投影内容が22の位置と23の位置でぶれ、投影画面も同様に10の位置と11の位置の間でぶれることになる。
図3(B)は、これに対し、図3(A)のように投影内容が22が投影内容23のように右下にずれたとき、投影画面11の中での投影内容23をブレとは逆の左上方向に画像処理でシフトさせ、結果的に投影内容を22の位置に保持した状態を示す。そして、ブレの往復によって次に左上へのブレが生じたときには、逆の右下方向に投影内容をシフトさせ、図3(A)における投影内容22の位置に戻す。これによって、投影内容22はブレの往復があっても壁の上の同じ位置に留まることになる。図3(C)は、図3(A)のモデルの手振れ往復があったときに図3(B)で説明したような画像処理による投影内容のシフト補正を行った様子を示すもので、上記のように投影内容22はブレの往復があっても壁の上の同じ位置に留まっている。以上のようにして、プロジェクタ部8自身に手振れ補正光学系がなくても、画像のシフトという簡単な画像処理によりプロジェクタにおける手振れ補正を電子的に行うことができる。
しかしながら、図3のような補正の場合、図3(C)に明らかなように、投影内容のブレは補正されるものの、投影画面については、矢印64で示す10の位置と11の位置の間でブレが生じることになる。通常、投影が行われる壁等は暗く、投影画面10は明るいので、このような投影画面10のブレが生じると投影画面10の枠の明暗のくっきりした境目がぶれることになり、視野中心の注目部分のブレはないものの、視野周辺がちらついて目障りと感じられることがある。
実施例1では、このような点についてもさらに解決を図っている。図4は、このような投影画面における枠の手振れ補正の詳細について説明するための投影画面図である。図1から図3までと同じ部分について同じ番号を付し、必要のない限り説明を省略する。実施例1では、図4(A)に示すように投影画面10の枠から少し内側に入ったところに補正用投影画面66を設定し、補正用投影画面66の外側を黒地にして壁5との明暗差が小さい領域とする。そして、投影内容22を若干縮小し、補正用投影画面66と縮小された投影内容25の関係が図3(A)の投影画面10と投影内容22の関係と相似形になるようにする。
図4(B)は、投影画面10が手振れによって右下にずれ、投影画面11の状態となったとき、投影画面11の中での投影内容をブレとは逆の左上方向に画像処理でシフトさせ、投影内容25の位置に保持した状態を示す。この限りでは、図3(B)と同様であるが、図4(B)ではさらに、補正用投影画面66についても投影画面11の中でブレとは逆の左上方向に画像処理でシフトさせ、図4(A)における補正用投影画面66の位置と同じ位置に保持した状態を示す。これによって、投影内容25だけでなく補正用投影画面66についてもブレの補正が可能となる。
図4(C)は、図4(B)とは逆に、図4(A)を基準としたときに投影画面10が手振れによって左上にずれ、投影画面13の状態となったとき、投影画面13の中での投影内容をブレとは逆の右下方向に画像処理でシフトさせ、投影内容25の位置に保持した状態を示す。さらに、補正用投影画面66についても投影画面13の中で右下方向に画像処理でシフトさせ、図4(A)における補正用投影画面66の位置と同じ位置に保持した状態を示す。
以上のように、実施例1では、補正用投影画面66が投影画面10内でシフト可能な余地を利用し、投影画面のずれとは逆の方向に補正内容および補正用投影画面がともに平行移動するよう画像処理するものであって、図4(B)と図4(C)の間でブレの往復があっても投影内容25および補正用投影画面66が壁5の上の同じ位置に留まることになる。以上のようにして、実施例1ではプロジェクタ部8自身に手振れ補正光学系がなくても、画像のシフトという簡単な画像処理によりプロジェクタにおける手振れ補正を電子的に行うことができ、かつ投影画面の枠部分のちらつきも防止することができる。
図5は、実施例1において台形歪補正が行われている場合の手振れ補正について説明するための投影画面図および対応する投影光路模式断面図である。なお、図5においても、図1から図4と同じ部分について同じ番号を付し、必要のない限り説明を省略する。図5(A)の投影画面図は、図4(A)と同じものであるが、煩雑を避けるため壁5の図示は省略している。また、図5(A)の投影画面図の右側には、この状態に対応する投影光路模式断面図を示す。なお、投影光路模式断面図としては、本来プロジェクタ付携帯電話2の壁5に対する向きを図示すべきものであるが、理解の便のため、投影の要部であるプロジェクタ部8以外の図示を省略している。図示から明らかなように、図5(A)は、プロジェクタ部8の投影光軸51が壁5に垂直の状態で正面から投影した場合である。
これに対し、図5(B)から図5(E)は、投影光軸51が壁5に対して上方に傾斜した投影状態において台形歪補正が行われている場合の手振れ補正を示し、図5(B)の状態と図5(D)の状態の間で手振れが起こっているモデルについて説明するものである。図5(B)は、手振れによる投影画面の往復の下端状態を示し、補正をしない場合は、図示のように投影画面13および補正用投影画面67に台形歪が生じ、補正用投影画面67の中の投影内容27もこれに伴って歪んでいる。
図5(C)は、図5(B)の補正用投影画面67に生じている台形歪について台形の長辺側を短辺側と同じになるよう縮小させる画像処理を行い、壁5上で矩形の補正用投影画面66を得るよう補正したものである。この補正に伴い、図5(C)では補正用投影画面66の中の投影内容25の歪も補正されている。さらに、補正用投影画面66の位置についても、図5(C)のように投影画面13の中央から上方寄りに平行移動し、投影画面13が下方に下がることに伴う補正用投影画面66および投影内容25の移動を補正している。
一方、図5(D)は、手振れによる投影画面の往復の上端状態を示し、補正をしない場合は、図示のように投影画面15および補正用投影画面69の台形歪がさらに大きくなり、補正用投影画面69の中の投影内容29もこれに伴ってさらに歪んでいる。これに対し、図5(E)は、図5(D)の補正用投影画面69に生じている台形歪について台形の長辺側が短辺側と同じになるよう図5(C)とは異なる比率で縮小させる画像処理を行い、壁5上で矩形の補正用投影画面66となるよう補正したものである。図5(C)の場合と同様、このような補正に伴って、補正用投影画面66の中の投影内容25の歪も補正されている。さらに、図5(E)の補正では、補正用投影画面66の位置についても投影画面15の中央から下方寄りに平行移動し、投影画面15が上方に上がることに伴う補正用投影画面66および投影内容25の移動を補正している。なお、図示を省略しているが、図5(B)の状態と図5(D)の状態の手振れの中心位置における補正では、当然ながら補正用投影画面66の位置は台形の投影画面の中央となる。
なお、図5(C)と図5(E)の間の手振れ補正においては、補正用投影画面66および投影内容25の上下の平行移動だけでなく、上記のように図5(B)の補正用投影画面67および図5(D)の補正用投影画面69からそれぞれ矩形の補正用投影画面66を得る際の上底と下底の伸縮についても異なった比率で台形歪補正を行っている。換言すれば、図5に示した台形歪補正時の手振れ補正においては、手振れに伴う補正用投影画面および補正内容の平行移動ブレだけでなく、手振れに伴う台形歪の程度の変化に起因する図5(B)と図5(D)の間の補正用投影画面および補正内容の変形ブレについても補正を行っている。
図6は、実施例1において台形歪補正が行われている場合の手振れ補正における投影面の変化への対応について説明するための投影画面図および対応する投影光路模式断面図である。なお、図6においても、図1から図5と同じ部分について同じ番号を付し、必要のない限り説明を省略する。図6(A)の投影画面図および投影光路模式断面図は、図5(B)と同じものであり、壁5への投影が行われている状態を示す。これに対し、図5(B)から図5(E)は、投影光軸51をさらに上方に傾けて天井53に投影を行った場合の手振れ補正を示し、図6(B)の状態と図6(D)の状態の間で手振れが起こっているモデルについて説明するものである。
具体的に説明すると、図6(B)は、天井53への投影における手振れによる投影画面の往復の下端状態(天井53の遠方側端状態)を示し、補正をしない場合は、図示のように投影画面17および補正用投影画面71に台形歪が生じ、補正用投影画面71の中の投影内容31もこれに伴って歪んでいる。図6(C)は、図6(B)の補正用投影画面67に生じている台形歪について台形の上底と下底を異なった比率で伸縮させる画像処理を行い、矩形の補正用投影画面66となるよう補正したものである。この補正に伴い、図6(C)では補正用投影画面66の中の投影内容25の歪も補正されている。さらに、補正用投影画面66の位置についても、図6(C)のように投影画面17の中央から上方寄り(天井53の手前側寄り)に平行移動し、投影画面17が下方に下がる(天井53の向こう側に遠のく)ことに伴う補正用投影画面66および投影内容25の移動を補正している。
一方、図6(D)は、天井53への投影における手振れによる投影画面の往復の上端状態(天井53の手前側端状態)を示し、補正をしない場合は、図示のように投影画面19および補正用投影画面73の台形歪がやや小さくなり、補正用投影画面73の中の投影内容33の歪もこれに伴ってやや小さくなっている。これに対し、図6(E)は、図6(D)の補正用投影画面73に生じている台形歪について台形の上底と下底を図6(C)の場合とは異なった比率で伸縮させる画像処理を行い、矩形の補正用投影画面66となるよう補正したものである。図6(C)の場合と同様、このような補正に伴って、補正用投影画面66の中の投影内容25の歪も補正されている。さらに、図6(E)の補正では、補正用投影画面66の位置についても投影画面15の中央から下方寄り(天井53の遠方側寄り)に平行移動し、投影画面19が上方に上がる(天井51の手前方向に近づく)ことに伴う補正用投影画面66および投影内容25の移動を補正している。
ここで注意すべきは、図5(B)から図5(E)と図6(B)から図6(E)の比較から明らかなように、壁5への投影の場合と天井53への投影の場合とでは、プロジェクタ部8において投影光軸51が水平から垂直に向かって傾きを増す方向に対する手振れ補正に違いが生じることである。まず第1の違いは、投影光軸51の傾きと補正用投影画面66および中の投影内容25のシフト方向の違いである。つまり、壁5への投影の場合、図5(C)と図5(E)からわかるように、投影光軸51の傾きが上方に向かって増すに従って、補正用投影画面66および中の投影内容25を台形の長辺側から短辺側にシフトさせるよう画像処理している。これに対し、天井53への投影の場合は図6(C)と図6(E)からわかるように、投影光軸51の傾きが上方に向かって増すに従って補正用投影画面66および中の投影内容25を台形の短辺側から長辺側にシフトさせるよう画像処理している。
第2の違いは、投影光軸51の傾きと台形歪補正のための台形の上底と下底の伸縮比率の違いである。つまり、壁5への投影の場合、図5(B)と図5(D)からわかるように、投影光軸51の傾きが上方に向かって増すに従って、矩形の補正用投影画面66を得るための台形の上底と下底の伸縮比率を高めるよう画像処理する必要がある。これに対し、天井53への投影の場合は図6(B)と図6(D)からわかるように、投影光軸51の傾きが上方に向かって増すに従って、矩形の補正用投影画面66を得るための台形の上底と下底の伸縮比率を低くするよう画像処理する必要がある。なお、床に投影を行う場合、投影光軸51の傾きはマイナスとなるが、その傾きの絶対値についての大小関係で考えると天井への投影に準じて理解できるので、床投影と壁投影における上記第1、第2の違いについての説明は省略する。
以上のような異なった画像処理を行うための切り換えは、壁5への投影を行うか天井(又は床)への投影を行うかによって手動操作で切り換えることも可能であるが、加速度センサ58の検知する投影光軸51の傾きの絶対値が所定角度(例えば45度)を超えると天井(又は床)への投影であると看做して自動的に切り換えるよう構成することも可能である。
図7は、図2の実施例1における制御部28の動作のフローチャートである。なお、図7のフローは主にプロジェクタの動作を説明するため、関連する機能を中心に動作を抽出して図示しており、一般的な携帯電話の機能等、図7のフローに表記していない制御部28の動作も存在する。図7のフローは、プロジェクタ付携帯電話2の操作部3による主電源のオンでスタートし、ステップS2で初期立上および各部機能チェックを行うとともに表示部4における画面表示を開始する。次いでステップS4では、メニューからの選択によりプロジェクタ付携帯電話2がプロジェクタモードに設定されているかどうかチェックする。そしてプロジェクタモードの設定が検知されるとステップS8に移行する。なお、既に述べたように、プロジェクタ付携帯電話2が図1(B)の状態で横持ちになっていない場合は、プロジェクタモードが表示部4にメニューに表示されないのでプロジェクタモードが選択されることはない。
ステップS2でプロジェクタモードの選択が検知されないときはステップS6の通常機能に移行する。ステップS6における通常機能は通話機能など携帯電話に通常備えられている機能である。なお、ステップS6における通常機能実行中であっても、プロジェクタ付携帯電話2が図1(B)の状態で横持ち状態となってプロジェクタモードがメニューに表示され、これが選択された場合は、割り込みがかかり、随時ステップS8に移行することができる。
ステップS8では、投影処理が行われる。この投影処理では、プロジェクタ部8の画面書き換えのためのスキャンレートに従う一回分の画面書き換えが実行され、表示データの投影が開始される。なお、ステップS8では、手振れ/台形補正部56からプロジェクタ部8に伝達されたとおりの表示データに基づく投影が実行されるものであり、手振れ/台形補正部56からどのような表示データをプロジェクタ部8に伝達するかの制御(つまり、表示メモリ30が保持する表示データをそのまま伝達するかまたはこれに手振れ補正や台形歪補正をかけて伝達するかの制御)は、ステップS10以降で実行される。
ステップS10では、制御部28が新規画像の表示を指示したかどうかがチェックされ、該当すればステップS12に進んで表示メモリを新規画像に更新してステップS14に移行する。一方新規画像の指示がなければ、直接ステップS14に移行する。ステップS14では、投影光軸51の角度の平均値が所定以上の傾斜を示していることを加速度センサ58が検知したか否かをチェックする。所定以上の平均傾斜が検知されたときはステップS16に進み、検知された平均傾斜角度に応じた台形歪補正のための画像処理を手振れ/台形補正部56に指示してステップS18に移行する。一方、所定以上の平均傾斜が検知されないときは直接ステップS18に移行する。
ステップS18では、手振れ補正モードが選択されているか否かがチェックする。そして、手振れ補正モードであればステップS20に進んで、投影画像枠を縮小するための画像処理を手振れ/台形補正部56に指示する。これは、図3(A)の投影画面10および投影内容22を図4(A)の補正用投影画面66および投影内容25のように縮小することに相当する。次いでステップS22において、タッチパネルにより補正停止の手動操作が行われているか否かをチェックする。この操作は、投影場所を変えるためにプロジェクタ付携帯電話2を振る際に不要な手振れ補正が行われないようにするためのものであり、例えば、投影場所を変えようとする前に操作されるとともにプロジェクタ付携帯電話2を振っている途中は操作を継続し、新たな投影場所を決めてプロジェクタ付携帯電話2を止めたときに操作を解除するようにする。
上記のような補正停止操作が行われていることがステップS22で検知されないときはステップS24に進み、ジャイロセンサ60および加速度センサ58によって手振れ等に基づくプロジェクタ付携帯電話の移動が検知されるか否かチェックする。そして移動が検知されればステップS26に進み、検知された移動が同一方向への連続移動か否かチェックする。このチェックは、投影場所を変えるためにプロジェクタ付携帯電話2を振る際に不要な手振れ補正が行われないようにするためのものであり、ステップS22において手動でこの措置が講じられない場合でも自動的に手振れ補正を停止するためのものである。
ステップS26において、検知された移動が同一方向連続移動でないことが確認された場合は、ステップS28に進み、台形歪補正中であるか否かのチェックを行う。そして台形歪補正中であればステップS30に進み、台形手振れ補正処理を行ってステップS32に移行する。ステップS30では、図5および図6で説明した台形歪補正中の手振れ補正において台形歪補正に特有の補正を担当するものである。これに対し、ステップS28で台形歪補正中であることが検知されない場合はステップS32に移行する。
ステップS32では、投影内容の手振れ補正および手振れに起因する枠のブレを補正する処理を行う。この処理は、図4から図6で説明した手振れ補正のうち、台形歪補正の有無にかかわらず共通の補正を担当するものである。なお、ステップS28からステップS32は理解の便のためステップを要素に分解して図示したが、これらを混然一体の総合的な処理として実行してもよい。また、要素分解して処理する場合は、ステップS28およびステップS30の前にステップS32を行うようにしてもよい。
ステップS32の手振れ補正/枠補正画像処理が終了するとステップS34に進み、主電源がオフされていないかチェックする。なお、ステップS22で補正停止操作が検知された場合またはステップS26で同一方向連続移動が検知された場合は、投影場所を変えるためにプロジェクタ付携帯電話2が振られている場合に相当するのでステップS28以降に進まず、手振れ補正を行わないが、これに代えてステップS36に移行する。また、ステップS24で移動が検知されない場合もブレ補正の必要がないのでステップS36に移行する。ステップS36では、図4(A)、図5(A)、図5(B)、図5(D)、図6(A)、図6(B)および図6(D)に示すように補正用投影画面66等が投影画面10の中心に来るようにセンタリングを行う。これは、新たな投影位置において、手振れが生じたときに種々の方向への補正余地を確保するためである。換言すれば、例えば新たな投影位置において図4(B)のような状態から手振れ補正を始めるとすると、さらに右下への手振れ移動があったとき、これを補正するために投影画面10の中で補正用投影画面66をさらに左上にシフトする余地がほとんどなくなる。これに対し、新たな投影位置で図4(A)のような状態に補正用投影画面66をセンタリングしておくと、これを図(B)のようにシフトすることが可能となる。手振れのない状態でも、プロジェクタ付携帯電話2が振られている場合と同様、今後生じうる種々の方向への手振れの補正余地を確保するためにセンタリングしておく。
ステップS36のセンタリングが終わるとフローはステップS34に移行する。また、ステップS18において手振れ補正モードが選択されていることが検知されない場合も直接ステップS34に移行する。さらに、ステップS6の通常機能が終了した場合もステップS34に移行する。ステップS36では、主電源がオフされたかどうかチェックする。そして、主電源がオンに維持されていればフローはステップS4に戻り、以下、プロジェクタモードが継続されている限り、画像書換えタイミング毎にステップS4およびステップS8からステップS36を繰り返して、投影および手振れ補正の実行を継続する。また、プロジェクタモードの選択がなければ通常機能を継続する。
図8は、図7のステップS32における手振れ補正/枠補正画像処理の詳細を示すフローチャートである。フローがスタートすると、ステップS42でジャイロセンサ60と加速度センサ58の検知結果に基づく手振れ移動量が演算される。そしてステップS44で初回補正かどうかがチェックされ、初回移動でなければステップS46に進んで過去の移動データに基づく移動傾向の分析が行われる。この分析結果に基づき、ステップS48では、ステップS42で演算された移動量に移動予測を加入してこれを修正する演算を行い、ステップS50に移行する。一方、初回補正であればステップS42の演算結果をそのまま採用して直接ステップS50に移行する。
ステップS50では、手振れ移動を補償するための画像シフト量の演算が行われる。次いで、ステップS52では、演算されたシフト量に基づいて補正用投影画面66の枠を投影画面10の枠内でシフトすることが可能かどうかチェックする。演算されたシフト量が枠シフト可能量を上回っていてシフトが不可能な場合、ステップS56に進んで画像優先モードに設定されているかどうかチェックする。画像優先モードは、投影画面枠の多少のブレを許容しても投影内容のブレを止めるよう補正するモードである。画像優先モードが設定されていなければステップS56に進み、枠優先モードが設定されているかどうかチェックする。枠優先モードは、投影内容投の多少のブレを許容しても影画面枠のブレを止めるよう補正するモードである。枠優先モードの設定が確認できない場合はステップS58に進み、演算シフト量と枠シフト可能量を平均したものをシフト量として採用してステップS60に移行する。この結果、演算されたシフト量が枠シフト可能量を上回っている分が投影画面枠のブレと投影内容のブレに分散され、一方のみに目立つブレが残ることが緩和される。
これに対し、ステップS52で演算されたシフト量が枠シフト可能量を上回っていないことが確認された場合、またはステップS54で画像優先モードの設定が確認された場合は演算シフト量をシフト量として採用してステップS60に移行する。一方、ステップS56で枠優先モードの設定が確認された場合は枠シフト可能量をシフト量として採用してステップS60に移行する。
ステップS60では、初回補正かどうかがチェックされ、初回補正でなければステップS66に進んで過去の移動データに基づく移動履歴の分析が行われる。この分析結果に基づき、ステップS68では、手振れ移動の中心がシフトしているかどうかチェックする。手振れ移動の中心は操作者が意図している投影位置であると考えられ、これが移動したならば、元の位置に戻すための画像補正は不適切となる。ステップS68で移動中心シフトが検知されるとステップS70に進み、ステップS70で移動した中心に追従するために画像処理シフト量を補正してステップS72に移行する。一方、ステップS60で初回補正であることが確認されたとき、またはステップS68で移動中心のシフトがないことが確認された場合は、ステップS58またはステップS62またはステップS64で決定されたシフト量をそのまま採用して直接ステップS72に移行する。ステップS72では、このようにして決定されたシフト量に基づいて補正用投影画面枠およびその中の補正内容をシフトする画像処理を手振れ/台形補正部56に指示してフローを終了する。
図10は、本発明の実施の形態に係るプロジェクタ付携帯電話の実施例3に関する手振れ補正を説明するための投影画面図である。なお、実施例3の外観およびブロック図については実施例1のものが援用できるので図示を省略する。実施例1の手振れ補正では、図4(A)の投影画面図に示すように、投影画面10のから少し内側に入ったところに補正用投影画面66を設定するとともに投影内容22を若干縮小し、投影内容25だけでなく補正用投影画面66についても手振れ補正を行うよう構成していた。これに対し、実施例3は、投影画面10および投影内容22の縮小を行わず、投影内容22についてだけ手振れ補正を行う。そして、投影画面については図3(C)矢印64で示すようなブレが生じてもそれによるちらつきが目立たないよう、図10に示すように投影画面10の枠をぼかすよう構成したものである。なお、図10の実施例では、実施例1との対比のために図3および図4に対応する部分には同じ番号を付す。
具体的に説明すると、図10(A)に示すように投影画面10にはその枠から少し内側に入ったところから枠に向かって徐々に暗くなるグラデーション68がかけられ、投影画面10と壁5との境界がぼかされている。図10(B)は、投影画面10が手振れによって右下にずれ、投影画面11状態となったとき、投影画面11の中での投影内容をブレとは逆の左上方向に画像処理でシフトさせ、投影内容22の位置に保持した状態を示す。図10(C)は、図10(B)とは逆に、図10(A)を基準としたときに投影画面10が手振れによって左上にずれ、投影画面13の状態となったとき、投影画面13の中での投影内容をブレとは逆の右下方向に画像処理でシフトさせ、投影内容22の位置に保持した状態を示す。以上のように、実施例3では、投影画面10の枠が手振れに伴って移動するが、投影画面10と壁5との境界がぼかされているのでそれによるちらつきが目立たないようになっている。このように、実施例3では、実施例1のように投影画面の枠のブレを補正する余地をとるために投影内容を縮小することなく、手振れによる枠ブレの問題を軽減している。
図11は、図10の実施例3における制御部28(図2援用)の動作のフローチャートである。なお、図11のフローチャートは図7における実施例1のフローチャートと共通するところが多いので同様のステップには同じステップ番号を付して説明を省略し、異なるところを太字で示す。また、図7には存在した台形補正に関するステップS14とステップS16および投影画面枠縮小に関するステップS20が削除されている。
図11における実施例3のフローチャートが図7における実施例1のフローチャートが異なるのは太字で示すようにステップS26に後続するステップおよびステップS36に後続するステップである。具体的には、ステップS26において同一方向連続移動でない移動が検知されたことが確認されるとステップS82に移行する。つまり、手振れ補正モードにおいて補正停止操作が行われていない状態で手振れ検知されたときはステップS26からステップS82に進み、検知された手振れによる往復移動の振幅を演算する処理を行う。次いでステップS84では演算された移動振幅に応じ投影枠のぼかし量(図10のグラデーション68の幅)を決定する。具体的には移動振幅が大きいほどグラデーションの幅を広くする。このようにして投影枠をぼかした上でステップS86における手振れ補正画像処理を行い、ステップS88に移行する。ステップS86の手振れ補正画像処理は図7のステップS32から投影枠のブレ補正に関する処理を除いたものであるが、追って具体的に説明する。
一方、ステップS22で補正停止操作が検知された場合、またはステップS24で移動が検知されない場合、またはステップS26で同一方向連続移動が検知された場合におけるステップS36のセンタリングに続き、ステップS90で投影枠にぼかしを入れない処理をしてステップS88に移行する。これらの場合は手振れ補正がないので、ぼかしによって鮮明な投影内容が表示される領域が狭まるのを防止するためである。
ステップS88では、パノラマ設定が行われているか否かをチェックする。パノラマ設定とは、広範囲の投影画像情報を記憶部26に記憶しておき、ジャイロセンサ60および加速度センサ58によって検出されるプロジェクタ付携帯電話2の動きに応じて表示メモリの表示データを書き換える設定である。換言すれば、望遠鏡を振ってパニングを行うと望遠鏡視野に入る風景の部分がシフトするのと同様にして、プロジェクタ付携帯電話2を振ってパニングすると投影画面に入る風景の部分がシフトするような投影演出が行われる設定である。そしてパノラマ設定が行われていることが検知されるとステップS92に移行し、パノラマ画像パニング処理を行ってステップS34に移行する。ステップS92の処理は、ジャイロセンサ60および加速度センサ58の検知データに応じ、記憶部26に記憶されている広範囲の投影画像情報の一部を切り取って表示メモリ30の表示を書き換える処理である。一方、ステップS88でパノラマ設定の検知がなければ直接ステップS34に移行する。
図11のフローは、図7のフローと同様にして、ステップS34で主電源のオフが検知されない限りステップS4からステップS36およびステップS82からステップS92を繰り返す。この繰り返しにおいて、初回にステップS86からステップS88を経由してステップ92に移行したときは手振れ補正を経ることになるが次回はパニングの検知によりステップS26からステップS36に移行するので実質的にはパニング中は表示内容がセンタリングされた画像が投影枠のぼかしなしで投影される。しかしながら、パノラマ設定であっても、パニングが停止されるとステップS26からステップS82に入ることができるので手振れ補正処理が行われる。
図12は、図11のステップS86における手振れ補正画像処理の詳細を示すフローチャートである。上記のように、図11のステップS86は、図7のステップS32から投影枠のブレ補正に関する処理を除いたものなので、同じステップには同じステップ番号を付して説明を省略する。図7と異なっているところのみを説明すると、図12では、常にシフト量を演算シフト量としてステップS50からステップS60に移行する。また、ステップS94は、画像シフト画像処理となっていて、グラデーションをつけてぼかされた投影枠と投影内容の相対関係が変化する画像処理となる。
以本発明の種々の特長の実施は上記の実施例に限るものではなく、その利点を享受できる限り、種々の変形が可能である。例えば、実施例1の投影枠補正において、図4では補正用投影画面66の設定の際、投影内容25についても相似形に縮小しているが、これに代えて投影内容22については縮小を行わず、補正用投影画面66から投影枠10にはみ出す部分をカットして投影するよう構成してもよい。
また、以本発明の種々の特長の実施は上記の実施例に限るものではなく、その利点を享受できる限り他の種々の形態で実施することが可能である。例えば、実施例においてはプロジェクタ部が携帯電話に内蔵されているが、単独の携帯型プロジェクタとして実施することも可能であるとともに、音楽プレーヤーなど他の種々の携帯型機器に内蔵して実施することも可能である。
さらに、各実施例の種々の特徴は個々の実施例に特有のものではなく、適宜交換や併用が可能である。例えば、実施例3において投影枠をぼかすようにした構成は実施例1に併用することができる。この場合、例えば実施例1の図8のステップ56で説明した枠優先モードの設定をせず枠のブレを補正しきれないときに有用である。より具体的には、図8のステップS62またはステップS58に至ったとき、補正しきれない手振れの大きさに応じた幅のグラデーションを投影枠につけるよう構成する。
図16は、本発明の実施の形態に係るプロジェクタ付携帯電話の実施例6に関する台形歪補正中の手振れ補正を説明するための投影画面図である。なお、実施例6の外観およびブロック図については実施例1のものが援用できるので図示を省略する。
図16(A)および図16(C)は、それぞれ、実施例1で説明した図5(C)および図5(E)の状態に対応するもので、図16(B)の状態を中心に、図16(A)と図16(C)の間で手振れが起こり、この手振れに対して補正用投影画面66および投影内容25をシフトするとともに台形ひずみ補正していることを図示している。具体的に述べると、上記のように図16(B)が手振れ中心の状態を示し、台形状に歪んだ投影画面76の中央に台形歪補正が行われた補正用投影画面66を設定し、その外側を黒地にして壁5との明暗差が小さい状態で投影が行われている。
図16(A)は、投影画面76が手振れによって下にずれて投影画面13の状態となったとき、補正用投影画面66および投影内容25をブレとは逆の上方向に画像処理でシフトさせ、投影内容25の位置に保持した状態を示す。ここで注意すべきは、投影画面76が手振れによって下にずれて投影画面13の状態となったとき、投影範囲のずれだけでなく台形歪状態にも変化が起こっていることである。つまり、図16(B)に対し、図16(A)では、傾斜が水平方向に近くなり、投影画面13の台形歪が少なくなる。実施例6では、これに伴い補正用投影画面66および投影内容25の台形歪補正における長辺側の縮小度合いも小さくなるよう補正が行われる。
もし、仮にこのような長辺側縮小率の補正を行わず、正用投影画面66および投影内容25を図16(B)から図16(A)の状態に単純に平行シフトしたとすると、図16(A)の状態では長辺縮小率が大きすぎることになり、補正用投影画面66および投影内容25に逆方向の台形歪が生じる。この台形歪はわずかなものであるが、手振れによりこれが短時間の間に繰り返されると、補正用投影画面66および投影内容25が微妙にブレを繰り返すことになる。実施例6において、補正用投影画面66および投影内容25のシフトとともに長辺側の縮小率に補正を加えるのはこのような事態を防止するためである。
図16(C)は、投影画面76が手振れによって上にずれて投影画面15の状態となったとき、補正用投影画面66および投影内容25をブレとは逆の下方向に画像処理でシフトさせ、投影内容25の位置に保持した状態を示す。さらに、図16(C)では、図16(B)に対して傾斜がよりきつくなり、投影画面15の台形歪が大きくなるので、上記のシフトに伴い、補正用投影画面66および投影内容25の台形歪補正における長辺側の縮小度合いも大きくなるよう補正が行われる。これによって、図16(A)と同様にして、手振れによる台形歪の変化により補正用投影画面66および投影内容25が微妙にぶれることを防止している。
図17は、上記の実施例6における台形歪補正時の手振れ補正を示すフローチャートである。上記のように実施例6は実施例1の機能の一部を具体化した一例を示すものであって、制御部28(図2援用)に関する基本動作に関しては基本的には図7のフローチャートを援用する。具体的に述べると、図17におけるフローチャートは、図7におけるステップS28からステップS32を置換するものであって、その他の機能は図7と共通である。また、図16のステップS42からステップS70までは、図12における実施例3のフローチャートと共通なので同じステップ番号を付して説明を省略する。
図7においてフローがステップS28に至ったとき、実施例17のフローがスタートしてステップS42に至る。そして、図12と同様にしてステップS42からステップS70に至ると、フローはステップS152に移行する。ステップS152では、台形歪補正中か否かがチェックされる。そして台形歪補正中であれば、ステップS154に移行して台形の上底と下底のいずれが短辺側に指定されているかの確認が行われる。次いでステップS156では、長辺側の現時点(シフト前の状態)での縮小率の上方を読出す。さらにステップS158では、ベクトルとしてのシフト量を読出し、ステップS160でシフト量に縦方向成分が存在するか否かチェックする。そして、シフト量に縦方向成分が存在すればステップS162に移行し、縦方向成分に基づいてシフトが行われた後の状態における台形歪が適切に補正されるよう、ステップS156で読出した長辺側縮小率を補正する。次いでステップS164に移行し、ステップS50で演算されて必要に応じステップS70補正されたシフト量に基づいて補正用投影画面枠および補正内容をシフトするとともにステップS162で補正した長辺側縮小率に基づいて台形補正を修正するための画像処理を手振れ/台形補正部56に指示してフローを終了する。
一方、ステップS152で台形歪補正中でないと判断されたとき、またはステップS160でシフト量に縦方向成分がないと判断されたときは、直接ステップS164に至る。この場合、ステップS164では、手振れに対応する台形補正の修正は行われず、ステップS50で演算され必要に応じステップS70補正された手振れ補正用のシフト量に基いて、補正用投影画面枠および補正内容のシフトのみが行われる。
以本発明の種々の特長の実施は上記の実施例に限るものではなく、その利点を享受できる限り、種々の変形が可能である。例えば、実施例6に示した台形補正中の手振れ補正において補正用投影画面枠および補正内容のシフトとともに長辺側縮小率を修正する構成は、上下方向の手振れだけでなく、ジャイロセンサの出力を利用することにより左右方向の手振れに対しても適用することが可能である。
また、図1の実施例1や図9の実施例2において、投影内容24、124がプロジェクタ付携帯電話2、102の大画面表示部4、104に、投影内容22、122として表示され、これをモニタしながら、投影画面10、110の説明や操作を行うことを可能としている。しかしながら、投影画面における表示と大画面表示部における表示は同一である場合に限るものではない。例えば、大画面表示部には投影画面に表示されないコメント等をスーパーインポーズし、このコメントを見ながら投影画面のおける表示の説明を行うことが可能である。さらには、大画面表示部には投影画面は全く異なる表示内容(例えば、次に投影すべき表示内容)を表示するようにしてもよい。
ここで、図7および図11のステップS22からステップS26に示す手振れ補正画像処理の停止およびステップS36に示すセンタリングについてまとめる。ステップS22に示すように、手振れ補正画像処理は手動操作により停止可能であり、投影場所を変えようとする前に手動操作を開始するとともにプロジェクタ付携帯電話2を振っている途中は操作を継続し、新たな投影場所を決めてプロジェクタ付携帯電話2を止めたときに操作を解除するようにして、この間、手振れ補正画像処理が行われないようにする。なお、ステップS24に示すように、移動そのものが検知されないときも当然ながら手振れ補正画像処理は行われない。またステップS26に示すように同一方向への連続移動が検知されたときも、投影場所を変えるためにプロジェクタ付携帯電話2を振っていると考えられるので自動的に手振れ補正が停止される。そして手振れ補正画像処理が停止されたときにはステップS36に示すように、補正用投影画面66等が投影画面10の中心に来るようにセンタリングを行い、新たな投影位置において、手振れが生じたときに種々の方向への補正余地を確保する。なお、図11のステップS90に示すように手振れ補正画像処理が停止されたときには投影枠ぼかし処理も行われない。図11のステップS92に示したパノラマ画像パニング処理においても基本的には手振れ補正画像処理は停止されるが、その詳細は後述する。
図18は、図11に示す本発明の実施例3の基本フローにおけるステップS92のパノラマ画像パニング処理の詳細を示すフローチャートである。すでに述べたとおり、パノラマ設定は、広範囲の投影画像情報を記憶部26に記憶しておき、ジャイロセンサ60および加速度センサ58によって検出されるプロジェクタ付携帯電話2の動きに応じて表示メモリの表示データを書き換える設定である。そして、ステップS92のパノラマ画像パニング処理では、ジャイロセンサ60および加速度センサ58の検知データに応じ、記憶部26に記憶されている広範囲の投影画像情報の一部を切り取って表示メモリ30の表示を書き換えていく。これによって、望遠鏡を振ってパニングを行うと望遠鏡視野に入る風景の部分がシフトするのと同様にして、プロジェクタ付携帯電話2を振ってパニングすると投影画面に入る風景の部分がシフトするような投影演出が行われる。
図18に示すパノラマ画像パニング処理がスタートすると、まず、ステップS172で、広範囲の投影対象の投影データ群を呼び出す。投影対象は通常複数の画像データを繋ぎ合わせて表現される。次いで、ステップS174で投影対象範囲の中央の画像データが選定され、ステップS176で選定された画像の中央部分がトリミングされて表示メモリの表示データとされる。
次いで、ステップS178でプロジェクタ付携帯電話2の移動の有無が検知される。検知される移動は、本来のプロジェクタ付携帯電話2を振るパニング動作がするとパニングだけでなく手振れによるものも含まれる。そして移動が検知されるとステップS180で通常の手振れ補正画像処理は停止される。そしてステップS182で平均移動方向が演算され、ステップS184で平均移動方向に上下方向の成分が含まれているか否かチェックする。手振れであれば平均的に上下方向の移動成分はゼロと考えられる。そして平均移動方向に上下成分がなければ、パニング動作は水平方向にのみ行われていると考えられるのでステップS186に進み、上下方向についてのみ手振れ補正画像処理を行い、ステップS188に移行する。一方、ステップS184で平均移動方向に上下成分が検知されると上下方向にパニングが行われていると考えられるので上下方向の手振れ補正画像処理は行わずステップS188に移行する。
ステップS188では、平均移動方向に水平方向の成分が含まれているか否かチェックする。手振れであれば平均的に水平方向の成分はゼロと考えられる。そして平均移動方向に水平成分がなければ、パニング動作は上下方向にのみ行われていると考えられるのでステップS190に進み、水平方向についてのみ手振れ補正画像処理を行い、ステップS192に移行する。一方、ステップS188で平均移動方向に水平成分が検知されると水平方向にパニングが行われていると考えられるので水平方向の手振れ補正画像処理は行わずステップS192に移行する。
パニング画像処理は一つの画像内ではスクロール処理によって行われ、一つの画像端の限界に達すると隣接する画像に連続するよう画像データの差し替えが行われる。この処理のため、ステップS192では、画像端限界に達しているか否かがチェックされ、限界に達していることが検知されるとステップS194に進んで隣接する画像に連続するよう画像データを差し替えてステップS196に移行する。一方、ステップS192で画像端限界に達していることが検知されない場合はステップS198に進んで同一画像ないでパニングの動きを補償するスクロール処理を行ってステップS196に移行する。
一方、ステップS178で移動が検知されないとき(パノラマ画像パニング停止中)はステップS200に進み、通常の手振れ補正画像処理を行ってステップS196に移行する。ステップS196ではパノラマ設定を終了する操作が行われたか否かチェックし、操作が検知されないときはステップS178に戻り、以下、ステップS196でパノラマ設定を終了する操作が検知されない限りステップS178からステップS200を繰り返す。そして、ステップS196でパノラマ設定を終了する操作が検知されればフローを終了し、図11のステップS34に移行する。