JP5609508B2 - オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム - Google Patents

オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム Download PDF

Info

Publication number
JP5609508B2
JP5609508B2 JP2010225243A JP2010225243A JP5609508B2 JP 5609508 B2 JP5609508 B2 JP 5609508B2 JP 2010225243 A JP2010225243 A JP 2010225243A JP 2010225243 A JP2010225243 A JP 2010225243A JP 5609508 B2 JP5609508 B2 JP 5609508B2
Authority
JP
Japan
Prior art keywords
coordinate system
movement
axis
operation target
target object
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.)
Expired - Fee Related
Application number
JP2010225243A
Other languages
English (en)
Other versions
JP2012079182A (ja
Inventor
真智子 中川
真智子 中川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010225243A priority Critical patent/JP5609508B2/ja
Priority to US13/248,504 priority patent/US8823700B2/en
Priority to EP11183767.0A priority patent/EP2437221B1/en
Publication of JP2012079182A publication Critical patent/JP2012079182A/ja
Application granted granted Critical
Publication of JP5609508B2 publication Critical patent/JP5609508B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Architecture (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラムに関する。
従来、表示装置の2次元画面上に表示された操作対象のオブジェクト(以下、「操作対象オブジェクト」という。)を、マウスなどの入力装置を用いて3次元移動操作することが行われている。操作対象オブジェクトの3次元移動操作は、例えば仮想カメラを操作対象オブジェクトとして、観察対象のオブジェクト(以下、「基準オブジェクト」という。)を様々な位置から観察する場合に適用される。つまり、仮想カメラを基準オブジェクトの周囲または内部で3次元移動させて視点位置を変えることにより、基準オブジェクトを様々な位置から観察することができる。
マウスなどの2次元入力装置で操作対象オブジェクトの3次元移動操作を行う場合には、例えばxy平面およびxz平面の2つの画面を使って操作対象オブジェクトの移動操作を行うことが知られている。これは、xy平面およびxy平面それぞれに操作対象オブジェクトを表示し、まずxy平面上で操作対象オブジェクトを2次元移動させ、続いてxz平面上で操作対象オブジェクトを2次元移動させることで、3次元の移動操作を実現するものである。
この手法は、操作対象オブジェクトの正確な操作には向いているが、2つの画面上で操作を行うため、特に操作対象オブジェクトを複雑に移動操作する場合には、操作量が膨大となって操作に時間がかかる。
これに対して、基準オブジェクトの周囲にローカル座標系を生成して操作対象オブジェクトの移動用のパスを定めておいて、マウスの移動量に応じて操作対象オブジェクトをパスに沿って移動させることが知られている。これによれば、比較的少ない操作量で操作対象オブジェクトの3次元移動操作を行うことができる。
特開平10−232943号公報
しかしながら、従来技術は、操作対象オブジェクトの3次元移動の自由度が制限される場合がある。
すなわち、従来技術は、あらかじめ設定されて固定された移動用のパスに沿って操作対象オブジェクトを移動させることしかできないため、パスから外れた位置に操作対象オブジェクトを移動させることが困難である。したがって、従来技術では、2次元画面上で操作対象オブジェクトを基準オブジェクトの周囲または内部の任意の位置に3次元移動させることによって、様々な位置から基準オブジェクトを観察することが難しい。
開示の技術は、上記に鑑みてなされたものであって、簡易な操作で操作対象オブジェクトの3次元移動の自由度を向上させることができるオブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラムを提供することを目的とする。
本願の開示するオブジェクト操作装置は、一つの態様において、操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に設定される複数の点それぞれに対して、ローカル座標系を生成する座標系生成部を備える。また、オブジェクト操作装置は、前記座標系生成部によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出する移動先座標算出部を備える。また、オブジェクト操作装置は、前記移動先座標算出部によって算出された移動先座標に前記操作対象オブジェクトを移動させる移動処理部を備える。
本願の開示するオブジェクト操作装置の一つの態様によれば、簡易な操作で操作対象オブジェクトの3次元移動の自由度を向上させることができる。
図1は、本実施形態のオブジェクト操作装置の全体構成を示す図である。 図2は、入力装置の一例を示す図である。 図3は、基準オブジェクトを飛行機とし、操作対象オブジェクトを仮想カメラとした場合の主翼の観察例を示す図である。 図4は、シーングラフの一例を示す図である。 図5は、オブジェクト操作方法の全体の処理を示すフロー図である。 図6は、ローカル座標系を生成する処理のフロー図である。 図7は、影響関数を用いたポテンシャル値の算出の一例を示す図である。 図8は、ローカル座標系を算出する処理のフロー図である。 図9は、Structured Grid上のポテンシャル値と等値面の説明をするための図である。 図10は、Structured Grid上の各点でのZ´軸ベクトルの算出について説明するための図である。 図11は、Structured Grid上の各点でのX´軸ベクトルの算出について説明するための図である。 図12は、操作対象オブジェクトの移動先座標を算出する処理のフロー図である。 図13は、仮想臓器と仮想内視鏡について説明するための図である。 図14は、基準オブジェクトがLineDataである場合のローカル座標系を算出する処理のフロー図である。 図15は、基準オブジェクトがLineDataである場合のローカル座標系の一例について説明するための図である。 図16は、仮想内視鏡の移動先座標を算出する処理のフロー図である。
以下に、本願の開示するオブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例により開示技術が限定されるものではない。
図1は、本実施形態のオブジェクト操作装置の全体構成を示す図である。図1に示すように、オブジェクト操作装置100は、座標系生成部110と、移動先座標算出部112と、移動処理部114と、オブジェクト設定部115とを備える。また、オブジェクト操作装置100は、グラフィック処理部116と、通信インターフェース部118と、HDD(Hard Disk Drive)120と、メモリ122と、入出力インターフェース部124とを備える。座標系生成部110、移動先座標算出部112、移動処理部114、オブジェクト設定部115、グラフィック処理部116、通信インターフェース部118、HDD120、メモリ122、および入出力インターフェース部124は、通信バス126を介して相互に接続される。また、オブジェクト操作装置100には、入力装置200と、表示装置300とが通信ケーブル128を介して接続される。
座標系生成部110は、操作対象オブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に設定される複数の点それぞれに対して、ローカル座標系を生成する。移動先座標算出部112は、座標系生成部110によって生成された複数の点それぞれのローカル座標系に基づいて、入力装置200から入力される操作対象のオブジェクトの移動指令値に対応する操作対象オブジェクトの移動先座標を算出する。移動処理部114は、移動先座標算出部112によって算出された移動先座標に操作対象オブジェクトを移動させる。オブジェクト設定部115は、操作対象オブジェクトの設定を行うとともに、基準オブジェクトの設定を行う。座標系生成部110、移動先座標算出部112、移動処理部114およびオブジェクト設定部115の詳細については後述する。
グラフィック処理部116は、操作対象オブジェクトと基準オブジェクトとを表示装置300に表示するとともに、操作対象オブジェクトが仮想カメラや仮想内視鏡の場合には、仮想カメラや仮想内視鏡からの視線方向に映る画像を表示装置300に表示する。通信インターフェース部118は、オブジェクト操作装置100と他の装置との有線通信または無線通信のインターフェースである。HDD120およびメモリ122は、オブジェクト操作装置100で実行されるオブジェクト操作プログラム、その他の各種ソフトウェアプログラム、およびオブジェクト操作プログラムと各種ソフトウェアプログラムで用いられるデータを格納する記憶媒体である。入出力インターフェース部124は、入力装置200から入力される各種指令の入力インターフェースであるとともに、表示装置300に表示する画像データを表示装置300に出力する出力インターフェースである。
入力装置200は、操作対象オブジェクトの3次元移動指令値を入力する各種の入力デバイスである。また、表示装置300は、グラフィック処理部116で生成された各種の画像を表示する2次元表示デバイスである。図2は、入力装置200の一例を示す図である。図2に示すように、操作用画像202を表示装置300に表示して、キーボード等の入力デバイスを用いてX軸、Y軸、Z軸それぞれの移動量を入力することができる。また、マウス204を用いてX軸、Y軸、Z軸それぞれの移動量を入力することもできる。マウス204を使って操作対象オブジェクトを3次元操作する場合には、XYZ軸に対する移動量をそれぞれ独立して入力できるように、あらかじめXYZ軸に対する入力方法を設定しておく。例えば、マウス204を左クリックしながらドラッグするとX軸方向の移動、マウス204を右クリックしながらドラッグするとY軸方向の移動、マウス204をセンターホイールクリックしながらドラッグするとZ軸方向への移動と設定することができる。
図3は、基準オブジェクトを飛行機とし、操作対象オブジェクトを仮想カメラとした場合の主翼の観察例を示す図である。図3に示すように、本実施例は、基準オブジェクトを飛行機400とし、操作対象オブジェクトを仮想カメラ500とした例である。しかし、これに限らず、基準オブジェクトは、仮想カメラ500によって観察される対象となる仮想物体を任意に設定することができる。また、操作対象オブジェクトは、仮想カメラ500に限らず、例えば基準オブジェクトを照らす仮想照明など、基準オブジェクトの周囲または内部で3次元移動させる仮想物体を任意に設定することができる。
図3に示すように、主翼402の周囲で仮想カメラ500を3次元移動操作しながら、仮想カメラ500からの視線方向に映る主翼402の観察画像504を表示装置300に表示することができる。この場合、仮想カメラ500は、主翼402の周囲を3次元移動しながら様々な角度および距離からの主翼402の観察画像504を表示する。例えば、主翼402から一定の距離だけ離れた軌道上で仮想カメラ500を旋回させながら、様々な方向から主翼402を観察することができる。また、軌道上から外れて主翼402に近づくまたは遠ざかる方向に仮想カメラ500を移動させることにより主翼402の特定部分を詳細に観察したり主翼402の全体を観察したりすることができる。また、図3に示すように、主翼402の周囲で仮想カメラ500を3次元移動操作しながら、主翼402に対する空気などの流体の流れを流体解析ツールによって解析して、解析画像506を表示装置300に表示することができる。図3に示すように、表示装置300には、主翼402の断面502における空気の流れの解析結果が表示される。
図4は、シーングラフの一例を示す図である。シーングラフとは、仮想カメラ500を移動操作しながら基準オブジェクトの可視化を行う際に、表示対象を管理するための概念となるツリー構造であり、オブジェクト操作装置100の開発者によって利用されるものである。シーングラフでは、カメラ、照明、飛行機など情報の塊をオブジェクトと呼び、親オブジェクトと子オブジェクトは従属関係で結ばれる。例えば、環境602を親オブジェクトとした場合、カメラ606および照明608が子オブジェクトとなる。また、物体604を親オブジェクトとした場合、飛行機610およびBackground612が子オブジェクトとなる。また、飛行機610を親オブジェクトとした場合、本体614、主翼616、および尾翼618が子オブジェクトとなる。また、主翼616を親オブジェクトとした場合、主翼本体620、フラップ622、スポイラー624、およびエルロン626が子オブジェクトとなる。
例えば飛行機610の位置が変化したら、それに追従して本体614、主翼616、および尾翼618の位置も変化するように、親オブジェクトに与えられた操作は子オブジェクトに影響を与える。このため、親オブジェクトと子オブジェクトは、Transfer Function630(座標変換関数)を介して結ばれ、一方のオブジェクトの位置座標の変化に応じて他方のオブジェクトの位置座標が変わる。また、シーングラフでは、オブジェクトごとに位置操作指令などのinteraction632を与えることができる。Transfer Function630とinteraction632の間に座標変換モジュール634を挿入することで、任意のオブジェクトに対してローカル座標系を仮想的に持たせることができる。本実施例では、interaction632とカメラ606のTransfer Function630との間に座標変換モジュール634を挿入するだけで、操作対象オブジェクトであるカメラ606に対してローカル座標系を与えることができる。ローカル座標系の詳細については後述する。
図5は、オブジェクト操作方法の全体の処理を示すフロー図である。まず、オブジェクト設定部115は、操作対象オブジェクトを設定する(S101)。具体的には、オブジェクト設定部115は、表示装置300に表示されたオブジェクトのうち、操作対象オブジェクトの設定モード中に、入力装置200を介して選択されたオブジェクトを、操作対象オブジェクトとして設定する。ここでは、仮想カメラ500が選択されて、操作対象オブジェクトに設定されたとする。続いて、オブジェクト設定部115は、基準オブジェクトを設定する(S102)。具体的には、オブジェクト設定部115は、表示装置300に表示されたオブジェクトのうち、基準オブジェクトの設定モード中に、入力装置200を介して選択されたオブジェクトを、基準オブジェクトとして設定する。ここでは、飛行機400が選択されて、飛行機400のSurface Dataが基準オブジェクトに設定されたとする。
次に、座標系生成部110は、設定された基準オブジェクトの種類がSurface Data、Line Data、Point Dataのいずれであるかを確認する(S103)。本実施例では基準オブジェクトの種類はSurface Dataであるので、座標系生成部110は、Surface Data用のローカル座標系を生成する(S104)。続いて、移動先座標算出部112は、Surface Data用の座標変換モジュールを作成する(S105)。そして、移動先座標算出部112は、作成された座標変換モジュールをシーングラフに追加する(S110)。なお、座標系生成部110は、基準オブジェクトがLine Dataの場合には、Line Data用のローカル座標系を生成し(S106)、移動先座標算出部112は、Line Data用の座標変換モジュールを作成する(S107)。また、座標系生成部110は、基準オブジェクトがPoint Dataの場合には、Point Data用のローカル座標系を生成し(S108)、移動先座標算出部112は、Point Data用の座標変換モジュールを作成する(S109)。
図6は、ローカル座標系を生成する処理のフロー図である。座標系生成部110は、まず、基準オブジェクトから影響範囲を設定する(S201)。影響範囲とは、基準オブジェクトの周囲のどの程度離れた領域までローカル座標系を生成するかを表す範囲である。影響範囲は、初期値をあらかじめ設定しておいてもよいし、入力装置200を介して任意に設定することもできる。続いて、座標系生成部110は、影響範囲内にグローバル座標系によるStructured Gridを生成する(S202)。Structured Gridとは、基準オブジェクトの周囲に設定される3次元格子である。Structured Gridは、影響範囲を覆うように生成される。
次に、座標系生成部110は、基準オブジェクトに対する影響関数を用いて、Structured Gridの各ノード(格子点)におけるポテンシャル値を求める(S203)。ポテンシャル値は、基準オブジェクトからの距離に応じて算出される値で、例えば、基準オブジェクトに最も近い位置では「1」になり、基準オブジェクトから遠ざかるにつれて「0」に近づき、影響範囲の外延で「0」になる値である。続いて、座標系生成部110は、Structured Gridの各ノードに、算出したポテンシャル値を格納する(S204)。
次に、影響関数を用いたポテンシャル値の算出について説明する。図7は、影響関数を用いたポテンシャル値の算出の一例を示す図である。図7は、2つの基準オブジェクト700,702の周囲のある点Pにおけるポテンシャル値を算出する一例である。点Pにおける基準オブジェクト700に対するポテンシャル値φは、基準オブジェクト700に対する影響関数fを用いて以下の数1式で求められる。
[数1]
φ=f(x,y,z)=(D−C/D
ここで、Dは点Pと基準オブジェクト700との間の最小ユークリッド距離であり、Cは基準オブジェクト700と基準オブジェクト700に対する影響範囲の外延704との距離である。ただし、D>Cの場合にはfは「0」になる。
また、点Pにおける基準オブジェクト702に対するポテンシャル値φは、基準オブジェクト702に対する影響関数fを用いて以下の数2式で求められる。
[数2]
φ=f(x,y,z)=(D−C/D
ここで、Dは点Pと基準オブジェクト702との間の最小ユークリッド距離であり、Cは基準オブジェクト702と基準オブジェクト702に対する影響範囲の外延706との距離である。ただし、D>Cの場合にはfは「0」になる。
そして、点Pにおけるポテンシャル値φは、基準オブジェクト700および基準オブジェクト702に対する影響関数fを用いて以下の数3式で求められる。
[数3]
φ=f(x,y,z)=f(x,y,z)+f(x,y,z)
本実施例のように、影響関数の和によりポテンシャルを求めることにより、複雑な形状の基準オブジェクトにも対応した滑らかな等値面を生成することができる。なお、本実施例に限らず、影響関数は、基準オブジェクトとの距離が影響範囲の外延に近づくにつれてポテンシャル値が低くなる減衰関数であれば採用することができる。例えば、基準オブジェクトからの距離に応じたポテンシャル値を生成するfast marching法を用いることができる。fast marching法は、位相変化が可能な動的輪郭モデルであり、濃度分布空間で、ある時間tにおける境界面を求める方法である。(J.A.Sethian,Level set method and fast marching method,Cambridge University Press(1999))
次に、ローカル座標系の生成について説明する。図8は、ローカル座標系を算出する処理のフロー図である。座標系生成部110は、Structured Gridのn個のノード(格子点)それぞれについてローカル座標系を生成する。そのため、座標系生成部110は、まずn回ループ処理を行うための変数iを「0」に初期化する(S301)。続いて、座標系生成部110は、i<nであるか否かを判定する(S302)。座標系生成部110は、i<nである場合(S302でYES)、つまりStructured Gridのn個のノードすべてに対して処理が終わっていない場合は、Structured Gridのノードiのポテンシャル値を閾値と設定する(S303)。続いて、座標系生成部110は、ノードiの周囲8つのノードを選択する(S304)。そして、座標系生成部110は、マーチンキューブ法を用いて、閾値に対して面を生成する(S305)。これにより、Structured Gridのポテンシャル値が等しいノードを結んだ等値面が形成される。
ただし、例えばあるノードのポテンシャル値が、周囲8つのノードのポテンシャル値のいずれとも異なる場合は等値面が生成されない。そこで、座標系生成部110は、等値面が1つ以上算出されたか否かを判定する(S306)。座標系生成部110は、等値面が1つも算出されない場合には(S306でNO)、そのノードと基準オブジェクトを最短で結ぶ線分に対して直交する面を等値面として生成する(S307)。
一方、ノードによっては等値面が複数生成される場合もあるので、座標系生成部110は、等値面が1つ以上算出された場合には(S306でYES)、基準オブジェクトから最も近い等値面を選択する(S308)。続いて、座標系生成部110は、等値面に直交する第1の軸と等値面上で互いに直交する第2,第3の軸とに基づいてX´軸ベクトル、Y´軸ベクトル、およびZ´軸ベクトルを生成する(S309)。具体的には、座標系生成部110は、等値面に直交する第1の軸をZ´軸ベクトルとする。また、座標系生成部110は、グローバル座標系におけるXY平面と等値面との交線方向をX´軸ベクトルとする。また、座標系生成部110は、等値面上でX´軸に直交する方向をY´軸ベクトルとする。なお、以下の説明では、グローバル座標系とローカル座標系とを区別するために、グローバル座標系をX軸、Y軸、Z軸といい、ローカル座標系をX´軸、Y´軸、Z´軸という。
続いて、座標系生成部110は、ノードiにおけるX´Y´Z´軸ベクトルをStructured Gridに格納する(S310)。続いて、座標系生成部110は、iをインクリメントして(S311)、S302に戻り、Structured Gridの次のノードに対する処理を行う。座標系生成部110は、S302でi<nでない場合(S302でNO)、つまりStructured Gridのn個のノードすべてに対して処理が終わった場合には、処理を終了する。これにより、Structured Gridの複数のノードそれぞれに、X´Y´Z´軸ベクトルが格納される。
図9は、Structured Grid上のポテンシャル値と等値面の説明をするための図である。図9は、Structured Gridのグローバル座標系におけるXY平面を示すものである。図9に示すようにStructured Grid上の各ノードには、例えば「0.3」、「0.5」、「1」等のポテンシャル値が格納される。そして、ポテンシャル値が等しいノードを結ぶことによって、等値面750が生成される。ここで、等値面750は、各ノードに対して生成されるものであるので、必ずしも連続した面が生成されなくてもよい。
図10は、Structured Grid上の各点でのZ´軸ベクトルの算出について説明するための図であり、図11は、Structured Grid上の各点でのX´軸ベクトルの算出について説明するための図である。図10に示すように、Structured Gridの各ノードに対して、等値面750に直交する方向にZ´軸ベクトル752が生成される。また、図11に示すように、等値面750とグローバル座標系におけるXY平面との交線方向にX´軸ベクトル754が生成される。なお、Y´軸ベクトルは、等値面750上でX´軸ベクトルに直交する方向に生成される。
図12は、操作対象オブジェクトの移動先座標を算出する処理のフロー図である。まず、移動先座標算出部112は、入力装置200からX´軸,Y´軸,Z´軸それぞれに対する移動量を取得する(S401)。続いて、移動先座標算出部112は、操作対象オブジェクトの現在の座標を取得する(S402)。続いて、移動先座標算出部112は、X´軸,Y´軸,Z´軸の順に以下の移動処理を実行する。そのため、移動先座標算出部112は、X´軸のループ処理を行うための変数j,Y´軸のループ処理を行うための変数k,Z´軸のループ処理を行うための変数mを「0」に初期化する(S403)。
続いて、移動先座標算出部112は、操作対象オブジェクトの座標が影響範囲内であるか否かを判定する(S404)。移動先座標算出部112は、操作対象オブジェクトの座標が影響範囲内である場合は(S404でYes)、操作対象オブジェクトの座標の最も近傍のStructured Gridのノードを取得する(S405)。これは、操作対象オブジェクトが必ずしもStructured Gridのノード上に位置しているとは限らないため、最も近傍のStructured Gridのノードを取得するものである。仮に、操作対象オブジェクトがStructured Gridのノード上に位置している場合は、操作対象オブジェクトが位置するStructured Gridのノードが取得される。
続いて、移動先座標算出部112は、取得したStructured Gridのノードのローカル座標系の単位ベクトルを生成する(S406)。具体的には、移動先座標算出部112は、ローカル座標系のX´軸ベクトルの方向の単位ベクトルを生成する。一方、移動先座標算出部112は、S404で操作対象オブジェクトの座標が影響範囲内でない場合には(S404でNo)、Structured Gridから外れた場所に位置しており、ローカル座標系が存在しないので、グローバル座標系の単位ベクトルを生成する(S407)。具体的には、移動先座標算出部112は、グローバル座標系のX軸ベクトルの方向の単位ベクトルを生成する。続いて、移動処理部114は、S406またはS407で生成した単位ベクトルにしたがって、操作対象オブジェクトを移動させる(S408)。
次に、移動先座標算出部112は、X´軸の移動処理が終了したか否かを判定する(S409)。具体的には、移動先座標算出部112は、変数jがX´軸方向の移動量より大きくなった場合にX´軸の移動処理が終了したと判定する。移動先座標算出部112は、X´軸の移動処理が終了していない場合には(S409でNo)、jをインクリメントして(S410)、S404に戻る。すなわち、移動先座標算出部112は、操作対象オブジェクトを一度に大きく移動させるのではなく、X´軸の移動処理が終了するまで、操作対象オブジェクトの単位ベクトル分の移動を繰り返す。
移動先座標算出部112は、X´軸の移動処理が終了した場合には(S409でYes)、Y´軸の移動処理が終了したか否かを判定する(S411)。移動先座標算出部112は、Y´軸の移動処理が終了していない場合には(S411でNo)、kをインクリメントして(S412)、S404に戻り、X´軸と同様に、S404〜S408の処理を繰り返す。
移動先座標算出部112は、Y´軸の移動処理が終了した場合には(S411でYes)、Z´軸の移動処理が終了したか否かを判定する(S413)。移動先座標算出部112は、Z´軸の移動処理が終了していない場合には(S413でNo)、mをインクリメントして(S414)、S404に戻り、X´軸と同様に、S404〜S408の処理を繰り返す。移動先座標算出部112は、Z´軸の移動処理が終了した場合には(S413でYes)、操作対象オブジェクトの移動処理を終了する。これにより、操作対象オブジェクトを簡易な操作で任意の位置に3次元移動させることができる。また、例えばZ´軸の基準オブジェクトから離れる方向をZ´軸の正の方向と仮定した場合に、操作対象オブジェクトである仮想カメラの視線方向をZ´軸の負の方向に設定することができる。これにより、仮想カメラの視線方向は、仮想カメラを任意の位置に3次元移動させたとしても、常に基準オブジェクトの方向に向くので、仮想カメラを3次元移動させながら常に基準オブジェクトの観察画像を得ることができる。また、仮想カメラの視線方向を所定の方向に固定するのではなく、任意に設定可能とすることもできる。
次に、基準オブジェクトを仮想臓器とし、操作対象オブジェクトを仮想内視鏡とした場合の実施例について説明する。図13は、仮想臓器と仮想内視鏡について説明するための図である。仮想内視鏡技術では、まず、CT(Computed Tomography)やMRI(Magnetic Resonance Imaging)などの医療画像装置を用いて、被検体の血管や大腸などの管状データが撮像される。そして、仮想内視鏡技術は、図13に示すように、管状データである仮想臓器800の内部の例えば管中心を通る中心軸804に沿って仮想内視鏡802を移動操作しながら、仮想内視鏡802の視線方向に映る血管や大腸の内壁面等を観察するものである。この仮想内視鏡技術では、血管や大腸などの細い管に沿って、操作対象オブジェクトである仮想内視鏡802をウォークスルーするため、操作対象オブジェクトの簡易かつ自由度の高い操作が求められる。
図14は、基準オブジェクトがLineDataである場合のローカル座標系を算出する処理のフロー図である。仮想内視鏡技術の場合、仮想臓器800の周囲で仮想内視鏡802を3次元移動させるのではなく、仮想臓器800の内部で仮想内視鏡802を3次元移動させる。そこで、オブジェクト設定部115は、図5のS101,S102で操作対象オブジェクトに仮想内視鏡802が選択され、基準オブジェクトに仮想臓器800が選択された場合には、仮想臓器800の管中心を通るLineDataを基準オブジェクトに設定する。また、Structured Gridの各ノードそれぞれのポテンシャル値を求めて各ノードに格納する点については、図6のS201〜S204と同様である。
座標系生成部110は、Structured Gridのn個のノードそれぞれについてローカル座標系を生成する。そのため、座標系生成部110は、まずn回ループ処理を行うための変数rを「0」に初期化する(S500)。続いて、座標系生成部110は、Structured Gridのノードiの位置が、LineData上か、管境界面上か、管境界面内か、管境界外かを確認する(S501)。座標系生成部110は、ノードrの位置が、LineData上である場合には、LineDataの正方向をX´軸ベクトルとする(S502)。続いて、座標系生成部110は、グローバル座標系のXY平面におけるX´軸ベクトルに直交する方向をY´軸ベクトルとする(S503)。続いて、座標系生成部110は、X´軸ベクトルおよびY´軸ベクトルの双方に直交する方向をZ´軸ベクトルとする(S504)。続いて、座標系生成部110は、X´軸ベクトル、Y´軸ベクトル、およびZ´軸ベクトルを、Structured Gridの該当するノードに格納する(S505)。
座標系生成部110は、ノードiの位置が、管境界面上である場合には、LineDataの正方向をX´軸ベクトルとする(S506)。続いて、座標系生成部110は、X´軸ベクトルに直交する直交面上における管境界面の接線方向をY´軸ベクトルとする(S507)。続いて、座標系生成部110は、管境界面の法線方向をZ´軸ベクトルとする(S508)。続いて、座標系生成部110は、X´軸ベクトル、Y´軸ベクトル、およびZ´軸ベクトルを、Structured Gridの該当するノードに格納する(S505)。
座標系生成部110は、ノードiの位置が、管境界面内である場合には、ノードiのポテンシャル値を閾値と設定する(S509)。続いて、座標系生成部110は、ノードiの周囲8つのノードを選択する(S510)。そして、座標系生成部110は、マーチンキューブ法を用いて、閾値に対して面を生成する(S511)。これにより、Structured Gridの各ノードのポテンシャル値が等しい点を結んだ等値面が形成される。
ただし、例えばあるノードのポテンシャル値が、周囲8つのノードのポテンシャル値のいずれとも異なる場合は等値面が生成されない。そこで、座標系生成部110は、等値面が1つ以上算出されたか否かを判定する(S512)。座標系生成部110は、等値面が1つも算出されない場合には(S512でNo)、そのノードと基準オブジェクトを最短で結ぶ線分に対して直交する面を等値面として生成する(S513)。
一方、ノードによっては等値面が複数生成される場合もあるので、座標系生成部110は、等値面が1つ以上算出された場合には(S512でYes)、基準オブジェクトから最も近い等値面を選択する(S514)。続いて、座標系生成部110は、等値面に直交する第1の軸と等値面上で互いに直交する第2,第3の軸とに基づいてX´Y´Z´軸のローカル座標系を生成する(S515)。具体的には、座標系生成部110は、等値面に直交する第1の軸をZ´軸ベクトルとする。また、座標系生成部110は、グローバル座標系におけるXY平面と等値面との交線方向をX´軸ベクトルとする。また、座標系生成部110は、等値面上でX´軸に直交する方向をY´軸ベクトルとする。続いて、座標系生成部110は、X´軸ベクトル、Y´軸ベクトル、およびZ´軸ベクトルを、Structured Gridの該当するノードに格納する(S505)。
一方、座標系生成部110は、ノードiの位置が、管境界外である場合には、ローカル座標系を生成せずに、以降の処理を実行する。座標系生成部110は、Structured Gridのすべてのノードに対するローカル座標系の生成処理が終了したか否かを判定する(S518)。具体的には、座標系生成部110は、r<nであるか否かを判定する。座標系生成部110は、Structured Gridのすべてのノードに対するローカル座標系の生成処理が終了していない場合には(S518でNo)、rをインクリメントして(S519)、S501に戻る。一方、座標系生成部110は、Structured Gridのすべてのノードに対するローカル座標系の生成処理が終了したら(S518でYes)、ローカル座標系の生成処理を終了する。
図15は、基準オブジェクトがLineDataである場合のローカル座標系の一例について説明するための図である。図15に示すように、Structured Gridのノードのうち、LineData上に存在するノードと管境界外に存在するノードを除くノードについては、LineDataに沿った方向がX´軸ベクトル804として設定される。また、X´軸ベクトルに直交する直交面上でLineDataから遠ざかる方向がZ´軸ベクトル808として設定される。また、直交面上でLineDataの周囲を回転する方向がY´軸ベクトル806として設定される。
次に、仮想内視鏡の移動先座標を算出する処理について説明する。図16は、仮想内視鏡の移動先座標を算出する処理のフロー図である。まず、移動先座標算出部112は、入力装置200からX´軸,Y´軸,Z´軸それぞれに対する移動量を取得する(S601)。続いて、移動先座標算出部112は、操作対象オブジェクト(仮想内視鏡802)の現在の座標を取得する(S602)。移動先座標算出部112は、X´軸,Y´軸,Z´軸の順に以下の移動処理を実行するため、X´軸のループ処理を行うための変数s,Y´軸のループ処理を行うための変数u,Z´軸のループ処理を行うための変数vを「0」に初期化する(S603)。
続いて、移動先座標算出部112は、操作対象オブジェクトの座標が管境界面内であるか否かを判定する(S604)。移動先座標算出部112は、操作対象オブジェクトの座標が管境界面内である場合は(S604でYes)、操作対象オブジェクトの座標の最も近傍のStructured Gridのノードを取得する(S605)。これは、操作対象オブジェクトが必ずしもStructured Gridのノード上に位置しているとは限らないため、最も近傍のStructured Gridのノードを取得するものである。仮に、操作対象オブジェクトがStructured Gridのノード上に位置している場合は、操作対象オブジェクトが位置するStructured Gridのノードが取得される。
続いて、移動先座標算出部112は、取得したStructured Gridのノードのローカル座標系の単位ベクトルを生成する(S606)。一方、移動先座標算出部112は、S604で操作対象オブジェクトの座標が管境界面内でない場合には(S604でNo)、X´軸ベクトルに関してはStructured Gridのノードにおけるローカル座標系のX´軸ベクトルの方向に単位ベクトルを生成する(S607)。続いて、移動処理部114は、S606またはS607で生成した単位ベクトルにしたがって、操作対象オブジェクトを移動させる(S608)。すなわち、移動先座標算出部112は、Structured Gridの各ノードに設定されたローカル座標系に基づいて操作対象オブジェクトの移動先座標を算出し、移動処理部114は、算出された移動先座標に基づいて操作対象オブジェクトを移動させる。
次に、移動先座標算出部112は、X´軸の移動処理が終了したか否かを判定する(S609)。具体的には、移動先座標算出部112は、sがX´軸方向の移動量より大きくなった場合にX´軸の移動処理が終了したと判定する。移動先座標算出部112は、X´軸の移動処理が終了していない場合には(S609でNo)、sをインクリメントして(S610)、S604に戻る。すなわち、移動先座標算出部112は、操作対象オブジェクトを一度に大きく移動させるのではなく、X´軸の移動処理が終了するまで、操作対象オブジェクトの単位ベクトル分の移動を繰り返す。
移動先座標算出部112は、X´軸の移動処理が終了した場合には(S609でYes)、Y´軸の移動処理が終了したか否かを判定する(S611)。移動先座標算出部112は、Y´軸の移動処理が終了していない場合には(S611でNo)、uをインクリメントして(S612)、S604に戻り、X´軸と同様に、S604〜S608の処理を繰り返す。
移動先座標算出部112は、Y´軸の移動処理が終了した場合には(S611でYes)、Z´軸の移動処理が終了したか否かを判定する(S613)。移動先座標算出部112は、Z´軸の移動処理が終了していない場合には(S613でNo)、vをインクリメントして(S614)、S604に戻り、X´軸と同様に、S604〜S608の処理を繰り返す。ただし、Z´軸方向の移動処理に関しては、S607の処理がX´軸,Y´軸の場合と異なる。すなわち、移動先座標算出部112は、S604で操作対象オブジェクトの座標が管境界面内でない場合には、Z´軸方向の移動量が正の場合には移動量を「0」にする。これは、Z´軸方向の正の移動によって、操作対象オブジェクトを仮想臓器800である管から離れるのを防ぐためである。また、移動先座標算出部112は、S604で操作対象オブジェクトの座標が管境界面内でない場合であって、Z´軸方向の移動量が負の場合には、操作対象オブジェクトを管に近づく方向へ移動させるために、移動量をそのまま(負の移動量)にする。移動先座標算出部112は、Z´軸の移動処理が終了した場合には(S613でYES)、操作対象オブジェクトの移動処理を終了する。
以上、本実施例のオブジェクト操作装置は、基準オブジェクトの周囲に設定される複数の点それぞれに対してローカル座標系を生成し、各点のローカル座標系に基づいて操作対象オブジェクトを3次元移動させる。したがって、本実施例のオブジェクト操作装置によれば、2つの画面上で操作を行わなくてもよいため、簡易に操作対象オブジェクトの3次元移動操作を行うことができる。また、本実施例のオブジェクト操作装置によれば、操作対象オブジェクトの移動用のパスをあらかじめ設定するのではなく、基準オブジェクトの周囲の複数の点それぞれにローカル座標系を生成するので、操作対象オブジェクトを任意の位置に3次元移動させることができる。
また、本実施例のオブジェクト操作装置は、基準オブジェクトの周囲の複数の点それぞれのポテンシャル値に基づいて形成された等値面に直交する第1の軸と、等値面上で互いに直交する第2,第3の軸とに基づいてローカル座標系を生成する。すなわち、第1の軸は基準オブジェクトに近づくまたは遠ざかる方向の軸となり、第2,第3の軸は基準オブジェクトから一定の距離だけ離れた面上を移動する軸となる。したがって、本実施例のオブジェクト操作装置によれば、基準オブジェクトから一定の距離だけ離れた面上で仮想カメラなどの操作対象オブジェクトを移動させながら、様々な方向から基準オブジェクトを観察することができる。また、操作対象オブジェクトを、基準オブジェクトに近づく方向または遠ざかる方向に移動させながら、基準オブジェクトの特定の箇所を詳細に観察したり基準オブジェクトを全体的に観察したりすることができる。
また、本実施例のオブジェクト操作装置は、基準オブジェクトがラインデータである場合には、基準オブジェクトの周囲の複数の点それぞれについて、ラインデータに沿った方向の第1の軸と、ラインデータに直交する直交面上でラインデータから遠ざかる方向の第2の軸と、直交面上でラインデータの周囲を回転する方向の第3の軸とに基づいてローカル座標系を生成する。したがって、本実施例のオブジェクト操作装置によれば、例えば血管や大腸などの管状データの内部で仮想内視鏡を3次元移動させる場合に、簡易かつ自由度の高い3次元移動操作を行うことができる。
また、本実施例のオブジェクト操作装置は、入力装置から入力される操作対象オブジェクトのローカル座標系における移動指令値を、グローバル座標系における移動指令値に変換して、変換した移動指令値に基づいて操作対象オブジェクトの移動先座標を算出する。したがって、本実施例のオブジェクト操作装置によれば、直感的な操作によって操作対象オブジェクトの3次元移動操作を実現することができる。
なお、本実施例は、主にオブジェクト操作装置およびオブジェクト操作方法を中心に説明したが、これに限らず、あらかじめ用意されたオブジェクト操作プログラムをコンピュータで実行することによって、上述の実施例と同様の機能を実現することができる。すなわち、オブジェクト操作プログラムは、コンピュータに、操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に設定された複数の点それぞれに対して、ローカル座標系を生成する処理を実行させる。また、オブジェクト操作プログラムは、コンピュータに、ローカル座標系を生成する処理によって生成された複数の点それぞれのローカル座標系に基づいて、入力装置から入力される操作対象のオブジェクトの移動指令値に対応する操作対象のオブジェクトの移動先座標を算出する処理を実行させる。また、オブジェクト操作プログラムは、コンピュータに、移動先座標を算出する処理によって算出された移動先座標に操作対象のオブジェクトを移動する処理を実行させる。なお、オブジェクト操作プログラムは、インターネットなどの通信ネットワークを介してコンピュータに配布することができる。また、オブジェクト操作プログラムは、コンピュータに設けられたメモリ、ハードディスク、その他のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出すことによって実行することもできる。
100 オブジェクト操作装置
110 座標系生成部
112 移動先座標算出部
114 移動処理部
115 オブジェクト設定部
200 入力装置
300 表示装置
634 座標変換モジュール
750 等値面

Claims (9)

  1. 操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に格子状に設定される複数の点それぞれに対して、前記基準オブジェクトからの距離に応じたポテンシャル値を求め、該求められたポテンシャル値が等しい点を結んで形成される等値面に直交する第1の軸と前記等値面上で互いに直交する第2,第3の軸とに基づいてローカル座標系を生成する座標系生成部と、
    前記座標系生成部によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出する移動先座標算出部と、
    前記移動先座標算出部によって算出された移動先座標に前記操作対象のオブジェクトを移動させる移動処理部と、
    を備えたことを特徴とするオブジェクト操作装置。
  2. 操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に格子状に設定される複数の点それぞれに対して、前記基準オブジェクトがラインデータである場合には、前記ラインデータに沿った方向の第1の軸と、前記ラインデータに直交する直交面上で前記ラインデータから遠ざかる方向の第2の軸と、前記直交面上で前記ラインデータの周囲を回転する方向の第3の軸とに基づいてローカル座標系を生成する座標系生成部と、
    前記座標系生成部によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出する移動先座標算出部と、
    前記移動先座標算出部によって算出された移動先座標に前記操作対象のオブジェクトを移動させる移動処理部と、
    を備えたことを特徴とするオブジェクト操作装置。
  3. 前記移動先座標算出部は、入力装置から入力される前記操作対象のオブジェクトのローカル座標系における移動指令値を、グローバル座標系における移動指令値に変換して、該変換した移動指令値に基づいて前記操作対象のオブジェクトの移動先座標を算出する
    ことを特徴とする請求項1または2に記載のオブジェクト操作装置。
  4. コンピュータが、
    操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に格子状に設定された複数の点それぞれに対して、前記基準オブジェクトからの距離に応じたポテンシャル値を求め、該求められたポテンシャル値が等しい点を結んで形成される等値面に直交する第1の軸と前記等値面上で互いに直交する第2,第3の軸とに基づいてローカル座標系を生成する座標系生成手順と、
    前記座標系生成手順によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出する移動先座標算出手順と、
    前記移動先座標算出手順によって算出された移動先座標に前記操作対象のオブジェクトを移動させる移動処理手順と、
    実行することを特徴とするオブジェクト操作方法。
  5. コンピュータが、
    操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に格子状に設定された複数の点それぞれに対して、前記基準オブジェクトがラインデータである場合には、前記ラインデータに沿った方向の第1の軸と、前記ラインデータに直交する直交面上で前記ラインデータから遠ざかる方向の第2の軸と、前記直交面上で前記ラインデータの周囲を回転する方向の第3の軸とに基づいてローカル座標系を生成する座標系生成手順と、
    前記座標系生成手順によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出する移動先座標算出手順と、
    前記移動先座標算出手順によって算出された移動先座標に前記操作対象のオブジェクトを移動させる移動処理手順と、
    実行することを特徴とするオブジェクト操作方法。
  6. 前記移動先座標算出手順は、入力装置から入力される前記操作対象のオブジェクトのローカル座標系における移動指令値を、グローバル座標系における移動指令値に変換して、該変換した移動指令値に基づいて前記操作対象のオブジェクトの移動先座標を算出する
    ことを特徴とする請求項4または5に記載のオブジェクト操作方法。
  7. コンピュータに、
    操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に格子状に設定された複数の点それぞれに対して、前記基準オブジェクトからの距離に応じたポテンシャル値を求め、該求められたポテンシャル値が等しい点を結んで形成される等値面に直交する第1の軸と前記等値面上で互いに直交する第2,第3の軸とに基づいてローカル座標系を生成し、
    前記ローカル座標系を生成する処理によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出し、
    前記移動先座標を算出する処理によって算出された移動先座標に前記操作対象のオブジェクトを移動させる、
    処理を実行させることを特徴とするオブジェクト操作プログラム。
  8. コンピュータに、
    操作対象のオブジェクトを3次元移動操作する際の基準となる基準オブジェクトの周囲に格子状に設定された複数の点それぞれに対して、前記基準オブジェクトがラインデータである場合には、前記ラインデータに沿った方向の第1の軸と、前記ラインデータに直交する直交面上で前記ラインデータから遠ざかる方向の第2の軸と、前記直交面上で前記ラインデータの周囲を回転する方向の第3の軸とに基づいてローカル座標系を生成し、
    前記ローカル座標系を生成する処理によって生成された前記複数の点それぞれのローカル座標系に基づいて、入力装置から入力される前記操作対象のオブジェクトの移動指令値に対応する前記操作対象のオブジェクトの移動先座標を算出し、
    前記移動先座標を算出する処理によって算出された移動先座標に前記操作対象のオブジェクトを移動させる、
    処理を実行させることを特徴とするオブジェクト操作プログラム。
  9. 前記移動先座標を算出する処理は、入力装置から入力される前記操作対象のオブジェクトのローカル座標系における移動指令値を、グローバル座標系における移動指令値に変換して、該変換した移動指令値に基づいて前記操作対象のオブジェクトの移動先座標を算出する
    ことを特徴とする請求項7または8に記載のオブジェクト操作プログラム。
JP2010225243A 2010-10-04 2010-10-04 オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム Expired - Fee Related JP5609508B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010225243A JP5609508B2 (ja) 2010-10-04 2010-10-04 オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム
US13/248,504 US8823700B2 (en) 2010-10-04 2011-09-29 Object operation device, method, and computer-readable storage medium storing object operation program
EP11183767.0A EP2437221B1 (en) 2010-10-04 2011-10-04 Device, method, and computer-readable storage medium for operation of a three-dimensional movement of a virtual object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010225243A JP5609508B2 (ja) 2010-10-04 2010-10-04 オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム

Publications (2)

Publication Number Publication Date
JP2012079182A JP2012079182A (ja) 2012-04-19
JP5609508B2 true JP5609508B2 (ja) 2014-10-22

Family

ID=45002571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010225243A Expired - Fee Related JP5609508B2 (ja) 2010-10-04 2010-10-04 オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム

Country Status (3)

Country Link
US (1) US8823700B2 (ja)
EP (1) EP2437221B1 (ja)
JP (1) JP5609508B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009058802B4 (de) * 2009-12-18 2018-03-29 Airbus Operations Gmbh Anordnung zur kombinierten Darstellung eines realen und eines virtuellen Modells
JP5586648B2 (ja) 2012-03-30 2014-09-10 株式会社東芝 永久磁石とそれを用いたモータおよび発電機
CN103700145A (zh) * 2013-12-25 2014-04-02 北京像素软件科技股份有限公司 一种实现图像仿真的方法
DE102014009299A1 (de) * 2014-06-26 2015-12-31 Audi Ag Verfahren zum Betreiben einer Virtual-Reality-Brille und System mit einer Virtual-Reality-Brille
US10777018B2 (en) * 2017-05-17 2020-09-15 Bespoke, Inc. Systems and methods for determining the scale of human anatomy from images
CN108629847A (zh) * 2018-05-07 2018-10-09 网易(杭州)网络有限公司 虚拟对象移动路径生成方法、装置、存储介质及电子设备
US11900822B2 (en) * 2020-12-18 2024-02-13 The Boeing Company Dynamic approach procedure system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3830188B2 (ja) * 1995-12-18 2006-10-04 株式会社バンダイナムコゲームス ゲーム用画像合成装置
US6657627B1 (en) * 1997-02-18 2003-12-02 Konami Co., Ltd. Video simulation system for calculating distance between characters and applying polygon to polygon plane
JP2774795B1 (ja) * 1997-02-18 1998-07-09 コナミ株式会社 ポリゴンの張付け方法、その装置及びシミュレータ
JP3928229B2 (ja) * 1997-11-28 2007-06-13 ソニー株式会社 表示制御装置および表示制御方法、並びに記録媒体
US6421048B1 (en) * 1998-07-17 2002-07-16 Sensable Technologies, Inc. Systems and methods for interacting with virtual objects in a haptic virtual reality environment
JP4349932B2 (ja) * 2004-02-26 2009-10-21 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及びゲーム装置
JP4863435B2 (ja) * 2005-05-13 2012-01-25 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
JP4776978B2 (ja) * 2005-05-18 2011-09-21 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及びゲーム装置
JP5095122B2 (ja) * 2006-05-01 2012-12-12 任天堂株式会社 ゲームプログラムおよびゲーム装置
KR101665034B1 (ko) * 2008-08-22 2016-10-24 구글 인코포레이티드 이동 장치 상의 삼차원 환경에서의 네비게이션

Also Published As

Publication number Publication date
US20120081365A1 (en) 2012-04-05
EP2437221B1 (en) 2017-12-27
US8823700B2 (en) 2014-09-02
EP2437221A2 (en) 2012-04-04
JP2012079182A (ja) 2012-04-19
EP2437221A3 (en) 2017-01-25

Similar Documents

Publication Publication Date Title
JP5609508B2 (ja) オブジェクト操作装置、オブジェクト操作方法、およびオブジェクト操作プログラム
JP6312898B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP5384473B2 (ja) 画像表示装置及び画像表示方法
JP6359868B2 (ja) 3次元データ表示装置、3次元データ表示方法、及び3次元データ表示プログラム
JP4584575B2 (ja) 3d画像に表示される3dサーフェイスとインタラクトする画像処理方法
US20110262015A1 (en) Image processing apparatus, image processing method, and storage medium
JPWO2006118100A1 (ja) 画像表示装置及びプログラム
JP2016533832A (ja) 手術ナビゲーションシステム運用方法及び手術ナビゲーションシステム
CN104102811B (zh) 创建人体工学人体模型的姿势以及使用自然用户界面控制计算机辅助设计环境
JP7038377B2 (ja) 生体モデル生成装置、生体モデル生成方法、および生体モデル生成プログラム
JP2010154920A (ja) 3次元形状データ処理装置、3次元形状データ処理方法及びプログラム
JP6576042B2 (ja) 表示制御装置及びその方法、プログラム
JP2015210670A (ja) 3次元データ表示装置、3次元データ表示方法、及び3次元データ表示プログラム
WO2017180097A1 (en) Deformable registration of intra and preoperative inputs using generative mixture models and biomechanical deformation
JP6145870B2 (ja) 画像表示装置および方法、並びにプログラム
JP5231901B2 (ja) 画像処理装置
CN102356408A (zh) 场景视图的可视化
CN111797506B (zh) 一种主从导丝控制方法
JP2020052978A (ja) 三次元形状作成装置、三次元形状作成方法および三次元形状作成プログラム
JP2007159927A (ja) モデリング装置、モデリング方法、領域抽出装置、領域抽出方法及びプログラム
KR100466409B1 (ko) 가상 내시경 시스템, 가상 내시경 디스플레이 방법과 그 방법을 컴퓨터 상에서 수행하는 프로그램을 저장한 컴퓨터가 판독 가능한 기록 매체
Wu et al. Learning soft-tissue simulation from models and observation
JP5534580B2 (ja) 医用画像表示装置及び医用画像表示方法
JP2010136765A (ja) 画像処理装置
JP2022059493A (ja) モデル生成方法、モデル生成装置、画像処理方法及び画像処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140714

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140805

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140818

R150 Certificate of patent or registration of utility model

Ref document number: 5609508

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees