JP2004078121A - Device, method, and program for display correction and recording medium with recorded display correcting program - Google Patents

Device, method, and program for display correction and recording medium with recorded display correcting program Download PDF

Info

Publication number
JP2004078121A
JP2004078121A JP2002242089A JP2002242089A JP2004078121A JP 2004078121 A JP2004078121 A JP 2004078121A JP 2002242089 A JP2002242089 A JP 2002242089A JP 2002242089 A JP2002242089 A JP 2002242089A JP 2004078121 A JP2004078121 A JP 2004078121A
Authority
JP
Japan
Prior art keywords
display
correction
user
range
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2002242089A
Other languages
Japanese (ja)
Inventor
Masashi Hirozawa
広沢 昌司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2002242089A priority Critical patent/JP2004078121A/en
Publication of JP2004078121A publication Critical patent/JP2004078121A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To make display contents easy to see without troubling a user by correcting distortion that the display contents have when a display means is obliquely viewed. <P>SOLUTION: The sight direction of the user to a display surface is obtained (S3) by using a sensor etc. The display contents are corrected (S4) and displayed (S5) so that the display contents can be viewed in the obtained sight direction of the user as well as viewing the display contents on a display surface head-on. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、ユーザーが表示手段を斜めから見た時に視覚される表示内容の歪を、ユーザーと表示手段の位置関係を変えることなく、ユーザーが表示手段に正対して見ているかのような状態に表示内容を補正して表示する表示補正装置、表示補正方法、表示補正プログラム、および表示補正プログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
通常、文書などの印刷物や街頭のポスター、TV、パソコン(パーソナルコンピュータ)のモニター、文書などを電子的にディスプレイに表示させる表示装置などは、一方的に表示を行うだけであり、ユーザーの位置や方向に応じて、表示内容を自動的に見易くするような表示制御は行われていない。
【0003】
これに対して、特開平10−42331号公報では、表示部の水平面に対する角度に応じて表示濃度を制御する方法が述べられている。これによって、例えば液晶ディスプレイなど、見る方向によって視覚できる濃度が変わってしまうようなディスプレイであっても、表示濃度が表示部の水平面に対する角度に応じて調節されるので、どの角度でも見やすい表示を行うことができる旨が記載されている。
【0004】
また、特開平10−260666号公報には、表示手段の表示画面と、表示画面に相対する人の顔との距離を距離センサで計測し、計測した距離に応じて、表示画面に表示する表示情報の表示サイズを変更することができる表示制御装置が記載されている。
【0005】
【発明が解決しようとする課題】
ところが、特開平10−42331号公報では、表示部の水平面に対する角度に応じて表示濃度を変えているが、これは主にディスプレイの特性に端を発する問題の解決を図ろうとするものであり、ディスプレイを斜めから見た場合の見にくさを、表示濃度の変更だけで解消することはできない。なぜなら、ディスプレイを斜めから見た場合の見にくさには、他にもディスプレイの特性に寄らない共通した原因があるためである。それはディスプレイを斜めから見た場合に知覚される歪である。
【0006】
図11は、ある文書を正面から見た場合の図だが、これを斜めから見た場合、図12のように見える。それぞれの文字が横方向に歪んで縮んでしまっていて、非常に見にくいという問題がある。
【0007】
また、図12では右端部分の高さが左端部分の高さに比べて小さくなっている。これは透視変換(遠近法)による効果であるが、これによって、それぞれの文字が横方向だけでなく、縦方向にも歪んで縮んでしまい、非常に見にくいという問題がある。文字などが小さくなるだけでなく、図なども歪んでしまい、例えば90度に直交していた部分が透視変換効果により、直交していないように見えてしまうという問題がある。
【0008】
表示手段を回転したり、持ち運びできたりすれば解決することができる場合もあるが、例えば冷蔵庫や壁などに表示手段が埋め込まれていて、大きくて/重くて/固定されていて回転や持ち運びが困難である場合などがある。
【0009】
その場合、ユーザーが表示手段の正面まで行って見るという手間がかかるという問題がある。例えば、冷蔵庫や壁に貼られた/表示されたレシピを見ながら料理したいと思っても、調理台からは斜めで見にくいため、レシピの正面に移動して見て、また調理台に戻る、などという面倒臭いことを繰り返さなければいけない。
【0010】
また、たとえ回転や持ち運びが可能であったとしても、その手間などが問題となる。例えば、本や資料を手に持たずに、机やベッドなどの上に広げて斜め方向から読むということは日常行われていることである。これは手に持つのが疲れるとか、手で何か他の作業をしながら読みたいなど、手に持つことが好ましくない様々な理由があるからである。
【0011】
なお、特開平10−260666号公報に記載された表示制御装置は、人の顔と相対する表示面との距離に応じて表示情報の表示サイズを変更するに過ぎないので、表示面を斜めから見たときの見にくさについては全く考慮されていない。
したがって、表示面に付属した距離センサから等距離にある球面上で人の顔が移動する限り、距離センサが距離を計測できたとしても、表示制御は何も行われないことになる。この結果、表示面を斜めから見るユーザーは、図12で説明したのと同様に、歪んだ表示内容を見ることしかできない。
【0012】
本発明は、ユーザーを煩わせることなく、表示手段の表示面を斜めから見た場合の表示内容の歪みを補正して見やすくすることを課題とする。
【0013】
【課題を解決するための手段】
本発明に係る表示補正装置は、上記の課題を解決するために、情報を表示する表示手段の表示面に対するユーザーの視線方向の情報を得る方向検出手段と、表示面にユーザーが正対した場合を基準として、前記方向検出手段から得た視線方向から表示面を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正手段と、を有することを特徴とする。
【0014】
ここで、「ユーザーの視線方向」とは、表示面を基準とした相対的なものであり、絶対座標系における絶対的な方向ではない。またその方向は、「右に何度」というような精度の高い情報の場合もあるし、単に「左」「正面」「右」などという精度の粗い情報の場合もある。また方向は、左右(図2参照。表示面にユーザーが正対した場合を基準とすれば表示手段の左右方向に振れる回転をヨーと言い換えることができる)の軸だけでなく、上下(ピッチ)や回転(ロール)の軸から1軸が選択される場合もあり、また、それらが2軸、3軸と組み合わされる場合もある。
【0015】
方向検出手段は、何らかの情報を元に表示面に対するユーザーの視線方向の情報を得ることができる手段である。元にする情報を得る方法として、例えば、何らかのセンサーを利用する方法が考えられる。センサーから得られる情報から方向が直接得られる場合もあるし、得られる情報を元に処理して方向を算出する場合もある。
【0016】
センサーとしては、例えば非接触タイプでは、超音波センサー、赤外線センサー、熱センサー、レーザーセンサーなどが考えられる。カメラで撮影した画像に対して画像処理を行うことでも、ユーザーの視線方向の情報が得られる。接触タイプとしては、例えば、床に敷くマットなどに仕込んだ圧力センサーや静電気センサーなどが考えられる。視線方向を得る処理としては、例えば、センサーから得られる信号から、検出範囲内のユーザーの有無が特定できるので、ユーザーの存在する範囲が特定できる。その結果、表示手段とユーザーの存在する範囲との位置関係から、視線方向を算出することができる。
【0017】
センサーを利用しない方法としては、ユーザー自身がどの方向にいるかをボタンや音声などの手段を用いて直接伝えるという方法もある。あるいは周囲の機器の使用状況などからユーザーの存在位置を推測するという方法なども考えられる。
【0018】
また、「表示面にユーザーが正対した場合」とは、ユーザーが表示面を見た時の視線が表示面と垂直に交わり、かつ、視線の軸周りの回転(ロール)が無い場合を指す。視線の軸周りの回転(ロール)が無い場合とは、表示面の上下方向とユーザーの顔の上下方向が同じになる場合である。
【0019】
また、「歪」とは、表示手段にユーザーが正対した場合に見える表示内容と、現在のユーザーの視線方向から見た場合に見える表示内容との差である。例えば、紙面を左斜め方向から見た場合、紙面は左右に縮んで見える。これは透視変換効果が原因であり、厳密にはあらゆる場合において起きているが、紙面が相対的にそれほど大きくない場合は、左右方向以外の歪は無視して、左右方向のみが縮んだ歪として扱うことも可能である。
【0020】
但し、基準状態を、表示手段にユーザーが正対した場合でなく、いずれかの方向から見た状態に設定する場合は、その状態の時に見える表示内容との差を歪とする場合もある。また視線の軸周りの回転(ロール)は、回転処理によって戻すことができるので、拡大縮小や表示面に対する視線方向の角度の変化が起きる訳ではないが、正対した状態との差という意味で、ここでは広義として歪の中に含まれるとする。
【0021】
「歪を無くして、あるいは軽減して表示内容を補正する」とは、歪んだように見える表示内容を、表示面に対するユーザーの視線方向はそのままでありながら、表示内容の見た目は正対した時のように、あるいはそれに近づけて見せるようにすることを言う。完全に正対したようにした場合が「歪を無くした」場合であり、正対した状態に近づけた場合が「歪を軽減した」場合である。
【0022】
例えば、表示手段の表示面に対する垂直線方向(0度)から60度の角度方向にユーザーが存在した場合、それを0度から見た正対状態に見せることが「歪を無くす」ことであり、例えば30度の角度方向から見たように見せることが「歪を軽減する」ことである。但し、0度や30度の角度方向から見たように正確に見せる場合だけでなく、それに近い場合、例えば、逆透視変換ではなく、左右など1軸方向だけの拡大縮小を行った場合などの擬似的な処理も補正に含む。また、ヨーやピッチ方向だけでなく、ロール方向の補正も含む。
【0023】
そこで、本発明に係る表示補正装置によれば、方向検出手段によって表示面からのユーザーの視線方向の情報が得られる。得られた視線方向から表示面中の表示内容を見た時に見える像は、表示面にユーザーが正対した場合に見える像とは異なり、その方向分だけ歪んでいる。そこで、得られた視線方向から見た時に、その歪が無くなる、あるいは軽減されるように、逆透視変換やその他の拡大縮小、回転、再配置などの処理によって表示手段に表示される表示内容を補正し、それを表示手段で表示する。すなわち、表示手段を駆動するのに用いる表示データを加工する。
【0024】
これによって、ユーザーが正対した状態以外の視線方向から表示面を見た時に、その歪が無くなる、あるいは軽減されるように感じられるという効果が出てくる。また、ユーザーが表示手段に正対した状態で無い場合、表示手段を回転させたり、移動させたり、表示手段の正面近くにユーザーが移動するといった操作や動作をせず、表示手段の向きを変えた状態を保つ保持動作なども必要とせず、正対した状態あるいはそれに近い状態の表示内容を見ることができるという効果が出てくる。
【0025】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、表示内容全体を補正単位として補正することを特徴とする。
【0026】
「補正単位」とは、補正を行う対象の範囲であり、通常、同じ補正式あるいは同じ補正パラメータを使って補正される。
【0027】
「表示内容全体を補正単位として補正する」とは、表示内容全体が一枚の画像であるかのように扱い、画像全体の範囲を同じ補正式あるいは同じ補正パラメータを使って補正することである。画像(表示内容)の一部分の範囲内だけを補正することではない。また、画像(表示内容)を複数の領域に区分し、その区分した領域毎に補正式や補正パラメータを使った演算処理を行い、領域毎の補正結果を用いて表示内容を再構成することによって、表示内容全体を補正することではない。
【0028】
例えば、補正後の画像の各位置の画素に対応する、補正前の表示内容の画像の位置を補正手段で求める。補正前の表示内容の画像上で、求めた位置の画素値を得て、その画素値を先の補正後の画素の位置の画素値とする。補正後の画素の位置を順にずらして補正後の画素値を同様に求めることで、表示内容全体を補正することができるようになる。
【0029】
これにより、表示内容のデータ構造に依存せず、表示できるものならばどんなデータであっても補正することができる効果が出てくる。
【0030】
本発明に係る表示補正装置は、上記の課題を解決するために、表示される情報が一つ以上の表示対象要素からなり、前記補正手段において、個々の表示対象要素を補正単位として補正することを特徴とする。
【0031】
「表示対象要素」とは、表示の対象となる個々の要素であり、例えば、個々の文字や画像などが相当する。表示内容は、通常、複数の表示対象要素の配列または集合として構成される。
【0032】
「個々の表示対象要素を補正単位として補正する」とは、個々の表示対象要素の範囲内を補正することである。言い換えれば、ある表示対象要素を構成する各画素に対してだけ、補正式や補正パラメータを使った演算処理を行うことである。ここでは、補正後の表示対象要素中の各画素の値は、表示内容全体を補正単位として補正した画像内で対応する位置の画素の値と、変わらないとする。
【0033】
個々の表示対象要素以外の範囲、例えば表示対象要素の周囲の余白を構成する画素については本発明の補正処理対象ではない。しかし、例えば、ある表示対象要素を拡大補正した結果、余白を構成していた画素が、拡大補正された表示対象要素の画素に置き換わるように補正されるのは当然である。
【0034】
上記の構成によれば、補正手段は、1つの表示対象要素に対する補正のパラメータを決めて、補正を行う。補正方法自体は、先に説明した補正方法と同じでよいが、表示対象要素の位置などによって、各表示対象要素、もっと細かく言えば、各表示対象要素内の各画素の補正に使われるパラメータなどは異なってくる場合がある。パラメータとしては、例えば、拡大縮小率、回転量や、座標系を変換する行列などがある。全ての画素に対して一律に拡大縮小する場合などは、パラメータは同じだが、逆透視変換などする場合は、画素の位置によって、補正のパラメータは変わってくる。
【0035】
これを個々の表示対象要素について繰り返すことで、個々の表示対象要素の補正が行われる。なお、補正された後の表示対象要素の位置は、表示内容全体を補正する時の補正結果と重なる位置にする場合と、配置し直す場合とがある。
【0036】
これによって、表示内容全体を補正するより、補正対象となる範囲が少なくなる可能性が高まるので、処理量が減る可能性が高まるという効果が出てくる。
【0037】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0038】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、表示手段の表示範囲の大きさとの関係で、表示対象要素の位置を配置し直すことを特徴とする。
【0039】
個々の表示対象要素の補正の仕方は上述した方法と同様である。個々の表示対象要素を補正した後、それを配置し直す(「再配置」、「再レイアウト」などとも呼ぶ)。配置は、ある決まった方法に則って行われる。通常は、表示内容が意味的に途切れず、かつ、表示手段の横幅あるいは縦幅の中に収まりきるように配置する。WWW(World Wide Web)ブラウザの個々の文字や画像を表示対象要素と考えた場合、WWWブラウザのウィンドウの幅や文字の大きさを変えた時に、文字や画像を再配置する方法は、典型的な例である。再配置の処理は、個々の表示対象要素を補正しながら逐次的に行ってもよいし、全ての表示対象要素を補正した後にまとめて行ってもよい。
【0040】
表示内容自体の量が多くて、表示手段内に収まらないことは元々ありえるが、その場合は通常、縦あるいは横に表示内容をスクロールしたりページを切り替えたりして読む。その時、表示手段内に表示されている範囲では、意味が途切れないようになっているのが普通である。
【0041】
行を使って分かりやすく説明すれば、「表示手段内に収まらない」とは、全部の行は表示されていないということであり、「表示手段内に表示されている範囲では、意味が途切れない」とは、表示されている範囲の行は、1行の文字全てが表示されているということである。1行の幅が表示手段幅より大きくて、半分しか表示されないということはなく、表示手段幅を超える分の文字は、次の行に折り返されて表示される。
【0042】
もしスクロールバーを使って表示する場合、スクロールバーは縦あるいは横の1方向しか表示されない。縦と横の両方にスクロールバーが出ることはない。この場合、表示手段内に表示されている範囲を見ると、全ての行は表示されてはいないが、その一部は意味的に途切れなく表示されているので、理解しやすい。スクロールバーなどを使って表示範囲を縦あるいは横に変更するだけで、全ての行を見ることもできる。
【0043】
単に表示内容全体を補正する場合は、拡大されて表示手段内に収まらない場合が出てくる可能性がある。個々の表示対象要素の補正後の位置を、表示内容全体を補正する時の補正結果と重なる位置にする場合も、同様に表示手段内に収まらない場合が出てくる可能性がある。
【0044】
表示内容全体を補正した結果を、スクロールバーを使って表示するとした場合、縦と横の両方にスクロールバーが出る可能性もある。この場合、表示手段内に表示されている範囲を見ただけでは、文章などが途切れてしまう。先の行の例で言えば、行の一部しか表示されなくなってしまう。従って、表示内容が非常に理解しにくくなってしまう。文章などを途切れなく読もうとしたら、表示範囲を縦や横に変更する必要があるが、縦と横の両方のスクロールバーを操作せねばならず、しかも毎行その操作を行わなければならなくなるので、操作も非常に手間がかかる。
【0045】
そこで、補正後の表示対象要素を表示手段の表示範囲の大きさとの関係で配置し直すことで、表示手段の横幅あるいは縦幅の中に収まりきるように配置することができる。すなわち、表示手段内に表示されている範囲では、意味が途切れないように表示させることができるようになり、理解し易くなる効果が出てくる。
また、スクロールバーなどを使う場合も、縦あるいは横の1方向だけで済むので、縦と横の両方にスクロールバーがある状態に比べて、操作が容易となる効果が出てくる。
【0046】
また、例えば、補正が1方向、例えば横方向に拡大する処理の場合、個々の表示対象要素を横に拡大した大きさのものとして扱うと、結局、表示対象要素をレイアウトする処理に変わりはなくなる。単に個々の表示対象要素の横幅などが大きくなっているだけである。レイアウト処理結果は異なるが、レイアウトする時の処理手順は同じである。従って、再レイアウトの処理は正対した時にレイアウト処理する時と同じ処理方法を使うことができる効果が出てくる。
【0047】
また表示に関しても、例えば表示対象要素が文字の場合、横に拡大した文字の画像を生成して、その画像の表示をOS(Operating System)に実行させるよりも、横の拡大率が指定された文字の表示をOSに実行させた方が、多くのOSでは高速に実行できるという効果も出てくる。
【0048】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0049】
本発明に係る表示補正装置は、上記の課題を解決するために、前記方向検出手段において、ユーザーの視線方向の情報を、3次元空間の3軸のうち1軸または2軸の回転に関して得ることを特徴とする。
【0050】
そこで、本発明に係る表示補正装置によれば、ユーザーの視線方向としては、3次元空間の3軸回りの回転があるが、このうち1軸あるいは2軸だけの情報を得ればよいことになる。
【0051】
ユーザーの視線方向は、例えばセンサーなどによって得ることができるが、3軸よりは2軸、2軸よりは1軸だけの情報を得る方が、必要なセンサーの数を少なくできたり、より安価なセンサーを使用することができるようになる。
【0052】
これによって、ユーザーの視線方向の情報を得る為のコストを抑えることができる効果が出てくる。
【0053】
なお、2軸の回転に関する情報としては、上下方向(ピッチ)、左右方向(ヨー)、視線回り方向(ロー)の3軸回り方向の内、上下方向(ピッチ)および左右方向(ヨー)を選択すると、表示面を斜めから見たときの歪を補正することができ、補正効果が大きくなる。
【0054】
但し、3軸回り方向の内、どの1軸または2軸の組み合わせを選択するかは、補正処理などにかかるコストと補正効果、使用パターン、目的などを考慮して決めればよい。また、表示面に対するユーザーの視線方向を統計的に検出し、出現頻度の高い視線方向に合わせて、1軸または2軸の組み合わせを選択してもよい。
【0055】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0056】
本発明に係る表示補正装置は、上記の課題を解決するために、前記方向検出手段において、表示手段とユーザーの間の距離の情報を得ることを特徴とする。
【0057】
ここまでは、視線方向の情報を得て歪みを補正する構成を説明したが、歪は透視変換効果により発生しており、視線方向が一緒でも距離が異なれば歪具合(透視変換効果)も変わってくる為、補正処理において、視線方向の情報だけでは完全な補正処理を行うことはできない。
【0058】
そこで、上記の構成により、方向検出手段が、表示手段とユーザーの間の距離の情報も得て、補正手段が、視線方向の情報に加えて距離の情報も使うことで、歪を完全に除去したり、処理を多少簡易にして、完全には除去しないまでも歪を軽減したりすることができるようになる。
【0059】
これによって、歪を完全に除去したり、より軽減したりすることができる効果が出てくる。
【0060】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0061】
本発明に係る表示補正装置は、上記の課題を解決するために、所定の位置範囲にユーザーが存在するかどうかの情報を得る存在検出手段を有し、前記方向検出手段において、前記存在検出手段からの情報に基づきユーザーの視線方向を得ることを特徴とする。
【0062】
「所定の位置範囲」とは、存在を検知する方法にもよるが、例えば、何らかのセンサーを使った場合、そのセンサーが検知する範囲ということになる。また、センサーなどのような直接的な検知ではなく、間接的な検知の場合、例えば、周囲の機器の使用状況などから推測する、などという場合、その機器の利用可能範囲や操作範囲ということになる。
【0063】
「存在検出手段」は、何らかの情報を元に所定の位置範囲にユーザーが存在するかどうかの情報を得ることができる手段である。元にする情報を得る方法として、例えば、直接的な検知としてのなんらかのセンサーを利用する方法や、間接的な検知としての周囲の機器の使用状況などから推測する方法などが考えられる。
【0064】
センサーとしては、例えば非接触タイプとしては、超音波センサー、赤外線センサー、熱センサー、レーザーセンサーなどが考えられる。カメラで撮影した画像に対して画像処理を行うことでも、元にする情報が得られる。接触タイプとしては、例えば、床に敷くマットなどに仕込んだ圧力センサーや静電気センサーなどが考えられる。
【0065】
存在を検出する処理としては、例えば、センサーから得られる信号から、検出範囲内の物体の有無が特定できる。物体が検出されればユーザーがそこに存在すると判断すればよい。センサーを使わず、周囲の機器の使用状況などから推測する場合は、例えば、表示面に対する位置が把握されているガスコンロの火が点いたとしたら、ガスコンロの周囲にユーザーが存在すると推測する、などの処理となる。
【0066】
あるいは、ユーザー自身がどこにいるかをボタンや音声、発信機などの手段を用いて直接伝えるという方法もある。
【0067】
そこで、本発明に係る表示補正装置によれば、存在検出手段から所定の位置範囲にユーザーが存在するかどうかが得られ、これを方向検出手段に渡し、方向検出手段では、所定の位置範囲に存在するかどうかで大まかなユーザーの視線方向や距離を得ることができる。方向検出手段から得られるこの視線方向や距離を元にして補正処理を行う。
【0068】
これによって、ユーザーの視線方向を、所定の位置範囲にユーザーが存在するかどうかの情報から、ある程度の誤差で簡易的に推定することができるという効果が出てくる。正確な視線方向を求めようとすると、レーダーのような高価な機器が必要になってしまうかもしれないが、所定の位置範囲にユーザーが存在するかどうかなら、安価なセンサーなどを使って実現することができるという効果もある。
【0069】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0070】
本発明に係る表示補正装置は、上記の課題を解決するために、前記存在検出手段において、表示手段の正面方向付近にユーザーが存在するかどうかの情報を得ることを特徴とする。
【0071】
上記の構成によれば、表示手段の正面方向付近にユーザーが存在するかどうかを存在検出手段から得ることで、存在する場合はほぼ正面から見ていて、存在しない場合は斜めの方向から見ている可能性が高い。従って、存在する場合は補正を全くあるいはほとんど行わず、存在しない場合は斜め方向から見ていると推測して、その視線方向の補正を行う。
【0072】
またもし、違う場所や遠くの場所、表示手段の横や裏側などにユーザーが存在し、表示手段付近に存在しない為に正面付近に存在しないと判断されたとしても、その場合はユーザーが表示手段を見ようとは思っていない可能性が高いので、補正処理を行っていたとしても見ていないのだから何の問題もない。
【0073】
これによって、非常に簡易的にユーザーの視線方向を推定することができるという効果が出てくる。
【0074】
また、所定の位置範囲にユーザーが存在するかどうかの情報を得る為に、色々なセンサーなどを複数、色々な方向や場所に用意するのはコストや手間、処理が大変であるが、正面にいるかいないかだけを得るならば、存在検出手段を表示手段(装置)に組み込むだけで済むので、これらのコストや手間、処理を低く抑えることができる効果も出てくる。
【0075】
なお、補正の仕方によっては、効果が弱い場合もある。例えば、表示面を斜め方向から見た場合の補正方法が左右対称(あるいは上下対称)で無い場合などである。左右対称でない補正方法の例としては、逆透視変換などがある。逆透視変換では、ユーザーから見て、表示内容の内、遠くに位置する部分は相対的により大きく、近くに位置する部分は相対的により小さくなるような補正を行う。これにより、遠くに位置する部分と近くに位置する部分が、同じような大きさに視覚できるように補正がされる。
【0076】
しかし、左斜め用に逆透視変換を使って補正した表示内容を右斜めから見ると、補正前の表示内容の視覚結果と比べると、遠くに位置する部分はより小さく、近くに位置する部分はより大きく視覚されてしまう。これは逆効果である。
【0077】
一般に、正しいユーザーの視線方向で補正される場合、逆透視変換による補正効果の方が、縦横を拡大縮小するだけの補正効果よりも高い。しかし、ユーザーに対して、表示手段が相当大きくなければ、補正効果の差はそれほど大きくは無い。つまり、逆透視変換であっても、縦横の拡大縮小と似た処理結果が得られるということである。逆透視変換の補正効果の内、縦横の拡大縮小と同等の補正効果による正の補正効果と、上述した逆効果による負の補正効果を比べれば、正の補正効果の方が一般に勝る。従って、逆透視変換などの対称でない補正処理を行っても、一般に、効果はある。
【0078】
なお、上述したように、本構成の場合は、縦横の拡大縮小などの対称な補正処理と組み合わせることで、簡易な構成で視覚的な歪を補正できるという効果を一層高めることができる。
【0079】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0080】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、リアルタイム、あるいは所定時間間隔毎、あるいは方向検出手段から得られる視線方向が変わった時に補正を行うことを特徴とする。
【0081】
「リアルタイム」とは、常に視線方向の取得と補正が行われている状態をさすが、実装上は非常に細かい時間周期で視線方向の取得と補正が行われる状態をさす。「所定間隔毎」は、リアルタイムと言えるほど短い周期ではなく、例えば5分間隔など、ある時間間隔で視線方向の取得と補正を行うことである。
【0082】
ちなみに基本的には時間間隔は同じだが、必要があれば、異なる時間間隔でも良い。例えば、ユーザーの移動頻度に応じて時間間隔を変えても良い。この場合、移動頻度が大きければ、短い時間間隔で視線方向の取得が行われ、移動頻度が小さければ、長い時間間隔で視線方向の取得が行われる。
【0083】
上記の構成によれば、補正手段が、あるタイミングで方向検出手段から視線方向を取得し、表示の補正を行ったとした場合に、タイマーなどを用いることで所定時間が経過したら、再び視線方向の取得と表示の補正を行う。これを繰り返すことで、現在のユーザーの視線方向に対応して補正された表示を得ることができる。
【0084】
あるいは方向検出手段から得られる視線方向が変わった時に、新たな視線方向で表示の補正を行う。視線方向が変わった時に補正が行われるので、現在のユーザーの視線方向に対応して補正された表示を得ることができる。
【0085】
これによって、表示手段と相対的にユーザーが移動したりしたとしても、それに追随して補正が行われるので、常に補正した表示を得られるという効果が出てくる。
【0086】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0087】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、3次元空間の3軸のうち1軸以上の回転による歪を補正することを特徴とする。
【0088】
そこで、本発明に係る表示補正装置によれば、ユーザーの視線方向としては、3次元空間の3軸回りの回転があるが、このうち1軸だけを使った場合、上下(ピッチ)や左右(ヨー)など決まった1方向の歪だけが補正されることになる。
2軸を使った場合、組み合わせは3通り考えられるが、例えば上下と左右の組み合わせの場合、上下左右方向の間の斜め方向の歪も補正することが可能となる。
また視線回りの回転(ロール)と他の方向を組み合わせた場合は、他方向の歪が補正され、さらに視線回りの回転(ロール)の補正として、表示内容が回転して表示される。3軸の場合はこれら全てが補正される。
【0089】
一般に、軸数が多い程、補正の精度を上げることができるが、使用状態によっては、1軸回りの補正のみで十分な場合もある。この場合には、軸数を増やしても、改善効果に比べて、コストや処理時間が無駄に膨らむことになる。
【0090】
これに対し、本発明の上記構成によれば、1軸から3軸まで補正の仕方を任意に選ぶ自由度ができることになるので、補正処理などにかかるコストと補正効果、使用パターン、目的などを考慮して、適切な補正方向を選ぶ形態に対応することができる効果が出てくる。
【0091】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0092】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、歪の原因となる回転軸に垂直な面と表示面との交わりからなる直線方向に、表示手段の表示範囲を拡大するように表示内容を補正することを特徴とする。
【0093】
上記の構成において、ユーザーと表示手段との相対的な方向は、前述した3軸の回転で表現できる。「歪の原因となる回転軸」とは、ユーザーが表示手段に正対する状態の時の3軸の回転角度を基準角度とし、その基準角度と異なる値となっている回転角度の軸である。
【0094】
例えば、ユーザーが表示手段を横斜め方向から見るとすると、正対した状態から左右の回転(ヨー)が生じているので、「歪の原因となる回転軸」とは左右の回転(ヨー)の軸、すなわち上下方向に延びる軸となる。従って、「歪の原因となる回転軸に垂直な面」とは、上下方向に垂直な面となるので、水平面となる。
さらに、「歪の原因となる回転軸に垂直な面と表示面の交わりからなる直線」は、水平面と表示面の交わりからなる直線方向となる。表示面が上下方向に平行ならば、この直線方向は表示面に沿って左右に延びる直線の方向となる。
【0095】
そこで、本発明に係る表示補正装置によれば、ユーザーの視線方向としては、3次元空間の3軸回りの回転があるが、歪の原因となる回転方向はこの3軸回りの回転に分解できる。この内、表示内容が縮小されて見えてしまうのは、主に上下(ピッチ)方向や左右(ヨー)方向の回転によるので、この方向の回転に対して、上記構成のように表示内容を拡大すれば、縮小分がカバーされ、正対している時の表示内容に近いものが得られる。
【0096】
本来、正確に補正を行う為には逆透視変換などの複雑な補正処理を行わないといけないが、上記の構成によって、縮小効果を拡大という簡易な補正方法でカバーすることができるという効果が出てくる。見えにくさの一番の原因は縮小効果であることが多いので、この方法で見にくさの多くを解決することができるという効果もある。
【0097】
また文字などを横斜めあるいは上下斜め方向から見ると、縦横比が正対して見る時とは変わってしまうが、本発明の補正を行うことで、正対して見る時と同じあるいはほぼ同じ縦横比として見ることができるようになる効果が出てくる。特に図や写真など、縦横比が変わってしまうと理解しにくいような内容の場合に効果が高い。
【0098】
また、前記補正において、本方法で拡大した後の表示内容に含まれる各表示対象要素の位置を、表示範囲の大きさとの関係で、表示範囲に対して再配置するようにすれば、歪を補正して見やすくなった表示内容の意味も途切れないように表示し直すことができるので、より効果的である。
【0099】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0100】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、歪の原因となる回転軸に垂直な面と表示面との交わりからなる直線方向に、表示手段の表示範囲を広げて補正することを特徴とする。
【0101】
「表示手段の表示範囲」とは、表示内容を表示する範囲(表示領域またはその大きさ)のことである。表示手段の大きさを物理的に大きくしたり小さくしたりすることは簡単にはできないので、表示手段中の一部を「ウィンドウ」などを使って表示内容の表示範囲とし、そのウィンドウの大きさを変えることで実現する場合が多い。あるいは、複数の表示手段を1つの表示手段として扱うという方法もある。
【0102】
歪の原因となる回転方向に表示内容を拡大して補正する際、単純に拡大するだけだと、表示範囲を超えてしまい、超えた分は表示されなくなってしまう。そこで、表示手段の表示範囲自体を広げてやることで、表示範囲を超える分を表示できるようになる。また、隠れる部分もなく全て表示することができる場合も出てくる。
【0103】
これによって、どの方向からでも、正対した時と近いまたは同じだけの情報量を得られるという効果が生まれてくる。また、表示範囲を拡大しない場合は、スクロールするなどの操作が必要となるが、それらの操作を減らせる、もしくは不要とする効果もある。
【0104】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0105】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、歪の原因となる回転軸方向に縮小するように表示内容を補正することを特徴とする。
【0106】
上記の補正方法は、先に説明した「歪の原因となる回転軸に垂直な面と表示面の交わりからなる直線方向に拡大して補正する」方法の逆の方法であり、拡大しない代わりにそれと垂直な方向を縮小するだけである。例えば、横方向に拡大する代わりに、縦方向に縮小するという具合である。
【0107】
これにより、表示内容全体の面積は小さくなってしまうので、文字などの大きさ(面積)自体は小さくなってしまうが、正対して見る時と同じあるいはほぼ同じ縦横比としてみることができるようになる効果が出てくる。特に図や写真など、縦横比が変わってしまうと理解しにくいような内容の場合に効果が高い。
【0108】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0109】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、逆透視変換によって表示内容を補正することを特徴とする。
【0110】
補正を正確に行うには、逆透視変換を行うことである。逆透視変換で補正を行うことで、単に一軸方向に拡大または縮小する補正と比べて、透視変換の影響を無くす、あるいは低減させることができる効果が出てくる。
【0111】
透視変換の影響とは、例えば、表示手段上で同じ大きさの表示内容でも、表示手段上でユーザーから遠い位置に表示されると、近い位置に表示される場合より、ユーザーには小さく視覚されることなどである。他にも、例えば、表示手段上で90度に交わっている直線の表示内容が、表示手段に対して斜めの位置から見ると、直線が90度以外の角度で交わっているようにユーザーには視覚されることなどがある。
【0112】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0113】
本発明に係る表示補正装置は、上記の課題を解決するために、前記補正手段において、逆透視変換による補正を、3次元空間の3軸のうち1軸以上に関して行うことを特徴とする。
【0114】
上記の構成によれば、3次元空間の3軸に関して逆透視変換による補正を行うと、(ディスプレイの解像度などの影響は受けるが)正対した時とまったく同じ表示内容を見ることができる効果が出てくる。
【0115】
また、1軸あるいは2軸だけの逆透視変換による補正をした場合には、3軸に関して逆透視変換による補正を行う場合と比べて処理量を抑えることができる上に、単に1軸または2軸方向に拡大または縮小する補正と比べても、上述したような逆透視変換の効果が出てくる。
【0116】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0117】
本発明に係る表示補正装置は、上記の課題を解決するために、表示面の表示方向が変更可能な表示手段の表示方向の情報を得る方向検出手段と、前記表示手段の所定の表示方向をユーザーが表示手段に正対している基準方向とし、前記方向検出手段から得られる表示方向の時に、基準方向時に正対しているユーザーの位置から、表示手段を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正手段と、を有することを特徴とする。
【0118】
「表示方向検出手段」としては、例えば、表示手段がヒンジや回転支柱などで支持されている場合は、それらに組み込まれた角度検出センサーなどが考えられる。あるいはユーザーが角度を教えるという方法も考えられる。
【0119】
「所定の基準表示方向」とは、予め決められた方向であるが、通常はユーザーが表示手段に正対していると考えられる時の方向である。例えば、ノートパソコンに取り付けられているディスプレイの様に、表示手段を起こした状態で使うような場合、起こした状態がユーザーに正対した時となる。この時の本体とディスプレイをつなぐヒンジ部の角度を所定の基準方向(基準角度)とすればよい。なお、必ずしも正対した状態でなくても、ユーザーが使いたいと思っている方向(角度)があるならば、それを基準方向(基準角度)としても良い。
【0120】
そこで、本発明に係る表示補正装置によれば、表示方向検出手段によって表示面の現在の方向の情報が得られる。得られた方向で表示面中の表示内容をユーザーが見た時に見える像は、所定の基準方向で見た場合(通常は、表示面にユーザーが正対した場合)に見える像とは異なり、その方向差分だけ歪んでいる。この方向差分は、表示手段の角度をユーザーが基準角度以外に変えることなどによって起こる。例えば、表示面に蛍光灯の反射が写り込んで見えるために表示手段の角度を変える場合とか、表示手段が液晶デバイスなど指向性のある表示手段で、少し表示手段の角度を変えた方が濃度や輝度が見やすい、などという場合である。あるいは、たまたま何かが表示手段に当たるなどして、表示手段の角度が変わってしまう場合もあるかもしれない。
【0121】
そこで、得られた方向の状態から見た時に、その歪が無くなる、あるいは軽減されるように、前述した逆透視変換やその他の処理によって表示手段に表示される表示内容を補正し、それを表示手段で表示する。
【0122】
これによって、表示手段の表示方向を得るだけで表示内容を補正することができ、補正を確実に簡単に実行することができるという効果が出てくる。表示面とユーザーとの方向を得る為に、外部にセンサーを置いたり、外部をセンサーで走査したりする場合、その設置などの手間やコストの問題、また外部センサーを使うことによる検知ミス(例えば人でないものを検知してしまうなど)の問題などがあるが、表示手段の基準方向に対する角度などを利用して表示方向を得る場合、例えばヒンジ部に角度センサーを組み込むことで、外部の影響を受けずに確実に角度を検出し、表示方向を得ることができる。
【0123】
それ以外の効果は、上記の表示補正装置による効果として、前述したとおりである。
【0124】
なお、本請求項に記載した構成を、前記請求項に記載した各構成と、必要に応じて任意に組み合わせてもよい。
【0125】
本発明に係る表示補正方法は、上記の課題を解決するために、情報を表示する表示手段の表示面に対するユーザーの視線方向の情報を得る方向検出ステップと、表示面にユーザーが正対した場合を基準として、前記方向検出ステップから得た方向から表示面を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正ステップと、を有することを特徴とする。
【0126】
上記の構成による作用および種々の効果は、上記表示補正方法の構成に対応する表示補正装置による作用、効果として、前述したとおりである。
【0127】
本発明に係る表示補正プログラムは、上記の課題を解決するために、上記表示補正装置が備える各手段をコンピュータに実行させることを特徴とする。
【0128】
本発明に係る表示補正プログラムは、上記の課題を解決するために、上記表示補正方法が備える各ステップをコンピュータに実行させることを特徴とする。
【0129】
本発明に係る記録媒体は、上記の課題を解決するために、上記表示補正プログラムを記録したことを特徴とする。
【0130】
これにより、上記記録媒体、またはネットワークを介して、一般的なコンピュータに表示補正プログラムをインストールすることによって、該コンピュータを用いて上記の表示補正方法を実現する、言い換えれば、該コンピュータを表示補正装置として機能させることができる。
【0131】
【発明の実施の形態】
〔実施形態1〕
以下、本発明の実施の形態を図面を参照して説明する。
【0132】
最初に言葉の定義について説明しておく。
【0133】
「ユーザーの視線方向」は、「右に何度」というような精度の高い情報の場合もあるし、単に「左」「正面」「右」などという精度の粗い情報の場合もある。
また方向は、左右(図2参照。表示面にユーザーが正対した場合を基準とすれば表示手段の左右方向に振れる回転をヨーと言い換えることができる)の軸だけでなく、上下(ピッチ)や回転(ロール)の軸から1軸が選択される場合もあり、また、それらが2軸、3軸と組み合わされる場合もある。
【0134】
また、「表示面にユーザーが正対した場合」とは、ユーザーが表示面を見た時の視線が表示面と垂直に交わり、かつ、視線の軸周りの回転(ロール)が無い場合を指す。視線の軸周りの回転(ロール)が無い場合とは、表示面の上下方向とユーザーの顔の上下方向が同じになる場合である。
【0135】
また、「歪」とは、表示手段にユーザーが正対した場合に見える表示内容と、現在のユーザーの方向から見た場合に見える表示内容との差である。例えば、紙面を左斜め方向から見た場合、紙面は左右に縮んで見える。これは透視変換効果が原因であり、厳密にはあらゆる場合において起きているが、紙面が相対的にそれほど大きくない場合は、左右方向以外の歪は無視して、左右方向のみが縮んだ歪として扱うことも可能である。
【0136】
但し、基準状態を、表示面にユーザーが正対した場合でなく、いずれかの方向から見た状態に設定する場合は、その状態の時に見える表示内容との差を歪とする場合もある。また視線の軸周りの回転(ロール)は、回転処理によって戻すことができるので、拡大縮小や表示面に対する視線方向の角度の変化が起きる訳ではないが、正対した状態との差という意味で、ここでは広義として歪の中に含まれるとする。
【0137】
「歪を無くして、あるいは軽減して表示内容を補正する」とは、歪んだように見える表示内容を、表示面に対するユーザーの視線方向はそのままでありながら、表示内容の見た目は正対した時のように、あるいはそれに近づけて見せるようにすることを言う。完全に正対したようにした場合が「歪を無くした」場合であり、正対した状態に近づけた場合が「歪を軽減した」場合である。
【0138】
例えば、表示手段の表示面に対する垂直線方向(0度)から60度の角度方向にユーザーが存在した場合、それを0度から見た正対状態に見せることが「歪を無くす」ことであり、例えば30度の角度方向から見たように見せることが「歪を軽減する」ことである。但し、0度や30度の角度方向から見たように正確に見せる場合だけでなく、それに近い場合、例えば、逆透視変換ではなく、左右など1軸方向だけの拡大縮小を行った場合などの擬似的な処理も補正に含む。また、ヨーやピッチ方向だけでなく、ロール方向の補正も含む。
【0139】
ユーザーと表示手段との相対的な方向は、前述した3軸の回転で表現できる。
「歪の原因となる回転軸」とは、ユーザーが表示手段に正対する状態の時の3軸の回転角度を基準角度とし、その基準角度と異なる値となっている回転角度の軸である。
【0140】
例えば、ユーザーが表示手段を横斜め方向から見るとすると、正対した状態から左右の回転(ヨー)が生じているので、「歪の原因となる回転軸」とは左右の回転(ヨー)の軸、すなわち上下方向に延びる軸となる。従って、「歪の原因となる回転軸に垂直な面」とは、上下方向に垂直な面となるので、水平面となる。
さらに、「歪の原因となる回転軸に垂直な面と表示面の交わりからなる直線」は、水平面と表示面の交わりからなる直線となる。表示面が上下方向に平行ならば、この直線方向は表示面に沿った左右に延びる直線の方向となる。
【0141】
「補正単位」とは、補正を行う対象の範囲であり、通常、同じ補正式あるいは補正パラメータを使って補正される。
【0142】
「表示内容全体を補正単位として補正する」とは、表示内容全体が一枚の画像であるかのように扱い、画像全体の範囲を補正することである。画像(表示内容)の一部分の範囲内だけを補正することではない。
【0143】
「個々の表示対象要素を補正単位として補正する」とは、個々の表示対象要素の範囲内を補正することである。個々の表示対象要素以外の範囲については本発明の補正処理を行わない。なお、表示対象要素の定義、具体例は、〔実施形態2〕で説明する。
【0144】
「所定の位置範囲」とは、存在を検知する方法にもよるが、例えば、何らかのセンサーを使った場合、そのセンサーが検知する範囲ということになる。また、センサーなどのような直接的な検知ではなく、間接的な検知の場合、例えば、周囲の機器の使用状況などから推測する、などという場合(後述するガスコンロの例など)、その機器の利用可能範囲や操作範囲ということになる。
【0145】
「存在検出手段」は、何らかの情報を元に所定の位置範囲にユーザーが存在するかどうかの情報を得ることができる手段である。元にする情報を得る方法として、例えば、直接的な検知としてのなんらかのセンサーを利用する方法や、間接的な検知としての周囲の機器の使用状況などから推測する方法などが考えられる。
【0146】
センサーとしては、例えば非接触タイプとしては、超音波センサー、赤外線センサー、熱センサー、レーザーセンサーなどが考えられる。カメラで撮影した画像に対して画像処理を行うことでも、元にする情報が得られる。接触タイプとしては、例えば、床に敷くマットなどに仕込んだ圧力センサーや静電気センサーなどが考えられる。
【0147】
存在を検出する処理としては、例えば、センサーから得られる信号から、検出範囲内の物体の有無が特定できる。物体が検出されればユーザーがそこに存在すると判断すればよい。センサーを使わず、周囲の機器の使用状況などから推測する場合は、例えば、表示面に対する位置が把握されているガスコンロの火が点いたとしたら、ガスコンロの周囲にユーザーが存在すると推測する、などの処理となる。この場合、ガスメータやガスコンロの操作スイッチなどを使って、ガスコンロの使用を検出することになる。
【0148】
あるいは、ユーザー自身がどこにいるかをボタンや音声、発信機などの手段を用いて直接伝えるという方法もある。
【0149】
「リアルタイム」とは、常に視線方向の取得と補正が行われている状態をさすが、実装上は非常に細かい時間周期で視線方向の取得と補正が行われる状態をさす。「所定間隔毎」は、リアルタイムと言えるほど短い周期ではなく、ある時間間隔で視線方向の取得と補正を行うことである。
【0150】
ちなみに基本的には時間間隔は同じだが、必要があれば、異なる時間間隔でも良い。例えば、ユーザーの移動頻度に応じて時間間隔を変えても良い。この場合、移動頻度が大きければ、短い時間間隔で視線方向の取得が行われ、移動頻度が小さければ、長い時間間隔で視線方向の取得が行われる。
【0151】
「表示手段の表示範囲」とは、表示内容を表示する範囲(表示領域またはその大きさ)のことである。表示手段の大きさを物理的に大きくしたり小さくしたりすることは簡単にはできないので、表示手段中の一部を「ウィンドウ」などを使って表示内容の表示範囲とし、そのウィンドウの大きさを変えることで、表示範囲を変更する場合が多い。あるいは、複数の表示手段を1つの表示手段として扱うという方法もある。つまり複数の表示手段を並べて、それぞれに隣の表示手段と繋がる内容を表示させれば、全体として1つの表示手段のように見ることもできる。
【0152】
図3は、本発明の実施の一形態に係り、上述した表示補正処理方法を実施する表示補正装置を示す構成図である。
【0153】
すなわち、表示補正装置の要部を、コンテンツ取得手段1、表示内容取得手段2、存在検出手段3、方向検出手段4、補正手段5、表示手段6の主要な機能ブロックに展開して示すことができる。
【0154】
図4は、図3の各手段1〜6を具体的に実現する装置の構成例である。
【0155】
CPU(central processing unit)70は、上記コンテンツ取得手段1、表示内容取得手段2、存在検出手段3、方向検出手段4、補正手段5、および表示手段6として機能し、これら各手段1〜6による処理手順が記述されたプログラムを主記憶74、外部記憶75、通信デバイス77などから得る。また、CPU70は、CPU70を含めてバス79を通じ相互に接続されたディスプレイ71、プリンタ72、センサー73、主記憶74、外部記憶75、マウス76、通信デバイス77、ボタン78とデータのやりとりを行ないながら、後で説明する各処理を行なう。
【0156】
なお、データのやりとりをバス79を介して行う場合に限らず、データを送受信できるものならば、通信ケーブルや無線通信装置などを介してもよい。また、各手段1〜6の実現手段としては、CPUに限らず、DSP(digital signal processor)や処理手順が回路として組み込まれているロジック回路などを用いることもできる。
【0157】
主記憶74は、通常はDRAM(dynamic random access memory)やフラッシュメモリなどのメモリデバイスで構成される。外部記憶75は、HDD(hard disk drive)やPC(personal computer) カードなどの装脱着可能な記憶手段である。あるいはCPU70と通信デバイス77を介して有線または無線で接続された他のネットワーク機器に取り付けられた主記憶や外部記憶を外部記憶75として用いることもできる。
【0158】
ユーザの操作を入力する手段として、マウス76、センサー73、ボタン78などがある。この他にもキーボード、マイクによる音声入力など、様々な手段が使用可能である。
【0159】
ユーザーの方向や存在位置などを検出する手段として、センサー73などがある。
【0160】
ディスプレイ71は、通常はグラフィックカードなどと組み合わされて実現され、グラフィックカード上にVRAM(video random access memory)を有している。VRAM上のデータは表示信号に変換され、モニターなどのディスプレイ71に送られ、ディスプレイ71は表示信号を画像として表示する。
【0161】
プリンタ72は、バス79を介して得た印刷データを用紙に印刷する。通信デバイス77は、ネットワークカードなどにより実現され、無線や有線などにより接続された他のネットワーク機器とデータをやりとりする。
【0162】
図3の各手段1〜6を、図4などの実現手段と各手段1〜6間のデータの授受の観点から説明する。
【0163】
コンテンツ取得手段1としてのCPU70は、主記憶74、外部記憶75、通信デバイス77などから、ディスプレイ71に表示する表示内容に関するコンテンツデータを得る。コンテンツデータは予め用意されているとする。得たコンテンツデータは、表示内容取得手段2に渡される。
【0164】
表示内容取得手段2としてのCPU70は、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、コンテンツ取得手段1から得たコンテンツデータをもとに、コンテンツデータの表示内容データを作成する。既に作成済みの表示内容データが主記憶74、外部記憶75上にある場合は、それを利用してもよい。作成された表示内容データは、補正手段4に送られる。なお、処理の仕方によっては、補正手段4と連携を取りながら、表示内容データを作成する場合もある。
【0165】
存在検出手段3としてのCPU70は、所定の位置範囲にユーザーが存在するかどうかのデータを、センサー73、ボタン78などから入力されたデータとして得、必要に応じて、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムなどを利用してその入力データを加工してから、方向検出手段4に渡す。
【0166】
加工の例としては、存在するかどうかの判断に統計的な処理を用いたりする場合などである。例えば、所定の測定時間中の所定の割合以上、存在が検出される場合にユーザーが存在するとし、所定の割合未満はセンサーの検出ノイズやユーザーなどが通過しただけとみなして存在しないとする、などといった処理である。
【0167】
方向検出手段4としてのCPU70は、センサー73などからのユーザーの視線方向の直接的な情報を得て、必要に応じて、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、ディスプレイ71の表示面とセンサーとの方向、位置関係などの情報を主記憶74、外部記憶75などから得て、表示手段6を構成するディスプレイ71から見たユーザーの相対的な視線方向を求めて、補正手段5に渡す。
【0168】
存在検出手段3を使う場合、方向検出手段4としてのCPU70は、存在検出手段3から得た、所定の範囲にユーザーが存在するかどうかの情報から、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、ディスプレイ71の表示面と所定の位置範囲との方向、位置関係などの情報を主記憶74、外部記憶75などから得て、ディスプレイ71から見たユーザーの相対的な視線方向を求めて、補正手段5に渡す。
【0169】
補正手段5としてのCPU70は、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、方向検出手段4から得たユーザーの視線方向の情報に従って、表示内容取得手段2から得たオリジナル表示内容を補正し、補正表示内容を表示手段6に出力する。
【0170】
表示手段6は、ディスプレイ71およびその表示制御を担うCPU70などで構成される。補正手段5から得た補正表示内容を表示面上に表示/出力する。ディスプレイ71でなく、プリンター72などに表示内容データを出力する場合、その出力(印刷)された用紙を、逐次更新する必要がある。例えば、ロール紙を使って印刷面を巻き上げたり、などといった方法が考えられる。しかし、このように逐次更新を行うものも大きな意味で「ディスプレイ」に含まれるとしてもよい。
【0171】
図5は、表示補正装置の外観例を示している。本体90上にディスプレイ部91(上記ディスプレイ71に相当)があり、ディスプレイ部91に補正表示内容が表示される。
【0172】
ディスプレイ部91の上に方向センサー92、93、94がついている。方向センサー92、93、94はそれぞれ、右、正面、左の方向を向いており、上記方向検出手段4に対し、その方向にユーザーがいるかどうかを検出した信号を送る。図では分かり易くディスプレイ部91の上に描いたが、本体90に埋め込んでも良い。また、正面向けのセンサー93だけを設ける時もある。
【0173】
また、本体90から、ケーブルで繋がれ、ディスプレイ部91に対するレイアウト(距離、方向などの配置)が把握された圧力センサー95、96、97が延びており、それぞれその上にユーザーが存在しているかどうかを検出した信号を上記存在検出手段3に送る。
【0174】
図1は、本発明の実施の一形態に係る表示補正処理方法を示すフローチャート図である。
【0175】
まずステップS1(以下、「ステップS」を「S」と略記する。)で、コンテンツ取得手段1が、コンテンツデータを取得し、得られたコンテンツデータを表示内容取得手段2に渡して、S2へ処理が進む。コンテンツデータとは、表示すべき内容が含まれる情報のことである。コンテンツデータは予め作成済みとしておく。
【0176】
コンテンツデータの取得方法は本発明の主旨ではないので詳しい説明は省くが、例えば、主記憶74や外部記憶75、あるいは通信デバイス77を介して通信/ネットワーク接続先などからデータとして得る。なお、コンテンツデータが静止画でなく、時間的に変化する動画として表示される場合は、動画を構成する各静止画に対して、S1〜S5の処理を繰り返せばよい。
【0177】
S2では、表示内容取得手段2が、コンテンツ取得手段1から得たコンテンツデータから表示内容を取得/生成して補正手段5に渡し、連結点P10(以下、「連結点P」を「P」と略記する)を経て、S3へ処理が進む。
【0178】
本発明を実施する場合、表示補正装置を単独で動作させるのではなく、何らかのコンテンツデータを表示するプログラムや装置(説明の為、以降、「メイン表示プログラム/装置」と呼ぶことにする)に付随させて動作させる形態がほとんどとなると思われる。具体的には、メイン表示プログラム/装置が生成した表示内容を、加工して新たな表示内容を生成したり、メイン表示プログラム/装置が表示内容を生成する際に、生成の仕方に手を加えたり、といった動作になる。なお、メイン表示プログラム/装置としては、例えば、WWWブラウザ、ワードプロセッサなどの汎用的なプログラムや各種専用プログラム、表示パネルを持った電気製品(例えば、パーソナルコンピュータ、冷蔵庫、電子レンジ、ビデオデッキなど)などが考えられる。
【0179】
図1のフローチャートは、メイン表示プログラム/装置が生成した表示内容を、加工して新たな表示内容を生成する処理に相当する。具体的には、コンテンツ取得手段1(S1)と表示内容取得手段2(S2)の処理が、メイン表示プログラム/装置の処理(表示内容を生成する処理)に相当する。S3以降の処理では、表示内容取得手段2(S2)から得られる表示内容を加工するだけなので、表示内容データさえ取得できればよい。すなわち、表示内容データが、テキストデータから生成されたのか、写真から生成されたのか、どういう配置の仕方によるのかなど、表示内容データがどのように生成されるかは本発明にとって重要ではない。従って、ここでは表示内容データの生成の仕方についての説明は省略し、表示内容データの構造についてだけ後で説明する。
【0180】
なお、メイン表示プログラム/装置が表示内容を生成する際に、生成の仕方に手を加える処理に関しては、実施形態2で説明する。
【0181】
表示内容データの構造例としては、表示手段にそのまま表示できる状態にまでなったものと、そのままでは表示できず、表示手段に表示するにはもう一段階以上の処理が必要な状態のものとの2通りある。「表示手段にそのまま表示できる状態」とは、例えば、文字のフォントなども画素レベルに展開されて、表示範囲全体が一つの画像のようになった状態を指す。「そのままでは表示できず、表示手段に表示するにはもう一段階以上の処理が必要な状態」とは、例えば、それぞれの文字がレイアウトされたレイアウト情報(あるいは表示対象要素。例えば文字コードとフォント名とフォントサイズ、文字のレイアウト位置など)の集合となった中間的な状態などを指す。これらのレイアウト情報は、表示手段6で解釈/展開されて、「表示手段にそのまま表示できる状態」になって、表示されることになる。
【0182】
レイアウトされた中間状態を使う手法については図21などをもとに後で述べるので、ここではとりあえず単純な「表示手段にそのまま表示できる状態」として画素レベルにまで展開されるとする。
【0183】
S3では、存在検出手段3と方向検出手段4が、ユーザーの存在する方向、あるいは方向と距離を取得して補正手段5に渡し、P20を経て、S4へ処理が進む。ここでの処理の詳細に関しては、後で述べる。
【0184】
S4では、補正手段5が、表示内容取得手段2(S2)から得た表示内容を、方向検出手段4(S3)から得たユーザーの方向を元に補正して、補正された表示内容を表示手段6に渡し、P30を経て、S5へ処理が進む。ここでの処理の詳細に関しては、後で述べる。
【0185】
S5では、表示手段6が、補正手段5(S4)から得た補正された表示内容を表示して、処理を終える。
【0186】
これらの処理によって、ユーザーの方向によって、表示内容を補正して表示することができる。これによる効果などについては、後でまとめて述べる。
【0187】
S3で、ユーザーの存在する方向や距離を取得する方法は色々考えられる。
【0188】
例えば、音波(超音波など)や光(赤外線など)、電磁波などによる非接触センサーを使った方法がある。センサーから得られる情報はセンサーの種類や使い方によって異なるが、例えば、所定の検出範囲に物体が存在するかどうかが得られたり、その物体までの距離が得られたりする。表示装置の各方向にこれらのセンサーを取り付け、その情報を分析することによって、その方向にユーザーが存在するかどうかが得られる。
【0189】
図6は、図1のS3の処理の一例を説明するフローチャート図である。
【0190】
P10を経たS3A−1では、存在検出手段3が、全方向の存在情報を得て、その存在情報を方向検出手段4に渡し、S3A−2へ処理が進む。但し、後に説明する繰り返し処理の中で、それぞれの方向の存在情報を逐次的に得て処理しても良い。存在情報とは、その方向にユーザーが存在するかどうかの情報である。
上記のセンサーなどを利用して得られる。これはセンサーの数だけ複数、存在することになる。
【0191】
S3A−2では、方向検出手段4が、最初の存在情報をカレントの存在情報に設定して、S3A−3へ処理が進む。カレントの存在情報とは、現在処理中の存在情報という意味である。
【0192】
S3A−3では、同手段4が、カレントの存在情報がもう無いかどうかを判断し、もう無い場合はS3A−4へ進み、まだある場合はS3A−5へ処理が進む。
【0193】
S3A−3でカレントの存在情報が残って無い場合に処理が進むS3A−4では、同手段4が、ユーザーの存在方向を既定の方向にして、P20へ処理が抜ける。これは特に存在している方向が分からなかった場合、規定の方向に設定しておくということである。規定の方向は、正面としてしまっても良いし、斜めとしてしまっても良いし、あるいはユーザーの行動パターンなどから最も存在確率の高そうな方向にするなどしてもよい。
【0194】
(S3A−3でカレントの存在情報が残っている場合に処理が進む)S3A−5では、同手段4が、カレントの存在情報から、その方向にユーザーが存在するかどうかを判断し、存在すると判断された場合はS3A−6へ処理が進み、存在しないと判断された場合はS3A−7へ処理が進む。
【0195】
(S3A−5でその方向にユーザーが存在すると判断される場合に処理が進む)S3A−6では、同手段4が、カレントの存在情報のセンサーの方向や距離をユーザーの存在する方向や距離として設定して、P20へ処理が抜ける。
【0196】
(S3A−5でその方向にユーザーが存在しないと判断される場合に処理が進む)S3A−7では、同手段4が、カレントを次の存在情報にして、S3A−3へ処理が進む。
【0197】
これらの処理によって、図1のS3の処理の一例が実現できる。これによって、ある方向や距離にユーザーが存在するかどうかの情報が得られる。
【0198】
このように、所定の位置範囲に存在するかどうかの情報を使うことで、ユーザーの方向や距離をある程度の誤差で簡易的に推定することができるという効果が出てくる。正確な方向や距離を求めようとすると、レーダーのような高価な機器が必要になってしまうかもしれないが、所定の位置範囲に存在するかどうかの検出なら、安価なセンサーなどを使って実現することができるという効果もある。
【0199】
なお、図6の説明では、物体が存在する存在情報を見つけた時点でその物体がユーザーであると判断してしまっているが、一通り存在情報を調べて、最も確からしい方向や距離を選ぶという方法もある。その場合、確からしさを何らかの評価値として表して各評価値を比較する、などという処理が必要となる。
【0200】
また、センサーも、存在するかどうかだけではなく、距離、大きさ、材質、温度など様々な情報が得られるものもある。それらの情報を総合的に評価する場合もある。
【0201】
また、ある時刻の情報だけを扱うのではなく、時系列に得た情報を統計的に処理して、最も確からしい方向や距離を得るという方法もある。
【0202】
また、予め配置してあるユーザー以外の物(家具や壁など)に誤反応しないように、ユーザーが存在しない状態を一度覚えさせておいて、その状態からの変化でユーザーが存在するかどうかを判断する方法もある。
【0203】
また、上記の説明では、表示装置に取り付けた非接触センサーを使っているが、必ずしも表示装置に取り付ける必要はない。ある範囲にユーザーが存在するかどうかが分かれば、センサーと装置との相対位置関係から、装置から見たユーザーの存在する方向や距離は計算することができる。
【0204】
あるいは、表示補正装置の周囲や使用環境をカメラなどで撮影し、人物を認識することで、その位置を特定するという方法も考えられる。ある意味ではこれも非接触センサーの一種でもある。
【0205】
ある範囲にユーザーが存在するかどうかを知る方法としては、非接触センサーを使う方法以外にも、例えば、圧電センサーや静電気センサー(電圧、電荷量の変化などを見る)などの接触センサーを使うという方法などもある。圧電センサーを組み込んだマットを装置の周囲においておき、その上に人が乗っているかどうかを検知することで、マットが置かれた範囲にユーザーが存在するかどうかを知ることができる。
【0206】
また、ユーザー自身が存在を装置に告知するという方法もある。最も単純な方法は、例えば、装置上のボタンか何かの操作で、存在する方向や範囲を直接知らせるという方法である。
【0207】
あるいは、赤外線などの光波や電磁波などを発する機器をユーザーが身につけ、それを部屋など環境中に配したセンサー類で感知し、位置を特定するという方法もある。ユーザー側から発するのではなく、環境中に発せられている電磁波などを受け、それに反応して別の電磁波を返すという方法もありうる。これは非接触のIDカードや無線装置などでも使われている技術である。あるいは、環境中に発せられている電磁波などに反応して、別のルートでユーザー側から位置情報などを表示補正装置に返すという方法もある。例えば、GPS(Global Positioning System)衛星から流れてくる電磁波を処理するなどして現在位置を計算し、得られた現在位置をネットワークを通じて、表示補正装置に返す、などという方法である。
【0208】
図7は図1のS3の処理を簡略に実現する一方法を説明するフローチャート図である。
【0209】
P10を経たS3B−1では、存在検出手段3が、表示手段の正面方向にユーザーが存在するかどうかの情報を得て、その情報を方向検出手段4に渡し、S3B−2へ処理が進む。存在するかどうかの情報を得る手段は上で述べたような様々な方法が考えられるが、例えば簡単な方法として、表示手段の正面方向に赤外線センサーや超音波センサーをつけておく方法がある。
【0210】
S3B−2では、方向検出手段4が、存在検出手段3から得た情報を基に、正面方向にユーザーが存在する場合はS3B−3へ進み、そうでない場合はS3B−4へ処理が進む。
【0211】
(S3B−2で正面方向にユーザーが存在すると判断される場合に処理が進む)S3B−3では、同手段4が、ユーザーの存在する方向を正面方向として設定して、P20へ処理が抜ける。
【0212】
(S3B−2で正面方向にユーザーが存在しないと判断される場合に処理が進む)S3B−4では、同手段4が、ユーザーの存在する方向を正面方向以外の方向、例えば斜め方向と設定してP20へ処理が抜ける。
【0213】
正面方向以外なら斜めでなくても良いのだが、もし表示装置の真横や裏側に存在するのだったら、どちらにしろ表示手段の表示内容を直接見ることはできないのだから、どう補正されて表示されても構わないはずである。正面以外で表示手段が見える方向としては斜めしかないので、斜めとして補正しておけば問題はない。斜めというのが具体的に数値としてどの方向を指すかは、予め決めておけばよい。例えば、30度や45度、60度などといった具合である。
【0214】
ユーザーの使用形態を考えると、階段や梯子などを使ってユーザーが上下に移動しながらディスプレイを見る場合よりも、ディスプレイとほぼ同じ高さで、周囲からディスプレイを見る場合が多いと思われる。また、寝転んだり、顔を極端に傾けて使うことも少ないと思われる。従って、方向(回転)の軸についても、通常は上下の移動や視線周りの回転はそれほどないと考えて、左右方向に限定してしまっても実用上、問題はない。
【0215】
これによって、非常に簡易的かつ実用十分な範囲でユーザーの方向を推定することができるという効果が出てくる。
【0216】
また、所定の位置範囲にユーザーが存在するかどうかを得る為に、色々なセンサーなどを複数、色々な方向や場所に用意するのはコストや手間、処理が大変であるが、正面にいるかいないかだけを得るならば、表示手段(装置)に最小で1個組み込むだけで済むので、これらのコストや手間、処理を低く抑えることができる効果も出てくる。
【0217】
このように、ユーザーの方向や距離、位置を得る方法は様々考えられるので、目的やコストなどを総合的に考慮して適した方法を選択すればよい。
【0218】
なお、補正の仕方によっては、効果が弱い場合もある。例えば、表示面を斜め方向から見た場合の補正方法が左右対称(あるいは上下対称)で無い場合などである。左右対称でない補正方法の例としては、後で説明する逆透視変換などがある。逆透視変換では、ユーザーから見て、表示内容の内、遠くに位置する部分は相対的により大きく、近くに位置する部分は相対的により小さくなるような補正を行う。これにより、遠くに位置する部分と近くに位置する部分が、同じような大きさに視覚できるように補正がされる。
【0219】
しかし、左斜め用に逆透視変換を使って補正した表示内容を右斜めから見ると、補正前の表示内容の視覚結果と比べると、遠くに位置する部分はより小さく、近くに位置する部分はより大きく視覚されてしまう。これは逆効果である。
【0220】
一般に、正しいユーザーの視線方向で補正される場合、逆透視変換による補正効果の方が、縦横を拡大縮小するだけの補正効果よりも高い。しかし、ユーザーに対して、表示手段が相当大きくなければ、補正効果の差はそれほど大きくは無い。つまり、逆透視変換であっても、縦横の拡大縮小と似た処理結果が得られるということである。逆透視変換の補正効果の内、縦横の拡大縮小と同等の補正効果による正の補正効果と、上述した逆効果による負の補正効果を比べれば、正の補正効果の方が一般に勝る。従って、逆透視変換などの対称でない補正処理を行っても、一般に、効果はある。
【0221】
なお、上述したように表示手段の正面方向付近にユーザーが存在するかどうかの情報に基づいて表示内容を補正する場合は、逆透視変換などの対称でない補正処理を行うよりも、縦横の拡大縮小などの対象な補正処理を行うようにする方が望ましい。これにより、簡易な構成で視覚的な歪を補正できるという効果を一層高めることができる。
【0222】
図8は図1のS4の処理を実現する一方法を説明するフローチャート図である。
【0223】
以降では説明の為、表示内容取得手段2(S2)で得た表示内容を「オリジナル表示内容」、補正手段5(S4)で補正された表示内容を「補正表示内容」と呼ぶことにする。
【0224】
P20を経て、S4−1では、補正手段5が、表示範囲を取得して、S4−2へ処理が進む。
【0225】
ここで言う表示範囲とは、簡単に言えば、表示手段中で補正表示内容を表示する領域の大きさのことである。表示手段全面を使って表示する場合は、表示範囲は表示手段の大きさと同じになるが、例えばウィンドウシステムなどで、あるウィンドウ中に補正表示内容を表示する場合はそのウィンドウの大きさとなる。
【0226】
なお、表示範囲の大きさをオリジナル表示内容の補正に合わせて変更させる場合は、この段階で変更する大きさを決めることになる。これについては後で詳しく述べるので、ここではひとまず、大きさは固定としておく。
【0227】
また、表示範囲は、例えば表示手段6から得られる。あるいは表示範囲が固定されている場合は、主記憶74や外部記憶75上に予め記録しておいた値を読むことでも得られる。あるいは、ウィンドウシステムの場合などは、API(Application Programming Interface)を通じて、ウィンドウの大きさを取得してもよい。
【0228】
S4−2では、同手段5が、オリジナル表示内容に関して、補正する範囲を(補正範囲)取得して、S4−3へ処理が進む。
【0229】
オリジナル表示内容全てを補正した結果得られる補正表示内容の大きさは、一般にオリジナル表示内容の大きさよりも大きいことが多いので、S4−1で得た表示範囲内に補正表示内容を全て表示することはできないかもしれない。その為、オリジナル表示内容の一部だけを補正して表示範囲内に一部を表示させるか、あるいは、全体が入りきるように補正の際に全体を縮小させる、あるいは実施形態2で説明するように各表示対象要素をレイアウトし直す、などの処理が必要となる。
【0230】
ここでは縮小率などの情報も含めて補正範囲に関する情報とし、S4−3に渡すとする。縮小率を簡易的に求める方法は後で説明するが、後で説明する逆透視変換の補正式からは正確に求めることができる。
【0231】
S4−3では、同手段5が、S4−2で得た補正範囲に含まれるオリジナル表示内容を補正して、P30へ処理が抜ける。
【0232】
これによって、図1のS4の処理が行われる。
【0233】
図9(a)、図9(b)は補正方法について説明する図である。ここでは説明の為、ユーザーは表示手段を(表示手段から見て)斜め右方向から見ているとする。図2にも示すように、表示手段から見て正面方向を+Zd軸、上方向を+Yd軸、右方向を+Xd軸とする。ユーザーが表示手段を斜め右方向方向から見ている時の位置関係を、図9(a)は上側から見て記述したものであり、図9(b)は表示手段の裏側から見て記述したものである。歪の原因となる回転としては、表示手段に正対した状態からYd軸回りの回転しかなく、それ以外のXd軸、Zd軸回りの回転はないとする。
【0234】
ユーザーの位置から表示手段を見た時にユーザーが認知する像を「ユーザー像」と呼び、ユーザー像の属する平面を「ユーザー像平面」(あるいは「ユーザー像面」)と呼ぶことにする。なお、ユーザー像およびユーザー像平面については後で説明する。
【0235】
同様に、表示手段の属する平面を「表示手段平面」(あるいは「表示面」)と呼ぶことにする。表示手段平面は、図9(a)、図9(b)では、Xd−Yd平面になる。また、ユーザーの見ている方向を「視線方向」と呼び、視線は常にユーザー像の中心を貫くとする。
【0236】
図9(a)、図9(b)では、座標系が2つある。一つは表示手段をベースとした座標系(Xd/Yd/Zd座標系)であり、以降、「表示手段座標系」と呼ぶことにする。表示手段座標系の空間軸、点、座標値には、最後に「d」をつけて区別しやすいようにしてある。表示手段座標系原点Odは表示手段(の表示範囲)の中心点、あるいは視線が表示手段平面と交わる点である。この違いについては後で説明する。表示手段から見て正面方向を+Z軸(Zd)、上方向を+Y軸(Yd)、右方向を+X軸(Xd)とする。なお、図では両座標系の座標軸と視線を実線で示してある。
【0237】
もう一つの座標系は、ユーザー像をベースとした座標系(Xe/Ye/Ze座標系)であり、以降、「ユーザー像座標系」と呼ぶことにする。ユーザー像座標系の空間軸、点、座標値には、最後に「e」をつけて区別しやすいようにしてある。ユーザー像座標系原点Oeは視線がユーザー像平面と垂直に交わる点である。ユーザーから表示手段を見て正面方向を+Ze軸、上方向を+Ye軸、左方向を+Xe軸とする。
【0238】
図中の点Puはユーザーの視点、すなわち眼球の位置を表している。なお、前記ユーザー像は実際に存在するものではなく、認知されている内容を説明する為に仮に導入したものである。あえて物理的な実態に対応づけて説明すれば、視点Puは眼球中のレンズ体の中心であり、ユーザー像はレンズ体によって網膜上に投影される像である。網膜上に投影された像は、位置的には視点Puの後ろ側(−Ze方向)であり、像の内容もレンズ体によって反転している。反転を無くして説明を分かり易くする為、ここでは視点Puの前側(+Ze方向)にユーザー像を置いている。
【0239】
そこで、仮想的なユーザー像が属する平面を考え、ユーザー像平面と呼ぶことにする。図9(a)、図9(b)では、ユーザー像平面はXe−Ye平面になる。
【0240】
視点Puからユーザー像座標系原点Oeまでの距離をLe、視点Puから表示手段座標系原点Odまでの距離をLdとする。実際には、Leは眼球の中のレンズ体と網膜の距離に相当するので、人間ならばほぼ一定の値であり、ここでは定数とみなしても良い。
【0241】
視線は、表示面と角度θで交わっている、言い換えれば、視点Puが、Yd軸回りに(π/2−θ)回転しているとする。さらに、表示手段の表示範囲右端の表示手段座標系のX座標値をXprd、左端の表示手段座標系のX座標値をXpld、視点Puと表示範囲右端を含む平面がユーザー像平面と交わる直線のユーザー像座標系のX座標値をXpre、視点Puと表示範囲左端を含む平面がユーザー像平面と交わる直線のユーザー像座標系のX座標値をXpleとする。
【0242】
図10(a)、図10(b)は、ユーザーが表示手段に正対した時の様子を、それぞれ図9(a)、図9(b)と同じ方向から見た時の状態で記述した説明図である。距離Ld、距離Leは、図9(a)と同じ値である。視点Puと表示手段の表示範囲右端を含む平面がユーザー像平面と交わる直線のユーザー像座標系のX座標値をXpref、視点Puと表示範囲左端を含む平面がユーザー像平面と交わる直線のユーザー像座標系のX座標値をXplefとする。
【0243】
この時、図9(a)でユーザー像平面上に映る表示手段の(ユーザー像座標系の)X方向の長さLxeは、
Lxe=Xpre−Xple
となる一方、図10でユーザー像平面上に映る表示手段の(ユーザー像座標系の)X方向の長さLxefは、
Lxef=Xpref−Xplef
となる。
【0244】
表示手段の幅(Xprd−Xpld)という同じ大きさを正面と斜めから見ているので、当然、
Lxe<Lxef
であり、表示手段の見かけ上のX方向の長さは、(Lxe/Lxef)の倍率で小さく見えることになる。
【0245】
次に、(Lxe/Lxef)の求め方だが、正確に逆透視変換などで求める方法もあるが、角度θから簡易的に求めるならば、
(Lxe/Lxef)≒sin(θ)
である。距離Ldが表示手段の幅に比べて極端に小さい(すなわち、画角が大きい)などという場合でなければ、上式で十分な精度を持つ。なお、倍率(Lxe/Lxef)、または視線と表示面との交叉する角度θは、補正パラメータの一つである。
【0246】
補正の方法は色々あるが、最も簡単な方法として、1軸回りの回転による歪を回転方向に拡大して補正してやる方法がある。
【0247】
歪の無い状態とは、ユーザーが表示手段に正対している時、すなわち、視点PuがZd軸上に位置し(図10の状態)、Zd軸回りの回転もしていない時である。1軸回りの回転による歪とは、表示手段座標系で表示手段(原点Od)からユーザーを見た時、Zd軸上から外れた位置にユーザー(視点Pu)が存在する時に起こる歪のことである。なお、Zd軸回りの回転、すなわち視線回りの回転による歪(像の回転)については処理方法が異なるので、後で別途説明するとし、ここではXd軸とYd軸回りの回転(あるいはそれらが組み合わさったもの)について説明する。
【0248】
なお、Xd軸とYd軸回りの回転の組み合わせは、Xd軸とYd軸回りの回転の補正処理をそれぞれ行うことを要する2軸回りの回転と解釈することもできるが、座標系の取り方を変えてしまえば、どちらか単独の軸回りの回転とみなせるので、1軸回りの回転と解釈しても良い。座標系の取り方を変えるとは、ここでは、Zd軸は変えず、Zd軸回りにXd軸とYd軸を回転させ、組み合わせの回転がXd軸あるいはYd軸の単独の回転となるようにすることである。
【0249】
1軸回りの回転による歪を回転方向に拡大して補正してやる方法は、先に計算した倍率(Lxe/Lxef)で縮小して見えるのだから、オリジナル表示内容を(Lxef/Lxe)の倍率で予め拡大しておくことである。
【0250】
表示手段の表示範囲の中心が原点Oeだとし、前述のように、視点Puが、Yd軸回りに(π/2−θ)回転しているとし、オリジナル表示内容上の任意の位置(X、Y)の画素値(画素の濃度あるいは輝度を表す値)をI(X、Y)、補正表示内容上の任意の位置(X、Y)の画素値をI’(X、Y)とすると、X軸方向の拡大は、
I’(X、Y)=I((Lxe/Lxef)×X,Y)
となる。なお、ここでの(X,Y)は、表示手段座標系である。
【0251】
この式は、補正処理後の画素値を補正処理前の画素値から求めることを意味している。説明の為、補正処理後の画素を「補正画素」、補正画素に対応する補正処理前の画素を「参照画素」と呼び、それぞれの画素値を「補正画素値」と「参照画素値」、また、補正画素の位置を「補正画素位置」、補正画素位置に対応する参照画素の位置を「参照画素位置」と呼ぶことにする。
【0252】
例えば上式は、補正画素位置(X、Y)を基準にすると、参照画素位置は((Lxe/Lxef)×X,Y)と表されるから、補正画素値I’(X、Y)に対応する参照画素値を、I((Lxe/Lxef)×X,Y)と表すこともできる。
【0253】
実際に補正処理後の画像を求める場合は、補正画素位置(X、Y)を表示内容の範囲で動かして、それぞれの位置の補正画素値I’(X、Y)を求めてやれば良い。例えば、幅がW,高さがHの表示範囲ならば、Xを[−W/2,W/2],Yを[−H/2,H/2]の範囲で動かすことになる。デジタル処理で、補正画素位置は整数値しか取らないとすると、(W×H)個の画素数になるので、(W×H)個の補正画素値を求めることになる。
【0254】
画素値の得られる画素位置が整数値だけだとすると、上式の参照画素位置((Lxe/Lxef)×X,Y)は、一般にそれぞれ整数値になるとは限らないので、そのままでは参照画素値を得ることができなくなってしまう。その場合は、何らかの補間処理などが行われるのが一般的である。例えば、最も近い整数位置を選ぶ方法、周囲の整数位置の画素値から補間する一次補間法、二次補間法など色々あるが、処理が簡単で画質的にも比較的良好な方法として、一次補間法が最もよく使われている。
【0255】
例えば、参照画素位置(Xr、Yr)が、
Xr=Xri+Xrd (但し、Xriは整数)
Yr=Yri+Yrd (但し、Yriは整数)
と表現されるとする。Xrd、Yrdは小数部分で、0から1の間の数となる。
【0256】
また、参照画素位置(Xr、Yr)の周囲の4つの画素位置(Xri、Yri)、(Xri+1、Yri)、(Xri、Yri+1)、(Xri+1、Yri+1)の画素値をI00、I10、I01、I11と簡略化して表すとする。
【0257】
この時、一次補間法による参照画素値I(Xr、Yr)は、

