JP2003058907A - 木構造リンク系のポーズ及び動作を生成する方法 - Google Patents

木構造リンク系のポーズ及び動作を生成する方法

Info

Publication number
JP2003058907A
JP2003058907A JP2001242435A JP2001242435A JP2003058907A JP 2003058907 A JP2003058907 A JP 2003058907A JP 2001242435 A JP2001242435 A JP 2001242435A JP 2001242435 A JP2001242435 A JP 2001242435A JP 2003058907 A JP2003058907 A JP 2003058907A
Authority
JP
Japan
Prior art keywords
tree
motion
link system
generating
joint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001242435A
Other languages
English (en)
Inventor
Yoshihiko Nakamura
仁彦 中村
Katsu Yamane
克 山根
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.)
University of Tokyo NUC
Original Assignee
University of Tokyo NUC
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 University of Tokyo NUC filed Critical University of Tokyo NUC
Priority to JP2001242435A priority Critical patent/JP2003058907A/ja
Priority to US10/212,102 priority patent/US7035436B2/en
Priority to EP02255601A priority patent/EP1288867B1/en
Priority to DE60237184T priority patent/DE60237184D1/de
Priority to CA002397313A priority patent/CA2397313C/en
Priority to CN02128501A priority patent/CN1420453A/zh
Priority to KR10-2002-0047082A priority patent/KR100532832B1/ko
Publication of JP2003058907A publication Critical patent/JP2003058907A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion

Abstract

