(57)【特許請求の範囲】
【請求項１】
他の通信装置と無線通信が可能な通信装置であって、
前記他の通信装置から、撮像画像を圧縮した圧縮撮像画像を無線通信によって受信する受信手段と、
前記圧縮撮像画像を伸長し伸長撮像画像を取得する伸長手段と、
前記伸長撮像画像に基づいて、前記撮像画像に重畳表示されるＣＧ画像を生成するＣＧ画像生成手段と、
前記ＣＧ画像を圧縮し圧縮ＣＧ画像を生成する圧縮手段と、
前記圧縮ＣＧ画像を前記他の通信装置に無線通信によって送信する送信手段と、
前記他の通信装置における前記圧縮撮像画像の送信時刻と前記ＣＧ画像生成手段における前記ＣＧ画像の生成完了時刻とに基づく遅延時間を導出する導出手段と、
前記導出手段によって導出された遅延時間が所定の閾値より長いか否かに基づいて、前記圧縮手段における前記ＣＧ画像の圧縮率を変更する変更手段と、
を有することを特徴とする通信装置。
【請求項２】
前記変更手段は、前記遅延時間が前記所定の閾値より長い場合、該遅延時間が該所定の閾値以下の場合の圧縮率よりも高い圧縮率に、前記ＣＧ画像の圧縮率を変更する
ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記導出手段は、
前記圧縮撮像画像の送信時刻と前記受信手段における前記圧縮撮像画像の受信時刻とに基づいて、前記圧縮撮像画像の前記他の通信装置から前記通信装置への無線通信に要する第１の遅延時間を導出する第１の導出手段と、
前記受信手段における前記圧縮撮像画像の受信時刻と前記ＣＧ画像生成手段における前記ＣＧ画像の生成完了時刻とに基づいて、前記ＣＧ画像の生成に要する第２の遅延時間を導出する第２の導出手段と、
を含む
ことを特徴とする請求項１又は２に記載の通信装置。
【請求項４】
前記変更手段は、
前記第１の遅延時間が第１の閾値より長いか否かに基づいて、前記ＣＧ画像生成手段における前記ＣＧ画像の解像度を変更する第１の変更手段と、
前記第１の遅延時間と前記第２の遅延時間との和が第２の閾値より長いか否かに基づいて、前記圧縮手段における前記ＣＧ画像の圧縮率を変更する第２の変更手段と、
を含む
ことを特徴とする請求項３に記載の通信装置。
【請求項５】
前記通信装置は、
前記圧縮ＣＧ画像を生成した際の解像度と前記第２の遅延時間との関係を示すＣＧ描画解像度テーブルを生成する第１のテーブル生成手段と、
を更に有し、
前記第１の変更手段は、前記ＣＧ描画解像度テーブルに基づいて、前記ＣＧ画像生成手段における前記ＣＧ画像の解像度を変更する
ことを特徴とする請求項４に記載の通信装置。
【請求項６】
前記通信装置は、
前記送信手段における前記圧縮ＣＧ画像の送信時刻と前記他の通信装置における前記圧縮ＣＧ画像の受信時刻とに基づいて、前記圧縮ＣＧ画像の前記通信装置から前記他の通信装置への無線通信に要する第３の遅延時間を導出する第３の導出手段と、
前記圧縮ＣＧ画像を圧縮した際の圧縮率と前記第３の遅延時間との関係を示すＣＧ画像圧縮率テーブルを生成する第２のテーブル生成手段と、
を更に備え、
前記変更手段は、前記ＣＧ画像圧縮率テーブルに基づいて、前記圧縮手段における前記ＣＧ画像の圧縮率を変更する
ことを特徴とする請求項３乃至５の何れか１項に記載の通信装置。
【請求項７】
前記他の通信装置は、ビデオシースルー型のヘッドマウントディスプレイ（ＨＭＤ）として構成され、前記受信手段は、前記他の通信装置が備える撮像手段によって取得された撮像画像を受信する
ことを特徴とする請求項１乃至６の何れか１項に記載の通信装置。
【請求項８】
他の通信装置と無線通信が可能な通信装置における制御方法であって、
前記他の通信装置から、撮像画像を圧縮した圧縮撮像画像を無線通信によって受信する受信工程と、
前記圧縮撮像画像を伸長し伸長撮像画像を取得する伸長工程と、
前記伸長撮像画像に基づいて、前記撮像画像に重畳表示されるＣＧ画像を生成するＣＧ画像生成工程と、
前記ＣＧ画像を圧縮し圧縮ＣＧ画像を生成する圧縮工程と、
前記圧縮ＣＧ画像を前記他の通信装置に無線通信によって送信する送信工程と、
前記他の通信装置における前記圧縮撮像画像の送信時刻と前記ＣＧ画像生成工程における前記ＣＧ画像の生成完了時刻とに基づく遅延時間を導出する導出工程と、
前記導出工程によって導出された遅延時間が所定の閾値より長いか否かに基づいて、前記圧縮工程における前記ＣＧ画像の圧縮率を変更する変更工程と、
を有することを特徴とする制御方法。
【請求項９】
請求項１乃至７の何れか１項に記載の通信装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理技術、特に画像を無線送信する際の制御に関するものである。
【背景技術】
【０００２】
近年、現実世界の映像にＣＧ（Computer Graphics）画像で表現した仮想世界の映像を重畳して表示するＭＲ（Mixed Reality）技術が知られている。また、ＭＲ技術を利用した装置としてビデオシースルー型のＨＭＤ（Head Mounted Display）がある。ビデオシースルー型のＨＭＤでは、ＨＭＤ使用者の瞳位置から観察される映像と略一致する映像をビデオカメラなどで撮像し、その撮像画像にＣＧ画像を重畳表示している。
【０００３】
ビデオシースルー型では、ＨＭＤに搭載された撮像ユニットが撮像した撮像画像を、ＰＣ（Personal Computer）などの画像処理装置に伝送し、ＰＣは取得した撮像画像に基づいてＣＧ画像の描画処理を行う。ＰＣが描画したＣＧ画像をＨＭＤに伝送し、ＨＭＤが撮像画像とＣＧ画像とを合成し表示を行うことで、ＨＭＤを装着しているユーザーにＭＲ空間の体験を提供することが出来る。ＣＧ画像の描画処理は、ＨＭＤの位置姿勢情報に基づいて行われる。ここで、ＨＭＤの位置姿勢情報は、撮像画像内におけるマーカ若しくは自然特徴を用いて抽出された特徴点に基づいて取得され得る。
【０００４】
ＨＭＤとＰＣとが無線通信接続された無線ＭＲシステムにおいては、ＨＭＤは、撮像画像およびＨＭＤの位置姿勢情報などの情報をＰＣに無線伝送することになる。また、ＰＣは、撮像画像およびＨＭＤの位置姿勢情報に基づいてＣＧ画像の描画を行い、描画したＣＧ画像をＨＭＤに無線伝送することになる。
【０００５】
そのため、無線ＭＲシステムにおいては、ＨＭＤとＰＣとの間の無線伝送による遅延により、ＨＭＤが撮像を行ってからＨＭＤにＭＲ画像が表示されるまでには遅延が生じることになる。無線伝送により生じる遅延時間は、無線通信の実効伝送速度や無線伝送する撮像画像・ＣＧ画像のデータ量に依存して変化する。また、無線通信の実効伝送速度は電波伝搬環境に依存して変化するため、無線通信で生じる遅延時間は常に変動する。遅延が大きい場合、現実の動作とＨＭＤに表示されるＭＲ画像とタイミングのずれが大きくなるため、ユーザーは違和感を感じることになり、ＭＲ空間への没入感が低下することになる。
【０００６】
そこで、特許文献１では、映像送信端末・映像受信端末間での遅延時間およびパケットロス率から無線伝送帯域を計算し、計算した無線伝送帯域に基づいてデータ伝送における圧縮率を決定する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−２５８８５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、ＨＭＤが撮像を行ってからＨＭＤにＭＲ画像が表示されるまでの遅延は、ＰＣによるＣＧ画像の描画処理によっても発生し得る。ＣＧ画像の描画処理に要する時間は、例えば、描画するＣＧ画像の解像度やＣＧ画像のサイズ・ＣＧ画像の幾何学的形状に依存して変化する。
【０００９】
しかしながら、上述の従来技術においては、ＣＧ画像の描画処理時間が大きい場合の遅延時間には対応することが出来ない。すなわち、特許文献１の方法においては、ＣＧ画像の描画処理時間が大きい場合であっても、無線伝送における遅延時間が小さい場合には、遅延時間を減少させることが出来ない。
【００１０】
本発明は、このような問題に鑑みてなされたものであり、画像の伝送遅延を低減可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述の問題点を解決するため、本発明に係る通信装置は以下の構成を備える。すなわち、他の通信装置と無線通信が可能な通信装置において、前記他の通信装置から、撮像画像を圧縮した圧縮撮像画像を無線通信によって受信する受信手段と、前記圧縮撮像画像を伸長し伸長撮像画像を取得する伸長手段と、前記伸長撮像画像に基づいて、前記撮像画像に重畳表示されるＣＧ画像を生成するＣＧ画像生成手段と、前記ＣＧ画像を圧縮し圧縮ＣＧ画像を生成する圧縮手段と、前記圧縮ＣＧ画像を前記他の通信装置に無線通信によって送信する送信手段と、前記他の通信装置における前記圧縮撮像画像の送信時刻と前記ＣＧ画像生成手段における前記ＣＧ画像の生成完了時刻とに基づく遅延時間を導出する導出手段と、前記導出手段によって導出された遅延時間が所定の閾値より長いか否かに基づいて、前記圧縮手段における前記ＣＧ画像の圧縮率を変更する変更手段と、を有する。
【発明の効果】
【００１２】
本発明によれば、画像の伝送遅延を低減可能とする技術を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態に係るＭＲシステムの構成図である。
【図２】第１実施形態におけるＨＭＤの動作を説明する図である。
【図３】第１実施形態におけるＰＣの動作を説明する図である。
【図４】第２及び第３実施形態に係るＭＲシステム構成図である。
【図５】第２実施形態におけるＨＭＤの動作を説明する図である。
【図６】第２実施形態におけるＰＣの動作を説明する図である。
【図７】第３実施形態におけるＨＭＤの動作を説明する図である。
【図８】第３実施形態におけるＰＣの動作を説明する図である。
【発明を実施するための形態】
【００１４】
以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１５】
（第１実施形態）
本発明に係る通信システムの第１実施形態として、ＨＭＤとＰＣを含むＭＲシステムを例に挙げて以下に説明する。
【００１６】
＜システム構成＞
図１は、第１実施形態に係るＭＲシステムの構成図である。ＭＲシステムは、利用者の頭部に装着する形態の撮像機能付表示装置であるビデオシースルー型のヘッドマウントディスプレイ（ＨＭＤ）１００と、撮像画像に重畳表示されるＣＧ画像を生成する画像処理装置であるＰＣ１０９とを含む。
【００１７】
ＨＭＤ１００とＰＣ１０９との間の通信は、ＨＭＤ１００の無線Ｉ／Ｆ部１０８とＰＣ１０９の無線Ｉ／Ｆ部１１６との間の無線通信を介して行われる。通信方式として例えば無線ＬＡＮ規格であるＩＥＥＥ８０２．１１ａｃやＩＥＥＥ８０２．１１ａｄが用いられるが、その他の通信方式が用いられても構わない。
【００１８】
まず、ＨＭＤ１００の構成について説明する。ＨＭＤ１００は、撮像部１０１、特徴点検出部１０２、圧縮部１０３、伸長部１０４、合成部１０５、表示部１０６、伝送時間取得部１０７、無線Ｉ／Ｆ部１０８を含んでいる。
【００１９】
撮像部１０１は、ＨＭＤ１００を装着したユーザーの視線と略一致する周辺環境の撮像を行う。特徴点検出部１０２は、撮像部１０１が取得した撮像画像における自然特徴点の検出を行う。特徴点検出技術としては、例えば、公知のＦＡＳＴ（Features from Accelerated Segment Test）を用いることが出来る。もちろん、特徴点画像の座標が検出できる方法であれば、他の任意の特徴点検出技術を用いても良い。
【００２０】
圧縮部１０３は、撮像部１０１が取得した撮像画像を圧縮処理し、圧縮撮像画像への変換を行う。圧縮方式としては、例えば、フレーム毎に非可逆圧縮を行うＪＰＥＧ（JOINT Photographic Experts Group）方式やＧＩＦ（Graphics Interchange Format）方式が用いられる。また、フレーム間の圧縮を併せて行うＨ．２６４方式なども用いられる。もちろん可逆圧縮方式を用いるよう構成してもよい。伸長部１０４は、無線Ｉ／Ｆ部１０８を介してＰＣ１０９から受信した圧縮ＣＧ画像を伸長し、ＣＧ画像を取得する。
【００２１】
合成部１０５は、撮像部１０１が撮像した撮像画像に、伸長部１０４が伸長処理したＣＧ画像を重畳し、合成画像であるＭＲ画像を生成する。表示部１０６は、合成部１０５が生成したＭＲ画像を、液晶ディスプレイ（ＬＣＤ）などに表示する。伝送時間取得部１０７は、無線Ｉ／Ｆ部１０８が圧縮撮像画像を送信する送信時刻（ＴＨ１）を決定する。
【００２２】
次に、ＰＣ１０９の構成について説明する。ＰＣ１０９は、伸長部１１０、特徴点取得部１１１、ＣＧ描画部１１２、圧縮部１１３、処理時間取得部１１４、伝送時間取得部１１５、無線Ｉ／Ｆ部１１６を含んでいる。
【００２３】
伸長部１１０は、無線Ｉ／Ｆ部１１６を介してＨＭＤ１００から受信した圧縮撮像画像の伸長を行い、ＨＭＤ１００の撮像部１０１が撮像した撮像画像と略一致する伸長撮像画像を取得する。特徴点取得部１１１は、無線Ｉ／Ｆ部１１６を介してＨＭＤ１００から受信した、撮像画像の特徴点の情報を取得する。つまり、この特徴点は、特徴点検出部１０２が検出した特徴点の情報である。
【００２４】
ＣＧ描画部１１２では、伸長部１１０が取得した撮像画像と、特徴点取得部１１１が取得した特徴点とに基づいて、ＣＧ画像生成を行う。詳細については後述するが、ＣＧ画像の描画解像度は、伝送時間取得部１１５が取得した伝送時間に基づいて制御される。
【００２５】
圧縮部１１３は、ＣＧ描画部１１２が生成したＣＧ画像を圧縮処理し、圧縮ＣＧ画像の生成を行う。詳細については後述するが、ＣＧ画像の圧縮率は、伝送時間取得部１１５が計測した圧縮撮像画像伝送時間、および処理時間取得部１１４が取得したＣＧ描画処理時間に基づいて制御される。
【００２６】
処理時間取得部１１４は、フレーム毎に、ＣＧ画像の描画処理を開始した時刻から完了した時刻までの、ＣＧ画像の描画処理に要した時間であるＣＧ描画処理時間（Ｄ２）を計測する。なお、ＣＧ画像の描画処理に要する時間は、ＣＧ画像のサイズ／ＣＧ画像の幾何学的形状／ＣＧ画像の解像度に依存して変化する。
【００２７】
伝送時間取得部１１５は、ＨＭＤ１００からＰＣ１０９への圧縮撮像画像の伝送に要した時間である圧縮撮像画像伝送時間（Ｄ１）の情報を取得する機能部である。なお、ここでは、ＨＭＤ１００とＰＣ１０９とはそれぞれタイマーを有しており、時刻が同期しているものとして説明する。時刻の同期方法としては、ＮＴＰ（Network Time Protocol）やＦＴＳＰ（Flooding Time Synchronization Protocol）などの公知の同期方式を用いるとよい。詳細については後述するが、伝送時間取得部１１５は、圧縮撮像画像伝送時間（Ｄ１）を、ＨＭＤ１００における圧縮撮像画像の送信時刻と、ＰＣ１０９における圧縮撮像画像の受信時刻に基づいて計測する。
【００２８】
尚、図１に示す各機能部（１０１〜１０８、１１０〜１１６）は、ハードウェア又はソフトウェアとして装置に実装される。機能部がソフトウェアとして実装される場合には、これらの機能を実行するためのプログラムが、ＨＭＤ１００又はＰＣ１０９が備える記憶部（ＲＯＭ，ＲＡＭ等のメモリ）に記憶されることになる。そして、ＨＭＤ１００又はＰＣ１０９が備えるＣＰＵが、記憶部に記憶されたプログラムを実行することにより、これらの機能部が提供する機能が実現されることになる。
【００２９】
＜システムの動作＞
図２は、第１実施形態におけるＨＭＤ１００の動作を説明する図である。また、図３は、第１実施形態におけるＰＣ１０９の動作を説明する図である。なお、以下の処理は、例えば、ユーザーにより開始指示を受け付けることにより開始される。
【００３０】
ステップＳ２０１では、撮像部１０１は、撮像を行い非圧縮の撮像画像を取得する。そして、ステップＳ２０２では、特徴点検出部１０２は、取得した撮像画像に対して特徴点検出を行い、当該撮像画像における特徴点を取得する。更に、ステップＳ２０３では、圧縮部１０３は、撮像画像の圧縮処理を行い、圧縮撮像画像を取得する。
【００３１】
ステップＳ２０４では、伝送時間取得部１０７は、ＨＭＤ１００がＰＣ１０９に圧縮撮像画像を送信する送信時刻（ＴＨ１）を決定する。そして、ステップＳ２０５では、無線Ｉ／Ｆ部１０８は、ＰＣ１０９に対して以下の情報を送信する。
・圧縮撮像画像
・特徴点
・現フレームの圧縮撮像画像の送信時刻（ＴＨ１）
・現フレームの１つ前のフレーム（以下、前フレームと呼ぶ）の撮像画像に対する圧縮ＣＧ画像の受信時刻（ＴＨ２）
なお、受信時刻（ＴＨ２）は、前フレームを処理した先行するループのＳ２０７で取得された情報である。
【００３２】
ステップＳ３０１では、無線Ｉ／Ｆ部１１６は、Ｓ２０５においてＨＭＤ１００から送信された、圧縮撮像画像・特徴点・送信時刻（ＴＨ１）・受信時刻（ＴＨ２）の各情報を受信する。
【００３３】
ステップＳ３０２では、伝送時間取得部１１５は、圧縮撮像画像の受信時刻（ＴＰ１）を取得する。ステップＳ３０３では、伝送時間取得部１１５は、圧縮撮像画像を受信完了した受信時刻（ＴＰ１）と、Ｓ３０２で取得した送信時刻（ＴＨ１）とに基づいて、圧縮撮像画像伝送時間（Ｄ１）を計測する。
【００３４】
ステップＳ３０４では、伝送時間取得部１１５は、前フレームにおける圧縮ＣＧ画像伝送時間（Ｄ３）を取得する。具体的には、前フレームにおいてＰＣ１０９が圧縮ＣＧ画像を送信した送信時刻（ＴＰ１）と、Ｓ３０１で伝送時間取得部１１５が取得した受信時刻（ＴＨ２）との差分に基づいて、圧縮ＣＧ画像伝送時間（Ｄ３）を導出する。
【００３５】
ステップＳ３０５では、圧縮部１１３は、ＣＧ画像圧縮率テーブルに含まれる「ＣＧ画像の圧縮率」と「圧縮ＣＧ画像伝送時間（Ｄ３）」の関係のレコードを追加・更新する。なお、ＣＧ画像圧縮率テーブルが存在しない場合は新規にテーブル生成を行う。ＣＧ画像圧縮率テーブルは、過去の複数フレームにおける「ＣＧ画像の圧縮率」と「圧縮ＣＧ画像伝送時間（Ｄ３）」の関係のレコードを保持するテーブルである。ＣＧ画像圧縮率テーブルを参照することで、圧縮率に対する圧縮ＣＧ画像伝送時間の推定が可能になる。
【００３６】
ステップＳ３０６では、伸長部１１０は、圧縮撮像画像を伸長処理し、ＨＭＤ１００の撮像部１０１が撮像した撮像画像と略一致する画像を取得する。ステップＳ３０７では、伝送時間取得部１１５は、現フレームにおける圧縮撮像画像伝送時間（Ｄ１）が所定の第１時間閾値よりも長いか否かを判定する。つまり、ＰＣ１０９が圧縮撮像画像を受信した時点での遅延時間が第１時間閾値をよりも長いか否かを判定する。なお、第１時間閾値については、例えば、無線ＭＲシステムにおける遅延時間が一定の範囲以内におさまっている状態（つまり正常状態）における圧縮撮像画像伝送時間（Ｄ１）の平均値に基づいて決定すると良い。
【００３７】
なお、圧縮撮像画像伝送時間（Ｄ１）の評価については、単一の閾値と比較しても良いし、複数の閾値と比較しても良い。複数の閾値と比較することで、遅延時間に応じたより細かい制御を行うことが可能となる。具体的には、後述するＳ３０９におけるＣＧ画像の描画解像度をより細かい単位で変更することができる。
【００３８】
なお、第１時間閾値については固定値ではなく適応的に変更しても良い。閾値を小さく設定することで許容される遅延時間は短くなるため、無線ＭＲシステムにおける遅延時間をより短くするよう制御することができる。また、閾値を大きく設定する場合、許容される遅延時間は長くなるが、ＣＧ画像の品質をより高品位に保つことができる。
【００３９】
Ｓ３０７において、現フレームにおける圧縮撮像画像伝送時間（Ｄ１）が第１時間閾値よりも長いと判定された場合はＳ３０８に進み、第１時間閾値以下と判定された場合はＳ３０９に進む。
【００４０】
ステップＳ３０８では、ＣＧ描画部１１２は、ＣＧ描画解像度テーブルからＣＧ画像の描画解像度を決定する。ここで、ＣＧ描画解像度テーブルは、過去の複数フレームにおける「ＣＧ画像の描画解像度」と「ＣＧ画像の描画処理時間」の関係のレコードを保持するテーブルである。つまり、ＣＧ描画解像度テーブルを参照することで、描画解像度に対応する描画処理時間の推定が可能になる。
【００４１】
なお、Ｓ３０８では、予め設定された通常の描画解像度よりも低い描画解像度を設定することになる。すなわち、圧縮撮像画像伝送時間（Ｄ１）が第１時間閾値より長かった場合、予め設定された通常の描画解像度でＣＧ画像の描画を行うと、無線ＭＲシステム全体での遅延時間が大きくなる可能性がある。そこで、ＣＧ画像の描画解像度を落とすことで、ＣＧ画像の描画処理にかかる時間を減少させ、無線ＭＲシステム全体での遅延時間を減少させるのである。
【００４２】
ステップＳ３０９では、ＣＧ描画部１１２は、現フレームの撮像画像に対するＣＧ画像の描画処理を実行する。上述したように、圧縮撮像画像伝送時間（Ｄ１）が第１時間閾値以下と判定された場合は、予め設定された通常の描画解像度でＣＧ画像を描画する。一方、圧縮撮像画像伝送時間（Ｄ１）が第１時間閾値より長いと判定された場合は、より低い描画解像度でＣＧ画像を描画する。
【００４３】
ステップＳ３１０では、処理時間取得部１１４は、ＣＧ画像の生成完了時刻である処理終了時刻（ＴＰ２）を取得する。ステップＳ３１１では、処理時間取得部１１４は、Ｓ３０２で取得した受信時刻（ＴＰ１）と、Ｓ３１０で取得した処理終了時刻（ＴＰ２）の差分に基づいて、ＣＧ描画処理時間（Ｄ２）を取得する。
【００４４】
ステップＳ３１２では、取得したＣＧ描画処理時間（Ｄ２）を用いて、ＣＧ描画解像度テーブル中の「ＣＧ画像の描画解像度」と「ＣＧ画像の描画処理時間」の関係のレコードを更新する。
【００４５】
ステップＳ３１３では、圧縮部１１３は、圧縮撮像画像伝送時間（Ｄ１）とＣＧ描画処理時間（Ｄ２）の合計値、つまりＣＧ画像の描画処理が完了した時点での遅延時間を取得する。そして、現在の遅延時間（Ｄ１＋Ｄ２）が所定の第２時間閾値よりも長いか否かを判定する。Ｓ３１３において、現在の遅延時間（Ｄ１＋Ｄ２）が第２時間閾値よりも長いと判定された場合はＳ３１４に進み、第２時間閾値以下と判定された場合はＳ３１５に進む。
【００４６】
ステップＳ３１４では、圧縮部１１３は、ＣＧ画像圧縮率テーブルからＣＧ画像の圧縮率を決定する。なお、Ｓ３１４では、予め設定された通常の圧縮率よりも高い圧縮率を設定することになる。すなわち、現在の遅延時間（Ｄ１＋Ｄ２）が第２時間閾値より長かった場合、予め設定された通常の圧縮率でＣＧ画像の圧縮を行うと、無線ＭＲシステム全体での遅延時間が大きくなる可能性がある。そこで、ＣＧ画像の圧縮率を高くすることで圧縮ＣＧ画像のデータ量を低減し、圧縮ＣＧ画像の伝送時間を減少させ、無線ＭＲシステム全体での遅延時間を減少させるのである。
【００４７】
ステップＳ３１５では、圧縮部１１３は、現フレームの撮像画像に対するＣＧ画像の圧縮処理を実行する。上述したように、遅延時間（Ｄ１＋Ｄ２）が第２時間閾値以下と判定された場合は、予め設定された通常の圧縮率でＣＧ画像を圧縮する。一方、遅延時間（Ｄ１＋Ｄ２）が第２時間閾値より長いと判定された場合は、後続の撮像画像に対して生成されるＣＧ画像を、より高い圧縮率で圧縮する。  ステップＳ３１６では、無線Ｉ／Ｆ部１１６は、圧縮ＣＧ画像をＨＭＤ１００に送信する。
【００４８】
ステップＳ２０６では、無線Ｉ／Ｆ部１０８は、圧縮ＣＧ画像をＰＣ１０９から受信する。ステップＳ２０７では、伝送時間取得部１０７は、Ｓ２０６で圧縮ＣＧ画像を受信した時刻（ＴＨ２）を取得する。なお、Ｓ２０７で伝送時間取得部１０７が取得したＨＭＤ受信時刻（ＴＨ２）は、次フレームにおける処理においてＰＣ１０９に伝送され、ＰＣ１０９が圧縮ＣＧ画像伝送時間（Ｄ３）を取得するのに用いられる。
【００４９】
ステップＳ２０８では、伸長部１０４は、圧縮ＣＧ画像を伸長処理し、Ｓ３０９でＰＣ１０９が生成したＣＧ画像を取得する。ステップＳ２０９では、合成部１０５は、Ｓ２０１で撮像部１０１が取得した撮像画像と、Ｓ２０８で伸長部１０４が取得したＣＧ画像を合成・重畳し、ＭＲ画像を取得する。ステップＳ２１０では、表示部１０６は、Ｓ２０９で合成部１０５が取得したＭＲ画像をディスプレイに表示する。
【００５０】
以上説明したとおり第１実施形態によれば、圧縮撮像画像の伝送に要した圧縮撮像画像伝送時間（Ｄ１）及びＣＧ描画処理時間（Ｄ２）に基づいて、ＣＧ画像の圧縮率および描画解像度の少なくとも一方を適応的に変更する。この変更制御により、無線ＭＲシステムにおける遅延時間を一定の範囲以内に保ちつつ、良好な画像を提供することが可能となる。すなわち、電波伝搬環境の変動やＣＧ画像のサイズや幾何学的形状の変化に依存せずに、遅延時間を一定の範囲内に維持することが可能となる。
【００５１】
（第２実施形態）
第２実施形態では、さらに、システム遅延時間（前フレームでの圧縮撮像画像の伝送遅延・ＣＧ画像の描画遅延・圧縮ＣＧ画像の伝送遅延の合計）に基づいて、遅延時間の低減を行う構成について説明する。
【００５２】
＜システム構成＞
図４は、第２実施形態に係るＭＲシステム構成図である。第１実施形態におけるＨＭＤ１００に対して、ＨＭＤ４００は、システム遅延時間取得部４０９を更に備える。システム遅延時間取得部４０９は、ＨＭＤ４００が圧縮撮像画像を送信してから、ＨＭＤ４００が圧縮ＣＧ画像を受信するまでに要した時間であるシステム遅延時間を計測する。なお、撮像部４０１による撮像から圧縮ＣＧ画像を受信するまでに要した時間を計測するよう構成してもよい。また、ＰＣ４１０の構成は第１実施形態と同様であるため、説明は省略する。
【００５３】
＜システムの動作＞
図５は、第２実施形態におけるＨＭＤ４００の動作を説明する図である。また、図６は、第２実施形態におけるＰＣ４１０の動作を説明する図である。なお、図６は、Ｓ６１６において、無線Ｉ／Ｆ部６１６が、圧縮ＣＧ画像に加え、圧縮撮像画像伝送時間（Ｄ１）を伝送する点以外は、第１実施形態（図３）と同様であるため説明は省略する。
【００５４】
ステップＳ５０１では、撮像部４０１は、撮像を行い非圧縮の撮像画像を取得する。そして、ステップＳ５０２では、特徴点検出部４０２は、取得した撮像画像に対して特徴点検出を行い、当該撮像画像における特徴点を取得する。
【００５５】
ステップＳ５０３では、システム遅延時間取得部４０９は、前フレームにおける、システム遅延時間と所定の第３時間閾値を比較する。上述したように、システム遅延時間とは、ＨＭＤ４００が圧縮撮像画像を送信した送信時刻から、ＨＭＤ４００がＣＧ画像を受信した受信時刻までに要した時間である。Ｓ５０３で、システム遅延時間が第３時間閾値より長いと判定された場合はＳ５０４に進み、圧縮率の変更を行う。一方、システム遅延時間が第３時間閾値以下と判定された場合はＳ５０６に進む。
【００５６】
すなわち、システム遅延時間が大きいということは、電波伝搬環境が悪化したことによる無線伝送速度の低下や、ＣＧ画像の形状・サイズの変化による伝送データ量増加を意味している。
【００５７】
ステップＳ５０４では、圧縮部４０３は、撮像画像圧縮率テーブルに基づいて、予め設定された通常の圧縮率よりも高い圧縮率を設定する。撮像画像の圧縮率を高く変更し、圧縮撮像画像のデータ量を低減することで、圧縮撮像画像の伝送に要する時間を低減し、システム遅延時間の低減を実現する。
【００５８】
なお、撮像画像圧縮率テーブルは、過去の複数フレームにおける「撮像画像の圧縮率」と「圧縮撮像画像伝送時間（Ｄ１）」を保持する。撮像画像圧縮率テーブルを参照することで、圧縮率に対する圧縮撮像画像の伝送時間の推定が可能になる。
【００５９】
ステップＳ５０５では、圧縮部４０３は、Ｓ５０２で特徴点検出部４０２が検出した特徴点の一部を削除することで、伝送データ量の低減、すなわちシステム遅延時間の低減に寄与するように動作する。ＦＡＳＴなどの特徴点検出技術で取得した特徴点では、輝度差に基づいたスコアを付与することが可能である。そこで、特徴点の削除については、このスコアの低い特徴点を削除する方法を利用することが出来る。
【００６０】
ステップＳ５０６では、圧縮部４０３は、撮像画像の圧縮処理を行い、圧縮撮像画像を取得する。ステップＳ５０７では、伝送時間取得部４０７は、ＨＭＤ４００が圧縮撮像画像を送信する送信時刻（ＴＨ１）を決定する。そして、ステップＳ５０８では、無線Ｉ／Ｆ部４０８は、ＰＣ４１０に対して以下の情報を送信する。
・圧縮撮像画像
・特徴点
・現フレームの圧縮撮像画像の送信時刻（ＴＨ１）
・現フレームの１つ前のフレーム（以下、前フレームと呼ぶ）の撮像画像に対する圧縮ＣＧ画像の受信時刻（ＴＨ２）
なお、受信時刻（ＴＨ２）は、前フレームを処理した先行するループのＳ５１１で取得された情報である。
【００６１】
ＰＣ４１０における動作は、Ｓ６１６で無線Ｉ／Ｆ部６１６が圧縮ＣＧ画像に加え、圧縮撮像画像伝送時間（Ｄ１）を伝送する点以外は、第１実施形態における動作と同一であるため、説明は省略する。
【００６２】
ステップＳ５０９では、無線Ｉ／Ｆ部４０８は、ＰＣ４１０から圧縮ＣＧ画像および圧縮撮像画像伝送時間（Ｄ１）を受信する。ステップＳ５１０では、取得した圧縮撮像画像伝送時間（Ｄ１）を用いて、撮像画像圧縮率テーブル中の「撮像画像の圧縮率」と「圧縮撮像画像伝送時間（Ｄ１）」の関係のレコードを追加・更新する。
【００６３】
撮像画像圧縮率テーブルは、過去の複数フレームにおける「撮像画像の圧縮率」と「圧縮撮像画像伝送時間（Ｄ１）」の関係のレコードを保持するテーブルである。撮像画像圧縮率テーブルを参照することで、圧縮率に対する圧縮撮像画像伝送時間の推定が可能になる。
【００６４】
ステップＳ５１１では、伝送時間取得部４０７は、Ｓ５０９で圧縮ＣＧ画像および圧縮撮像画像伝送時間（Ｄ１）を受信した受信時刻（ＴＨ２）を取得する。ステップＳ５１２では、Ｓ５１１で取得した受信時刻（ＴＨ２）と、Ｓ５０７で取得した送信時刻（ＴＨ１）に基づいて、システム遅延時間を取得する。
【００６５】
ステップＳ５１３では、伸長部４０４は、圧縮ＣＧ画像を伸長処理し、Ｓ６０９でＰＣ４１０が生成したＣＧ画像を取得する。ステップＳ５１４では、合成部４０５は、Ｓ５０１で撮像部４０１が取得した撮像画像と、Ｓ５１３で伸長部４０４が取得したＣＧ画像を合成・重畳し、ＭＲ画像を取得する。ステップＳ５１５では、表示部４０６は、Ｓ５１４で合成部４０５が取得したＭＲ画像をディスプレイに表示する。
【００６６】
以上説明したとおり第２実施形態によれば、第１実施形態の構成に加え、システム遅延時間に基づいて、撮像画像の圧縮率を適応的に変更する。この変更制御により、無線ＭＲシステムにおける遅延時間を一定の範囲以内に保ちつつ、良好な画像を提供することが可能となる。
【００６７】
（第３実施形態）
第３実施形態では、さらに、システム遅延時間に基づいて、ＨＭＤが各種遅延を低減する他の構成について説明する。ＨＭＤ４００およびＰＣ４１０の構成は第２実施形態と同様のため説明は省略する。
【００６８】
＜システムの動作＞
図７は、第３実施形態におけるＨＭＤ４００の動作を説明する図である。また、図８は、第３実施形態におけるＰＣ４１０の動作を説明する図である。
【００６９】
ステップＳ７０１では、撮像部４０１は、撮像画像を取得する。ステップＳ７０２では、特徴点検出部４０２は、特徴点の検出を行う。ステップＳ７０３では、システム遅延時間取得部４０９は、前フレームにおける、システム遅延時間と所定の第４閾値を比較する。上述したように、システム遅延時間とは、ＨＭＤ４００が圧縮撮像画像を送信した送信時刻から、ＨＭＤ４００がＣＧ画像を受信した受信時刻までに要した時間である。Ｓ７０３で、システム遅延時間が第４閾値より長いと判定された場合はＳ７０４に進み、システム遅延時間が第４閾値以下と判定された場合はＳ７０９に進む。
【００７０】
ステップＳ７０４では、圧縮部４０３は、撮像画像の圧縮率を変更する。まず、システム遅延時間取得部４０９が、圧縮撮像画像の伝送許容時間を、例えば以下のようにして算出する。
【００７１】
圧縮撮像画像の伝送許容時間＝システム許容遅延時間−（前フレームにおけるＣＧ描画処理時間（Ｄ２）＋前フレームにおける圧縮ＣＧ画像伝送時間（Ｄ３））
ここで、システム許容遅延時間とは、例えば、ＨＭＤが撮像画像を取得してからＭＲ画像を表示するまでの時間である。システム許容遅延時間を短く設定することで少ない遅延時間になるように制御することが出来る。一方、システム許容遅延時間を長く設定することで画像品質を高品質に保ったまま動作するよう制御することが出来る。また、前フレームにおけるＣＧ描画処理時間（Ｄ２）および圧縮ＣＧ画像伝送時間（Ｄ３）が大きければ大きいほど、圧縮撮像画像伝送時間（Ｄ１）を低減するよう制御することになる。
【００７２】
次に、システム遅延時間取得部４０９が、圧縮撮像画像の伝送許容時間に収まるように、撮像画像圧縮率テーブルを参照して、撮像画像の圧縮率を決定する。なお、圧縮率を最大値に設定しても圧縮撮像画像の伝送許容時間以内におさまらない場合は、撮像画像の圧縮率を設定可能な最大値に設定するとよい。
【００７３】
撮像画像の圧縮率を高く変更することで、圧縮撮像画像のデータ量が低減され、圧縮撮像画像伝送時間（Ｄ１）を低減することができる。ただし、その場合、ＰＣ４１０において伸長処理して取得される撮像画像の画質はより劣化することになる。例えば、ＪＰＥＧ方式においては、高圧縮率で圧縮処理をした場合、画像の境界で連続性が失われるブロックノイズや、高周波成分を除去することで生じるモスキートノイズなどが生じることになる。そのため、圧縮処理における圧縮率の最大値はＰＣおよびＭＲシステムで要求する撮像画像の画像品質に依存して決定するとよい。
【００７４】
ステップＳ７０５では、システム遅延時間取得部４０９は、Ｓ７０４にて撮像画像の圧縮率を変更した場合のシステム遅延時間を導出する。すなわち、圧縮率変更後の圧縮撮像画像伝送時間（Ｄ１）、前フレームにおけるＣＧ描画処理時間（Ｄ２）、前フレームにおける圧縮ＣＧ画像伝送時間（Ｄ３）に基づいて導出する。なお、圧縮率変更後の撮像画像伝送時間（Ｄ１）は、撮像画像圧縮率テーブルを参照して推定するとよい。Ｓ７０５で、導出されたシステム遅延時間が第４閾値より長いと判定された場合はＳ７０６に進み、システム遅延時間が第４閾値以下と判定された場合はＳ７０９に進む。
【００７５】
ステップＳ７０６では、ＨＭＤ４００は、ＰＣ４１０において生成されるＣＧ画像の圧縮率を変更する。まず、システム遅延時間取得部４０９が、圧縮ＣＧ画像の伝送許容時間を、例えば以下のようにして算出する。
【００７６】
圧縮ＣＧ画像の伝送許容時間＝システム許容遅延時間−（前フレームにおけるＣＧ描画処理時間（Ｄ２）＋変更した圧縮率での圧縮撮像画像伝送時間（Ｄ１））
次に、システム遅延時間取得部４０９が、圧縮ＣＧ画像の伝送許容時間におさまるように、ＣＧ画像圧縮率テーブルを参照して撮像画像の圧縮率を決定する。圧縮撮像画像の場合と同様に、圧縮率を最大値に設定しても、圧縮ＣＧ画像の伝送許容時間以内におさまらない場合は、ＣＧ画像の圧縮率を設定可能な最大値に設定する。
【００７７】
ステップＳ７０７では、システム遅延時間取得部４０９は、Ｓ７０６にてＣＧ画像の圧縮率を変更した場合のシステム遅延時間を導出する。すなわち、圧縮率変更後の圧縮撮像画像伝送時間（Ｄ１）、前フレームにおけるＣＧ描画処理時間（Ｄ２）、圧縮率変更後の圧縮ＣＧ画像伝送時間（Ｄ３）に基づいて導出する。なお、圧縮率変更後のＣＧ画像伝送時間（Ｄ３）は、ＣＧ画像圧縮率テーブルを参照して推定するとよい。Ｓ７０７で、導出されたシステム遅延時間が第４閾値より長いと判定された場合はＳ７０８に進み、システム遅延時間が第４閾値以下と判定された場合はＳ７０９に進む。
【００７８】
ステップＳ７０８では、ＨＭＤ４００は、ＰＣ４１０において生成されるＣＧ画像の描画解像度を変更する。まず、システム遅延時間取得部４０９が、ＣＧ描画処理の許容時間を、例えば以下のようにして算出する。
【００７９】
ＣＧ描画処理の許容時間＝システム許容遅延時間−（変更した圧縮率での圧縮撮像画像伝送時間（Ｄ１）＋変更した圧縮率での圧縮ＣＧ画像伝送時間（Ｄ３））
そして、システム遅延時間取得部４０９が、ＣＧ描画処理の許容時間におさまるように、ＣＧ描画処理解像度テーブルを参照して、ＣＧ画像の描画解像度を決定する。
【００８０】
ステップＳ７０９では、圧縮部４０３は、撮像画像の圧縮処理を行い、圧縮撮像画像を取得する。
【００８１】
ステップＳ７１０では、伝送時間取得部４０７は、圧縮撮像画像・ＣＧ画像圧縮率・ＣＧ描画解像度の各情報を送信する時刻（ＴＨ１）を決定する。そして、ステップＳ７１１では、無線Ｉ／Ｆ部４０８は、圧縮撮像画像・ＣＧ画像圧縮率・ＣＧ描画解像度・特徴点を送信する。
【００８２】
ステップＳ８０１では、無線Ｉ／Ｆ部４１７は、圧縮撮像画像・ＣＧ画像圧縮率・ＣＧ描画解像度・特徴点を受信する。ステップＳ８０２では、伝送時間取得部４１６は、Ｓ８０１で各種情報を受信した受信時刻（ＴＰ１）を取得する。
【００８３】
ステップＳ８０３では、伸長部４１１は、圧縮撮像画像を伸長処理し、Ｓ７０１でＨＭＤ４００が撮像した撮像画像を取得する。ステップＳ８０４では、ＣＧ描画部４１３は、Ｓ８０１でＰＣ４１０が受信した、ＨＭＤ４００が決定した描画解像度に基づいてＣＧ画像の描画処理を行う。
【００８４】
ステップＳ８０５では、処理時間取得部４１５は、ＣＧ描画が完了した処理終了時刻（ＴＰ２）を取得する。ステップＳ８０６では、圧縮部４１４は、Ｓ８０１でＰＣ４１０が受信した、ＨＭＤ４００が決定したＣＧ画像圧縮率に基づいてＣＧ画像の圧縮処理を行う。
【００８５】
ステップＳ８０７では、伝送時間取得部４１６は、圧縮ＣＧ画像・受信時刻（ＴＰ１）・処理終了時刻（ＴＰ２）を送信する送信時刻（ＴＰ３）を取得する。ステップＳ８０８では、無線Ｉ／Ｆ部４１７は、ＨＭＤ４００に対して以下の情報を送信する。
・圧縮ＣＧ画像
・受信時刻（ＴＰ１）
・処理終了時刻（ＴＰ２）
・送信時刻（ＴＰ３）
【００８６】
ステップＳ７１２では、無線Ｉ／Ｆ部４０８は、ＰＣ４１０から、圧縮ＣＧ画像・受信時刻（ＴＰ１）・処理終了時刻（ＴＰ２）・送信時刻（ＴＰ３）を受信する。ステップＳ７１３では、伝送時間取得部４０７は、Ｓ７１２で各種情報を受信した受信時刻（ＴＨ２）を取得する。
【００８７】
ステップＳ７１４〜Ｓ７１６では、撮像画像圧縮率テーブル・ＣＧ画像圧縮率テーブル・ＣＧ描画解像度テーブルの更新を行う。すなわち、ＨＭＤ４００、ＰＣ４１０それぞれの無線送信・無線受信時刻およびＰＣ４１０におけるＣＧ描画処理時間に基づいて各テーブルを更新する。
【００８８】
ステップＳ７１７では、伸長部４０４は、圧縮ＣＧ画像を伸長処理し、Ｓ８０５でＰＣ４１０が生成したＣＧ画像を取得する。ステップＳ７１８では、合成部４０５は、Ｓ７０１で撮像部４０１が取得した撮像画像と、Ｓ７１７で伸長部４０４が取得したＣＧ画像を合成・重畳し、ＭＲ画像を取得する。ステップＳ７１９では、表示部４０６は、Ｓ７１８で合成部４０５が取得したＭＲ画像をディスプレイに表示する。
【００８９】
以上説明したとおり第３実施形態によれば、システム遅延時間に基づいて、撮像画像の圧縮率、ＣＧ画像の圧縮率、ＣＧ画像の描画解像度の順に適応的に変更する。この変更制御により、ＣＧ描画の解像度を優先的に一定の品質以上に保ったまま、システム全体の遅延時間を減らすことが可能となる。
【００９０】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００９１】
１００  ＨＭＤ；  １０１  撮像部；  １０２  特徴点検出部；  １０３  圧縮部；  １０４  伸長部；  １０５  合成部；  １０６  表示部；  １０７  伝送時間取得部；  １０８  無線Ｉ／Ｆ部；  １０９  ＰＣ；  １１０  伸長部；  １１１  特徴点取得部；  １１２  ＣＧ描画部；  １１３  圧縮部；  １１４  処理時間取得部；  １１５  伝送時間取得部；  １１６  無線Ｉ／Ｆ部
【図１】
0006494439.tif 000002
【図２】
0006494439.tif 000003
【図３】
0006494439.tif 000004
【図４】
0006494439.tif 000005
【図５】
0006494439.tif 000006
【図６】
0006494439.tif 000007
【図７】
0006494439.tif 000008
【図８】
0006494439.tif 000009