Figure 2004078121
と求められる。
【0258】
なお、ここではX方向の拡大なので、Yrは整数値(Yrd=0)となり、
I(Xr、Yr)=(1−Xrd)×I00+Xrd×I10
と簡略化できる。
【0259】
以上の処理によって、1軸回りの回転による歪を回転方向に拡大して補正する補正表示内容を得ることができる。
【0260】
図11は、表示手段に正対した時(図10の状態)のオリジナル表示内容のユーザー像を説明する説明図である。枠線20の中に同じ大きさの文字A〜Fが並んでいる。なおこの枠線20は、オリジナル表示内容の一部であるとし、補正処理が行われると補正された形で表示されることになる。ここでは表示範囲は表示手段と同じ大きさとし、枠線20は表示手段の表示範囲境界21と一致しているとする。
【0261】
なお、見え方の比較の為、図11の状態でのユーザー像平面上の表示範囲を矩形状の正対表示範囲22とする。正対表示範囲22は、表示手段の表示範囲境界21をユーザーが正対して見たときのユーザー像平面上の範囲なので、以降のどの図上でも大きさは一定である。従って、ある視線方向におけるユーザー像平面上の表示範囲を正対表示範囲22と比較することで、表示範囲が実際にユーザーにとってどのような大きさで見えるかが分かるようになっている。図11では枠線20、表示範囲境界21、正対表示範囲22は全て重なっている。
【0262】
図12は、オリジナル表示内容の表示された表示手段を(表示手段から見て)右斜め方向から見た時(図9の状態)のユーザー像を説明する説明図である。比較の為に正対表示範囲22を点線で示してある。枠線20、表示範囲境界21とも歪んで見え、文字の大きさも左から右にかけて小さくなり、左側のA、Dの文字より右側のC、Fの文字の方が小さくなって見える。また表示範囲境界21の横幅も正対表示範囲22の横幅と比べて小さくなって見える。なお、右側にいくにつれ、特に表示範囲境界21の縦幅が小さくなっているように見えるのは、後で説明する透視変換の効果による。
【0263】
図13は、本発明に基づき、表示内容を横方向に(Lxef/Lxe)倍、拡大して補正した時の補正表示内容を、表示手段に正対した時(図10の状態)に見えるユーザー像を説明する説明図である。実際にはこの補正を行う時はユーザーは正対した位置ではなく、斜め方向から見ているはずなので、ユーザーがこのような像を見ることはまずないはずであるが、説明の為、ここでは示している。
【0264】
この時の補正表示内容では、各文字は横長になっている。表示内容の中心位置を拡大の中心位置にしているので、左右の部分は表示範囲境界21をはみ出て表示されていない。比較の為、横方向に(Lxef/Lxe)倍した時の枠線20を点線で示してある。
【0265】
図14は、図13と同じ補正表示内容を(表示手段から見て)右斜め方向から見た時(図9の状態)のユーザー像、すなわち補正処理されたユーザー像、を説明する説明図である。補正処理を行っていない図12と比較すると、表示内容が横方向に拡大され、各文字の横方向のサイズは、図11に示すオリジナル表示内容の各文字の横方向のサイズとほぼ一緒になっている。
【0266】
図12では横方向に縮んで見にくくなっていた文字が、図14では正対した時とほぼ同じ横幅として認知できるので、認知しやすくなるという効果が出てくる。すなわち、斜めから見た時の歪が無くなる、あるいは軽減されるように感じられるという効果が出てくる。ユーザーが表示手段に正対した状態でない場合、表示手段を回転させたり、移動させたり、表示手段の正面近くに移動するといった操作や動作をせず、表示手段の向きを変えた状態を保つ保持動作なども必要とせず、正対した状態あるいはそれに近い状態の表示内容を見ることができるという効果が出てくる。
【0267】
また処理方法として、1軸方向の拡大だけで済むので、処理が簡単になるという効果が出てくる。本来、正確に補正を行う為には逆透視変換などの複雑な補正処理を行わないといけないが、拡大処理という簡易な補正方法でカバーすることができるという効果が出てくる。見えにくさの一番の原因は縮小効果であることが多いので、この方法で見にくさの多くを解決することができるという効果もある。
【0268】
なお、ここでは横方向のみの補正を行ったので、透視変換による効果(主に縦方向の伸縮)は図14でも残ったままである。これは後で説明する逆透視変換を使うことで補正することができる。但し、逆透視変換を使う場合は、ユーザーが存在するのが正面方向かどうかだけでなく、右斜め方向から見ているのか、左斜め方向から見ているのかなどの詳しい情報がないと、逆効果になる場合もある。ここでは、横方向のみの補正を行っているので、右斜め方向から見ても、左斜め方向から見ても同じような補正効果が得られる利点がある。
【0269】
したがって、1軸方向の拡大処理は、ユーザーが表示手段の正面付近に存在しているか否かのみを存在検出手段3を用いて簡易に検出する手法と組み合わせることができる。すなわち、ユーザーが表示手段の正面付近に存在してないことを存在検出手段3が検出した場合に、補正手段5が、予め決められた1軸方向(例えば左右方向)に、オリジナル表示内容を拡大する補正を行うだけで、ユーザーは、右斜めおよび左斜めのどちらから表示面を見たとしても、歪の軽減効果を得ることができる。
【0270】
なお、Xd軸とYd軸回りの回転の組み合わせは、座標系の取り方によって、1軸回りの回転とも2軸回りの回転とも解釈できると説明したが、実際の処理においては、センサーや表示の座標系を変更するのは面倒なので、2軸の補正とした方がやりやすいことが多い。
【0271】
例えば、ユーザーが表示手段から見て、Yd軸回りにθy、Xd軸回りにθx回転した方向にいたとする。その場合、
(Lxe/Lxef)=sin(θy)
(Lye/Lyef)=sin(θx)
だけ、表示内容をX方向とY方向にそれぞれ拡大してやれば、2軸の補正が行える。それぞれの処理は先に説明した方法と同じ原理で処理すればよい。X方向の拡大をしてから、Y方向の拡大をしても良いし、あるいはその逆でも良いし、あるいは同時にやっても良い。
【0272】
ところで図14は、文字の幅が、正対して見る図11の時とほぼ同じ幅に見えるので見やすいが、表示範囲境界21に収まりきらない部分が切れて見えないという問題がある。見えない部分を見る為にはスクロール操作などをしないといけない。
【0273】
表示内容によるが、細かい文字などは必ずしも読めなくて良いから、全体が一覧できて、かつ、縦横比などは正対した時とできるだけ同じにして欲しいという場合もあるかもしれない。
【0274】
そこで、歪の原因となる回転方向に表示内容を拡大して補正するのではなく、歪の原因となる回転の軸方向に表示内容を縮小して補正するという方法もある。
【0275】
歪の原因となる回転の軸方向とは、図9(a)、図9(b)の場合、Yd軸方向、すなわち縦方向となる。
【0276】
補正画素値I’は、
I’(X、Y)=I(X,(Lxef/Lxe)×Y)
(Lxef/Lxe)=1/sin(θ)
で得られる。
【0277】
図15は、この方法で補正を行った時の、補正表示内容を(表示手段から見て)右斜め方向から見た時(図9の状態)のユーザー像を説明する説明図である。横方向はそのままなので、枠線20の横幅は表示範囲境界21の横幅と同じで、正対した時の横幅よりは縮小されているが、補正表示内容の全体が表示されている。縦方向は縮小されているので、枠線20の高さは表示範囲境界21の高さより小さくなっている、図12の状態より更に縦方向に縮小されているが、補正表示内容の全体が表示されている。図15の各文字や枠線20は、図12の状態に比べると、縦横比は正対した図11の状態に近い。
【0278】
このように、歪の原因となる回転の軸方向で表示内容を縮小して補正することで、表示内容が表示範囲からはみ出して途切れることなく、簡単な処理で縦横比を正対した状態に近づけることができるという効果が出てくる。
【0279】
また、図13の問題、すなわち、表示範囲に収まりきらない部分が切れて見えないという問題に関しては、歪の原因となる回転の軸方向で表示内容を縮小して補正するという対応方法以外に、別の対応方法も考えられる。
【0280】
その一方法として、補正表示内容が表示範囲を超えてしまうのだから、拡大する際、表示範囲もそれに応じて拡大するという方法が考えられる。
【0281】
先の説明では図8のS4−1で、補正手段5が取得する表示範囲は、表示手段に正対した時に得られる表示範囲と同じ大きさとしていたが、ここでは、正対した時に得られる表示範囲を補正手段5が拡大してやれば良いことになる。例えば、正対した時の表示範囲をW×Hとしていたとすると、拡大した表示範囲W’×H’は、
W’=(Lxef/Lxe)×W
H’=(Lyef/Lye)×H
となる。
【0282】
もちろん、この方法は表示範囲の大きさを大きくすることができる場合にのみ可能な方法である。例えば表示範囲が表示手段の大きさに設定されており、表示手段の大きさが固定なので、表示範囲を拡大することができないということは大いにありえることである。しかし、表示手段が充分大きく、表示範囲が表示手段の中の一つのウィンドウのような形で設定されているウィンドウシステムならば、ウィンドウの大きさを大きくするということは可能である。もちろん、表示手段の大きさを超えて設定することはできないという制限はある。
【0283】
図8のS4−2に関する先の説明では、オリジナル表示内容の一部だけを補正して表示させるか、あるいは、全体が入りきるように補正の際に全体を縮小させるかのどちらかとしていたが、ここでは表示範囲を大きくしているので、補正する範囲をオリジナル表示内容の範囲全てとすればよい。
【0284】
但し、拡大した表示範囲が表示手段の大きさを超えてしまうような場合は従来と同様、オリジナル表示内容の一部だけを補正して表示させるか、あるいは、全体が入りきるように補正の際に全体を縮小させるかのどちらかを選んで、補正範囲を決める必要がある。しかし、少しでも表示範囲が大きくなっているのならば、いずれにしろ図13の場合より悪くなることはない。
【0285】
図16は、本発明に基づき、表示範囲を拡大した時の補正表示内容を、表示手段に正対して見た時(図10の状態)のユーザー像を説明する説明図である。ここでは、表示範囲を横方向に(Lxef/Lxe)倍に拡大している。枠線20は表示範囲境界21と重なっている。また、表示範囲を拡大しているので、正対表示範囲22より、表示範囲境界21の方が大きくなっているのがわかる。
【0286】
図17は、図16の状態の表示手段を(表示手段から見て)右斜め方向から見た時(図9の状態)のユーザー像を説明する説明図である。枠線20とその内部の文字などは全て表示範囲境界21の中に表示されている。(Lxef/Lxe)倍に拡大した表示範囲と表示内容が、斜めから見られて(Lxe/Lxef)倍に縮んで視覚されるので、(Lxef/Lxe)×(Lxe/Lxef)=1、より、ユーザー像上で視覚される表示範囲と表示内容の横幅は、正対表示範囲22とほぼ同じである。また、各文字の大きさなどは正対した図11の時の文字の大きさとほぼ同じように見える。
【0287】
このように表示範囲を拡大することで、上記の効果に加えて、オリジナル表示内容をできるだけ切らずに表示できるようになるという効果が出てくる。すなわち、どの方向からでも、正対したのと近い情報量を得られるという効果が生まれてくる。また、表示範囲を拡大しない場合は、スクロールするなどの操作が必要となるが、それらの操作が減るという効果もある。特に図17のように、視覚できる表示範囲の大きさが、正対した時とほぼ同じになるようにする場合(すなわち、見え方の縮小率の逆数で表示範囲を拡大した場合)は、情報量もほぼ同じで、スクロール操作などもほぼ不要になる。
【0288】
なお、Zd軸回りの補正については、単なる像の回転の補正を行えば良い。Zd軸回りの回転とは、例えば、表示手段に正対して、顔を左か右に傾けた状態である。
【0289】
例えば、Zd軸回りに、ユーザーが顔を左か右にθz傾けたとした場合、補正画素値I’は、
I’(X、Y)=I(X×cos(−θz)−Y×sin(−θz)、X×sin(−θz)+Y×cos(−θz)) (式0)
となる。
【0290】
これによって、Zd軸回りの補正を行うことができ、ユーザーが見た時に表示内容の上下方向が顔の向きに合って表示されるので、見やすいという効果が出てくる。なお、この場合、顔の傾き角度θzは、Zd軸回りの補正を行うための補正パラメータである。
【0291】
Xd軸、Yd軸、Zd軸回りの補正を組み合わせて処理することも当然、可能である。一般に補正処理する軸の数が増えるほど、より見やすい補正表示内容が得られる効果がある。但し、補正処理する軸の数が増えるほど、各軸回りの回転量を得る為のセンサーや表示内容の補正処理にかかる時間や処理装置などのコストもかかってくる欠点もある。従って、実際に使用する場合は、実際の利用シーンに応じて、補正処理する軸の数を必要充分な数に絞り込む方がよい。
【0292】
このように、1軸から3軸まで補正の仕方を選ぶことで、補正処理などにかかるコストと補正効果、使用パターン、目的などを考慮して、適切な補正方向を選ぶことができる効果が出てくる。
【0293】
ところで、これまで説明してきたXd軸とYd軸回りの回転の補正方法は、処理が簡単で比較的大きな効果をあげることができるが、回転角度が大きくなるにつれ、透視変換効果の影響による歪が大きくなってくる。また、表示範囲の大きさに比べて距離Ld(図9(a)参照)が小さくなってくるにつれても、透視変換効果の影響による歪が大きくなってくる。透視変換効果の影響による歪とは、具体的には、例えば図17の補正された枠線20は、左側の高さの方が右側の高さより大きいことなどである。これは枠線20の内部の各文字についても言える。また、枠線20の角も90度ではなくなってしまっている。
【0294】
これらの透視変換効果を完全に取り除くには、逆透視変換による補正処理を行う必要がある。ここでいう逆透視変換とは、オリジナル表示内容を補正した補正表示内容を斜めから見た時のユーザー像が、正対した時に見たユーザー像と完全に一致するような補正方法である。
【0295】
図9の状態で見た表示内容と図10の状態で見た表示内容が同じになる為には、図10のユーザー像平面上の任意の点Pve(Xpve、Ypve)の画素値と、図9(a)、図9(b)のユーザー像平面上の上記と同一座標となる点Pve(Xpve、Ypve)の画素値とが常に同じとなっていれば良い。画素値が同じになる為には、それぞれの点に対応する表示手段上のオリジナル表示内容上の点Pd(Xpd、Ypd)と、補正表示内容上の点Pd’(Xpd’、Ypd’)の画素値が同じになる必要がある。
【0296】
以降、補正の関係式を導く説明を行う。
【0297】
図10より、比例関係から、
Xpd=Xpve×(Ld/Le) (式1)
Ypd=Ypve×(Ld/Le) (式2)
となる。
【0298】
また、図9(a)より、点Pd’から視線Pu−Odに降ろした垂線の長さとXpveとには、
Xpve×((Ld−Xpd’×cos(θ))/Le)=Xpd’× sin(θ)
という比例関係があり、これを整理して書き直すと、
Xpd’=Xpve×Ld/(Le× sin(θ)+Xpve×cos(θ)) (式3)
となる。式1と式3から、Xpveを消去して、
Xpd’=Ld×Xpd/(Ld+Xpd×cos(θ)) (式4)
となり、Ldとθが定まれば、Xpd’とXpdの関係式も定まる。
【0299】
また、図9(b)より、
Ypd’=Ypve×(Ld×cos(θ)−Xpd’)/(Le×cos(θ)−Xpve× sin(θ)) (式5)
となる。式1から式5より、
Ypd’=Ypd×{cos(θ)−Xpd/(Ld+Xpd×cos(θ))}/(cos(θ)−Xpd× sin(θ)/Ld) (式6)
となり、Ld、θが定まれば、Ypd’とXpd、Ypdの関係式も定まる。
【0300】
従って、式4と式6より、Ld、θが定まれば、点Ppd(Xpd、Ypd)に対応する点Ppd’(Xpd’、Ypd’)が求まる。
【0301】
式4、式6をXpdとYpdの式の形に直せば、
Xpd=Ld×Xpd’/(Ld−Xpd’×cos(θ)) (式7)
Ypd=cos(θ)−{sin(θ)×Xpd’/(Ld−Ypd’ ×cos(θ))}/(cos(θ)−Xpd’/Ld) (式8)
となる。
【0302】
従って、式7と式8より、Ld、θが定まれば、点Ppd’(Xpd’、Ypd’)に対応する点Ppd(Xpd、Ypd)が求まる。
【0303】
実際に補正する場合は、点Ppd’(Xpd’、Ypd’)を補正範囲内で動かし、式7、式8より対応する点Ppdの座標値を得て、先に説明した一次補間式などを使って、点Ppd’の画素値を得る。
【0304】
補正範囲は、表示範囲の大きさを変えない場合は表示範囲そのままである。オリジナル表示内容が全て見られるように、表示範囲を拡張する場合は、図9(b)の点Prtd、点Prbd、点Plbd、点Pltdの4点で囲まれる点線の範囲が表示範囲となる。これら4点の座標位置は、正対した時の表示範囲の4隅の座標位置を式4、式6に代入することにより、求められる。
【0305】
図18は、この補正により表示範囲も拡張して補正した時の補正表示内容である。この補正表示内容を図9の斜め横から見た場合は、図11と完全に一致するユーザー像が得られる。もっとも、完全一致と言っても、数式上、完全に一致しているというだけで、実際は表示手段の解像度などの影響や補間や量子化誤差、計算誤差の影響を多少受ける。しかし見た目にはほぼ同じと言ってよいユーザー像が得られる。
【0306】
上述の方法では、Yd軸回りに回転した場合について説明したが、さらにXd軸回りの回転が加わっても、座標変換を行うことで、上述の方法をそのまま適用できる。
【0307】
図29はこの時の状態を説明する説明図である。原点Od,Xd軸、Yd軸、Zd軸に関しては、図9、図10と同様である。表示面に正対している時の視点を視点Oe”とし、視点Oe”と原点Odとの距離をLdとする。Zd軸上にある視点Oe”が、Yd軸回りに(π/2−θ’y)回転して視点Oe’に移動し、さらにXd軸回りに(π/2−θ’x)回転して視点Oeに移動したとする。
【0308】
図29では、この移動を分かりやすくする為に、矢印付きの点線で示している。また、視点は軸回りに回転しているだけなので、視点と原点Odとの距離は変わらず、視点Oe’と原点Odとの距離、視点Oeと原点Odとの距離は、共にLdである。
【0309】
また、視点Oe’はXd−Zd平面に属し、視点Oe’からXd軸に降ろした垂線とXd軸の交点を、点Pd1とする。従って、∠Oe’OdPd1=θ’yである。
【0310】
同様に、視点OeからXd−Yd平面に降ろした垂線とXd−Ydの交点を、点Pd2とする。従って、∠OePd1Pd2=θ’xである。なお、視点Oe’,視点Oe,点Pd1,点Pd2は、同一平面内に属し、Xd軸に垂直である。∠OeOdPd2をθ’、∠Pd1OdPd2をθ’zと呼ぶことにする。
【0311】
図29の状態から、Zd軸回りに(−θ’z)回転すれば、図9と同様の状態、すなわち正対した状態(視点Oe”)からYd軸回りに回転した状態となる。違いは、Yd軸回りの角度が(π/2−θ)から(π/2−θ’y)に変わっただけである。従って、図9で説明した方法がそのまま利用できることになる。
【0312】
但し、Zd軸回りに(−θ’z)回転する座標系変換が必要である。図29でのXd−Yd平面上の任意の点(X’、Y’)を、Zd軸回りに(−θ’z)回転した後の点(X”、Y”)は、
X”=X’×cos(−θ’z)−Y’×sin(−θ’z)
Y”=X’×sin(−θ’z)+Y’×cos(−θ’z)
で求められる。
【0313】
以降、θ’x、θ’yからθ’とθ’zを求める。
【0314】
原点Odと点Pd1との距離OdPd1は、
OdPd1=OdOe’×cos(θ’y)=Ld×cos(θ’y)
となり、視点Oe’と点Pd1との距離Oe’Pd1は、
Oe’Pd1=OdOe’×sin(θ’y)=Ld×sin(θ’y)
となる。視点Oe’から視点Oeへの移動はXd軸回りの回転だから、距離OePd1は距離Oe’Pd1に等しい。
【0315】
従って、点Pd1と点Pd2の距離Pd1Pd2は、
Pd1Pd2=OePd1×cos(θ’x)=(Ld×sin(θ’y))×cos(θ’x)
となる。OdPd1とPd1Pd2が求まったので、θ’zが、
Figure 2004078121
より求まる。なお、「arctan」は、tanの逆関数である。
【0316】
原点Odと点Pd2との距離OdPd2は、
Figure 2004078121
となる。なお、「x¢2」はxの2乗を意味し、「sin¢2(θ)」は、sin(θ)の2乗を意味する。
【0317】
OdOeとOdPd2が求まったので、θ’が、
Figure 2004078121
より、求まる。なお、「arccos」は、cosの逆関数である。
【0318】
以上の計算式で、θ’x、θ’yからθ’とθ’zを求めることができ、上述したZd軸回りの座標変換により、図9で説明した手法を適用できる。これにより、Xd軸、Yd軸回りの2軸の回転に対する補正を行うことができる。
【0319】
なお、一般に、Zd軸回りにθ’z回転させると、ユーザー像も視線軸回りにθ’z回転する。従って、上述した(式0)で回転処理を行うことで、ユーザー像の回転もさらに補正でき、3軸の回転に対する補正を行うことができる。
【0320】
以上説明した処理で、逆透視変換について、1軸(Yd軸あるいは視線軸)だけの補正処理、2軸(Xd軸、Yd軸)だけの補正処理、3軸(Xd軸、Yd軸、視線軸)の補正処理ができるようになる。なお、この3軸、すなわちXd軸、Yd軸、視線軸の回転は、ロール、ピッチ、ヨーの回転に相当する。
【0321】
なお、ここでは、1軸、2軸について、Yd軸あるいは視線軸や、Xd軸とYd軸で説明したが、他の組み合わせも、各処理方法を組み合わせることで可能である。
【0322】
このように、逆透視変換で補正を行うことで、正対した時とまったく同じ補正表示内容を見ることができる効果が出てくる。単なる拡大、縮小、回転などの補正処理ではある程度近い補正表示内容は得られるかもしれないが、まったく同じ補正表示内容は、逆透視変換による処理でしか得られない。
【0323】
なお、ここで説明した逆透視変換処理は、正対した時とまったく同じ補正表示内容を見ることができるような完全な補正方法であるが、もっと簡易的に補正する方法もある。例えば、式7によるX軸方向だけの補正を行い、式8によるY軸方向の補正を行わないなどという方法である。この場合、補正後の画像は、X軸方向にだけ伸びたり縮んだりすることになる。あるいは逆に式8によるY軸方向だけの補正を行い、式7によるX軸方向の補正を行わないなどという方法も考えられる。
【0324】
次に、ここまで説明した補正処理を所定時間毎に繰り返す別の実施形態について説明する。
【0325】
図19は、本発明の別の実施形態に係る表示方法を示すフローチャート図である。図1のフローチャート図の処理と主要部分はほぼ一緒であるが、補正処理を所定時間毎に繰り返すというところが異なる。
【0326】
具体的には、図1に基づいて説明したS1からS5を経て、S5から新たなS6へ処理が進み、補正表示処理を終了させるかどうかを判断して、終了させる場合は処理を終了し、終了させない場合は新たなS7Aへ処理が進む。
【0327】
終了させるかどうかは、例えば、補正処理モードにするかどうかのユーザーの指示に基づけば良い。ユーザーがボタンなどで補正処理モードを指定していたら処理を続けるし、補正処理モードの指定をやめていたら、処理を終了させることになる。ユーザーの指示以外にも、例えば、補正処理モードに入ってから一定時間経ったら自動的に補正処理モードを抜けるとか、ユーザーが表示手段付近に一定時間以上存在しなかったら補正処理モードを抜ける、などという方法も考えられる。
【0328】
S7Aでは、所定時間待ち、P10を経て、S3へ処理が戻る。
【0329】
なお、S6、S7Aの処理は、補正手段5や表示手段6などが処理してもよいし、あるいは、図3には記載していないが、S6、S7Aの処理を行う繰り返し処理制御手段などを専用に設けて、処理させてもよい。
【0330】
これらの処理で、所定時間毎にユーザーの視線方向を得て、それに従って補正処理が繰り返し行われることになる。
【0331】
これによって、表示手段と相対的にユーザーが移動したりしたとしても、それに追随して補正が行われるので、常に補正した表示を得られるという効果が出てくる。
【0332】
なお、所定時間とは必ずしも一定でなくてもよく、例えばそのときの状況に応じて、時間間隔を変えるなどしてもよい。
【0333】
さらに、時間間隔を非常に短くすることで、ほぼリアルタイムに補正が行えることになる。
【0334】
図20は、本発明の更に別の実施形態に係る表示方法を示すフローチャート図である。図19のフローチャート図の処理とほぼ一緒であるが、補正処理を所定時間毎に繰り返すのではなく、ユーザーの視線方向が変わった時に行うというところが異なる。
【0335】
具体的には、図19のフローと同様にS5からS6へ処理が進み、補正表示処理を終了させるかどうかを判断して、終了させる場合は処理を終了し、終了させない場合は新たなS7Bへ処理が進む。
【0336】
S7Bでは、ユーザーの視線方向が変わったかどうかを検知して、変わるまで待つ。ユーザーの視線方向が変わった場合、P10を経てS3へ処理が戻る。なお、S7Bの動作の主体に関しては、S7Aと同様である。
【0337】
ユーザーの視線方向が変わったかどうかは、方向検出手段4で定期的にユーザーの視線方向を検出して、視線方向が変わったかどうか補正手段5で比較したり、あるいはセンサーの検出した視線方向が変わったら、センサー自体が割り込み信号などを発するようにしておき、存在検出手段3あるいは方向検出手段4がセンサーから割り込み信号などを得たら、ユーザーの方向が変わったと補正手段5で判断する、などという方法が考えられる。ユーザーの視線方向変化の検出と同時に視線方向の情報も得ている場合は、S3のユーザーの視線方向を取得する処理は飛ばして、S7BからS4へ処理が進んでも良い。
【0338】
外見的な動作は、図19のフローチャート図の場合と同じだが、内部的な処理として、図20の処理の方が、無駄な補正処理を行わなくて済むという利点がある。つまり、ユーザーの視線方向が変わらないのだったら、補正処理を何度行っても結果(補正表示内容)は一緒なので、ユーザーの視線方向が変わったことが検出できた時だけ補正処理を行えば充分である。
【0339】
これによって、無駄な補正処理を行わなくて済むという効果が出てくる。
【0340】
〔実施形態2〕
実施形態1では、メイン表示プログラム/装置が生成した表示内容を、加工して新たな表示内容を生成する方法について説明したが、実施形態2では、メイン表示プログラム/装置が表示内容を生成する際に、生成の仕方に手を加える処理に関して説明する。
【0341】
本実施形態の構成図は、実施形態1と同様、図3となる。以降、実施形態1での図3の説明と異なる部分に絞って説明する。
【0342】
表示内容取得手段2としてのCPU70は、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、コンテンツ取得手段1から得たコンテンツデータから表示対象要素を得て、補正手段5に渡す。そして、補正手段5で補正されて戻ってきた表示対象要素を得て、表示範囲に対してレイアウトする。これらの処理を繰り返し、最終的に得られた補正表示内容を補正手段5に渡す。
【0343】
補正手段5としてのCPU70は、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、表示内容取得手段2から得られるそれぞれの表示対象要素を、方向検出手段4から得たユーザーの視線方向の情報に従って補正し、補正された表示対象要素を表示内容取得手段2に返す。これらの処理を、表示する(補正する)全ての表示対象要素に対して繰り返す。そして最終的に得られた補正表示内容を表示内容取得手段2から得て、表示手段6へ渡す。
【0344】
なお、この場合、表示内容取得手段2と補正手段5を一体のものとしてもよい。
【0345】
図3の各手段1〜6を具体的に実現する装置の構成例は、実施形態1の図4と同様である。また、本実施形態の表示補正装置の外観例に関しても、実施形態1の図5と同様である。
【0346】
図21は、本発明の実施の一形態に係る表示方法を示すフローチャート図である。実施形態1の図1のフローチャート図の処理と共通部分が多いが、ユーザーの視線方向を取得した後に、表示内容の取得と補正処理をS4Bで行うところが異なる。
【0347】
具体的には、S3からP40を経て、新たなS4Bへ処理が進む。
【0348】
S4Bでは、表示内容取得手段2と補正手段5が、コンテンツの表示内容の取得と補正を行い、P50を経て、S5へ処理が進む。
【0349】
ここで、以降の説明の為、レイアウトについて説明しておく。
【0350】
図22は、レイアウト全体について説明する説明図である。レイアウト範囲40は、コンテンツの表示内容においてレイアウトを行う範囲である。通常、レイアウト範囲40の縦か横かどちらかの大きさは、表示範囲44の縦か横の大きさと同じとすることが多いが、上下左右に余白を取ることもあり、その場合はその分だけレイアウト範囲は小さくなる。重なって分かりにくくなるので、図では少し表示範囲44の幅を広げてあるが、ここでは、表示範囲44の横の大きさをレイアウト範囲40の横の大きさと同じにしている。表示範囲44は、レイアウト範囲40中、実際に表示手段に表示される範囲である。
【0351】
なお、先に説明した補正手法と比較しやすくする為、図22の例では、レイアウトの内容を表示手段に表示させて、表示手段にユーザーが正対して見た場合、図11と同じになるようにしてある。
【0352】
「表示対象要素」とは、表示内容を構成すると共に、表示の対象となる要素であり、例えば、個々の文字や画像などが相当する。図22では、表示対象要素41、42、43などが表示対象要素に相当する。分かりやすいようにそれぞれ点線の枠線で囲ってあるが、実際にはこれらの枠線は表示されない。
【0353】
図23は、表示対象要素のデータ構造例を説明する説明図である。レイアウトデータ80、81、82などが個別の表示対象要素のデータであり、各々、種類(CHAR、IMAGEなど)、レイアウト位置(X、Y)と大きさ(W、H)、内容などのデータを持っている。種類は、文字(CHAR)、画像(IMAGE)などの表示対象要素の種類を表す。レイアウト位置は、レイアウト処理によってレイアウトされた表示範囲上の位置であり、表示される時にこのレイアウト位置を基に表示位置が決まることになる。大きさは、ここでは表示対象要素の外接矩形の幅と高さとしている。「内容」は、表示する際に必要なデータであり、表示対象要素の種類によって異なるが、例えば文字ならば文字コード、画像ならば画像ビットマップデータなどとなる。
【0354】
「レイアウトする」とは、レイアウト範囲40に表示対象要素をあるルールに従って配置していくことである。具体的には、「レイアウトする」とは、図23のレイアウト位置(X、Y)を主に決定することである。
【0355】
レイアウトのルールはコンテンツの種類によって異なるが、例えばテキストエディタや単純なワードプロセッサなどでは、文字は前の文字の横(横行の場合)に配置し、レイアウト範囲に入りきらなかったり、改行コードの次の文字の場合は、次の行の行頭に配置する、などとなる。WWW(World Wide Web)ブラウザなどでは、HTML(Hyper Text Markup Language)で定められるレイアウトルールとなる。
【0356】
なお、本発明で効果が現れるのは、このレイアウトルールが、レイアウト範囲40の大きさ変更や表示対象要素の大きさ変更などに伴ってレイアウト結果が変わるような場合である。表示対象要素の位置や大きさが動的に変化せず、常に固定的な位置や大きさを取るレイアウトルールの場合は、レイアウト自体を全く変更できないことになるので、効果が出てこない。
【0357】
図22の例は、「A」〜「I」の文字の表示対象要素を順に、横行として表示範囲44に対してレイアウトした結果である。ここでのレイアウト処理例を、図23のデータ構造を使って説明する。各表示対象要素のレイアウトデータ80〜82には、横幅Wと高さHは各文字とも既に与えられているとし、ここでは、どの文字もW0×H0の大きさとする。レイアウト範囲40の幅をWL(ここではW0の3倍強程度の大きさ)とする。
【0358】
最初に文字「A」を左上に配置する。「A」の位置(X,Y)は、(0,0)となる。次に「A」の右横に「B」を配置できるかどうか判断する。
【0359】
(直前の表示対象要素のX位置)+(直前の表示対象要素の横幅)+(判断する表示対象要素の横幅)<WL
が成り立つならば、配置できると判断する。
【0360】
配置できると判断された場合は、直前の表示対象要素の右横に配置され、
(配置する表示対象要素のX位置)=(直前の表示対象要素のX位置)+(直前の表示対象要素の横幅)
(配置する表示対象要素のY位置)=(直前の表示対象要素のY位置)
となる。
【0361】
配置できないと判断された場合は、次の行の行頭に配置され、
(配置する表示対象要素のX位置)=0
(配置する表示対象要素のY位置)=(直前の表示対象要素のY位置)+(直前の表示対象要素の縦幅)
となる。
【0362】
「B」は「A」の横に配置できるので、「B」の位置(X,Y)は、(W0,0)となる。「C」も同様に隣に配置できるので、位置(X,Y)は、(W0×2,0)となる。
【0363】
次の文字「D」は右横には配置されないと判断されるので、次の行の行頭に配置され、位置(X,Y)は、(0,H0)となる。このような処理を繰り返して、表示対象要素をレイアウトしていく。
【0364】
実際に使われるレイアウトルールは一般にもっと複雑であり、例えば、行間スペース、改行、禁則処理、画像の回り込み処理などを考慮してレイアウトするなどしないといけない。これらのレイアウトルールは、メイン表示プログラム/装置によって様々である。全ての場合について説明することはできないが、ここで説明したレイアウトルールは、多くのレイアウトルールの基本となる方法なので、以降ではこのレイアウトルールに従って説明する。
【0365】
図24は図21のS4Bの処理を実現する一方法を説明するフローチャート図である。ここでは、表示内容取得手段2が、表示対象要素をレイアウトし直す(再レイアウト)処理を行う。
【0366】
P40を経たS4B−1では、表示内容取得手段2がレイアウト範囲を得て、S4B−2へ処理が進む。レイアウト範囲とは、表示対象要素をレイアウトする範囲であり、ここではレイアウト範囲40としておく。表示範囲の大きさは通常、予め決まっているので、主記憶74や外部記憶75などからその大きさを読み込む。大きさを変えられる場合は、例えばAPI(Application Programming Interface)などを通じて、現在の表示範囲の大きさを得る。
【0367】
S4B−2では、表示内容取得手段2がコンテンツデータ中の最初の表示対象要素をカレント要素に設定して、S4B−3へ処理が進む。図23の場合、最初のレイアウトデータ80をカレント要素とすればよい。
【0368】
S4B−3では、補正手段5がカレント要素を補正して、S4B−4へ処理が進む。ここでいう補正方法は、原理は今まで画像ベース(表示内容全体を補正の単位とすること)で説明してきた手法と同じである。例えば、横方向に拡大する補正を行うのならば、カレント要素の大きさがW0×H0で、拡大する倍率がRxならば、(W0×Rx)×H0の大きさにすればよい。先の説明の例で言えば、Rx=(Lxe/Lxef)≒sin(θ)である。
【0369】
S4B−4では、表示内容取得手段2がカレント要素をレイアウトして、S4B−5へ処理が進む。レイアウトの仕方については、上で説明した通りである。但し、ここではS4B−3で表示対象要素の形や大きさが変わっているので、それを使ってレイアウトすることになる。S4B−3の例でいえば、(W0×Rx)×H0の大きさのカレント要素をレイアウトすることになる。先に説明したレイアウトルールの例で言えば、(表示対象要素の横幅)を、(W0×Rx)として処理すればよい。
【0370】
なお、S4B−3で表示対象要素をひとつずつ補正してS4B−4で逐次レイアウトするのではなく、S4B−1で表示対象要素を得た後、全ての表示対象要素を一度に補正してから、補正された表示対象要素をS4B−4でひとつずつレイアウトするのでもよい。
【0371】
S4B−5では、表示内容取得手段2がカレント要素が最後の要素かどうか判断し、最後の要素ならばP50へ処理が抜けて、最後の要素でないのならばS4B−6へ処理が進む。
【0372】
(S4B−5でカレント要素が最後の要素でないと判断された場合に処理が進む)S4B−6では、表示内容取得手段2がカレント要素を次の表示対象要素に設定して、S4B−3へ処理が戻る。
【0373】
これらの処理によって、図21のS4Bの処理の一例が実現できる。
【0374】
これによって、個々の表示対象要素を補正しながらレイアウトすることができるようになる。
【0375】
図25は、ユーザーが表示面に正対した状態で、図22に示すようにレイアウトされていた個々の表示対象要素を、横に拡大してレイアウトし直した時の結果を説明する図である。
【0376】
例えば、図22の個々の表示対象要素41、42、43が横に拡大されて、図25の表示対象要素41’、42’、43’となっている。表示対象要素41’、42’は1行目だが、表示対象要素43’はレイアウトしきれず、次の行の行頭に配置されている。
【0377】
図26は、図25のようにレイアウトされた表示範囲44を表示範囲境界21として表示した状態の表示手段を(表示手段から見て)右斜め方向から見た時(図9の状態)のユーザー像を説明する説明図である。比較の為、正対表示範囲22を点線で示している。
【0378】
各文字の大きさなどは図14の補正と同様、正対した時の図11の時の文字の大きさとほぼ同じように見える。図14と比べると、各文字の見え方(表示範囲境界21の大きさに対する文字の大きさ等)などは一緒だが、図14は端の文字が切れて表示されてしまっているのに比べ、図26では、補正された表示対象要素をレイアウトし直しているので、文字が切れるということが無い。
【0379】
表示内容全体を補正の単位として処理を行う場合、文字が切れないようにするには、図15のように、表示内容を縦に縮小する方法があるが、これでは文字自体の見える大きさが小さくなって見えにくくなってしまう。また、図17のように表示範囲を大きくする手法もあるが、実現の可能性は表示環境に依存し、必ず大きくできるとは限らない。
【0380】
本手法の表示対象要素を補正の単位として処理する場合、文字が見やすい大きさで、かつ、表示範囲の大きさを変えずに文字などを切れないようにすることができ、またそれがどのような表示環境であっても実現できるという効果が出てくる。
【0381】
また、表示対象要素を補正の単位として処理する場合、例えば、1方向としての横方向に表示内容を拡大する場合、個々の表示対象要素を横に拡大した大きさのものとして扱うので、再レイアウトの処理は、正対した状態の時に補正前の表示対象要素をレイアウト処理する時と全く同じレイアウト処理を使うことができる効果が出てくる。
【0382】
また表示に関しても、文字描画は、文字や画像の拡大縮小処理も含めて、専用ハードウェアや高速化された処理ルーチンがあることが多い為、画像で表示するよりも、文字は文字として表示させた方が、多くの場合、高速に描画することができるという効果も出てくる。
【0383】
なお、実施形態1同様、図19、図20の処理のように、繰り返し処理も可能である。
【0384】
なお、実施形態1では、表示内容全体を一枚の画像のように補正していたが、補正内容は一緒だが、補正対象とする画素を表示対象要素の範囲内だけに絞ることで、処理量を減らすこともできる。
【0385】
具体的には、実施形態1での式7、式8で、補正前の画像上の点Ppd(Xpd、Ypd)と補正後の画像上の点Ppd’(Xpd’、Ypd’)の関係式を示したが、点Ppd(Xpd、Ypd)が表示対象要素の範囲内にあるかどうかを調べればよい。範囲内にある場合は、点Ppd’(Xpd’、Ypd’)を求めて補正を行う。範囲外にある場合は、補正を行わない、すなわち対応する点Ppd’(Xpd’、Ypd’)は背景色のままとなる。
【0386】
実際には、先に説明した通り、点Ppd’(Xpd’、Ypd’)から対応する点Ppd(Xpd、Ypd)を求める(参照する)処理になることが多いので、点Ppd’(Xpd’、Ypd’)の時点で、表示対象要素の範囲内にあるかどうか判断できた方がよい。そこで、補正前の画像上の表示対象要素の外接矩形枠が、補正後の画像上でどの範囲になるかを予め計算し、その範囲内かどうかで判断すればよい。
【0387】
さらに具体的な処理例を説明すると、外接矩形枠は、4隅の点を計算すればよいので、計算量は少なくて済む。別途、マスク画像を用意し、そのマスク画像上に補正後の表示対象要素の外接矩形枠を描画し、枠内を所定の画素値(マスク画素値)で塗りつぶす。点Ppd’(Xpd’、Ypd’)の位置のマスク画像上の画素値がマスク画素値かどうかで、判断できる。
【0388】
なお、実施形態1の説明では、表示内容全体を一枚の画像のように補正していたが、補正の原理自体は実施形態1での説明と同じで、補正の単位を画素ではなく、表示対象要素とする方法もある。つまり、表示対象要素の補正後の位置や拡大縮小率、回転量、透視変換量などを計算し、各表示対象要素にそれらの補正を施して、補正表示内容とする。ユーザーが目にする補正表示内容のユーザー像自体は、画素単位でやっても表示対象要素単位でやってもほぼ同じであるが、補正処理の実装の手間や処理時間などが変わってくる。
【0389】
特に、単純に縦や横に拡大するだけなどの場合、例えば文字などは描画命令としてOS(operating system)などが拡大縮小、回転機能などを持っていることがあるので、それらの機能を利用することができ、補正処理の実装が簡単となり、また先に説明したように専用の処理なので多くの場合、画素単位でやるより処理が高速にできるというような利点が出てくる。
【0390】
〔実施形態3〕
実施形態1、実施形態2では、ユーザーの視線方向を検出して補正を行う方法について説明したが、ここではユーザーの視線方向を直接検出せずに補正を行う方法について説明する。
【0391】
本実施形態の構成図は、実施形態1の図3とほぼ同じだが、存在検出手段3は使わない。また、方向検出手段4の実施の仕方も変わる。以降、図3での説明と異なる部分に絞って説明する。図3の各手段1、2、4〜6を具体的に実現する装置の構成例は、実施形態1の図4と同様である。
【0392】
方向検出手段4としてのCPU70は、主記憶74、外部記憶75、通信デバイス77などから読み取られるプログラムに基づき、センサー73からの情報を得て、表示手段の表示方向(基準表示方向に対する表示面の角度)を検出する。次に、CPU70は、外部記憶装置や主記憶、あるいはAPI(Application Programming Interface)を通じて得た所定の基準表示方向と検出した表示方向とを比較して、ユーザーの視線方向を推定し、補正手段5にユーザーの視線方向の情報を送る。
【0393】
このセンサー73は、表示手段の表示方向を検出するもので、例えば、ヒンジや回転台、アームなどの関節角度を検出するポテンショメータなどの角度センサーなどを含む。方向検出手段4は、センサー73から得た角度情報を用いて、表示方向を計算するなどすればよい。
【0394】
図27は、本実施形態の表示補正装置の外観例を示している。本体90’上にディスプレイ部91’があり、ディスプレイ部に補正表示内容が表示される。本体90’は、別の機器99にヒンジ部98を介して留められており、ヒンジ部98によって、本体90’と機器99とは相対的に角度を変えることができるようになっている。また、ヒンジ部98には角度センサーが埋め込まれており、本体90’と機器99の相対的な角度を検出する。
【0395】
本発明の実施の一形態に係る表示方法を示すフローチャート図は、実施形態1同様、図1であるが、S3の処理が異なる。
【0396】
図28は、本発明での図1のS3の処理を実現する一方法を説明するフローチャート図である。
【0397】
P10を経て、S3C−1では、方向検出手段4が、表示手段の表示方向を取得して、S3C−2へ処理が進む。表示手段はここでは、表示手段が別の装置や什器、壁などに取り付けられていて、ヒンジや回転台、アームなどによって表示面の向く方向を変えられるとする。
【0398】
例えば、ノート型パソコンは収納時は表示手段である液晶ディスプレイ面とキーボード面を合わせて閉じてあるが、使用時は液晶ディスプレイ面を起こして使う。液晶ディスプレイ面とキーボード面はヒンジ部で繋がれているが、両者の面の開き角度を方向検出手段4が取得すればよい。また、TVなどのモニターを水平方向に回転する回転台に載せている場合などでは、その回転台の回転角度を方向検出手段4が取得すればよい。
【0399】
S3C−2では、方向検出手段4が、基準表示方向を得て、S3C−3へ処理が進む。基準表示方向の値は予め決められていて、外部記憶手段やプログラム中などに記録されているとする。したがって、方向検出手段4は、記録された値を読み出すことで基準表示方向を得ることができる。
【0400】
基準表示方向を決めるにあたって、表示手段の状態は任意なので、ある状態における表示方向を基準表示方向と決めておけばよい。ここでは通常の使用状態で、ユーザーに表示面が正対する時の表示方向を基準表示方向としておく。
【0401】
例えば液晶ディスプレイを備えたノート型パソコンならば、ノート型パソコンを机の上において、ユーザーが椅子に座って使用するような場合、平均的なユーザーの頭の位置を統計的に求めることができる。その平均的な位置で液晶ディスプレイ面に正対する時のヒンジ部の角度を基準表示方向とすればよい。ユーザーによって基準表示方向を微調整するのならば、そのユーザーの使用形態で液晶ディスプレイに正対する時を指示してもらい、その時のヒンジ部の角度を基準表示方向とすればよい。
【0402】
S3C−3では、方向検出手段4が、S3C−1で得た表示方向をS3C−2で得た基準表示方向と比較して、ユーザーの視線方向を推定して算出し、補正手段5に推定したユーザーの視線方向を渡して、P20へ処理が抜ける。例えば、S3C−2で正対した時を基準表示方向としているならば、現在の表示方向と基準表示方向との差が、表示面から相対的に見たユーザーの視線方向であると推定すればよい。
【0403】
液晶ディスプレイなどには輝度に関して方向性があることがあり、ディスプレイ面と正対している時よりも、少し斜めから見た方が見やすいということがある。また、ディスプレイ面が暗くて見にくいので、照明があたるようにディスプレイ面を少し回転させたり、あるいは逆にディスプレイ面に他の照明が映りこんで見にくいので、ディスプレイ面を少し回転させたりして使用することはよくある。あるいは何らかの空間的配置の問題で、ある角度でしかディスプレイ面を見られないということもあるかもしれない。
【0404】
このように、正対状態ではなく、斜めの方向から見るということもあるが、そのような時でも表示手段の表示方向を得ることで、ユーザーの視線方向を推定し、補正することができるようになる。
【0405】
外部にセンサーを置いたり、外部をセンサーで走査したりする場合、その設置などの手間やコストの問題、また外部センサーを使うことによる検知ミス(例えば人でないものを検知してしまうなど)の問題などがある。これに対し、本実施形態のように表示方向を検出する場合、例えばヒンジ部に角度センサーを組み込むことで、外部の影響を受けずに確実かつ安価な方法で表示方向を検出することができる効果が出てくる。
【0406】
なお、実施形態1同様、図19、図20の処理のように、繰り返し処理も可能である。
【0407】
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることはいうまでもない。
【0408】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0409】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピィディスク,ハードディスク,光ディスク,光磁気ディスク,磁気テープ,不揮発性のメモリカード,等を用いることができる。
【0410】
また、上記プログラムコードは、通信ネットワークのような伝送媒体を介して、他のコンピュータシステムから本装置の主記憶74または外部記憶75へダウンロードされるものであってもよい。
【0411】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【0412】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることはいうまでもない。
【0413】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードを格納することになる。
【0414】
なお、実施形態1、実施形態2、実施形態3として説明した本発明に係る表示補正装置、表示補正方法、表示補正プログラムは上述した各実施形態に限定されるものではない。すなわち、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0415】
【発明の効果】
本発明に係る表示補正装置は、以上のように、情報を表示する表示手段の表示面に対するユーザーの視線方向の情報を得る方向検出手段と、表示面にユーザーが正対した場合を基準として、前記方向検出手段から得た視線方向から表示面を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正手段と、を有することを特徴とする。
【0416】
これによって、ユーザーが正対した状態以外の視線方向から表示面を見た時に、その歪が無くなる、あるいは軽減されるように感じられるという効果が出てくる。また、ユーザーが表示手段に正対した状態で無い場合、表示手段を回転させたり、移動させたり、表示手段の正面近くにユーザーが移動するといった操作や動作をせず、表示手段の向きを変えた情報を保つ保持動作なども必要とせず、正対した状態あるいはそれに近い状態の表示内容を見ることができるという効果が出てくる。
【0417】
本発明に係る表示補正装置は、以上のように、前記補正手段において、表示内容全体を補正単位として補正することを特徴とする。
【0418】
これにより、表示内容全体を同じ補正式あるいは同じ補正パラメータを使って補正するので、表示内容のデータ構造に依存せず、表示できるものならばどんなデータであっても補正することができる効果が出てくる。
【0419】
本発明に係る表示補正装置は、以上のように、表示される情報が一つ以上の表示対象要素からなり、前記補正手段において、個々の表示対象要素を補正単位として補正することを特徴とする。
【0420】
これによって、表示内容全体を補正するより、補正対象となる範囲が少なくなるので、処理量が減るという効果が出てくる。
【0421】
本発明に係る表示補正装置は、以上のように、前記補正手段において、表示手段の表示範囲の大きさとの関係で、表示対象要素の位置を配置し直すことを特徴とする。
【0422】
そこで、補正後の表示対象要素を表示範囲の大きさとの関係で配置し直すことで、表示手段の横幅あるいは縦幅の中に収まりきるように配置することができる。すなわち、表示手段内に表示されている範囲では、意味が途切れないように表示させることができるようになり、理解し易くなる効果が出てくる。また、スクロールバーなどを使う場合も、縦あるいは横の1方向だけで済むので、縦と横の両方にスクロールバーがある状態に比べて、操作が容易となる効果が出てくる。
【0423】
また、表示範囲に表示対象要素をレイアウトする場合、補正された表示対象要素と補正前の表示対象要素とで、扱いが変わるわけではない。すなわち、レイアウト処理結果は異なるが、レイアウトする時の処理手順は同じである。従って、再レイアウトの処理は正対した時にレイアウト処理する時と同じ処理方法を使うことができる効果が出てくる。
【0424】
また表示に関しても、例えば表示対象要素が文字の場合、横に拡大した文字の画像を生成して、その画像の表示をOS(Operating System)に実行させるよりも、横の拡大率が指定された文字の表示をOSに実行させた方が、多くのOSでは高速に実行できるという効果も出てくる。
【0425】
本発明に係る表示補正装置は、以上のように、前記方向検出手段において、ユーザーの視線方向の情報を、3次元空間の3軸のうち1軸または2軸の回転に関して得ることを特徴とする。
【0426】
これによって、ユーザーの視線方向の情報を得る為のコストを抑えることができる効果が出てくる。
【0427】
本発明に係る表示補正装置は、以上のように、前記方向検出手段において、表示手段とユーザーの間の距離の情報を得ることを特徴とする。
【0428】
これによって、視線方向の情報のみを使って歪を補正する場合と比べて、歪を完全に除去したり、より軽減したりすることができる効果が出てくる。
【0429】
本発明に係る表示補正装置は、以上のように、所定の位置範囲にユーザーが存在するかどうかの情報を得る存在検出手段を有し、前記方向検出手段において、前記存在検出手段からの情報に基づきユーザーの視線方向を得ることを特徴とする。
【0430】
これによって、ユーザーの視線方向を、所定の位置範囲にユーザーが存在するかどうかの情報から、ある程度の誤差で簡易的に推定することができるという効果が出てくる。正確な視線方向を求めようとすると、レーダーのような高価な機器が必要になってしまうかもしれないが、所定の位置範囲にユーザーが存在するかどうかなら、安価なセンサーなどを使って実現することができるという効果もある。
【0431】
本発明に係る表示補正装置は、以上のように、前記存在検出手段において、表示手段の正面方向付近にユーザーが存在するかどうかの情報を得ることを特徴とする。
【0432】
これによって、非常に簡易的にユーザーの視線方向を推定することができるという効果が出てくる。
【0433】
また、所定の位置範囲にユーザーが存在するかどうかの情報を得る為に、色々なセンサーなどを複数、色々な方向や場所に用意するのはコストや手間、処理が大変であるが、正面にいるかいないかだけを得るならば、存在検出手段を表示手段(装置)に組み込むだけで済むので、これらのコストや手間、処理を低く抑えることができる効果も出てくる。
【0434】
なお、本構成に組み合わせる補正の仕方としては、左右対称(あるいは上下対称)に歪を補正する手法が好ましいが、逆透視変換などの非対称に歪を補正する手法でも効果を得ることができる。
【0435】
本発明に係る表示補正装置は、以上のように、前記補正手段において、リアルタイム、あるいは所定時間間隔毎、あるいは方向検出手段から得られる視線方向が変わった時に補正を行うことを特徴とする。
【0436】
これによって、表示手段と相対的にユーザーが移動したりしたとしても、それに追随して補正が行われるので、常に補正した表示を得られるという効果が出てくる。
【0437】
本発明に係る表示補正装置は、以上のように、前記補正手段において、3次元空間の3軸のうち1軸以上の回転による歪を補正することを特徴とする。
【0438】
これによって、1軸から3軸まで補正の仕方を任意に選ぶ自由度ができることになるので、補正処理などにかかるコストと補正効果、使用パターン、目的などを考慮して、適切な補正方向を選ぶ形態に対応することができる効果が出てくる。
【0439】
本発明に係る表示補正装置は、以上のように、前記補正手段において、歪の原因となる回転軸に垂直な面と表示面の交わりからなる直線方向に拡大するように表示内容を補正することを特徴とする。
【0440】
これによって、逆透視変換などの複雑な補正処理を行わなくても、縮小して見える歪を、拡大という簡易な補正方法でカバーすることができるという効果が出てくる。見えにくさの一番の原因は縮小効果であることが多いので、この方法で見にくさの多くを解決することができるという効果もある。
【0441】
また文字などを横斜めあるいは上下斜め方向から見ると、縦横比が正対して見る時とは変わってしまうが、本発明の補正を行うことで、正対して見る時と同じあるいはほぼ同じ縦横比として見ることができるようになる効果が出てくる。特に図や写真など、縦横比が変わってしまうと理解しにくいような内容の場合に効果が高い。
【0442】
本発明に係る表示補正装置は、以上のように、前記補正手段において、歪の原因となる回転軸に垂直な面と表示面の交わりからなる直線方向に、表示手段の表示範囲を広げて補正することを特徴とする。
【0443】
これによって、どの方向からでも、正対した時と近いまたは同じだけの情報量を得られるという効果が生まれてくる。また、表示範囲を拡大しない場合は、スクロールするなどの操作が必要となるが、それらの操作を減らせる、もしくは不要とする効果もある。
【0444】
本発明に係る表示補正装置は、以上のように、前記補正手段において、歪の原因となる回転軸方向に縮小するように表示内容を補正することを特徴とする。
【0445】
これにより、表示内容全体の面積は小さくなってしまうので、文字などの大きさ(面積)自体は小さくなってしまうが、正対して見る時と同じあるいはほぼ同じ縦横比としてみることができるようになる効果が出てくる。特に図や写真など、縦横比が変わってしまうと理解しにくいような内容の場合に効果が高い。
【0446】
本発明に係る表示補正装置は、以上のように、前記補正手段において、逆透視変換によって表示内容を補正することを特徴とする。
【0447】
これにより、逆透視変換で補正を行うことで、単に一軸方向に拡大または縮小する補正と比べて、透視変換の影響を無くす、あるいは低減させることができ、最も正確に補正できる効果が出てくる。
【0448】
本発明に係る表示補正装置は、以上のように、前記補正手段において、逆透視変換による補正を、3次元空間の3軸のうち1軸以上に関して行うことを特徴とする。
【0449】
これにより、3次元空間の3軸に関して逆透視変換による補正を行うと、(ディスプレイの解像度などの影響は受けるが)正対した時とまったく同じ表示内容を見ることができる効果が出てくる。
【0450】
また、1軸あるいは2軸だけの逆透視変換による補正をした場合には、3軸に関して逆透視変換による補正を行う場合と比べて処理量を抑えることができる上に、単に1軸または2軸方向に拡大または縮小する補正と比べて、上述したような逆透視変換の効果が出てくる。
【0451】
本発明に係る表示補正装置は、上記の課題を解決するために、表示面の表示方向が変更可能な表示手段の表示方向の情報を得る方向検出手段と、前記表示手段の所定の表示方向をユーザーが表示手段に正対している基準方向とし、前記方向検出手段から得られる表示方向の時に、基準方向時に正対しているユーザーの位置から、表示手段を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正手段と、を有することを特徴とする。
【0452】
これによって、表示手段の表示方向を得るだけで表示内容を補正することができ、補正を確実に簡単に実行することができるという効果が出てくる。表示面とユーザーとの方向を得る為に、外部にセンサーを置いたり、外部をセンサーで走査したりする場合、その設置などの手間やコストの問題、また外部センサーを使うことによる検知ミス(例えば人でないものを検知してしまうなど)の問題などがあるが、表示手段の基準方向に対する角度などを利用して表示方向を得る場合、例えばヒンジ部に角度センサーを組み込むことで、外部の影響を受けずに確実に角度を検出し、表示方向を得ることができる。
【0453】
それ以外の効果は、上記の表示補正装置による効果として、前述したとおりである。
【0454】
本発明に係る表示補正方法は、以上のように、情報を表示する表示面に対するユーザーの視線方向の情報を得る方向検出ステップと、表示面にユーザーが正対した場合を基準として、前記方向検出ステップから得た方向から表示面を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正ステップと、を有することを特徴とする。
【0455】
上記の構成による作用および種々の効果は、上記表示補正方法の構成に対応する表示補正装置による作用、効果として、前述したとおりである。
【0456】
本発明に係る表示補正プログラムは、以上のように、上記表示補正装置が備える各手段をコンピュータに実行させることを特徴とする。
【0457】
本発明に係る表示補正プログラムは、以上のように、上記表示補正方法が備える各ステップをコンピュータに実行させることを特徴とする。
【0458】
本発明に係る記録媒体は、以上のように、上記表示補正プログラムを記録したことを特徴とする。
【0459】
これにより、上記記録媒体、またはネットワークを介して、一般的なコンピュータに表示補正プログラムをインストールすることによって、該コンピュータを用いて上記の表示補正方法を実現する、言い換えれば、該コンピュータを表示補正装置として機能させることができる。
【図面の簡単な説明】
【図1】本発明の表示補正装置による表示補正処理の手順を示すフローチャート図である。
【図2】表示面を基準とする3つの直交軸に対する回転として、ロール、ピッチ、ヨーを説明する説明図である。
【図3】本発明の表示補正装置の機能的な構成を示すブロック図である。
【図4】本発明の表示補正装置の一実施形態における構成例を示すブロック図である。
【図5】本発明の表示補正装置の概観例を示す模式的な斜視図である。
【図6】図1のユーザーの視線方向の取得処理の手順を示すフローチャート図である。
【図7】図1のユーザーの視線方向の取得処理の別の手順を示すフローチャート図である。
【図8】図1の表示内容の補正処理の手順を示すフローチャート図である。
【図9】(a)(b)は、ユーザーが斜めから表示手段を見た時の視線方向と、網膜上のユーザー像平面等の空間的配置、見え方について説明する説明図である。
【図10】(a)(b)は、ユーザーが正対して表示手段を見た時の視線方向と、網膜上のユーザー像平面等の空間的配置、見え方について説明する説明図である。
【図11】ユーザーが表示手段に正対した時に見えるユーザー像を説明する説明図である。
【図12】補正していないオリジナル表示内容をユーザーが斜め方向から見た時に見えるユーザー像を説明する説明図である。
【図13】オリジナル表示内容を1軸方向に拡大し、表示範囲を拡大せずに補正した補正表示内容を示す説明図である。
【図14】図13の補正表示内容をユーザーが斜め方向から見た時に見えるユーザー像を示す説明図である。
【図15】オリジナル表示内容を1軸方向に縮小し、表示範囲を拡大せずに補正した補正表示内容を、ユーザーが斜め方向から見た時見えるユーザー像を示す説明図である。
【図16】オリジナル表示内容を1軸方向に拡大し、表示範囲も拡大して補正した補正表示内容を示す説明図である。
【図17】図16の補正表示内容をユーザーが斜め方向から見た時に見えるユーザー像を説明する説明図である。
【図18】オリジナル表示内容を逆透視変換によって補正し、表示範囲も拡大して補正した補正表示内容を示す説明図である。
【図19】本発明の表示補正装置による表示補正処理の別の手順を示すフローチャート図である。
【図20】本発明の表示補正装置による表示補正処理の更に別の手順を示すフローチャート図である。
【図21】本発明の表示補正装置による表示補正処理の更に別の手順を示すフローチャート図である。
【図22】オリジナル表示内容の表示対象要素のレイアウトについて説明する説明図である。
【図23】各表示対象要素のデータ構造例を説明する説明図である。
【図24】図21の表示内容の取得と補正処理の手順を示すフローチャート図である。
【図25】図22のようにレイアウトされた個々の表示対象要素を横に拡大してレイアウトし直した時のレイアウト結果を説明する図である。
【図26】図25の補正表示内容を、ユーザーが斜め方向から見た時に見えるユーザー像を示す説明図である。
【図27】本発明の表示補正装置の外観例を示す模式的な斜視図である。
【図28】図1のユーザーの方向の取得処理の別の手順を示すフローチャート図である。
【図29】Xd軸とYd軸で視点を回転させた時の、ユーザーが斜めから表示手段を見た時の視線方向と、見え方について説明する説明図である。
【符号の説明】
3  存在検出手段
4  方向検出手段
5  補正手段
6  表示手段
22  正対表示範囲(表示範囲)
41,42,43  表示対象要素
44  表示範囲
74  主記憶(記録媒体)
75  外部記憶(記録媒体)
91  ディスプレイ部(表示手段、表示面)
92,93,94  センサー
95,96,97  圧力センサー
Ld  距離
Od  表示手段座標系原点
Oe  ユーザー像座標系原点
Pu  視点
Xd,Yd,Zd  軸(回転軸)[0001]
TECHNICAL FIELD OF THE INVENTION
According to the present invention, the distortion of the display content, which is viewed when the user looks at the display means from an oblique direction, does not change the positional relationship between the user and the display means, as if the user were looking directly at the display means. And a display correction method, a display correction program, and a recording medium storing the display correction program.
[0002]
[Prior art]
Normally, printed materials such as documents, street posters, TVs, monitors of personal computers (personal computers), and display devices for electronically displaying documents on a display, etc., only display unilaterally. There is no display control that automatically makes the display contents easy to see according to the direction.
[0003]
On the other hand, Japanese Patent Application Laid-Open No. 10-42331 describes a method of controlling the display density according to the angle of the display unit with respect to the horizontal plane. As a result, even in a display such as a liquid crystal display in which the visible density changes depending on the viewing direction, the display density is adjusted according to the angle of the display unit with respect to the horizontal plane, so that an easy-to-view display is performed at any angle. It states that it can be done.
[0004]
Japanese Patent Application Laid-Open No. 10-260666 discloses a display that measures a distance between a display screen of a display unit and a face of a person facing the display screen with a distance sensor, and displays the distance on the display screen according to the measured distance. A display control device capable of changing a display size of information is described.
[0005]
[Problems to be solved by the invention]
However, in Japanese Patent Application Laid-Open No. 10-42331, the display density is changed according to the angle of the display unit with respect to the horizontal plane. This is intended mainly to solve the problem originating in the characteristics of the display. The difficulty in viewing the display when viewed obliquely cannot be solved only by changing the display density. This is because there is another common cause that is difficult to see when the display is viewed obliquely, regardless of the characteristics of the display. It is the distortion that is perceived when the display is viewed from an angle.
[0006]
FIG. 11 is a diagram when a certain document is viewed from the front, but when viewed from an oblique direction, it looks like FIG. Each character is distorted and shrunk in the horizontal direction, and there is a problem that it is very difficult to see.
[0007]
In FIG. 12, the height of the right end portion is smaller than the height of the left end portion. This is the effect of perspective transformation (perspective), but this causes a problem that each character is distorted and shrunk not only in the horizontal direction but also in the vertical direction, making it very difficult to see. Not only do characters and the like become small, but also figures and the like become distorted, and there is a problem that, for example, portions that are orthogonal to 90 degrees appear not to be orthogonal due to the perspective transformation effect.
[0008]
In some cases, the problem can be solved by rotating the display means or carrying the display means. For example, the display means is embedded in a refrigerator, a wall, or the like, and is large / heavy / fixed. Sometimes it is difficult.
[0009]
In that case, there is a problem that it takes time and effort for the user to go to the front of the display means and view it. For example, even if you want to cook while looking at the recipe attached to or displayed on the refrigerator or on the wall, it is difficult to see it from the worktop, so move to the front of the recipe, look at it, and return to the worktop. I have to repeat that troublesome thing.
[0010]
Further, even if it is possible to rotate and carry the device, there is a problem in its labor and the like. For example, it is common practice to read a book or material from a diagonal direction while spreading it on a desk or bed without holding it in your hand. This is because there are various reasons why it is not preferable to hold in your hand, such as getting tired of holding it in your hand or wanting to read while doing some other work with your hand.
[0011]
The display control device described in Japanese Patent Application Laid-Open No. 10-260666 merely changes the display size of display information in accordance with the distance between a human face and a display surface facing the person. No consideration is given to how difficult it is to see it.
Therefore, as long as the human face moves on the spherical surface equidistant from the distance sensor attached to the display surface, no display control is performed even if the distance sensor can measure the distance. As a result, the user who looks at the display surface at an angle can only see the distorted display content as described with reference to FIG.
[0012]
SUMMARY OF THE INVENTION It is an object of the present invention to correct the distortion of the display content when the display surface of the display means is viewed obliquely without bothering the user, so that the display is easy to see.
[0013]
[Means for Solving the Problems]
In order to solve the above-described problems, a display correction device according to the present invention includes: a direction detection unit that obtains information on a viewing direction of a user with respect to a display surface of a display unit that displays information; and a case in which a user faces the display surface. And correcting means for correcting the display content by eliminating or reducing distortion when the display surface is viewed from the line of sight obtained from the direction detecting means.
[0014]
Here, "the user's line of sight" is a relative one with respect to the display surface, and is not an absolute direction in the absolute coordinate system. The direction may be highly accurate information such as “how many times to the right” or simply coarse information such as “left”, “front”, or “right”. In addition, the direction is not only the axis of the left and right (see FIG. 2. The rotation of the display means swinging in the left and right direction can be called yaw based on the case where the user faces the display surface as a reference), but also the vertical (pitch). In some cases, one axis is selected from the axes of rotation and rotation (roll), and in some cases, they are combined with two axes and three axes.
[0015]
The direction detecting unit is a unit that can obtain information on the user's line of sight with respect to the display surface based on some information. As a method of obtaining the information to be based, for example, a method of using some kind of sensor is considered. The direction may be directly obtained from the information obtained from the sensor, or the direction may be calculated by processing based on the obtained information.
[0016]
As a sensor, for example, in a non-contact type, an ultrasonic sensor, an infrared sensor, a heat sensor, a laser sensor, and the like can be considered. By performing image processing on an image captured by a camera, information on the user's line of sight can also be obtained. As the contact type, for example, a pressure sensor or an electrostatic sensor prepared on a mat or the like spread on a floor can be considered. In the process of obtaining the line-of-sight direction, for example, the presence or absence of a user within a detection range can be specified from a signal obtained from a sensor, so that the range in which the user exists can be specified. As a result, the gaze direction can be calculated from the positional relationship between the display means and the range where the user exists.
[0017]
As a method that does not use a sensor, there is a method of directly telling the direction of the user himself using a button or a sound. Alternatively, a method of estimating the location of the user based on the usage status of peripheral devices or the like may be considered.
[0018]
Further, “when the user faces the display surface” refers to a case where the line of sight when the user looks at the display surface intersects perpendicularly with the display surface and there is no rotation (roll) around the axis of the line of sight. . The case where there is no rotation (roll) about the line of sight refers to the case where the vertical direction of the display surface and the vertical direction of the user's face are the same.
[0019]
The “distortion” is the difference between the display content that is seen when the user faces the display means and the display content that is seen when viewed from the current user's line of sight. For example, when the paper surface is viewed from a diagonally left direction, the paper surface appears to contract left and right. This is due to the perspective transformation effect, which occurs strictly in all cases, but if the paper is not relatively large, disregarding distortions other than in the left and right directions, and as distortion that is reduced only in the left and right directions It is also possible to handle.
[0020]
However, when the reference state is set not in the case where the user directly faces the display means, but in the state viewed from any direction, the difference from the display content seen in that state may be used as distortion. In addition, since the rotation (roll) about the axis of the line of sight can be returned by the rotation process, it does not cause enlargement / reduction or a change in the angle of the line of sight with respect to the display surface. Here, it is assumed that it is included in distortion in a broad sense.
[0021]
"Eliminating or reducing distortion to correct the displayed content" means that the displayed content appears to be distorted, while the user's line of sight to the display surface remains the same and the displayed content is directly facing To make them look like or close to it. The case of completely facing is the case where "distortion is eliminated", and the case of approaching the facing state is the case of "reducing distortion".
[0022]
For example, when a user exists in an angle direction of 60 degrees from a vertical line direction (0 degrees) with respect to the display surface of the display means, to make it look straight from 0 degrees is "elimination of distortion". For example, making the image look as if viewed from an angle direction of 30 degrees is "reducing distortion". However, not only in the case of showing exactly as seen from the angle direction of 0 degree or 30 degrees, but also in the case of close to it, for example, in the case of performing scaling in only one axis direction such as left and right instead of reverse perspective transformation Simulated processing is also included in the correction. It also includes correction not only in the yaw and pitch directions but also in the roll direction.
[0023]
Therefore, according to the display correction device of the present invention, the information on the direction of the user's line of sight from the display surface can be obtained by the direction detecting means. The image seen when viewing the display content on the display surface from the obtained viewing direction is different from the image seen when the user faces the display surface, and is distorted by that direction. Therefore, when viewed from the obtained line of sight, the display contents displayed on the display means by a process such as reverse perspective transformation and other scaling, rotation, and rearrangement so that the distortion is eliminated or reduced. The correction is made and displayed by the display means. That is, the display data used to drive the display means is processed.
[0024]
As a result, when the display surface is viewed from a viewing direction other than the state in which the user is directly facing the user, the distortion appears to be eliminated or reduced. When the user is not directly facing the display means, the user does not perform any operation or operation such as rotating or moving the display means, or moving the user near the front of the display means, and changing the direction of the display means. This eliminates the need for a holding operation or the like for maintaining the tilted state, and provides an effect that the display contents in the directly-facing state or in a state close to it can be viewed.
[0025]
In order to solve the above problem, the display correction device according to the present invention is characterized in that the correction means corrects the entire display content as a correction unit.
[0026]
The “correction unit” is a range to be corrected, and is usually corrected using the same correction formula or the same correction parameter.
[0027]
"Correcting the entire display content as a correction unit" means treating the entire display content as a single image and correcting the entire image range using the same correction formula or the same correction parameter. . This is not to correct only a part of the image (display content). Further, by dividing an image (display content) into a plurality of regions, performing a calculation process using a correction formula and a correction parameter for each of the divided regions, and reconstructing the display content using the correction result for each region, It is not to correct the entire display content.
[0028]
For example, the position of the image of the display content before the correction corresponding to the pixel at each position of the image after the correction is obtained by the correction unit. The pixel value at the obtained position is obtained on the image of the display content before the correction, and the pixel value is set as the pixel value at the position of the pixel after the correction. By shifting the positions of the pixels after the correction in order and calculating the pixel values after the correction in the same manner, the entire display content can be corrected.
[0029]
As a result, there is an effect that any data that can be displayed can be corrected without depending on the data structure of the display content.
[0030]
In order to solve the above-mentioned problem, the display correction device according to the present invention is configured such that the displayed information includes one or more display target elements, and the correction unit corrects each display target element as a correction unit. It is characterized by.
[0031]
The “display target element” is an individual element to be displayed, and corresponds to, for example, an individual character or image. The display content is usually configured as an array or a set of a plurality of display target elements.
[0032]
“Correcting each display target element as a correction unit” means correcting within the range of each display target element. In other words, an arithmetic process using a correction formula or a correction parameter is performed only on each pixel constituting a certain display target element. Here, the value of each pixel in the display target element after correction is assumed to be the same as the value of the pixel at the corresponding position in the image corrected using the entire display content as a correction unit.
[0033]
Ranges other than the individual display target elements, for example, pixels forming a margin around the display target element are not the correction processing targets of the present invention. However, for example, as a result of the enlargement correction of a certain display target element, it is natural that the pixels forming the margin are corrected so as to be replaced with the pixels of the display target element subjected to the enlargement correction.
[0034]
According to the above configuration, the correction unit determines the correction parameter for one display target element and performs the correction. The correction method itself may be the same as the correction method described above, but depending on the position of the display target element, etc., each display target element, or more specifically, parameters used for correcting each pixel in each display target element, etc. May be different. The parameters include, for example, an enlargement / reduction ratio, a rotation amount, and a matrix for converting a coordinate system. The parameters are the same when scaling is performed uniformly for all pixels, but the parameters for correction vary depending on the pixel positions when performing reverse perspective transformation.
[0035]
By repeating this for each display target element, each display target element is corrected. In addition, the position of the display target element after the correction may be a position overlapping with the correction result when correcting the entire display content, or may be rearranged.
[0036]
As a result, the possibility that the range to be corrected becomes smaller than when the entire display content is corrected is increased, and the effect that the possibility that the processing amount is reduced is increased.
[0037]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0038]
In order to solve the above-mentioned problem, the display correction device according to the present invention is characterized in that the correction means rearranges the position of the display target element in relation to the size of the display range of the display means.
[0039]
The method of correcting each display target element is the same as the method described above. After correcting each display target element, it is rearranged (also called “rearrangement”, “relayout”, etc.). The arrangement is performed according to a certain method. Usually, the display contents are arranged so that the display contents are not semantically interrupted and fit within the horizontal width or the vertical width of the display means. When individual characters and images of a WWW (World Wide Web) browser are considered as display target elements, a method of rearranging characters and images when the width of a window or the size of characters of the WWW browser is changed is typical. This is a simple example. The rearrangement process may be performed sequentially while correcting individual display target elements, or may be performed collectively after correcting all display target elements.
[0040]
Originally, the display content itself may be too large to fit in the display means. In such a case, the display content is usually read by scrolling the display content vertically or horizontally or switching pages. At that time, the meaning is usually not interrupted within the range displayed in the display means.
[0041]
In simple terms using lines, "not fit in display means" means that all lines are not displayed, and "the meaning is not interrupted within the range displayed in display means." Means that all the characters in one line are displayed in the displayed range of lines. It is not always the case that the width of one line is larger than the width of the display means and only half is displayed. Characters that exceed the width of the display means are folded back to the next line and displayed.
[0042]
If displayed using a scroll bar, the scroll bar is displayed only in one direction, either vertically or horizontally. There is no scrollbar both vertically and horizontally. In this case, when looking at the range displayed in the display means, not all lines are displayed, but some of them are displayed semantically without interruption, so that it is easy to understand. You can also view all rows by simply changing the display range vertically or horizontally using a scroll bar or the like.
[0043]
When simply correcting the entire display content, there is a possibility that the image may be enlarged so as not to fit in the display unit. Similarly, when the corrected position of each display target element is set to a position that overlaps with the correction result when correcting the entire display content, there is a possibility that the display element may not fit in the display unit.
[0044]
If the result of correcting the entire display content is displayed using a scroll bar, the scroll bar may appear both vertically and horizontally. In this case, the sentence or the like is interrupted just by looking at the range displayed in the display means. In the example of the previous line, only part of the line will be displayed. Therefore, the displayed content becomes very difficult to understand. If you want to read text without interruption, you need to change the display range to vertical or horizontal, but you have to operate both the vertical and horizontal scrollbars, and you have to perform that operation every line Therefore, the operation is very troublesome.
[0045]
Therefore, by rearranging the corrected display target elements in relation to the size of the display range of the display means, the display elements can be arranged so as to fit within the horizontal width or the vertical width of the display means. That is, in the range displayed in the display means, the display can be performed so that the meaning is not interrupted, and an effect of making it easy to understand comes out.
Also, when a scroll bar or the like is used, only one direction, vertical or horizontal, is required, so that an effect that operation becomes easier as compared with a state where scroll bars are provided in both the vertical and horizontal directions.
[0046]
Further, for example, in the case where the correction is a process of expanding in one direction, for example, a horizontal direction, if each display target element is treated as having a size that is expanded horizontally, the process of laying out the display target element remains unchanged. . It is merely that the width of each display target element is increased. Although the layout processing results are different, the processing procedure for layout is the same. Therefore, there is an effect that the same processing method can be used in the re-layout processing as when the layout processing is performed when the user faces the layout.
[0047]
Regarding the display, for example, when the display target element is a character, a horizontal enlargement ratio is designated rather than generating a horizontally enlarged image of the character and causing the OS (Operating System) to display the image. When the OS performs the display of characters, the effect that many OSs can execute the display at a high speed also appears.
[0048]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0049]
In order to solve the above-described problem, the display correction device according to the present invention may be configured such that the direction detection means obtains information on a user's line of sight regarding rotation of one or two of three axes in a three-dimensional space. It is characterized by.
[0050]
Therefore, according to the display correction device according to the present invention, as the user's line of sight, there is a rotation around three axes in the three-dimensional space. Become.
[0051]
The user's gaze direction can be obtained by, for example, a sensor. However, obtaining information of only one axis rather than two axes can reduce the number of necessary sensors or reduce the cost. You will be able to use the sensor.
[0052]
As a result, there is an effect that the cost for obtaining information on the user's gaze direction can be reduced.
[0053]
In addition, as information relating to the rotation of the two axes, a vertical direction (pitch), a horizontal direction (yaw), and a vertical direction (pitch) and a horizontal direction (yaw) are selected from among the three axes around the line of sight (low). Then, distortion when the display surface is viewed obliquely can be corrected, and the correction effect increases.
[0054]
However, which one or two axis combination to select from among the three axis directions may be determined in consideration of the cost of the correction processing, the correction effect, the use pattern, the purpose, and the like. Alternatively, the direction of the user's line of sight to the display surface may be statistically detected, and a single-axis or two-axis combination may be selected in accordance with the line-of-sight direction with a high appearance frequency.
[0055]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0056]
In order to solve the above problem, the display correction device according to the present invention is characterized in that the direction detection means obtains information on a distance between the display means and a user.
[0057]
Up to this point, the description has been given of the configuration in which the information on the gaze direction is obtained and the distortion is corrected. Therefore, in the correction process, it is not possible to perform a complete correction process only with the information of the line-of-sight direction.
[0058]
Therefore, according to the above configuration, the direction detection unit also obtains information on the distance between the display unit and the user, and the correction unit uses the distance information in addition to the line-of-sight direction information, thereby completely removing distortion. And the processing can be somewhat simplified to reduce the distortion even if it is not completely removed.
[0059]
As a result, there is an effect that distortion can be completely removed or reduced.
[0060]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0061]
In order to solve the above problem, the display correction device according to the present invention has presence detection means for obtaining information on whether a user is present in a predetermined position range, and the direction detection means includes the presence detection means. Is obtained based on information from the user.
[0062]
The “predetermined position range” depends on the method of detecting the presence, but, for example, if any sensor is used, it means the range detected by that sensor. Also, in the case of indirect detection instead of direct detection such as a sensor, for example, estimating from the usage status of surrounding equipment, etc. Become.
[0063]
"Presence detecting means" is means for obtaining information on whether or not a user exists in a predetermined position range based on some information. As a method of obtaining the information to be based, for example, a method of using some sensor as direct detection, a method of inferring from the usage status of peripheral devices as indirect detection, and the like are conceivable.
[0064]
As the sensor, for example, as a non-contact type, an ultrasonic sensor, an infrared sensor, a heat sensor, a laser sensor, and the like can be considered. By performing image processing on an image captured by a camera, information based on the image can also be obtained. As the contact type, for example, a pressure sensor or an electrostatic sensor prepared on a mat or the like spread on a floor can be considered.
[0065]
As the process of detecting the presence, for example, the presence or absence of an object within the detection range can be specified from the signal obtained from the sensor. If an object is detected, it may be determined that the user exists there. When inferring from the usage status of surrounding devices without using sensors, for example, if a gas stove whose position with respect to the display surface is lit, it is assumed that a user is present around the gas stove. It becomes the processing of.
[0066]
Alternatively, there is a method of directly telling where the user himself is using a button, a voice, a transmitter, or other means.
[0067]
Therefore, according to the display correction device of the present invention, whether or not a user is present in a predetermined position range is obtained from the presence detection unit, and this is passed to the direction detection unit, and the direction detection unit transmits the user to the predetermined position range. The user's gaze direction and distance can be roughly obtained based on the presence or absence. Correction processing is performed based on the line-of-sight direction and the distance obtained from the direction detecting means.
[0068]
As a result, there is an effect that the gaze direction of the user can be easily estimated with a certain degree of error from information on whether or not the user exists in a predetermined position range. Finding the exact gaze direction may require expensive equipment such as radar, but if there is a user in a given position range, it is realized by using inexpensive sensors etc. There is also an effect that can be.
[0069]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0070]
In order to solve the above-mentioned problem, the display correction device according to the present invention is characterized in that the presence detection means obtains information on whether or not a user is present in the vicinity of a front direction of the display means.
[0071]
According to the above configuration, by obtaining from the presence detection unit whether or not a user is present in the vicinity of the display unit in the front direction, when the user is present, the user is viewed substantially from the front, and when not present, the user is viewed from an oblique direction. Likely to be. Therefore, if it exists, no or almost no correction is made, and if it does not exist, it is assumed that the user is looking from an oblique direction, and the line-of-sight direction is corrected.
[0072]
Also, even if it is determined that the user exists in a different place, a distant place, next to or behind the display means, and does not exist near the display means, it is determined that the user does not exist near the front. Since there is a high possibility that the user does not intend to look at the image, there is no problem even if the correction process is performed, because the user does not see the image.
[0073]
This brings about an effect that the user's gaze direction can be estimated very easily.
[0074]
In order to obtain information on whether or not a user is present in a predetermined position range, preparing a plurality of sensors and the like in various directions and places is costly, time-consuming, and processing. If only the presence or absence is obtained, it is only necessary to incorporate the presence detection means into the display means (device), so that the cost, labor and processing can be reduced.
[0075]
Note that the effect may be weak depending on the method of correction. For example, there is a case where the correction method when the display surface is viewed from an oblique direction is not left-right symmetric (or vertically symmetric). As an example of a correction method that is not symmetrical, there is a reverse perspective transformation. In the reverse perspective transformation, a correction is made such that a portion located far from the display contents is relatively larger and a portion located closer is relatively smaller in the display contents from the viewpoint of the user. As a result, the correction is performed so that the distant portion and the near portion can be viewed in the same size.
[0076]
However, when viewing the display contents corrected using the reverse perspective transformation for the left diagonal from diagonally right, compared to the visual result of the display contents before correction, the part located far away is smaller and the part located close is small. They are perceived larger. This is the opposite effect.
[0077]
In general, when correction is performed in the correct user's line-of-sight direction, the correction effect by the inverse perspective transformation is higher than the correction effect of merely enlarging and reducing the vertical and horizontal directions. However, if the display means is not considerably large for the user, the difference in the correction effect is not so large. That is, even in the case of the inverse perspective transformation, a processing result similar to the vertical and horizontal scaling is obtained. Among the correction effects of the inverse perspective transformation, the positive correction effect is generally superior to the positive correction effect due to the same correction effect as the vertical and horizontal enlargement / reduction and the above-described negative correction effect due to the reverse effect. Therefore, there is generally an effect even if a non-symmetric correction process such as a reverse perspective transformation is performed.
[0078]
In addition, as described above, in the case of this configuration, the effect of being able to correct visual distortion with a simple configuration can be further enhanced by combining with symmetric correction processing such as vertical and horizontal enlargement / reduction.
[0079]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0080]
In order to solve the above problem, the display correction device according to the present invention is characterized in that the correction means performs correction in real time, at predetermined time intervals, or when the direction of the line of sight obtained from the direction detection means changes. And
[0081]
“Real time” refers to a state in which the gaze direction is constantly obtained and corrected, but in practice, a state in which the gaze direction is obtained and corrected in a very short time cycle. “Every predetermined interval” refers to performing acquisition and correction of the line-of-sight direction at a certain time interval, such as a five-minute interval, rather than a period that can be said to be real time.
[0082]
Incidentally, the time intervals are basically the same, but different time intervals may be used if necessary. For example, the time interval may be changed according to the user's movement frequency. In this case, if the movement frequency is high, the gaze direction is obtained at short time intervals, and if the movement frequency is low, the gaze direction is obtained at long time intervals.
[0083]
According to the above configuration, when the correction unit obtains the line-of-sight direction from the direction detection unit at a certain timing and corrects the display, when a predetermined time elapses by using a timer, the line-of-sight direction Perform acquisition and display correction. By repeating this, it is possible to obtain a display corrected according to the current user's line of sight.
[0084]
Alternatively, when the line-of-sight direction obtained from the direction detecting means changes, the display is corrected with a new line-of-sight direction. Since the correction is performed when the viewing direction changes, it is possible to obtain a corrected display corresponding to the current user's viewing direction.
[0085]
Thereby, even if the user moves relatively to the display means, the correction is performed in accordance with the movement, so that an effect of always obtaining a corrected display can be obtained.
[0086]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0087]
In order to solve the above-described problem, the display correction device according to the present invention is characterized in that the correction unit corrects distortion caused by rotation of one or more of three axes in a three-dimensional space.
[0088]
Therefore, according to the display correction device according to the present invention, the user's gaze direction includes rotation about three axes in a three-dimensional space. When only one of these is used, the vertical direction (pitch) and the left and right ( Only the distortion in one fixed direction, such as yaw, is corrected.
When two axes are used, three combinations are conceivable. For example, in the case of a combination of up and down and left and right, it is possible to correct distortion in an oblique direction between up, down, left, and right directions.
When the rotation (roll) around the line of sight is combined with another direction, the distortion in the other direction is corrected, and the display content is rotated and displayed as the correction of the rotation (roll) around the line of sight. In the case of three axes, all of these are corrected.
[0089]
In general, the greater the number of axes, the higher the accuracy of the correction. However, depending on the state of use, correction around one axis alone may be sufficient. In this case, even if the number of axes is increased, the cost and the processing time are unnecessarily increased as compared with the improvement effect.
[0090]
On the other hand, according to the above configuration of the present invention, it is possible to freely select a correction method from one axis to three axes. In consideration of this, there is an effect that it is possible to cope with a mode of selecting an appropriate correction direction.
[0091]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0092]
In order to solve the above-mentioned problem, the display correction device according to the present invention, in the correction means, displays the display means in a linear direction formed by an intersection of a display surface and a plane perpendicular to a rotation axis causing distortion. The display contents are corrected so as to enlarge the range.
[0093]
In the above configuration, the relative direction between the user and the display means can be expressed by the aforementioned three-axis rotation. The “rotation axis causing distortion” is a rotation angle axis having a value different from the reference angle, with the rotation angle of the three axes when the user faces the display means as a reference angle.
[0094]
For example, when the user looks at the display means from a diagonally horizontal direction, a left-right rotation (yaw) is generated from a right-angled state. Therefore, the “rotation axis causing distortion” is a right-left rotation (yaw). An axis, that is, an axis extending in the up-down direction. Therefore, the “plane perpendicular to the rotation axis that causes distortion” is a plane perpendicular to the up-down direction, and is a horizontal plane.
Further, the “straight line formed by the intersection of the plane perpendicular to the rotation axis and the display surface causing distortion” is a straight line direction formed by the intersection of the horizontal plane and the display surface. If the display surface is parallel to the vertical direction, this linear direction is the direction of a straight line extending left and right along the display surface.
[0095]
Therefore, according to the display correction device of the present invention, the user's gaze direction includes rotation about three axes in a three-dimensional space, but the rotation direction that causes distortion can be decomposed into rotation about these three axes. . Of these, the display contents are seen to be reduced in size mainly due to the rotation in the vertical (pitch) direction or the horizontal (yaw) direction. Then, the reduced portion is covered, and the display content close to the display content at the time of facing directly is obtained.
[0096]
Originally, complicated correction processing such as reverse perspective transformation had to be performed in order to perform accurate correction. However, the above configuration has the effect that the reduction effect can be covered by a simple correction method called enlargement. Come. Since the primary cause of invisibility is often the reduction effect, this method also has the effect that much of the invisibility can be resolved.
[0097]
Also, when a character or the like is viewed from an oblique or vertical diagonal direction, the aspect ratio is different from that when viewed directly, but by performing the correction according to the present invention, the aspect ratio is the same or almost the same as when viewed directly. The effect comes to be able to be seen as. This is particularly effective for contents such as figures and photographs that are difficult to understand when the aspect ratio changes.
[0098]
Further, in the correction, if the position of each display target element included in the display content after being enlarged by the present method is rearranged with respect to the display range in relation to the size of the display range, distortion can be reduced. Since the meaning of the display content which has been corrected and is easy to see can be displayed again without interruption, it is more effective.
[0099]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0100]
In order to solve the above-mentioned problem, the display correction device according to the present invention, in the correction means, displays the display means in a linear direction formed by an intersection of a display surface and a plane perpendicular to a rotation axis causing distortion. It is characterized in that the correction is made by expanding the range.
[0101]
The “display range of the display means” is a range (display area or its size) in which display contents are displayed. Since it is not easy to physically increase or decrease the size of the display means, a part of the display means is used as a display range of the display contents using "windows" etc., and the size of the window Is often achieved by changing Alternatively, there is a method of treating a plurality of display units as one display unit.
[0102]
When the display content is enlarged and corrected in the rotation direction that causes distortion, simply enlarging the display content will exceed the display range, and the excess will not be displayed. Therefore, by expanding the display range itself of the display means, it becomes possible to display a portion exceeding the display range. In addition, there are cases in which all can be displayed without any hidden portions.
[0103]
As a result, there is an effect that the information amount close to or equal to that at the time of facing can be obtained from any direction. If the display range is not enlarged, operations such as scrolling are required. However, such operations can be reduced or eliminated.
[0104]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0105]
In order to solve the above-mentioned problem, the display correction device according to the present invention is characterized in that the correction means corrects display contents so as to reduce the display content in the direction of the rotation axis which causes distortion.
[0106]
The above correction method is the reverse of the previously described method of “correcting by enlarging in the linear direction that is the intersection of the plane perpendicular to the rotation axis and the display surface that causes distortion,” and instead of not enlarging It only reduces the direction perpendicular to it. For example, instead of expanding in the horizontal direction, the image is reduced in the vertical direction.
[0107]
As a result, the area of the entire display content is reduced, so that the size (area) of the character or the like itself is reduced. However, the aspect ratio can be viewed as the same or almost the same as when viewed directly. Effect comes out. This is particularly effective for contents such as figures and photographs that are difficult to understand when the aspect ratio changes.
[0108]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0109]
In order to solve the above-mentioned problem, the display correction device according to the present invention is characterized in that the correction means corrects display contents by reverse perspective transformation.
[0110]
In order to perform the correction accurately, it is necessary to perform a reverse perspective transformation. Performing the correction by the inverse perspective transformation has an effect of eliminating or reducing the influence of the perspective transformation as compared with the correction of simply enlarging or reducing in one axis direction.
[0111]
The effect of the perspective transformation means that, for example, even if the display content has the same size on the display means, if it is displayed on the display means at a position far from the user, it is less visible to the user than if it is displayed at a close position. And so on. In addition, for example, when the display content of a straight line intersecting at 90 degrees on the display means is viewed from an oblique position with respect to the display means, the user may notice that the straight lines intersect at an angle other than 90 degrees. There are things that can be seen.
[0112]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0113]
In order to solve the above-mentioned problem, the display correction device according to the present invention is characterized in that the correction unit performs correction by reverse perspective transformation on one or more of three axes in a three-dimensional space.
[0114]
According to the above configuration, when the correction is performed by the inverse perspective transformation with respect to the three axes of the three-dimensional space, the same display content as when facing directly (albeit affected by the resolution of the display) can be obtained. Come out.
[0115]
In addition, when the correction is performed by the reverse perspective transformation of only one axis or two axes, the processing amount can be reduced as compared with the case where the correction is performed by the reverse perspective transformation with respect to three axes. The effect of the inverse perspective transformation as described above appears even in comparison with the correction for enlarging or reducing in the direction.
[0116]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0117]
In order to solve the above-described problems, a display correction device according to the present invention includes a direction detection unit that obtains information on a display direction of a display unit that can change a display direction of a display surface, and a predetermined display direction of the display unit. The user sets the reference direction directly facing the display means, and in the display direction obtained from the direction detection means, from the position of the user facing the reference direction, eliminates or reduces distortion when viewing the display means. And a correcting means for correcting the display content.
[0118]
As the "display direction detecting means", for example, when the display means is supported by a hinge, a rotating support, or the like, an angle detection sensor incorporated therein may be considered. Alternatively, the user can teach the angle.
[0119]
The "predetermined reference display direction" is a direction determined in advance, but is usually a direction when the user is considered to be directly facing the display means. For example, in the case where the display means is used in a raised state, such as a display attached to a notebook computer, the raised state is when the user is directly facing the user. The angle of the hinge connecting the main body and the display at this time may be set as a predetermined reference direction (reference angle). Note that, even if the user does not face directly, if there is a direction (angle) that the user wants to use, that direction may be used as a reference direction (reference angle).
[0120]
Therefore, according to the display correction device of the present invention, information on the current direction of the display surface can be obtained by the display direction detecting means. The image seen when the user looks at the display content on the display surface in the obtained direction is different from the image seen when the user looks at the display surface in a predetermined reference direction (usually, when the user faces the display surface directly), It is distorted by the direction difference. This direction difference occurs when the user changes the angle of the display means to a value other than the reference angle. For example, when the angle of the display means is changed so that the reflection of the fluorescent lamp is reflected on the display surface, or when the display means is a directional display means such as a liquid crystal device and the angle of the display means is slightly changed, the density becomes higher. And the brightness is easy to see. Alternatively, there may be a case where the angle of the display means changes because something happens to hit the display means.
[0121]
Therefore, when viewed from the state of the obtained direction, the display content displayed on the display means is corrected by the above-described reverse perspective transformation or other processing so that the distortion is eliminated or reduced, and the display is performed. Display by means.
[0122]
As a result, it is possible to correct the display content only by obtaining the display direction of the display means, and it is possible to perform the correction reliably and easily. When placing a sensor on the outside or scanning the outside with a sensor in order to obtain the direction between the display surface and the user, problems such as installation and labor, costs, and detection errors due to using an external sensor (for example, However, when the display direction is obtained by using the angle of the display means with respect to the reference direction, for example, by incorporating an angle sensor in the hinge part, external influences can be reduced. The display direction can be obtained by reliably detecting the angle without receiving.
[0123]
Other effects are as described above as effects of the display correction device.
[0124]
Note that the configuration described in the present claim may be arbitrarily combined with the components described in the claim as needed.
[0125]
A display correction method according to the present invention includes, in order to solve the above-described problem, a direction detecting step of obtaining information on a user's line of sight with respect to a display surface of a display unit that displays information; And correcting the display content by eliminating or reducing distortion when viewing the display surface from the direction obtained from the direction detecting step.
[0126]
The operation and various effects of the above configuration are as described above as the operation and effect of the display correction device corresponding to the configuration of the display correction method.
[0127]
A display correction program according to the present invention causes a computer to execute each unit included in the display correction apparatus in order to solve the above-described problem.
[0128]
A display correction program according to the present invention causes a computer to execute each step of the display correction method in order to solve the above-described problem.
[0129]
A recording medium according to the present invention is characterized by recording the display correction program in order to solve the above-mentioned problem.
[0130]
Thereby, by installing the display correction program in a general computer via the recording medium or the network, the display correction method is realized using the computer, in other words, the computer is connected to the display correction device. Can function as
[0131]
BEST MODE FOR CARRYING OUT THE INVENTION
[Embodiment 1]
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0132]
First, the definition of words is explained.
[0133]
The “user's line of sight direction” may be highly accurate information such as “how many times to the right”, or simply coarse information such as “left”, “front”, or “right”.
In addition, the direction is not only the axis of the left and right (see FIG. 2. The rotation of the display means swinging in the left and right direction can be called yaw based on the case where the user faces the display surface as a reference), but also the vertical (pitch). In some cases, one axis is selected from the axes of rotation and rotation (roll), and in some cases, they are combined with two axes and three axes.
[0134]
Further, “when the user faces the display surface” refers to a case where the line of sight when the user looks at the display surface intersects perpendicularly with the display surface and there is no rotation (roll) around the axis of the line of sight. . The case where there is no rotation (roll) about the line of sight refers to the case where the vertical direction of the display surface and the vertical direction of the user's face are the same.
[0135]
Further, the “distortion” is a difference between a display content that is viewed when the user directly faces the display unit and a display content that is viewed when viewed from the current user direction. For example, when the paper surface is viewed from a diagonally left direction, the paper surface appears to contract left and right. This is due to the perspective transformation effect, which occurs strictly in all cases, but if the paper is not relatively large, disregarding distortions other than in the left and right directions, and as distortion that is reduced only in the left and right directions It is also possible to handle.
[0136]
However, when the reference state is set not to the case where the user directly faces the display surface, but to the state viewed from any direction, the difference from the display content seen in that state may be used as distortion. In addition, since the rotation (roll) about the axis of the line of sight can be returned by the rotation process, it does not cause enlargement / reduction or a change in the angle of the line of sight with respect to the display surface. Here, it is assumed that it is included in distortion in a broad sense.
[0137]
"Eliminating or reducing distortion to correct the displayed content" means that the displayed content appears to be distorted, while the user's line of sight to the display surface remains the same and the displayed content is directly facing To make them look like or close to it. The case of completely facing is the case where "distortion is eliminated", and the case of approaching the facing state is the case of "reducing distortion".
[0138]
For example, when a user exists in an angle direction of 60 degrees from a vertical line direction (0 degrees) with respect to the display surface of the display means, to make it look straight from 0 degrees is "elimination of distortion". For example, making the image look as if viewed from an angle direction of 30 degrees is "reducing distortion". However, not only in the case of showing exactly as seen from the angle direction of 0 degree or 30 degrees, but also in the case of close to it, for example, in the case of performing scaling in only one axis direction such as left and right instead of reverse perspective transformation Simulated processing is also included in the correction. It also includes correction not only in the yaw and pitch directions but also in the roll direction.
[0139]
The relative direction between the user and the display means can be expressed by the aforementioned three-axis rotation.
The “rotation axis causing distortion” is a rotation angle axis having a value different from the reference angle, with the rotation angle of the three axes when the user faces the display means as a reference angle.
[0140]
For example, when the user looks at the display means from a diagonally horizontal direction, a left-right rotation (yaw) is generated from a right-angled state. Therefore, the “rotation axis causing distortion” is a right-left rotation (yaw). An axis, that is, an axis extending in the up-down direction. Therefore, the “plane perpendicular to the rotation axis that causes distortion” is a plane perpendicular to the up-down direction, and is a horizontal plane.
Further, the "straight line formed by the intersection of the plane perpendicular to the rotation axis and the display surface causing distortion" is a straight line formed by the intersection of the horizontal plane and the display surface. If the display surface is parallel to the vertical direction, this linear direction is the direction of a straight line extending left and right along the display surface.
[0141]
The “correction unit” is a range to be corrected, and is usually corrected using the same correction formula or correction parameter.
[0142]
“Correcting the entire display content as a correction unit” means correcting the range of the entire image by treating the entire display content as a single image. This is not to correct only a part of the image (display content).
[0143]
“Correcting each display target element as a correction unit” means correcting within the range of each display target element. The correction processing of the present invention is not performed for a range other than the individual display target elements. The definition and specific example of the display target element will be described in [Embodiment 2].
[0144]
The “predetermined position range” depends on the method of detecting the presence, but, for example, if any sensor is used, it means the range detected by that sensor. In addition, in the case of indirect detection instead of direct detection such as a sensor, for example, inferring from the usage status of surrounding equipment (such as a gas stove described later), use of the equipment It is the possible range and operation range.
[0145]
"Presence detecting means" is means for obtaining information on whether or not a user exists in a predetermined position range based on some information. As a method of obtaining the information to be based, for example, a method of using some sensor as direct detection, a method of inferring from the usage status of peripheral devices as indirect detection, and the like are conceivable.
[0146]
As the sensor, for example, as a non-contact type, an ultrasonic sensor, an infrared sensor, a heat sensor, a laser sensor, and the like can be considered. By performing image processing on an image captured by a camera, information based on the image can also be obtained. As the contact type, for example, a pressure sensor or an electrostatic sensor prepared on a mat or the like spread on a floor can be considered.
[0147]
As the process of detecting the presence, for example, the presence or absence of an object within the detection range can be specified from the signal obtained from the sensor. If an object is detected, it may be determined that the user exists there. When inferring from the usage status of surrounding devices without using sensors, for example, if a gas stove whose position with respect to the display surface is lit, it is assumed that a user is present around the gas stove. It becomes the processing of. In this case, the use of the gas stove is detected by using an operation switch of the gas meter or the gas stove.
[0148]
Alternatively, there is a method of directly telling where the user himself is using a button, a voice, a transmitter, or other means.
[0149]
“Real time” refers to a state in which the gaze direction is constantly obtained and corrected, but in practice, a state in which the gaze direction is obtained and corrected in a very short time cycle. “Every predetermined interval” refers to performing acquisition and correction of the line-of-sight direction at a certain time interval, not a short period that can be said to be real-time.
[0150]
Incidentally, the time intervals are basically the same, but different time intervals may be used if necessary. For example, the time interval may be changed according to the user's movement frequency. In this case, if the movement frequency is high, the gaze direction is obtained at short time intervals, and if the movement frequency is low, the gaze direction is obtained at long time intervals.
[0151]
The “display range of the display means” is a range (display area or its size) in which display contents are displayed. Since it is not easy to physically increase or decrease the size of the display means, a part of the display means is used as a display range of the display contents using "windows" etc., and the size of the window The display range is often changed by changing. Alternatively, there is a method of treating a plurality of display units as one display unit. In other words, by arranging a plurality of display means and displaying the contents connected to the adjacent display means, each can be viewed as one display means as a whole.
[0152]
FIG. 3 is a configuration diagram illustrating a display correction device that performs the above-described display correction processing method according to an embodiment of the present invention.
[0153]
In other words, the main parts of the display correction device can be expanded and shown in the main functional blocks of the content acquisition unit 1, the display content acquisition unit 2, the presence detection unit 3, the direction detection unit 4, the correction unit 5, and the display unit 6. it can.
[0154]
FIG. 4 is a configuration example of an apparatus that specifically realizes each of the units 1 to 6 in FIG.
[0155]
A CPU (central processing unit) 70 functions as the above-described content acquisition unit 1, display content acquisition unit 2, presence detection unit 3, direction detection unit 4, correction unit 5, and display unit 6. A program in which a processing procedure is described is obtained from the main storage 74, the external storage 75, the communication device 77, and the like. Further, the CPU 70 exchanges data with the display 71, the printer 72, the sensor 73, the main memory 74, the external memory 75, the mouse 76, the communication device 77, and the button 78 which are interconnected through the bus 79 including the CPU 70. Then, each processing described later is performed.
[0156]
It should be noted that data exchange is not limited to being performed via the bus 79, but may be via a communication cable or a wireless communication device as long as data can be transmitted and received. The means for realizing each of the units 1 to 6 is not limited to the CPU, but may be a DSP (digital signal processor) or a logic circuit in which a processing procedure is incorporated as a circuit.
[0157]
The main memory 74 is usually constituted by a memory device such as a DRAM (dynamic random access memory) or a flash memory. The external storage 75 is a removable storage device such as a hard disk drive (HDD) or a personal computer (PC) card. Alternatively, a main memory or an external memory attached to another network device connected by wire or wirelessly via the CPU 70 and the communication device 77 can be used as the external memory 75.
[0158]
As means for inputting user operations, there are a mouse 76, a sensor 73, a button 78, and the like. In addition, various means such as a keyboard and a voice input by a microphone can be used.
[0159]
Means for detecting the user's direction, the location, and the like include a sensor 73 and the like.
[0160]
The display 71 is usually realized in combination with a graphic card or the like, and has a VRAM (video random access memory) on the graphic card. The data in the VRAM is converted into a display signal, sent to a display 71 such as a monitor, and the display 71 displays the display signal as an image.
[0161]
The printer 72 prints the print data obtained via the bus 79 on paper. The communication device 77 is realized by a network card or the like, and exchanges data with another network device connected wirelessly or by wire.
[0162]
Each of the units 1 to 6 in FIG. 3 will be described from the viewpoint of data transfer between the realizing unit and the units 1 to 6 shown in FIG.
[0163]
The CPU 70 as the content acquisition unit 1 obtains content data relating to display contents to be displayed on the display 71 from the main storage 74, the external storage 75, the communication device 77, and the like. It is assumed that content data is prepared in advance. The obtained content data is passed to the display content obtaining means 2.
[0164]
The CPU 70 as the display content acquisition unit 2 converts the display content data of the content data based on the content data obtained from the content acquisition unit 1 based on a program read from the main storage 74, the external storage 75, the communication device 77, and the like. create. If the display content data that has already been created exists in the main storage 74 or the external storage 75, it may be used. The created display content data is sent to the correction means 4. Depending on the processing method, the display content data may be created while cooperating with the correction unit 4.
[0165]
The CPU 70 as the presence detecting means 3 obtains data as to whether or not the user is present in a predetermined position range as data input from the sensor 73, the button 78, and the like, and if necessary, the main storage 74 and the external storage 75 The input data is processed using a program read from the communication device 77 or the like, and is then passed to the direction detecting means 4.
[0166]
As an example of the processing, there is a case where statistical processing is used to determine whether or not there is an object. For example, a predetermined ratio or more during a predetermined measurement time, it is assumed that the user is present when the presence is detected, and less than the predetermined ratio is assumed that there is no detection noise of the sensor or the user has passed only, And so on.
[0167]
The CPU 70 as the direction detecting means 4 obtains direct information of the user's line of sight from the sensor 73 and the like, and, if necessary, based on a program read from the main memory 74, the external memory 75, the communication device 77, and the like. The information such as the direction and positional relationship between the display surface of the display 71 and the sensor is obtained from the main memory 74, the external memory 75, and the like, and the relative line-of-sight direction of the user viewed from the display 71 constituting the display unit 6 is obtained. To the correction means 5.
[0168]
When the presence detecting means 3 is used, the CPU 70 as the direction detecting means 4 obtains a main storage 74, an external storage 75, and a communication device 77 from information on whether or not a user exists in a predetermined range obtained from the presence detecting means 3. Information such as the direction and positional relationship between the display surface of the display 71 and the predetermined position range is obtained from the main storage 74, the external storage 75, and the like based on a program read from the display 71 and the like. The gaze direction is obtained and passed to the correction means 5.
[0169]
The CPU 70 as the correcting means 5 obtains the information from the display content obtaining means 2 according to the information on the user's line of sight obtained from the direction detecting means 4 based on a program read from the main memory 74, the external storage 75, the communication device 77, and the like. The original display contents are corrected, and the corrected display contents are output to the display means 6.
[0170]
The display means 6 includes a display 71 and a CPU 70 for controlling the display. The correction display contents obtained from the correction means 5 are displayed / output on the display surface. When outputting the display content data to the printer 72 or the like instead of the display 71, it is necessary to sequentially update the output (printed) paper. For example, a method of winding up the printing surface using roll paper or the like is conceivable. However, such an update that is performed sequentially may be included in the “display” in a large sense.
[0171]
FIG. 5 shows an example of the appearance of the display correction device. A display unit 91 (corresponding to the display 71) is provided on the main body 90, and the corrected display contents are displayed on the display unit 91.
[0172]
Direction sensors 92, 93 and 94 are provided on the display unit 91. The direction sensors 92, 93, and 94 are directed in the right, front, and left directions, respectively, and send a signal to the direction detecting means 4 to detect whether a user is present in that direction. In the figure, it is drawn on the display unit 91 for easy understanding, but may be embedded in the main body 90. In some cases, only the sensor 93 for the front is provided.
[0173]
From the main body 90, pressure sensors 95, 96, and 97, which are connected by a cable and whose layout (distance, direction, etc.) with respect to the display unit 91 is ascertained, extend, and whether a user exists on each of them. The detection signal is sent to the presence detecting means 3.
[0174]
FIG. 1 is a flowchart illustrating a display correction processing method according to an embodiment of the present invention.
[0175]
First, in step S1 (hereinafter, "step S" is abbreviated as "S"), the content acquisition unit 1 acquires content data, passes the obtained content data to the display content acquisition unit 2, and proceeds to S2. Processing proceeds. The content data is information including the content to be displayed. The content data is created in advance.
[0176]
Since the method of acquiring the content data is not the gist of the present invention, a detailed description thereof will be omitted. For example, the content data is obtained as data from a communication / network connection destination via the main storage 74, the external storage 75, or the communication device 77. If the content data is displayed not as a still image but as a moving image that changes over time, the processes of S1 to S5 may be repeated for each still image that forms the moving image.
[0177]
In S2, the display content obtaining means 2 obtains / generates display content from the content data obtained from the content obtaining means 1, passes the display content to the correction means 5, and connects the connection point P10 (hereinafter, “connection point P” to “P”). After that, the process proceeds to S3.
[0178]
When the present invention is implemented, the display correction device is not operated independently, but is attached to a program or device for displaying some content data (hereinafter, referred to as a “main display program / device”). It seems that most of the modes of operation are performed. Specifically, when the display content generated by the main display program / device is processed to generate new display content, or when the main display program / device generates the display content, the generation method is modified. Operation. The main display program / apparatus includes, for example, general-purpose programs such as a WWW browser and a word processor, various dedicated programs, and electric products having a display panel (for example, a personal computer, a refrigerator, a microwave oven, and a video deck). Can be considered.
[0179]
The flowchart of FIG. 1 corresponds to a process of processing display contents generated by the main display program / device to generate new display contents. Specifically, the processing of the content acquisition unit 1 (S1) and the display content acquisition unit 2 (S2) corresponds to the processing of the main display program / device (the processing of generating the display content). In the processing after S3, since only the display content obtained from the display content obtaining means 2 (S2) is processed, it is sufficient that only the display content data can be obtained. That is, it is not important to the present invention how the display content data is generated, such as whether the display content data is generated from text data, from a photograph, or how the display content data is arranged. Therefore, description of how to generate the display content data is omitted here, and only the structure of the display content data will be described later.
[0180]
Note that, when the main display program / apparatus generates display content, a process of modifying the generation method will be described in a second embodiment.
[0181]
Examples of the structure of the display content data include those that can be displayed on the display means as they are, and those that cannot be displayed as they are and require one or more steps of processing to be displayed on the display means. There are two types. The “state that can be displayed as it is on the display means” refers to, for example, a state in which a character font or the like is also developed at the pixel level, and the entire display range becomes like one image. "The state in which the character cannot be displayed as it is and one or more steps are required to display it on the display means" is, for example, layout information (or display target elements such as character codes and fonts) in which each character is laid out. Name, font size, character layout position, etc.). These pieces of layout information are interpreted / developed by the display means 6 and displayed in a “state that can be displayed on the display means as it is”.
[0182]
Since a method of using the laid-out intermediate state will be described later with reference to FIG. 21 and the like, it is assumed here that the image is expanded to the pixel level as a simple “state that can be displayed on the display means”.
[0183]
In S3, the presence detecting means 3 and the direction detecting means 4 acquire the direction of the user, or the direction and distance, and pass them to the correcting means 5, and the process proceeds to S4 via P20. Details of the processing here will be described later.
[0184]
In S4, the correction means 5 corrects the display content obtained from the display content acquisition means 2 (S2) based on the user's direction obtained from the direction detection means 4 (S3), and displays the corrected display content. The process is passed to the unit 6, and the process proceeds to S5 via P30. Details of the processing here will be described later.
[0185]
In S5, the display means 6 displays the corrected display content obtained from the correction means 5 (S4), and ends the processing.
[0186]
Through these processes, the display content can be corrected and displayed according to the direction of the user. The effects of this will be described later.
[0187]
There are various methods for acquiring the direction and distance at which the user exists in S3.
[0188]
For example, there is a method using a non-contact sensor using sound waves (such as ultrasonic waves), light (such as infrared rays), and electromagnetic waves. The information obtained from the sensor differs depending on the type and usage of the sensor. For example, it is possible to obtain whether or not an object exists in a predetermined detection range, or to obtain the distance to the object. By mounting these sensors in each direction of the display and analyzing the information, it is possible to determine whether a user is present in that direction.
[0189]
FIG. 6 is a flowchart illustrating an example of the process of S3 in FIG.
[0190]
In S3A-1 after P10, the presence detection means 3 obtains presence information in all directions, passes the presence information to the direction detection means 4, and the process proceeds to S3A-2. However, in the repetitive processing described later, the presence information in each direction may be sequentially obtained and processed. Presence information is information on whether a user exists in that direction.
It can be obtained by using the above sensors. This means that there are as many as the number of sensors.
[0191]
In S3A-2, the direction detecting means 4 sets the first presence information to the current presence information, and the process proceeds to S3A-3. The current presence information means presence information that is currently being processed.
[0192]
In S3A-3, the means 4 determines whether there is no more current presence information. If there is no more, the process proceeds to S3A-4. If there is, the process proceeds to S3A-5.
[0193]
In S3A-4, where the process proceeds when there is no current presence information remaining in S3A-3, the means 4 sets the user's presence direction to the predetermined direction, and the process exits to P20. This means that the direction is set to a specified direction if the existing direction is not known. The prescribed direction may be a front direction, an oblique direction, or a direction with the highest probability of existence based on the user's behavior pattern.
[0194]
(If the current presence information remains in S3A-3, the process proceeds.) In S3A-5, the means 4 determines from the current presence information whether or not a user exists in that direction. If determined, the process proceeds to S3A-6, and if determined not to exist, the process proceeds to S3A-7.
[0195]
(The process proceeds when it is determined in S3A-5 that the user exists in that direction.) In S3A-6, the means 4 determines the direction and distance of the sensor of the current presence information as the direction and distance of the user. After setting, the process goes to P20.
[0196]
(The process proceeds when it is determined in S3A-5 that there is no user in that direction.) In S3A-7, the means 4 sets the current as the next presence information, and proceeds to S3A-3.
[0197]
By these processes, an example of the process of S3 in FIG. 1 can be realized. As a result, information as to whether or not the user exists in a certain direction or distance can be obtained.
[0198]
As described above, by using the information indicating whether or not the user exists in the predetermined position range, an effect that the direction and the distance of the user can be easily estimated with a certain error can be obtained. Expensive equipment such as radar may be required to find the exact direction and distance, but if it is in a predetermined position range, detection using a cheap sensor etc. There is also an effect that can be done.
[0199]
In the description of FIG. 6, it is determined that the object is a user when the presence information on the presence of the object is found. However, the presence information is examined in general, and the most likely direction and distance are selected. There is also a method. In such a case, it is necessary to perform processing of expressing certainty as some evaluation value and comparing each evaluation value.
[0200]
Also, some sensors can obtain various information such as distance, size, material, temperature, etc., as well as whether or not there is a sensor. In some cases, such information is comprehensively evaluated.
[0201]
Also, there is a method in which information obtained in a time series is statistically processed to obtain the most probable direction and distance, instead of handling only information at a certain time.
[0202]
Also, in order to avoid erroneous reaction to objects (such as furniture and walls) other than the user that has been placed in advance, remember the state where the user does not exist once, and determine whether the user exists based on the change from that state. There is also a way to judge.
[0203]
Further, in the above description, the non-contact sensor attached to the display device is used, but it is not always necessary to attach the sensor to the display device. If it is known whether a user exists in a certain range, the direction and distance of the user as seen from the device can be calculated from the relative positional relationship between the sensor and the device.
[0204]
Alternatively, a method may be considered in which the position of the display correction device is identified by photographing the surroundings and the use environment with a camera or the like and recognizing a person. In a sense, this is also a type of non-contact sensor.
[0205]
In addition to using a non-contact sensor, there are other ways to know if a user is in a certain area, for example, using a contact sensor such as a piezoelectric sensor or an electrostatic sensor (to see changes in voltage or charge). There are also methods. By placing a mat with a built-in piezoelectric sensor around the device and detecting whether or not a person is riding on the mat, it is possible to know whether or not a user is present in the area where the mat is placed.
[0206]
There is also a method in which the user himself notifies the device of the existence. The simplest method is to notify the direction or range directly by operating a button or something on the device, for example.
[0207]
Alternatively, there is a method in which a user wears a device that emits light waves such as infrared rays, electromagnetic waves, or the like, and detects the device with sensors arranged in an environment such as a room to specify a position. Instead of emitting from the user side, there may be a method of receiving electromagnetic waves emitted in the environment and returning another electromagnetic wave in response to the electromagnetic waves. This is a technology that is also used in non-contact ID cards and wireless devices. Alternatively, there is a method in which the user returns position information and the like to the display correction device by another route in response to an electromagnetic wave or the like emitted in the environment. For example, there is a method of calculating a current position by processing an electromagnetic wave flowing from a GPS (Global Positioning System) satellite and returning the obtained current position to a display correction device via a network.
[0208]
FIG. 7 is a flowchart for explaining one method for simply realizing the process of S3 in FIG.
[0209]
In S3B-1 via P10, the presence detecting means 3 obtains information on whether or not a user is present in front of the display means, passes the information to the direction detecting means 4, and the process proceeds to S3B-2. Various methods as described above can be used as a means for obtaining information on the presence or absence of an object. For example, a simple method is to attach an infrared sensor or an ultrasonic sensor in front of the display means.
[0210]
In S3B-2, based on the information obtained from the presence detecting means 3, the direction detecting means 4 proceeds to S3B-3 if a user is present in the front direction, otherwise proceeds to S3B-4.
[0211]
(The process proceeds when it is determined in S3B-2 that the user is present in the front direction.) In S3B-3, the means 4 sets the direction in which the user is present as the front direction, and the process exits to P20.
[0212]
(The process proceeds when it is determined in S3B-2 that the user does not exist in the front direction.) In S3B-4, the means 4 sets the direction in which the user exists in a direction other than the front direction, for example, an oblique direction. The process exits to P20.
[0213]
It does not have to be oblique if it is not the front direction, but if it exists directly beside or behind the display device, the display content of the display means can not be seen directly in any case, so how it will be corrected and displayed It should be fine. Since there is only an oblique direction in which the display means can be seen other than in front, there is no problem if the correction is made as oblique. The direction in which obliquely indicates as a numerical value may be determined in advance. For example, it is 30 degrees, 45 degrees, 60 degrees, or the like.
[0214]
Considering the user's usage pattern, it is likely that the user looks at the display from the surroundings at almost the same height as the display, rather than looking at the display while moving up and down using stairs or ladders. In addition, it is unlikely that they lie down or use their face extremely inclined. Therefore, regarding the axis of the direction (rotation), there is usually no problem in practical use even if the movement is limited to the left and right directions, because it is generally considered that there is not much vertical movement and rotation around the line of sight.
[0215]
This brings about an effect that the direction of the user can be estimated in a very simple and practically sufficient range.
[0216]
Also, it is costly, time-consuming, and difficult to prepare a plurality of various sensors and the like in various directions and places in order to obtain whether or not a user exists in a predetermined position range, but it is difficult to be in front of the user. If only this is obtained, it is only necessary to incorporate at least one piece into the display means (apparatus), so that the cost, labor, and processing can be reduced.
[0217]
As described above, there are various methods for obtaining the direction, distance, and position of the user, and an appropriate method may be selected in consideration of the purpose, cost, and the like.
[0218]
Note that the effect may be weak depending on the method of correction. For example, there is a case where the correction method when the display surface is viewed from an oblique direction is not left-right symmetric (or vertically symmetric). As an example of the correction method that is not symmetrical, there is an inverse perspective transformation described later. In the reverse perspective transformation, a correction is made such that a portion located far from the display contents is relatively larger and a portion located closer is relatively smaller in the display contents from the viewpoint of the user. As a result, the correction is performed so that the distant portion and the near portion can be viewed in the same size.
[0219]
However, when viewing the display contents corrected using the reverse perspective transformation for the left diagonal from diagonally right, compared to the visual result of the display contents before correction, the part located far away is smaller and the part located close is small. They are perceived larger. This is the opposite effect.
[0220]
In general, when correction is performed in the correct user's line-of-sight direction, the correction effect by the inverse perspective transformation is higher than the correction effect of merely enlarging and reducing the vertical and horizontal directions. However, if the display means is not considerably large for the user, the difference in the correction effect is not so large. That is, even in the case of the inverse perspective transformation, a processing result similar to the vertical and horizontal scaling is obtained. Among the correction effects of the inverse perspective transformation, the positive correction effect is generally superior to the positive correction effect due to the same correction effect as the vertical and horizontal enlargement / reduction and the above-described negative correction effect due to the reverse effect. Therefore, there is generally an effect even if a non-symmetric correction process such as a reverse perspective transformation is performed.
[0221]
As described above, when the display content is corrected based on the information as to whether or not a user is present in the vicinity of the display unit in the front direction, the vertical and horizontal enlargement / reduction is performed rather than performing a non-symmetric correction process such as a reverse perspective transformation. It is desirable to perform a target correction process such as the above. Thereby, the effect that visual distortion can be corrected with a simple configuration can be further enhanced.
[0222]
FIG. 8 is a flowchart for explaining one method for realizing the processing of S4 in FIG.
[0223]
Hereinafter, for the sake of explanation, the display content obtained by the display content acquisition means 2 (S2) will be referred to as "original display content", and the display content corrected by the correction means 5 (S4) will be referred to as "corrected display content".
[0224]
After P20, in S4-1, the correction unit 5 acquires the display range, and the process proceeds to S4-2.
[0225]
The display range referred to here is simply the size of an area in the display means for displaying the corrected display content. When the display is made by using the entire display means, the display range is the same as the size of the display means. However, for example, when a corrected display content is displayed in a certain window by a window system or the like, the display area is the size of the window.
[0226]
When the size of the display range is changed according to the correction of the original display content, the size to be changed is determined at this stage. Since this will be described in detail later, for now, the size is fixed.
[0227]
The display range is obtained from the display unit 6, for example. Alternatively, when the display range is fixed, it can be obtained by reading a value recorded in advance in the main storage 74 or the external storage 75. Alternatively, in the case of a window system or the like, the size of the window may be acquired through an API (Application Programming Interface).
[0228]
In S4-2, the means 5 acquires a correction range (correction range) for the original display content, and the process proceeds to S4-3.
[0229]
Since the size of the corrected display content obtained as a result of correcting all of the original display content is generally larger than the size of the original display content, it is necessary to display all the corrected display content within the display range obtained in S4-1. May not be able to. For this reason, only a part of the original display content is corrected to display a part in the display range, or the whole is reduced at the time of correction so that the whole can be accommodated, or as described in the second embodiment. For example, processing such as re-layout of each display target element is required.
[0230]
Here, it is assumed that information on the correction range including information such as the reduction rate is passed to S4-3. A method for easily obtaining the reduction ratio will be described later, but it can be accurately obtained from the correction formula of the inverse perspective transformation described later.
[0231]
In S4-3, the same means 5 corrects the original display contents included in the correction range obtained in S4-2, and the process exits to P30.
[0232]
Thus, the process of S4 in FIG. 1 is performed.
[0233]
FIGS. 9A and 9B are diagrams illustrating a correction method. Here, for the sake of explanation, it is assumed that the user is viewing the display means from an oblique right direction (as viewed from the display means). As shown in FIG. 2, the front direction is + Zd axis, the upward direction is + Yd axis, and the right direction is + Xd axis as viewed from the display means. FIG. 9A illustrates the positional relationship when the user is viewing the display means from an oblique right direction, as viewed from above, and FIG. 9B illustrates the positional relationship as viewed from behind the display means. Things. It is assumed that there is only rotation around the Yd axis from the state directly facing the display means and no other rotation around the Xd axis or Zd axis as a cause of distortion.
[0234]
The image perceived by the user when viewing the display means from the position of the user is called a "user image", and the plane to which the user image belongs is called a "user image plane" (or "user image plane"). The user image and the user image plane will be described later.
[0235]
Similarly, the plane to which the display means belongs will be referred to as “display means plane” (or “display surface”). The display means plane is an Xd-Yd plane in FIGS. 9A and 9B. Also, the direction in which the user is looking is referred to as a “line of sight”, and the line of sight always passes through the center of the user image.
[0236]
9A and 9B, there are two coordinate systems. One is a coordinate system based on display means (Xd / Yd / Zd coordinate system), which will be hereinafter referred to as “display means coordinate system”. A space axis, a point, and a coordinate value of the display means coordinate system are appended with “d” at the end so that they can be easily distinguished. The display means coordinate system origin Od is the center point of the display means (the display range thereof) or the point at which the line of sight intersects the display means plane. This difference will be described later. As viewed from the display means, the front direction is + Z axis (Zd), the upward direction is + Y axis (Yd), and the right direction is + X axis (Xd). In the drawing, the coordinate axes and the line of sight of both coordinate systems are indicated by solid lines.
[0237]
Another coordinate system is a coordinate system based on a user image (Xe / Ye / Ze coordinate system), and is hereinafter referred to as a “user image coordinate system”. The space axes, points, and coordinate values of the user image coordinate system are given an “e” at the end so that they can be easily distinguished. The user image coordinate system origin Oe is a point where the line of sight intersects the user image plane perpendicularly. When the user looks at the display means, the front direction is the + Ze axis, the upward direction is the + Ye axis, and the left direction is the + Xe axis.
[0238]
The point Pu in the figure represents the viewpoint of the user, that is, the position of the eyeball. Note that the user image does not actually exist, but is temporarily introduced to explain the perceived contents. If the description is made in association with the physical situation, the viewpoint Pu is the center of the lens body in the eyeball, and the user image is an image projected on the retina by the lens body. The image projected on the retina is positionally behind the viewpoint Pu (−Ze direction), and the content of the image is also inverted by the lens body. In order to eliminate the inversion and to make the explanation easy to understand, here, the user image is placed in front (+ Ze direction) of the viewpoint Pu.
[0239]
Therefore, the plane to which the virtual user image belongs is considered, and will be referred to as a user image plane. 9A and 9B, the user image plane is an Xe-Ye plane.
[0240]
Let Le be the distance from the viewpoint Pu to the origin Oe of the user image coordinate system, and Ld be the distance from the viewpoint Pu to the origin Od of the display means coordinate system. Actually, Le corresponds to the distance between the lens body in the eyeball and the retina, and therefore is a substantially constant value for humans, and may be regarded as a constant here.
[0241]
It is assumed that the line of sight intersects the display surface at an angle θ, in other words, the viewpoint Pu rotates (π / 2−θ) around the Yd axis. Further, the X coordinate value of the display means coordinate system at the right end of the display range of the display means is Xprd, the X coordinate value of the display means coordinate system at the left end is Xpld, and the plane including the viewpoint Pu and the right end of the display range is a straight line that intersects the user image plane. Let Xpre be the X coordinate value of the user image coordinate system, and let Xpre be the X coordinate value of the straight line that intersects the user image plane with the plane including the viewpoint Pu and the left end of the display range.
[0242]
FIGS. 10 (a) and 10 (b) show the situation when the user faces the display means when viewed from the same direction as FIGS. 9 (a) and 9 (b), respectively. FIG. The distance Ld and the distance Le are the same values as in FIG. The X coordinate value of the user image coordinate system of the straight line where the plane including the viewpoint Pu and the right end of the display range of the display unit intersects the user image plane is Xpref, and the user image of the straight line where the plane including the viewpoint Pu and the left end of the display range intersects the user image plane Let the X coordinate value of the coordinate system be Xpref.
[0243]
At this time, the length Lxe in the X direction (of the user image coordinate system) of the display means reflected on the user image plane in FIG.
Lxe = Xpre-Xple
On the other hand, the length Lxef in the X direction (of the user image coordinate system) of the display means reflected on the user image plane in FIG.
Lxef = Xpref-Xpref
It becomes.
[0244]
Since the same size as the width (Xprd-Xpld) of the display means is viewed from the front and obliquely, naturally,
Lxe <Lxef
Thus, the apparent length in the X direction of the display means looks small at the magnification of (Lxe / Lxef).
[0245]
Next, there is a method of calculating (Lxe / Lxef). There is also a method of accurately calculating by perspective transformation or the like.
(Lxe / Lxef) ≒ sin (θ)
It is. Unless the distance Ld is extremely small (that is, the angle of view is large) compared to the width of the display means, the above equation has sufficient accuracy. The magnification (Lxe / Lxef) or the angle θ at which the line of sight intersects the display surface is one of the correction parameters.
[0246]
There are various correction methods, but the simplest method is a method in which distortion due to rotation about one axis is expanded in the rotation direction and corrected.
[0247]
The state where there is no distortion is when the user is directly facing the display means, that is, when the viewpoint Pu is located on the Zd axis (the state in FIG. 10) and the user does not rotate around the Zd axis. The distortion caused by rotation about one axis is a distortion that occurs when the user (viewpoint Pu) exists at a position off the Zd axis when the user is viewed from the display means (origin Od) in the display means coordinate system. is there. Since the processing method is different for the rotation around the Zd axis, that is, the distortion (rotation of the image) due to the rotation around the line of sight, it will be separately described later. Here, the rotation around the Xd axis and the Yd axis (or a combination thereof). Will be described.
[0248]
Note that a combination of rotations about the Xd axis and the Yd axis can be interpreted as a rotation about two axes that require correction processing of the rotations about the Xd axis and the Yd axis, respectively. If changed, it can be regarded as rotation around one of the axes, and may be interpreted as rotation around one axis. Changing the coordinate system means that the Xd axis and the Yd axis are rotated around the Zd axis without changing the Zd axis, so that the combined rotation becomes the Xd axis or the Yd axis alone. That is.
[0249]
The method of correcting the distortion caused by the rotation around one axis by enlarging it in the rotation direction appears to be reduced by the previously calculated magnification (Lxe / Lxef). Therefore, the original display content is preliminarily obtained by the magnification of (Lxef / Lxe). It is to expand.
[0250]
It is assumed that the center of the display range of the display means is the origin Oe, and that the viewpoint Pu is rotated (π / 2-θ) around the Yd axis as described above, and that any position (X, If the pixel value of Y) (the value representing the density or luminance of the pixel) is I (X, Y) and the pixel value of an arbitrary position (X, Y) on the corrected display content is I ′ (X, Y), The expansion in the X-axis direction
I ′ (X, Y) = I ((Lxe / Lxef) × X, Y)
It becomes. Here, (X, Y) is a display means coordinate system.
[0251]
This expression means that the pixel value after the correction processing is obtained from the pixel value before the correction processing. For the sake of description, the pixel after the correction processing is referred to as a “correction pixel”, the pixel before the correction processing corresponding to the correction pixel is referred to as a “reference pixel”, and the respective pixel values are referred to as a “correction pixel value” and a “reference pixel value”. Further, the position of the correction pixel is referred to as “correction pixel position”, and the position of the reference pixel corresponding to the correction pixel position is referred to as “reference pixel position”.
[0252]
For example, in the above equation, the reference pixel position is expressed as ((Lxe / Lxef) × X, Y) on the basis of the correction pixel position (X, Y), so that the correction pixel value I ′ (X, Y) The corresponding reference pixel value can also be represented as I ((Lxe / Lxef) × X, Y).
[0253]
When actually obtaining the image after the correction processing, the correction pixel position (X, Y) may be moved within the range of the display content to obtain the correction pixel value I ′ (X, Y) at each position. For example, if the width is W and the height is H, the X is moved in the range of [−W / 2, W / 2] and the Y is moved in the range of [−H / 2, H / 2]. Assuming that the correction pixel position takes only an integer value in the digital processing, the number of pixels becomes (W × H), so that (W × H) correction pixel values are obtained.
[0254]
Assuming that the pixel position at which the pixel value can be obtained is only an integer value, the reference pixel position ((Lxe / Lxef) × X, Y) in the above equation generally does not always become an integer value, and thus the reference pixel value is obtained as it is. You will not be able to do it. In this case, some kind of interpolation processing is generally performed. For example, there are various methods such as a method of selecting the nearest integer position, a primary interpolation method that interpolates from pixel values of surrounding integer positions, and a secondary interpolation method. As a method with simple processing and relatively good image quality, primary interpolation is used. The law is most often used.
[0255]
For example, when the reference pixel position (Xr, Yr) is
Xr = Xri + Xrd (where Xri is an integer)
Yr = Yri + Yrd (where Yri is an integer)
Let's say that Xrd and Yrd are decimal parts and are numbers between 0 and 1.
[0256]
The pixel values of four pixel positions (Xri, Yri), (Xri + 1, Yri), (Xri, Yri + 1), (Xri + 1, Yri + 1) around the reference pixel position (Xr, Yr) are denoted by I00, I10, I01, It is assumed to be simplified as I11.
[0257]
At this time, the reference pixel value I (Xr, Yr) by the primary interpolation method is
Figure 2004078121
Is required.
[0258]
Here, since the image is enlarged in the X direction, Yr is an integer value (Yrd = 0).
I (Xr, Yr) = (1−Xrd) × I00 + Xrd × I10
Can be simplified.
[0259]
Through the above processing, it is possible to obtain a corrected display content in which distortion due to rotation about one axis is enlarged and corrected in the rotation direction.
[0260]
FIG. 11 is an explanatory diagram for explaining a user image of the original display content when directly facing the display means (the state of FIG. 10). Characters A to F of the same size are arranged in the frame 20. Note that this frame line 20 is assumed to be a part of the original display content, and is displayed in a corrected form when the correction processing is performed. Here, it is assumed that the display range is the same size as the display means, and the frame line 20 coincides with the display range boundary 21 of the display means.
[0261]
Note that, for comparison of the appearance, the display range on the user image plane in the state of FIG. The facing display range 22 is a range on the user image plane when the user looks directly at the display range boundary 21 of the display means, and therefore has a constant size on any subsequent drawings. Therefore, by comparing the display range on the user image plane in a certain viewing direction with the directly-facing display range 22, it is possible to understand what size the display range actually looks to the user. In FIG. 11, the frame line 20, the display range boundary 21, and the directly-facing display range 22 all overlap.
[0262]
FIG. 12 is an explanatory diagram illustrating a user image when the display means on which the original display content is displayed is viewed obliquely from the right (as viewed from the display means) (the state of FIG. 9). The facing display range 22 is indicated by a dotted line for comparison. Both the frame 20 and the display range boundary 21 appear distorted, and the size of the characters also decreases from left to right, and the right C and F characters appear to be smaller than the left A and D characters. The width of the display range boundary 21 also appears to be smaller than the width of the directly-facing display range 22. It should be noted that the vertical width of the display range boundary 21 appears to be smaller as it goes to the right due to the effect of the perspective transformation described later.
[0263]
FIG. 13 shows a user who looks at the corrected display content when the display content is enlarged (Lxef / Lxe) times in the horizontal direction and corrected according to the present invention when facing the display means (the state of FIG. 10). FIG. 3 is an explanatory diagram illustrating an image. Actually, when performing this correction, the user should be looking at the image from an oblique direction instead of facing directly, so it is unlikely that the user will see such an image, but for the purpose of explanation, here Is shown.
[0264]
In the corrected display contents at this time, each character is horizontally long. Since the center position of the display content is set to the center position of the enlargement, the right and left portions are not displayed outside the display range boundary 21. For comparison, a dotted line indicates a frame line 20 when multiplied by (Lxef / Lxe) in the horizontal direction.
[0265]
FIG. 14 is an explanatory diagram illustrating a user image when the same corrected display content as in FIG. 13 is viewed obliquely from the right (as viewed from the display unit) (the state in FIG. 9), that is, a corrected user image. is there. Compared to FIG. 12 in which the correction processing is not performed, the display content is enlarged in the horizontal direction, and the horizontal size of each character is almost the same as the horizontal size of each character in the original display content shown in FIG. ing.
[0266]
In FIG. 12, characters that have shrunk in the horizontal direction and are difficult to see can be recognized as having substantially the same width as when facing in FIG. 14, so that the effect of facilitating recognition is achieved. That is, there is an effect that the distortion appears to be eliminated or reduced when viewed obliquely. When the user is not directly facing the display means, the display means is kept in a state where the direction of the display means has been changed without performing an operation or operation such as rotating, moving, or moving near the front of the display means. There is an effect that it is possible to view the display content in the state of facing or a state close thereto without requiring any operation or the like.
[0267]
Further, since only the enlargement in the one axis direction is required as a processing method, an effect that processing is simplified can be obtained. Originally, in order to perform accurate correction, complicated correction processing such as reverse perspective transformation must be performed. However, there is an effect that the correction can be performed by a simple correction method called enlargement processing. Since the primary cause of invisibility is often the reduction effect, this method also has the effect that much of the invisibility can be resolved.
[0268]
Here, since the correction is performed only in the horizontal direction, the effect of the perspective transformation (mainly expansion and contraction in the vertical direction) remains in FIG. This can be corrected by using the inverse perspective transformation described later. However, when using the reverse perspective transformation, if there is no detailed information such as whether the user is viewed from the right diagonal direction or from the left diagonal direction, the reverse It may be effective. Here, since the correction is performed only in the horizontal direction, there is an advantage that the same correction effect can be obtained when viewed from the diagonally right direction or the diagonally left direction.
[0269]
Therefore, the uniaxial enlargement processing can be combined with a method of simply detecting whether or not the user is present near the front of the display means using the presence detection means 3. That is, when the presence detecting unit 3 detects that the user is not near the front of the display unit, the correction unit 5 enlarges the original display content in a predetermined one-axis direction (for example, the left-right direction). By simply performing the correction, the user can obtain the effect of reducing the distortion even when viewing the display surface from either the right or left diagonal.
[0270]
It has been described that a combination of rotations around the Xd axis and the Yd axis can be interpreted as a rotation around one axis or a rotation around two axes depending on how to take a coordinate system. Since it is troublesome to change the coordinate system, it is often easier to make corrections on two axes.
[0271]
For example, it is assumed that the user is in a direction rotated by θy around the Yd axis and θx around the Xd axis when viewed from the display unit. In that case,
(Lxe / Lxef) = sin (θy)
(Lye / Lyef) = sin (θx)
However, if the display contents are enlarged in the X direction and the Y direction, two-axis correction can be performed. Each process may be performed according to the same principle as the method described above. The enlargement in the X direction may be followed by the enlargement in the Y direction, or vice versa, or simultaneously.
[0272]
FIG. 14 is easy to see because the width of the character is almost the same as that in FIG. 11 when viewed directly, but there is a problem that a portion that does not fit in the display range boundary 21 is cut off and cannot be seen. In order to see the invisible part, you have to do scrolling operation.
[0273]
Depending on the display content, it may not always be possible to read fine characters and the like, so there may be a case where the user wants to be able to view the entire list and have the same aspect ratio and the like as when facing the front.
[0274]
Therefore, there is a method in which the display content is corrected not by enlarging the display content in the rotation direction causing the distortion but by reducing the display content in the rotation axis direction causing the distortion.
[0275]
9A and 9B, the axial direction of the rotation that causes distortion is the Yd axis direction, that is, the vertical direction.
[0276]
The corrected pixel value I ′ is
I ′ (X, Y) = I (X, (Lxef / Lxe) × Y)
(Lxef / Lxe) = 1 / sin (θ)
Is obtained.
[0277]
FIG. 15 is an explanatory diagram for explaining a user image when the corrected display content is viewed from the oblique right direction (as viewed from the display means) when the correction is performed by this method (the state of FIG. 9). Since the horizontal direction is the same, the horizontal width of the frame line 20 is the same as the horizontal width of the display range boundary 21 and is smaller than the horizontal width at the time of facing, but the entire corrected display content is displayed. Since the vertical direction is reduced, the height of the frame line 20 is smaller than the height of the display range boundary 21. The height of the frame line 20 is further reduced in the vertical direction from the state of FIG. Have been. Each character and the frame 20 in FIG. 15 are closer to the state in FIG. 11 in which the aspect ratio is directly opposite to the state in FIG.
[0278]
In this way, by reducing and correcting the display content in the rotation axis direction that causes distortion, the display content does not protrude from the display range and is not interrupted, and the aspect ratio can be brought close to a state where the aspect ratio is directly confronted by a simple process. The effect is that you can do it.
[0279]
In addition, regarding the problem of FIG. 13, that is, the problem that a portion that does not fit in the display range is cut off and cannot be seen, other than the corresponding method of reducing and correcting the display content in the axial direction of rotation that causes distortion, Other response methods are also conceivable.
[0280]
As one of the methods, since the corrected display content exceeds the display range, when enlarging, the display range may be enlarged accordingly.
[0281]
In the above description, in S4-1 in FIG. 8, the display range obtained by the correction unit 5 is the same size as the display range obtained when facing the display unit, but here, it is obtained when facing the display unit. What is necessary is just to enlarge the display range by the correction means 5. For example, if the display range when facing directly is W × H, the enlarged display range W ′ × H ′ is
W ′ = (Lxef / Lxe) × W
H ′ = (Lyef / Lye) × H
It becomes.
[0282]
Of course, this method is a method that can be performed only when the size of the display range can be increased. For example, since the display range is set to the size of the display means and the size of the display means is fixed, it is quite possible that the display range cannot be expanded. However, if the display means is sufficiently large and the display range is set in the form of one window in the display means, it is possible to increase the size of the window. Of course, there is a restriction that it cannot be set beyond the size of the display means.
[0283]
In the above description related to S4-2 in FIG. 8, either the original display content is corrected and displayed only partly, or the whole is reduced at the time of correction so that the entirety can be accommodated. Here, since the display range is enlarged, the range to be corrected may be the entire range of the original display content.
[0284]
However, in the case where the enlarged display range exceeds the size of the display means, as in the conventional case, only a part of the original display content is corrected and displayed, or the correction is performed so that the entire display can be accommodated. It is necessary to determine the correction range by selecting either to reduce the entire size. However, if the display range is slightly increased, it will not be worse than in the case of FIG. 13 anyway.
[0285]
FIG. 16 is an explanatory diagram illustrating a user image when the corrected display content when the display range is enlarged is viewed directly on the display means (the state of FIG. 10) according to the present invention. Here, the display range is expanded (Lxef / Lxe) times in the horizontal direction. The frame line 20 overlaps the display range boundary 21. Also, since the display range is enlarged, it can be seen that the display range boundary 21 is larger than the directly-facing display range 22.
[0286]
FIG. 17 is an explanatory diagram illustrating a user image when the display unit in the state of FIG. 16 is viewed from the oblique right direction (as viewed from the display unit) (the state of FIG. 9). The frame 20 and the characters inside the frame 20 are all displayed within the display range boundary 21. Since the display range and the display content enlarged by (Lxef / Lxe) times are viewed obliquely and shrunk by (Lxe / Lxef) times, (Lxef / Lxe) × (Lxe / Lxef) = 1, The width of the display range and the display content viewed on the user image is almost the same as the facing display range 22. In addition, the size of each character looks almost the same as the size of the character in FIG.
[0287]
By expanding the display range in this way, in addition to the above-described effects, there is an effect that the original display content can be displayed as little as possible. In other words, an effect is obtained in which the amount of information close to that of facing can be obtained from any direction. If the display range is not enlarged, operations such as scrolling are required, but there is also an effect that such operations are reduced. In particular, as shown in FIG. 17, when the size of the viewable display range is made substantially the same as when facing directly (that is, when the display range is enlarged by the reciprocal of the reduction ratio of the appearance), the information is displayed. The amount is almost the same, and scrolling operations are almost unnecessary.
[0288]
In addition, as for the correction around the Zd axis, it is sufficient to simply correct the rotation of the image. The rotation about the Zd axis refers to, for example, a state in which the face is tilted left or right facing the display unit.
[0289]
For example, if the user tilts the face θz left or right around the Zd axis, the corrected pixel value I ′ is
I ′ (X, Y) = I (X × cos (−θz) −Y × sin (−θz), X × sin (−θz) + Y × cos (−θz)) (Formula 0)
It becomes.
[0290]
This makes it possible to perform correction around the Zd axis, and when viewed by the user, the display content is displayed in the vertical direction according to the direction of the face. In this case, the face inclination angle θz is a correction parameter for performing correction around the Zd axis.
[0291]
Naturally, it is also possible to perform the processing in combination with the correction around the Xd axis, the Yd axis, and the Zd axis. Generally, as the number of axes to be corrected increases, the effect of obtaining more easily displayed corrected display contents is obtained. However, there is a drawback that as the number of axes to be corrected increases, the time required for a sensor for obtaining the amount of rotation around each axis, the correction processing of display contents, and the cost of a processing device also increase. Therefore, in the case of actual use, it is better to narrow down the number of axes to be corrected to a necessary and sufficient number according to the actual use scene.
[0292]
As described above, by selecting the correction method from one axis to three axes, it is possible to select an appropriate correction direction in consideration of the cost of the correction processing, the correction effect, the use pattern, the purpose, and the like. Come.
[0293]
By the way, the method of correcting the rotation about the Xd axis and the Yd axis described so far is simple in processing and can provide a relatively large effect. However, as the rotation angle increases, distortion due to the effect of the perspective transformation effect is reduced. It's getting bigger. Also, as the distance Ld (see FIG. 9A) becomes smaller than the size of the display range, the distortion due to the effect of the perspective transformation effect increases. Specifically, the distortion due to the perspective transformation effect is, for example, that the height of the left side of the corrected frame 20 in FIG. 17 is larger than the height of the right side. This is also true for each character inside the frame 20. Also, the corners of the frame line 20 are no longer 90 degrees.
[0294]
In order to completely remove these perspective conversion effects, it is necessary to perform a correction process using inverse perspective conversion. The reverse perspective transformation referred to here is a correction method in which the user image when the corrected display content obtained by correcting the original display content when viewed obliquely completely matches the user image when viewed directly.
[0295]
In order for the display content viewed in the state of FIG. 9 and the display content viewed in the state of FIG. 10 to be the same, the pixel value of an arbitrary point Pve (Xpve, Ypve) on the user image plane of FIG. It is only necessary that the pixel value of the point Pve (Xpve, Ypve) having the same coordinates as the above on the user image plane in FIGS. 9A and 9B is always the same. In order for the pixel values to be the same, the point Pd (Xpd, Ypd) on the original display content corresponding to each point and the point Pd ′ (Xpd ′, Ypd ′) on the corrected display content corresponding to each point are displayed. The pixel values need to be the same.
[0296]
Hereinafter, a description will be given of deriving a correction relational expression.
[0297]
From FIG. 10, from the proportional relationship,
Xpd = Xpve × (Ld / Le) (Equation 1)
Ypd = Ypve × (Ld / Le) (Equation 2)
It becomes.
[0298]
Further, from FIG. 9A, the length of a perpendicular line dropped from the point Pd ′ to the line of sight Pu-Od and Xpve are:
Xpve × ((Ld−Xpd ′ × cos (θ)) / Le) = Xpd ′ × sin (θ)
There is a proportional relationship, and if this is rearranged and rewritten,
Xpd ′ = Xpve × Ld / (Le × sin (θ) + Xpve × cos (θ)) (Equation 3)
It becomes. From Equations 1 and 3, Xpve is eliminated,
Xpd ′ = Ld × Xpd / (Ld + Xpd × cos (θ)) (Equation 4)
When Ld and θ are determined, the relational expression between Xpd ′ and Xpd is also determined.
[0299]
Also, from FIG. 9B,
Ypd ′ = Ypve × (Ld × cos (θ) −Xpd ′) / (Le × cos (θ) −Xpve × sin (θ)) (Equation 5)
It becomes. From Equations 1 to 5,
Ypd ′ = Ypd × {cos (θ) −Xpd / (Ld + Xpd × cos (θ))} / (cos (θ) −Xpd × sin (θ) / Ld) (Equation 6)
When Ld and θ are determined, the relational expression between Ypd ′ and Xpd and Ypd is also determined.
[0300]
Therefore, if Ld and θ are determined from Expressions 4 and 6, a point Ppd ′ (Xpd ′, Ypd ′) corresponding to the point Ppd (Xpd, Ypd) is obtained.
[0301]
If Equations 4 and 6 are converted into the form of Xpd and Ypd,
Xpd = Ld × Xpd ′ / (Ld−Xpd ′ × cos (θ)) (Equation 7)
Ypd = cos (θ) − {sin (θ) × Xpd ′ / (Ld−Ypd ′ × cos (θ))} / (cos (θ) −Xpd ′ / Ld) (Equation 8)
It becomes.
[0302]
Therefore, if Ld and θ are determined from Expressions 7 and 8, a point Ppd (Xpd, Ypd) corresponding to the point Ppd ′ (Xpd ′, Ypd ′) is obtained.
[0303]
When actually correcting, the point Ppd ′ (Xpd ′, Ypd ′) is moved within the correction range, the coordinate value of the corresponding point Ppd is obtained from Equations 7 and 8, and the primary interpolation equation described above is used. To obtain the pixel value of the point Ppd ′.
[0304]
The correction range remains unchanged if the size of the display range is not changed. When the display range is extended so that all the original display contents can be seen, the range of the dotted line surrounded by four points Prtd, Prbd, Plbd, and Pltd in FIG. 9B is the display range. The coordinate positions of these four points are obtained by substituting the coordinate positions of the four corners of the display range when facing each other into Expressions 4 and 6.
[0305]
FIG. 18 shows corrected display contents when the display range is expanded and corrected by this correction. When this corrected display content is viewed obliquely from the side in FIG. 9, a user image that completely matches FIG. 11 is obtained. However, even if it is completely matched, the fact that it is completely matched in the mathematical formulas actually affects the resolution of the display means and the effects of interpolation, quantization error, and calculation error to some extent. However, it looks like a user that looks almost the same.
[0306]
In the above-described method, the case where the rotation is performed around the Yd axis has been described. However, even when the rotation about the Xd axis is further applied, the above method can be applied as it is by performing coordinate conversion.
[0307]
FIG. 29 is an explanatory diagram for explaining the state at this time. The origins Od, Xd axis, Yd axis, and Zd axis are the same as those in FIGS. The viewpoint when directly facing the display surface is defined as viewpoint Oe ", and the distance between the viewpoint Oe" and the origin Od is defined as Ld. The viewpoint Oe ″ on the Zd axis rotates (π / 2−θ′y) around the Yd axis, moves to the viewpoint Oe ′, and further rotates (π / 2−θ′x) around the Xd axis. It is assumed that the user has moved to the viewpoint Oe.
[0308]
In FIG. 29, this movement is indicated by a dotted line with an arrow for easy understanding. Further, since the viewpoint only rotates around the axis, the distance between the viewpoint and the origin Od does not change, and the distance between the viewpoint Oe ′ and the origin Od and the distance between the viewpoint Oe and the origin Od are both Ld.
[0309]
In addition, the viewpoint Oe ′ belongs to the Xd-Zd plane, and the intersection of the perpendicular drawn from the viewpoint Oe ′ to the Xd axis and the Xd axis is defined as a point Pd1. Therefore, ∠Oe′OdPd1 = θ′y.
[0310]
Similarly, the intersection of the perpendicular drawn from the viewpoint Oe to the Xd-Yd plane and Xd-Yd is defined as a point Pd2. Therefore, ∠OePd1Pd2 = θ′x. Note that the viewpoint Oe ′, viewpoint Oe, point Pd1, and point Pd2 belong to the same plane and are perpendicular to the Xd axis. ∠OeOdPd2 is called θ ′, and ∠Pd1OdPd2 is called θ′z.
[0311]
29, a rotation about the Zd axis (−θ′z) results in a state similar to that of FIG. 9, that is, a state in which the lens is rotated about the Yd axis from a directly-facing state (viewpoint Oe ″). , Yd only changes from (π / 2−θ) to (π / 2−θ′y), so that the method described with reference to FIG.
[0312]
However, a coordinate system transformation that rotates around the Zd axis by (−θ′z) is required. A point (X ", Y") obtained by rotating an arbitrary point (X ', Y') on the Xd-Yd plane in FIG. 29 around the Zd axis by (-θ'z) is
X ″ = X ′ × cos (−θ′z) −Y ′ × sin (−θ′z)
Y ″ = X ′ × sin (−θ′z) + Y ′ × cos (−θ′z)
Is required.
[0313]
Thereafter, θ ′ and θ′z are obtained from θ′x and θ′y.
[0314]
The distance OdPd1 between the origin Od and the point Pd1 is
OdPd1 = OdOe ′ × cos (θ′y) = Ld × cos (θ′y)
And the distance Oe′Pd1 between the viewpoint Oe ′ and the point Pd1 is
Oe′Pd1 = OdOe ′ × sin (θ′y) = Ld × sin (θ′y)
It becomes. Since the movement from the viewpoint Oe 'to the viewpoint Oe is a rotation around the Xd axis, the distance OePd1 is equal to the distance Oe'Pd1.
[0315]
Therefore, the distance Pd1Pd2 between the point Pd1 and the point Pd2 is
Pd1Pd2 = OePd1 × cos (θ′x) = (Ld × sin (θ′y)) × cos (θ′x)
It becomes. Since OdPd1 and Pd1Pd2 have been obtained, θ′z becomes
Figure 2004078121
Find more. “Arctan” is an inverse function of tan.
[0316]
The distance OdPd2 between the origin Od and the point Pd2 is
Figure 2004078121
It becomes. Note that “x ¢ 2” means the square of x, and “sin ¢ 2 (θ)” means the square of sin (θ).
[0317]
Since OdOe and OdPd2 have been determined, θ ′ becomes
Figure 2004078121
More is determined. “Arccos” is an inverse function of cos.
[0318]
With the above formulas, θ ′ and θ′z can be obtained from θ′x and θ′y, and the method described with reference to FIG. 9 can be applied by the coordinate conversion about the Zd axis described above. Thereby, it is possible to perform correction for rotation of two axes around the Xd axis and the Yd axis.
[0319]
Generally, when the user image is rotated by θ′z about the Zd axis, the user image is also rotated by θ′z about the line of sight. Therefore, by performing the rotation processing according to the above (Equation 0), the rotation of the user image can be further corrected, and the correction for the rotation of the three axes can be performed.
[0320]
In the processing described above, for the perspective transformation, correction processing for only one axis (Yd axis or line of sight), correction processing for only two axes (Xd axis, Yd axis), and three axes (Xd axis, Yd axis, and line of sight) ) Can be corrected. Note that the rotation of these three axes, that is, the Xd axis, the Yd axis, and the line-of-sight axis corresponds to rotation of a roll, a pitch, and a yaw.
[0321]
Here, one axis and two axes have been described using the Yd axis or the line-of-sight axis, or the Xd axis and the Yd axis, but other combinations are also possible by combining the respective processing methods.
[0322]
As described above, by performing the correction by the reverse perspective transformation, an effect of being able to see exactly the same corrected display content as when the user faces directly is obtained. Although correction display contents that are close to some extent may be obtained by correction processing such as simple enlargement, reduction, and rotation, exactly the same correction display contents can be obtained only by processing using reverse perspective transformation.
[0323]
Note that the reverse perspective transformation process described here is a complete correction method that allows the user to see exactly the same corrected display content as when facing directly, but there is also a more simplified correction method. For example, there is a method of performing correction only in the X-axis direction according to Expression 7 and not performing correction in the Y-axis direction according to Expression 8. In this case, the corrected image expands or contracts only in the X-axis direction. Alternatively, a method of performing correction only in the Y-axis direction by Expression 8 and not performing correction in the X-axis direction by Expression 7 may be considered.
[0324]
Next, another embodiment in which the above-described correction processing is repeated at predetermined time intervals will be described.
[0325]
FIG. 19 is a flowchart illustrating a display method according to another embodiment of the present invention. Although the processing in the flowchart of FIG. 1 is substantially the same as the main part, the difference is that the correction processing is repeated every predetermined time.
[0326]
More specifically, the process proceeds from S1 to S5 described with reference to FIG. 1 and proceeds from S5 to a new S6 to determine whether or not to end the correction display process. If not, the process proceeds to a new S7A.
[0327]
Whether to end the processing may be based on, for example, a user's instruction as to whether to enter the correction processing mode. If the user has designated the correction processing mode with a button or the like, the processing is continued. If the user has stopped specifying the correction processing mode, the processing is terminated. In addition to the user's instruction, for example, exiting the correction processing mode automatically after a certain period of time after entering the correction processing mode, or exiting the correction processing mode if the user has not been near the display means for more than a predetermined time, etc. It is also conceivable.
[0328]
In S7A, the process waits for a predetermined time, passes P10, and returns to S3.
[0329]
Note that the processing in S6 and S7A may be performed by the correction means 5 and the display means 6 or the like, but not shown in FIG. It may be provided exclusively for processing.
[0330]
In these processes, the direction of the user's line of sight is obtained at predetermined time intervals, and the correction process is repeatedly performed in accordance therewith.
[0331]
Thereby, even if the user moves relatively to the display means, the correction is performed in accordance with the movement, so that an effect of always obtaining a corrected display can be obtained.
[0332]
Note that the predetermined time is not necessarily constant, and for example, the time interval may be changed according to the situation at that time.
[0333]
Furthermore, by making the time interval very short, the correction can be performed almost in real time.
[0334]
FIG. 20 is a flowchart illustrating a display method according to still another embodiment of the present invention. This is almost the same as the processing in the flowchart of FIG. 19, except that the correction processing is not repeated every predetermined time, but is performed when the user's line of sight changes.
[0335]
Specifically, the process proceeds from S5 to S6 in the same manner as in the flow of FIG. 19, and it is determined whether or not the correction display process is to be terminated. If the process is to be terminated, the process is terminated. Processing proceeds.
[0336]
In S7B, it is detected whether or not the user's line of sight has changed, and the process waits for the change. When the user's line of sight has changed, the process returns to S3 via P10. The subject of the operation of S7B is the same as that of S7A.
[0337]
Whether the user's line of sight has changed can be determined by periodically detecting the user's line of sight by the direction detecting unit 4 and comparing with the correcting unit 5 whether the line of sight has changed, or by changing the line of sight detected by the sensor. Then, the sensor itself emits an interrupt signal or the like, and when the presence detecting means 3 or the direction detecting means 4 obtains an interrupt signal or the like from the sensor, the correcting means 5 determines that the user's direction has changed. Can be considered. If the information on the gaze direction of the user is obtained at the same time as the detection of the change in the gaze direction of the user, the process of acquiring the gaze direction of the user in S3 may be skipped, and the process may proceed from S7B to S4.
[0338]
The external operation is the same as that of the flowchart of FIG. 19, but the internal processing of FIG. 20 has an advantage that unnecessary correction processing is not required. In other words, if the user's gaze direction does not change, no matter how many times the correction process is performed, the result (corrected display content) is the same, so if the correction process is performed only when it is detected that the user's gaze direction has changed Is enough.
[0339]
As a result, there is an effect that unnecessary correction processing is not required.
[0340]
[Embodiment 2]
In the first embodiment, the method of processing the display content generated by the main display program / device to generate new display content has been described. In the second embodiment, when the main display program / device generates the display content, Next, a description will be given of a process of modifying the generation method.
[0341]
The configuration diagram of this embodiment is the same as FIG. 3 as in the first embodiment. Hereinafter, the description will be focused on the portions different from the description of FIG. 3 in the first embodiment.
[0342]
The CPU 70 as the display content acquisition unit 2 obtains a display target element from the content data obtained from the content acquisition unit 1 based on a program read from the main storage 74, the external storage 75, the communication device 77, and the like, and sends the display target element to the correction unit 5. hand over. Then, the display target element which has been corrected and returned by the correction means 5 is obtained and laid out with respect to the display range. These processes are repeated, and the finally obtained corrected display contents are passed to the correcting means 5.
[0343]
The CPU 70 serving as the correction unit 5 is configured to read the respective display target elements obtained from the display content obtaining unit 2 based on a program read from the main memory 74, the external storage 75, the communication device 77, and the like. And the corrected display target element is returned to the display content acquisition means 2. These processes are repeated for all display target elements to be displayed (corrected). Then, the finally obtained corrected display content is obtained from the display content obtaining means 2 and passed to the display means 6.
[0344]
In this case, the display content acquisition unit 2 and the correction unit 5 may be integrated.
[0345]
An example of the configuration of a device that specifically realizes each of the units 1 to 6 in FIG. 3 is the same as that in FIG. 4 of the first embodiment. The external appearance example of the display correction device of the present embodiment is also the same as that of FIG. 5 of the first embodiment.
[0346]
FIG. 21 is a flowchart illustrating a display method according to an embodiment of the present invention. Although there are many common parts with the processing of the flowchart of FIG. 1 of the first embodiment, the difference is that acquisition of display contents and correction processing are performed in S4B after acquiring the user's gaze direction.
[0347]
Specifically, the process proceeds from S3 to P4B via P40.
[0348]
In S4B, the display content acquisition unit 2 and the correction unit 5 acquire and correct the display content of the content, and the process proceeds to S5 via P50.
[0349]
Here, the layout will be described for the following description.
[0350]
FIG. 22 is an explanatory diagram illustrating the entire layout. The layout range 40 is a range in which a layout is performed in the display content of the content. Usually, either the vertical or horizontal size of the layout range 40 is often the same as the vertical or horizontal size of the display range 44. However, there may be blanks at the top, bottom, left, and right. Only the layout range becomes smaller. Although the width of the display range 44 is slightly widened in the drawing to make it difficult to understand, the width of the display range 44 is set to be the same as the width of the layout range 40 here. The display range 44 is a range actually displayed on the display unit in the layout range 40.
[0351]
In order to facilitate comparison with the correction method described above, in the example of FIG. 22, when the contents of the layout are displayed on the display means and the user looks directly at the display means, the result is the same as FIG. It is like that.
[0352]
The “display target element” is an element that constitutes display content and is a display target, and corresponds to, for example, individual characters or images. In FIG. 22, display target elements 41, 42, 43, etc. correspond to display target elements. Each frame is surrounded by a dotted line for easy understanding, but these frames are not actually displayed.
[0353]
FIG. 23 is an explanatory diagram illustrating an example of the data structure of a display target element. Layout data 80, 81, 82, etc. are data of individual display target elements, each of which includes data such as type (CHAR, IMAGE, etc.), layout position (X, Y), size (W, H), contents, etc. have. The type indicates the type of a display target element such as a character (CHAR) or an image (IMAGE). The layout position is a position on the display range laid out by the layout processing, and when displayed, the display position is determined based on the layout position. Here, the size is the width and height of the circumscribed rectangle of the display target element. The "contents" are data necessary for display, and vary depending on the type of the display target element. For example, the "contents" are character codes for characters and image bitmap data for images.
[0354]
“Laying out” means arranging display target elements in the layout range 40 according to a certain rule. Specifically, “lay out” means mainly determining the layout position (X, Y) in FIG.
[0355]
Layout rules vary depending on the type of content.For example, in text editors and simple word processors, characters are placed next to the previous character (in the case of horizontal lines) and cannot fit in the layout range, or after the line feed code. If it is a character, it is placed at the beginning of the next line, and so on. In a WWW (World Wide Web) browser or the like, the layout rule is determined by HTML (Hyper Text Markup Language).
[0356]
The effect of the present invention appears when the layout rule changes the layout result in accordance with a change in the size of the layout range 40 or a change in the size of the display target element. In the case of a layout rule in which the position or size of the display target element does not change dynamically and always takes a fixed position or size, the layout itself cannot be changed at all, and thus no effect is obtained.
[0357]
The example of FIG. 22 is a result of laying out the display target elements of the characters “A” to “I” in the display range 44 in a row in order. An example of the layout processing here will be described using the data structure of FIG. It is assumed that the width data W and the height H have already been given to each character in the layout data 80 to 82 of each display target element. Here, each character has a size of W0 × H0. It is assumed that the width of the layout range 40 is WL (here, about three times as large as W0).
[0358]
First, the letter "A" is placed at the upper left. The position (X, Y) of “A” is (0, 0). Next, it is determined whether “B” can be arranged to the right of “A”.
[0359]
(X position of previous display target element) + (width of previous display target element) + (width of display target element to be determined) <WL
Is satisfied, it is determined that arrangement is possible.
[0360]
If it is determined that it can be placed, it is placed to the right of the immediately preceding display target element,
(X position of display target element to be arranged) = (X position of previous display target element) + (width of previous display target element)
(Y position of display target element to be arranged) = (Y position of previous display target element)
It becomes.
[0361]
If it is determined that it cannot be placed, it will be placed at the beginning of the next line,
(X position of display target element to be arranged) = 0
(Y position of display target element to be arranged) = (Y position of previous display target element) + (vertical width of previous display target element)
It becomes.
[0362]
Since “B” can be arranged beside “A”, the position (X, Y) of “B” is (W0, 0). Similarly, “C” can be arranged next to the position, so that the position (X, Y) is (W0 × 2, 0).
[0363]
Since it is determined that the next character “D” is not arranged on the right side, it is arranged at the beginning of the next line, and the position (X, Y) is (0, H0). By repeating such processing, the display target elements are laid out.
[0364]
The layout rules actually used are generally more complicated, and for example, the layout must be considered in consideration of the space between lines, line breaks, prohibition processing, image wraparound processing, and the like. These layout rules vary depending on the main display program / device. Although not all cases can be described, the layout rule described here is a basic method of many layout rules, and therefore, the following description will be made according to the layout rule.
[0365]
FIG. 24 is a flowchart for explaining one method for realizing the processing of S4B in FIG. Here, the display content acquisition unit 2 performs a process of re-laying out (layout) the display target element.
[0366]
In S4B-1 after P40, the display content acquiring unit 2 obtains the layout range, and the process proceeds to S4B-2. The layout range is a range in which the display target elements are laid out. Since the size of the display range is usually determined in advance, the size is read from the main storage 74, the external storage 75, or the like. When the size can be changed, the size of the current display range is obtained through, for example, an API (Application Programming Interface).
[0367]
In S4B-2, the display content acquisition unit 2 sets the first display target element in the content data as the current element, and the process proceeds to S4B-3. In the case of FIG. 23, the first layout data 80 may be set as the current element.
[0368]
In S4B-3, the correction unit 5 corrects the current element, and the process proceeds to S4B-4. The principle of the correction method here is the same as the method described so far on an image basis (using the entire display content as a correction unit). For example, if the correction to enlarge in the horizontal direction is performed, the size of the current element may be W0 × H0, and if the enlargement magnification is Rx, the size may be (W0 × Rx) × H0. In the example described above, Rx = (Lxe / Lxef) ≒ sin (θ).
[0369]
In S4B-4, the display content acquiring unit 2 lays out the current element, and the process proceeds to S4B-5. The layout method is as described above. However, here, since the shape and size of the display target element are changed in S4B-3, the layout is to be performed using the changed shape and size. In the example of S4B-3, a current element having a size of (W0 × Rx) × H0 is laid out. In the example of the layout rule described above, (the horizontal width of the display target element) may be processed as (W0 × Rx).
[0370]
Instead of correcting display target elements one by one in S4B-3 and sequentially laying out in S4B-4, after obtaining display target elements in S4B-1, all display target elements are corrected at once. Alternatively, the corrected display target elements may be laid out one by one in S4B-4.
[0371]
In S4B-5, the display content acquisition unit 2 determines whether the current element is the last element. If the current element is the last element, the process goes to P50, and if not, the process goes to S4B-6.
[0372]
(The process proceeds when it is determined in S4B-5 that the current element is not the last element.) In S4B-6, the display content acquisition unit 2 sets the current element as the next display target element, and proceeds to S4B-3. Processing returns.
[0373]
By these processes, an example of the process of S4B in FIG. 21 can be realized.
[0374]
As a result, the layout can be performed while correcting the individual display target elements.
[0375]
FIG. 25 is a diagram for explaining the result when the individual display target elements laid out as shown in FIG. 22 are horizontally enlarged and laid out again in a state where the user faces the display surface. .
[0376]
For example, the individual display target elements 41, 42, and 43 in FIG. 22 are enlarged horizontally to become display target elements 41 ', 42', and 43 'in FIG. The display target elements 41 ′ and 42 ′ are on the first line, but the display target element 43 ′ cannot be laid out and is arranged at the beginning of the next line.
[0377]
FIG. 26 shows a user viewing the display means in a state where the display range 44 laid out as shown in FIG. 25 is displayed as the display range boundary 21 (as viewed from the display means) from an oblique right direction (the state of FIG. 9). FIG. 3 is an explanatory diagram illustrating an image. For comparison, the facing display range 22 is indicated by a dotted line.
[0378]
The size and the like of each character look almost the same as the size of the character in FIG. Compared to FIG. 14, the appearance of each character (such as the size of the character relative to the size of the display range boundary 21) is the same, but FIG. 14 shows that the characters at the edges are cut off and displayed. In FIG. 26, the corrected display target element is laid out again, so that the characters are not cut off.
[0379]
When processing is performed using the entire display content as a unit of correction, there is a method of vertically reducing the display content as shown in FIG. 15 in order to prevent the characters from being cut off. It becomes smaller and harder to see. Although there is a method of increasing the display range as shown in FIG. 17, the feasibility depends on the display environment and cannot always be increased.
[0380]
When the display target element of this method is processed as a unit of correction, it is possible to make it easy to see the character and not to cut off the character etc. without changing the size of the display range. There is an effect that it can be realized even in a complicated display environment.
[0381]
Further, when processing the display target element as a unit of correction, for example, when expanding the display content in the horizontal direction as one direction, each display target element is treated as having a horizontally expanded size. Has the effect of using exactly the same layout processing as when laying out the display target element before correction when facing directly.
[0382]
Regarding display, character drawing often includes dedicated hardware and high-speed processing routines, including processing for scaling characters and images, so characters are displayed as characters rather than images. In many cases, the effect that drawing can be performed at high speed can be obtained.
[0383]
As in the first embodiment, a repetitive process can be performed as in the processes in FIGS. 19 and 20.
[0384]
In the first embodiment, the entire display contents are corrected as a single image. However, the correction contents are the same, but the processing amount is reduced by narrowing the pixels to be corrected to within the range of the display target element. Can also be reduced.
[0385]
Specifically, in Equations 7 and 8 in the first embodiment, the relational expression between the point Ppd (Xpd, Ypd) on the image before correction and the point Ppd ′ (Xpd ′, Ypd ′) on the image after correction. However, it is sufficient to check whether the point Ppd (Xpd, Ypd) is within the range of the display target element. If it is within the range, the point Ppd ′ (Xpd ′, Ypd ′) is obtained and corrected. If it is out of the range, no correction is performed, that is, the corresponding point Ppd ′ (Xpd ′, Ypd ′) remains in the background color.
[0386]
Actually, as described above, in many cases, the process of obtaining (referencing) the corresponding point Ppd (Xpd, Ypd) from the point Ppd '(Xpd', Ypd ') is performed. , Ypd ′), it is better to be able to determine whether or not it is within the range of the display target element. Therefore, the range of the circumscribed rectangular frame of the display target element on the image before correction may be calculated in advance on the image after correction, and the determination may be made based on whether the range is within the range.
[0387]
To explain a more specific processing example, the circumscribed rectangular frame only needs to calculate the points at the four corners, so that the calculation amount is small. Separately, a mask image is prepared, a circumscribed rectangular frame of the display target element after correction is drawn on the mask image, and the inside of the frame is filled with a predetermined pixel value (mask pixel value). The determination can be made based on whether or not the pixel value on the mask image at the position of the point Ppd ′ (Xpd ′, Ypd ′) is the mask pixel value.
[0388]
In the description of the first embodiment, the entire display content is corrected as a single image. However, the principle of the correction itself is the same as that described in the first embodiment. There is also a method of making it the target element. In other words, the corrected position, enlargement / reduction ratio, rotation amount, perspective transformation amount, and the like of the display target element are calculated, and each display target element is corrected to obtain corrected display contents. The user image itself of the corrected display contents seen by the user is almost the same whether it is performed in pixel units or display target element units, but the time and labor required for mounting correction processing vary.
[0389]
In particular, in the case of simply enlarging the image vertically or horizontally, for example, an OS (operating system) or the like may have an enlargement / reduction / rotation function as a drawing command for a character or the like. This makes it easy to implement the correction processing, and, as described above, because it is a dedicated processing, in many cases, there is an advantage that the processing can be performed at a higher speed than when it is performed in pixel units.
[0390]
[Embodiment 3]
In the first and second embodiments, the method of performing correction by detecting the direction of the user's line of sight has been described. Here, a method of performing correction without directly detecting the direction of the user's line of sight will be described.
[0391]
The configuration diagram of this embodiment is almost the same as that of FIG. 3 of the first embodiment, but does not use the existence detecting means 3. Also, the way of implementing the direction detecting means 4 changes. Hereinafter, the description will be focused on portions different from the description in FIG. An example of the configuration of a device that specifically realizes the units 1, 2, 4 to 6 in FIG. 3 is the same as that in FIG. 4 of the first embodiment.
[0392]
The CPU 70 as the direction detecting means 4 obtains information from the sensor 73 based on a program read from the main storage 74, the external storage 75, the communication device 77, and the like, and displays the display direction of the display means (the display surface with respect to the reference display direction). Angle). Next, the CPU 70 compares the predetermined reference display direction obtained through an external storage device, main storage, or an API (Application Programming Interface) with the detected display direction, estimates the user's line of sight, and corrects the correction direction. To send the user's gaze direction information.
[0393]
The sensor 73 detects the display direction of the display means, and includes, for example, an angle sensor such as a potentiometer for detecting a joint angle of a hinge, a turntable, an arm, or the like. The direction detecting means 4 may calculate the display direction using the angle information obtained from the sensor 73, for example.
[0394]
FIG. 27 illustrates an example of the appearance of the display correction device according to the present embodiment. A display unit 91 'is provided on the main body 90', and the corrected display contents are displayed on the display unit. The main body 90 ′ is fixed to another device 99 via a hinge 98, and the angle between the main body 90 ′ and the device 99 can be relatively changed by the hinge 98. Further, an angle sensor is embedded in the hinge portion 98, and detects a relative angle between the main body 90 'and the device 99.
[0395]
A flowchart showing a display method according to an embodiment of the present invention is the same as FIG. 1 in the first embodiment, but the processing in S3 is different.
[0396]
FIG. 28 is a flowchart for explaining one method of realizing the processing of S3 of FIG. 1 in the present invention.
[0397]
After P10, in S3C-1, the direction detecting means 4 acquires the display direction of the display means, and the process proceeds to S3C-2. Here, it is assumed that the display means is attached to another device, furniture, wall, or the like, and the direction of the display surface can be changed by a hinge, a turntable, an arm, or the like.
[0398]
For example, a notebook personal computer is closed with the liquid crystal display surface serving as display means and the keyboard surface aligned when stored, but when used, the liquid crystal display surface is raised. Although the liquid crystal display surface and the keyboard surface are connected by a hinge, the direction detection means 4 may acquire the opening angle of both surfaces. When a monitor such as a TV is mounted on a turntable that rotates in the horizontal direction, the direction detection unit 4 may obtain the rotation angle of the turntable.
[0399]
In S3C-2, the direction detecting means 4 obtains the reference display direction, and the process proceeds to S3C-3. It is assumed that the value of the reference display direction is determined in advance, and is recorded in an external storage unit or in a program. Therefore, the direction detecting means 4 can obtain the reference display direction by reading the recorded value.
[0400]
In determining the reference display direction, the state of the display means is arbitrary, and the display direction in a certain state may be determined as the reference display direction. Here, in a normal use state, the display direction when the display surface faces the user is set as the reference display direction.
[0401]
For example, in the case of a notebook computer equipped with a liquid crystal display, when the user uses the notebook computer on a desk while sitting on a chair, the average user's head position can be statistically obtained. The angle of the hinge portion when facing the liquid crystal display surface at the average position may be set as the reference display direction. If the reference display direction is finely adjusted by the user, the user may be instructed to directly face the liquid crystal display in the usage pattern of the user, and the angle of the hinge at that time may be used as the reference display direction.
[0402]
In S3C-3, the direction detecting means 4 compares the display direction obtained in S3C-1 with the reference display direction obtained in S3C-2, estimates and calculates the user's line of sight, and instructs the correcting means 5 to estimate. The processing passes to P20 by passing the user's line of sight direction. For example, if the reference display direction is the time when the user directly faces in S3C-2, if the difference between the current display direction and the reference display direction is estimated to be the user's gaze direction relatively viewed from the display surface. Good.
[0403]
A liquid crystal display or the like may have directionality with respect to luminance, and it may be easier to see when viewed a little obliquely than when directly facing the display surface. Also, since the display surface is dark and difficult to see, rotate the display surface a little so that the lighting hits it, or conversely other lighting is reflected on the display surface and it is difficult to see, so use it by turning the display surface a little Things are common. Or it might be that the display surface can only be seen at a certain angle due to some spatial arrangement.
[0404]
As described above, the user may be viewed from an oblique direction instead of the face-to-face state. Even in such a case, by obtaining the display direction of the display means, the user's gaze direction can be estimated and corrected. become.
[0405]
When placing a sensor on the outside or scanning the outside with a sensor, there is a problem of labor and cost of installation, and a problem of detection error (for example, detecting a non-human object) by using an external sensor. and so on. On the other hand, when the display direction is detected as in the present embodiment, for example, by incorporating an angle sensor in the hinge portion, the display direction can be detected in a reliable and inexpensive manner without being affected by the outside. Comes out.
[0406]
As in the first embodiment, a repetitive process can be performed as in the processes in FIGS. 19 and 20.
[0407]
An object of the present invention is to supply a storage medium storing a program code of software for realizing the functions of the above-described embodiments to a system or an apparatus, and to store the computer (or CPU or MPU) of the system or the apparatus in the storage medium. It goes without saying that this is also achieved by reading and executing the program code thus set.
[0408]
In this case, the program code itself read from the storage medium realizes the function of the above-described embodiment, and the storage medium storing the program code constitutes the present invention.
[0409]
As a storage medium for supplying the program code, for example, a floppy disk, a hard disk, an optical disk, a magneto-optical disk, a magnetic tape, a nonvolatile memory card, and the like can be used.
[0410]
The program code may be downloaded from another computer system to the main storage 74 or the external storage 75 of the apparatus via a transmission medium such as a communication network.
[0411]
When the computer executes the readout program code, not only the functions of the above-described embodiments are realized, but also an OS (Operating System) running on the computer based on the instruction of the program code. It goes without saying that a case where some or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
[0412]
Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function is executed based on the instruction of the program code. It goes without saying that the CPU included in the expansion board or the function expansion unit performs part or all of the actual processing, and the processing realizes the functions of the above-described embodiments.
[0413]
When the present invention is applied to the storage medium, the storage medium stores program codes corresponding to the flowcharts described above.
[0414]
The display correction device, the display correction method, and the display correction program according to the present invention described as the first, second, and third embodiments are not limited to the above-described embodiments. That is, various modifications are possible within the scope of the claims, and embodiments obtained by appropriately combining technical means disclosed in different embodiments are also included in the technical scope of the present invention.
[0415]
【The invention's effect】
As described above, the display correction device according to the present invention, as described above, a direction detection unit that obtains information on the viewing direction of the user with respect to the display surface of the display unit that displays information, and based on the case where the user faces the display surface, And correcting means for correcting display content by eliminating or reducing distortion when viewing the display surface from the direction of the line of sight obtained from the direction detecting means.
[0416]
As a result, when the display surface is viewed from a viewing direction other than the state in which the user is directly facing the user, the distortion appears to be eliminated or reduced. When the user is not directly facing the display means, the user does not perform any operation or operation such as rotating or moving the display means, or moving the user near the front of the display means, and changing the direction of the display means. There is no need for a holding operation for maintaining the information, and the effect of being able to see the display content in the face-to-face state or a state close thereto is obtained.
[0417]
As described above, the display correction device according to the present invention is characterized in that the correction means corrects the entire display content as a correction unit.
[0418]
As a result, the entire display content is corrected using the same correction formula or the same correction parameter, so that any data that can be displayed can be corrected regardless of the data structure of the display content. Come.
[0419]
As described above, the display correction device according to the present invention is characterized in that the displayed information includes one or more display target elements, and the correction unit corrects each display target element as a correction unit. .
[0420]
As a result, since the range to be corrected is reduced as compared with the case where the entire display content is corrected, the effect of reducing the processing amount is obtained.
[0421]
As described above, the display correction device according to the present invention is characterized in that the correction unit rearranges the position of the display target element in relation to the size of the display range of the display unit.
[0422]
Therefore, by rearranging the display target elements after correction in relation to the size of the display range, the display elements can be arranged so as to fit within the horizontal width or vertical width of the display means. That is, in the range displayed in the display means, the display can be performed so that the meaning is not interrupted, and an effect of making it easy to understand comes out. Also, when a scroll bar or the like is used, only one direction, vertical or horizontal, is required, so that an effect that operation becomes easier as compared with a state where scroll bars are provided in both the vertical and horizontal directions.
[0423]
Further, when laying out display target elements in the display range, the treatment does not change between the corrected display target element and the display target element before correction. That is, although the layout processing results are different, the processing procedure for layout is the same. Therefore, there is an effect that the same processing method can be used in the re-layout processing as when the layout processing is performed when the user faces the layout.
[0424]
Regarding the display, for example, when the display target element is a character, a horizontal enlargement ratio is designated rather than generating a horizontally enlarged image of the character and causing the OS (Operating System) to display the image. When the OS performs the display of characters, the effect that many OSs can execute the display at a high speed also appears.
[0425]
As described above, the display correction device according to the present invention is characterized in that the direction detection means obtains information on the user's line of sight regarding rotation of one or two of three axes in a three-dimensional space. .
[0426]
As a result, there is an effect that the cost for obtaining information on the user's gaze direction can be reduced.
[0427]
As described above, the display correction device according to the present invention is characterized in that the direction detection means obtains information on the distance between the display means and the user.
[0428]
This brings about an effect that the distortion can be completely removed or reduced more than in the case where the distortion is corrected using only the gaze direction information.
[0429]
As described above, the display correction device according to the present invention has presence detection means for obtaining information on whether or not a user is present in a predetermined position range, and in the direction detection means, the information from the presence detection means It is characterized in that the user's gaze direction is obtained based on this.
[0430]
As a result, there is an effect that the gaze direction of the user can be easily estimated with a certain degree of error from information on whether or not the user exists in a predetermined position range. Finding the exact gaze direction may require expensive equipment such as radar, but if there is a user in a given position range, it is realized by using inexpensive sensors etc. There is also an effect that can be.
[0431]
As described above, the display correction device according to the present invention is characterized in that the presence detecting means obtains information as to whether or not a user is present near the front of the display means.
[0432]
This brings about an effect that the user's gaze direction can be estimated very easily.
[0433]
In order to obtain information on whether or not a user is present in a predetermined position range, preparing a plurality of sensors and the like in various directions and places is costly, time-consuming, and processing. If only the presence or absence is obtained, it is only necessary to incorporate the presence detection means into the display means (device), so that the cost, labor and processing can be reduced.
[0434]
Note that, as a method of correction combined with the present configuration, a method of correcting distortion symmetrically (or vertically symmetrically) is preferable, but an effect can also be obtained by a method of correcting distortion asymmetrically such as reverse perspective transformation.
[0435]
As described above, the display correction device according to the present invention is characterized in that the correction means performs correction in real time, at predetermined time intervals, or when the line-of-sight direction obtained from the direction detection means changes.
[0436]
Thereby, even if the user moves relatively to the display means, the correction is performed in accordance with the movement, so that an effect of always obtaining a corrected display can be obtained.
[0437]
As described above, the display correction device according to the present invention is characterized in that the correction means corrects distortion caused by rotation of one or more of three axes in a three-dimensional space.
[0438]
As a result, it is possible to freely select a correction method from one axis to three axes. Therefore, an appropriate correction direction is selected in consideration of the cost required for the correction processing, the correction effect, the use pattern, the purpose, and the like. The effect that can correspond to a form comes out.
[0439]
As described above, the display correction device according to the present invention, in the correction unit, corrects the display content such that the display content is enlarged in the linear direction formed by the intersection of the display surface and the plane perpendicular to the rotation axis that causes distortion. It is characterized by.
[0440]
As a result, there is an effect that distortion that appears to be reduced can be covered by a simple correction method called enlargement without performing complicated correction processing such as reverse perspective transformation. Since the primary cause of invisibility is often the reduction effect, this method also has the effect that much of the invisibility can be resolved.
[0441]
Also, when a character or the like is viewed from an oblique or vertical diagonal direction, the aspect ratio is different from that when viewed directly, but by performing the correction according to the present invention, the aspect ratio is the same or almost the same as when viewed directly. The effect comes to be able to be seen as. This is particularly effective for contents such as figures and photographs that are difficult to understand when the aspect ratio changes.
[0442]
As described above, in the display correction device according to the present invention, the correction unit widens the display range of the display unit in the linear direction that is the intersection of the plane perpendicular to the rotation axis and the display surface that causes distortion. It is characterized by doing.
[0443]
As a result, there is an effect that the information amount close to or equal to that at the time of facing can be obtained from any direction. If the display range is not enlarged, operations such as scrolling are required. However, such operations can be reduced or eliminated.
[0444]
As described above, the display correction device according to the present invention is characterized in that the correction means corrects the display content so that the display content is reduced in the direction of the rotation axis which causes distortion.
[0445]
As a result, the area of the entire display content is reduced, so that the size (area) of the character or the like itself is reduced. However, the aspect ratio can be viewed as the same or almost the same as when viewed directly. Effect comes out. This is particularly effective for contents such as figures and photographs that are difficult to understand when the aspect ratio changes.
[0446]
As described above, the display correction device according to the present invention is characterized in that the correction means corrects display contents by reverse perspective transformation.
[0447]
Thus, by performing the correction by the inverse perspective transformation, the effect of the perspective transformation can be eliminated or reduced, as compared with the case of simply enlarging or reducing in one axis direction, and the effect of the most accurate correction can be obtained. .
[0448]
As described above, the display correction device according to the present invention is characterized in that the correction unit performs correction by reverse perspective transformation on one or more of three axes in a three-dimensional space.
[0449]
As a result, when the correction is performed on the three axes of the three-dimensional space by the inverse perspective transformation, the same display content as that obtained when the user faces directly (although affected by the resolution of the display) can be obtained.
[0450]
In addition, when the correction is performed by the reverse perspective transformation of only one axis or two axes, the processing amount can be reduced as compared with the case where the correction is performed by the reverse perspective transformation with respect to three axes. Compared with the correction for enlarging or reducing in the direction, the effect of the inverse perspective transformation as described above appears.
[0451]
In order to solve the above-described problems, a display correction device according to the present invention includes a direction detection unit that obtains information on a display direction of a display unit that can change a display direction of a display surface, and a predetermined display direction of the display unit. The user sets the reference direction directly facing the display means, and in the display direction obtained from the direction detection means, from the position of the user facing the reference direction, eliminates or reduces distortion when viewing the display means. And a correcting means for correcting the display content.
[0452]
As a result, it is possible to correct the display content only by obtaining the display direction of the display means, and it is possible to perform the correction reliably and easily. When placing a sensor on the outside or scanning the outside with a sensor in order to obtain the direction between the display surface and the user, problems such as installation and labor, costs, and detection errors due to using an external sensor (for example, However, when the display direction is obtained by using the angle of the display means with respect to the reference direction, for example, by incorporating an angle sensor in the hinge part, external influences can be reduced. The display direction can be obtained by reliably detecting the angle without receiving.
[0453]
Other effects are as described above as effects of the display correction device.
[0454]
As described above, the display correction method according to the present invention includes, as described above, a direction detecting step of obtaining information on a user's line of sight with respect to a display surface displaying information, and the direction detection based on a case where the user faces the display surface. A correction step of correcting display content by eliminating or reducing distortion when viewing the display surface from the direction obtained from the step.
[0455]
The operation and various effects of the above configuration are as described above as the operation and effect of the display correction device corresponding to the configuration of the display correction method.
[0456]
As described above, a display correction program according to the present invention causes a computer to execute each unit included in the display correction device.
[0457]
As described above, a display correction program according to the present invention causes a computer to execute each step of the display correction method.
[0458]
A recording medium according to the present invention is characterized by recording the display correction program as described above.
[0459]
Thereby, by installing the display correction program in a general computer via the recording medium or the network, the display correction method is realized using the computer, in other words, the computer is connected to the display correction device. Can function as
[Brief description of the drawings]
FIG. 1 is a flowchart illustrating a procedure of a display correction process performed by a display correction device of the present invention.
FIG. 2 is an explanatory diagram illustrating roll, pitch, and yaw as rotations about three orthogonal axes with reference to a display surface.
FIG. 3 is a block diagram illustrating a functional configuration of a display correction device according to the present invention.
FIG. 4 is a block diagram illustrating a configuration example of a display correction device according to an embodiment of the present invention.
FIG. 5 is a schematic perspective view showing an example of the appearance of the display correction device of the present invention.
FIG. 6 is a flowchart illustrating a procedure of a user's line-of-sight direction acquisition process in FIG. 1;
FIG. 7 is a flowchart showing another procedure of the processing of acquiring the user's line of sight direction in FIG. 1;
FIG. 8 is a flowchart showing a procedure of a display content correcting process of FIG. 1;
FIGS. 9A and 9B are explanatory diagrams for explaining a line-of-sight direction when a user looks at a display means obliquely, a spatial arrangement such as a user image plane on a retina, and an appearance.
FIGS. 10 (a) and (b) are explanatory diagrams for explaining a line-of-sight direction when a user faces the display means facing the user, a spatial arrangement of a user image plane and the like on the retina, and an appearance.
FIG. 11 is an explanatory diagram illustrating a user image seen when the user faces the display means.
FIG. 12 is an explanatory diagram illustrating a user image seen when a user views an original display content that has not been corrected from an oblique direction.
FIG. 13 is an explanatory diagram showing corrected display contents obtained by enlarging the original display contents in one axis direction and correcting without expanding the display range.
FIG. 14 is an explanatory diagram showing a user image seen when the user views the corrected display contents of FIG. 13 from an oblique direction.
FIG. 15 is an explanatory diagram showing a user image that can be seen when a user views the corrected display content obtained by reducing the original display content in one axis direction without enlarging the display range and obliquely viewing the content.
FIG. 16 is an explanatory view showing corrected display contents obtained by enlarging the original display contents in the one-axis direction and expanding and correcting the display range.
FIG. 17 is an explanatory diagram illustrating a user image seen when the user views the corrected display contents of FIG. 16 from an oblique direction.
FIG. 18 is an explanatory diagram showing corrected display contents obtained by correcting original display contents by reverse perspective transformation, and expanding and correcting a display range.
FIG. 19 is a flowchart showing another procedure of the display correction process by the display correction device of the present invention.
FIG. 20 is a flowchart showing yet another procedure of the display correction process by the display correction device of the present invention.
FIG. 21 is a flowchart showing yet another procedure of the display correction process by the display correction device of the present invention.
FIG. 22 is an explanatory diagram illustrating a layout of display target elements of original display content.
FIG. 23 is an explanatory diagram illustrating an example of a data structure of each display target element.
FIG. 24 is a flowchart showing a procedure of acquisition and correction processing of display contents of FIG. 21;
FIG. 25 is a diagram illustrating a layout result when the individual display target elements laid out as shown in FIG. 22 are horizontally enlarged and laid out again.
26 is an explanatory diagram showing a user image that can be seen when the user views the corrected display contents of FIG. 25 from an oblique direction.
FIG. 27 is a schematic perspective view illustrating an appearance example of a display correction device of the present invention.
FIG. 28 is a flowchart illustrating another procedure of the user direction acquisition process of FIG. 1;
FIG. 29 is an explanatory diagram for explaining a line of sight direction and a way of seeing when the user looks at the display means obliquely when the viewpoint is rotated on the Xd axis and the Yd axis.
[Explanation of symbols]
3 Presence detection means
4 direction detection means
5 Correction means
6 Display means
22 Facing display range (display range)
41, 42, 43 Display target element
44 Display range
74 Main memory (recording medium)
75 External storage (recording medium)
91 Display unit (display means, display surface)
92, 93, 94 sensors
95, 96, 97 pressure sensor
Ld distance
Od display means coordinate system origin
Oe User image coordinate system origin
Pu perspective
Xd, Yd, Zd axis (rotary axis)

Claims (20)

情報を表示する表示手段の表示面に対するユーザーの視線方向の情報を得る方向検出手段と、
表示面にユーザーが正対した場合を基準として、前記方向検出手段から得た視線方向から表示面を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正手段と、
を有することを特徴とする表示補正装置。
Direction detection means for obtaining information of the user's line of sight to the display surface of the display means for displaying information,
Correction means for correcting the display content by eliminating or reducing distortion when viewing the display surface from the line of sight direction obtained from the direction detection means, based on the case where the user directly faces the display surface,
A display correction device comprising:
前記補正手段において、表示内容全体を補正単位として補正することを特徴とする請求項1に記載の表示補正装置。2. The display correction apparatus according to claim 1, wherein the correction unit corrects the entire display content as a correction unit. 表示される情報が一つ以上の表示対象要素からなり、前記補正手段において、個々の表示対象要素を補正単位として補正することを特徴とする請求項1に記載の表示補正装置。The display correction apparatus according to claim 1, wherein the displayed information includes one or more display target elements, and the correction unit corrects each display target element as a correction unit. 前記補正手段において、表示手段の表示範囲の大きさとの関係で、表示対象要素の位置を配置し直すことを特徴とする請求項3に記載の表示補正装置。The display correction device according to claim 3, wherein the correction unit rearranges the position of the display target element in relation to the size of the display range of the display unit. 前記方向検出手段において、ユーザーの視線方向の情報を、3次元空間の3軸のうち1軸または2軸の回転に関して得ることを特徴とする請求項1に記載の表示補正装置。2. The display correction device according to claim 1, wherein the direction detection unit obtains information on a user's gaze direction with respect to rotation of one or two of three axes in a three-dimensional space. 3. 前記方向検出手段において、表示手段とユーザーの間の距離の情報を得ることを特徴とする請求項1に記載の表示補正装置。2. The display correction device according to claim 1, wherein the direction detection unit obtains information on a distance between a display unit and a user. 所定の位置範囲にユーザーが存在するかどうかの情報を得る存在検出手段を有し、前記方向検出手段において、前記存在検出手段からの情報に基づきユーザーの視線方向を得ることを特徴とする請求項1に記載の表示補正装置。The apparatus according to claim 1, further comprising: presence detection means for obtaining information as to whether or not the user is present in a predetermined position range, wherein the direction detection means obtains a user's line-of-sight direction based on information from the presence detection means. 2. The display correction device according to 1. 前記存在検出手段において、表示手段の正面方向付近にユーザーが存在するかどうかの情報を得ることを特徴とする請求項7に記載の表示補正装置。8. The display correction device according to claim 7, wherein the presence detection unit obtains information on whether or not a user is present in the vicinity of the display unit in the front direction. 前記補正手段において、リアルタイム、あるいは所定時間間隔毎、あるいは方向検出手段から得られる視線方向が変わった時に補正を行うことを特徴とする請求項1に記載の表示補正装置。2. The display correction apparatus according to claim 1, wherein the correction unit performs the correction in real time, at predetermined time intervals, or when the direction of the line of sight obtained from the direction detection unit changes. 前記補正手段において、3次元空間の3軸のうち1軸以上の回転による歪を補正することを特徴とする請求項1に記載の表示補正装置。2. The display correction device according to claim 1, wherein the correction unit corrects a distortion due to rotation of one or more of three axes in a three-dimensional space. 前記補正手段において、歪の原因となる回転軸に垂直な面と表示面との交わりからなる直線方向に拡大するように表示内容を補正することを特徴とする請求項1に記載の表示補正装置。2. The display correction apparatus according to claim 1, wherein the correction unit corrects the display content so that the display content is enlarged in a linear direction formed by an intersection of a plane perpendicular to a rotation axis and a display surface that causes distortion. . 前記補正手段において、歪の原因となる回転軸に垂直な面と表示面との交わりからなる直線方向に、表示手段の表示範囲を広げて補正することを特徴とする請求項1に記載の表示補正装置。2. The display according to claim 1, wherein the correction unit widens a display range of the display unit in a linear direction formed by an intersection of a plane perpendicular to a rotation axis and a display surface, which causes distortion, and performs the correction. 3. Correction device. 前記補正手段において、歪の原因となる回転軸方向に縮小するように表示内容を補正することを特徴とする請求項1に記載の表示補正装置。2. The display correction device according to claim 1, wherein the correction unit corrects the display content so that the display content is reduced in a rotation axis direction which causes distortion. 前記補正手段において、逆透視変換によって表示内容を補正することを特徴とする請求項1に記載の表示補正装置。2. The display correction apparatus according to claim 1, wherein the correction unit corrects display contents by a reverse perspective transformation. 前記補正手段において、逆透視変換による補正を、3次元空間の3軸のうち1軸以上に関して行うことを特徴とする請求項14に記載の表示補正装置。15. The display correction device according to claim 14, wherein the correction unit performs the correction by the inverse perspective transformation on at least one of three axes in a three-dimensional space. 表示面の表示方向が変更可能な表示手段の表示方向の情報を得る方向検出手段と、
前記表示手段の所定の表示方向をユーザーが表示手段に正対している基準方向とし、前記方向検出手段から得られる表示方向の時に、基準方向時に正対しているユーザーの位置から、表示手段を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正手段と、
を有することを特徴とする表示補正装置。
Direction detection means for obtaining information on the display direction of the display means capable of changing the display direction of the display surface,
The predetermined display direction of the display means is set as a reference direction in which the user faces the display means, and when the display direction is obtained from the direction detection means, the display means is viewed from the position of the user directly facing in the reference direction. Correction means for correcting display content by eliminating or reducing distortion at the time;
A display correction device comprising:
情報を表示する表示手段の表示面に対するユーザーの視線方向の情報を得る方向検出ステップと、
表示面にユーザーが正対した場合を基準として、前記方向検出ステップから得た方向から表示面を見る時の歪を無くして、あるいは軽減して表示内容を補正する補正ステップと、
を有することを特徴とする表示補正方法。
A direction detecting step of obtaining information on the user's line of sight direction with respect to the display surface of the display means for displaying information;
A correction step of correcting display content by eliminating or reducing distortion when viewing the display surface from the direction obtained from the direction detection step, based on the case where the user directly faces the display surface,
A display correction method comprising:
請求項1ないし16のいずれか一項に記載の表示補正装置が備える各手段として、コンピュータを機能させるための表示補正プログラム。A display correction program for causing a computer to function as each unit included in the display correction device according to any one of claims 1 to 16. 請求項17に記載の表示補正方法が備える各ステップを、コンピュータに実行させるための表示補正プログラム。A display correction program for causing a computer to execute each step of the display correction method according to claim 17. 請求項18または19に記載の表示補正プログラムを記録した記録媒体。A recording medium on which the display correction program according to claim 18 or 19 is recorded.
JP2002242089A 2002-08-22 2002-08-22 Device, method, and program for display correction and recording medium with recorded display correcting program Withdrawn JP2004078121A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002242089A JP2004078121A (en) 2002-08-22 2002-08-22 Device, method, and program for display correction and recording medium with recorded display correcting program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002242089A JP2004078121A (en) 2002-08-22 2002-08-22 Device, method, and program for display correction and recording medium with recorded display correcting program

Publications (1)

Publication Number Publication Date
JP2004078121A true JP2004078121A (en) 2004-03-11

Family

ID=32024378

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002242089A Withdrawn JP2004078121A (en) 2002-08-22 2002-08-22 Device, method, and program for display correction and recording medium with recorded display correcting program

Country Status (1)

Country Link
JP (1) JP2004078121A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005293197A (en) * 2004-03-31 2005-10-20 Sony Corp Image processing device and method, and image display system
WO2006006641A1 (en) * 2004-07-12 2006-01-19 Sharp Kabushiki Kaisha Display device, vehicle, display method, display program, and display program storage medium
JP2007041990A (en) * 2005-08-05 2007-02-15 Daiwa Can Co Ltd Forming method of print image to be attached to shoulder of can body
JP2009075842A (en) * 2007-09-20 2009-04-09 Denso Corp On-vehicle display device
WO2017043145A1 (en) * 2015-09-07 2017-03-16 ソニー株式会社 Information processing device, information processing method, and program
WO2017090318A1 (en) * 2015-11-27 2017-06-01 株式会社デンソー Display correction device
JP2018005760A (en) * 2016-07-07 2018-01-11 株式会社リコー Display device, display method, and program
CN110546681A (en) * 2017-04-26 2019-12-06 D睿科逊公司 Far-near method corresponding image correction method and device

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005293197A (en) * 2004-03-31 2005-10-20 Sony Corp Image processing device and method, and image display system
JP4496823B2 (en) * 2004-03-31 2010-07-07 ソニー株式会社 Image processing apparatus and method, and image display system
WO2006006641A1 (en) * 2004-07-12 2006-01-19 Sharp Kabushiki Kaisha Display device, vehicle, display method, display program, and display program storage medium
JP2007041990A (en) * 2005-08-05 2007-02-15 Daiwa Can Co Ltd Forming method of print image to be attached to shoulder of can body
JP2009075842A (en) * 2007-09-20 2009-04-09 Denso Corp On-vehicle display device
US10976812B2 (en) 2015-09-07 2021-04-13 Sony Corporation Information processing device and information processing method
CN107950019A (en) * 2015-09-07 2018-04-20 索尼公司 Information processor, information processing method and program
WO2017043145A1 (en) * 2015-09-07 2017-03-16 ソニー株式会社 Information processing device, information processing method, and program
CN107950019B (en) * 2015-09-07 2021-05-28 索尼公司 Information processing apparatus, information processing method, and computer-readable storage medium
WO2017090318A1 (en) * 2015-11-27 2017-06-01 株式会社デンソー Display correction device
JP2017097274A (en) * 2015-11-27 2017-06-01 株式会社デンソー Display correction device
JP2018005760A (en) * 2016-07-07 2018-01-11 株式会社リコー Display device, display method, and program
CN110546681A (en) * 2017-04-26 2019-12-06 D睿科逊公司 Far-near method corresponding image correction method and device
JP2020518931A (en) * 2017-04-26 2020-06-25 ディー レクション インク Image correction method and apparatus compatible with perspective
JP7360379B2 (en) 2017-04-26 2023-10-12 ディー レクション インク Image correction method and device compatible with perspective
CN110546681B (en) * 2017-04-26 2023-10-20 D睿科逊公司 Image correction method and device corresponding to far-near method

Similar Documents

Publication Publication Date Title
KR101649098B1 (en) Apparatus and method for rendering using sensor in portable terminal
JP4975673B2 (en) Camera installation simulator program
JP4916145B2 (en) Information processing apparatus, information processing method, and program
US20100100853A1 (en) Motion controlled user interface
US20070008344A1 (en) Manipulation of Projected Images
US20150370322A1 (en) Method and apparatus for bezel mitigation with head tracking
KR20110102365A (en) Immersive display system for interacting with three-dimensional content
US20110216288A1 (en) Real-Time Projection Management
US20160334884A1 (en) Remote Sensitivity Adjustment in an Interactive Display System
JP2008084287A (en) Information processor, imaging apparatus, information processing system, device control method and program
JP2014071496A (en) Panoramic image creation device and program
JP2006503365A (en) Method and system for generating a pseudo 3D display using a 2D display device
US7369142B2 (en) Image-displaying apparatus and method for obtaining pixel data therefor
JP2004320661A (en) Method for correcting area outside screen in geometrical correction interface using auxiliary line
JP2004078121A (en) Device, method, and program for display correction and recording medium with recorded display correcting program
JP5461782B2 (en) Camera image simulator program
JP3958150B2 (en) Display correction apparatus, display correction method, display correction program, and recording medium on which display correction program is recorded
CN115623184A (en) Virtual reality simulator and computer-readable recording medium
JP2008180797A (en) Image display device, method for controlling same, and computer program
JP2003209769A (en) Image generating apparatus and method
CN115623185A (en) Virtual reality simulator and computer-readable recording medium
JP5966624B2 (en) Information processing apparatus and information display system
US9805499B2 (en) 3D-consistent 2D manipulation of images
JP5880024B2 (en) Information processing apparatus and program
JP5319867B2 (en) Information terminal equipment

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051101