Visual Computing / グラフィックスと CAD 合同シンポジウム 2004, 早稲田大学 国際会議場 2004 年 6 月

オブジェクト指向による動作データの管理手法と自然言語からのアニメーション生成システム
An Object-Orientated Motion Database and Animation System
Using Natural Language
寺崎 卓也
Takuya Terasaki

上川千絵
Chie Kamikawa

尾下真樹
Masaki Oshita

九州工業大学 情報工学部
Kyushu Institute of Technology

1. 序論
近年、ＴＶや映画等において 3DCG によるアニメーションが普及化している。しかし、それにともない、使用する動作の量も膨大になり、動作データ作成の時間と手間も増大している。そこで、一度使用した動作データを再利用したいという要求がある。しかし、現状でその要求は実現されているとは言えない。原因の一つとして、動作データは、動作を行うキャラクタやその時の状況によって多様に変化するため、管理が困難であることが挙げられる。例えば同じ「歩く」動作でも、一般の成人と老人の男性の「歩く」は違った動作である。また、同じ男性の「歩く」でも、「楽しそうに」「悲しそうに」等、感情的な要素や、「ゆっくり」「速く」等の動作の修飾要素により、変化する。多種、多様の動作データを従来のファイルシステムや、単純なテーブル方式のリレーショナルデータベース等において、名前等の１次元の情報で管理することは、非常に困難である。
上記の問題を踏まえ、本論文では、オブジェクト指向の継承を導入することで、キャラクタの階層構造を効率的に管理する手法を提案する。また、動作データの付随情報として、自然言語学の格フレームという概念を基に、動作フレームを定義する。これにより、大量の動作データを効率的に管理することが可能となる。
本研究では、このような動作データベースを用い、容易にアニメーションを生成するシステムとして、自然言語で記述された文章を与えると、それに対応したアニメーションを自動的に生成するシステムを開発する。本システムでは、本研究独自の自然解析処理を行う。この解析処理では、入力としてアニメーション生成に必要な文章のみを想定することで、既存の手法よりも簡単なルールで解析する手法を提案する。加えて、文章の意味を捉えることに必要な単語の意味情報を、オブジェクトを含むシーン情報より決定する手法の提案を行う。
本研究のもう一つの背景として、アニメーション製作ツールの高度化、多機能化が挙げられる。これにより、より高度なアニメーション製作への可能性は広がったが、逆に、使う人間に要求される専門知識が増え、扱う人間は限定されるという問題がある。これに対して、本研究で開発するシステムでは自然言語をインターフェースとすることで、手軽なアニメーションの作成が可能である。本システムの応用例として、映画の監督が演出を行う際の参考として、脚本の文章からそのまま簡単なアニメーションを作成することや、一般人向けの娯楽用のツールとして利用することも期待できる。

2. 関連研究
自然言語文章を入力としたアニメーション生成手法については、本研究以外にも数多くの研究が行われている。
Badler らの行った研究[1]では、ユーザーが自然言語を使ってシーン上の仮想人間（エージェントと呼ぶ）を動作させるためのルールの追加や、その場での動的命令を行うシステムの開発を行っている。このシステムでは、エージェント、オブジェクト、及びエージェントのプロセスをActionary と言う永続的階層データベースで管理する。この研究では、自然言語命令を自身で判断する仮想人間の開発を目的としており、仮想人間の命令判断手法の開発に重点を置いている。対して、本研究では、大量多種の動作データの管理を目的として、オブジェクト指向を用いた動作データの管理手法及び、動作データ検索システムの開発を行う。本研究では、動作データベースに登録された範囲の動作データで、手軽にアニメーションの生成を行うことを目標としている。
Bod Coyne らの開発した WordsEye[2]では、自然言語入力から静止画を生成する。この研究では、入力文章に対して自然言語処理を行う。解析結果より、キャラクタや物、それらの位置関係、ポーズを決定し、それらを３Ｄオブジェクトで描画する。この研究では、動きを表す文もうまく静止画で表現することを一つの目的としている。対して、本研究では、動きを表す文のみをアニメーションとして表現することを目的としている。
また、自然言語処理は[3]、情報検索や会話システム等の分野においてその技術が用いられている。情報検索では、文の意味的構造を考慮する必要がなく、構文解析文を用いるため、実現は困難ではない。しかし、会話システムは、構文解析だけではなく、意味構造を捉える意味解析を行う必要がある。この解析手法として、動詞辞書や名詞辞書等を用いて、文中の単語の意味情報を決定する手法が一般的になっている。だが、あらゆる文章に対応したシステムを作ろうとすると、膨大な量の辞書が必要となり、解析は非常に困難である。対して、本研究は、アニメーション生成に必要な文章のみを想定することで、簡単なルールで意味解析を行うことを目的としている。本システムでは、登場するキャラクタ、アイテムのオブジェクト情報を含んだシーン情報を用いることにより、少量の辞書だけで文の意味的な構造を解析することが可能である。

