舟橋・安田・横井・鳥脇：仮想空間における仮想手による道具操作のための知識とモデル

TVRSJ Vol.3 No.3, 1998

基礎論文

仮想空間における仮想手による道具操作のための知識とモデル
舟橋健司 *1, **安田孝美 *2

横井茂樹 *2

鳥脇純一郎 *1

Knowledge and Model for Manipulation Using Tools with a Virtual Hand in Virtual Space
Kenji FUNAHASHI*1, **, Takami YASUDA*2, Shigeki YOKOI*2, and Jun-ichiro TORIWAKI*3
Abstract - This paper describes a generalized data structure for virtual tools used in virtualworld with a hand. The proposed model contains the knowledge, such as the shape of the tool,
how to use the tool with a hand, and how to manipulate objects by the tool. Introducing this kindof data structure, we can separate the models for virtual tools from virtual manipulation systemitself, so that any type of tools is introduced in a very simple manner.
Key Words : virtual manipulation, virtual hand, virtual tool, data structure of tool, knowledge of toolも行われている[7][8]．
様々な道具を仮想空間で利用する場合の，それぞれの道具と入力装置との関係を
近年，仮想現実感(Virtual Realty; VR)に関する研究 表 1 に示す．図 1(c) の場合は，道具の形状や操作ににおいて，仮想空間に配置された仮想物体に対する 対応したものを直接入力装置として用いるため，道対話操作（仮想物体操作）の実現が注目されている． 具ごとに操作を用意する必要があり（表1(1)），例え
仮想物体操作の方法は，図 1 のように大別できる． ば大きさや形状が異なる複数の道具を用いた物体のまず (a) は，マウス，キーボードにより操作対象の 操作の実現は難しい．これに対して図 1(d) のよう
選択，操作の種類，量の指定を行うもので，従来か
real world
virtual spaceら行われてきた操作方法である．この種の方法は，計算機環境に習熟していない操作者の場合，仮想空
mouse
間操作を直感的に行うことは困難である．ここで図
mousecursor1(b), (c)などのように，実世界に近い感覚で仮想物体(a)
操作が可能となれば，VR 技術の適用は広範囲におよぶものとなり得る．そのため (b) に示す，操作者の手に対応して動く仮想空間内に定義された手（仮想手）による，仮想物体操作に関する基礎技術を確
virtual handvirtual tool
立するための研究が多方面で行われている[1]-[6]．
ここには，グローブ状などの入力装置，力覚帰還もwith force
mouse
可能な入出力装置の開発，および，仮想空間内でのglove based feedback
仮想手と物体との相互作用モデルの考案が含まれる．
(b) hand shaped device (c)tool shaped device
さらに，手により直接物体を操作するのではなくて，図1(c) に示すような道具を使って操作する研究
1. はじめにA*1: 名古屋大学大学院工学研究科情報工学専攻*2: 名古屋大学情報文化学部**: 現在 名古屋工業大学情報処理教育センター*1: Infomation Eng., Graduate School of Eng., Nagoya Univ., Japan*2: School of Informatics and Sciences, Nagoya Univ., Japan**: Educational Center for Information Processing, Nagoya Institute ofTechnology, Japan

A

(d)

AAA
AAA

virtual tool

virtual hand

glove shaped device

図 1 仮想物体操作における指示方法
Fig.1: Operating method of virtual manipulation

日本バーチャルリアリティ学会論文誌に，道具は手によって操作されることに着目して，同図(b) と同様に手の動作の入力デバイスを用いて仮想手で操作する前提で，同図(c) での多様な仮想道具をソフトウェアのみにおいて実現することが考えられる（表 1(2)）．
このような目的のために，表 1(2) に示すように，手で操作する道具について，仮想手と道具，道具と物体との相互作用に関する知識を一般化できれば，一般的な仮想道具による仮想空間操作システムの重
要な基本技術となり得る．
ところで，知識を標準化し，システムから分離す
ることは一般的な考え方であり[9]，様々な分野において知識を分離することの有効性が述べられている（例えば[10][11]）．CG における３次元形状定義に関しては DXF，VRML などの標準書式が普及している．
また WWW に代表されるように分散オブジェク
ト技術は近年，急速に発展，普及してきている[12]．
しかし VR において，相互作用モデルなどの情報を知識ベース化し一般的に扱うなどのような，オブジェクト指向技術による分散管理の研究は報告されていない．
そこで本研究では，道具を構成する部品，利用方法に関する知識などを道具自身に持たせて，システ
ムから分離することにより，図1(d) に示すような仮
想道具の仮想手による操作を一般的に表現可能な基本モデルを考案した[13][14]．知識をシステム（実行プログラム）から分離することにより，プログラムを変更せずに，新たな道具に対する知識（データ
ファイル）を付加することで新しい道具の利用が可能である．提案手法に従い，利用する各道具に対応した，仮想手と道具，道具と物体との相互作用モデ
ルを構築することにより，仮想手で様々な道具を操作し，それらの道具により物体を間接的に操作することが可能となる．これらは，Java などのマルチプ
ラットフォームなプログラム言語による実現も考えられる．またその場合，各言語の仕様の範囲において汎用性が保証される．一方，本文のように道具の実現のための機能に限定することにより，汎用性はいくらか低くなるが，記述の容易さが高くなり，また仮想道具の定義を支援するシステムの構築も可能となる．
以下，まず 2 節では，本研究の具体的な目的，および，方針について述べる．次に 3 節では，知識の構造，操作システムの実現方法について述べる．実
現した実験システム，実際の操作の様子などについては 4 節で示す．最後に 5 節で今後の課題について論ずる．

Vol.3, No.3, 1998

表 1 実世界の入力装置による仮想道具の駆動方法
Table 1: Manipulating virtual tools with input devices in real world

AA
AA
AA
AA
AA
AA AAAA
virtual spacereal worldinteraction modelfor objects
(1)

AA
AA
AA
AA
AA AA
AA
AA
A
A A
AA
A
AA
AA
A
AA
AA A
AA

matching input
device to virtual
manipulator(2)knowledge database

2. 仮想手による道具を介した物体操作
2.1 仮想空間における道具の利用
本文では，最終的に操作したい対象を物体と呼び，この物体を操作する目的で手で直接に扱う対象を道具と呼ぶ．
この道具の操作を仮想空間で実現する場合，マウスなどの通常のコンピュータ用の入力装置を用いる
方法，および，仮想空間内で利用する道具と同一形
状の実際の道具を入力装置として用いる方法がある．しかし，前者は実世界における道具の操作との差異が大きいため，直感的な操作が困難となる．後者によれば操作は直感的になるが，個々の装置ごとにシステムが構成されるため汎用性が乏しく，入力装置のみを簡単に交換することはできない．また，同じ種類の道具を使っても形状がことなれば操作は直感的でなくなる．例えば，ある形状のハサミの入力デバイスを用いたとすると，これと大きさや形が異なった仮想ハサミの操作は違和感を与えることになる．そこで，操作者の手に対応させた仮想手により仮想道具を操作することが可能となれば，入力装置の交換，仮想道具との形状の違いによる違和感という問題がなくなる．
本研究では，仮想空間に複数の道具が存在し，そ舟橋・安田・横井・鳥脇：仮想空間における仮想手による道具操作のための知識とモデル

れらのうち任意の道具を仮想手で利用することにより，物体操作が可能なシステムの構築を目的としている．具体的には，次節で述べるような道具を対象とする．ところで，例えば VRML で記述された仮想空間内をウォークスルー可能なシステムでは，データファイルを変更することにより他のシーンの体験が可能である．これと同様に，本システムにおいて新しい道具を利用する場合に，プログラムを変更するのではなくて，新たな道具の知識ファイルを作成する，あるいは，他から入手することにより，道具の追加が可能となることを目的としている．
そのために，VRML などの３次元形状定義の書式のように，仮想道具のための知識の構造を定め，さらに，その道具の知識に基づく手による道具の操
作，道具による物体の操作が可能なシステムを作成する．仮想道具の知識に含める情報について考察する意味で，次節では道具に関する性質について整理
し，2.3, 2.4 節では道具の手による操作，道具による物体操作の実現法について述べる．
また後述するように，道具は多面体により表現される剛体とする．また，物体も多面体による表現とするが，道具との相互作用により変形も可能とす
る．手に関しては，手を代表する点（手首）の座標と手の方向，および，各関節の角度が入力装置から得られるものとする．さらに，仮想手の形状モデルを有することにより，それに基づく手の描画を行うことができる．
2.2 道具の分類
本節では，仮想手で様々な道具を扱うために，道具に関する性質について考察する．ここでは片手で把持して動かし，実際に操作したい物体に干渉させることにより移動，変形などを行う道具を対象とす
る．また干渉とは，道具を物体に接触させる，もしくは，近付ける（例えば，磁力によるもの）ことを意味する．その詳細は道具と物体の相互作用モデル
による（後述）．具体例として (1) スプーン，(2) ナイフ，(3) ハサミ，(4) ピンセット，(5) 箸 などが挙げられる．
[手と道具の相互作用] 一般に，道具の把持や操作方
法が１種類とみなせるもの(上記の例の 4, 5)と，
複数考えられるもの(上記の例の 1, 2, 3)，に分類ができる．ところで，物体を手で直接に把持する場合は，手の形状，接触位置など様々な状態で行われることが予想される．それに対して，道具を用いる場合は限定された把持のしかたのみを可能とし，他を考慮せずに不可能としても問題は起こらないと判断できる．