(57)【要約】 【課題】 人間、動物、ロボット等のモデル化等によっ
て作られた関節で接続された複数のリンクから成る木構
造リンク系のポーズ及び動作を生成する方法を提供す
る。 【解決手段】 任意の数の任意のリンクに拘束条件を与
え、あるいは生成の途中において任意に拘束条件を付加
又は解除することを許すことによって、これらの拘束条
件に従う前記木構造リンク系のポーズ及び動作を生成す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、人間、動物、ロボ
ット等のモデル化等によって作られた、関節で接続され
た複数のリンクから成る木構造リンク系のポーズ及び動
作を生成する方法に関する。
【0002】
【従来の技術】コンピュータグラフィックスのアニメー
ション、映画制作、ゲームなどに登場する人間や動物な
どの動作を表すデータや、ヒューマノイドなど多くの関
節を持つロボットの動作を表すデータを生成する従来の
技術は、 [1]Choi, K.J and Ko, H.S. : "Online Motion Reta
rgetting," the Journalof Visualization and Compute
r Animation, vol. 11, pp. 223-235, 2000. [2]Gleicher, M. and Litwinowicz, P. : "Constrai
nt-based Motion Adaptation," the Journal of Visual
ization and Computer Animation, vol. 9, pp.65-94,
1998. [3]Lee, J. and Shin, S. Y. : "A Hierarchical Ap
proach to InteractiveMotion Editing for Human-like
Figures, "Proceedings of SIGGRAPH '99, pp.39-48,
1999. などの論文において発表されている。これらはいずれ
も、予め得られたモーションキャプチャデータをリンク
長さなどが異なるさまざまな人間型の木構造リンク系に
当てはめたり、運動の特徴を保存したまま新しい運動を
作り出したりすることを目的として、最適化計算によっ
て足が地面に対して滑らないなどの拘束条件を満足する
運動を計算する技術である。
【0003】上記参考文献[1]に記載の技術では、末
端リンクの位置を固定しながら各関節角がそれぞれ与え
られた目標値にできるだけ近くなる運動を計算してい
る。文献[2]に記載の技術では、拘束条件が運動全体
にわたって滑らかになるように、大域的な最適化を行っ
て拘束条件を満たす運動を計算している。文献[3]に
記載の技術では、拘束条件を階層的なスプライン関数で
表現することによって、拘束条件を満足したまま体の一
部の姿勢を変更することを可能にしている。最適化計算
は文献[2]の技術と同様に運動全体に行っている。
【0004】
【発明が解決しようとする課題】上記文献[1]、
[2]及び[3]の技術に関して、モーションキャプチ
ャデータなどの参照運動が必要である。従来に比べると
モーションキャプチャに要するコストも低減され、キャ
プチャデータのライブラリも市販されるようになってき
ているが、ライブラリに含まれていない動作が必要にな
るたびに新しい動作をキャプチャしなければならず、さ
らに同じライブラリから作られた動作は類似したものに
なりがちであり、自分の好みに合わせて動作を修正する
には多大な時間と努力が必要になるといった欠点があっ
た。
【0005】上記文献[2]及び[3]の技術に関し
て、大域的な最適化計算を行っているため、入力が逐次
入ってくるようなリアルタイムの、あるいはインタラク
ティブな運動生成には適用できないという欠点があっ
た。
【0006】上記文献[1]の技術に関して、末端リン
ク以外のリンクに拘束条件を付加すると、計算結果が発
散してしまうことがあるという欠点があった。また、多
数のリンクを固定しようとすると解が得られないことが
あるという欠点があった。
【0007】市販のコンピュータグラフィックスソフト
ウェアには、アニメーション制作のためにリンク構造体
の先端リンクの位置を指定するためのインタフェースが
備えられているが、これらでは腕や脚など木構造リンク
系の1本の枝に相当する部分リンク列の関節角を計算す
るだけで、木構造リンク系全体のポーズを変化させるこ
とができないため、自然なポーズ作成が困難であるとい
う欠点があった。
【0008】固定するリンクとしては、従来はリンク列
の先端リンクしか指定できなかった。これは、固定され
る複数のリンク間に少数の関節しかない場合にはそれぞ
れの拘束の間に矛盾が生じ、数値計算に破綻をきたすた
めである。
【0009】球面関節の可動範囲は、従来の技術では考
慮されていなかった。
【0010】本発明は、モーションキャプチャデータな
ど既存の運動データがなくても、例えば多数の関節及び
多数(例えば20以上)の自由度を持つヒューマンフィ
ギュアに対して、1個又は複数のリンクの軌道を指示す
るという簡単な操作で人間らしい全身運動をリアルタイ
ムに生成することができるようにするために、あるいは
モーションキャプチャデータ等の運動データがある場合
には、上記の操作でそれらの修正や再利用を可能にする
ために、上記従来の技術の欠点を克服した木構造リンク
系のポーズ及び動作を生成する方法を提供することを目
的とする。
【0011】
【課題を解決するための手段】請求項1に記載の第1発
明は、任意の数の任意のリンクに任意の数の拘束条件を
与え、あるいは生成の途中において任意に拘束条件を付
加又は解除することを許すことによって、これらの拘束
条件に従う前記木構造リンク系のポーズ及び動作を生成
することを特徴とする。
【0012】請求項2に記載の第2発明は、前記拘束条
件が前記リンクの位置及び姿勢と、これらが変化する速
度及び角速度とを含むことを特徴とする。
【0013】請求項3に記載の第3発明は、前記拘束条
件が、関節が指定された運動範囲を超えないようにする
ことを含むことを特徴とする。
【0014】請求項4に記載の第4発明は、前記関節が
3自由度の球面関節を含み、その運動範囲を直感的に表
現する方法を用いて球体関節が運動範囲を超えないよう
にすることを特徴とする。
【0015】請求項5に記載の第5発明は、前記拘束条
件が、全部又は一部の自由度の関数値及び関節速度が与
えられた目標関節値及び目標関節速度にできるだけ近く
なることを含むことを特徴とする。
【0016】請求項6に記載の第6発明は、それぞれの
拘束条件に対して理想状態との誤差に応じた復元力を考
えることにより拘束条件を実現することを特徴とする。
【0017】請求項7に記載の第7発明は、前記拘束条
件に優先順位を設定することを特徴とする。
【0018】請求項8に記載の第8発明は、前記拘束条
件に従う前記木構造リンク系のポーズ及び動作を生成す
る際に逆運動学計算を使用し、前記逆運動学計算の解に
前記拘束条件の優先順位によって厳密さの要求と厳密さ
の緩和を許可し、前記解の特異点問題を解決するために
特異点低感度運動分解法を用いることを特徴とする。
【0019】請求項9に記載の第9発明は、前記木構造
リンク系が既存の運動データを有する場合に、運動する
リンクへの前記拘束条件の付加及び解除を運動中の操作
によって行えることを特徴とする。
【0020】
【発明の効果】上記本発明によれば、モーションキャプ
チャデータ等の運動データを前提とはせず、計算のみに
よって運動を生成することができ、既存の運動データの
加工にも利用することができ、運動全体にわたる最適化
を行わないため、リアルタイムで入力を受付ながら運動
を生成することができ、リンクの軌道を指定することに
より、例えばものをある位置から別の位置へ動かすよう
な運動が容易に実現できる。
【0021】第2発明によれば、固定リンクを設定する
ことにより、接触等により環境から拘束を受けている場
合等の運動の生成が容易になる。
【0022】第3発明および第4発明によれば、関節可
動範囲を設定することにより、人間、動物、ロボット等
としてありえない姿勢になるのを防ぐことができる。ま
た、体の硬さ、柔らかさを調節することができる。
【0023】第5発明によれば、ある既存の運動を少し
変化させた運動や、周期運動の生成が容易になる。
【0024】第6発明によれば、さまざまな拘束を局所
的な情報だけで実現することができるようになり、リア
ルタイム・インタラクティブな運動の生成が可能にな
る。
【0025】第7発明および第8発明によれば、拘束条
件は任意の位置に、任意の数だけ設定可能で、それらが
矛盾する場合でも予め設定された優先度に応じて妥当な
運動を計算することができる。
【0026】第9発明によれば、すでに運動データが存
在する場合は、それを元にして同様な操作で新たな運動
を作り出すことができる。
【0027】利用分野としては、コンピュータグラフィ
ックスのアニメーション、映画制作、ゲーム、ヒューマ
ノイドの動作生成などが考えられる。いずれの分野にお
いても単独のソフトウェアとして利用するほかに、なん
らかのグラフィカルインタフェースを付加したソフトウ
ェアの計算エンジンや、既存のコンピュータグラフィッ
クスソフトウェアのプラグインとしての利用が可能であ
る。
【0028】歩行運動などの周期運動では、1周期ごと
に同じ姿勢になることが重要である。この点も目標関節
値の導入により実現されている。目標関節値を設定する
ことにより、拘束を与えたリンクの運動軌道が周期的で
あれば、全身の運動も周期的になる。
【0029】以上の効果を総合すると、従来は訓練を受
けたプロのアニメータが多くの時間と労力をかけて制作
したり、高価な機材を使って実際の人間や動物の運動か
らキャプチャしたりすることによってしか得られなかっ
た人間、動物、ロボット等の木構造リンク系モデルの自
然な全身運動を、誰でも簡単な操作で作成することがで
きるようになる。また、リアルタイムでの運動生成が可
能であることから、ゲームなど高いインタラクティブ性
を要求される分野でも、状況に応じて多様な運動を生成
するための計算エンジンとして利用することができる。
【0030】ロボティクス分野では、ヒューマノイドな
ど多くの関節を持つロボットの操作を行うための直感的
なインタフェースとして応用できる効果がある。このよ
うなロボットは操作すべき変数が多いため、インタラク
ティブな操作を行うためのインタフェースとしては歩く
方向を指示するなど、これまで限られたものしか実現さ
れていない。本発明により、幅広い場面で多様な運動を
ロボットに指示できるようになる。
【0031】また、上記本発明による木構造リンク系の
ポーズ及び動作を生成する方法によって複数のキーフレ
ームを生成することができる。このため、本発明はキー
フレームアニメーションなど前記キーフレーム間の補間
演算によって前記木構造リンク系の一連の動作を生成す
る方法にも関する。
【0032】
【発明の実施の形態】図1は、本発明による木構造リン
ク系のポーズ及び動作を生成する方法を適用することが
できるモデルの一例を示す図である。この人間型木構造
リンク系モデルは、例えば、コンピュータグラフィック
内に登場する人物であり、又は、ヒューマノイドなど多
くの関節を持つロボットの操作を行うための直感的なイ
ンタフェースに使用されるモデルである。このモデルで
は、複数のリンクが、複数の3自由度の球面関節と、複
数の1自由度の回転関節とで接続されている。
【0033】本発明による動作データ生成方法を実行す
るシステムは、例えば、計算機上で実行する独立したソ
フトウェアまたは他のソフトウェアから呼び出される計
算エンジン、プラグインとして実装することができる。
図2は、本発明による動作データ生成方法のフローチャ
ートである。この図には各入出力、操作を外部から行う
ためのインタフェースの例も参考として含めたが、本発
明の範囲は太線で囲まれた部分である。
【0034】本発明による動作データ生成方法を実行す
るシステムは、一般解・零空間計算部3、目標関数速度
計算部4、最適化計算部5及び積分部6を具える。
【0035】外部インタフェースであるマウスのクリッ
ク等(14,15)により、表示装置(図示せず)に表
示された木構造リンク系において軌道を指定したいリン
クと、空間中に固定したいリンクとを選択し、軌道指定
リンク選択データ11及び固定リンク選択データ12を
入力する。これらのリンクは以降のデータのリアルタイ
ム生成中に変更することも可能である。軌道指定リンク
選択データ11を、一般解・零空間計算部3に入力す
る。次に、軌道を指定したいリンクとして選択されたリ
ンクの軌道データ(2)を、外部インタフェースである
マウスやジョイスティックの動きなど(1)により、一
般解・零空間計算部3に入力する。一般解・零空間計算
部3は、軌道を指定したリンクが与えられた軌道上を動
くような関節速度の一般解と、そのリンクの軌道に影響
を与えないで関節速度を変化させることのできる空間
(零空間)とを計算し、関節速度の一般解の計算結果を
目標関節速度計算部4に、零空間の計算結果を最適化計
算部5に供給する。
【0036】目標関節速度計算部4に、固定リンク選択
データ12も入力する。さらに、既存の運動データ等
(13)から、位置を固定するリンクの位置データ(固
定位置データ8)を、例えば既存の運動データにおける
リンク位置など(13)を使用して入力する。さらに、
各関節の目標値である関節目標データ9を入力する。こ
のデータとして、例えば既存の運動データにおける関節
値(13)を使用してもよい。さらに、各関節の可動範
囲を入力する。上記データを受けた目標関節速度計算部
4は、現在の位置固定リンクの位置と関節角から、理想
状態との誤差を計算し、それをフィードバックする目標
関節速度を計算し、その結果を最適化計算部5に入力す
る。
【0037】前記目標関節速度の計算結果を受けた最適
化計算部5は、一般解・零空間計算部3において計算さ
れた零空間の中で、目標関節速度計算部4で計算された
目標関節速度にできるだけ近い最適な関節速度を計算
し、その結果を積分部6に供給する。
【0038】積分部6は、得られた関節速度を積分し、
関節値のデータを得る。関節値の時系列データとリンク
位置の時系列データを含む運動データを出力データとし
て、例えば、外部のファイル16への保存、又は、画面
17へのグラフィックス表示のために出力する。
【0039】実際の運動生成の手順は以下のようにな
る。空間中の位置を固定したいリンク(a,b,c)を
すべて選ぶ。軌道をリアルタイムに指定したいリンク
(p)を選ぶ。必要ならば関節可動範囲を適宜設定す
る。すでに運動が与えられている場合にはそれを再生し
ながら、軌道を指定するリンクpに対して与える軌道を
適当なインタフェースによって入力する。なお、このと
き空間中の位置を固定したいリンクa、b、cに対して
は元の運動における各時刻の位置を固定位置として与
え、関節目標値としては元の運動における各時刻の関節
値を与える。
【0040】このとき生成される運動は、任意数個のリ
ンクを空間中の指示された位置に固定する(指定位置が
時間変化する場合を含む)、関節角をなるべく目標値に
近い値にする(目標値が時間変化する場合も含む)、関
節が可動範囲を逸脱しない、など複数の拘束すべてまた
は一部を満足するものとする。ただし、拘束条件はこれ
ら3種類に制限されるわけではなく、同様の形式で表現
できる拘束条件であればいくつでも組み込むことができ
る。
【0041】次に、本発明のより具体的な実施形態につ
いて説明する。本発明を利用した運動生成ソフトウェア
では、ユーザは適宜軌道を与えるリンクと位置を固定す
るリンクとを選択し、それぞれ軌道と位置とを与える
と、目標関節値や関節可動範囲を考慮した最適な運動が
時々刻々計算される。図3は、このような運動生成ソフ
トウェアにおけるインタフェースの例を説明する図であ
る。このようなインタフェースをピン/ドラックインタ
フェースと呼ぶ。このインタフェースの基本的な機能
は、a、b、c及びpで示すリンクのうちいくつかを空
間中に固定(ピン止め)したまま別のリンクをユーザの
指示(ドラッグ)通りに動かすというものである。
【0042】上記ピン/ドラッグによる動作生成が目標
とするのは以下のような動作の生成である。 (1)ドラックリンクが指定された軌道上を動く。 (2)ピン止めリンクが指示された位置に固定される。 (3)各関節が可動範囲を逸脱しない。 (4)各関節値が与えられた目標値になるべく近づく。 これは多数の拘束条件が加わった逆運動学計算にあた
り、解析的に解くのは明らかに非現実的である。また、
各拘束条件間の矛盾のため、厳密解が存在しないことも
十分考えられる。例えば、ピン止めされた位置で決まる
可動範囲の外にリンクがドラッグされると、条件
(1)、(2)を同時に満足する解は存在しない。
【0043】本発明による方法の一実施形態において
は、まず逆運動学問代においてはヤコビアンを用いた数
値解法を適用する。さらに拘束条件間の矛盾に対応する
ため4つの拘束条件を2段階の優先順位に分けて考え
る。上述した2つの拘束条件のうち、ドラッグリンクに
関する拘束条件(1)に上位の優先順位を与え、(1)
に影響を与えない零空間の中で他の3つの拘束条件をで
きるだけ満足する解を探す。したがって、拘束条件
(1)と他の拘束条件の間に矛盾がある場合には(1)
を優先し、他を無視する。
【0044】拘束条件(2)〜(4)の間に矛盾がある
場合、すなわち(1)の零空間の中で最適解を探すとき
にランク落ちした行列が現れた場合に対処するため、特
異点付近でも誤差を許すことによって極端に大きな解を
出さない特異点低感度運動分解行列(SR−inver
se)(詳細には、中村、花房による論文「関節形ロボ
ットアームの特異点低感度運動分解」計測自動制御学会
論文集、453〜459ページ、1984年を参照され
たい)を用いる。これによって任意の数のピン、可動範
囲および目標値を与えることができ、これらの間に矛盾
がある場合には予め与えられた重みに応じて誤差が配分
されるため不自然な動作は出力されない。また、矛盾が
解消されたときには拘束条件を満足する姿勢に復帰する
ように、SR−inverseを用いることによって発
生する誤差をフィードバックするコントローラを組み込
む。
【0045】木構造リンク系の関節値に関するリンクi
の位置のヤコビアンは以下のように定義される。
【数1】 ここでrはリンクiの位置、θは木構造リンク系の関
節値を並べたベクトル、Jがθに関するリンクiの位
置のヤコビアンである。このヤコビアンを効率的に計算
する方法については、例えば、D.E.オリンおよび
W.W.シュレイダーによる論文「ロボットマニピュレ
ータに関するヤコビアンの効率的な計算(Efficient Co
mputation of the Jacobian for Robot Manipulator
s)」インターナショナルジャーナルオブロボティクス
リサーチ、vol.3、No.4、66〜75ページ、
1987年を参照されたい。ヤコビアンを用いて、リン
クiの速度と関節速度の関係は以下のように表される。
【数2】 人間、動物、ロボット等の木構造リンク系の各リンクに
番号を付けて呼ぶが、その基準になるリンクをルート・
リンクという。ルート・リンクが慣性座標系に固定され
ていないとき、その並進速度および角速度も
【外1】 に含まれている。Jが正方正則であれば、
【数3】 によってリンクiの速度から関節速度を求めることがで
きる。しかし、人間、動物、ロボット等の木構造リンク
系は通常30以上の自由度を持つため、Jが正方でな
く冗長性を持つ。このとき式(2)の一般解は擬似逆行
【外2】 をもちいて、
【数4】 と表される。ここでEは単位行列、yは任意のベクトル
である。式(4)右辺第2項が冗長性による零空間を表
し、これを用いてリンクiの速度を変えずに他の拘束条
件を満足する解を探すことができる。
【0046】以下に、本発明による方法の一実施形態に
おける動作の生成のための計算について説明する。ま
ず、ドラッグリンクを指定された位置に動かすことがで
きる関節速度の一般解を求める。ドラッグリンクが指示
された軌道の位置
【外3】 に追従するような〔外1〕の一般解を求める。rをド
ラッグされるリンクの現在位置とすると、フィードバッ
クを考慮した目標速度は次式で計算される。
【数5】 ここでKは正定値のゲイン行列である。
【外4】 の関係は、ドラッグされるリンク位置の関節値に関する
ヤコビアンJを用いて、
【数6】 と表される。目標速度
【外5】 を実現する関節速度〔数1〕の一般解は次式で計算され
る。
【数7】 ここでフィードバック制御を行っているのは積分誤差を
補償するためである。また通常の擬似逆行列の代わりに
重み付き擬似逆行列を用いると、各関節の「硬さ」、つ
まり動き易さや動き難さを調節することができる。
【0047】その他の拘束についての計算を説明する。
式(7)を、
【数8】 と書き換える。ここで
【外6】 である。ピン止めされたリンクがN個あり、それらの
位置がrFi(i=1,...,N)で表されている
とする。また目標関数値が与えられた関節がN個あ
り、それらの目標関節値がθで表されているとする。
個の関節が可動範囲を超え、それらの関節値がθ
で表されているとする。Nは動作中いつでも変化しう
る。これらを用いて、ベクトルpauxを以下のように
定義する。
【数9】
【外7】 と関節速度〔外1〕の間には式(2)と同様に以下のよ
うな関係がある。
【数10】 auxの計算については後述する。任意ベクトルyは
以下のように計算する。まずpauxの目標速度
【外8】 を後述する方法で計算する。式(8)を式(10)に代
入すると、
【数11】 が得られる。ここで、
【外9】 である。
【外10】 を用いて以下の簡単な形の式に変形する。
【数12】 Sはフルランクであるとは限らないので、この方程式を
解くためにSR−inverseを用いる。SのSR−
inverseをSと表すと、yは次式のように計算
できる。
【数13】 関節速度
【外1】はこれを式(8)に代入して得られ、さらにそ
れを積分すると各フレームの関節角データが得られる。
【0048】上述したJauxの計算について説明す
る。rFiの関節値に関するヤコビアンをJFi(i=
1,...,N)で表すと、ピン止めされたすべての
リンクに対して
【数14】 が成り立つ。目標関節値が与えられた関節について、そ
の速度
【外11】 の関係は次式のように表される。
【数15】 ここでJはθの第i番目の関節がθの第j番目の関
節に対応するとき、第(i,j)要素が1、それ以外の
とき0になるような行列である。同様に、
【外12】 の速度との関係は、
【数16】 と表される。ここでJはθの第i番目の関節がθの
第j番目の関節に対応するとき第(i,j)要素が1、
それ以外のときに0になるような行列である。以上の行
列をまとめて、Jauxは次のような形になる。
【数17】 Fi、J、Jの球面関節に対応する部分について
は後述する。
【0049】上述した
【外13】 の計算について説明する。ピン止めされたリンクの目標
速度
【外14】 は次式で計算される。
【数18】 ここでrFi refはピンの位置、KFiは正定値のゲ
イン行列である。目標関節値が与えられた関節の目標速
【外15】は、
【数19】 と計算される。ここでθ refは目標関節値を並べた
ベクトル、Kは正定値のゲイン行列である。可動範囲
を超えた関節の目標速度は次のように計算する。
【数20】 ここでθLi maxとθLi minはそれぞれ関節角の
最大値と最小値を表し、KLiは正のゲインである。式
(19)および(20)は1自由度関節にのみ適用でき
る。以下に球面関節の取り扱いについて述べる。
【0050】まず、球面関節の目標関節値について説明
する。球面関節の関節値Rと関節速度ωは、それぞ
れ親リンク座標系で表された3×3の回転行列とその角
速度で定義する。球面関節に対して目標関節値RDi
3×3が与えられると、目標速度は以下のようにして
得られる。まず現在の関節値Rと目標の関節値R
の間の誤差ベクトルeを、
【数21】 によって計算する。ここでΔR(m,n)はΔR
第(m,n)要素を示す。次に、目標角速度ω
Di を、
【数22】 によって計算する。ここで、KDiは正定値のゲイン行
列である。球面関節に対しては、式(21)−式(2
3)が式(19)の代わりに用いられる。球面関節に対
応してJFi、J、Jの一部となるヤコビアンは、
3列からなり、それぞれの列がx、y、zの周りの回転
に対応する。各列はそれぞれ対応する方向を軸とする回
転関節と同様に計算できる。
【0051】次に、球面関節の関節可動範囲について説
明する。球面関節は3つの自由度を持つので、その可動
範囲は3次元空間中の領域として表現される。姿勢の表
現にはさまざまな方法があり、適切な方法を選択するこ
とが計算速度の向上に重要である。例えば、よく使われ
るオイラー角を姿勢表現に用いると、非線形性のために
可動範囲が非常に複雑な形状となり、結果的に計算速度
は落ちてしまう。ここでは球面関節の可動範囲を直感的
に理解しやすく表現する方法について述べる。図4に示
すように、リンクの方向を表す2つのパラメータと、ひ
ねり角を表す1つのパラメータを合わせた計3個のパラ
メータを用いて球面関節可動範囲を表現する。Rが単
位行列のときのリンクの方向を単位ベクトルd で表
す。実際のリンクの方向dは図5のようにd をd
に鉛直な平面に含まれるベクトルaの周りに回転
することで得られる。aの長さは回転角をγとおい
たときsin(γ/2)とする。ひねり角αは、R
が単位行列の状態からaの周りに回転して得られるフ
レームをRと一致させるために必要な回転角として定
義される。以上から、球面関節が取り得るすべての姿勢
はd を軸とする半径1、高さ2πの円柱状に含まれ
ることになる。本実施形態においては、すべての球面関
節に対してd =(100)とし、したがってa
はyz面内に含まれる。すなわちa=(0a
と表される。したがって、可動範囲は図6のように
(a,a,α)空間中のα軸に平行な軸を持つ柱状
の形になる。a,a,αは次のように計算する。d
=(100)より、
【数23】 である。よってa,aは、
【数24】 と求められる。a周りの回転を行った後の座標系とR
のx軸は一致しているので、ひねり角αはそれらのy
軸とz軸のなす角から求められる。式(25)と式(2
6)はγ=±πのとき特異点となるが、通常は可動範
囲の外にあるので実際は問題にならない。
【0052】ある姿勢に対応する3つのパラメータが求
まったら、次にそれが可動範囲内にあるかどうかを判定
する。図6のような可動範囲を柱状多面体として表すこ
とで効率的に計算できる。本実施形態においては、a
−a平面内の可動範囲を三角形の集合で、ひねり角α
の可動範囲を三角形の各頂点における上限値および下限
値でそれぞれ表す。このような形状に対して、可動範囲
内外の判定は以下のように行う。まず、(a,a
0)が含まれる三角形を探し、見つからなければ可動範
囲外である。見つかった場合は、さらに(a,a
α)が上下限内にあるかどうかを調べる。可動範囲外で
あることがわかったら、それを可動範囲内に戻すための
目標関節速度〔外7〕を計算する。そのため、各球面関
節に対して基準姿勢Rsiを予め与えておき、Rsi
向かうための目標角速度ωLiを計算する。これはR
siを式(22)のRDiへ、ωLiを式(23)のω
Diへそれぞれ代入することによって行う。
【0053】ここまで説明した実施形態では、ピンの位
置や目標関節値が時間変化しないと仮定していた。しか
し、それらの時間変化を含むように拡張するのは以下に
説明するように容易である。これによってモーションキ
ャプチャなど他の手段で得られた動作をリアルタイムで
編集し、新たな動作を生成することができる。拡張に必
要なのは以下の2つである。 ・参照運動におけるピンの位置rFi ref、速度
【外16】 を順運動学計算によって求め、式(18)の代わりに次
式を用いる。
【数25】 ・目標関節値と目標関節速度
【外17】 として参照運動における関節値と関節速度を使い、式
(19)の代わりに次式を用いる。
【数26】
【図面の簡単な説明】
【図1】 本発明による動作データ生成方法によって動
作データを生成するヒューマンフィギュアの一例を示す
図である。
【図2】 本発明による動作データ生成方法を実現する
プログラムのフローチャートである。
【図3】 本発明による動作データ生成方法をヒューマ
ンフィギュアに適用している様子を説明する図である。
【図4】 球面関節の関節可動範囲を示す図である。
【図5】 球面関節のリンクパラメータを図式的に示す
図である。
【図6】 (a,a,α)空間に投影した球体関節
の可動範囲を示す図である。
【符号の説明】
1、14、15 外部インタフェース 2 軌道データ 3 一般解・零空間計算部 4 目標関節速度計算部 5 最適化計算部 6 積分部 7 運動データ 8 固定位置データ 9 関節位置データ 10 可動範囲データ 11 軌道指定リンク選択データ 12 固定リンク選択データ 13 既存の運動データ 16 ファイル 17 画面表示

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 人間、動物、ロボット等のモデル化等に
    よって作られた、関節で接続された複数のリンクから成
    る木構造リンク系のポーズ及び動作を生成する方法にお
    いて、任意の数の任意のリンクに任意の数の拘束条件を
    与え、あるいは生成の途中において任意に拘束条件を付
    加又は解除することを許すことによって、これらの拘束
    条件に従う前記木構造リンク系のポーズ及び動作を生成
    することを特徴とする方法。
  2. 【請求項2】 請求項1に記載の木構造リンク系のポー
    ズ及び動作を生成する方法において、前記拘束条件が前
    記リンクの位置及び姿勢と、これらが変化する速度と角
    速度とを含むことを特徴とする木構造リンク系のポーズ
    及び動作を生成する方法。
  3. 【請求項3】 請求項1又は2に記載の木構造リンク系
    のポーズ及び動作を生成する方法において、前記拘束条
    件が、全部又は一部の関節が指定された前記運動範囲を
    超えないようにすることを含むことを特徴とする木構造
    リンク系のポーズ及び動作を生成する方法。
  4. 【請求項4】 請求項3に記載の木構造リンク系のポー
    ズ及び動作を生成する方法において、前記関節が3自由
    度の球面関節を含み、その運動範囲を直感的に表現する
    方法を用いて球面関節が運動範囲を超えないようにする
    ことを特徴とする木構造リンク系のポーズ及び動作を生
    成する方法。
  5. 【請求項5】 請求項1、2、3又は4に記載の木構造
    リンク系のポーズ及び動作を生成する方法において、前
    記拘束条件が、全部又は一部の自由度の関数値及び関節
    速度が与えられた目標関節値及び目標関節速度にできる
    だけ近くなることを含むことを特徴とする木構造リンク
    系のポーズ及び動作を生成する方法。
  6. 【請求項6】 請求項1、2、3、4又は5に記載の木
    構造リンク系のポーズ及び動作を生成する方法におい
    て、それぞれの拘束条件に対して理想状態との誤差に応
    じた復元力を考えることにより拘束条件を実現すること
    を特徴とする木構造リンク系のポーズ及び動作を生成す
    る方法。
  7. 【請求項7】 請求項1、2、3、4、5又は6に記載
    の木構造リンク系のポーズ及び動作を生成する方法にお
    いて、前記拘束条件に優先順位を設定することを特徴と
    する木構造リンク系のポーズ及び動作を生成する方法。
  8. 【請求項8】 請求項7に記載の木構造リンク系のポー
    ズ及び動作を生成する方法において、前記拘束条件に従
    う前記木構造リンク系のポーズ及び動作を生成する際に
    逆運動学計算を使用し、前記逆運動学計算の解に前記拘
    束条件の優先順位によって厳密さの要求と厳密さの緩和
    を許可し、前記解の特異点問題を解決するために特異点
    低感度運動分解法を用いることを特徴とする木構造リン
    ク系のポーズ及び動作を生成する方法。
  9. 【請求項9】 請求項1ないし8のいずれか1項に記載
    の木構造リンク系のポーズ及び動作を生成する方法にお
    いて、前記木構造リンク系が既存の運動データを有する
    場合に、運動するリンクへの前記拘束条件の付加及び解
    除を運動中の操作によって行えることを特徴とする木構
    造リンク系のポーズ及び動作を生成する方法。
  10. 【請求項10】 請求項1ないし9のいずれか1項に記
    載の木構造リンク系のポーズ及び動作を生成する方法に
    よって複数のキーフレームを生成し、前記キーフレーム
    間の補間演算によって前記木構造リンク系の一連の動作
    を生成する方法。
JP2001242435A 2001-08-09 2001-08-09 木構造リンク系のポーズ及び動作を生成する方法 Pending JP2003058907A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2001242435A JP2003058907A (ja) 2001-08-09 2001-08-09 木構造リンク系のポーズ及び動作を生成する方法
US10/212,102 US7035436B2 (en) 2001-08-09 2002-08-06 Method of generating poses and motions of a tree structure link system
EP02255601A EP1288867B1 (en) 2001-08-09 2002-08-09 Method for generating motion
DE60237184T DE60237184D1 (de) 2001-08-09 2002-08-09 Verfahren zur Erzeugung von Bewegungen
CA002397313A CA2397313C (en) 2001-08-09 2002-08-09 Method of generating poses and motions of a tree structure link system
CN02128501A CN1420453A (zh) 2001-08-09 2002-08-09 树状结构链接系统的姿态和动作的产生方法
KR10-2002-0047082A KR100532832B1 (ko) 2001-08-09 2002-08-09 트리구조 링크계의 자세 및 동작을 생성하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001242435A JP2003058907A (ja) 2001-08-09 2001-08-09 木構造リンク系のポーズ及び動作を生成する方法

Publications (1)

Publication Number Publication Date
JP2003058907A true JP2003058907A (ja) 2003-02-28

Family

ID=19072705

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001242435A Pending JP2003058907A (ja) 2001-08-09 2001-08-09 木構造リンク系のポーズ及び動作を生成する方法

Country Status (7)

Country Link
US (1) US7035436B2 (ja)
EP (1) EP1288867B1 (ja)
JP (1) JP2003058907A (ja)
KR (1) KR100532832B1 (ja)
CN (1) CN1420453A (ja)
CA (1) CA2397313C (ja)
DE (1) DE60237184D1 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007260792A (ja) * 2006-03-27 2007-10-11 Fujitsu Ltd 機能モジュールの拘束条件を適用したロボットシステム及びその制御方法
JP2007315968A (ja) * 2006-05-26 2007-12-06 Univ Of Tokyo モーションキャプチャを用いた運動学パラメータの推定法及び装置
JP2009512563A (ja) * 2005-10-19 2009-03-26 コリア インスティテュート オブ サイエンス アンド テクノロジー 人間型ロボットの歩行制御方法
JP2009214268A (ja) * 2008-03-12 2009-09-24 Toyota Motor Corp 全身協調装置、ロボット及びロボットの制御方法
JP2010149275A (ja) * 2008-12-18 2010-07-08 Gm Global Technology Operations Inc 多優先作動空間インピーダンス制御
WO2011016362A1 (ja) * 2009-08-07 2011-02-10 株式会社コナミデジタルエンタテインメント 画像生成装置、画像生成方法、情報記録媒体、ならびに、プログラム
US8055383B2 (en) 2005-05-13 2011-11-08 Toyota Jidosha Kabushiki Kaisha Path planning device
JP2013020446A (ja) * 2011-07-11 2013-01-31 Celsys:Kk マルチポインティングデバイスの制御方法及びプログラム
JP2014534619A (ja) * 2011-10-07 2014-12-18 カール・ツァイス・エスエムティー・ゲーエムベーハー リソグラフィシステムの光学素子の動きの制御方法
JP2015089584A (ja) * 2013-11-05 2015-05-11 トヨタ自動車株式会社 ロボットの制御方法及びロボットシステム
JP2021111380A (ja) * 2020-01-03 2021-08-02 ネイバー コーポレーションNAVER Corporation 入力映像に含まれた客体の3次元ポーズの推定のためのデータを生成する方法、コンピュータシステムおよび推論モデルを構築する方法

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7136528B2 (en) * 2000-02-11 2006-11-14 Sony Corporation System and method for editing digital images
US7262778B1 (en) 2000-02-11 2007-08-28 Sony Corporation Automatic color adjustment of a template design
US20020073143A1 (en) * 2000-08-31 2002-06-13 Edwards Eric D. File archive and media transfer system with user notification
JP2002319036A (ja) * 2001-02-13 2002-10-31 Sega Corp アニメーション生成プログラム
AU2006225115B2 (en) 2005-03-16 2011-10-06 Lucasfilm Entertainment Company Ltd. Three- dimensional motion capture
US7437931B2 (en) * 2006-07-24 2008-10-21 Honeywell International Inc. Medical application for no-motion sensor
US20080016962A1 (en) * 2006-07-24 2008-01-24 Honeywell International Inc, Medical use angular rate sensor
US8130225B2 (en) * 2007-01-16 2012-03-06 Lucasfilm Entertainment Company Ltd. Using animation libraries for object identification
US8542236B2 (en) * 2007-01-16 2013-09-24 Lucasfilm Entertainment Company Ltd. Generating animation libraries
US8199152B2 (en) * 2007-01-16 2012-06-12 Lucasfilm Entertainment Company Ltd. Combining multiple session content for animation libraries
FR2917866B1 (fr) * 2007-06-20 2009-09-04 Inst Nat Rech Inf Automat Dispositif informatique pour la simulation d'un ensemble d'objets en interaction et procede correspondant
US8144153B1 (en) 2007-11-20 2012-03-27 Lucasfilm Entertainment Company Ltd. Model production for animation libraries
US8373704B1 (en) * 2008-08-25 2013-02-12 Adobe Systems Incorporated Systems and methods for facilitating object movement using object component relationship markers
US8683429B2 (en) 2008-08-25 2014-03-25 Adobe Systems Incorporated Systems and methods for runtime control of hierarchical objects
US9142024B2 (en) 2008-12-31 2015-09-22 Lucasfilm Entertainment Company Ltd. Visual and physical motion sensing for three-dimensional motion capture
US8520946B2 (en) * 2009-06-26 2013-08-27 Intel Corporation Human pose estimation in visual computing
US8963829B2 (en) 2009-10-07 2015-02-24 Microsoft Corporation Methods and systems for determining and tracking extremities of a target
US8867820B2 (en) 2009-10-07 2014-10-21 Microsoft Corporation Systems and methods for removing a background of an image
US8564534B2 (en) 2009-10-07 2013-10-22 Microsoft Corporation Human tracking system
US7961910B2 (en) * 2009-10-07 2011-06-14 Microsoft Corporation Systems and methods for tracking a model
TWI434227B (zh) * 2009-12-29 2014-04-11 Ind Tech Res Inst 動畫產生系統及方法
US9162720B2 (en) * 2010-12-03 2015-10-20 Disney Enterprises, Inc. Robot action based on human demonstration
WO2013074926A1 (en) 2011-11-18 2013-05-23 Lucasfilm Entertainment Company Ltd. Path and speed based character control
US9449416B2 (en) 2012-02-29 2016-09-20 Zynga Inc. Animation processing of linked object parts
KR101572042B1 (ko) * 2014-03-19 2015-11-25 (주)로보티즈 로봇 모션을 편집 및 재생하기 위한 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
US9959655B2 (en) * 2015-04-17 2018-05-01 Autodesk, Inc. Segmented full body inverse kinematics
US10366499B2 (en) 2016-09-23 2019-07-30 Robotis Co., Ltd. Device, method, and computer-readable recording medium for editing and playing robot motion
CN112975965B (zh) * 2021-02-24 2022-07-29 深圳市优必选科技股份有限公司 仿人机器人的解耦控制方法、装置和仿人机器人
CN114818305B (zh) * 2022-04-20 2023-06-16 国网江苏省电力有限公司南通供电分公司 一种通用的刚体部件传动仿真方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144385A (en) * 1994-08-25 2000-11-07 Michael J. Girard Step-driven character animation derived from animation data without footstep information
NL1000679C2 (nl) * 1995-06-28 1996-12-31 Arie Van Wieringen Video Film Bewegingseditor/samensteleenheid.
AU7662396A (en) * 1995-10-13 1997-04-30 Na Software, Inc. Creature animation and simulation technique
US5889532A (en) * 1996-08-02 1999-03-30 Avid Technology, Inc. Control solutions for the resolution plane of inverse kinematic chains
JP2903303B2 (ja) * 1996-09-03 1999-06-07 株式会社モノリス アニメーション処理方法およびその応用
JPH10272878A (ja) 1997-03-31 1998-10-13 Tombow Pencil Co Ltd 制電性を有する筆記具
US6191798B1 (en) * 1997-03-31 2001-02-20 Katrix, Inc. Limb coordination system for interactive computer animation of articulated characters
US6088042A (en) * 1997-03-31 2000-07-11 Katrix, Inc. Interactive motion data animation system
JPH10312469A (ja) 1997-05-13 1998-11-24 Yamaha Corp アニメーション作成システム
JPH10340354A (ja) 1997-06-05 1998-12-22 Hitachi Ltd 動作生成装置、動作制御方法、および、これを実行するためのプログラムを記憶した記憶媒体
KR100370112B1 (ko) 2000-05-18 2003-01-29 엘지.필립스 엘시디 주식회사 Tft-어레이 제조공정용 플로우팅 척

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8055383B2 (en) 2005-05-13 2011-11-08 Toyota Jidosha Kabushiki Kaisha Path planning device
JP2009512563A (ja) * 2005-10-19 2009-03-26 コリア インスティテュート オブ サイエンス アンド テクノロジー 人間型ロボットの歩行制御方法
US8738178B2 (en) 2005-10-19 2014-05-27 Korea Institute Of Science And Technology Method for controlling the walk of humanoid robot
JP2007260792A (ja) * 2006-03-27 2007-10-11 Fujitsu Ltd 機能モジュールの拘束条件を適用したロボットシステム及びその制御方法
JP2007315968A (ja) * 2006-05-26 2007-12-06 Univ Of Tokyo モーションキャプチャを用いた運動学パラメータの推定法及び装置
JP2009214268A (ja) * 2008-03-12 2009-09-24 Toyota Motor Corp 全身協調装置、ロボット及びロボットの制御方法
JP2010149275A (ja) * 2008-12-18 2010-07-08 Gm Global Technology Operations Inc 多優先作動空間インピーダンス制御
JP2011039619A (ja) * 2009-08-07 2011-02-24 Konami Digital Entertainment Co Ltd 画像生成装置、画像生成方法、ならびに、プログラム
WO2011016362A1 (ja) * 2009-08-07 2011-02-10 株式会社コナミデジタルエンタテインメント 画像生成装置、画像生成方法、情報記録媒体、ならびに、プログラム
JP2013020446A (ja) * 2011-07-11 2013-01-31 Celsys:Kk マルチポインティングデバイスの制御方法及びプログラム
JP2014534619A (ja) * 2011-10-07 2014-12-18 カール・ツァイス・エスエムティー・ゲーエムベーハー リソグラフィシステムの光学素子の動きの制御方法
JP2015089584A (ja) * 2013-11-05 2015-05-11 トヨタ自動車株式会社 ロボットの制御方法及びロボットシステム
JP2021111380A (ja) * 2020-01-03 2021-08-02 ネイバー コーポレーションNAVER Corporation 入力映像に含まれた客体の3次元ポーズの推定のためのデータを生成する方法、コンピュータシステムおよび推論モデルを構築する方法
JP7178396B2 (ja) 2020-01-03 2022-11-25 ネイバー コーポレーション 入力映像に含まれた客体の3次元ポーズの推定のためのデータを生成する方法およびコンピュータシステム
US11610331B2 (en) 2020-01-03 2023-03-21 Line Corporation Method and apparatus for generating data for estimating three-dimensional (3D) pose of object included in input image, and prediction model for estimating 3D pose of object

Also Published As

Publication number Publication date
EP1288867A2 (en) 2003-03-05
KR20030014164A (ko) 2003-02-15
CA2397313A1 (en) 2003-02-09
EP1288867A3 (en) 2004-02-04
US7035436B2 (en) 2006-04-25
CA2397313C (en) 2008-05-13
DE60237184D1 (de) 2010-09-16
KR100532832B1 (ko) 2005-12-02
CN1420453A (zh) 2003-05-28
EP1288867B1 (en) 2010-08-04
US20030034979A1 (en) 2003-02-20

Similar Documents

Publication Publication Date Title
JP2003058907A (ja) 木構造リンク系のポーズ及び動作を生成する方法
US7099747B2 (en) Motion editing apparatus and method for robot device, and computer program
Yamane et al. Natural motion animation through constraining and deconstraining at will
Starke et al. Memetic evolution for generic full-body inverse kinematics in robotics and animation
Isaacs et al. Controlling dynamic simulation with kinematic constraints
Yamane et al. Animating non-humanoid characters with human motion data
Suleiman et al. On human motion imitation by humanoid robot
US7106334B2 (en) Animation creation program
CN111390908B (zh) 一种基于网页的机械臂虚拟拖动方法
Ramos et al. Dynamic motion capture and edition using a stack of tasks
JP2008030136A (ja) ロボットの動作編集装置及び動作編集方法、並びにコンピュータ・プログラム
JP6753282B2 (ja) 組立作業ロボットの動作生成方法、動作生成プログラム、及び動作生成装置
Kim et al. Keyframe-based multi-contact motion synthesis
Memişoğlu Human motion control using inverse kinematics
Lee et al. Study on Performance Motion Generation of Humanoid Robot
Gutiérrez A et al. Computer Animation
JPH0760342B2 (ja) ロボット支援システム
Cadevall Soto Procedural generation of animations with inverse kinematics
Manseur Software-aided design of robotic mechanisms
Tsai et al. Construction of a general motion editing system for human body and humanoid robots
Bolt Two stage control for high degree of freedom articulated figures
Kallmann Autonomous object manipulation for virtual humans
Ooi Controller for jumping animations to achieve target positions
Yu et al. Coordinated Motion Planning for 3D Animation–With Use of a Chinese Lion Dance as an Example
Carvalho et al. Motion pattern encapsulation for data-driven constraint-based motion editing

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040601

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20040715

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040802

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040914