3. システム構成
図 1に全体のシステム構成図を示す。本システムでは、文章より、それに対応するアニメーションを出力する。まず、入力文章の自然言語処理を行い、解析結果を出力する。
データベース内の動作データの候補に対して、解析結果と、動作データに付随した動作フレームを比較、評価することにより、最適な動作データを検索結果として出力する。出
力された動作データは、解析結果の示す動作キャラクタ、動作に関連するアイテムとまとめられ、ひとつのイベントとして扱われる。イベントを生成順にイベント配列に格納し、先頭よりイベントを実行していくことで、アニメーションの生成が行われる。
データベース
文章入力
例 太郎は座るキャラクター

自然言語処理解析結果データ

動作データ

動作データの検索
候補動作データ

動作の検索

・候補選出
・評価

動作データ出力

動作フレームイベントデータ生成
追加

イベント配列

イベント

イベント

イベント

イベントデータ

イベント実行4.

4.2 動作フレームによる動作データの管理手法
本研究では、格フレームの概念を基に、動作フレームを定義する。動作フレームは各動作データの登録時に前もって付随情報として与えられる。格フレームとは、フィルモ
ア[4]によって提案された、文を意味的な構造として表現するための手段である。格フレームは各動詞に対して取り得る深層格と、それに関する制約を記述する。深層格は、文章の表層の中で伴う格助詞によって区別されるもの（これを表層格という）とは違い、文章中の動詞、形容詞との意味的な関係を捉えた格である。
フィルモアの定義した深層格は８つある。本研究では、動作データを表現するために、8 つの深層格から３つを除いた５つの深層格（表 1）を選び、本研究で使える形に定義しなおした。具体的には、上で除いた３つはそれぞれ、経験者格、場所格、時間格である。経験者格は、ある心理事象を体験する者を表し、動作主格に似た性質を持つが、対応が難しいので定義より除いた。場所格は出来事が起こる場所を表すが、本研究では、あらかじめ場所を含むシーン情報を用意するため、必要とは言えない。時間格は出来事の起こる時間を表す。イベント実行の順序を決める要素を持っているが、現時点では経験者と同じく扱いが難しいので対応させていない。

アニメーション生成
アニメーション出力

図 1

そのまま利用すると、キャラクタは一つのクラスとして扱われることとなる。そのため、キャラクタを追加する場合は、新たにクラスの記述を行う必要がある。この問題に対し、本研究では、全キャラクタを一つのクラスで表現し、このクラスにオブジェクト間の継承の情報を持たせている。これにより、プログラムを変更することなく、キャラクタを追加することが可能となる。

システムの構成図

表 1
動作主道具格対象格
源泉格
目標格

格フレームの深層格与えられた動作を引き起こすもの
道具としての役割
移動や変化する対象物
対象物の移動における起点
対象物の移動における終点

動作データの管理手法

4.1 継承を利用したキャラクタの管理手法
本研究では、オブジェクト指向に基づき、各キャラクタを一つのオブジェクトとして考え、動作データをキャラクタのメソッドとして扱う。キャラクタを継承させることで各キャラクタは、継承元のキャラクタの所有する動作データを利用することが可能となる。キャラクタを追加する場
合、基本的な動作は基底キャラクタより継承させ、キャラクタ固有の動作データのみ追加すれば良い。これにより大量のキャラクタを効率的に管理することが出来る。
座る歩くオブジェクト

人間

所持動作
継承

座る（男性の座る）座る（太郎の座る）

図 2

男太郎

次郎

キャラクタの継承図

ただし、本手法を OOBDMS やＣ＋＋等に実装する際、これらはクラスでの継承をサポートしている。この機能を4.2.1

動作フレームを使った動作検索

本システムでは、自然言語で記述された入力文章の自然言語処理を行い、解析結果として深層格の情報を得る。この解析結果より得た検索用情報と、動作フレームとの比較、評価を行い、最適な動作データを検索する。動作検索では前もって、評価する動作データの候補を選出する。候補選出時には、動作名、動作主格の情報を用いる。
動作名、動作主格
動作主格は深層格情報だが、評価項目として使用しない。動作主格は動作名とともに、評価の対象となる動作データの候補の選出時に、どのキャラクタの、どの動作なのか、を調べるのに用いられる。動作主格は、「誰が動作を行う」という、動作の主体として、動作を行うキャラクタを指す。動作名は動詞の文字列を持つ。

4.2.1

動作フレームにおける評価項目

動作フレームは、深層格の考え方に基づいて、動作データに意味的な情報を与える。しかし、通常、深層格は文字列情報である。そのため動作データの比較、検索に用いるには、数値的な評価項目で表す必要がある。本研究では、

各深層格に対応する実際の評価項目として、キャラクタの姿勢や、オブジェクトの情報等、アニメーションに関連した評価項目を定義した。以降に、各深層格より定義した評
価項目について述べる。また、評価項目をまとめたものを表 2に示す。
以下の深層格の評価項目は、ファジィ測度を覗いて、大きくオブジェクト情報と姿勢情報に分けられる。オブジェ
クト情報は、オブジェクトの重さ、サイズ及びポインタの情報を持つ。姿勢情報は、自身のキャラクタのルート（腰）の位置、向き、及び他の関節角度の情報を持つ。道具、対象格はオブジェクト情報、源泉、目標格は姿勢情報を持つ。
道具格
道具格は、「何を使って動作を行う」という、動作を行う際に使用するアイテムを指す。本研究では、アイテムを持って行う動作において、アイテムの重さや大きさによる動作の変化を評価する。また、「はさみで紙を切る」等、「何のアイテムを用いるか」という、そのアイテム特有の動作を評価する。
対象格
対象格は、「何に対して動作を行う」という、動作の対象を指す。自然言語処理においては「何」と言う情報のみ必要とされているが、実際の動作では、対象格の重さ、大きさによる動作の変化を評価する。

・動作主格のエフェクタの源泉位置「机から手を離す」「床から手を離す」等、対象の位置によって変化する動作を評価する。評価項目として、対象のアイテム（キャラクタ）を離す時間における動作主格のエフェクタ（手）の位置情報を与える。
目標格
・動作主格の動作による位置、向きの変化量
動作によってどれだけ動作キャラクタの位置、向きが変化するかを評価する。評価項目として動作主格の位置、向きの変化量を与える。
・動作主格のエフェクタの目標位置「机の上のものを掴む」「床にあるものを掴む」等、対象の位置によって適切な動作を選択するような評価項目。
アイテムを持つ時間における動作を行うキャラクタのエフェクタ（手）の位置情報を与える。

評価項目の設定方法

動作フレームの評価項目は、データベースシステムへの登録時にユーザーが一部手動で設定を行う必要がある。
まず、動作名及び、動作主格、道具格、対象格の重さやサイズ等のオブジェクト情報は手動で設定を行う。動作名に関しては、動詞の類義語を複数登録することができる。次に、動作主格の初期姿勢は動作の開始時におけるキャラクタの姿勢が自動的に設定される。エフェクタの源泉位置、目標位置については、動作主格が対象物を掴む、離す時間を与えてやることにより、自動的に設定される。動作による位置、向きの変化量については、動作データのルートの位置、向きの変化量より自動的に決定される。ファジィ測度については、ユーザーが主観的に値を決定する。
また、これらの評価項目とは別に、どの評価項目を重視するかという、評価項目の重み値もここで設定する。
この値もファジィ測度と同じく、ユーザーの主観で設定を行う。
表 2

姿勢条件

源泉格
・動作主格の動作開始時の姿勢「立った状態から」「座った状態から」等、動作主格の初期姿勢によって変化する動作を評価する。