[道具の形状] 道具に可動部分が存在しないもの(上記の例の 1, 2)と，存在するもの(上記の例の 3, 4, 5)がある（ここでは，箸は２つの部分が互いに独立した
動きをしない１つの道具とみなしている）．可動部分が存在すると，描画における道具の姿勢が変化す
るだけでなく，次に述べる物体との相互作用に関係する，ピンセットの先端などの互いの位置が変化す
る．これについても，道具の形状が任意に変化するのではないため，道具を構成する変形しない部品の相対的な位置変化により表現できる．ここでは，例
えば針金のように，任意に形状の変化する道具は考えないものとする．
[道具と物体の相互作用] さらに道具には，物体に対して変形操作を行うもの，主に移動操作を行うもの，および，この両方共に可能なものが存在する．この道具と物体との相互作用モデルは，仮想物体の性質，構造も関係する．
2.3 ジェスチャによる道具の把持
仮想空間における道具の使用を可能にするには，
前節で述べた様々な仮想道具の，仮想手による把持，操作を実現する必要がある．ここでは，手のジェ
スチャによる指示を用いることにする．仮想手による物体操作の実現方法の一つに，ジェスチャを利用するものがある．これらは概して，ジェスチャの情報をシステム自身が持っており，任意の手の形状による把持に対応できない，などの問題点と，物理法則などによる実現方法に対して計算時間を少なくできる，という利点がある．
仮想手による道具を利用した物体操作システムの実現には，手と道具の関係だけでなく，道具と物体との相互作用に関しても処理を行う必要がある．また前節で述べたように，道具毎に把持を行う手の形
状は異なるが，あらゆる手の形状による把持に対応する必要はない．そこで，各道具ごとに１つ，ない
し，複数のジェスチャを知識として持たせることにより，任意の道具の把持，操作を実現した．
実際の把持判定では，まず道具および手を内包す
る球，立方体等が互いに干渉するか否かを判定（境界判定）する(図 2)．次に，各関節の角度によるジェ
スチャの判定を行う．これは，手の大小の違いにより指先などの座標値は変化の影響を受けないこと，
および，操作者の手の形状を入力する装置は主に各関節の角度を測定していること，による．ジェス
チャの判定は，各関節に対し上限と下限を指定する
ことにより，しきい値による判定を行う．各ジェス
チャ毎に手に対する道具の位置に関する知識も持たせておき，ジェスチャにより把持と判定された場

日本バーチャルリアリティ学会論文誌

Vol.3, No.3, 1998

A
A

vertex j

boundary checkvertex i

grasping check with hand
gesture (using angle of joints)
grasping

check
points

check
lines

part apart b

図 3 判定点，判定線分
Fig.3: Check points and check lines for interferencetransfer each partsof the tool toappropriate position

あるいは交点，射影点等による決定も可能なものとする．
実際に相互作用を行う場合，(1)干渉判定，(2)各種演算，(3)分岐処理，およびその結果による(4)物体の操作が必要である．そこで，それぞれについて以下に挙げる処理を考慮する．
(1) 判定点，判定線分，判定面と，物体の面，物体のuse the tool due
to hand motion
稜線，物体の頂点との各組合せの判定，および物体に対する内外判定(2) スカラー変数，ベクトル変数に対する代入，各種
図 2 道具の把持判定
算術演算，大小判定等を含む論理演算
Fig.2: Grasping check for tool(3) 真偽判定の結果による処理の実行，あるいは，非実行
合，道具の位置，方向を補正する．また，道具を把 (4) 道具に追従した移動，頂点を移動することによる変形，平面による物体の切断
持したまま手全体の位置，方向を変化させた場合，その道具は手との相対位置が変化しないと考え，手 これらの組合せにより，道具と物体との相互作用モデルを構築する．
の動きに追従し移動させる．
2.4 道具による物体操作の実現
3. 知識のプログラムからの分離
上述した手で操作されている道具による，物体の3.1 道具に関する知識操作も実現する必要がある．道具と物体との関係は2 節で述べた事項をもとに，各道具に関する知識
手と道具との関係と比較して多様であり，道具と物体の組合せにより様々な状況が考えられる．本研究 の構造の一形式について提案する(図 4)．
では，道具による干渉，操作の計算，および描画の [道具自身] 可動部分が存在する道具に対応するた
高速性を考慮し，仮想物体は多面体モデルとする． め，道具の形状データは，道具を構成する変形しな
また，道具を構成する部品も，同様に多面体モデル い部品（多面体）の集合として表現する．ただし，各部品の位置関係，拘束の方法についてはここには記とする．
一般に相互作用を考える場合，まず干渉が存在す 述しない．
るか否かを判定し，その状況により様々な作用を加 [道具−手] 次に道具の把持操作に関しては，１つえる．干渉に関して物体に注目した場合，多面体を の道具に対して複数の把持，操作方法が存在し得る
構成する頂点，稜線，面に対する干渉，および物体 ため，操作方法の集合として表現する．この各要素の内部に侵入しているか否か，等あらゆる状況に対 は，可動部分の存在しない道具の操作方法に関応する必要がある．しかし，特定の目的を持つ道具の場合，あらゆる部分における干渉を考慮する必要性は低い．そこであらかじめ，図3 に示すように，道具の部品を構成する多面体の頂点に基づいて，物体との干渉等の判定を行うための判定点，判定線分，
判定面を設定しておく．これらは，道具に固定された頂点だけでなく，２頂点の中点を判定点とする，

しては，１組の道具把持における手のジェスチャ，および手全体の位置に対する相対的な各部品の位
置，方向を知識として持つ．道具の可動部分を動かす操作方法の場合，複数組のジェスチャ，および各部品の相対位置をリスト表現による知識として持ち，隣り合う要素間を補間することにより，ジェス
チャの変化に対応して道具の可動部分の状態を連続

舟橋・安田・横井・鳥脇：仮想空間における仮想手による道具操作のための知識とモデル

interaction model between
a tool and objects， ，…， ， ，…
check poins, check lines

interaction model between
a tool and objects

AAA
AAA
AA
AA
AA

sequences of operationand decision
tool - object
relationa toolshape of toolparts of tool

manipulation with handA

manipulation 0part 0

manipulation 1

tool itself

tool - handrelationgesturerelative position ofeach parts to hand

