JP2023028300A - 画像処理装置、画像処理方法およびプログラム - Google Patents
画像処理装置、画像処理方法およびプログラム Download PDFInfo
- Publication number
- JP2023028300A JP2023028300A JP2021133923A JP2021133923A JP2023028300A JP 2023028300 A JP2023028300 A JP 2023028300A JP 2021133923 A JP2021133923 A JP 2021133923A JP 2021133923 A JP2021133923 A JP 2021133923A JP 2023028300 A JP2023028300 A JP 2023028300A
- Authority
- JP
- Japan
- Prior art keywords
- image processing
- virtual object
- image
- user
- processing apparatus
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims description 4
- 239000002131 composite material Substances 0.000 claims abstract description 6
- 230000009471 action Effects 0.000 claims description 10
- 230000000007 visual effect Effects 0.000 abstract description 4
- 238000001514 detection method Methods 0.000 abstract description 3
- 230000001771 impaired effect Effects 0.000 abstract 1
- 230000008707 rearrangement Effects 0.000 description 74
- 238000000034 method Methods 0.000 description 42
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/507—Depth or shape recovery from shading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Architecture (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】現実世界に仮想物体を重畳した複合世界を体験する際に、現実世界における危機察知の機会損失を防止しつつ、複合世界での視覚効果を損なわないようにする。【解決手段】使用者が前方に歩行している際には、危険回避のために使用者の視線を上方に上げる目的で、仮想物体を画面上部へ再配置し、階段を下りるなど使用者が前方かつ下降移動している際には、危険回避のために使用者の視線を下方に下げる目的で、仮想物体を画面下部へ再配置する。【選択図】図1
Description
本発明は、画像処理装置、画像処理方法およびプログラムに関する。
近年、拡張現実(AR)や複合現実(MR)に代表されるような、現実世界と仮想物体とを併せ持った環境で複合世界を提供する技術が発展している。例えば、使用者の頭部にヘッドマウントディスプレイ(HMD)を装着することによって、眼前の現実世界のビデオ画像に仮想物体を重畳した複合世界を使用者に提供することができる。さらに、各種センサにより使用者の動作をとらえ、複合世界内での動作と同期させることもでき、これまでにない体験を使用者に提供することができる。
使用者が複合世界をあたかも現実世界のように自由に動き回ることで没入感が向上する一方で、現実世界に対する注意がおろそかになる可能性があり、危険な場合には仮想物体への注目度を低下させることが肝要である。状況に応じて仮想物体への注目度を低下させる技術として、特許文献1には、使用者の停止中および移動中を推測し、移動中に重畳画像の透明度を変更する技術が開示されている。
前述したように、仮想物体に熱中してしまい、現実世界の危険を察知できずに事故を起こしてしまう場合がある。例えば、うつむいた姿勢で画面に表示される仮想物体に視線を向けているために、正面から来た車の存在に気が付かないことがある。特許文献1に記載の技術では、仮想物体の透明度を上げても仮想物体を注視してしまう可能性があり、危機察知の機会を喪失してしまう場合がある。
本発明は前述の問題点に鑑み、現実世界に仮想物体を重畳した複合世界を体験する際に、現実世界における危機察知の機会損失を防止しつつ、複合世界での視覚効果を損なわないようにすることを目的としている。
本発明に係る画像処理装置は、現実世界の画像に仮想物体を重畳して複合世界の画像を生成する画像処理装置であって、前記画像処理装置の使用者の動作状況に係る情報を取得する取得手段と、前記取得手段によって取得された動作状況に基づいて、前記現実世界の画像における前記仮想物体を配置する位置を決定する決定手段と、前記決定手段によって決定された位置に前記仮想物体を配置した画像を生成する画像処理手段と、を備え、前記決定手段は、前記仮想物体を配置する位置を前記使用者が移動する方向に応じた位置に決定することを特徴とする。
本発明によれば、現実世界に仮想物体を重畳した複合世界を体験する際に、現実世界における危機察知の機会損失を防止しつつ、複合世界での視覚効果を損なわないようにすることができる。
(第1の実施形態)
以下、本発明の実施形態について、図面を参照しながら説明する。
図1は、本実施形態における画像処理装置が表示する画像の例を示す図である。図1において、画像101は使用者が停止している際の画像例である。画像101内には、仮想物体103、仮想物体104、仮想物体105がそれぞれ複合世界を提供するためにアプリケーションが要求する座標に重畳されている。一方で画像102は、HMD装置装着者(使用者)が前方に歩行している際の画像例である。使用者が歩行を開始すると、仮想物体103、仮想物体104、仮想物体105はそれぞれ所定の座標に再配置される。
以下、本発明の実施形態について、図面を参照しながら説明する。
図1は、本実施形態における画像処理装置が表示する画像の例を示す図である。図1において、画像101は使用者が停止している際の画像例である。画像101内には、仮想物体103、仮想物体104、仮想物体105がそれぞれ複合世界を提供するためにアプリケーションが要求する座標に重畳されている。一方で画像102は、HMD装置装着者(使用者)が前方に歩行している際の画像例である。使用者が歩行を開始すると、仮想物体103、仮想物体104、仮想物体105はそれぞれ所定の座標に再配置される。
その際、複数の描画フレームに亘って再配置が行われ、画像101で示される座標から使用者が前方に歩行している際の画像102で示す座標へ仮想物体が徐々に移動するように視覚効果を伴って表示される。本実施形態では前方に歩行している際に、危険回避のために使用者の視線を上方に上げる目的で、仮想物体を画面上部へ再配置する。
本実施形態では、仮想物体が再配置のために移動を開始するとともに、仮想物体の大きさ、仮想物体間の重なり具合に対する表示方法、ポリゴンモデル、テクスチャの影やライティングの描画方法が変更される。本実施形態の説明では、図1以降を含めて次のように各仮想物体の描画方法を変更する。仮想物体の大きさは、仮想物体103は表示されていた時の半分の大きさになり、仮想物体104は仮想物体104の持つ本来の大きさ(2倍)になる例を示す。仮想物体の重なり具合に対する表示方法は、手前から仮想物体105、仮想物体104、仮想物体103の順になる例を示す。ポリゴンモデルは、仮想物体103は低品質、仮想物体104は高品質、仮想物体105は変更しない例を示す。テクスチャの影およびライティングの描画方法は、仮想物体103、仮想物体104は省略し、仮想物体105には施す例を示す。
また、画像106は使用者が階段を下りている際の画像例である。本実施形態では階段を下りるなど使用者が前方かつ下降移動している際に、危険回避のために使用者の視線を下方に下げる目的で、仮想物体を画面下部へ再配置する。仮想物体の大きさの変更や、重なり具合に対する表示方法は使用者が前方に歩行している際の画像102と同様である。本実施形態では、使用者の状況が停止中、前方に歩行している際、および階段を下りている際で画像に表示されるフレームレートが変更される。停止中に高品質、その他の動作状況では低品質にする。例えば、停止中は120fps(frame per second)、その他の動作状況では30fpsになる。
上記設定は本実施形態での一例であり、この設定とは異なった設定/初期値が付与されていてもよい。図1に示した例のような、仮想物体を再配置座標する座標はその限りではなく、図1と異なってもよい。また、使用者が前方に歩行している際の画像102を示したが、仮想物体を再配置する使用者の行動はその他の行動をきっかけにしてもよい。例えば、画面前方、後方、左方、右方、上昇、下降、といった方向への移動の種類に応じて、再配置する座標を変化させることが可能である。
図2は、図1の画像を出力する画像処理装置200のハードウェア構成例を示すブロック図である。CPU201はプロセッサ、ROM202はリードオンリメモリ、RAM203はランダムアクセスメモリ、I/F204は外部インタフェースを示している。
本実施形態の画像処理装置200は、CPU201、ROM202、RAM203、I/F204を有し、それぞれはバス205で接続されている。画像処理装置200の動作はCPU201の制御により行われ、ROM202やRAM203にロードしたプログラムによって後述するフローチャートの処理が実現される。RAM203はさらに、CPU201にて行う処理の一時的なデータを格納するワークメモリとしても利用され、表示する画像データを一時的に保持する画像バッファとしても機能する。I/F204は外部との通信するインタフェースであり、現実世界の画像データの入力や、使用者の状況を判断するためのデータが入力され、表示する画像データを出力する。
本実施形態の画像処理装置200は、CPU201、ROM202、RAM203、I/F204を有し、それぞれはバス205で接続されている。画像処理装置200の動作はCPU201の制御により行われ、ROM202やRAM203にロードしたプログラムによって後述するフローチャートの処理が実現される。RAM203はさらに、CPU201にて行う処理の一時的なデータを格納するワークメモリとしても利用され、表示する画像データを一時的に保持する画像バッファとしても機能する。I/F204は外部との通信するインタフェースであり、現実世界の画像データの入力や、使用者の状況を判断するためのデータが入力され、表示する画像データを出力する。
図2にはCPUを1つのみ図示したが、複数のプロセッサで画像処理装置を実現してもよい。また、グラフィックプロセッシングユニット(GPU)のような補足的な構成が含まれていてもよい。さらには、一時的なワークメモリを保持する構成としてRAM203のみを示したが、同一あるいは異なる媒体で二次、三次の記憶領域を設けてもよい。その他の媒体としては、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)などが考えられる。バス205の構成についてもこの限りではなく、多段にして構成要素を接続してもよい。本実施形態を実現するうえで、図2の構成をHMDに具備する。ただし、その限りではなく、図2の構成要素である一部または全部を、HMDとは別途、有線あるいは無線で接続された装置を設けてもよい。
図3は、画像処理装置200の機能構成例を示すブロック図である。
図3において、情報入力部301は、I/F204から入力された使用者の動作状況を判断するための状況データを受信し、動作状況データ302を更新する。ここで状況データとは、HMDに備えられた各種センサ等から得られるデータであり、使用者の現在位置、移動速度、向きなどの情報を含んでいる。再配置判断部303は、動作状況データ302を用いて仮想物体を再配置すべきか否かを判断し、さらに再配置すべきと判断した場合に、再配置のための情報を再配置データ305として保持する。画像処理部304は、その再配置データ305を用いて毎フレームの画像を作成し、表示部306に出力する。毎フレームの画像を生成する際に、画像処理部304は、HMDに装着されたカメラからI/F204を介して現実世界の画像データを取得し、再配置データ305に基づいた仮想物体を重畳する。これにより、図1に示した画像例を使用者が視覚できるようにする。
図3において、情報入力部301は、I/F204から入力された使用者の動作状況を判断するための状況データを受信し、動作状況データ302を更新する。ここで状況データとは、HMDに備えられた各種センサ等から得られるデータであり、使用者の現在位置、移動速度、向きなどの情報を含んでいる。再配置判断部303は、動作状況データ302を用いて仮想物体を再配置すべきか否かを判断し、さらに再配置すべきと判断した場合に、再配置のための情報を再配置データ305として保持する。画像処理部304は、その再配置データ305を用いて毎フレームの画像を作成し、表示部306に出力する。毎フレームの画像を生成する際に、画像処理部304は、HMDに装着されたカメラからI/F204を介して現実世界の画像データを取得し、再配置データ305に基づいた仮想物体を重畳する。これにより、図1に示した画像例を使用者が視覚できるようにする。
図4は、動作状況データ302の一例を示す図である。本実施形態では、前述したように、情報入力部301がI/F204を介して使用者の状況データを受け取り、状況データに基づいて動作状況データ302を更新し、保持する。図4に示すように、動作状況データ302は、使用者の動作状況、速度、進行方向および頭部角度の情報が含まれる。
「動作状況」は、停止中、歩行中、下降中のいずれかの情報を示すものである。なお、画面前方、後方、左方、右方、上昇、下降、といった情報の一部あるいは全部を用いるようにしてもよい。あるいは、下降中については後述の「進行方向」から情報を得るようにして、動作状況には何も情報を保持しないようにしてもよい。「速度」は、使用者の移動の速度を示すものである。「進行方向」は、使用者の進行方向のベクトルを示すものである。「頭部角度」は、使用者の頭部の方向のベクトルを示すものである。また、図4に示した例では、動作状況データ302に「速度」の情報を保持するようにしたが、別の情報形態で保持してもよい。例えば、加速度を項目として保持するようにしてもよいし、あるいは進行方向のベクトルに長さの概念を付加して、時間当たりの移動量などの情報を保持してもよい。
図5は、再配置データ305の例を示す図である。再配置判断部303は、仮想物体103、仮想物体104、仮想物体105のそれぞれについて再配置データ305を保持している。
図5において、「再配置前座標」は複合世界を提供する上でアプリケーションが出力を要求する座標を示している。例えば図1における使用者が停止している際の画像101における仮想物体103、仮想物体104、仮想物体105の座標を示す。
「再配置時サイズ」は、再配置時の仮想物体の大きさを示している。例えば図1における仮想物体103の場合、0.5倍と規定される。なお、サイズ変更する際に縦横の比率が異なるように規定してもよい。
「再配置時ポリゴンモデル」は、再配置時に描画する仮想物体のポリゴンモデルの情報を示している。本実施形態では、低品質、高品質の2種類を各仮想物体にあらかじめ用意しておき、再配置時前から変更するか否か、変更する場合にいずれのポリゴンモデルを表示するかが定義される。なお、この欄にポリゴンモデルを追加して、その値を含めるように定義してもよい。
「再配置時ポリゴンモデル」は、再配置時に描画する仮想物体のポリゴンモデルの情報を示している。本実施形態では、低品質、高品質の2種類を各仮想物体にあらかじめ用意しておき、再配置時前から変更するか否か、変更する場合にいずれのポリゴンモデルを表示するかが定義される。なお、この欄にポリゴンモデルを追加して、その値を含めるように定義してもよい。
「再配置時影」は、再配置時に描画する仮想物体のテクスチャに施す影情報を示している。本実施形態では、影情報を用いてテクスチャの描画を行うか否かを、あり・なしの表現で定義している。
「再配置時ライティング」は、再配置時に描画する仮想物体のテクスチャに施すライティング情報を示している。本実施形態では、ライティング情報を用いてテクスチャの描画を行うか否かを、あり・なしの表現で定義している。
なお、再配置時影および再配置時ライティングは、テクスチャに施す画像処理技法をそれぞれ定義するようにしてもよい。
「再配置時ライティング」は、再配置時に描画する仮想物体のテクスチャに施すライティング情報を示している。本実施形態では、ライティング情報を用いてテクスチャの描画を行うか否かを、あり・なしの表現で定義している。
なお、再配置時影および再配置時ライティングは、テクスチャに施す画像処理技法をそれぞれ定義するようにしてもよい。
「重畳優先度」は、再配置後の仮想物体の重なり具合に対する表示方法の情報を示している。本実施形態では、最高、高、低の3段階で表現し、高くなるほど手前に存在するように表示する。また、重畳優先度として整数を用いたり、優先度を変えたりしてもよい。
「歩行時配置座標」は、前方に歩行している際の再配置座標を示しており、例えば図1における使用者が前方に歩行している際の画像102で示した座標で定義される。
「下降時配置座標」は、階段を下りる際の再配置座標を示しており、例えば図1における使用者が階段を下りている際の画像106で示した座標で定義される。
「歩行時配置座標」は、前方に歩行している際の再配置座標を示しており、例えば図1における使用者が前方に歩行している際の画像102で示した座標で定義される。
「下降時配置座標」は、階段を下りる際の再配置座標を示しており、例えば図1における使用者が階段を下りている際の画像106で示した座標で定義される。
「再配置座標」は、現在の使用者の動作状況に応じた再配置座標を示しており、再配置前座標か歩行時配置座標、または下降時配置座標のいずれかが保持される。
「現在の座標」は、再配置中における当該フレームにおける表示座標を示している。
「フレームレート」は、動作状況毎のフレームレートの品質を示しており、高品質、低品質のいずれかで定義される。なお、フレームレートはそれぞれの動作状況に対して具体的な値(fps)で定義してもよい。
「現在の座標」は、再配置中における当該フレームにおける表示座標を示している。
「フレームレート」は、動作状況毎のフレームレートの品質を示しており、高品質、低品質のいずれかで定義される。なお、フレームレートはそれぞれの動作状況に対して具体的な値(fps)で定義してもよい。
本実施形態で示した再配置時サイズ、再配置時ポリゴンモデル、再配置時影、再配置時ライティング、重畳優先度、フレームレートに示す値の種類はこの限りではない。本実施形態で示した歩行時配置座標として、歩行時における速度の閾値によって1つまたは複数の座標情報を保持してもよい。例えば、歩行、走行、という形で分割してもよいし、例えば2m/sごとに違う座標に再配置するようにもしてもよい。
図6は、情報入力部301が行う処理手順の一例を示すフローチャートである。使用者がHMDを装着して複合世界の体験を開始した際に図6の処理を開始するが、HMDの画面表示を開始するタイミングで図6の処理を開始してもよい。
ステップS601において、情報入力部301は、複合世界の体験を継続するか否かを判断する。この判断の結果、複合世界の体験を継続する場合はステップS602へ進み、継続しない場合は処理を終了する。
ステップS602において、情報入力部301は、I/F204を介して得られる使用者の状況データを解釈し、動作状況データ302の動作状況、速度、進行方向、および頭部角度のデータを更新する。
ステップS601において、情報入力部301は、複合世界の体験を継続するか否かを判断する。この判断の結果、複合世界の体験を継続する場合はステップS602へ進み、継続しない場合は処理を終了する。
ステップS602において、情報入力部301は、I/F204を介して得られる使用者の状況データを解釈し、動作状況データ302の動作状況、速度、進行方向、および頭部角度のデータを更新する。
本実施形態では、常に使用者の状況データを取得して動作状況データ302を更新する方法を開示したが、更新するタイミングは特に限定されない。例えば、フレーム毎に更新してもよく、I/F204を介して得られる使用者の状況データが変化した場合に更新を行うようにしてもよい。
図7は、再配置判断部303により再配置データ305を更新する処理手順の一例を示すフローチャートである。この処理は、使用者がHMDを装着して複合世界の体験を開始した際、もしくはHMDの画面表示を開始するタイミングで開始される。フレーム出力毎に処理を開始して、そのフレームの画像処理に利用できるようにしてもよい。
ステップS701において、再配置判断部303は、動作状況データ302の情報が更新されているか否かを判断する。この判断の結果、更新されている場合はステップS702に進み、更新されていない場合はステップS703に進む。
ステップS701において、再配置判断部303は、動作状況データ302の情報が更新されているか否かを判断する。この判断の結果、更新されている場合はステップS702に進み、更新されていない場合はステップS703に進む。
ステップS702において、再配置判断部303は、動作状況データ302の更新情報をもとに、再配置データ305の各仮想物体の再配置座標を更新する。具体的な処理は図8を用いて後述する。
ステップS703において、再配置判断部303は、複合世界の体験を継続するか否かを判断する。この判断の結果、複合世界の体験を継続する場合はステップS701へ戻り、継続しない場合は処理を終了する。
ステップS703において、再配置判断部303は、複合世界の体験を継続するか否かを判断する。この判断の結果、複合世界の体験を継続する場合はステップS701へ戻り、継続しない場合は処理を終了する。
図8は、ステップS702で、再配置判断部303により再配置座標を更新する詳細な処理手順の一例を示すフローチャートである。本フローチャートは図7のステップS702で行う処理を示している。
ステップS801において、再配置判断部303は、動作状況データ302における現在の動作状況が停止中であるか否かを判断する。この判断の結果、停止である場合はステップS802へ進み、そうでない場合はステップS803へ進む。
ステップS801において、再配置判断部303は、動作状況データ302における現在の動作状況が停止中であるか否かを判断する。この判断の結果、停止である場合はステップS802へ進み、そうでない場合はステップS803へ進む。
ステップS802において、再配置判断部303は、再配置データ305の再配置座標を再配置前座標で更新し、処理を終了する。
ステップS803において、再配置判断部303は、動作状況データ302の動作状況が下降中であるか否かを判断する。この判断の結果、下降である場合はステップS804へ進み、そうでない場合はステップS805へ進む。
ステップS803において、再配置判断部303は、動作状況データ302の動作状況が下降中であるか否かを判断する。この判断の結果、下降である場合はステップS804へ進み、そうでない場合はステップS805へ進む。
ステップS804において、再配置判断部303は、再配置データ305の再配置座標を下降時配置座標で更新し、処理を終了する。
ステップS805においては、動作状況データ302の動作状況が歩行中であることを示すことから、再配置判断部303は、再配置データ305の再配置座標を歩行時配置座標で更新し、処理を終了する。なお、本実施形態で示した動作状況の種類に応じた処理順はこの限りではなく、処理順を入れ替えてもよい。あるいは、歩行中に動作状況データ302の速度を参照して、速度によってさらに処理を切り替えてもよい。
ステップS805においては、動作状況データ302の動作状況が歩行中であることを示すことから、再配置判断部303は、再配置データ305の再配置座標を歩行時配置座標で更新し、処理を終了する。なお、本実施形態で示した動作状況の種類に応じた処理順はこの限りではなく、処理順を入れ替えてもよい。あるいは、歩行中に動作状況データ302の速度を参照して、速度によってさらに処理を切り替えてもよい。
図9は、画像処理部304が行う処理手順の一例を示すフローチャートである。この処理は現実世界の画像が入力されることによって開始される。
ステップS901において、画像処理部304は、再配置データ305の「現在の座標」が再配置座標と同一であるか否かを判断する。この判断の結果、座標が同一である場合はステップS905へ進み、そうでない場合はステップS902へ進む。
ステップS901において、画像処理部304は、再配置データ305の「現在の座標」が再配置座標と同一であるか否かを判断する。この判断の結果、座標が同一である場合はステップS905へ進み、そうでない場合はステップS902へ進む。
ステップS902において、画像処理部304は、各仮想物体の次のフレームで表示する座標を算出して、再配置データ305の現在の座標を更新する。新たな現在の座標は、更新前の現在の座標から目標である再配置座標へある一定の速度で移動するとした場合の座標を算出することによって算出される。
ステップS903において、画像処理部304は、再配置データ305の情報をもとに現実世界の画像に仮想物体を重畳し、表示部306で表示する画像データを作成して、画像バッファに保持する。ここで画像処理情報として、再配置データ305の再配置時ポリゴンモデルや再配置時影、再配置時ライティングの情報を参照する。また、再配置データ305における再配置時サイズで「変更なし」以外が規定されている場合は、更新前のサイズから目標である再配置座標でのサイズへある一定の速度で変化するとした場合の倍率を算出し、仮想物体を拡大または縮小して調整する。
ステップS904において、画像処理部304は、ステップS903で画像バッファに保持された画像データについて、表示部306において表示するのを待機し、ステップS901へ戻る。
ステップS904において、画像処理部304は、ステップS903で画像バッファに保持された画像データについて、表示部306において表示するのを待機し、ステップS901へ戻る。
一方、ステップS905においては、画像処理部304は、再配置データ305の情報をもとに現実世界の画像に仮想物体を重畳し、表示部306で表示する画像データを作成して、画像バッファに保持する。この場合、仮想物体を表示する位置は再配置座標の位置であり、再配置データ305に規定されたサイズ、ポリゴンモデル等に従って画像データが生成される。
ステップS906において、画像処理部304は、ステップS905で画像バッファに保持された画像データについて、表示部306において表示するのを待機する。
ステップS907において、画像処理部304は、次に表示させるフレームが存在するか否かを判断する。この判断の結果、次に表示させるフレームが存在する場合はステップS901に戻り、そうでない場合は処理を終了する。
ステップS907において、画像処理部304は、次に表示させるフレームが存在するか否かを判断する。この判断の結果、次に表示させるフレームが存在する場合はステップS901に戻り、そうでない場合は処理を終了する。
以上のように本実施形態によれば、視覚効果を伴いながら仮想物体を再配置することで、現実世界における危機察知の機会損失を防止しつつ、使用者の体験を損なわない技術の提供が可能になる。
(第2の実施形態)
本実施形態では、仮想物体を再配置する際に個々の仮想物体に対して座標情報を保持するのではなく、仮想物体を再配置する画像領域の情報を保持する例について説明する。なお、本実施形態に係る画像処理装置の内部構成については図2及び図3と同様であるため、説明は省略する。以下、第1の実施形態と異なる点について説明する。
本実施形態では、仮想物体を再配置する際に個々の仮想物体に対して座標情報を保持するのではなく、仮想物体を再配置する画像領域の情報を保持する例について説明する。なお、本実施形態に係る画像処理装置の内部構成については図2及び図3と同様であるため、説明は省略する。以下、第1の実施形態と異なる点について説明する。
図10は、本実施形態において表示される画像の例を示す図である。画像1001は使用者が停止している際の画像例である。一方で画像1002は使用者が前方に歩行している際の画像例である。第1の実施形態と同様に、使用者が歩行を開始すると仮想物体103、仮想物体104、仮想物体105はそれぞれ示されている座標に再配置される。但し、本実施形態では、使用者が歩行を開始すると、画面上部1/3の領域1003にそれぞれの仮想物体が写像される。また、画像1004は、使用者が前方に走行している際の画像例である。本実施形態では、使用者が走行を開始すると、画面上部1/3かつ右側部1/3の領域1005にそれぞれの仮想物体が写像される。
また、図10に図示しないが、階段を下りるなど使用者が前方かつ下降移動している際も、歩行時と走行時とで仮想物体を再配置する画像領域を異なるようにする。具体的には、使用者が歩行スピードで下降を開始すると、画面下部1/3の領域にそれぞれの仮想物体が写像され、使用者が駆け足で下降を開始すると、画面下部1/3かつ右側部1/3の領域にそれぞれの仮想物体が写像される。
図11は、本実施形態における再配置データ305の例を示す図である。本実施形態においては、図5の例と比較して歩行時および走行時の配置領域が追加され、歩行時配置座標、下降時配置座標が削除されている。「歩行時配置領域」および「下降時配置領域」には、歩行時および走行時のときに仮想物体の再配置座標を算出するための写像領域の情報が保持される。なお、mは左端を0とした場合の横幅の座標サイズ、nは上端を0とした場合の縦幅の座標サイズを表している。さらに、「再配置座標」は後述する再配置判断部303の処理によって算出される写像座標が保持される。
図12は、本実施形態において、仮想物体の再配置座標を算出する処理手順の一例を示すフローチャートである。図12に示す処理は、図8のステップS804およびS805の各処理の代わりに行われる。
ステップS1201において、再配置判断部303は、動作状況データ302の速度から写像先の画像領域を判定し、さらに再配置データ305から歩行時配置領域または下降時配置領域の情報を取得する。この処理では、まず動作状況データ302の中の「速度」から、歩行か走行かを判別し、速度が閾値以上である場合に使用者が走行していると判別する。そして、歩行時または走行時における「歩行時配置領域」または「下降時配置領域」の情報を取得する。そして、該当する配置領域の中で写像される再配置座標を算出する。なお、歩行時配置領域または下降時配置領域の中のどの位置を再配置座標とするかについては特に限定されず、該当する領域内であれば、その中で任意に再配置座標を決定してもよい。
以上のように本実施形態によれば、仮想物体を再配置する際にあらかじめ個々の仮想物体に対して座標情報を保持せずに、仮想物体を再配置する範囲に係る画像領域情報を保持する技術の提供が可能になる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
301 情報入力部、303 再配置判断部、304 画像処理部
Claims (15)
- 現実世界の画像に仮想物体を重畳して複合世界の画像を生成する画像処理装置であって、
前記画像処理装置の使用者の動作状況に係る情報を取得する取得手段と、
前記取得手段によって取得された動作状況に基づいて、前記現実世界の画像における前記仮想物体を配置する位置を決定する決定手段と、
前記決定手段によって決定された位置に前記仮想物体を配置した画像を生成する画像処理手段と、を備え、
前記決定手段は、前記仮想物体を配置する位置を前記使用者が移動する方向に応じた位置に決定することを特徴とする画像処理装置。 - 前記画像処理手段は、複数のフレームに亘って目的とする位置に前記仮想物体が移動するように前記仮想物体を配置することを特徴とする請求項1に記載の画像処理装置。
- 前記使用者の動作状況が前方への移動である場合に、前記決定手段は、前記仮想物体の目標とする位置が前記現実世界の画像の上部となるように前記仮想物体を配置する位置を決定することを特徴とする請求項2に記載の画像処理装置。
- 前記使用者の動作状況が階段での下降移動である場合に、前記決定手段は、前記仮想物体の目標とする位置が前記現実世界の画像の下部となるように前記仮想物体を配置する位置を決定することを特徴とする請求項2に記載の画像処理装置。
- 前記決定手段は、さらに前記使用者の移動速度に応じて、前記仮想物体の目標とする位置の範囲を変更することを特徴とする請求項3又は4に記載の画像処理装置。
- 前記画像処理手段は、前記使用者の動作状況に応じてフレームレートを変更することを特徴とする請求項1~5の何れか1項に記載の画像処理装置。
- 前記画像処理手段は、複数のフレームに亘って前記仮想物体の大きさを調整することを特徴とする請求項1~6の何れか1項に記載の画像処理装置。
- 前記画像処理手段は、前記仮想物体が複数ある場合に、予め定められた重ね合わせの優先度に基づいて前記複数の仮想物体をそれぞれ配置することを特徴とする請求項1~7の何れか1項に記載の画像処理装置。
- 前記動作状況は、移動中か否か、速度および進行方向の情報を含むことを特徴とする請求項1~8の何れか1項に記載の画像処理装置。
- 前記画像処理手段は、前記動作状況に応じて前記仮想物体に画像処理を施して配置することを特徴とする請求項1~9の何れか1項に記載の画像処理装置。
- 前記画像処理は、前記仮想物体に影を付与する処理であることを特徴とする請求項10に記載の画像処理装置。
- 前記画像処理は、前記仮想物体にライティングを付与する処理であることを特徴とする請求項10又は11に記載の画像処理装置。
- 前記画像処理は、前記仮想物体を描画する品質を変更する処理であることを特徴とする請求項10~12の何れか1項に記載の画像処理装置。
- 現実世界の画像に仮想物体を重畳して複合世界の画像を生成する画像処理装置が実行する画像処理方法であって、
前記画像処理装置の使用者の動作状況に係る情報を取得する取得工程と、
前記取得工程において取得された動作状況に基づいて、前記現実世界の画像における前記仮想物体を配置する位置を決定する決定工程と、
前記決定工程において決定された位置に前記仮想物体を配置した画像を生成する画像処理工程と、を備え、
前記決定工程においては、前記仮想物体を配置する位置を前記使用者が移動する方向に応じた位置に決定することを特徴とする画像処理方法。 - 現実世界の画像に仮想物体を重畳して複合世界の画像を生成する画像処理装置を制御するためのプログラムであって、
前記画像処理装置の使用者の動作状況に係る情報を取得する取得工程と、
前記取得工程において取得された動作状況に基づいて、前記現実世界の画像における前記仮想物体を配置する位置を決定する決定工程と、
前記決定工程において決定された位置に前記仮想物体を配置した画像を生成する画像処理工程と、をコンピュータに実行させ、
前記決定工程においては、前記仮想物体を配置する位置を前記使用者が移動する方向に応じた位置に決定することを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021133923A JP2023028300A (ja) | 2021-08-19 | 2021-08-19 | 画像処理装置、画像処理方法およびプログラム |
US17/820,129 US20230058228A1 (en) | 2021-08-19 | 2022-08-16 | Image processing apparatus, image processing method, and storage medium for generating image of mixed world |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021133923A JP2023028300A (ja) | 2021-08-19 | 2021-08-19 | 画像処理装置、画像処理方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023028300A true JP2023028300A (ja) | 2023-03-03 |
JP2023028300A5 JP2023028300A5 (ja) | 2024-08-26 |
Family
ID=85228353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021133923A Pending JP2023028300A (ja) | 2021-08-19 | 2021-08-19 | 画像処理装置、画像処理方法およびプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20230058228A1 (ja) |
JP (1) | JP2023028300A (ja) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6341759B2 (ja) * | 2014-05-30 | 2018-06-13 | キヤノン株式会社 | 頭部装着型情報表示装置及び頭部装着型情報表示装置の制御方法 |
US10852838B2 (en) * | 2014-06-14 | 2020-12-01 | Magic Leap, Inc. | Methods and systems for creating virtual and augmented reality |
US10591728B2 (en) * | 2016-03-02 | 2020-03-17 | Mentor Acquisition One, Llc | Optical systems for head-worn computers |
WO2019246129A2 (en) * | 2018-06-18 | 2019-12-26 | Magic Leap, Inc. | Augmented reality display with frame modulation functionality |
EP4022569A4 (en) * | 2019-08-26 | 2023-09-06 | AGT International GmbH | TRACKING DYNAMICS USING A COMPUTERIZED DEVICE |
-
2021
- 2021-08-19 JP JP2021133923A patent/JP2023028300A/ja active Pending
-
2022
- 2022-08-16 US US17/820,129 patent/US20230058228A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230058228A1 (en) | 2023-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11200730B2 (en) | Continuous time warp and binocular time warp for virtual and augmented reality display systems and methods | |
KR102663558B1 (ko) | 후기 재투사 전력을 최적화하기 위한 시스템, 디바이스, 및 방법 | |
EP3552081B1 (en) | Display synchronized image warping | |
US9595083B1 (en) | Method and apparatus for image producing with predictions of future positions | |
JP6092437B1 (ja) | 仮想空間画像提供方法、及びそのプログラム | |
CN112150601B (zh) | 中央凹渲染的方法、计算系统和非暂时性机器可读介质 | |
US20160238852A1 (en) | Head mounted display performing post render processing | |
CN110300994B (zh) | 图像处理装置、图像处理方法以及图像系统 | |
CN108596834B (zh) | 图像的分辨率处理方法、图像处理装置及系统、存储介质 | |
CN114026603B (zh) | 渲染计算机生成现实文本 | |
US11521296B2 (en) | Image size triggered clarification to maintain image sharpness | |
WO2017115505A1 (ja) | 表示装置 | |
WO2017115504A1 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP6963399B2 (ja) | プログラム、記録媒体、画像生成装置、画像生成方法 | |
KR101874760B1 (ko) | 정보 처리 장치, 제어 방법 및 기록 매체 | |
US11543655B1 (en) | Rendering for multi-focus display systems | |
JP2023028300A (ja) | 画像処理装置、画像処理方法およびプログラム | |
US12014472B1 (en) | Methods and devices for improved inverse iterative warping | |
CN106773047B (zh) | 一种基于vr装置的显示方法及系统 | |
EP4254348A2 (en) | Method and device for multi-camera hole filling | |
JP2011082698A (ja) | 画像生成装置、画像生成方法、および、プログラム | |
JP4974660B2 (ja) | 物体像表示方法 | |
US12002132B1 (en) | Rendering using analytic signed distance fields | |
JP2019040485A (ja) | キャラクタ動画表示システム | |
JP2010259022A (ja) | 表示装置、表示方法、および表示プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240815 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240815 |