4.2.2

オブジェクト条件

以下、源泉格、目標格は、対象物の移動、変化における起点、終点を指すが、本研究では、対象物の移動のみを扱う。また、対象物に関して、本システムでのルール
では対象物は自律的に動作することは考えず、移動は必ず動作主格によって行われる。そのためここでの移動における起点、終点として、動作主格が対象物と接触する場所（主に手の部分。ここではエフェクタと呼ぶ）が必要となる。また、源泉格、目標格では、動作主格を対象物として考えた場合に、動作主格自身の起点、終点として、動作主格の位置を含む姿勢情報が必要となる。

様態副詞
様態副詞は、動作を修飾する副詞のことを指す。これは深層格ではないが、動作データの評価に必要な情報である。
様態副詞では「ゆっくり」や「大きく」等、修飾による動作の変化を評価する。動作の修飾要素である様態副詞を速さ・大きさの 2 次元のファジィ測度[6]で与える。

動作フレームの評価項目

評価項目
道具格の直接指定
道具格のサイズ
道具格の重さ対象格の直接指定
対象格のサイズ
対象格の重さ初期姿勢
位置、向きの変化量
エフェクタの源泉位置
エフェクタの目標位置
ファジィ測度

評価項目の説明
データベース内のアイテム
アイテムの幅、高さ、奥行きアイテムの重さ
データベース内のオブジェクト
オブジェクトの幅、高さ、奥行オブジェクトの重さキャラクタの動作開始時姿勢動作によるキャラクタの位置、向きの変化量
キャラクタのエフェクタの源泉
位置
キャラクタのエフェクタの目標位置ファジィ測度（0～1 の実数）5. 自然言語処理
通常、自然言語処理では、形態素解析、構文解析、意味解析、文脈解析の４段階の処理を行う[5]。本研究では、形態素解析・構文解析については、既存のシステムとして奈良先端科学技術大学の「南瓜」[7]を使用した。これは、基本的な処理である形態素解析・構文解析は既存の解析方法で十分に対応できるためである。一方、意味解析では、解析結果として必要な意味モデルは用途によって異なるため、利用できるシステムが存在しない。本システムでは、既存の意味解析手法よりも簡単なルールで解析できると考え、本システムに特化した手法を開発した。文脈解析については、本システムでは対応が困難であるため、現時点ではほとんど考慮していない。
一般の意味解析も、本研究と同様に、主に、格フレームを使った解析手法が用いられる。しかし、あらゆる文章に対応させようとすると、膨大な量の辞書が必要となる。この解析手法では、文中の自立の意味的な情報を決定する。
通常、自立語の意味情報の決定には、名詞辞書や副詞辞書などが用いられる。次に、表層格という格助詞に応じて表層的に決められる格より、格フレームを用いて深層格を決定する。しかし、表層格から深層格は一様に決めることは一般には難しい。これに対して、本研究では、自立語はシーンに存在するという前提があるため、シーン情報を使用することにより、大規模な名詞の辞書を用いることなく、文節内の自立語に意味情報を付加させることを可能とする。また、アニメーション生成を前提に再定義した深層格及び、入力文を与えことにより、表層格より深層格を決定することが可能となると考える。

5.1 形態素・構文解析
まず一般に、形態素解析では、入力文を、文の最小単位である形態素に分解する。この形態素に対して品詞が決定される。次に、構文解析では、単語の位置関係から、単語を句や文節にまとめ、主語、述語等、各要素の役割や修飾関係を明らかにすることにより、文の構造を明らかにする。
以下に形態素、構文解析の例を示す。
①

入力文：太郎は机の上に本を置いた② 形態素解析：形態素に分解
机 の 上に 本太郎 はを 置い生成に必要な情報を付与した。方向の辞書は、「前」や「右」等の位置、向きに関する名前に対して、座標や角度情報を与える。部位の辞書は、「手」や「足」等、キャラクタの部位を表す名前に関して、その部位のインデックスを与える。副詞の辞書は、様態副詞の名前に関して 2 次元のファジィ測度を与える。