図 5 スプーンの知識ベースの例
Fig.5: Illustration of knowledge base for a virtual tool(1) (spoon)
図 4 仮想道具に関する知識
Fig.4: Knowledge for virtual tools[操作 0] として以下による各判定，計算，把持操作(1) しきい値の設定(5cm)に変化させる．またこれにより，各部品の位置，拘(2) 判定点 0, 1 間の距離 d を計算束の関係が決まる．
(3) 距離 d がしきい値以下か判定[道具−物体] さらに，道具と物体との相互作用モ(4) 判定点 2 が物体内部か判定
デルとして，まず判定点，判定線分，判定面の集合(5) 上記(3)(4)が共に真ならば物体を把持，移動を，道具形状データの頂点座標の演算として表現す[操作1] として類似な方法による物体の頂点
る．この判定点などに対して，どの様な判定，演算 および，を行い，その結果どの様な影響を物体に与えるか の選択，移動による変形操作とした．このピンセッを，リストとして表現する．操作方法が複数ある場 トの実際の知識構成を 図 8 に示す．実際のデータ（手続き）はテキストで表現されており，容易に記合は，このリストの集合となる．
図5, 6 にスプーンとピンセットの道具に関する知 述，変更が可能である．また，道具と物体との相互識の構成例を示す．スプーンは１つの部品からな 作用アルゴリズムの記述は簡易インタプリタ言語的り，スプーンの持ち方は２通りとした．それぞれの な表現とする．後述する実験システムでは，2.4節 (1)
持ち方に対し，それぞれ１組のジェスチャと，手に 〜(4) に示す約 50 の命令が用意してある．左中央の対するスプーンの相対位置を知識として持つ．判定 データファイル tweezers.ktf により，道具と手，道具
点をスプーンの先の部分に設定し，物体が判定点に と物体との相互作用モデルのファイル tweezers.kth
干渉している場合はスプーンに追従して移動させる (左下), tweezers.kto(右上) を指定する．また，道具のことにより，物体をのせること，および，押すこと 形状として指定されたファイル tweezers.kof.list (右を可能とした．また，可動部分を持つピンセットは， 中 央 ) は ， 各 部 品 の 形 状 デ ー タ の フ ァ イ ル
２つの部品により構成し，使用方法は１通りとし tweezer̲R.kof, tweezer̲L.kof(右下) を指定する．このた．使用方法の表現は，ピンセットを閉じた状態と ピンセット自身のデータは ex.ktf.list(左上) 等から参「%」以降，行末まではコメント文
大きく開いた状態それぞれの手のジェスチャと，各 照される．図中，部品の相対位置による．物体との相互作用モデル である．
3.2 道具の把持，操作の実現
は，以下に示す３つの判定点と２つの操作方法を有
上述の知識構造により道具の知識をシステムからするものとした(図 7)．
分離し，仮想手による道具を介した物体操作を実現[判定点の設定]する．従来のように，それぞれの把持対象に対して部品 0 の先端（頂点 i ）を判定点 0 とするシステムに設定されたジェスチャによる判定を行う
部品 1 の先端（頂点 j ）を判定点 1 とするのではなく，道具毎に１つ，ないし，複数のジェス
上記判定点 0, 1 の中点 p を判定点 2 とする

日本バーチャルリアリティ学会論文誌

Vol.3, No.3, 1998

interaction model between
a tool and objects

part 0part 1vertex ipart 0P

part 1dvertex j-

manipulation 0

object

図 7 ピンセットと物体との相互作用
Fig.7: Interaction model between tweezers and object

ある．また，操作者の各指の関節の角度，手首の角度等はグローブ状の入力装置により入力される．これは 18 個のセンサを有し，それぞれ 8bit (0-255) の値を得ることが可能であり，測定制度は 0.5 degree/
value に設定されている．手の位置および方向は低周波の磁界を利用したモーションセンサにより入力される．これは位置，角度データに関してそれぞれ，
図 6 ピンセットの知識ベースの例
Fig.6: Illustration of knowledge base for a virtual tool(2) (tweezers)

静的精度: 0.08cm, 0.15 ゜，分解能: 0.0005cm,
0.025゜の測定値が得られる．さらに，液晶シャッタを利用したステレオグラスおよび HMD による立体
チャを知識として持たせておくことにより，道具の 視も可能である．
形状，実際の操作に対応した把持を実現する．また，本システムでは，複数の道具，複数の物体が存在
道具の可動部分の状態が変化する操作方法に対して する状況で，自由に道具を選び，物体に対するイン
も，複数のジェスチャと道具を構成する各部品の手 タラクションを行うことが可能である．また，物体に対する位置を知識として持たせ，隣り合う要素間 データを作成するだけで新しい物体に対する操作がを補間することにより，手の形状の変化に対応した 可能なように，システムの改良なしに道具に関する
道具の可動部分の状態の連続的な変化を実現する． 知識を作成するだけで新たな道具の利用が可能であ
具体的には，図 6 におけるピンセットを閉じた状態 る．
と大きく開いた状態の間を補間することにより，さらに，仮想手で物体に直接干渉することによる
図9 に示すようなピンセットの開閉動作が可能とな 物体の移動操作も可能であり，全く干渉を受けている．また，道具を把持したまま手を動かした場合，そ ない物体は重力，慣性に従った挙動を示す（実現方の道具は手との相対位置が変化せず手の動きに追従 法は[5]を参照）．
し移動させることにより，把持した道具の移動を行
4.2 実験結果
う．さらに，道具と物体の相互作用モデルに応じた
上記システムで解釈，処理可能な書式で，実際に物体操作を実現する．これらのことから，本モデル いくつかの道具を構築した．ピンセットの知識ベーにより 2.2 節で挙げた道具の把持，操作を行うこと スは図 8 に示すとおりである．
ができる．
本システムによるこれらの道具の操作例を 図 11に示す．図 11(a) は左手で物体を把持し，右手でピ4. 実験例
ンセットにより物体を変形している状況のシステム
4.1 実験システムの構成の概観である．同図(b) には同じ道具（スプーン）に上述した知識構造，操作モデルを用い，道具に関 対して，２通りの異なる持ち方が実現されているこする知識を分離した仮想空間操作システムを，グラ とが示されている．また 同図(c) に示すように，可フィックワークステーション (SGI Onyx RE2, R8000) 動部分のある道具（ピンセット）の操作も実現でき
上で，約10000行のC言語により実現した(図10)．道 た．同図(d) では，箸，ナイフ，ハサミを利用してい具と物体との相互作用実現のためのインタプリタ部 る様子を示す．ここでは，個々の道具と物体との相分は，約 500 行で実現されている．本システムは前 互作用モデルについて議論するわけでは無いため，述の知識の入力，解釈，および処理が可能なもので 各々のモデルを以下のように簡単なものとした．

