以下、本開示の好適な実施形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された内容を不当に限定するものではなく、本実施形態で説明される構成の全てが必須構成要件であるとは限らない。
1.第1構成例
図1は、HUDによるAR表示の例である。HUDはヘッドアップディスプレイの略語であり、ARは拡張現実の略語である。以下では、自動車30にHUDを搭載した例を主に説明するが、本実施形態のHUDは、飛行機、船舶又は二輪車等の様々な移動体に搭載されてもよい。
図1には、ドライバーがHUDを介して見るAR表示を示している。ドライバーは、フロントガラスを通して、前走車10、前走車10が走る道路、及びそれらの周囲の風景を見ている。またドライバーは、HUDがフロントガラスの表示領域40内に投影した虚像を見ており、その虚像は、ドライバーからは、実空間に重なる仮想オブジェクト20として見える。表示領域40は、HUDが虚像を投影可能な範囲を示しており、この表示領域40内において仮想オブジェクト20が表示される。図1における仮想オブジェクト20は、ARの表示オブジェクトであり、前走車10又は道路に対して表示位置が追従するように表示される。即ち、HUDは、ドライバーから見た前走車10又は道路と仮想オブジェクト20との相対的な位置関係が変わらないように、仮想オブジェクト20を表示しようとする。
HUDの表示システムは、Lidar等のセンサーを用いて前走車10等をトラッキングし、そのトラッキング結果に基づいて仮想オブジェクト20をレンダリングし、そのレンダリング画像をワープ処理してHUDに表示させる。このとき、センサーがサンプリングしたタイミングから、仮想オブジェクト20をHUDに表示するタイミングまでの間に、トラッキング処理、レンダリング処理、ワープ処理、又はデータ通信等による遅延がある。このような処理又は通信等によって発生する遅延を、レイテンシーと呼ぶ。
レイテンシーは、仮想オブジェクト20と前走車10等との位置ずれの原因となる。即ち、表示システムが仮想オブジェクト20をレンダリングしたときの前走車10等の位置と、実際に仮想オブジェクト20がHUDに表示されるときの前走車10等の位置とがずれていることによって、仮想オブジェクト20と前走車10等とがずれて表示されてしまう。例えば、レンダリング処理において、未来の表示タイミングにおける前走車10等の位置を予測したとしても、その予測時点から表示までに時間があるため、予測した前走車10等の位置と、実際に仮想オブジェクト20がHUDに表示されるときの前走車10等の位置とがずれる可能性がある。
図2に、一例として、ピッチ変位又は垂直変位による表示位置ずれの説明図を示す。xyzは自動車30に固定された座標系である。z方向は自動車の進行方向であり、x方向とy方向はz方向に直交し且つ互いに直交する。y方向が鉛直方向に一致したとき、x方向は水平方向であり、y方向は垂直方向又は上下方向である。y方向が鉛直方向に一致しないような自動車の姿勢となっているとき、x方向とy方向は水平垂直に一致しないが、以下では便宜的にx方向を水平方向とも呼び、y方向を垂直方向又は上下方向とも呼ぶこととする。図に示す矢印方向を正方向とし、方向の正負を明示したい場合には+x方向、−x方向等と記載する。
図2の1段目図は、仮想オブジェクト21と実オブジェクト11との位置ずれがない状態を示している。実オブジェクト11は、実空間に存在するオブジェクトであって、且つAR表示のトラッキング対象となっているオブジェクトのことである。例えば図1の前走車10等が実オブジェクトである。HUDの投影ユニット36がフロントガラス35に虚像を投影し、その虚像が仮想オブジェクト21としてドライバーの目50に見える。
図2の2段目図は、フロントガラス35及び投影ユニット36が+y方向にWSMだけシフトしたときの、仮想オブジェクト21と実オブジェクト11との位置ずれを示している。垂直シフトWSMは、自動車30のピッチ回転又は垂直シフトによって生じる。ピッチ回転はx方向に平行な軸を中心とする回転であり、垂直シフトは、y方向における平行移動である。HUDの表示システムが仮想オブジェクト21をレンダリングしたときには1段目図の状態が想定されているが、HUDに表示されるまでの間に時間があるため、その時間内に垂直シフトWSMが生じると、その垂直シフトWSMはレンダリング画像に反映されていないことになる。このため、フロントガラス35等の垂直シフトWSMによって仮想オブジェクト21の表示位置が+y方向にシフトし、実オブジェクト11に対して仮想オブジェクト21が+y方向にずれて見える。例えば、自動車30が道路の凹凸によってピッチ運動を繰り返した場合には、実オブジェクト11に対して仮想オブジェクト21が上下に揺れるように、ずれて見えることになる。
図2の3段目図は、ドライバーの目50が+y方向にDEMだけシフトしたときの、仮想オブジェクト21と実オブジェクト11との位置ずれを示している。フロントガラス35は移動しないが、フロントガラス35に対して目50が+y方向にシフトするため、仮想オブジェクト21の表示位置が−y方向にシフトする。このため、実オブジェクト11に対して仮想オブジェクト21が−y方向にずれて見える。
図2の4段目図は、実オブジェクト11が−y方向にRJMだけシフトしたときの、仮想オブジェクト21と実オブジェクト11との位置ずれを示している。フロントガラス35及び目50は移動しないため仮想オブジェクト21の表示位置はシフトしないが、実オブジェクト11が−y方向にシフトするため、実オブジェクト11に対して仮想オブジェクト21が+y方向にずれて見える。
図3は、本実施形態のレイテンシー補償を説明する図である。図3には、ドライバーから見た仮想オブジェクト21、実オブジェクト11及び仮想オブジェクト21を示している。図3の左図は、ドライバーから見て実オブジェクト11と仮想オブジェクト21の表示位置が一致している状態である。図3の中図に示すように、ドライバーが頭を左上に動かした場合、実オブジェクト11が左上にMVだけシフトする。仮想オブジェクト21の表示位置は変わらないので、実オブジェクト11と仮想オブジェクト21がMVだけずれる。図3の右図に示すように、本実施形態では、レイテンシーによるシフト量MVを補償することで、実オブジェクト11と仮想オブジェクト21の表示位置を一致させる。このようなレイテンシー補償を行うことで、ドライバーが頭を左上に動かしたときに左図から右図の状態に移行し、中図のような位置ずれ状態を避けることができる。詳細については後述するが、本実施形態では表示タイミングにできるだけ近いワープ処理においてレイテンシー補償を行うことで、出来るだけレイテンシーによる位置ずれを小さくする。
HUDの表示システムにおいて、どのようなレイテンシーが存在するかを考えるために、従来技術における典型的な表示システムと、その表示システムにおいて発生するレイテンシーと、を説明する。
図4は、従来技術における表示システム90の構成例である。表示システム90はセンサー65と処理装置60とHUDコントローラー70とHUD80とを含む。
センサー65は、自動車、ドライバー又は実オブジェクトの位置、姿勢又はモーションを検出するセンサーである。
処理装置270は、センサーインターフェース61とトラッキング処理部62とレンダリング画像生成部63とを含む。センサーインターフェース61は、センサー65の出力信号を受信するインターフェース回路である。トラッキング処理部62は、CPUにより構成され、センサー65の出力信号に基づいて、自動車、ドライバー又は実オブジェクトの位置、姿勢又はモーションをトラッキングする。レンダリング画像生成部63は、GPUにより構成され、自動車、ドライバー又は実オブジェクトのトラッキング情報に基づいて、実オブジェクトに追従して表示されるように仮想オブジェクトをレンダリングする。
HUDコントローラー70は、レンダリング画像をワープ処理するワープ処理部71を含む。HUD80は、ワープ処理後の画像を表示するディスプレイ81を含む。ディスプレイ81は、液晶表示装置等の表示装置である。ディスプレイ81に表示された画像が光学系によってフロントガラスに投影されることで、レンダリング画像の仮想オブジェクトが表示される。
図5に、表示システム90の処理フローを示す。ここではセンサー65としてIMUとカメラを用いる例を示す。IMUは、カメラのフレームレートに比べて十分速いサンプリングレートでセンシングを行っている。Tck、Tck+1、Tck+2は、カメラの露出タイミングを示している。即ち、カメラによって得られる画像は、タイミングTck等における実オブジェクトの位置を示す。画像信号処理は、カメラの露出終了後に行われる処理であり、イメージセンサーからの信号読み出し、及び現像処理等を含む。
トラッキング処理部62は、ビジュアル慣性オドメトリにより、画像信号処理後の画像から実オブジェクトの位置をトラッキングする。この段階では、カメラの露出タイミングtckにおける実オブジェクトの位置が検出される。トラッキング処理部62は、ビジュアル慣性オドメトリが終了した後のタイミングtodにおけるIMUの出力信号と、ビジュアル慣性オドメトリの結果とに基づいて、慣性オドメトリにより実オブジェクトの位置をトラッキングする。この処理によって、カメラの露出タイミングtckから慣性オドメトリのタイミングtodまでのレイテンシーが補償され、タイミングtodにおける実オブジェクトの位置が検出されることになる。
レンダリング画像生成部63は、慣性オドメトリにより検出された実オブジェクトに対応させた位置に、仮想オブジェクトをレンダリングし、そのレンダリング画像をワープ処理部71に出力する。このとき、レンダリング画像生成部63を構成するGPUからHUDコントローラー70へのデータ通信時間が発生する。ワープ処理部71は、レンダリング画像に対するワープ処理を行い、ワープ処理後の画像がHUD80に表示される。第1ライン〜最終ラインはディスプレイ81の水平走査ラインであり、1ラインずつ走査される。このため1フレームの画像表示には、第1ライン〜最終ラインを走査する時間が必要であるが、ここでは第1ラインの表示を行うタイミングを代表として表示タイミングtdpとする。
HUD80に表示される仮想オブジェクトは、タイミングtodにおける実オブジェクトの位置に対応している。このため、タイミングtodから表示タイミングtdpまでのレイテンシーが存在しており、この期間における自動車、ドライバー又は実オブジェクトのモーションによって実オブジェクトと仮想オブジェクトにずれが発生する可能性がある。
以上のように、表示タイミングtdpより前に検出されたトラッキング情報を用いてレンダリングされた仮想オブジェクトを表示することで、トラッキング情報を検出したタイミングから表示タイミングtdpまでのレイテンシーによって表示位置ずれが生じるという課題がある。
上記特許文献1では、画像データ等の通信時間よりも姿勢データの計測時間を短くし、その姿勢データを用いて投影光学ユニットが高周波領域での補正を行うことで、通信時間による実像と投影画像との位置ずれを抑制する。しかし、投影光学ユニットを制御するためのデータ処理時間、及び構成部材の作動時間が必要であることから、その時間によって生じる位置ずれは依然として残る。
図6は、本実施形態における回路装置160、及び回路装置160を含む表示システムの第1構成例を示す。図6に示す表示システムは、センサー500と処理装置150と回路装置160とHUD400とを含み、センサー500の出力信号に基づいて、実オブジェクトに対応した仮想オブジェクトをHUD400に表示させる。
センサー500は、移動体、観者又は実オブジェクトの位置、姿勢又はモーションを検出するセンサーである。具体的には、センサー500は、実オブジェクトの2次元情報又は3次元情報を取得する第1センサー、移動体のモーションを検出する第2センサー、及び観者の視点又は視線方向を検出する第3センサーの少なくとも1つを含む。センサー500は移動体に設けられており、例えばLidar、IMU、カメラ、アイトラキングセンサー又はヘッドトラッキングセンサー等を含む。この例では、Lidar又はカメラが第1センサーに対応し、IMUが第2センサーに対応し、アイトラキングセンサー又はヘッドトラッキングセンサーが第3センサーに対応する。Lidarは、Light Detection and Rangingの略であり、zマップのような3次元情報を取得するセンサーである。IMUは、Inertial Measurement Unitの略であり、一軸又は複数軸のモーションを検出するセンサーである。IMUは、例えば加速度センサー、ジャイロセンサー、又はそれらの組み合わせによって構成される。カメラは、2次元情報である画像を撮像するセンサーである。アイトラキングセンサーは、観者の目の位置、視線方向又はそれら両方を検出するセンサーである。ヘッドトラッキングセンサーは、観者の頭部の位置、姿勢又はそれら両方を検出するセンサーである。
移動体は、HUD400、観者及びセンサー500を載せて実空間内を移動する物体であり、例えば自動車、二輪車、飛行機又は船舶等である。観者は、HUD400に投影される虚像を見るユーザーであり、移動体の操縦者又は搭乗者である。実オブジェクトは、実空間内に存在する物体である。実オブジェクトは、移動体、観者又は実オブジェクトの位置又は姿勢が変動したときに、観者から見たHUD表示領域内における実オブジェクトの位置又は姿勢が変動するような物体であればよい。
センサー500は、レンダリング用のトラッキング情報を求めるためのレンダリング用センサー510と、レイテンシー補償パラメーターを求めるためのレイテンシー補償用センサー520と、を含む。レンダリング用センサー510は、例えばLidar、IMU、及びカメラを含む。レイテンシー補償用センサー520は、例えばIMU及びヘッドトラッキングセンサーを含む。なお、レンダリング用センサー510とレイテンシー補償用センサー520が含むセンサーの種類は、上記に限定されず、移動体、観者又は実オブジェクトの位置、姿勢又はモーションを検出するセンサーであればよい。レイテンシー補償用センサー520とレンダリング用センサー510は別のセンサーであって、同種のセンサーを含む場合であっても、その同種のセンサーがレイテンシー補償用センサー520とレンダリング用センサー510に個別に設けられる。
処理装置150は、例えばSoCにより構成され、インターフェース151とトラッキング処理部110とレンダリング画像生成部120とを含む。SoCはSystem on Chipの略である。
インターフェース151は、レンダリング用センサー510の出力信号を処理装置150に入力するためのインターフェースである。インターフェース151は、例えばレンダリング用センサー510の出力信号を受信する受信回路である。或いは、インターフェース151は、レンダリング用センサー510の出力信号が入力される端子であってもよい。その場合、端子に入力されたレンダリング用センサー510の出力信号が、トラッキング処理部110を構成するプロセッサーに入力され、そのプロセッサーがレンダリング用センサー510の出力信号を受信処理する。
トラッキング処理部110は、センサー500の出力信号に基づいて、移動体、観者又は実オブジェクトの位置、姿勢又はモーションをトラッキングし、その結果をトラッキング情報として出力する。例えば、トラッキング処理部110は、Lidarからの2次元測距情報又はカメラからの2次元画像に基づいて、実オブジェクトをトラッキングする。またトラッキング処理部110は、IMUからの加速度又は角速度の情報に基づいて、自動車をトラッキングする。またトラッキング処理部110は、アイトラキングセンサーからの目の位置又は視線方向の情報に基づいて、ドライバーの目をトラッキングする。
トラッキング情報は、移動体、観者又は実オブジェクトの位置、姿勢又はモーションを示す情報であれば、どのような形態の情報であってもよい。例えば、トラッキング情報は、実空間における位置を示す座標、姿勢を示す角度、平行移動を示すベクトル、又は回転を示す角速度等である。或いは、トラッキング情報は、上記実空間における座標等を画像上における座標、角度、ベクトル又は角速度等に換算した情報であってもよい。トラッキング情報は、移動体の第1トラッキング情報、観者の第2トラッキング情報、及び実オブジェクトの第3トラッキング情報を含む。但し、トラッキング情報は、第1〜第3トラッキング情報のうち少なくとも1つを含んでいればよく、例えば観者の第2トラッキング情報が省略されてもよい。
レンダリング画像生成部120は、移動体、観者又は実オブジェクトのトラッキング情報に基づいて仮想オブジェクトをレンダリングし、仮想オブジェクトを含むレンダリング画像を出力する。具体的には、レンダリング画像生成部120は、HUD400の表示領域において実オブジェクトの見える位置を求め、その実オブジェクトの位置に対応した位置に仮想オブジェクトをレンダリングする。レンダリング画像生成部120は、レンダリング画像と共に、トラッキング処理部110が取得したトラッキング情報を、回路装置160に出力する。
トラッキング処理部110及びレンダリング画像生成部120は、CPU又はGPU等のプロセッサーにより構成される。CPUはCentral Processing Unitの略である。GPUはGraphical Processing Unitの略である。トラッキング処理部110及びレンダリング画像生成部120は、1つのプロセッサーで実現されてもよいし、それぞれ個別のプロセッサーで実現されてもよい。
回路装置160は、いわゆるHUDコントローラーであり、HUD400に表示させる画像の歪み補正、及び表示タイミング制御等を行う。回路装置160は、例えば集積回路装置により構成され、インターフェース161とワープ処理部130とパラメーター演算部140と記憶部145とを含む。
インターフェース161は、レンダリング画像とトラッキング情報とを回路装置160に入力するためのインターフェースである。具体的には、処理装置150から送信されるレンダリング画像及びトラッキング情報がインターフェース161に入力される。また、レイテンシー補償用センサー520の出力信号がトラッキング情報としてインターフェース161に入力される。インターフェース161は、例えばレンダリング画像、トラッキング情報及びレイテンシー補償用センサー520の出力信号を受信する受信回路である。或いは、インターフェース161は、レンダリング画像及びトラッキング情報を受信する受信回路と、レイテンシー補償用センサー520の出力信号が入力される端子と、であってもよい。その場合、端子に入力されたレイテンシー補償用センサー520の出力信号が、パラメーター演算部140に入力され、パラメーター演算部140がレイテンシー補償用センサー520の出力信号を受信処理する。
記憶部145は、RAM又は不揮発性メモリー等の半導体メモリーであり、レンダリング補償前のワープパラメーターを記憶する。RAMはRandom Access Memoryの略である。上述したように、ワープパラメーターはマトリックス又はテーブルである。ワープパラメーターは、フォワードマップパラメーター又はインバースマップパラメーターのいずれであってもよい。フォワードマップパラメーターは、入力画像の各画素と、その各画素に対応した移動先座標とを対応付けるパラメーター、或いは、入力画像の各画素と、その各画素に対応した移動先座標への相対移動量とを対応付けるパラメーターである。インバースマップパラメーターは、出力画像の各画素と、その各画素に対応した参照元座標とを対応付けるパラメーター、或いは、出力画像の各画素と、その各画素に対応した参照元座標からの相対移動量とを対応付けるパラメーターである。
パラメーター演算部140は、処理装置150からレンダリング画像と共に送信されたトラッキング情報と、レイテンシー補償用センサー520の出力信号とに基づいてレイテンシー補償パラメーターを求める。パラメーター演算部140は、パラメーター演算部140は、記憶部145から読み出したワープパラメーターをレイテンシー補償パラメーターに基づいて補正し、補正後ワープパラメーターを出力する。ここで用いられるトラッキング情報は、レンダリング処理に用いられるトラッキング情報よりも後にサンプリングされたものである。レイテンシーを最小限にする観点から、パラメーター演算の直前又はできるだけ近いタイミングで取得されたトラッキング情報を用いることが、望ましい。
レイテンシー補償パラメーターは、レンダリング画像における仮想オブジェクトの位置と、表示タイミングにおける仮想オブジェクトの位置との差を補償するパラメーターである。レイテンシー補償パラメーターは、画像データ上におけるシフト量又は回転角度を示す。より具体的には、レイテンシー補償パラメーターは、ワープ処理前の歪んでいない画像におけるシフト量又は回転角度を示す。
ワープパラメーターは、ワープ処理における座標変換のパラメーターであり、ワープ処理における入力画像の座標と出力画像の座標とを対応付けるパラメーターである。ワープパラメーターは、例えば入力画像と出力画像の間の座標変換を表したマトリックス又はテーブルである。
ワープ処理部130は、湾曲したスクリーンにレンダリング画像が投影されたときに歪んでいない画像となるように、レンダリング画像をワープ処理する。具体的には、ワープ処理部130は、パラメーター演算部140が出力した補正後ワープパラメーターを用いてレンダリング画像を座標変換することで、表示画像を生成する。この座標変換は、スクリーンの湾曲による画像歪みをキャンセルするような座標変換である。表示画像は、HUD400の表示パネルに表示される画像であり、その表示パネルに表示された表示画像が投影ユニットによってスクリーンに投影されることで、歪みのない虚像として表示される。
ワープ処理部130及びパラメーター演算部140はロジック回路により構成され、例えば自動配置配線されたゲートアレイ又は自動配線されたスタンダードセルアレイ等により構成される。
HUD400はディスプレイ410を含み、表示画像をディスプレイ410に表示させる。ディスプレイ410は、液晶表示装置等の表示装置である。HUD400は、スクリーンに虚像を投影するための不図示の光学系を含み、その光学系は、表示パネルに表示された表示画像を虚像としてスクリーンに投影することで、仮想オブジェクトを実空間に重ねて表示する。スクリーンは移動体のウィンドスクリーン等である。或いは、HUD400は専用のスクリーンを含み、そのスクリーンに虚像が投影されてもよい。
図7に、トラッキング処理部110の詳細な処理フローを示し、図8に、第1構成例における表示システムの処理フローを示す。なお、図7に示すトラッキング処理は一例であって、実オブジェクト等をトラッキングする手法はこれに限定されない。また、トラッキング処理に用いられるセンサーも、採用する手法に応じて選択されればよい。
図8に示すセンサーの基本的な動作は図5で説明した通りである。但し図8では、IMU1及びカメラがレンダリング用センサー510であり、IMU2がレイテンシー補償用センサー520である。
トラッキング処理部110は、タイミングtckにおいてカメラが撮像した画像IMG(tck)と、タイミングtckにおいてIMU1がサンプリングした移動体のモーション情報MTI(tck)とに基づいて、ビジュアル慣性オドメトリ処理111を行い、タイミングtckにおける実オブジェクトと移動体の位置及び姿勢Pr(tck)を推定する。
トラッキング処理部110は、位置及び姿勢Pr(tck)と、タイミングtnow1においてIMU1がサンプリングした移動体のモーション情報MTI(tnow1)とに基づいて、慣性オドメトリ処理112を行い、タイミングtnow1における実オブジェクトと移動体の位置及び姿勢Pc(tck,tnow1)を推定する。tnow1は、tckより後であり、且つ慣性オドメトリ処理112の開始前である。より望ましくは、tnow1は、ビジュアル慣性オドメトリ処理111の終了後、且つ慣性オドメトリ処理112の開始前である。
トラッキング処理部110は、位置及び姿勢Pc(tck,tnow1)に基づいて予測処理113を行い、tnow1より後のタイミングtfutureにおける実オブジェクトと移動体の位置及び姿勢Pp(tck,tnow1,tfuture)を予測する。図8では、tfuture=tdpとし、位置及び姿勢Pp(tck,tnow1,tdp)を予測する例を示す。tdpはHUDの表示タイミングである。予測処理113は、例えば、時系列に得られる位置及び姿勢Pcの微分値に基づいて、未来の位置及び姿勢Ppを予測する。
レンダリング画像生成部120は、位置及び姿勢Pp(tck,tnow1,tdp)に基づいて仮想オブジェクトをレンダリングし、レンダリング画像を出力する。仮に、このレンダリング画像をそのままHUD400に表示させたとすると、位置及び姿勢Ppが示す実オブジェクトの位置に対応して仮想オブジェクトが表示されることになる。
ここで、予測された位置及び姿勢Pp(tck,tnow1,tdp)は、tck、tnow1における情報を用いて予測されたものであり、tdpにおける実際のセンサー出力に基づく位置ではない。即ち、tnow1とtdpの間に生じた実際の動きが、予測処理113により予測された動きと異なった場合には、仮想オブジェクトと実オブジェクトの間にレイテンシーによる位置ずれが生じ得る。即ち、図8の例で補償対象となるレイテンシーは、tnow1とtdpの間の処理時間によるレイテンシーである。なお補償対象となるレイテンシーは、これに限定されない。例えば慣性オドメトリと予測処理を省略し、Pr(tck)を用いてレンダリング処理を行った場合、tckとtdpの間の処理時間によるレイテンシーが補償対象となる。
本実施形態では、上記のレイテンシーによる位置ずれを以下のようにして補償する。トラッキング処理部110は、タイミングtck+1においてカメラが撮像した画像IMG(tck+1)と、タイミングtck+1においてIMUがサンプリングした移動体のモーション情報MTI(tck+1)とに基づいて、ビジュアル慣性オドメトリ処理111を行い、タイミングtck+1における実オブジェクトと移動体の位置及び姿勢Pr(tck+1)を推定する。tck+1は、tckの次のカメラ露出タイミングである。
レンダリング画像生成部120は、位置及び姿勢Pp(tck,tnow1,tdp)に基づいてレンダリングしたレンダリング画像と共に、位置及び姿勢Pp(tck,tnow1,tdp)及び位置及び姿勢Pr(tck+1)を回路装置160に出力する。
パラメーター演算部140は、インターフェース161を介して入力される位置及び姿勢Pr(tck+1)と、タイミングtnow2においてIMU2がサンプリングした移動体のモーション情報MTI’(tnow2)とに基づいて、慣性オドメトリ処理を行い、タイミングtnow2における実オブジェクトと移動体の位置及び姿勢Pc’(tck+1,tnow2)を推定する。
パラメーター演算部140は、位置及び姿勢Pc’(tck+1,tnow2)に基づいて予測処理を行い、tdpにおける実オブジェクトと移動体の位置及び姿勢Pp’(tck+1,tnow2,tdp)を予測する。
パラメーター演算部140は、位置及び姿勢Pp(tck,tnow1,tdp)と位置及び姿勢Pp’(tck+1,tnow2,tdp)に基づいてレイテンシー補償パラメーターを求める。具体的には、パラメーター演算部140は、位置及び姿勢Pp(tck,tnow1,tdp)と位置及び姿勢Pp’(tck+1,tnow2,tdp)の差による仮想オブジェクトの位置ずれをキャンセルするようなレイテンシー補償パラメーターを求める。パラメーター演算部140は、レイテンシー補償パラメーターを用いてワープパラメーターを補正し、補正後ワープパラメーターを出力する。
ワープ処理部130は、補正後ワープパラメーターを用いてレンダリング画像をワープ処理し、表示画像を生成する。ワープ処理部130は、HUD400の表示パネルにおける第1ラインから最終ラインまでの走査タイミングに応じて、第1ラインから最終ラインのワープ処理を順次に行い、そのワープ処理後の各ラインのデータを走査タイミングに合わせて順次にHUD400に出力する。図8では、第1ラインの表示タイミングをtdpとしたが、tdpは、第1ラインから最終ラインを表示するまでのフレーム期間における任意のタイミングであってよい。
本実施形態によれば、ワープ処理部130は、ワープ処理において、表示領域における仮想オブジェクトの位置をレイテンシー補償パラメーターに基づいて補償するレイテンシー補償処理を行う。
このようにすれば、tnow1とtdpの間のレンダリング処理等によるレイテンシーによって発生する仮想オブジェクトの位置ずれが、レイテンシー補償パラメーターに基づいて補償される。表示の直前に行われるワープ処理においてレイテンシー補償を行うことで、残存するレイテンシーを最小限にできるため、実オブジェクトに対する仮想オブジェクトの追従性が高いAR表示を実現できる。また特許文献1のような光学的な補償機構を用いず、本実施形態では画像データ処理によってレイテンシー補償を行うので、投影ユニット等の構成を変更することなくレイテンシー補償を実現できる。またワープ処理において一体としてレイテンシー補償を行うので、正確な歪み補正とレイテンシー補償とを実現できる。
また本実施形態では、インターフェース161には、第1タイミングにおけるトラッキング情報に基づいて生成されたレンダリング画像と、第1タイミングにおけるトラッキング情報と、が入力される。パラメーター演算部140は、第1タイミングより後で且つ画像の表示タイミングtdpより前の第2タイミングにおけるトラッキング情報と、第1タイミングにおけるトラッキング情報とに基づいて、レイテンシー補償パラメーターを演算する。図8の例では、tnow1が第1タイミングに相当し、tnow2が第2タイミングに相当する。
このようにすれば、第1タイミングと表示タイミングの間のレイテンシーが、第2タイミングと表示タイミングの間のレイテンシーに短縮されるので、レイテンシーによる位置ずれが削減される。図8の例を用いて説明すると、ワープパラメーターを補正するレイテンシー補償パラメーターは、tnow1より後のtnow2においてIMU2がサンプリングしたモーション情報が反映されている。このレイテンシー補償パラメーターによって仮想オブジェクトの表示位置が補正されることで、tnow1とtdpの間のレイテンシーが、tnow2とtdpの間のレイテンシーに短縮されることになる。ワープ処理はHUD表示の直前に行われる処理であることから、tnow2はtdpに近いタイミングとなっており、可能な限りレイテンシーを小さくして、レイテンシーによる仮想オブジェクトの表示位置ずれを小さくできる。
また本実施形態では、パラメーター演算部140は、表示領域の湾曲に応じた座標変換のワープパラメーターをレイテンシー補償パラメーターに基づいて補正することで、補正後ワープパラメーターを出力する。ワープ処理部130は、補正後ワープパラメーターを用いてワープ処理を行うことで、レイテンシー補償処理を行う。
このように、レイテンシー補償パラメーターに基づく補正後ワープパラメーターを用いてワープ処理を行うことで、ワープ処理においてレイテンシー補償を行うことができる。例えば、レイテンシー補償の画像処理をワープ処理とは別に行う構成も考えられるが、レイテンシー補償の画像処理の分だけ処理負荷が重くなり、またレイテンシー補償後にワープ処理を行うことによって、ワープ処理のレイテンシーが残存してしまう。本実施形態では、レイテンシー補償とワープ処理が一体になることで、処理負荷の増加を抑えつつ、レイテンシーを最小限にできる。
また本実施形態では、トラッキング情報は、移動体の進行方向に垂直な第1軸変位及び第2軸変位の少なくとも1つを含む変位を示す情報である。進行方向はz方向に対応し、第1軸はx方向の軸に対応し、第2軸はy方向の軸に対応する。パラメーター演算部140は、上記変位により生じる仮想オブジェクトの位置の誤差を補正することで補正後ワープパラメーターを出力する。
レイテンシー補償では、短期間に生じる位置又は姿勢の変化を補償するが、短期間に生じる位置又は姿勢の変化としては移動体又は観者の揺れの影響が大きいと考えられる。移動体又は観者が揺れた場合、観者が表示領域を通して見る実オブジェクトはシフト変位すると考えられる。本実施形態によれば、移動体の進行方向に垂直な第1軸変位及び第2軸変位により生じる仮想オブジェクトの位置の誤差が補正されるので、移動体又は観者の揺れによる表示位置ずれを補償できる。
また本実施形態では、移動体の進行方向に垂直な第1軸変位及び第2軸変位のうち、移動体の上下方向における変位が第2軸変位である。このとき、トラッキング情報は、移動体のピッチ変位によるHUD400又は観者の第2軸変位を示す情報を含む。パラメーター演算部140は、上記第2軸変位により生じる仮想オブジェクトの位置の誤差を補正することで補正後ワープパラメーターを出力する。
上述した移動体の揺れとしてピッチ変位が想定されるが、移動体のピッチ変位はHUDのスクリーン又は観者の第2軸変位を生じさせる。このHUDのスクリーン又は観者の第2軸変位は、観者が表示領域を通して見る実オブジェクトに第2軸方向のシフト変位を生じさせる。本実施形態によれば、HUDのスクリーン又は観者の第2軸変位により生じる仮想オブジェクトの位置の誤差が補正されるので、移動体のピッチ変位による表示位置ずれを補償できる。
また本実施形態では、ワープ処理部130は、ワープ処理において、表示領域における仮想オブジェクトの回転及びスケールの少なくとも1つをレイテンシー補償パラメーターに基づいて補償するレイテンシー補償処理を行う。
このように、シフト変位のレイテンシー補償だけでなく、回転又はスケールのレイテンシー補償を行ってもよい。スケールは、仮想オブジェクトを縮小又はズームすることである。本実施形態によれば、レイテンシーによる仮想オブジェクトの回転誤差、スケール誤差又はその両方が補償されるので、より追従性が高いAR表示を実現できる。
また本実施形態では、インターフェース161には、レンダリング用センサー510の出力信号に基づくトラッキング処理により生成されたレンダリング用トラッキング情報と、レンダリング用トラッキング情報に基づいて生成されたレンダリング画像と、レンダリング用センサー510とは別のレイテンシー補償用センサー520の出力信号であるレイテンシー補償用トラッキング情報と、が入力される。パラメーター演算部140は、レンダリング用トラッキング情報とレイテンシー補償用トラッキング情報に基づいて、レイテンシー補償パラメーターを演算する。図8の例において、Pp(tck,tnow1,tdp)がレンダリング用トラッキング情報に対応する。またパラメーター演算部140は、レイテンシー補償用トラッキング情報であるレイテンシー補償用センサー520の出力信号に基づいてPp’(tck+1,tnow2,tdp)を求め、Pp(tck,tnow1,tdp)とPp’(tck+1,tnow2,tdp)からレイテンシー補償パラメーターを演算する。
このようにすれば、パラメーター演算部140が任意のタイミングでレイテンシー補償用センサー520の出力信号を取得できるので、表示タイミングtdpに出来るだけ近いタイミングのレイテンシー補償用センサー520の出力信号を取得し、レイテンシー補償パラメーターを演算できる。
2.第2構成例
図9は、本実施形態における回路装置160、及び回路装置160を含む表示システムの第2構成例を示す。なお、既に説明した構成要素には同一の符号を付し、その構成要素についての説明を適宜に省略する。
図9では、トラッキング処理部110がトラッキング情報を回路装置160に出力し、レンダリング画像生成部120がレンダリング画像を回路装置160に出力する。回路装置160のインターフェース161は、レンダリング画像生成部120からのレンダリング画像と、トラッキング処理部110からのトラッキング情報とを受信する。
図10に、第2構成例における表示システムの処理フローを示す。なお、図10に示す処理フローは一例であって、例えばトラッキング手法は図10に限定されない。また、トラッキングに用いるセンサーも、採用するトラッキング手法に応じて選択されればよい。
トラッキング処理部110が位置及び姿勢Pp(tck,tnow1,tdp)を予測する処理、レンダリング画像生成部120がレンダリング画像を生成する処理、及びトラッキング処理部110が位置及び姿勢Pr(tck+1)を求める処理は、第1構成例と同様である。
第2構成例では、トラッキング処理部110は、位置及び姿勢Pr(tck+1)と、タイミングtnow2においてIMUがサンプリングした移動体のモーション情報MTI(tnow2)とに基づいて、慣性オドメトリ処理112を行い、タイミングtnow2における実オブジェクトと移動体の位置及び姿勢Pc(tck+1,tnow2)を推定する。
トラッキング処理部110は、位置及び姿勢Pc(tck+1,tnow2)に基づいて予測処理113を行い、tdpにおける実オブジェクトと移動体の位置及び姿勢Pp(tck+1,tnow2,tdp)を予測する。
パラメーター演算部140は、位置及び姿勢Pp(tck,tnow1,tdp)と位置及び姿勢Pp(tck+1,tnow2,tdp)に基づいてレイテンシー補償パラメーターを求める。具体的には、パラメーター演算部140は、位置及び姿勢Pp(tck,tnow1,tdp)と位置及び姿勢Pp(tck+1,tnow2,tdp)の差による仮想オブジェクトの位置ずれをキャンセルするようなレイテンシー補償パラメーターを求める。パラメーター演算部140は、レイテンシー補償パラメーターを用いてワープパラメーターを補正し、補正後ワープパラメーターを出力する。
ワープ処理部130は、補正後ワープパラメーターを用いてレンダリング画像をワープ処理し、表示画像を生成する。
3.ワープ処理
以下、インバースワープを例にワープ処理の詳細を説明する。但し、ワープ処理はフォワードワープ又はインバースワープのいずれであってもよく、ワープ処理部130はフォワードワープエンジン又はインバースワープエンジンのいずれであってもよい。フォワードワープとは、ワープエンジンに対する入力画像の各画素を、出力画像における任意の位置に移動させる変換である。フォワードワープエンジンとは、フォワードワープの機能を有するワープエンジンである。インバースワープとは、ワープエンジンの出力画像の各画素を、入力画像における任意の位置の画素から求める変換である。インバースワープエンジンとは、インバースワープの機能を有するワープエンジンである。
図11は、本実施形態におけるワープ処理の説明図である。入力画像はレンダリング画像である。出力画像は、HUDの液晶表示パネル等に表示される表示画像である。(xsrc,ysrc)は入力画像における水平方向の位置と垂直方向の位置を示す。(xdst,ydst)は出力画像における水平方向の位置と垂直方向の位置を示す。
レイテンシー補償パラメーターを用いたワープパラメーターの補正をg()で表すと、レイテンシー補償画像における位置は下式(1)のように表される。
(xlat,ylat)=g(xsrc,ysrc) ・・・(1)
スクリーンの湾曲に応じたワープパラメーターによる歪み補正をf()と表すと、出力画像における位置は下式(2)のように表される。
(xdst,ydst)=f(xlat,ylat) ・・・(2)
上式(1)(2)より、入力画像と出力画像の間の座標変換は下式(3)のように表される。
(xdst,ydst)=f・g(xsrc,ysrc) ・・・(3)
インバースワープは上式(3)の逆変換を用いるので、下式(4)のようになる。
(xsrc,ysrc)=g−1・f−1(xdst,ydst) ・・・(4)
本実施形態では、パラメーター演算部140が、レイテンシー補償パラメーターg−1を求め、g−1・f−1を演算することでワープパラメーターf−1を補正し、補正後ワープパラメーターg−1・f−1を出力する。ワープ処理部130は、補正後ワープパラメーターg−1・f−1を用いて上式(4)のワープ処理を行うことで、出力画像を生成する。
図12は、移動体等のトラッキング情報と、そのトラッキング情報に基づくレイテンシー補償との対応を示す図である。ここでは、トラッキング情報として6軸のモーション情報が得られるとする。
ヨー変位Δαは、垂直方向であるy方向に平行な軸を回転軸とする回転変位である。ヨー変位Δαは、観者がスクリーンを通してみた実オブジェクトに、水平シフトを生じさせる。水平シフトは、水平方向であるx方向のシフトである。このため、レイテンシー補償の手法は水平シフトとなる。
ピッチ変位Δβは、水平方向であるx方向に平行な軸を回転軸とする回転変位である。ピッチ変位Δβは、観者がスクリーンを通してみた実オブジェクトに、垂直シフトを生じさせる。垂直シフトは、垂直方向であるy方向のシフトである。このため、レイテンシー補償の手法は垂直シフトとなる。
ロール変位Δγは、移動体の前後方向であるz方向に平行な軸を回転軸とする回転変位である。ロール変位Δγは、観者がスクリーンを通してみた実オブジェクトに、回転を生じさせる。このため、レイテンシー補償の手法は回転となる。
水平シフトΔxは、x方向のシフトであり、観者がスクリーンを通してみた実オブジェクトに、水平シフトを生じさせる。このため、レイテンシー補償の手法は水平シフトとなる。
垂直シフトΔyは、y方向のシフトであり、観者がスクリーンを通してみた実オブジェクトに、垂直シフトを生じさせる。このため、レイテンシー補償の手法は垂直シフトとなる。
前後シフトΔzは、z方向のシフトであり、観者がスクリーンを通してみた実オブジェクトに、縮小又は拡大を生じさせる。このため、レイテンシー補償の手法は縮小又はズームとなる。
図13に、上記補償手法を実現するレイテンシー補償パラメーターの例を示す。図13に示す式の右辺のマトリックスが図11で説明したg−1に対応する。m13は水平シフトを示し、m23は垂直シフトを示す。m12は水平スキューを示す。水平スキューは、矩形を平行四辺形に歪ませるような変換であるが、ここでは回転の近似として用いている。m11は水平スケールを示し、m22は垂直スケールを示す。m11とm22は縮小又はズームに相当する。
例えば垂直シフトのみ発生した場合を考えると、m11=m22=1、m12=m13=0である。このとき、図13の式は下式(5)となる。
(xsrc,ysrc)=(xlat,ylat+m23) ・・・(5)
図11において、歪み補正の逆変換f−1()は(xdst,ydst)を(xlat,ylat)に移動させる。上式(5)は、この移動量を、m23だけ垂直方向にシフトさせることに相当し、そのシフトによってレイテンシー補償が実現されている。
図14は、トラッキング情報からレイテンシー補償パラメーターを演算する手法を説明する図である。
ヨー、ロール及びピッチの回転中心、観者の頭部、HUDスクリーン、及び実オブジェクトの幾何学的な位置関係から、移動体、観者又は実オブジェクトに生じた変位を、スクリーン上のシフト量又は回転角度に換算できる。そして、そのシフト量又は回転角度から図13の右辺のマトリックスを決定できる。
図14では、図13において垂直シフトを示すm23を例に、トラッキング情報からレイテンシー補償パラメーターを求める手法を説明する。ここでは、トラッキング情報として、移動体32のピッチ変位Δβ及び垂直シフトΔymと、観者52の垂直シフトΔypとを用いる例を説明する。
ピッチの回転中心PTCとスクリーン34との距離をDCFとすると、移動体32のピッチ変位Δβは、スクリーン34をDCF×Δβだけ垂直シフトさせる。また移動体32の垂直シフトΔymは、スクリーン34をΔymだけ垂直シフトさせる。これらを合計すると、スクリーン34の垂直シフト量はDCF×Δβ+Δymである。観者52の頭部と実オブジェクト12が動かないと仮定すると、例えばスクリーン34が+(DCF×Δβ+Δym)だけ上がったとき、観者から見たスクリーン34上の実オブジェクト12の位置は、スクリーン34に対して相対的に−(DCF×Δβ+Δym)だけ下がって見える。従って、この場合のレイテンシー補償パラメーターはm23=−(DCF×Δβ+Δym)となる。
観者52の頭部と実オブジェクト12との距離をDPTとし、スクリーン34と実オブジェクト12との距離をDFTとする。スクリーン34と実オブジェクト12が動かないと仮定すると、例えば観者が+Δypだけ上がったとき、観者52から見たスクリーン34上の実オブジェクト12の位置は、スクリーン34に対して相対的に+(DFT/DPT)×Δypだけ上がって見える。実オブジェクト12が十分遠くにあると仮定すれば、DFT/DPT=1と近似できるので、実オブジェクト12の垂直シフト量はΔypである。従って、この場合のレイテンシー補償パラメーターはm23=Δypとなる。
本実施形態によれば、回路装置160は記憶部145を含み、記憶部145は、表示画像における座標と、その座標の移動先を示す移動量とを対応づけるテーブルをワープパラメーターとして記憶する。パラメーター演算部140は、テーブルの移動量をレイテンシー補償パラメーターに基づいてシフトし、移動量がシフトされたテーブルを補償後ワープパラメーターとして出力する。
図11の例では、f−1()がテーブルとして記憶部145に記憶される。図13及び上式(5)で説明した例では、(xdst,ydst)を(xlat,ylat)に移動させるテーブルの移動量が、例えばm23だけ垂直方向にシフトされる。即ち、(xdst,ydst)を(xlat,ylat+m23)に移動させるテーブルに補正される。
或いは、記憶部145は、表示画像における座標を、移動先の座標に変換する変換式のパラメーターをワープパラメーターとして記憶してもよい。パラメーター演算部140は、移動先の座標をレイテンシー補償パラメーターに基づいてシフトし、移動先の座標がシフトされた変換式のパラメーターを補償後ワープパラメーターとして出力する。
変換式は例えば多項式であり、その多項式の係数が変換式のパラメーターとして記憶部145に記憶される。図11の例では、f−1()を示す変換式のパラメーターが記憶部145に記憶される。図13及び上式(5)で説明した例では、(xdst,ydst)を(xlat,ylat)に移動させる変換式の移動量が、例えばm23だけ垂直方向にシフトされる。即ち、(xdst,ydst)を(xlat,ylat+m23)に移動させる変換式に補正される。
4.電子機器、移動体
図15は、本実施形態の回路装置160を含む電子機器300の構成例である。電子機器300は、処理装置150、回路装置160、記憶装置350、操作装置360、通信装置370、ヘッドアップディスプレイ400、センサー500を含む。
処理装置150は、仮想オブジェクトをレンダリングしたレンダリング画像を回路装置160に出力する。また処理装置150は、記憶装置350に記憶された画像データ、又は通信装置370が受信した画像データと、仮想オブジェクトとを合成したレンダリング画像を、回路装置160に出力してもよい。回路装置160は、レンダリング画像に対するワープ処理と共にレイテンシー補償を行う。また回路装置160は表示タイミング制御等を行う。ヘッドアップディスプレイ400は、回路装置160から転送された画像データと、回路装置160による表示タイミング制御に基づいて、表示パネルを駆動し、表示パネルに画像を表示させる。表示パネルは、例えば液晶表示パネル、或いはEL表示パネル等である。ヘッドアップディスプレイ400は、表示パネルに表示された画像を投影光学ユニットによりスクリーンに投影する。記憶装置350は、例えばメモリー、或いはハードディスクドライブ、或いは光学ディスクドライブ等である。操作装置360は、電子機器300をユーザーが操作するための装置であり、例えばボタンや、或いはタッチパネルや、或いはキーボード等である。通信装置370は、例えば有線通信を行う装置、或いは無線通信を行う装置である。有線通信は、例えばLAN、又はUSB等である。無線通信は、例えば無線LANや、無線近接通信等である。
本実施形態の回路装置を含む電子機器としては、車載用の電子機器、工場設備等の表示端末、ロボットに搭載された表示装置、又は情報処理装置等の種々の機器を想定できる。車載用の電子機器は、例えばメーターパネル等である。情報処理装置は例えばPC等である。
図16は、本実施形態の回路装置160を含む移動体の例である。移動体は、制御装置208、ヘッドアップディスプレイ400、センサー500を含む。制御装置208は、処理装置150、回路装置160を含む。制御装置208はECU(Electronic Control Unit)であり、ECUに処理装置150と回路装置160が組み込まれる。なお回路装置160はヘッドアップディスプレイ400に組み込まれてもよい。本実施形態の回路装置160は、例えば、車、飛行機、バイク、自転車、或いは船舶等の種々の移動体に組み込むことができる。移動体は、例えばエンジンやモーター等の駆動機構、ハンドルや舵等の操舵機構、各種の電子機器を備えて、地上や空や海上を移動する機器又は装置である。図16は移動体の具体例としての自動車206を概略的に示している。自動車206は車体207と車輪209を有する。上記のECUは、ドライバーによる操作に基づいて、エンジン、ブレーキ又は操舵等を制御することで自動車206の走行を制御する。ヘッドアップディスプレイ400は透明スクリーンを有し、その透明スクリーンは運転席とフロントガラスの間に設置される。或いは、ヘッドアップディスプレイは、フロントガラスを透明スクリーンとして用い、フロントガラスに画像を投影してもよい。ヘッドアップディスプレイ400は、AR表示を行うと共に、例えば自動車206のメーターパネルとして機能してもよい。
以上に説明した本実施形態の回路装置は、実空間の実オブジェクトに対応する仮想オブジェクトを表示領域に表示するヘッドアップディスプレイの表示制御を行う。回路装置は、インターフェースとパラメーター演算部とワープ処理部とを含む。インターフェースには、ヘッドアップディスプレイが搭載される移動体の第1トラッキング情報、ヘッドアップディスプレイの観者の第2トラッキング情報、及び実オブジェクトの第3トラッキング情報の少なくとも1つであるトラッキング情報と、仮想オブジェクトを含むレンダリング画像と、が入力される。パラメーター演算部は、トラッキング情報に基づいて、レンダリング画像のレンダリング処理レイテンシーを含むレイテンシーを補償するレイテンシー補償パラメーターを、演算する。ワープ処理部は、レンダリング画像を表示領域の湾曲に応じて座標変換するワープ処理を行い、表示領域に表示される表示画像を生成する。ワープ処理部は、ワープ処理において、表示領域における仮想オブジェクトの位置をレイテンシー補償パラメーターに基づいて補償するレイテンシー補償処理を行う。
このようにすれば、レンダリング処理レイテンシーを含むレイテンシーによって発生する仮想オブジェクトの位置ずれが、レイテンシー補償パラメーターに基づいて補償される。表示の直前に行われるワープ処理においてレイテンシー補償を行うことで、残存するレイテンシーを最小限にできるため、実オブジェクトに対する仮想オブジェクトの追従性が高いAR表示を実現できる。
また本実施形態では、インターフェースには、第1タイミングにおけるトラッキング情報に基づいて生成されたレンダリング画像と、第1タイミングにおけるトラッキング情報と、が入力されてもよい。パラメーター演算部は、第1タイミングより後で且つ表示画像の表示タイミングより前の第2タイミングにおけるトラッキング情報と、第1タイミングにおけるトラッキング情報とに基づいて、レイテンシー補償パラメーターを演算してもよい。
このようにすれば、第1タイミングと表示タイミングの間のレイテンシーが、第1タイミングより後の第2タイミングと表示タイミングの間のレイテンシーに短縮されるので、レイテンシーによる位置ずれが削減される。
また本実施形態では、パラメーター演算部は、表示領域の湾曲に応じた座標変換のワープパラメーターをレイテンシー補償パラメーターに基づいて補正することで、補正後ワープパラメーターを出力してもよい。ワープ処理部は、補正後ワープパラメーターを用いてワープ処理を行うことで、レイテンシー補償処理を行ってもよい。
このように、レイテンシー補償パラメーターに基づく補正後ワープパラメーターを用いてワープ処理を行うことで、ワープ処理においてレイテンシー補償を行うことができる。
また本実施形態では、トラッキング情報は、移動体の進行方向に垂直な第1軸変位及び第2軸変位の少なくとも1つを含む変位を示す情報であってもよい。パラメーター演算部は、変位により生じる仮想オブジェクトの位置の誤差を補正することで補正後ワープパラメーターを出力してもよい。
レイテンシー補償では、短期間に生じる位置又は姿勢の変化を補償するが、短期間に生じる位置又は姿勢の変化としては移動体又は観者の揺れの影響が大きいと考えられる。移動体又は観者が揺れた場合、観者が表示領域を通して見る実オブジェクトはシフト変位すると考えられる。本実施形態によれば、移動体の進行方向に垂直な第1軸変位及び第2軸変位により生じる仮想オブジェクトの位置の誤差が補正されるので、移動体又は観者の揺れによる表示位置ずれを補償できる。
また本実施形態では、移動体の進行方向に垂直な第1軸変位及び第2軸変位のうち、移動体の上下方向における変位が第2軸変位であってもよい。このとき、トラッキング情報は、移動体のピッチ変位によるヘッドアップディスプレイ又は観者の第2軸変位を示す情報であってもよい。パラメーター演算部は、第2軸変位により生じる仮想オブジェクトの位置の誤差を補正することで補正後ワープパラメーターを出力してもよい。
上述した移動体の揺れとしてピッチ変位が想定されるが、移動体のピッチ変位はヘッドアップディスプレイのスクリーン又は観者の第2軸変位を生じさせる。このヘッドアップディスプレイのスクリーン又は観者の第2軸変位は、観者が表示領域を通して見る実オブジェクトに第2軸方向のシフト変位を生じさせる。本実施形態によれば、ヘッドアップディスプレイのスクリーン又は観者の第2軸変位により生じる仮想オブジェクトの位置の誤差が補正されるので、移動体のピッチ変位による表示位置ずれを補償できる。
また本実施形態では、回路装置は、表示画像における座標と、座標の移動先を示す移動量とを対応づけるテーブルをワープパラメーターとして記憶する記憶部を含んでもよい。パラメーター演算部は、テーブルの移動量をレイテンシー補償パラメーターに基づいてシフトし、移動量がシフトされたテーブルを補正後ワープパラメーターとして出力してもよい。
このようにすれば、テーブルの移動量がレイテンシー補償パラメーターに基づいてシフトされ、その補正されたテーブルによりワープ処理が行われることで、レイテンシー補償が実現される。
また本実施形態では、回路装置は、表示画像における座標を、移動先の座標に変換する変換式のパラメーターをワープパラメーターとして記憶する記憶部を含んでもよい。パラメーター演算部は、移動先の座標をレイテンシー補償パラメーターに基づいてシフトし、移動先の座標がシフトされた変換式のパラメーターを補正後ワープパラメーターとして出力してもよい。
このようにすれば、変換式の移動先の座標がレイテンシー補償パラメーターに基づいてシフトされ、その補正された変換式によりワープ処理が行われることで、レイテンシー補償が実現される。
また本実施形態では、ワープ処理部は、ワープ処理において、表示領域における仮想オブジェクトの回転及びスケールの少なくとも1つをレイテンシー補償パラメーターに基づいて補償するレイテンシー補償処理を行ってもよい。
このように、シフト変位のレイテンシー補償だけでなく、回転又はスケールのレイテンシー補償を行ってもよい。スケールは、仮想オブジェクトを縮小又はズームすることである。本実施形態によれば、レイテンシーによる仮想オブジェクトの回転誤差、スケール誤差又はその両方が補償されるので、より追従性が高いAR表示を実現できる。
また本実施形態では、インターフェースには、レンダリング用センサーの出力信号に基づくトラッキング処理により生成されたレンダリング用トラッキング情報と、レンダリング用トラッキング情報に基づいて生成されたレンダリング画像と、レンダリング用センサーとは別のレイテンシー補償用センサーの出力信号であるレイテンシー補償用トラッキング情報と、が入力されてもよい。パラメーター演算部は、レンダリング用トラッキング情報とレイテンシー補償用トラッキング情報に基づいて、レイテンシー補償パラメーターを演算してもよい。
このようにすれば、パラメーター演算部が任意のタイミングでレイテンシー補償用センサーの出力信号を取得できるので、表示タイミングに出来るだけ近いタイミングのレイテンシー補償用センサーの出力信号を取得し、レイテンシー補償パラメーターを演算できる。
また本実施形態の電子機器は、上記のいずれかに記載の回路装置を含む。
また本実施形態の移動体は、上記のいずれかに記載の回路装置を含む。
なお、上記のように本実施形態について詳細に説明したが、本開示の新規事項及び効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本開示の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義又は同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本開示の範囲に含まれる。またセンサー、ヘッドアップディスプレイ、処理装置、ヘッドアップディスプレイコントローラー、表示システム、電子機器及び移動体等の構成及び動作等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。