5.4 助詞「の」についての処理
入力文に助詞の「の」がある場合、役割決定の結果をもとに、前処理を行う。「太郎は机の上に本を置いた」という例文において、本研究では、「机の」、「上に」という二つの文節を、「机」と「上」をそれぞれ自立語、付加情報として「机（上）に」という一つの文節として扱う。

5.5 意味解析手法
通常、深層格は表層格より一様に決定することはできない。しかし、本研究では、入力文をト書き風の簡単な文とし、主にアニメーションに関わる動詞のみを考慮する。具
体的には表 3の動詞を用いる。動詞は大きく、状態動詞、動作動詞、変化動詞に分けられ、さらに動作動詞は内的動作動詞と外的動作動詞に分類される。状態動詞は、存在や属性などの主体の状態、変化動詞は、主体の変化を表す。
また、内的動作は、思考や感覚など人の内的な事象を、外的動作動詞は、人や物の動態的な運動を表す。本研究では、キャラクタの運動に関する動詞のみを扱うため、対応する動詞は外的動作動詞と、一部の変化動詞を扱う。変化動詞は現時点では対応が難しいため、一部だけ対応している。
また、本研究では、深層格を本研究で再定義したものに限定する。これにより、本研究では、表層格に基づいて深層格を決定することが可能である。

た表 3名詞 助詞 名詞 助詞 名詞 助詞 名詞 助詞 動詞 助動詞

動詞の種類
外的動動作作動詞
動詞
内的動作動詞③ 構文解析：文節にまとめ、係り受けを決定
太郎 は 机 の 上 に 本 を 置い た
名詞 助詞 名詞 助詞名詞 助詞 名詞 助詞 動詞 助動詞

状動詞態
変化動詞

5.2 意味解析処理の流れ
本研究では、形態素解析、構文解析の結果をもとに、結果として得た文中の各文節に対して、次の処理を行う。
①②③④

自立語の役割決定
助詞「の」についての処理
深層格の決定検索システムへの深層格情報の出力

以降では、これらの処理手順について説明する。

5.3 自立語の役割決定
南瓜による形態素解析、構文解析の結果をもとに、各文節の自立語の役割決定を行う。各文節の自立語に意味情報を付加し、後の深層格決定の判断に用いる。この処理では、シーン情報（キャラクタ・アイテム）と「方向・部位・様態副詞」の辞書への問い合わせを行うことで、各自立語の役割を決定する。さらに動作に関係する単語（方向・部位・様態副詞）の辞書を用意し、それらにアニメーション

本システムで対応する動詞の種類
例

対応「走る」「食べる」○「思う」「考える」

×「ある」「知っている」「含む」「着く」「止まる」

×△

以下に、動作名・深層格・様態副詞を決定するルールを示す。これより、各文節の表層格から深層格を決定する。
ただし、このルールは自立語がシーンのキャラクタ、アイテム、方向、部位、様態副詞に一致した自立語を含む文節のみに適用する。一致しない自立語を含む文節に関しては、アニメーションに表現できないものと判断して処理を行わない。また、処理の中では、必ず次の順番でルールを適用していくことにする。
①
②
③
④⑤
⑥⑦

動詞を動作名とする
ガ格を動作主格とする
デ格を道具格とする
ヲ格を対象格とする
カラ・ヨリ格を源泉格とする
ニ・ヘ・マデ格を目標格とする
様態副詞の自立語をそのまま様態副詞とする
また、これらのルールだけでは対応できない文もあるた

め、この他にも以下のようなルールを付け加えた。
・・・・

受身の助動詞がある場合は書き換え処理を行う（例：太郎が次郎に殴られる→次郎が太郎を殴る）
助詞がない文節の自立語でキャラクタと判断された自立語を動作主格とする（例：太郎座る）
デ格の自立語（アイテム）がある任意の大きさを超えるものは道具格ではなく目標格とする（例：太郎がドアの前で止まる）
ヲ格で方向と判断された自立語は、道具格ではなく目標格とする（例：太郎が右を向く）

5.6 代名詞の処理
入力文に「彼」、「彼女」等の代名詞が与えられた場合、現時点では、前文の動作主格を、次の文の動作主格としている。しかし、例えば「太郎が次郎を殴った」「彼は倒れた」などの文が与えられた場合、本システムのルールでは、「彼」は「太郎」ということになり、意味的にこれは間違いである。この問題を解決するには、文脈解析を行う必要がある。