舟橋・安田・横井・鳥脇：仮想空間における仮想手による道具操作のための知識とモデル%<tweezers.kto> tool & object relation file 道具と物体の相互作用モデル
NumCPoint: 3
CPoint# 0
CPoint# 1
CPoint# 2%<ex.ktf.list>% tool‑file list fileNumber: 5
FileName: ¥file://$(HOME)/tweezers.ktf
FileName: ... /spoon.ktf
FileName: ... /scissors.ktf
FileName: ... /knife.ktf
FileName: ... /chopsticks.ktf

NumCLine: 0
NumCPlane: 0% 判定点数は 3(OVn 0 60)% 部品 0 の頂点 60 を判定点 0，(OVn 1 60)% 部品 1 の頂点 60 を判定点 1，(pro .5 (add (OVn 0 60) (OVn 1 60))) % 上記判定点 0,1 の中点を% 判定点 2 とする% 判定線分数，% 判定面数は 0

NumManip: 2% 相互作用モデルは 2 種類
Manip# 0% まずモデル 0(把持移動)について記述
NumOpe: 8%8 行のシーケンスで表現
LetTo I 1 5 ;% 変数 I1 にしきい値 5(cm)を代入
LetVec 1 0 ;% ベクトル変数 V1 に判定点 0 を計算，代入
LetVec 2 1 ;% ベクトル変数 V2 に判定点 1 を計算，代入
DistVec 1 2 F 1 ;%V1,V2 間の距離を計算，変数 F1 に代入
MoreTo I 1 F 1 2 ;%I1>F1 の真偽を判定，変数 I2 に代入
CpInObjTo 2 0 ;% 判定点 2 が物体内部か否かを判定，変数 I0 に代入
AndTo 0 2 3 ;%I0,I2 が共に真か否かを判定，変数 I3 に代入
IfTrue 3 ObjMvWHand ; % 変数 I3 が真ならば，物体を移動
Manip# 1
NumOpe: 7
LetTo I 1 3 ;:%<tweezers.ktf> tool format file
% 道具の各種指定ファイル% 道具形状の指定ファイル名
OListFile: file://$(HOME)/tweezers.kof.list% 道具と手の相互作用モデルのファイル名
ToolHandFile: file://$(HOME)/tweezers.kth% 道具と物体の相互作用モデルのファイル名
ToolObjFile: file://$(HOME)/tweezers.kto%<tweezers.kth> tool & hand relation file
% 道具と手の相互作用モデル
NumTGD: 1% 操作方法は 1 つ

ToolGraspDynamic# 0% 操作 0 について記述

NumTGS: 2
ModeTGD: 1% 要素数は 2

