JP2004362218A - 三次元物体操作方法 - Google Patents
三次元物体操作方法 Download PDFInfo
- Publication number
- JP2004362218A JP2004362218A JP2003159215A JP2003159215A JP2004362218A JP 2004362218 A JP2004362218 A JP 2004362218A JP 2003159215 A JP2003159215 A JP 2003159215A JP 2003159215 A JP2003159215 A JP 2003159215A JP 2004362218 A JP2004362218 A JP 2004362218A
- Authority
- JP
- Japan
- Prior art keywords
- dimensional
- cursor
- eye
- image
- operator
- 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
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】立体画像表示装置と二次元(または三次元)カーソルを用い、三次元物体を操作する場合において、人間の両眼視差、特に利き目の影響を考慮した自然な操作環境、自然な三次元カーソルの表示環境を提供する。
【解決手段】カーソル位置506に対して、右目を基準にした作用点502(物体A上)と左目を基準にした作用点504(物体B上)が二つ存在する。利き目がたとえば右目のときは、右目の視線上にある作用点502を有する物体Aをカーソルに対応する物体として選択することにより、自然な操作環境が得られる。
【選択図】 図5
【解決手段】カーソル位置506に対して、右目を基準にした作用点502(物体A上)と左目を基準にした作用点504(物体B上)が二つ存在する。利き目がたとえば右目のときは、右目の視線上にある作用点502を有する物体Aをカーソルに対応する物体として選択することにより、自然な操作環境が得られる。
【選択図】 図5
Description
【0001】
【発明の属する技術分野】
本発明は、三次元コンピュータグラフィックス技術を用いる、三次元物体操作、三次カーソル表示等に関し、特に、操作感の改善に関するものである。
【0002】
【従来の技術】
従来の技術a(三次元作用点計算)
近年、コンピュータグラフィックス(以降CGとよぶ)を用いた三次元物体の表示技術が普及しており、三次元CAD,ゲーム,シミュレーション等多くの分野に用いられている。また、コンピュータの表示装置として、従来の二次元的な表示装置だけではなく、視差画像により立体感を与える立体画像表示装置も普及し始めている。このような立体画像表示装置により、前記CGによる三次元物体画像を表示すれば、観測者に対し物体の立体感を与えることができるため、臨場感の向上につながる。さらに、立体画像表示装置を三次元CADのように三次元物体操作に利用する場合には、観測者が物体の奥行き情報を感じ取ることができるため、物体間の前後関係が把握し易い。このため、操作者の操作感が快適になり作業も効率的になる。最近では、前記立体画像表示装置として、従来通りの二次元的な表示機能も備え、立体表示と二次元表示を適宜切り替え、従来通りの二次元表示環境と併用できるものが登場している。
【0003】
このような状況を考えると、今後、三次元情報を扱うコンピュータシステムとして、表示装置に立体画像表示装置を使用したシステム(以下、立体表示コンピュータシステムとよぶ)が広く普及し、このシステムを用いて、三次元物体を操作する作業が盛んに行われるものと予想される。
【0004】
ただし、立体表示コンピュータシステムを使う場合、従来のコンピュータの環境、および操作方法がそのまま使えること、または、自然に拡張するような方法によって使用できることが必須である。
【0005】
一方、従来型コンピュータシステム、すなわち二次元的な表示装置を使ったコンピュータシステム上で三次元物体を操作する作業は、三次元CAD等に見られるように従来から盛んに行われている。以下、このような従来環境において行われてきた二次元物体、および三次元物体の操作方法を説明する。
【0006】
二次元GUI環境
従来のコンピュータシステムにおいてはGUI(グラフィック・ユーザ・インターフェース)とよばれる操作環境がほぼ必須のものとなっている。このGUI環境においては、マウス等のポインティングデバイスを用い、操作対象(ファイル,アイコン等)の選択や移動が頻繁に行われている。この従来のGUI環境を以降、二次元GUI環境とよぶことにする。また、立体表示コンピュータシステムのGUI環境を以降、立体表示GUI環境とよぶことにする。
【0007】
二次元GUI環境上の二次元物体操作
まず、二次元GUI環境(従来環境)における二次元物体操作を振り返ってみる。
【0008】
従来、二次元GUI環境上でアイコン,図形等の二次元物体を選択する場合、カーソルを物体上に移動させ、マウスボタンのクリック等により目的物体を選択していた。このような操作は、マウスを介して操作者側から対象物体に作用を与える操作であると捉えることができる。そして、カーソルの位置制御とは、対象物体上の作用点を定める操作であると考えることができる。
【0009】
この考えによれば、マウスクリックにより二次元物体を選択する過程は次のように表現できる。すなわち、カーソルの移動により作用点を定め、マウスクリックにより作用を発生させ、複数の物体群から作用点を持つものを唯一選択する。以下、カーソル位置から物体上の作用点を決める処理を、物体の作用点計算とよぶことにする。操作対象を二次元物体とする場合は、カーソル位置が作用点に直接対応しているので作用点という概念は冗長な考え方である。しかし、操作対象を三次元物体に拡張する場合は、カーソル位置と作用点を区別して考える必要がある。
【0010】
二次元GUI環境上の三次元物体操作
次に、二次元GUI環境上での三次元物体の操作方法に目を向ける。二次元GUI環境上で三次元空間を扱う場合、三次元物体像がCG計算により二次元面に投影され表示される。操作者はこの二次元面に投影された三次元物体を見ながら、目的物体像の上にマウスカーソルを移動させ、マウスボタンのクリック等により目的物体を選択する。この方法は、前記二次元物体の操作方法を自然に拡張した方法であり、操作者にとって違和感がなく、従来広く用いられてきた。ただし、マウスカーソルは二次元位置にあり、物体は三次元であるため、前述の作用点計算は三次元的に行われる。この三次元的作用点の計算を、図1を使って説明する。図1は三次元物体が二次元平面に投影される様子、およびマウスカーソルと作用点の関係を表した図である。
【0011】
二次元GUI環境では、二次元投影面のCG画像が表示面に表示されるため、マウスカーソルは、図1に示すように、CG計算上の二次元投影面105に存在すると見なすことができる。そこで、カーソル位置106と投影中心107を結ぶ直線を三次元空間へ延長して作用線103とし、この作用線103と物体101との交点102を作用点する。これが、従来用いられてきた作用点計算の方法である。
【0012】
従来の技術b(三次元ペイント操作)
立体表示コンピュータシステム
近年、コンピュータグラフィックスを用いた三次元物体の表示技術が普及しており、三次元CAD,ゲーム,シミュレーション等多くの分野に用いられている。また、コンピュータの表示装置として、従来の二次元的な表示装置だけはなく、視差画像により立体感を与える立体画像表示装置も普及し始めている。このような立体画像表示装置を用い、CGによる三次元物体画像を表示すれば、現実的な立体感が得られる。さらに、観測者が物体の奥行き情報を感じ取ることができるため、物体間の前後関係が把握し易く操作感と作業効率的の向上につながる。これらの点を考えると、今後、三次元情報を取り扱う従来環境の多くに、立体画像表示装置を利用したコンピュータシステムが導入されることが予想される。
【0013】
以下、表示装置に立体画像表示装置を使用したコンピュータシステムを「立体表示コンピュータシステム」とよぶことにし、従来型の二次元表示装置を使用したコンピュータシステムを「二次元表示コンピュータシステム」とよぶことにする。
【0014】
三次元マウスカーソル
従来の三次元物体を操作するコンピュータ環境においては、マウスまたはそれに相当するポインティングデバイスを用い、三次元中の一点を指定する操作が頻繁に行われてきた。このようなマウスによる三次元位置指定は、三次元物体を操作する上での重要な操作方法であるため、立体表示コンピュータシステムにおいても必須のものと考えられる。そこで、従来の三次元操作環境を、立体表示コンピュータシステム上に移行させるためには、マウスによる三次元位置指定の方法をよく分析する必要がある。以下、従来存在する方法についてまとめてみる。
【0015】
通常、マウス操作を行う場合、操作者の着目位置を示すカーソルが画面上に表示される。三次元位置指定を行う場合、カーソルを従来通り二次元画面上に表示させ、二次元面から三次元空間への逆投影処理により三次元位置を指定すること(二次元カーソル法とする)も可能であるが、カーソル自体を三次元的に扱い三次元空間中で移動制御することもできる(三次元カーソル法とする)。特に、三次元カーソル法の場合、立体表示コンピュータシステム上では、カーソルを視差画像により立体表示することができるので、三次元空間中でのマウス位置を把握し易い。実際、三次元カーソル法を立体表示コンピュータシステム上で行う方法が過去においても提案されていた。ただし、カーソルを三次元空間中のどこに配置するかという点は、目的のアプリケーションプログラム毎の分析を要する。
【0016】
三次元ペイント
さて、前述したマウスによる三次元位置指定が重要である三次元操作の一例であり、かつ、立体表示コンピュータシステムの有効性が発揮される例として、従来の三次元ペイント操作を取り上げることができる。
【0017】
この三次元ペイントとは、三次元物体の表面に対して描画を行うものであり、三次元CGゲームにおけるキャラクタ作成によく使われる。ゲームに登場するキャラクタを三次元物体として表現する場合、キャラクタのより細かい視覚上の特徴を二次元画像(テクスチャ画像)に持たせることが多い。そして、このテクスチャ画像を三次元形状データに合成(通常テクスチャマッピングとよばれる)してキャラクタの三次元表現を行う。このようなテクスチャ画像の作成を行う場合、テクスチャマッピングされた三次元物体に直接ペンで描画を行い、対話的にテクスチャ画像を作成する方法が三次元ペイント操作である。また、三次元CADにおいて、物体表面の特定の位置にマーカーでマークを着けるような操作も一種の三次元ペイントと解釈してよい。
【0018】
このような三次元ペイントを立体表示コンピュータシステム上で行えば、前述したように操作感と作業効率的の向上につながる。ただし、この場合、マウスカーソルを三次元空間中のどこに配置し、立体画像表示装置上でどのように表示するかという問題を分析する必要がある。以下、この点について説明する。
【0019】
現実の環境で物体に描画を行う場合、ペンを物体上の目的位置に配置し描画を行う。このため、CGを用いた仮想的な三次元物体操作環境においても、カーソルで表されるペン位置を、対象物体上の着目位置に配置する方が自然である。これについて図11を用いて説明する。図11は三次元ペイントの対象となる三次元物体が二次元表示面上に投影されている状況を模式的に表した図である。
【0020】
前記二次元カーソル法のようにカーソルを二次元面内(表示面内)で扱う場合は、表示面1106上にペン位置を表すカーソル1107が表示される。そして、CG計算の投影条件にもとづいた直線1105をカーソル指示位置1108から放射し(逆投影し)、物体と交差する点1104を着目点と解釈する。一方、前記三次元カーソル法のようにマウスカーソルを三次元的に扱う場合、ペン(もしくはペン位置を表すカーソル)は三次元物体1103として表現され、ペンは物体表面上を軌跡1102のように移動し、ペンの指す位置が着目点そのものに対応している。二次元カーソル法よりも三次元カーソル法の方が三次元ペイントの自然な操作方法となることは明らかである。また、三次元カーソル法の場合、マウスカーソル画像を立体表示すればペンの三次元位置が把握し易くなる。
【0021】
以上、従来の三次元ペイント操作を立体表示コンピュータシステムに対応させる自然な手法を説明した。
【0022】
なお、関連する技術は、下記文献にも記載されている。
【0023】
【特許文献1】
特開平8−69547号公報
【特許文献2】
特開平5−127809号公報
【0024】
【発明が解決しようとする課題】
前記従来の技術aについての課題
さて、立体表示GUI環境上での三次元物体の操作方法を行う場合、その方法は前記二次元GUI環境上での三次元物体操作の方法を自然に引き継ぐことが好ましい。しかし、この方針に従いマウス操作により物体を選択する方法を考えてみると、立体視に起因する問題点が発生する。以下、この問題点について説明する。
【0025】
立体CG画像の原理
ここで、一旦、以降の説明のために図2と図3を使い、立体視の原理、及びCG画像を立体視に対応させる手法について簡単に説明しておく。
【0026】
立体視の原理
まず、立体視の原理について説明する。
【0027】
図2の(a)は実物体を観測する観測者を上から見た図であり、図2の(b)は観測者と立体表示装置を上から見た図である。人間は三次元空間中にある物体203の注目点204を注視した場合、図2の(a)に示すように、眼球の左右の光軸201,202を注目点204で交差するよう調節する。この動作は「融像」とよばれている。ステレオ立体視を利用した立体表示装置は、この融像動作を、観測者に人工的に誘起させる事によって立体感を与えている。すなわち、図2の(b)に示すように、視差のある左右画像2011と2012を、何らかの方法で、左右の目に分離入力されるように工夫する。この時、表示装置を注視する観測者は、視差のある注目点の左右画像を融像すべく、眼球の光軸207,208を図2の(b)に示すよう制御する。この結果、光軸の交差する点、すなわち図2の(b)の2010に、物体の注目点が存在するように感じられる。
【0028】
なお、図2の(b)では、左右画像2011と2012は、説明の都合上、前後ずらした位置に表示されているが、実際には同じ位置に表示される。左右画像を左右の眼球に、それぞれ分離入力させる方法は、レンチキュラーレンズを利用した方法や、メガネシャッター方式等がよく知られている。
【0029】
CG画像生成
一方、図3は、CG計算により三次元物体データを二次元画像化、すなわち可視化する手法を示している。CG計算のアルゴリズムは複数存在するが、ここではリアルタイムレンダリングとよばれる分野で広く用いられているポリゴン単位の計算方法(以降、ポリゴンレンダリング)を取り上げる。ポリゴンレンダリングは、物体を構成する(または定義する)各ポリゴンに対し、図3に示した301〜306の行程を施すことによって行われる。このアルゴリズムは、古くからよく知られ、公知のものであるので301〜306の各行程の説明は省略する。
【0030】
立体CG画像生成
前記立体表示装置の原理を利用し、立体感のあるCG画像を表示する手法を、図4を使って説明する。図4の(a)は図1の投影処理を投影軸に対し垂直の方向から見た図である。立体表示を行う場合、図4に示すように右目用投影中心405にもとづく右目用の投影を行った画像(c)と、同じく左目用投影中心404にもとづく左目用の投影を行った画像(b)の二種類のCG画像を生成する。そして、この二つの画像を右目用画像,左目用画像として、前記図2の2012と2011にそれぞれ表示すれば、三次元物体のCG画像を立体的に見せることができる。
【0031】
以上の説明を踏まえ、立体表示装置上の立体CG画像を見ながら、マウスにより三次元物体を選択する場合を考える。この時、前記二次元GUI環境上の三次元物体操作と同様の方法によって作用点の計算を行うことが好ましい。すなわち、カーソル位置と投影中心を結ぶ作用線を三次元空間の中へ延長し、この作用線と物体との交点を作用点としたい。ところが、前記立体CG画像生成で述べたように三次元物体の二次元面への投影条件、および投影像は右目用と左目用の二つが存在し、それぞれ異なっている。
【0032】
図5はこの状況を説明する図であり、立体視用の投影処理を投影軸に対し垂直の方向から見た図である。図5からわかるようにカーソル位置506に対して、右目を基準にした作用点502(物体A上)と左目を基準にした作用点504(物体B上)が二つ存在する。このように立体視環境では、異なる二つの作用点が存在してしまい、その結果、異なる二つの選択物体が存在することになる。このように作用点が二つ発生してしまう問題を以下、立体視環境での作用点の二重性とよぶことにする。
【0033】
この作用点の二重性に対する解決策は、射撃の「標準合わせ」との類推により、自然に導くことができる。以下、この解決策を説明する。
【0034】
立体視状態でマウスカーソルを基準に作用点を決定する行為は、操作者直前にある透明標準パネル上の標準、すなわちマウスカーソルを動かし、透明標準パネルより遠方にある標的物体、すなわち操作対象物体に標準を合わせる行為に相当する。ただし、実際の射撃においては、左右どちらか一方の目を使って標準合わせを行うわけであるが、立体表示装置を使った作業では、選択操作の度に片目を閉じることは不便である。このため、立体表示GUI環境では両目を使って標準合わせに相当する行為を行うことになる。ところが、周知の通り、人間には利き目が存在し、両目を使って標準合わせを試みた場合、感覚上、利き目側の目で見た標準合わせが優先され、結果的に利き目側を使った標準合わせが行われる。この事実にもとづけば、立体表示装置を注視しながら、マウスによる物体選択を行う場合、操作者にとって違和感のない操作方法とは、利き目側で標準合わせを行ったように物体が選択されることである。すなわち、作用点の計算において、利き目が右目の操作者に対しては、右目用の投影条件にもとづいた計算方法を適用し、利き目が左目の操作者に対しては、左目用の投影条件にもとづいて作用点を計算すべきである。
【0035】
三次元ペインティング
前記、立体視環境での作用点の二重性は、三次元物体を選択する場合だけでなく、三次元ペインティング操作などにも発生する。これについて以下簡単に説明する。
【0036】
従来の二次元ペインティング操作では、描画対象、すなわち平面キャンバスを二次元面として扱い、希望の着色位置にマウスカーソルを移動させ、マウスのクリック(すなわちピッキング)により着色位置に色を塗る、という操作であった。三次元ペインティングとは、この操作を三次元に拡張したものであり、三次元物体表面上の希望する着色位置に色を塗ることである。すなわち、二次元ペインティングで言うところの平面キャンバスが三次元ペインティングで言うところの三次元物体になる。そして、着色位置は三次元的作用点の算出によって決められる。よって、前記物体選択の場合と同様に作用点の二重性の問題が発生する。
【0037】
以上述べたように、従来型コンピュータシステムで使われていたポインティングデバイスによる操作方法を、立体表示コンピュータシステムに導入しようとした場合、人間の両眼視差、特に利き目の影響を考慮した操作方法が、従来提供されていなかった。
【0038】
本発明は、このような状況のもとでなされたもので、立体画像表示装置と二次元(または三次元)カーソルを用い、三次元物体を操作する場合において、人間の両眼視差、特に利き目の影響を考慮した自然な操作環境を提供することを第1の課題とするものである。
【0039】
前記従来の技術bについての課題
従来の技術bで説明したように、従来の二次元表示コンピュータシステム上で行われていた三次元ペイント操作を、立体表示コンピュータシステム上で行うことは、ユーザの操作感と作業効率を上げる上で大きな意義を持つ。ただし、立体表示コンピュータシステム上の快適な三次元ペイント操作を実現するためには、三次元カーソルを適切に取り扱う必要がある。すなわち、より快適な操作感を実現するためには、描画位置を表すカーソルが物体表面上の着目位置に配置されるようにし、さらに、カーソル画像に視差を持たせて立体表示することが好ましい。
【0040】
しかしながら、この着目位置(すなわちカーソルの配置位置)の決定方法を考えると、二次元表示コンピュータシステムには存在しなかった立体表示固有の問題点が発生し、従来この問題点が正確に取り扱われていなかった。以下、この問題点について説明する。
【0041】
立体CG画像の原理
立体視の原理
CG画像生成
立体視用CG画像生成 これらの項目については、「前記従来の技術aについての課題」における同一項目の説明を援用する。
【0042】
以上の説明を踏まえ、立体表示コンピュータシステム上で三次元ペイント操作を行う場合の問題点を、図12を用いて説明する。図12は立体視用CG生成に関わる三次元空間と、三次元ペイントの関係を模式的に表したものであり、三次元物体とそれを目視する操作者を、頭上から見た図である。
【0043】
今、操作者がマウスを制御し、三次元カーソル、すなわち三次元ペンを物体1201の表面上をなぞらせて、何らかの描画を行ったものと仮定する。この場合、三次元ペン(正確にはペン先)の軌跡を考えてみると、軌跡は物体表面上の可視部分にあるべきであり、不可視の部分にあるべきではない。すなわち、物体上で、操作者から見て不可視部分にペンが回り込み、そこに描画されてしまうことは操作者にとって不都合である。ところが、物体表面のどの部分が可視になるかという点は投影条件、すなわち視点に依存する。そして、前述したように立体視用CGを生成する場合、右目用と左目用の二つの異なる投影条件が存在するため、図12からもわかるように可視部分の判断基準が二つ存在する。図12では右目基準で可視となる部分をなぞった軌跡が実線として表され、同じく左目基準の軌跡が破線として表されている。ただし、実線と破線は見やすくなるよう少しずらして書かれている。
【0044】
以上説明したように、立体表示コンピュータシステム上の三次元ペイント操作において、着目点を三次元カーソルで表現しようとした場合、着目点の計算方法(または判別方法)に右目用と左目用の二つが存在するという問題点が発生する。
【0045】
以上述べたように、二次元表示コンピュータシステムで行われていた三次元ペイント操作を、立体表示コンピュータシステム上で行うようにし、さらに三次元カーソルによる操作性の向上を試みた場合、人間の両眼視差の影響を考慮した操作方法が従来提供されていなかった。
【0046】
本発明は、このような状況のもとでなされたものであり、立体画像表示装置を用い三次元物体を操作する場合において、人間の両眼視差を考慮した自然な三次元カーソルの表示環境を提供することを第2の課題とするものである。
【0047】
【課題を解決するための手段】
前記課題を解決するため、本発明では、三次元物体操作方法を次の(1)ないし(4)および(6)のとおりに構成し、利き目の判別方法を次の(5)のとおりに構成し、三次元カーソル表示方法を次の(7)ないし(9)のとおりに構成し、情報処理装置を次の(10)のとおりに構成し、プログラムを次の(11)のとおりに構成する。
【0048】
(1)表示装置として視差にもとづく立体感を与える立体画像表示装置を用い、
三次元物体を二次元画像化して表示する手法として、右目用,左目用二種類の異なる投影法を適用して作成された、右目用,左目用二枚の投影画像を、前記立体画像表示装置に表示し、
操作者によって位置制御されるカーソルを使い三次元物体上の作用点を選択する際に、操作者の利き目に応じ、利き目側の表示画像を作成するために使用した投影条件にもとづき、カーソル位置に対応する投影面の一点と投影中心を結んだ直線を三次元物体側に延長し、該三次元物体と該直線との交点を操作者所望の作用点とすることを特徴とする三次元物体操作方法。
【0049】
(2)前記(1)に記載の三次元物体操作方法によって得られる作用点を用い、複数の三次元物体の中から当該作用点に対応した物体を選択することを特徴とする三次元物体操作方法。
【0050】
(3)カーソルを三次元物体として扱い三次元カーソルとし、操作対象の三次元空間中に配置し、三次元物体の二次元画像化手法により、カーソルの左右ステレオ画像を生成し、前記立体画像表示装置に立体表示させ、
操作者によって位置制御される前記三次元カーソルを使い三次元物体上の作用点を選択する方法であって、
操作者の利き目に応じ、利き目側の表示画像を作成するために使用した投影条件にもとづき、利き目側用の投影面上に投影される三次元カーソル位置と投影中心を結んだ直線を三次元物体側に延長し、三次元物体と該直線との交点を操作者所望の作用点とすることを特徴とする三次元物体操作方法。
【0051】
(4)前記(3)に記載の三次元物体操作方法によって得られる作用点を用い、複数の三次元物体の中から該当作用点に対応した物体を選択することを特徴とする三次元物体操作方法。
【0052】
(5)定められた三次元位置にある基準三次元物体を視差にもとづく立体感を与える立体画像表示装置に立体表示させた状態で、
操作者に前記基準三次元物体とカーソルを両眼で観測させ、
前記基準三次元物体とカーソル位置が感覚上同じ位置に来るようカーソル位置を制御させカーソル位置を決定させ、
決定されたカーソル位置を、前記基準三次元物体の二次元画像化に使用した投影面と対応付け位置を決め、該位置を入力位置とし、該入力位置が、該基準三次元物体の右目用投影画像の位置と、該基準三次元物体の左目用投影画像の位置のどちらに近いかを比較し、近い方の位置に対応する投影画像が適用される側の目を、利き目と判定することを特徴とする利き目の判定方法。
【0053】
(6)操作者の利き目として、前記(5)に記載の判定方法により判定された利き目を用いるか、または操作者の認知する利き目を用いることを特徴とする、前記(1)ないし(4)のいずれかに記載の三次元物体操作方法。
【0054】
(7)三次元物体操作のための三次元カーソルを表示する方法であって、
表示装置として、視差にもとづく立体感を与える立体画像表示装置を用い、
三次元物体を二次元画像化して表示する手法として、右目用,左目用二種類の異なる投影法を適用して作成された、右目用,左目用二枚の投影画像を、前記立体画像表示装置に表示し、
操作者によって位置制御されるポインティングデバイスを用い前記三次元カーソルを移動させる際に、操作者の利き目にもとづき、利き目側の表示画像において可視となる三次元物体の表面上で前記三次元カーソルを移動させることを特徴とする三次元カーソル表示方法。
【0055】
(8)三次元物体の可視表面上、もしくは可視表面近傍に三次元カーソルを表示する方法であって、
三次元から二次元の投影処理に使用する投影面上に、補助的二次元座標を設け、操作者のポインティングデバイス操作と該補助的二次元座標の変化を連動させ、該補助的二次元座標を、投影処理の逆行程により三次元物体面上の座標へ変換し、得られた三次元座標を三次元カーソルの表示位置とし、
かつ、該投影処理が利き目側の表示画像を生成するために使用される投影処理であることを特徴とする三次元カーソル表示方法。
【0056】
(9)操作者の利き目として、前記(5)に記載の判定方法により判定された利き目を用いるか、または操作者の認知する利き目を用いることを特徴とする、前記(7)または(8)に記載の三次元カーソル表示方法。
【0057】
(10)視差にもとづく立体感を与える立体画像表示装置と、
利き目を設定する利き目設定手段と、
前記立体画像表示装置に表示する三次元物体の位置の決定を、前記利き目設定手段に設定されている利き目にもとづいて行うように制御する制御手段と、
を備えたことを特徴とする情報処理装置。
【0058】
(11)前記(1)ないし(9)のいずれかに記載の方法を実現するためのプログラム。
【0059】
【発明の実施の形態】
以下本発明の実施の形態を、三次元物体操作方法,三次元ペイント操作方法の実施例により詳しく説明する。なお、本発明は、方法の形に限らず、実施例の説明に裏付けられて、装置の形で、また、前記方法を実現するためのプログラムの形で実施することもできる。
【0060】
【実施例】
(実施例1)
本実施例では、複数の三次元物体の中から、特定の一つの物体をマウス操作によって選択する操作方法を説明する。
【0061】
システム構成
図6は実施例1である“三次元物体操作方法”に使われるコンピュータシステムの構成を示すブロック図である。コンピュータ601の記憶装置605には、本実施例の三次元物体操作方法を実行するためのプログラムが格納される。このプログラムはコンピュータのCPU602によって実行される。また、物体の三次元表現に使われる三次元物体データもコンピュータの記憶装置605に格納される。この三次元物体データとは、頂点座標情報と、各頂点の連結によって定義されるポリゴン情報から構成されるデータである。
【0062】
CG計算によって作成された右目用CG画像608と左目用CG画像607は画像メモリ606に置かれる。右目用CG画像608と左目用CG画像607は、立体表示装置609に送られ立体表示される。この時、立体表示装置609がメガネシャッター方式のようなものであれば、左右画像が時分割で立体表示装置609にそれぞれ送られる。また、立体表示装置609がレンチキュラーレンズ方式のようなものであれば、左右画像が一旦、ラインインターリーブ合成され一つの画像となり、その画像が立体表示装置609に送られる。
【0063】
操作者とコンピュータの対話には、マウス604と、必要に応じキーボード603等の入力装置を用いる。
【0064】
処理手順
図7のフローチャートは本実施例の処理手順を表している。以下、図7を用いて本実施例の処理手順を説明して行く。
【0065】
まず、ステップ701(図では701と略記する、以下同様)において利き目判別処理を行い、操作者の利き目を決定しておく。
【0066】
ただし、以下説明する利き目判別処理は、操作者が自分の利き目を知らない等の理由により、本システムによって自動的に判別する方法を示している。よって、操作者が自分の利き目を既によく認知している場合には、利き目の判別処理を省き、利き目がどちらであるかという情報を、操作者に直接入力させてもよい。
【0067】
図8のフローチャートは図7のフローチャートにおける利き目判別サブルーチンの手順を表している。また、図9は利き目判別処理の原理を説明する図であり、三次元空間を投影軸に対し垂直の方向から見た図である。
【0068】
図8と図9を用いて利き目判別処理について説明する。以下、フロー説明は図8を使うものとする。
【0069】
まずステップ801において、基準物体O(図9の901)を三次元空間中に配置し、立体CG画像を生成し立体表示する。この時、基準物体Oは図9に示すように予め定められた三次元位置POに配置される。
【0070】
次に、ステップ802において、操作者に対し操作を促す。すなわち、両目で見てカーソル位置が基準物体O上に来るようカーソルを移動させ、確定後、マウスをクリックするよう指示を出す。
【0071】
次にステップ803へ進み、操作者との対話的な物体選択操作が開始される。ステップ803では操作者がマウスを操作する間中、操作者からの入力を検査する。
【0072】
ステップ803での入力検査後、操作者からの入力がマウス移動であった場合、ステップ805においてカーソル位置PCを更新し、同時にカーソルの表示も更新する。通常、カーソルの描画はオペレーティングシステムによって処理され、プログラム側で処理する必要はないが、特殊なカーソルをプログラム側で描画したい場合は、カーソル位置PCの更新と同時にカーソルの再描画を行う。
【0073】
ステップ803での入力検査後、操作者からの入力がマウスクリックであった場合、操作者のカーソル位置合わせが完了したと判断し、ステップ808に進み、利き目の判定を行う。利き目の判定は次のように行う。
【0074】
まず、図9に示すように、基準物体O(901)と右目用投影中心位置906を結ぶ直線904が投影面(表示面)と交わる位置をPRとし、同様に、基準物体Oと左目用投影中心位置905を結ぶ直線903が投影面(表示面)と交わる位置をPLとする。今、操作者が両目を使い、物体O上にカーソル位置PCを合わせた場合、操作者の利き目が右目であればカーソル位置PCはPRに一致するか、もしくはPR近傍に来るはずである。逆に、操作者の利き目が左目であればカーソル位置PCはPLに一致するか、もしくはPL近傍に来るはずである。よって、PCがPR、PL、どちらに近いかによって、利き目を判定すればよい。
【0075】
そこで、図8のステップ808において、PCとPRを結ぶ線分の距離と、PCとPLを結ぶ線分の距離を調べ、両者を比較し、その結果、PC・PR間の距離がPC・PL間の距離より小さければ、利き目を右目と判断し、以後の利用に備え「利き目情報」に「右目」を設定する(ステップ8010)。逆に、PC・PL間の距離がPC・PR間の距離より小さければ、利き目を左目と判断し、「利き目情報」に「左目」を設定する(ステップ809)。
【0076】
以上で利き目判別処理が終わる。
【0077】
なお、図8のフローチャートにおいて、操作者からの入力がマウス移動でもマウスクリックでもない場合であり、かつ、その入力を処理したい場合は、ステップ807において適宜必要な処理を実行すればよい。
【0078】
再び、図7のフローチャートに戻って処理手順の説明を続ける。
【0079】
ステップ701が終わると、ステップ702に進み、操作対象となる三次元物体群を描画(立体視用CG画像生成)し、立体表示する。
【0080】
次にステップ703へ進み、操作者との対話的な物体選択操作が開始される。
【0081】
ステップ703では操作者が作業を続ける間中、操作者からの入力を検査する。ステップ703での入力検査後、操作者からの入力がプログラムの終了要求であった場合、ステップ7014へ進みプログラムを終了する。
【0082】
ステップ703での入力検査後、操作者からの入力がマウス移動であった場合、ステップ706に進み、カーソル位置と表示を更新する。この処理は、前記図8におけるステップ805の処理と同様である。
【0083】
ここで、ステップ706が終わると、次の入力を検査すべくステップ703に戻るわけであるが、この時、三次元物体群の状態に変化が起きる等、三次元物体の再描画が必要になった場合は、ステップ702と同じ描画処理を行う。このような再描画の必要性はマウスのドラッグ操作により物体を移動するよう場合に発生する。なお、一つの入力処理終了後、次の入力を検査すべくステップ703に戻る場合、再描画処理を必要に応じ適宜行うものとし、以下のフロー説明においては再描画処理の説明を省略する。
【0084】
ステップ703での入力検査後、操作者からの入力がマウスクリックであった場合、操作者が物体選択を試みたと判断し、ステップ7010に進んで物体選択の処理を実行する。
【0085】
なお、操作者からの入力がマウス移動でもマウスクリックでもない場合であり、かつ、その入力を処理したい場合は、ステップ709において適宜必要な処理を実行し、次の入力を検査すべくステップ703に戻る。
【0086】
ステップ7010からの物体選択の処理は、次のように行われる。
【0087】
まず、ステップ7010において、前記利き目判別サブルーチン(ステップ701)において設定された「利き目情報」を参照し、CG計算のための投影条件を設定する。すなわち、「利き目情報」が右目であれば右目用投影条件を設定し、「利き目情報」が左目であれば左目用投影条件を設定する。
【0088】
次にステップ7011のサブルーチンにおいて作用点計算を行う。以下、作用点計算について説明する。
【0089】
一般的に、三次元CG画像を生成する場合、アプリケーションプログラム側でCG計算に関わる全ての処理を行うことは希であり、通常、CG計算専用のサブルーチンセットを利用し、CG計算に特化したプログラム、あるいはCG計算専用のハードウェアの機能を呼び出す。このようなサブルーチンセットはライブラリ(以下、CGライブラリとする)とよばれ、本実施例でも、CG画像生成に関し、このようなCGライブラリを使用する。さて、今必要とする作用点計算とは、投影面上の座標点を指定し、この座標点と投影中心を結ぶ線を三次元空間に延長し作用線とし、この作用線と交差する物体の有無を調べること、または交差点座標を求めることである。この計算は、広くピック処理として知られ、一般的なCGアプリケーションプログラムにおいて頻繁に発生する。このため、ほとんどのCGライブラリがこの計算機能を提供している。ただし、CGライブラリが描画対象とするデータは三次元ポリゴンであり、CGライブラリが提供するピック処理は普通三次元ポリゴンに対して行われる。このため、アプリケーションプログラム側では、どの物体にどの三次元ポリゴンが属するかという情報を管理すると同時に、各ポリゴンに対しピック処理を実行することにより、作用線と交差するポリゴンの交差点を得て、その結果、作用線と交差する物体を判別することができる。
【0090】
本実施例では、前記CGライブラリが提供するピック処理のサブルーチンを利用してポリゴンの交差点情報、すなわち作用点を得るものとする。よって、交差点計算の詳細に関しては説明を省略するが、これは、公知の煩雑なアルゴリズムの説明を省略するためであり、本実施例の一般性を失うものではない。
【0091】
さて、ステップ7011の作用点計算が終わると、次にステップ7012に進む。
【0092】
作用点計算の結果、交差点が存在した場合、作用点計算によって識別された物体を選択物体とし(ステップ7013)、次の入力を検査すべくステップ703に戻る。また、交差点が存在しなければ、何もせず、同じく次の入力を検査すべく703に戻る。
【0093】
以上で本実施例の処理手順の説明を終わる。
【0094】
このようにして、本実施例によれば、立体画像表示装置を用いたコンピュータシステムにおいて、カーソル表示位置と選択物体の対応付けが適切に行われ、操作者に違和感のない快適な操作感を与えることができる。
【0095】
(実施例2)
前記実施例1は、カーソルを従来通り二次元カーソルとして表示する方法をとっている。しかし、カーソル画像を視差のある立体画像として立体表示し、カーソル自体も三次元物体として扱う方法が存在する。これについて図10を使って説明する。
【0096】
図10は三次元の投影処理を投影軸に対し垂直の方向から見た図である。図10に示すように、カーソル画像をPLの位置に描いた左目用画像1004と、カーソル画像をPRの位置に描いた右目用表示1005を立体表示装置に表示すると、表示面を観測する観測者はPCの位置に立体的なカーソルを見ることができる。さらに、PL,PRの位置を適切に制御すれば、立体カーソルを三次元空間中で自由に移動させることもできる。
【0097】
なお、図10では、左右画像1004と1005は、説明の都合上、前後ずらした位置に描かれているが、実際には同じ位置に存在する。このようにして、立体表示装置上で、カーソルを三次元化、すなわち立体化することが可能である。そこで、実施例2として、前記実施例1において、カーソルを立体表示した場合の実施例を説明する。
【0098】
ただし、カーソルを立体表示し三次元的に移動させるようにした場合でも、前記実施例1とほぼ同様の方法が適用できるため、前記実施例1と比較し変更部分についてのみ説明する。
【0099】
まず、図7のステップ701における利き目判別処理は同じ方法が適用でき、変更はない。
【0100】
図7のステップ706において、カーソル位置PCを移動させる部分は修正される。すなわち、マウス移動のデータを解釈しカーソル位置PCを三次元空間中で移動させる。次いで、三次元カーソル位置PCに対応した、立体カーソル表現用の左右画像を生成し、対象物体物体の左右画像にそれぞれ合成する。これにより、マウスカーソルが三次元空間中で移動し、そのカーソル像が三次元物体と共に立体的に表現される。
【0101】
図7のステップ7011における、作用点の計算方法も若干修正される。これについて、再び、図10を用いて説明する。まず、カーソルを立体表示させた場合においても、前記実施例1と同様に、作用点の選択に関しては利き目側の投影条件(視線条件)を優先させる点は変わらない。そこで、カーソルを立体表示させている状態の投影条件を考えてみると、次のようになる。
【0102】
すなわち、図10に示すように、立体カーソルがPCの位置に見える状態では、右目用カーソル画像はPRの位置にあり、右目片眼で物体1001とカーソルを見た場合、カーソル位置と重なる物体上の点はORである。そして、このORは図10に示すように、右目用投影中心1007とPRを結ぶ直線を延長し、その延長線(作用線)と物体1001との交点として計算される。
【0103】
よって、利き目が右目の操作者に対しては、図10に示すように右目用カーソル画像1004のカーソル位置PRを右目用投影中心1007と結び作用線1003を作り、この作用線1003と物体1001との交点ORを作用点とする。同様に利き目が左の操作者に対しては作用線1002と物体1001との交点OLを作用点とすればよい。
【0104】
以上の修正を施せば、三次元カーソルを使った場合にも、本発明が提案する操作方法が適用できる。
【0105】
(実施例3)
本実施例では、三次元ペイント操作方法を説明する。
【0106】
すなわち、マウス操作により三次元ペン(三次元カーソル)を操作し、三次元物体の表面に三次元ペンで着色するという操作を想定する。ただし、本発明の本質は三次元カーソルを操作する部分にあるので、説明においては着色処理の部分を省略し、三次元ペンを移動させる部分についてのみ説明する。
【0107】
システム構成
本実施例の“三次元ペイント操作方法”に使われるコンピュータシステムの構成,動作は、実施例1と同様なので、実施例1の説明を援用する。
【0108】
処理手順
図13のフローチャートは本実施例の処理手順を表している。以下、図13を用いて本実施例の処理手順を説明して行く。
【0109】
まず、ステップ701において利き目判別処理を行い、操作者の利き目を決定しておく。
【0110】
ただし、利き目判別処理は、操作者が自分の利き目を知らない等の理由により、本システムによって自動的に判別する方法を示している。よって、操作者が自分の利き目を既によく認知している場合には、利き目の判別処理を省き、利き目がどちらであるかという情報を、操作者に直接入力させてもよい。
【0111】
図13におけるステップ701の利き目判別サブルーチンおよび判別処理の原理は実施例1の場合と同じなのでその説明を援用する。
【0112】
再び、図13のフローチャートに戻って処理手順の説明を続ける。
【0113】
ステップ701が終わると、ステップ1302に進み、操作対象となる三次元物体群を描画、すなわち、三次元物体群の立体視用CG画像を生成し立体表示する。次いで、三次元カーソルを表示すべくステップ1303に進む。
【0114】
ステップ1303ではまずカーソルスクリーン座標を初期値に設定する。カーソルスクリーン座標とは、三次元カーソルの三次元座標を決めるための補助的な二次元座標であり、表示面上でのカーソル座標に対応する。つまり、カーソルスクリーン座標とは、従来の二次元表示コンピュータシステムにおける二次元的なカーソル座標に相当する。以降、カーソルスクリーン座標を(Sx,Sy)と記す。カーソルスクリーン座標の初期値としては、たとえば画面中央の座標値などに設定すればよい。
【0115】
次にステップ1304へ進み、三次元カーソル描画サブルーチンの処理により、三次元カーソルを描画する。
【0116】
以下、三次元カーソル描画サブルーチンとして行われる処理を説明する。
【0117】
まず、カーソルスクリーン座標と投影条件にもとづき三次元カーソル位置を算出する。これは、CG計算に使用する投影面上において、カーソルスクリーン座標で指定される一点を決め、この点と投影中心(視点)を結んで出来る直線を三次元空間に延長し、この延長直線と物体との交点を三次元カーソル位置とすることによって行われる。ただし、ここでの投影条件は、利き目判別処理ステップ701において利き目と判断された側の目に対する投影条件を使用する。また、三次元カーソル位置は前記交点に等しくとらなくとも、交点から、少し視点側にずらした位置にとってもよい。これにより、三次元カーソルを表現するための物体と、操作対象の物体との重なりを避けることができる。また、延長直線と物体との交点が存在しない場合には延長直線上の点であり、かつ、視点から適度な距離にある点を三次元カーソル位置とすればよい。前記延長直線と物体との交点計算はCGライブラリの機能を使って行う。以下これを説明する。
【0118】
一般的に、三次元CG画像を生成する場合、アプリケーションプログラム側でCG計算に関わる全ての処理を行うことは希であり、通常、CG計算専用のサブルーチンセットを利用する。これにより、CG計算に特化したプログラム、あるいはCG計算専用のハードウェアの機能を利用することができる。このようなサブルーチンセットはCGライブラリとよばれ、本実施例でも、CG画像生成に関し、このようなCGライブラリを使用する。さて、今必要とする交点計算は、投影面上の座標点を指定し、この座標点と投影中心を結ぶ直線と物体との交差点座標を求めることである。この計算は、広くピック処理として知られ、一般的なCGアプリケーションプログラムにおいて頻繁に発生する。このため、ほとんどのCGライブラリがこの計算機能を提供している。ただし、CGライブラリが描画対象とするデータは三次元ポリゴンであり、CGライブラリが提供するピック処理は普通三次元ポリゴンに対して行われる。このため、アプリケーションプログラム側では、どの物体にどの三次元ポリゴンが属するかという情報を管理すると同時に、各ポリゴンに対しピック処理を実行することにより、直線と物体との交点を得ることができる。
【0119】
本実施例では、CGライブラリが提供するピック処理のサブルーチンを利用して物体の交点座標を得るものとする。よって、交点計算の詳細に関しては説明を省略するが、これは、公知の煩雑なアルゴリズムの説明を省略するためであり、本実施例の一般性を失うものではない。
【0120】
前記交点計算により三次元カーソル位置が算出されると、次に三次元カーソル位置に三次元カーソルを配置する。三次元カーソルの三次元形状は実世界におけるペンの形状を模擬したような物であってもよいし、複数の直線を交差させたような単純なものであってもよい。
【0121】
所定位置に配置された三次元カーソルは、ステップ1302の操作対象三次元物体の描画と同様の方法により、立体画像化される。すなわち、三次元カーソルの右目用CG画像、および左目用CG画像が生成される。生成された三次元カーソルの立体画像は、既に生成された操作対象三次元物体の立体画像に合成される。このようにして三次元カーソルが描画され、操作対象の三次元物体と共に立体表示される。
【0122】
以上、三次元カーソル描画サブルーチン内の処理が説明された。
【0123】
再び、図13のフローチャートに戻って処理手順の説明を続ける。
【0124】
ステップ1304の処理が終わると、次にステップ1305へ進み、操作者との対話的な操作が開始される。
【0125】
ステップ1305では操作者が作業を続ける間中、操作者からの入力を検査する。ステップ1305での入力検査後、操作者からの入力がプログラムの終了要求であった場合はプログラムを終了する。
【0126】
ステップ1305での入力検査後、操作者からの入力がマウス移動であった場合、三次元カーソル位置と画面表示を更新すべくステップ1309に進む。一方、入力がマウス移動でなければ次の入力を検査すべくステップ1305に戻る。ただし、操作者からの入力がマウス移動以外の場合であり、かつ、その入力を処理したい場合は、ステップ1308において適宜必要な処理を実行すればよい。
【0127】
ステップ1309からの三次元カーソル位置と画面表示の更新は次のように行う。
【0128】
まず、三次元カーソル画像の変化に伴い、背後の三次元物体を再描画する必要があるため、ステップ1309において三次元物体を描画する。この処理はステップ1302と同じものであり、説明は省略する。
【0129】
次いで、ステップ1310において、マウス移動量(Dx,Dy)にもとづき、前記カーソルスクリーン座標(Sx,Sy)を更新する。この更新に用いる計算は、単にマウス移動量に適度な係数Kをかけ、式1のように算出すればよい。
【0130】
(式1)
Sx=K×Dx
Sy=K×Dy
【0131】
カーソルスクリーン座標が更新されると、ステップ1311の三次元カーソル描画サブルーチンにおいて、三次元カーソルを再描画する。このステップ1311はステップ1304と同じものであり、説明は省略する。ステップ1311の描画処理が終われば次の入力を検査すべく再びステップ1305に戻る。
【0132】
前述の処理手順によって本実施例の方法が実現される。
【0133】
以上説明したように、本実施例によれば、立体画像表示装置を用いたコンピュータシステムにおいて、操作者にとって適切な位置に三次元カーソルを表示することができ、操作者に違和感のない快適な操作環境を与えることができる。
【0134】
【発明の効果】
以上説明したように、本発明によれば、立体画像表示装置を用いたコンピュータシステムにおいて、カーソル表示位置と選択物体の対応付けが適切に行われ、操作者に違和感のない快適な操作感を与えることができる。
【図面の簡単な説明】
【図1】投影の説明図
【図2】立体視の原理説明図
【図3】ポリゴンレンダリングのフローチャート
【図4】立体CG画像生成の説明図
【図5】立体視環境での作用点の二重性の説明図
【図6】実施例1で使用われるコンピュータシステムの構成を示すブロック図
【図7】実施例1の処理手順を示すフローチャート
【図8】利き目判別サブルーチンの手順を示すフローチャート
【図9】利き目判別処理の原理説明図
【図10】実施例2の説明図
【図11】三次元物体が二次元表示面に投影されている状況を示す図
【図12】立体視用CGの三次元空間と三次元ペイントの関係を示す図
【図13】実施例3の処理手順を示すフローチャート
【符号の説明】
101 三次元物体
106 カーソル
601 コンピュータ
602 CPU
605 記憶装置
606 画像メモリ
607 左目用画像
608 右目用画像
609 立体表示装置
【発明の属する技術分野】
本発明は、三次元コンピュータグラフィックス技術を用いる、三次元物体操作、三次カーソル表示等に関し、特に、操作感の改善に関するものである。
【0002】
【従来の技術】
従来の技術a(三次元作用点計算)
近年、コンピュータグラフィックス(以降CGとよぶ)を用いた三次元物体の表示技術が普及しており、三次元CAD,ゲーム,シミュレーション等多くの分野に用いられている。また、コンピュータの表示装置として、従来の二次元的な表示装置だけではなく、視差画像により立体感を与える立体画像表示装置も普及し始めている。このような立体画像表示装置により、前記CGによる三次元物体画像を表示すれば、観測者に対し物体の立体感を与えることができるため、臨場感の向上につながる。さらに、立体画像表示装置を三次元CADのように三次元物体操作に利用する場合には、観測者が物体の奥行き情報を感じ取ることができるため、物体間の前後関係が把握し易い。このため、操作者の操作感が快適になり作業も効率的になる。最近では、前記立体画像表示装置として、従来通りの二次元的な表示機能も備え、立体表示と二次元表示を適宜切り替え、従来通りの二次元表示環境と併用できるものが登場している。
【0003】
このような状況を考えると、今後、三次元情報を扱うコンピュータシステムとして、表示装置に立体画像表示装置を使用したシステム(以下、立体表示コンピュータシステムとよぶ)が広く普及し、このシステムを用いて、三次元物体を操作する作業が盛んに行われるものと予想される。
【0004】
ただし、立体表示コンピュータシステムを使う場合、従来のコンピュータの環境、および操作方法がそのまま使えること、または、自然に拡張するような方法によって使用できることが必須である。
【0005】
一方、従来型コンピュータシステム、すなわち二次元的な表示装置を使ったコンピュータシステム上で三次元物体を操作する作業は、三次元CAD等に見られるように従来から盛んに行われている。以下、このような従来環境において行われてきた二次元物体、および三次元物体の操作方法を説明する。
【0006】
二次元GUI環境
従来のコンピュータシステムにおいてはGUI(グラフィック・ユーザ・インターフェース)とよばれる操作環境がほぼ必須のものとなっている。このGUI環境においては、マウス等のポインティングデバイスを用い、操作対象(ファイル,アイコン等)の選択や移動が頻繁に行われている。この従来のGUI環境を以降、二次元GUI環境とよぶことにする。また、立体表示コンピュータシステムのGUI環境を以降、立体表示GUI環境とよぶことにする。
【0007】
二次元GUI環境上の二次元物体操作
まず、二次元GUI環境(従来環境)における二次元物体操作を振り返ってみる。
【0008】
従来、二次元GUI環境上でアイコン,図形等の二次元物体を選択する場合、カーソルを物体上に移動させ、マウスボタンのクリック等により目的物体を選択していた。このような操作は、マウスを介して操作者側から対象物体に作用を与える操作であると捉えることができる。そして、カーソルの位置制御とは、対象物体上の作用点を定める操作であると考えることができる。
【0009】
この考えによれば、マウスクリックにより二次元物体を選択する過程は次のように表現できる。すなわち、カーソルの移動により作用点を定め、マウスクリックにより作用を発生させ、複数の物体群から作用点を持つものを唯一選択する。以下、カーソル位置から物体上の作用点を決める処理を、物体の作用点計算とよぶことにする。操作対象を二次元物体とする場合は、カーソル位置が作用点に直接対応しているので作用点という概念は冗長な考え方である。しかし、操作対象を三次元物体に拡張する場合は、カーソル位置と作用点を区別して考える必要がある。
【0010】
二次元GUI環境上の三次元物体操作
次に、二次元GUI環境上での三次元物体の操作方法に目を向ける。二次元GUI環境上で三次元空間を扱う場合、三次元物体像がCG計算により二次元面に投影され表示される。操作者はこの二次元面に投影された三次元物体を見ながら、目的物体像の上にマウスカーソルを移動させ、マウスボタンのクリック等により目的物体を選択する。この方法は、前記二次元物体の操作方法を自然に拡張した方法であり、操作者にとって違和感がなく、従来広く用いられてきた。ただし、マウスカーソルは二次元位置にあり、物体は三次元であるため、前述の作用点計算は三次元的に行われる。この三次元的作用点の計算を、図1を使って説明する。図1は三次元物体が二次元平面に投影される様子、およびマウスカーソルと作用点の関係を表した図である。
【0011】
二次元GUI環境では、二次元投影面のCG画像が表示面に表示されるため、マウスカーソルは、図1に示すように、CG計算上の二次元投影面105に存在すると見なすことができる。そこで、カーソル位置106と投影中心107を結ぶ直線を三次元空間へ延長して作用線103とし、この作用線103と物体101との交点102を作用点する。これが、従来用いられてきた作用点計算の方法である。
【0012】
従来の技術b(三次元ペイント操作)
立体表示コンピュータシステム
近年、コンピュータグラフィックスを用いた三次元物体の表示技術が普及しており、三次元CAD,ゲーム,シミュレーション等多くの分野に用いられている。また、コンピュータの表示装置として、従来の二次元的な表示装置だけはなく、視差画像により立体感を与える立体画像表示装置も普及し始めている。このような立体画像表示装置を用い、CGによる三次元物体画像を表示すれば、現実的な立体感が得られる。さらに、観測者が物体の奥行き情報を感じ取ることができるため、物体間の前後関係が把握し易く操作感と作業効率的の向上につながる。これらの点を考えると、今後、三次元情報を取り扱う従来環境の多くに、立体画像表示装置を利用したコンピュータシステムが導入されることが予想される。
【0013】
以下、表示装置に立体画像表示装置を使用したコンピュータシステムを「立体表示コンピュータシステム」とよぶことにし、従来型の二次元表示装置を使用したコンピュータシステムを「二次元表示コンピュータシステム」とよぶことにする。
【0014】
三次元マウスカーソル
従来の三次元物体を操作するコンピュータ環境においては、マウスまたはそれに相当するポインティングデバイスを用い、三次元中の一点を指定する操作が頻繁に行われてきた。このようなマウスによる三次元位置指定は、三次元物体を操作する上での重要な操作方法であるため、立体表示コンピュータシステムにおいても必須のものと考えられる。そこで、従来の三次元操作環境を、立体表示コンピュータシステム上に移行させるためには、マウスによる三次元位置指定の方法をよく分析する必要がある。以下、従来存在する方法についてまとめてみる。
【0015】
通常、マウス操作を行う場合、操作者の着目位置を示すカーソルが画面上に表示される。三次元位置指定を行う場合、カーソルを従来通り二次元画面上に表示させ、二次元面から三次元空間への逆投影処理により三次元位置を指定すること(二次元カーソル法とする)も可能であるが、カーソル自体を三次元的に扱い三次元空間中で移動制御することもできる(三次元カーソル法とする)。特に、三次元カーソル法の場合、立体表示コンピュータシステム上では、カーソルを視差画像により立体表示することができるので、三次元空間中でのマウス位置を把握し易い。実際、三次元カーソル法を立体表示コンピュータシステム上で行う方法が過去においても提案されていた。ただし、カーソルを三次元空間中のどこに配置するかという点は、目的のアプリケーションプログラム毎の分析を要する。
【0016】
三次元ペイント
さて、前述したマウスによる三次元位置指定が重要である三次元操作の一例であり、かつ、立体表示コンピュータシステムの有効性が発揮される例として、従来の三次元ペイント操作を取り上げることができる。
【0017】
この三次元ペイントとは、三次元物体の表面に対して描画を行うものであり、三次元CGゲームにおけるキャラクタ作成によく使われる。ゲームに登場するキャラクタを三次元物体として表現する場合、キャラクタのより細かい視覚上の特徴を二次元画像(テクスチャ画像)に持たせることが多い。そして、このテクスチャ画像を三次元形状データに合成(通常テクスチャマッピングとよばれる)してキャラクタの三次元表現を行う。このようなテクスチャ画像の作成を行う場合、テクスチャマッピングされた三次元物体に直接ペンで描画を行い、対話的にテクスチャ画像を作成する方法が三次元ペイント操作である。また、三次元CADにおいて、物体表面の特定の位置にマーカーでマークを着けるような操作も一種の三次元ペイントと解釈してよい。
【0018】
このような三次元ペイントを立体表示コンピュータシステム上で行えば、前述したように操作感と作業効率的の向上につながる。ただし、この場合、マウスカーソルを三次元空間中のどこに配置し、立体画像表示装置上でどのように表示するかという問題を分析する必要がある。以下、この点について説明する。
【0019】
現実の環境で物体に描画を行う場合、ペンを物体上の目的位置に配置し描画を行う。このため、CGを用いた仮想的な三次元物体操作環境においても、カーソルで表されるペン位置を、対象物体上の着目位置に配置する方が自然である。これについて図11を用いて説明する。図11は三次元ペイントの対象となる三次元物体が二次元表示面上に投影されている状況を模式的に表した図である。
【0020】
前記二次元カーソル法のようにカーソルを二次元面内(表示面内)で扱う場合は、表示面1106上にペン位置を表すカーソル1107が表示される。そして、CG計算の投影条件にもとづいた直線1105をカーソル指示位置1108から放射し(逆投影し)、物体と交差する点1104を着目点と解釈する。一方、前記三次元カーソル法のようにマウスカーソルを三次元的に扱う場合、ペン(もしくはペン位置を表すカーソル)は三次元物体1103として表現され、ペンは物体表面上を軌跡1102のように移動し、ペンの指す位置が着目点そのものに対応している。二次元カーソル法よりも三次元カーソル法の方が三次元ペイントの自然な操作方法となることは明らかである。また、三次元カーソル法の場合、マウスカーソル画像を立体表示すればペンの三次元位置が把握し易くなる。
【0021】
以上、従来の三次元ペイント操作を立体表示コンピュータシステムに対応させる自然な手法を説明した。
【0022】
なお、関連する技術は、下記文献にも記載されている。
【0023】
【特許文献1】
特開平8−69547号公報
【特許文献2】
特開平5−127809号公報
【0024】
【発明が解決しようとする課題】
前記従来の技術aについての課題
さて、立体表示GUI環境上での三次元物体の操作方法を行う場合、その方法は前記二次元GUI環境上での三次元物体操作の方法を自然に引き継ぐことが好ましい。しかし、この方針に従いマウス操作により物体を選択する方法を考えてみると、立体視に起因する問題点が発生する。以下、この問題点について説明する。
【0025】
立体CG画像の原理
ここで、一旦、以降の説明のために図2と図3を使い、立体視の原理、及びCG画像を立体視に対応させる手法について簡単に説明しておく。
【0026】
立体視の原理
まず、立体視の原理について説明する。
【0027】
図2の(a)は実物体を観測する観測者を上から見た図であり、図2の(b)は観測者と立体表示装置を上から見た図である。人間は三次元空間中にある物体203の注目点204を注視した場合、図2の(a)に示すように、眼球の左右の光軸201,202を注目点204で交差するよう調節する。この動作は「融像」とよばれている。ステレオ立体視を利用した立体表示装置は、この融像動作を、観測者に人工的に誘起させる事によって立体感を与えている。すなわち、図2の(b)に示すように、視差のある左右画像2011と2012を、何らかの方法で、左右の目に分離入力されるように工夫する。この時、表示装置を注視する観測者は、視差のある注目点の左右画像を融像すべく、眼球の光軸207,208を図2の(b)に示すよう制御する。この結果、光軸の交差する点、すなわち図2の(b)の2010に、物体の注目点が存在するように感じられる。
【0028】
なお、図2の(b)では、左右画像2011と2012は、説明の都合上、前後ずらした位置に表示されているが、実際には同じ位置に表示される。左右画像を左右の眼球に、それぞれ分離入力させる方法は、レンチキュラーレンズを利用した方法や、メガネシャッター方式等がよく知られている。
【0029】
CG画像生成
一方、図3は、CG計算により三次元物体データを二次元画像化、すなわち可視化する手法を示している。CG計算のアルゴリズムは複数存在するが、ここではリアルタイムレンダリングとよばれる分野で広く用いられているポリゴン単位の計算方法(以降、ポリゴンレンダリング)を取り上げる。ポリゴンレンダリングは、物体を構成する(または定義する)各ポリゴンに対し、図3に示した301〜306の行程を施すことによって行われる。このアルゴリズムは、古くからよく知られ、公知のものであるので301〜306の各行程の説明は省略する。
【0030】
立体CG画像生成
前記立体表示装置の原理を利用し、立体感のあるCG画像を表示する手法を、図4を使って説明する。図4の(a)は図1の投影処理を投影軸に対し垂直の方向から見た図である。立体表示を行う場合、図4に示すように右目用投影中心405にもとづく右目用の投影を行った画像(c)と、同じく左目用投影中心404にもとづく左目用の投影を行った画像(b)の二種類のCG画像を生成する。そして、この二つの画像を右目用画像,左目用画像として、前記図2の2012と2011にそれぞれ表示すれば、三次元物体のCG画像を立体的に見せることができる。
【0031】
以上の説明を踏まえ、立体表示装置上の立体CG画像を見ながら、マウスにより三次元物体を選択する場合を考える。この時、前記二次元GUI環境上の三次元物体操作と同様の方法によって作用点の計算を行うことが好ましい。すなわち、カーソル位置と投影中心を結ぶ作用線を三次元空間の中へ延長し、この作用線と物体との交点を作用点としたい。ところが、前記立体CG画像生成で述べたように三次元物体の二次元面への投影条件、および投影像は右目用と左目用の二つが存在し、それぞれ異なっている。
【0032】
図5はこの状況を説明する図であり、立体視用の投影処理を投影軸に対し垂直の方向から見た図である。図5からわかるようにカーソル位置506に対して、右目を基準にした作用点502(物体A上)と左目を基準にした作用点504(物体B上)が二つ存在する。このように立体視環境では、異なる二つの作用点が存在してしまい、その結果、異なる二つの選択物体が存在することになる。このように作用点が二つ発生してしまう問題を以下、立体視環境での作用点の二重性とよぶことにする。
【0033】
この作用点の二重性に対する解決策は、射撃の「標準合わせ」との類推により、自然に導くことができる。以下、この解決策を説明する。
【0034】
立体視状態でマウスカーソルを基準に作用点を決定する行為は、操作者直前にある透明標準パネル上の標準、すなわちマウスカーソルを動かし、透明標準パネルより遠方にある標的物体、すなわち操作対象物体に標準を合わせる行為に相当する。ただし、実際の射撃においては、左右どちらか一方の目を使って標準合わせを行うわけであるが、立体表示装置を使った作業では、選択操作の度に片目を閉じることは不便である。このため、立体表示GUI環境では両目を使って標準合わせに相当する行為を行うことになる。ところが、周知の通り、人間には利き目が存在し、両目を使って標準合わせを試みた場合、感覚上、利き目側の目で見た標準合わせが優先され、結果的に利き目側を使った標準合わせが行われる。この事実にもとづけば、立体表示装置を注視しながら、マウスによる物体選択を行う場合、操作者にとって違和感のない操作方法とは、利き目側で標準合わせを行ったように物体が選択されることである。すなわち、作用点の計算において、利き目が右目の操作者に対しては、右目用の投影条件にもとづいた計算方法を適用し、利き目が左目の操作者に対しては、左目用の投影条件にもとづいて作用点を計算すべきである。
【0035】
三次元ペインティング
前記、立体視環境での作用点の二重性は、三次元物体を選択する場合だけでなく、三次元ペインティング操作などにも発生する。これについて以下簡単に説明する。
【0036】
従来の二次元ペインティング操作では、描画対象、すなわち平面キャンバスを二次元面として扱い、希望の着色位置にマウスカーソルを移動させ、マウスのクリック(すなわちピッキング)により着色位置に色を塗る、という操作であった。三次元ペインティングとは、この操作を三次元に拡張したものであり、三次元物体表面上の希望する着色位置に色を塗ることである。すなわち、二次元ペインティングで言うところの平面キャンバスが三次元ペインティングで言うところの三次元物体になる。そして、着色位置は三次元的作用点の算出によって決められる。よって、前記物体選択の場合と同様に作用点の二重性の問題が発生する。
【0037】
以上述べたように、従来型コンピュータシステムで使われていたポインティングデバイスによる操作方法を、立体表示コンピュータシステムに導入しようとした場合、人間の両眼視差、特に利き目の影響を考慮した操作方法が、従来提供されていなかった。
【0038】
本発明は、このような状況のもとでなされたもので、立体画像表示装置と二次元(または三次元)カーソルを用い、三次元物体を操作する場合において、人間の両眼視差、特に利き目の影響を考慮した自然な操作環境を提供することを第1の課題とするものである。
【0039】
前記従来の技術bについての課題
従来の技術bで説明したように、従来の二次元表示コンピュータシステム上で行われていた三次元ペイント操作を、立体表示コンピュータシステム上で行うことは、ユーザの操作感と作業効率を上げる上で大きな意義を持つ。ただし、立体表示コンピュータシステム上の快適な三次元ペイント操作を実現するためには、三次元カーソルを適切に取り扱う必要がある。すなわち、より快適な操作感を実現するためには、描画位置を表すカーソルが物体表面上の着目位置に配置されるようにし、さらに、カーソル画像に視差を持たせて立体表示することが好ましい。
【0040】
しかしながら、この着目位置(すなわちカーソルの配置位置)の決定方法を考えると、二次元表示コンピュータシステムには存在しなかった立体表示固有の問題点が発生し、従来この問題点が正確に取り扱われていなかった。以下、この問題点について説明する。
【0041】
立体CG画像の原理
立体視の原理
CG画像生成
立体視用CG画像生成 これらの項目については、「前記従来の技術aについての課題」における同一項目の説明を援用する。
【0042】
以上の説明を踏まえ、立体表示コンピュータシステム上で三次元ペイント操作を行う場合の問題点を、図12を用いて説明する。図12は立体視用CG生成に関わる三次元空間と、三次元ペイントの関係を模式的に表したものであり、三次元物体とそれを目視する操作者を、頭上から見た図である。
【0043】
今、操作者がマウスを制御し、三次元カーソル、すなわち三次元ペンを物体1201の表面上をなぞらせて、何らかの描画を行ったものと仮定する。この場合、三次元ペン(正確にはペン先)の軌跡を考えてみると、軌跡は物体表面上の可視部分にあるべきであり、不可視の部分にあるべきではない。すなわち、物体上で、操作者から見て不可視部分にペンが回り込み、そこに描画されてしまうことは操作者にとって不都合である。ところが、物体表面のどの部分が可視になるかという点は投影条件、すなわち視点に依存する。そして、前述したように立体視用CGを生成する場合、右目用と左目用の二つの異なる投影条件が存在するため、図12からもわかるように可視部分の判断基準が二つ存在する。図12では右目基準で可視となる部分をなぞった軌跡が実線として表され、同じく左目基準の軌跡が破線として表されている。ただし、実線と破線は見やすくなるよう少しずらして書かれている。
【0044】
以上説明したように、立体表示コンピュータシステム上の三次元ペイント操作において、着目点を三次元カーソルで表現しようとした場合、着目点の計算方法(または判別方法)に右目用と左目用の二つが存在するという問題点が発生する。
【0045】
以上述べたように、二次元表示コンピュータシステムで行われていた三次元ペイント操作を、立体表示コンピュータシステム上で行うようにし、さらに三次元カーソルによる操作性の向上を試みた場合、人間の両眼視差の影響を考慮した操作方法が従来提供されていなかった。
【0046】
本発明は、このような状況のもとでなされたものであり、立体画像表示装置を用い三次元物体を操作する場合において、人間の両眼視差を考慮した自然な三次元カーソルの表示環境を提供することを第2の課題とするものである。
【0047】
【課題を解決するための手段】
前記課題を解決するため、本発明では、三次元物体操作方法を次の(1)ないし(4)および(6)のとおりに構成し、利き目の判別方法を次の(5)のとおりに構成し、三次元カーソル表示方法を次の(7)ないし(9)のとおりに構成し、情報処理装置を次の(10)のとおりに構成し、プログラムを次の(11)のとおりに構成する。
【0048】
(1)表示装置として視差にもとづく立体感を与える立体画像表示装置を用い、
三次元物体を二次元画像化して表示する手法として、右目用,左目用二種類の異なる投影法を適用して作成された、右目用,左目用二枚の投影画像を、前記立体画像表示装置に表示し、
操作者によって位置制御されるカーソルを使い三次元物体上の作用点を選択する際に、操作者の利き目に応じ、利き目側の表示画像を作成するために使用した投影条件にもとづき、カーソル位置に対応する投影面の一点と投影中心を結んだ直線を三次元物体側に延長し、該三次元物体と該直線との交点を操作者所望の作用点とすることを特徴とする三次元物体操作方法。
【0049】
(2)前記(1)に記載の三次元物体操作方法によって得られる作用点を用い、複数の三次元物体の中から当該作用点に対応した物体を選択することを特徴とする三次元物体操作方法。
【0050】
(3)カーソルを三次元物体として扱い三次元カーソルとし、操作対象の三次元空間中に配置し、三次元物体の二次元画像化手法により、カーソルの左右ステレオ画像を生成し、前記立体画像表示装置に立体表示させ、
操作者によって位置制御される前記三次元カーソルを使い三次元物体上の作用点を選択する方法であって、
操作者の利き目に応じ、利き目側の表示画像を作成するために使用した投影条件にもとづき、利き目側用の投影面上に投影される三次元カーソル位置と投影中心を結んだ直線を三次元物体側に延長し、三次元物体と該直線との交点を操作者所望の作用点とすることを特徴とする三次元物体操作方法。
【0051】
(4)前記(3)に記載の三次元物体操作方法によって得られる作用点を用い、複数の三次元物体の中から該当作用点に対応した物体を選択することを特徴とする三次元物体操作方法。
【0052】
(5)定められた三次元位置にある基準三次元物体を視差にもとづく立体感を与える立体画像表示装置に立体表示させた状態で、
操作者に前記基準三次元物体とカーソルを両眼で観測させ、
前記基準三次元物体とカーソル位置が感覚上同じ位置に来るようカーソル位置を制御させカーソル位置を決定させ、
決定されたカーソル位置を、前記基準三次元物体の二次元画像化に使用した投影面と対応付け位置を決め、該位置を入力位置とし、該入力位置が、該基準三次元物体の右目用投影画像の位置と、該基準三次元物体の左目用投影画像の位置のどちらに近いかを比較し、近い方の位置に対応する投影画像が適用される側の目を、利き目と判定することを特徴とする利き目の判定方法。
【0053】
(6)操作者の利き目として、前記(5)に記載の判定方法により判定された利き目を用いるか、または操作者の認知する利き目を用いることを特徴とする、前記(1)ないし(4)のいずれかに記載の三次元物体操作方法。
【0054】
(7)三次元物体操作のための三次元カーソルを表示する方法であって、
表示装置として、視差にもとづく立体感を与える立体画像表示装置を用い、
三次元物体を二次元画像化して表示する手法として、右目用,左目用二種類の異なる投影法を適用して作成された、右目用,左目用二枚の投影画像を、前記立体画像表示装置に表示し、
操作者によって位置制御されるポインティングデバイスを用い前記三次元カーソルを移動させる際に、操作者の利き目にもとづき、利き目側の表示画像において可視となる三次元物体の表面上で前記三次元カーソルを移動させることを特徴とする三次元カーソル表示方法。
【0055】
(8)三次元物体の可視表面上、もしくは可視表面近傍に三次元カーソルを表示する方法であって、
三次元から二次元の投影処理に使用する投影面上に、補助的二次元座標を設け、操作者のポインティングデバイス操作と該補助的二次元座標の変化を連動させ、該補助的二次元座標を、投影処理の逆行程により三次元物体面上の座標へ変換し、得られた三次元座標を三次元カーソルの表示位置とし、
かつ、該投影処理が利き目側の表示画像を生成するために使用される投影処理であることを特徴とする三次元カーソル表示方法。
【0056】
(9)操作者の利き目として、前記(5)に記載の判定方法により判定された利き目を用いるか、または操作者の認知する利き目を用いることを特徴とする、前記(7)または(8)に記載の三次元カーソル表示方法。
【0057】
(10)視差にもとづく立体感を与える立体画像表示装置と、
利き目を設定する利き目設定手段と、
前記立体画像表示装置に表示する三次元物体の位置の決定を、前記利き目設定手段に設定されている利き目にもとづいて行うように制御する制御手段と、
を備えたことを特徴とする情報処理装置。
【0058】
(11)前記(1)ないし(9)のいずれかに記載の方法を実現するためのプログラム。
【0059】
【発明の実施の形態】
以下本発明の実施の形態を、三次元物体操作方法,三次元ペイント操作方法の実施例により詳しく説明する。なお、本発明は、方法の形に限らず、実施例の説明に裏付けられて、装置の形で、また、前記方法を実現するためのプログラムの形で実施することもできる。
【0060】
【実施例】
(実施例1)
本実施例では、複数の三次元物体の中から、特定の一つの物体をマウス操作によって選択する操作方法を説明する。
【0061】
システム構成
図6は実施例1である“三次元物体操作方法”に使われるコンピュータシステムの構成を示すブロック図である。コンピュータ601の記憶装置605には、本実施例の三次元物体操作方法を実行するためのプログラムが格納される。このプログラムはコンピュータのCPU602によって実行される。また、物体の三次元表現に使われる三次元物体データもコンピュータの記憶装置605に格納される。この三次元物体データとは、頂点座標情報と、各頂点の連結によって定義されるポリゴン情報から構成されるデータである。
【0062】
CG計算によって作成された右目用CG画像608と左目用CG画像607は画像メモリ606に置かれる。右目用CG画像608と左目用CG画像607は、立体表示装置609に送られ立体表示される。この時、立体表示装置609がメガネシャッター方式のようなものであれば、左右画像が時分割で立体表示装置609にそれぞれ送られる。また、立体表示装置609がレンチキュラーレンズ方式のようなものであれば、左右画像が一旦、ラインインターリーブ合成され一つの画像となり、その画像が立体表示装置609に送られる。
【0063】
操作者とコンピュータの対話には、マウス604と、必要に応じキーボード603等の入力装置を用いる。
【0064】
処理手順
図7のフローチャートは本実施例の処理手順を表している。以下、図7を用いて本実施例の処理手順を説明して行く。
【0065】
まず、ステップ701(図では701と略記する、以下同様)において利き目判別処理を行い、操作者の利き目を決定しておく。
【0066】
ただし、以下説明する利き目判別処理は、操作者が自分の利き目を知らない等の理由により、本システムによって自動的に判別する方法を示している。よって、操作者が自分の利き目を既によく認知している場合には、利き目の判別処理を省き、利き目がどちらであるかという情報を、操作者に直接入力させてもよい。
【0067】
図8のフローチャートは図7のフローチャートにおける利き目判別サブルーチンの手順を表している。また、図9は利き目判別処理の原理を説明する図であり、三次元空間を投影軸に対し垂直の方向から見た図である。
【0068】
図8と図9を用いて利き目判別処理について説明する。以下、フロー説明は図8を使うものとする。
【0069】
まずステップ801において、基準物体O(図9の901)を三次元空間中に配置し、立体CG画像を生成し立体表示する。この時、基準物体Oは図9に示すように予め定められた三次元位置POに配置される。
【0070】
次に、ステップ802において、操作者に対し操作を促す。すなわち、両目で見てカーソル位置が基準物体O上に来るようカーソルを移動させ、確定後、マウスをクリックするよう指示を出す。
【0071】
次にステップ803へ進み、操作者との対話的な物体選択操作が開始される。ステップ803では操作者がマウスを操作する間中、操作者からの入力を検査する。
【0072】
ステップ803での入力検査後、操作者からの入力がマウス移動であった場合、ステップ805においてカーソル位置PCを更新し、同時にカーソルの表示も更新する。通常、カーソルの描画はオペレーティングシステムによって処理され、プログラム側で処理する必要はないが、特殊なカーソルをプログラム側で描画したい場合は、カーソル位置PCの更新と同時にカーソルの再描画を行う。
【0073】
ステップ803での入力検査後、操作者からの入力がマウスクリックであった場合、操作者のカーソル位置合わせが完了したと判断し、ステップ808に進み、利き目の判定を行う。利き目の判定は次のように行う。
【0074】
まず、図9に示すように、基準物体O(901)と右目用投影中心位置906を結ぶ直線904が投影面(表示面)と交わる位置をPRとし、同様に、基準物体Oと左目用投影中心位置905を結ぶ直線903が投影面(表示面)と交わる位置をPLとする。今、操作者が両目を使い、物体O上にカーソル位置PCを合わせた場合、操作者の利き目が右目であればカーソル位置PCはPRに一致するか、もしくはPR近傍に来るはずである。逆に、操作者の利き目が左目であればカーソル位置PCはPLに一致するか、もしくはPL近傍に来るはずである。よって、PCがPR、PL、どちらに近いかによって、利き目を判定すればよい。
【0075】
そこで、図8のステップ808において、PCとPRを結ぶ線分の距離と、PCとPLを結ぶ線分の距離を調べ、両者を比較し、その結果、PC・PR間の距離がPC・PL間の距離より小さければ、利き目を右目と判断し、以後の利用に備え「利き目情報」に「右目」を設定する(ステップ8010)。逆に、PC・PL間の距離がPC・PR間の距離より小さければ、利き目を左目と判断し、「利き目情報」に「左目」を設定する(ステップ809)。
【0076】
以上で利き目判別処理が終わる。
【0077】
なお、図8のフローチャートにおいて、操作者からの入力がマウス移動でもマウスクリックでもない場合であり、かつ、その入力を処理したい場合は、ステップ807において適宜必要な処理を実行すればよい。
【0078】
再び、図7のフローチャートに戻って処理手順の説明を続ける。
【0079】
ステップ701が終わると、ステップ702に進み、操作対象となる三次元物体群を描画(立体視用CG画像生成)し、立体表示する。
【0080】
次にステップ703へ進み、操作者との対話的な物体選択操作が開始される。
【0081】
ステップ703では操作者が作業を続ける間中、操作者からの入力を検査する。ステップ703での入力検査後、操作者からの入力がプログラムの終了要求であった場合、ステップ7014へ進みプログラムを終了する。
【0082】
ステップ703での入力検査後、操作者からの入力がマウス移動であった場合、ステップ706に進み、カーソル位置と表示を更新する。この処理は、前記図8におけるステップ805の処理と同様である。
【0083】
ここで、ステップ706が終わると、次の入力を検査すべくステップ703に戻るわけであるが、この時、三次元物体群の状態に変化が起きる等、三次元物体の再描画が必要になった場合は、ステップ702と同じ描画処理を行う。このような再描画の必要性はマウスのドラッグ操作により物体を移動するよう場合に発生する。なお、一つの入力処理終了後、次の入力を検査すべくステップ703に戻る場合、再描画処理を必要に応じ適宜行うものとし、以下のフロー説明においては再描画処理の説明を省略する。
【0084】
ステップ703での入力検査後、操作者からの入力がマウスクリックであった場合、操作者が物体選択を試みたと判断し、ステップ7010に進んで物体選択の処理を実行する。
【0085】
なお、操作者からの入力がマウス移動でもマウスクリックでもない場合であり、かつ、その入力を処理したい場合は、ステップ709において適宜必要な処理を実行し、次の入力を検査すべくステップ703に戻る。
【0086】
ステップ7010からの物体選択の処理は、次のように行われる。
【0087】
まず、ステップ7010において、前記利き目判別サブルーチン(ステップ701)において設定された「利き目情報」を参照し、CG計算のための投影条件を設定する。すなわち、「利き目情報」が右目であれば右目用投影条件を設定し、「利き目情報」が左目であれば左目用投影条件を設定する。
【0088】
次にステップ7011のサブルーチンにおいて作用点計算を行う。以下、作用点計算について説明する。
【0089】
一般的に、三次元CG画像を生成する場合、アプリケーションプログラム側でCG計算に関わる全ての処理を行うことは希であり、通常、CG計算専用のサブルーチンセットを利用し、CG計算に特化したプログラム、あるいはCG計算専用のハードウェアの機能を呼び出す。このようなサブルーチンセットはライブラリ(以下、CGライブラリとする)とよばれ、本実施例でも、CG画像生成に関し、このようなCGライブラリを使用する。さて、今必要とする作用点計算とは、投影面上の座標点を指定し、この座標点と投影中心を結ぶ線を三次元空間に延長し作用線とし、この作用線と交差する物体の有無を調べること、または交差点座標を求めることである。この計算は、広くピック処理として知られ、一般的なCGアプリケーションプログラムにおいて頻繁に発生する。このため、ほとんどのCGライブラリがこの計算機能を提供している。ただし、CGライブラリが描画対象とするデータは三次元ポリゴンであり、CGライブラリが提供するピック処理は普通三次元ポリゴンに対して行われる。このため、アプリケーションプログラム側では、どの物体にどの三次元ポリゴンが属するかという情報を管理すると同時に、各ポリゴンに対しピック処理を実行することにより、作用線と交差するポリゴンの交差点を得て、その結果、作用線と交差する物体を判別することができる。
【0090】
本実施例では、前記CGライブラリが提供するピック処理のサブルーチンを利用してポリゴンの交差点情報、すなわち作用点を得るものとする。よって、交差点計算の詳細に関しては説明を省略するが、これは、公知の煩雑なアルゴリズムの説明を省略するためであり、本実施例の一般性を失うものではない。
【0091】
さて、ステップ7011の作用点計算が終わると、次にステップ7012に進む。
【0092】
作用点計算の結果、交差点が存在した場合、作用点計算によって識別された物体を選択物体とし(ステップ7013)、次の入力を検査すべくステップ703に戻る。また、交差点が存在しなければ、何もせず、同じく次の入力を検査すべく703に戻る。
【0093】
以上で本実施例の処理手順の説明を終わる。
【0094】
このようにして、本実施例によれば、立体画像表示装置を用いたコンピュータシステムにおいて、カーソル表示位置と選択物体の対応付けが適切に行われ、操作者に違和感のない快適な操作感を与えることができる。
【0095】
(実施例2)
前記実施例1は、カーソルを従来通り二次元カーソルとして表示する方法をとっている。しかし、カーソル画像を視差のある立体画像として立体表示し、カーソル自体も三次元物体として扱う方法が存在する。これについて図10を使って説明する。
【0096】
図10は三次元の投影処理を投影軸に対し垂直の方向から見た図である。図10に示すように、カーソル画像をPLの位置に描いた左目用画像1004と、カーソル画像をPRの位置に描いた右目用表示1005を立体表示装置に表示すると、表示面を観測する観測者はPCの位置に立体的なカーソルを見ることができる。さらに、PL,PRの位置を適切に制御すれば、立体カーソルを三次元空間中で自由に移動させることもできる。
【0097】
なお、図10では、左右画像1004と1005は、説明の都合上、前後ずらした位置に描かれているが、実際には同じ位置に存在する。このようにして、立体表示装置上で、カーソルを三次元化、すなわち立体化することが可能である。そこで、実施例2として、前記実施例1において、カーソルを立体表示した場合の実施例を説明する。
【0098】
ただし、カーソルを立体表示し三次元的に移動させるようにした場合でも、前記実施例1とほぼ同様の方法が適用できるため、前記実施例1と比較し変更部分についてのみ説明する。
【0099】
まず、図7のステップ701における利き目判別処理は同じ方法が適用でき、変更はない。
【0100】
図7のステップ706において、カーソル位置PCを移動させる部分は修正される。すなわち、マウス移動のデータを解釈しカーソル位置PCを三次元空間中で移動させる。次いで、三次元カーソル位置PCに対応した、立体カーソル表現用の左右画像を生成し、対象物体物体の左右画像にそれぞれ合成する。これにより、マウスカーソルが三次元空間中で移動し、そのカーソル像が三次元物体と共に立体的に表現される。
【0101】
図7のステップ7011における、作用点の計算方法も若干修正される。これについて、再び、図10を用いて説明する。まず、カーソルを立体表示させた場合においても、前記実施例1と同様に、作用点の選択に関しては利き目側の投影条件(視線条件)を優先させる点は変わらない。そこで、カーソルを立体表示させている状態の投影条件を考えてみると、次のようになる。
【0102】
すなわち、図10に示すように、立体カーソルがPCの位置に見える状態では、右目用カーソル画像はPRの位置にあり、右目片眼で物体1001とカーソルを見た場合、カーソル位置と重なる物体上の点はORである。そして、このORは図10に示すように、右目用投影中心1007とPRを結ぶ直線を延長し、その延長線(作用線)と物体1001との交点として計算される。
【0103】
よって、利き目が右目の操作者に対しては、図10に示すように右目用カーソル画像1004のカーソル位置PRを右目用投影中心1007と結び作用線1003を作り、この作用線1003と物体1001との交点ORを作用点とする。同様に利き目が左の操作者に対しては作用線1002と物体1001との交点OLを作用点とすればよい。
【0104】
以上の修正を施せば、三次元カーソルを使った場合にも、本発明が提案する操作方法が適用できる。
【0105】
(実施例3)
本実施例では、三次元ペイント操作方法を説明する。
【0106】
すなわち、マウス操作により三次元ペン(三次元カーソル)を操作し、三次元物体の表面に三次元ペンで着色するという操作を想定する。ただし、本発明の本質は三次元カーソルを操作する部分にあるので、説明においては着色処理の部分を省略し、三次元ペンを移動させる部分についてのみ説明する。
【0107】
システム構成
本実施例の“三次元ペイント操作方法”に使われるコンピュータシステムの構成,動作は、実施例1と同様なので、実施例1の説明を援用する。
【0108】
処理手順
図13のフローチャートは本実施例の処理手順を表している。以下、図13を用いて本実施例の処理手順を説明して行く。
【0109】
まず、ステップ701において利き目判別処理を行い、操作者の利き目を決定しておく。
【0110】
ただし、利き目判別処理は、操作者が自分の利き目を知らない等の理由により、本システムによって自動的に判別する方法を示している。よって、操作者が自分の利き目を既によく認知している場合には、利き目の判別処理を省き、利き目がどちらであるかという情報を、操作者に直接入力させてもよい。
【0111】
図13におけるステップ701の利き目判別サブルーチンおよび判別処理の原理は実施例1の場合と同じなのでその説明を援用する。
【0112】
再び、図13のフローチャートに戻って処理手順の説明を続ける。
【0113】
ステップ701が終わると、ステップ1302に進み、操作対象となる三次元物体群を描画、すなわち、三次元物体群の立体視用CG画像を生成し立体表示する。次いで、三次元カーソルを表示すべくステップ1303に進む。
【0114】
ステップ1303ではまずカーソルスクリーン座標を初期値に設定する。カーソルスクリーン座標とは、三次元カーソルの三次元座標を決めるための補助的な二次元座標であり、表示面上でのカーソル座標に対応する。つまり、カーソルスクリーン座標とは、従来の二次元表示コンピュータシステムにおける二次元的なカーソル座標に相当する。以降、カーソルスクリーン座標を(Sx,Sy)と記す。カーソルスクリーン座標の初期値としては、たとえば画面中央の座標値などに設定すればよい。
【0115】
次にステップ1304へ進み、三次元カーソル描画サブルーチンの処理により、三次元カーソルを描画する。
【0116】
以下、三次元カーソル描画サブルーチンとして行われる処理を説明する。
【0117】
まず、カーソルスクリーン座標と投影条件にもとづき三次元カーソル位置を算出する。これは、CG計算に使用する投影面上において、カーソルスクリーン座標で指定される一点を決め、この点と投影中心(視点)を結んで出来る直線を三次元空間に延長し、この延長直線と物体との交点を三次元カーソル位置とすることによって行われる。ただし、ここでの投影条件は、利き目判別処理ステップ701において利き目と判断された側の目に対する投影条件を使用する。また、三次元カーソル位置は前記交点に等しくとらなくとも、交点から、少し視点側にずらした位置にとってもよい。これにより、三次元カーソルを表現するための物体と、操作対象の物体との重なりを避けることができる。また、延長直線と物体との交点が存在しない場合には延長直線上の点であり、かつ、視点から適度な距離にある点を三次元カーソル位置とすればよい。前記延長直線と物体との交点計算はCGライブラリの機能を使って行う。以下これを説明する。
【0118】
一般的に、三次元CG画像を生成する場合、アプリケーションプログラム側でCG計算に関わる全ての処理を行うことは希であり、通常、CG計算専用のサブルーチンセットを利用する。これにより、CG計算に特化したプログラム、あるいはCG計算専用のハードウェアの機能を利用することができる。このようなサブルーチンセットはCGライブラリとよばれ、本実施例でも、CG画像生成に関し、このようなCGライブラリを使用する。さて、今必要とする交点計算は、投影面上の座標点を指定し、この座標点と投影中心を結ぶ直線と物体との交差点座標を求めることである。この計算は、広くピック処理として知られ、一般的なCGアプリケーションプログラムにおいて頻繁に発生する。このため、ほとんどのCGライブラリがこの計算機能を提供している。ただし、CGライブラリが描画対象とするデータは三次元ポリゴンであり、CGライブラリが提供するピック処理は普通三次元ポリゴンに対して行われる。このため、アプリケーションプログラム側では、どの物体にどの三次元ポリゴンが属するかという情報を管理すると同時に、各ポリゴンに対しピック処理を実行することにより、直線と物体との交点を得ることができる。
【0119】
本実施例では、CGライブラリが提供するピック処理のサブルーチンを利用して物体の交点座標を得るものとする。よって、交点計算の詳細に関しては説明を省略するが、これは、公知の煩雑なアルゴリズムの説明を省略するためであり、本実施例の一般性を失うものではない。
【0120】
前記交点計算により三次元カーソル位置が算出されると、次に三次元カーソル位置に三次元カーソルを配置する。三次元カーソルの三次元形状は実世界におけるペンの形状を模擬したような物であってもよいし、複数の直線を交差させたような単純なものであってもよい。
【0121】
所定位置に配置された三次元カーソルは、ステップ1302の操作対象三次元物体の描画と同様の方法により、立体画像化される。すなわち、三次元カーソルの右目用CG画像、および左目用CG画像が生成される。生成された三次元カーソルの立体画像は、既に生成された操作対象三次元物体の立体画像に合成される。このようにして三次元カーソルが描画され、操作対象の三次元物体と共に立体表示される。
【0122】
以上、三次元カーソル描画サブルーチン内の処理が説明された。
【0123】
再び、図13のフローチャートに戻って処理手順の説明を続ける。
【0124】
ステップ1304の処理が終わると、次にステップ1305へ進み、操作者との対話的な操作が開始される。
【0125】
ステップ1305では操作者が作業を続ける間中、操作者からの入力を検査する。ステップ1305での入力検査後、操作者からの入力がプログラムの終了要求であった場合はプログラムを終了する。
【0126】
ステップ1305での入力検査後、操作者からの入力がマウス移動であった場合、三次元カーソル位置と画面表示を更新すべくステップ1309に進む。一方、入力がマウス移動でなければ次の入力を検査すべくステップ1305に戻る。ただし、操作者からの入力がマウス移動以外の場合であり、かつ、その入力を処理したい場合は、ステップ1308において適宜必要な処理を実行すればよい。
【0127】
ステップ1309からの三次元カーソル位置と画面表示の更新は次のように行う。
【0128】
まず、三次元カーソル画像の変化に伴い、背後の三次元物体を再描画する必要があるため、ステップ1309において三次元物体を描画する。この処理はステップ1302と同じものであり、説明は省略する。
【0129】
次いで、ステップ1310において、マウス移動量(Dx,Dy)にもとづき、前記カーソルスクリーン座標(Sx,Sy)を更新する。この更新に用いる計算は、単にマウス移動量に適度な係数Kをかけ、式1のように算出すればよい。
【0130】
(式1)
Sx=K×Dx
Sy=K×Dy
【0131】
カーソルスクリーン座標が更新されると、ステップ1311の三次元カーソル描画サブルーチンにおいて、三次元カーソルを再描画する。このステップ1311はステップ1304と同じものであり、説明は省略する。ステップ1311の描画処理が終われば次の入力を検査すべく再びステップ1305に戻る。
【0132】
前述の処理手順によって本実施例の方法が実現される。
【0133】
以上説明したように、本実施例によれば、立体画像表示装置を用いたコンピュータシステムにおいて、操作者にとって適切な位置に三次元カーソルを表示することができ、操作者に違和感のない快適な操作環境を与えることができる。
【0134】
【発明の効果】
以上説明したように、本発明によれば、立体画像表示装置を用いたコンピュータシステムにおいて、カーソル表示位置と選択物体の対応付けが適切に行われ、操作者に違和感のない快適な操作感を与えることができる。
【図面の簡単な説明】
【図1】投影の説明図
【図2】立体視の原理説明図
【図3】ポリゴンレンダリングのフローチャート
【図4】立体CG画像生成の説明図
【図5】立体視環境での作用点の二重性の説明図
【図6】実施例1で使用われるコンピュータシステムの構成を示すブロック図
【図7】実施例1の処理手順を示すフローチャート
【図8】利き目判別サブルーチンの手順を示すフローチャート
【図9】利き目判別処理の原理説明図
【図10】実施例2の説明図
【図11】三次元物体が二次元表示面に投影されている状況を示す図
【図12】立体視用CGの三次元空間と三次元ペイントの関係を示す図
【図13】実施例3の処理手順を示すフローチャート
【符号の説明】
101 三次元物体
106 カーソル
601 コンピュータ
602 CPU
605 記憶装置
606 画像メモリ
607 左目用画像
608 右目用画像
609 立体表示装置
Claims (1)
- 表示装置として視差にもとづく立体感を与える立体画像表示装置を用い、
三次元物体を二次元画像化して表示する手法として、右目用,左目用二種類の異なる投影法を適用して作成された、右目用,左目用二枚の投影画像を、前記立体画像表示装置に表示し、
操作者によって位置制御されるカーソルを使い三次元物体上の作用点を選択する際に、操作者の利き目に応じ、利き目側の表示画像を作成するために使用した投影条件にもとづき、カーソル位置に対応する投影面の一点と投影中心を結んだ直線を三次元物体側に延長し、該三次元物体と該直線との交点を操作者所望の作用点とすることを特徴とする三次元物体操作方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003159215A JP2004362218A (ja) | 2003-06-04 | 2003-06-04 | 三次元物体操作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003159215A JP2004362218A (ja) | 2003-06-04 | 2003-06-04 | 三次元物体操作方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004362218A true JP2004362218A (ja) | 2004-12-24 |
Family
ID=34052338
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003159215A Withdrawn JP2004362218A (ja) | 2003-06-04 | 2003-06-04 | 三次元物体操作方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004362218A (ja) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006293909A (ja) * | 2005-04-14 | 2006-10-26 | Denso Corp | 運転者の視線方向検出装置 |
JP2010244244A (ja) * | 2009-04-03 | 2010-10-28 | Sony Corp | 情報処理装置、情報処理方法、及び、プログラム |
EP2339435A1 (en) * | 2008-08-27 | 2011-06-29 | FUJIFILM Corporation | Device and method for setting instruction position during three-dimensional display, and program |
WO2011114564A1 (ja) * | 2010-03-18 | 2011-09-22 | 富士フイルム株式会社 | 立体画像表示装置およびその制御方法 |
WO2011114567A1 (ja) * | 2010-03-18 | 2011-09-22 | 富士フイルム株式会社 | 立体表示装置及び立体撮影装置、並びに利き目判定方法及びこれに用いる利き目判定プログラム並びに記録媒体 |
JP2012100756A (ja) * | 2010-11-08 | 2012-05-31 | Panasonic Corp | 優位眼検査装置 |
WO2012132749A1 (ja) * | 2011-03-31 | 2012-10-04 | 富士フイルム株式会社 | 立体表示装置、指示受付方法及びプログラムならびにその記録媒体 |
JP2013196240A (ja) * | 2012-03-19 | 2013-09-30 | Fujitsu Ltd | 立体視オブジェクト操作装置、立体視オブジェクト操作方法、及び立体視オブジェクト操作プログラム |
WO2013168736A1 (ja) | 2012-05-09 | 2013-11-14 | Necカシオモバイルコミュニケーションズ株式会社 | 立体画像表示装置、そのカーソル表示方法及びコンピュータプログラム |
JP2014222459A (ja) * | 2013-05-14 | 2014-11-27 | 株式会社東芝 | 画像処理装置、方法、及びプログラム、並びに、立体画像表示装置 |
US9086742B2 (en) | 2010-06-29 | 2015-07-21 | Fujifilm Corporation | Three-dimensional display device, three-dimensional image capturing device, and pointing determination method |
JP2019087279A (ja) * | 2013-06-27 | 2019-06-06 | アイサイト モバイル テクノロジーズ リミテッド | デジタルデバイスとの対話のための直接的なポインティング検出のためのシステムおよび方法 |
US11550406B1 (en) | 2021-10-14 | 2023-01-10 | Autodesk, Inc. | Integration of a two-dimensional input device into a three-dimensional computing environment |
US20230119646A1 (en) * | 2021-10-14 | 2023-04-20 | Autodesk, Inc. | Integration of a two-dimensional input device into a three-dimensional computing environment |
-
2003
- 2003-06-04 JP JP2003159215A patent/JP2004362218A/ja not_active Withdrawn
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006293909A (ja) * | 2005-04-14 | 2006-10-26 | Denso Corp | 運転者の視線方向検出装置 |
EP2339435A4 (en) * | 2008-08-27 | 2012-06-06 | Fujifilm Corp | DEVICE AND METHOD FOR SETTING THE INSTRUCTION POSITION DURING A THREE-DIMENSIONAL DISPLAY AND PROGRAM |
EP2339435A1 (en) * | 2008-08-27 | 2011-06-29 | FUJIFILM Corporation | Device and method for setting instruction position during three-dimensional display, and program |
US8482557B2 (en) | 2008-08-27 | 2013-07-09 | Fujifilm Corporation | Device and method for setting instructed position during three-dimensional display, as well as program |
JP2010244244A (ja) * | 2009-04-03 | 2010-10-28 | Sony Corp | 情報処理装置、情報処理方法、及び、プログラム |
US8717415B2 (en) | 2009-04-03 | 2014-05-06 | Sony Corporation | Information processing device, information processing method, and program |
WO2011114564A1 (ja) * | 2010-03-18 | 2011-09-22 | 富士フイルム株式会社 | 立体画像表示装置およびその制御方法 |
CN102812419A (zh) * | 2010-03-18 | 2012-12-05 | 富士胶片株式会社 | 立体图像显示设备及其控制方法 |
CN102812420A (zh) * | 2010-03-18 | 2012-12-05 | 富士胶片株式会社 | 立体显示装置和立体成像装置、用于上述装置的优势眼判定方法和优势眼判定程序以及记录介质 |
WO2011114567A1 (ja) * | 2010-03-18 | 2011-09-22 | 富士フイルム株式会社 | 立体表示装置及び立体撮影装置、並びに利き目判定方法及びこれに用いる利き目判定プログラム並びに記録媒体 |
US9164621B2 (en) | 2010-03-18 | 2015-10-20 | Fujifilm Corporation | Stereoscopic display apparatus and stereoscopic shooting apparatus, dominant eye judging method and dominant eye judging program for use therein, and recording medium |
JP5450791B2 (ja) * | 2010-03-18 | 2014-03-26 | 富士フイルム株式会社 | 立体表示装置及び立体撮影装置、並びに利き目判定方法及びこれに用いる利き目判定プログラム並びに記録媒体 |
US9086742B2 (en) | 2010-06-29 | 2015-07-21 | Fujifilm Corporation | Three-dimensional display device, three-dimensional image capturing device, and pointing determination method |
JP2012100756A (ja) * | 2010-11-08 | 2012-05-31 | Panasonic Corp | 優位眼検査装置 |
WO2012132749A1 (ja) * | 2011-03-31 | 2012-10-04 | 富士フイルム株式会社 | 立体表示装置、指示受付方法及びプログラムならびにその記録媒体 |
CN103460257A (zh) * | 2011-03-31 | 2013-12-18 | 富士胶片株式会社 | 立体显示设备、接受指令的方法、程序及记录其的介质 |
JPWO2012132749A1 (ja) * | 2011-03-31 | 2014-07-24 | 富士フイルム株式会社 | 立体表示装置、指示受付方法及びプログラムならびにその記録媒体 |
US9727229B2 (en) | 2011-03-31 | 2017-08-08 | Fujifilm Corporation | Stereoscopic display device, method for accepting instruction, and non-transitory computer-readable medium for recording program |
JP5693708B2 (ja) * | 2011-03-31 | 2015-04-01 | 富士フイルム株式会社 | 立体表示装置、指示受付方法及びプログラムならびにその記録媒体 |
CN106896952A (zh) * | 2011-03-31 | 2017-06-27 | 富士胶片株式会社 | 立体显示设备和接受指令的方法 |
JP2013196240A (ja) * | 2012-03-19 | 2013-09-30 | Fujitsu Ltd | 立体視オブジェクト操作装置、立体視オブジェクト操作方法、及び立体視オブジェクト操作プログラム |
US9594436B2 (en) | 2012-05-09 | 2017-03-14 | Nec Corporation | Three-dimensional image display device, cursor display method therefor, and computer program |
WO2013168736A1 (ja) | 2012-05-09 | 2013-11-14 | Necカシオモバイルコミュニケーションズ株式会社 | 立体画像表示装置、そのカーソル表示方法及びコンピュータプログラム |
JP2014222459A (ja) * | 2013-05-14 | 2014-11-27 | 株式会社東芝 | 画像処理装置、方法、及びプログラム、並びに、立体画像表示装置 |
JP2019087279A (ja) * | 2013-06-27 | 2019-06-06 | アイサイト モバイル テクノロジーズ リミテッド | デジタルデバイスとの対話のための直接的なポインティング検出のためのシステムおよび方法 |
US11314335B2 (en) | 2013-06-27 | 2022-04-26 | Eyesight Mobile Technologies Ltd. | Systems and methods of direct pointing detection for interaction with a digital device |
JP7191714B2 (ja) | 2013-06-27 | 2022-12-19 | アイサイト モバイル テクノロジーズ リミテッド | デジタルデバイスとの対話のための直接的なポインティング検出のためのシステムおよび方法 |
US11550406B1 (en) | 2021-10-14 | 2023-01-10 | Autodesk, Inc. | Integration of a two-dimensional input device into a three-dimensional computing environment |
US20230119646A1 (en) * | 2021-10-14 | 2023-04-20 | Autodesk, Inc. | Integration of a two-dimensional input device into a three-dimensional computing environment |
US12001615B2 (en) | 2021-10-14 | 2024-06-04 | Autodesk, Inc. | Integration of a two-dimensional input device into a three-dimensional computing environment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA3023488C (en) | System and method for generating a progressive representation associated with surjectively mapped virtual and physical reality image data | |
US9886102B2 (en) | Three dimensional display system and use | |
EP3564788B1 (en) | Three-dimensional user input | |
Poston et al. | Dextrous virtual work | |
US8643569B2 (en) | Tools for use within a three dimensional scene | |
EP2676450B1 (en) | Providing an interactive experience using a 3d depth camera and a 3d projector | |
US6091410A (en) | Avatar pointing mode | |
CN116324680A (zh) | 用于操纵环境中的对象的方法 | |
CN114766038A (zh) | 共享空间中的个体视图 | |
EP2568355A2 (en) | Combined stereo camera and stereo display interaction | |
JP6742701B2 (ja) | 情報処理装置、その制御方法及びプログラム | |
CN114641251A (zh) | 外科手术虚拟现实用户接口 | |
JP2023520765A (ja) | 仮想および拡張現実のためのシステムおよび方法 | |
JP2012252627A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
JPH0785312A (ja) | 3次元動画作成装置 | |
TW201401224A (zh) | 二維角色表現三維動作之系統及方法 | |
JP2004362218A (ja) | 三次元物体操作方法 | |
Wacker et al. | Heatmaps, shadows, bubbles, rays: Comparing mid-air pen position visualizations in handheld ar | |
Mazuryk et al. | History, applications, technology and future | |
Giraldi et al. | Introduction to virtual reality | |
Sun et al. | Selecting and Sliding Hidden Objects in 3D Desktop Environments. | |
JP3413145B2 (ja) | 仮想空間の編集方法及び仮想空間の編集装置 | |
JP2005527872A (ja) | 3次元コンピュータモデルと相互作用するための方法および装置 | |
JP7040080B2 (ja) | 仮想空間画像提示システム、仮想空間画像提示方法及びプログラム | |
Rick et al. | GPU implementation of 3D object selection by conic volume techniques in virtual environments |
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: 20060905 |