6. 動作データ検索処理
自然言語処理結果を基に動作の検索、アニメーションの生成を行う。

6.1 検索する動作データの候補の決定
動作データ検索のために、まず、評価の対象となる動作フレームの候補を選出する。選出の方法を以下に示す。
動作主格のキャラクタの検索本システムでの動作データ（実際は動作フレーム）は全てキャラクタの所有物として存在するため、まず、解析結果で示されている動作主格のキャラクタをシーン情報から検索する。
動作名の比較
見つかったキャラクタの持つ動作フレームの中で、解析結果で示された動作名と一致するものを探す。ここで一致する動作データはすべて評価の対象となる。
継承元のキャラクタの参照
指定したキャラクタの継承元であるキャラクタのデータの参照を行う。この参照したキャラクタについて動作名の比較を再び行う。キャラクタの継承元が存在しない場合は、その時点で処理を終了する。

6.2 検索データの決定
自然言語処理により得た解析結果は、各深層格のオブジェクト情報とそれに付随する情報を持つ。この解析結果から、オブジェクトのシーン上での位置、向き情報等を参照することにより、動作データの評価項目と比較を行うための検索データを作成する。検索データの具体的内容として、道具格、対象格、に関しては、オブジェクトのサイズ（幅、高さ、奥行き）、重さを与える。また、ポインタが一致するかどうかを評価項目として与える。目標格、源泉格に関して、姿勢について、ルートの位置と向き及び、ルートに直接繋がる関節のルートを基準とした相対ベクトルを求める。エフェクタの位置として、ルートを基準としたエフェクタの相対ベクトルを求める。また、動作による位置、向きの変化量を求める。様態副詞に関しては、ファジィ測度を求める。

6.3 評価点計算
候補として選出された各動作フレームと、検索データとの比較、評価を行い、最も評価の高い動作データを出力する。各評価項目で評価点を求め、それらに重み値をかけた２乗総和を最終的な評価点とする。各項目の評価点は全て動作フレーム、検索データの差分とするため、値が低ければ低い程評価は高い。また、本来は、継承先と継承元のキャラクタの持つ動作データに対して優先度を考慮すべきであるが、現時点では考慮していない。
E 0 , E1 , E 2 LL E10

各評価項目の評価点

w0 , w1 , w2 LL wn

各評価項目の比重値

E 総合評価点
n 評価項目の数
nE = ∑wk Ek2 =w0E02 + w1E12 + w2E22 +LLL+ wnEn2
k =0

6.4 検証本研究では、動作データの特徴を表すものとして、各評価項目にかかる重み値は、現時点では、ユーザーの主観のみで値を設定している。今回は、扱う動作データの数が十数種類で、結果として評価値はおおよそ 1～10 の範囲に収まった。今後の課題として、重み値を設定する際の具体的な指標の提案、また、その指標を考慮した設定の自動化等が考えられる。この重み値の設定は、様態副詞のファジィ測度においても同じことが言える。

6.5 アニメーションの生成
イベント生成動作データ検索より得た最適な動作フレームから、イベントの生成を行う。イベントとは、動作を行うキャラクタ、動作データ、その動作に関連するアイテムを一つにまとめたオブジェクトであり、このイベントデータを順番に実行することで、アニメーション生成が行われる。
イベント実行
イベント配列イベント追加

イベント

イベント

図 3

イベント

イベント

イベント

イベント配列図

アニメーション生成
イベント配列に格納されたイベントを順番に実行していくことにより、アニメーションを生成する。現時点では、複数のイベントを重ね合わせて実行することは行っていない。イベント間の間隔については、現時点では考慮しておらず、前のイベントが終了すると、すぐに次のイベントが実行される。今後の課題として、イベント間隔や実行順の制御に、4.2 節で述べた時間格を利用することが考えられる。
また、本研究では、複数のイベントをアニメーションとして繋げるために、イベントの開始時のキャラクタの腰の座標系に、前のイベント終了時の腰の座標系を与えている。
しかし、これより連続するのは腰の位置、向きのみで、イベント間の姿勢の繋がりに不自然さが生じる。