ToolGraspStatic# 0% 要素 0 について記述% 各指 , 各関節角度の上限 , 下限によるジェスチャの指定
Fin# 0..., ‑180, ...,..., 180, ...
Fin# 1..., 60, ...,..., 70, ...
:Obj# 0V0: 11, ‑7, ‑8.5
V1: 0, 3.38, 1.78
Obj# 1
V0: 11, ‑7, ‑8.5
V1: 0, 3.41, ‑1.78
ToolGraspStatic# 1% 要素 1 について記述
Fin# 0..., ‑180, ...,..., 180, ...
Fin# 1..., 10, ...,..., 20, ...
:% 上記ジェスチャ時の各部品の位置(手の座標系 ,6 自由度)
Obj# 0V0: 11, ‑7, ‑8.5
V1: 0, 3.58, 1.78
Obj# 1
V0: 11, ‑7, ‑8.5
V1: 0, 3.31, ‑1.78% 次にモデル 1(頂点移動による変形)について記述%7 行のシーケンスで表現% 変数 I1 にしきい値 3(cm)を代入%<tweezers.kof.list> object‑file list file
% 道具形状の指定ファイル
Number: 2% 部品数 2% 部品 0 のファイル名，その他属性等の指定
FileName: file://$(HOME)/tweezer̲R.kof
Scale: 1.5, 1.5, 1.5
Translate: ‑10, 10, 0
SmoothON% 部品 1 のファイル名，その他属性等の指定
FileName: file://$(HOME)/tweezer̲L.kof:%<tweezer̲R.kof> object format file
% 部品形状の指定ファイル% 部品 0
VerNum: 61
Vertex# 0
Vertex# 1:
Vertex# 10
Vertex# 11:% 頂点数 610, 0, 0 % 頂点 0 の座標
20, 0, 03, .63, .48
3, .63, .1

PolyNum: 74% ポリゴン数 74
PolyVer# 2, 3, 5, 4 % ポリゴンの頂点指定:
PolyVer# 55, 54, 60
PolyVer# 58, 59, 60
LinNum: 0% 稜線は自動計算%<tweezer̲L.kof> object format file

図 8 仮想道具のデータ構造の一例（ピンセット）
Fig.8: An example of data structure for virtual tool (tweezers)

日本バーチャルリアリティ学会論文誌

Vol.3, No.3, 1998

AA(d) 箸，ナイフ，ハサミの操作の様子

実際の操作の様子(e)(b) スプーンに対する２種類の把持の様子(c)

ピンセットに対する開閉操作の様子

AAAA

図 10 実験システムの構成
Fig.10: Configuration of experiment system

図 9 ピンセットにおけるデータ補間の様子
Fig.9: Data interpolation for manipulating tweezers

(a)

Onyx
RE2

(f)

スプーンによる物体の移動操作

ピンセットによる物体の移動，変形操作

図 11 仮想手による仮想道具を利用した仮想空間操作の例
Fig.11: Examples of virtual manipulation using virtual tool with virtual hand

舟橋・安田・横井・鳥脇：仮想空間における仮想手による道具操作のための知識とモデル

箸：ピンセットと同様な操作
ナイフ：刃（判定線分）が物体と干渉した場合，刃を含む平面で物体を切断
ハサミ：刃の交わった点を判定点とし，刃と閉じたことにより判定点が物体と干渉した場合，刃を含む平面で物体を切断
さらに 同図(e), (f) からは，複数存在する道具から希望する道具を選び，物体操作が可能なことがわかる．
また，体験実験において被験者から「手で操作されている道具が見えるため，計算機上のデータ変更
ではなく，実際に操作している感じがする」などの積極的評価が得られた．また，「奥行きが把握しにくい，手応えがない」などの立体視，力覚フィードバッ
クに関する問題点の指摘があった．
計算時間に関する評価については，図12に示すように，複数存在する道具のいずれも操作せず，手による物体への直接的な干渉も行わない状況で，約20frame/sec. での描画更新が可能であった．次に，手で道具を操作しているが，物体への干渉は全く行っていない状況で（手と道具の相互作用のみ），約 19
frame/sec. での描画更新が可能であった．そして，道具を利用した物体操作を行っている状況では（手と道具，道具と物体の相互作用），約18 frame/sec. での描画更新が可能であった．これらは，図 11の何れの道具に関しても，ほぼ同じ結果が得られた．一般には，対話操作の実現には 12 frame/sec 程度が必要であるといわれており，本システムによる，道具を利用した対話的な仮想物体操作が可能であると判断できる．厳密に言えば，仮想物体の形状，道具の形状，
および道具と物体との相互作用モデルが非常に複雑な場合は，描画，干渉時の処理時間が増加することが予想される．そのため，本結果は十分であるとは断定できない．今後，手と道具，道具と物体の相互作用に関する処理の高速化を行う必要性も考えられる．

AAAAAAAAAAAAAAAAAAAA10

15

20

no interference (hand - tool - objects)

25

frame/sec.

grasping tool without manipulating object
manipulating object using tool

図 12 単位時間当たりの描画フレーム数
Fig.12: Rendering frame rate for three conditions

本システムは現在，基本機能を実現した段階にあり，実際に知識を記述する際の書式の分かり易さ，記述の容易さについてさらに検討する必要がある．
この点に関しては，仮想道具定義用エディタの開発も望まれる．また，具体的問題を含むさまざまな状
況における仮想空間操作の体験実験により，本シス
テムによる道具を介した仮想空間操作の実現の容易さおよび問題点を検証することも必要である．
謝辞 研究を進めるにあたり，有益な議論を頂いた
鳥脇研究室諸氏に感謝する．なお，本研究の一部は文部省科研費，股関節振興財団，および柏森情報科
学振興財団の研究助成による．
参考文献
[1]

Z. Huang, R. Boulic, N. Magnenat and D. Thalmann: A
Multi-sensor Approach for Grasping and 3D Interaction,
Computer Graphics: Developments in Virtual Environments (Proc. Computer Graphics International '95), Academic Press, pp.235-253 (1995)[2]

H. Iwata: Artificial Reality with Force-feedback: Development of Desktop Virtual Space with Compact
Master Manipulator, Computer Graphics, Vol.24, No.4,
pp.165-170 (1990)

[3]

[4]

5. むすび
本文では，仮想道具の知識構造を提案し，知識を[5]
システムから分離することにより，仮想手による仮想道具を介した物体操作を容易に表現可能とした．
またこれにより，仮想手による道具を介した物体操
作システムを実現した．本システムでは，システム [6]自体の改良を行わずに，様々な道具を利用することが可能である．さらに，仮想道具の知識ベースを構築することにより，ネットワークへの対応など様々 [7]な応用が可能となる．

平田幸広 , 水口武尚 , 佐藤誠 , 河原田弘: 組立作業のための仮想作業空間 , 信学論 D-II, Vol.J76-D-II,
No.8, pp.1788-1795 (1993)
木島竜吾 , 廣瀬道孝: Virtual Physics: 仮想空間の物
体挙動計算 , 信学技報 , Vol.95, No.83, pp.105-112(1995)
舟橋健司 , 安田孝美 , 横井茂樹 , 鳥脇純一郎: ３次
元仮想空間における仮想手による物体操作モデルと一実現法, 信学論D-II , Vol.J81-D-II, No.5, pp.822831 (1998)
舟橋健司 , 安田孝美 , 横井茂樹 , 鳥脇純一郎: 仮想
空間における両手による協調操作モデル, 情処論 ,Vol.39, No.5, pp.1334-1342 (1998)
北川英志 , 安田孝美 , 横井茂樹 , 鳥脇純一郎: 仮想
空間操作を利用した対話型手術シミュレーション
システムの基本機能の実現 , 情処論 , Vol.37, No.6,

日本バーチャルリアリティ学会論文誌[8]

pp.1088-1098 (1996)
野口博和 , 安田孝美 , 横井茂樹 , 鳥脇純一郎: 仮想
ハサミによる切断操作のモデル化と実現 ,NICOGRAPH 論文集 , pp.22-31 (1996)

[9]

[10]

大須賀節雄, 有川節夫, 波多野誼余夫, 志村正道, 西尾章治郎 , 大槻説乎: 知識科学の展開 , オーム社
(1996)
鈴木秀智 , 本田祐司 , 鳥脇純一郎: 画像処理手順開発支援システム SDIP における処理手順に関するコ
ンサルテーション機能の開発, 情処論, Vol.29, No.1,[11]

pp.29-37 (1988)
飯国洋二: 再構成可能な知識データベースに基づく
非線形信号処理, 信学論 A, Vol.J78-A, No.2, pp.178185 (1995)[12]

ティモシー・ライアン: 分散オブジェクトテクノロ
ジー , プレンティスホール出版 (1997)[13]

舟橋健司 , 安田孝美 , 横井茂樹 , 鳥脇純一郎: 仮想
物体操作における両手による協調操作および道具
操作のモデルの検討 , 計測自動制御学会 第39回パ
ターン計測部会研究会資料 , 97PG0006, pp.17-24[14](1997)
舟橋健司 , 安田孝美 , 横井茂樹 , 鳥脇純一郎: 仮想
空間における手による道具操作の支援のための知
識データベース, 日本バーチャルリアリティ学会第２回大会講演論文集 , pp.250-253 (1997)（1997 年 12 月 22 日受付）

Vol.3, No.3, 1998