7. 実験
7.1 実験環境
本研究では、動作検索システムのプロトタイプシステムを開発した。システムの実装のプログラミング言語としてC++を用いた。今回はデータベースシステムを使用せずプログラム起動時に使用オブジェクトを作成することとした。入力文章は、あらかじめ文章をテキストファイルに記述しておき、起動時に読み込むこととした。実験で使用した動作データ数は 15、使用キャラクタ数は 1 となっている。この動作データのうち、「取る」動作が 4 つある。これらは、それぞれ異なる動作である。

太郎は剣を取る太郎は振り返る

7.2 異なる初期条件に応じた動作の検索結果
同じ「取る」という複数の動作データに対して、同じ入力文でも初期条件の違いに応じて適切な動作データが検索されることを確認した。
結果として、解析フレームの一部の評価項目、検索において候補となった動作データと、それぞれの総合評価点を
表 4、検索結果として出力された動作データを図 4に示す。
例文 太郎は剣を取る。
条件 1 太郎は立った状態とし、剣は床に置いてある。
条件 2 太郎は座った状態とし、剣は床に置いてある。
条件 3 太郎は立った状態とし、剣は机の上にある。
この実験の結果として、各条件においてそれぞれ適切な動作が出力されることを確認できた。
表 4

候補動作データと評価点

候補動作データ
太郎が立った状態で床にある剣を取る
太郎が座った状態で床にある剣を取る
太郎が立った状態で机の上の剣を取る
太郎が座った状態で机の上の剣を取る

総合評価
条件 1 条件 2 条件 3

1.16
2.45
3.29
4.45

2.13
1.27
4.23
3.27

2.31
3.39
0.47
1.60

太郎は剣で斬る
図 5

複数の文章による連続動作に結果

8. 結論
本論文では、オブジェクト指向による動作データの管理手法の提案と、動作フレームを用いた動作データの検索手法の開発を行った。また、自然言語入力による自動アニメーション生成システムの開発を行った。今後の課題として、まず大量の動作データに対する検索システムの精度の検討を行う。次に、検索システムの改良案として、動作データ登録における評価項目の指標を提案する。また、現在は動作データの候補選出は主に動作名の文字列のみを評価しているが、似たような動作でも、名前が異なる場合は候補とはならない。この問題に対して、シソーラスを用いた動作データの候補選出手法が考えられる。また、英語への対応や、動作と動作の間を滑らかに繋ぐように、自動的に補間する処理が挙げられる。

謝辞
本研究の一部は文部科学省・科学研究費（課題番号16200005）による支援を受けた。

（a）条件１
図 4（b）条件２（c）条件３

各条件における動作データの検索結果

7.3 連続動作の生成
例文として 3 行の意味的に繋がる文章を与え、連続した動作が生成されることを確認した。

参考文献
[1]

[2]

例文 1 太郎は剣を取る。
例文 2 太郎は振り返る。
例文 3 太郎は剣で斬る。
条件 太郎は立った状態で、剣は床にあるものとする。

[3]

この実験の結果として、3 行の文に対応して連続した動作が生成されることを確認したが、6.5 節で述べたように、現在は動作と動作の間の補間を行っていないため、結果では動作の繋がりに多少不自然さが見られた。

[6]

[4]
[5]

[7]

Norman I. Badler, “Parameterized Action Representation and Natural Language Instructions for Dy
namic Behavior Modification of Embodied Agents”,

AAAI Spring Symposium, 2000
Bod Coyne, Richard Sproat, “WordsEye”, Proc,ofACM SIGGRAPH 2001.
長尾真, 佐藤理史, 黒橋禎夫, 角田達彦 著,「自然言語処理」, 岩波書店, 1996
チャールズ J. フィルモア-著, 田中春美, 船城道雄訳, 「格文法の定理」, 三省堂, 1975
乾健太郎, 白井清昭, “例文を使って文を解析しよう”,
情報処理学会論文誌, 41(7), pp.763-768, July 2000
国際ファジィ工学研究所-編,「ファジィ思考による知的情報処理」, コンピュータエージ社, 1995
奈良先端科学技術大学院大学自然言語処理学講座,
日本語係り受け解析機「南瓜」, http://cl.aist-nara.
ac.jp/