JPH1040418A - 3次元骨格構造の動き送受信装置、および動き送受信方法 - Google Patents

3次元骨格構造の動き送受信装置、および動き送受信方法

Info

Publication number
JPH1040418A
JPH1040418A JP10045397A JP10045397A JPH1040418A JP H1040418 A JPH1040418 A JP H1040418A JP 10045397 A JP10045397 A JP 10045397A JP 10045397 A JP10045397 A JP 10045397A JP H1040418 A JPH1040418 A JP H1040418A
Authority
JP
Japan
Prior art keywords
virtual space
dimensional virtual
data
motion
character
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.)
Granted
Application number
JP10045397A
Other languages
English (en)
Other versions
JP3337938B2 (ja
Inventor
Toshiya Naka
俊弥 中
Yoshiyuki Mochizuki
義幸 望月
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10045397A priority Critical patent/JP3337938B2/ja
Publication of JPH1040418A publication Critical patent/JPH1040418A/ja
Application granted granted Critical
Publication of JP3337938B2 publication Critical patent/JP3337938B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【課題】 ネットワークを基本とした骨格構造を持つC
Gキャラクタの動き情報を送受信できるようにするこ
と。 【解決手段】 CGキャラクタの動きを3次元軌跡情報
をもとに動きの始点位置、動きの終点位置、動きの始点
位置から終点位置との間の経過点情報、および接続方法
に分解し、動きデータを圧縮、および復元して転送する
ことで、インタラクティブなCGキャラクタアニメーシ
ョンを生成する。動きデータを圧縮する場合、3次元仮
想空間を考え、この3次元仮想空間を分割したサブ3次
元仮想空間を用いて、人間の運動を定義する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、インターネットな
どのネットワークをベースとした3次元コンピュータグ
ラフィックス(以下、「3DCG:three dimensional
computer graphics 」という。)を制作、あるいは商用
的に利用する際に、例えば、人間などの複雑な骨格構造
を持つキャラクタの自然な動きを効率良く送受信するた
めの3次元骨格構造の動き送受信装置、および動き送受
信方法に関する。
【0002】
【従来の技術】最近、3DCGの利用分野として、WW
W(World Wide Web)などのインターネット上での仮想商
店(Virtual Mall)や、各種ホームページなどが注目され
ている。特に、インターネットの急速な発達によって、
ゲームや映画などの3DCGを家庭内で手軽に扱う環境
が整いつつある。
【0003】従来のWWWなどでは、インターネットを
介して、パーソナルコンピュータやワークステーション
などのサーバと呼ばれるマシンに、パーソナルコンピュ
ータなどの複数のクライアントと呼ぶマシンが接続され
ており、クライアントからの要求に応じるべく、必要に
応じて、サーバが提供する画像、音声、テキスト、およ
び配置の情報などのデータをダウンロードし、クライア
ント側で再構築することで、必要な情報を得ることがで
きるようになっている。このサーバーとクライアントと
の間の通信には、TCP/IP(Tranamission Control
Protocol/Internet Protocol) に基づく通信方法が採用
されている。
【0004】従来、サーバ側から提供されるデータは、
主として、テキストデータ、および画像データのみであ
ったが、最近では、VRML(Virtual Reality Modelin
g Language) や、VRMLのブラウザの標準化が進み、
形状、シーンなどの3DCGデータそのものを転送しよ
うとする動きがある。
【0005】ここで、上記VRMLついて簡単に説明す
る。HMTL(Hyper Text Markup Language)などのよう
に、画像、およびテキストを主体とする従来のデータ形
式では、画像データ、特に、動画データを転送するのに
膨大な転送時間と転送コストとが必要である。そのた
め、現状のシステムでは、ネットワークトラフィックの
制約がある。これに対し、従来の3DCGでは、形状を
含めて、視点情報や、光源情報などの全てを3次元デー
タで処理していた。コンピュータグラフィックス(以
下、「CG:computer graphics 」という。)技術が進
歩するにつれて、CGで作成した画像の画質が急速に向
上し、CGデータをそのまま転送する方がデータ量の点
からも非常に効率が良くなっている。通常、同等の画像
データを送る場合の1/100以上の圧縮率である。そ
こで、ネットワークを介した3DCGデータの転送方法
を標準化する動きが起こりつつある。その1つの取り組
みとして、VRMLと呼ぶ3DCGデータの標準化が提
案されている(VRML Ver.2.0)。VRML Ver.2.0
では、プリミティブと呼ぶ形状データ、および各種の光
源データ、視点データ、テクスチャデータなどのデータ
フォーマット、ならびに剛体の移動の指定方法などを規
定している。
【0006】一方、従来のCG分野で最近注目されてい
るのが、リアルタイムで画像を作っているアニメーショ
ン、いわゆるリアルアニメーションである。このリアル
アニメーションを採用することにより、CM(commercia
l message)や、映画を中心にCGキャラクタのリアルな
動きを再現する工夫がなされている。その1つとして、
人間などの複雑な形状を骨格構造で表し、時々刻々変化
する骨格の関節の移動量を定義することで、複雑な動き
を自然に再現するキネマティックス法と呼ぶ方法があ
る。
【0007】上記キネマティックス法は、ロボット工学
を中心に開発された技術である。かかるキネマティック
ス法は、、直鎖リンク構造を持つ骨格モデル(リンクと
ジョイント(間接)とから構成されている。)のジョイ
ント部分のX軸、Y軸、Z軸方向における回転角度とX
軸、Y軸、Z軸方向における移動量(位置)とを設定す
ることによって、骨格モデルの姿勢を決定するものであ
る。
【0008】このキネマティックス法をCGで作成した
任意の骨格構造のキャラクタに適用することで、従来の
ポリゴンをベースとしたアニメーション(キーフレーム
法などとの併用により生成される。)に比べて、データ
量の削減が図れると同時に、人間や恐竜などの自然な動
きを再現することが可能になりつつある。
【0009】
【発明が解決しようとする課題】しかしながら、VRM
Lを中心とする従来のインターネット上での3DCGモ
デリング言語では、物体の連続した時系列的な動きを定
義する方法などが考慮されていないのが実情である。ま
た、人間などの複雑な形状の動き、換言すると、例え
ば、手足の自然な姿勢などを定義する方法も無いのが実
情である。
【0010】さらに、キネマティックス法を基本とした
従来のアニメーションを生成する場合において、滑らか
な動きを生成するためには、モーションデータ量が多く
必要となる。そのため、ネットワークへの応用を考えた
場合、トラフィックの問題を解消するまでに至っていな
いのが実情である。
【0011】かかる現状に対処するために、本願発明者
等は、人間などの複雑な構造を骨格構造で定義し、指定
された骨格の基準位置(以下、「ルート」という。)
と、骨格の各関節位置の動き情報とを圧縮、および復元
して送受信するための機構と、骨格構造の階層関係、骨
格構造の初期状態、骨格構造の制約条件(例えば、各関
節の回転の自由度や回転の範囲など)、骨格に対応付け
られる形状データ、および骨格構造との対応関係データ
を含む初期情報に付加する骨格構造の動きデータを3次
元仮想空間内での動きの代表的な要素データ(以下、
「基本動作」という。)に分解し、この分解された基本
動作を当該基本動作の代表的な動きの接続方法とともに
伝送する、または復元する機構と、送受信されたアニメ
ーション情報をもとに必要となる骨格構造の姿勢を決定
する機構と、送受信されるアバタの動き情報をもとに操
作する、ユーザの指示に従って、例えば、動きの方向や
基本の動作のシーケンスなどの動きの操作をインタラク
ティブに変更する機構とを含むようにすれば、人間のよ
うな複雑な構造を持つキャラクタの3次元での動きを送
受信する場合、人間の階層を骨格構造で定義し、定義さ
れた骨格構造の一部の関節の3次元仮想空間内での移動
量を、時系列的に送受信する、または代表的な動きの要
素にこの代表的な動きの要素の接続方法を付加して送受
信することができる結果、ネットワークをベースとした
送受信系でのキャラクタの自然で滑らかな運動を送受信
でき、転送時のデータ量も大幅に削減できるのではない
かと着想した。
【0012】本発明は、上記着想に基づきなされたもの
で、インターネットに接続されたクライアントとサーバ
との間で、骨格構造(階層構造)を持つ人間のような複
雑な形状(アバタ)と、アバタの基本となる動きデータ
とを送受信し、ネットワーク上の3次元仮想空間内でア
バタをインタラクティブに操作し合うことを可能にする
3次元骨格構造の動き送受信装置、および動き送受信方
法を提供することを目的とする。
【0013】
【課題を解決するための手段】上記目的を達成するため
に、請求項1に記載の発明にかかる3次元骨格構造の動
き送受信装置は、送信側から3次元コンピュータグラフ
ィックスにおける骨格構造の動きデータを受信側に送信
し、受信側で送信されてきた骨格構造の動きデータをも
とにアニメーションを生成するための装置であって、上
記受信側からの要求に応じて、上記骨格構造の階層関係
を定義する階層データ、この階層データの初期状態、骨
格の関節の制約条件、骨格に対応付ける形状データ、上
記骨格構造との対応関係データを含む初期情報に付加し
て、上記骨格構造の動きデータを、時系列データとして
送信するか、3次元仮想空間内での動きの特徴となる要
素データに分解し、この分解された要素データに当該要
素データの接続方法を付加したデータとして送信するか
否かを決定し、この決定された送信態様で上記初期情報
に上記骨格構造の動きデータを付加して送信するための
送信手段と、送信側コンピュータ上にある送信ブロクラ
ムと受信側コンピュータ上にある受信プログラムとによ
って、上記初期情報に上記骨格構造の動きデータを付加
したコンピュータグラフィックスアニメーションデータ
を送信側コンピュータから受信側コンピュータに伝送す
るための伝送手段と、上記伝送手段から伝送されてきた
上記コンピュータグラフィックスアニメーションデータ
を受信し、この受信した上記コンピュータグラフィック
スアニメーションデータの送信態様を判別し、上記初期
情報に付加される上記骨格構造の動きデータが時系列的
データとして送信されてきたと判別したときには、上記
初期情報、および時系列的データとして送信されてきた
上記骨格構造の動きデータを解釈し、運動学に基づいて
上記骨格構造の姿勢を決定する一方、上記初期情報に付
加される上記骨格構造の動きデータが3次元仮想空間内
での動きの特徴となる要素データに分解され、この分解
された要素データに当該要素データの接続方法が付加さ
れたデータとして送信されてきたと判別されたときに
は、上記初期情報、および分解された要素データにこの
要素データの接続方法が付加されたデータとして送信さ
れてきた上記骨格構造の動きデータを解釈し、運動学に
基づいて上記骨格構造の姿勢を決定するための受信手段
とを含むことを特徴とするものである。
【0014】請求項2に記載の発明にかかる3次元骨格
構造の動き送受信装置は、送信側から3次元コンピュー
タグラフィックスにおける骨格構造の動きデータを受信
側に送信し、受信側で送信されてきた骨格構造の動きデ
ータをもとにアニメーションを生成するための装置であ
って、上記受信側からの要求に応じて、上記骨格構造の
階層関係を定義する階層データ、この階層データの初期
状態、骨格の関節の制約条件、骨格に対応付ける形状デ
ータ、上記骨格構造との対応関係データ、上記形状デー
タの一部に対して動画マッピングする動画データ列、お
よびマッピング方法を含む初期情報に付加して、上記骨
格構造の動きデータを、時系列データとして送信する
か、3次元仮想空間内での動きの特徴となる要素データ
に分解し、この分解された要素データに当該要素データ
の接続方法を付加したデータとして送信するか否かを決
定し、この決定された送信態様で上記初期情報に上記骨
格構造の動きデータを付加して送信するための送信手段
と、送信側コンピュータ上にある送信プログラムと受信
側コンピュータ上にある受信プログラムとによって、上
記初期情報に上記骨格構造の動きデータを付加したコン
ピュータグラフィックスアニメーションデータを送信側
コンピュータから受信側コンピュータに伝送するための
伝送手段と、上記伝送手段から伝送されてきた上記コン
ピュータグラフィックスアニメーションデータを受信
し、この受信した上記コンピュータグラフィックスアニ
メーションデータの送信態様を判別し、上記初期情報に
付加される上記骨格構造の動きデータが時系列的データ
として送信されてきたと判別したときには、上記初期情
報、および時系列的データとして送信されてきた上記骨
格構造の動きデータを解釈し、運動学に基づいて上記骨
格構造の姿勢を決定する一方、上記初期情報に付加され
る上記骨格構造の動きデータが3次元仮想空間内での動
きの特徴となる要素データに分解され、この分解された
要素データに当該要素データの接続方法が付加されたデ
ータとして送信されてきたと判別されたときには、上記
初期情報、および分解された要素データにこの要素デー
タの接続方法が付加されたデータとして送信されてきた
上記骨格構造の動きデータを解釈し、運動学に基づいて
上記骨格構造の姿勢を決定するための受信手段とを含む
ことを特徴とするものである。
【0015】請求項3に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記送信手段
は、上記骨格構造を定義し、この定義された骨格構造デ
ータを初期情報として送信するための手段と、上記骨格
構造の予め定める部分の運動の3次元仮想空間での軌跡
を基に代表的な要素データに分解し、この分解された要
素データに当該要素データの接続方法を付加して送信す
るための手段とを含み、上記受信手段は、伝送されてき
た骨格構造データを初期情報として復元するための手段
と、初期状態として復元された骨格構造データに対応付
ける形状データを上記骨格構造に割り付けるための手段
と、伝送されてきた要素データ、および伝送されてきた
要素データの接続方法から上記骨格構造の姿勢を決定す
るための手段とを含むことを特徴とするものである。
【0016】請求項4に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記送信手段
は、上記骨格構造、およびこの骨格構造の動き情報を送
信するための手段と、上記骨格構造の一部に対応付ける
動画像データ列を圧縮し、この圧縮された動画像データ
列に上記骨格構造の運動に応じて動画像を変更する方法
を付加して送信するための手段とを含み、上記受信手段
は、伝送されてきた上記骨格構造、およびこの骨格構造
の動き情報を復元するための手段と、伝送されてきた上
記骨格構造の一部に対応付ける動画像データ列を復元
し、伝送されてきた上記骨格構造の運動に応じて動画像
を変更する方法を用いることによって、上記骨格構造の
姿勢を決定するための手段とを含むことを特徴とするも
のである。
【0017】請求項5に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記送信部手
段は、送信する上記骨格構造における3次元仮想空間内
での動きデータに関する要素データを決定するべく、送
信の対象となるCGキャラクタに対して、このキャラク
タの主要位置にローカル座標系を設定するための手段
と、ローカル座標系が設定された上記キャラクタが動き
得る稼働範囲を包含するような3次元仮想空間を考え、
3次元仮想空間をこの3次元仮想空間に相似するサブ3
次元仮想空間に分割し、このサブ3次元仮想空間をさら
に階層的に分割して、サブ3次元仮想空間の大きさ、サ
ブ3次元仮想空間の分割サイズ、上記キャラクタの移動
に伴うローカル座標系での回転移動行列、および階層化
されたサブ3次元仮想空間の位置に関連する情報から、
上記キャラクタの骨格構造の現在注目する部分が3次元
仮想空間内のどの位置に存在するかを表すための手段と
を含み、上記受信手段は、伝送されてきた上記骨格構造
における3次元仮想空間内での動きデータに関する要素
データをもとに上記骨格構造の姿勢を決定するべく、伝
送されてきた上記キャラクタの動き得る稼働範囲を包含
するような3次元仮想空間を考え、3次元仮想空間をこ
の3次元仮想空間に相似するサブ3次元仮想空間に分割
し、このサブ3次元仮想空間をさらに階層的に分割し
て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
の分割サイズ、上記キャラクタの移動に伴うローカル座
標系での回転移動行列、および階層化されたサブ3次元
仮想空間の位置に関連する情報から、上記キャラクタの
骨格構造の現在注目する部分が3次元仮想空間内のどの
位置に存在するかを復元するための手段を含むことを特
徴とするものである。
【0018】請求項6に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記送信部手
段は、送信する上記骨格構造における3次元仮想空間内
での動きデータに関する要素データを決定するべく、送
信の対象となるCGキャラクタに対して、このキャラク
タの主要位置にローカル座標系を設定するための手段
と、ローカル座標系が設定された上記キャラクタが動き
得る稼働範囲を包含するような3次元仮想空間を考え、
3次元仮想空間をこの3次元仮想空間に相似するサブ3
次元仮想空間に分割し、このサブ3次元仮想空間をさら
に階層的に分割し、サブ3次元仮想空間の大きさ、サブ
3次元仮想空間の分割サイズ、上記キャラクタの移動に
伴うローカル座標系での回転移動行列、および階層化さ
れたサブ3次元仮想空間の位置に関連する情報から、上
記キャラクタの骨格構造の現在注目する部分が3次元仮
想空間内のどの位置に存在するかを表すための手段と、
3次元仮想空間内での上記キャラクタの骨格構造の現在
注目する部分の位置が離れていることを条件として、上
記コンピュータグラフィックスアニメーションデータに
互いに離れているブロック同士を空間的に補間する補間
情報を付加するための手段とを含み、上記受信手段は、
伝送されきた上記骨格構造における3次元仮想空間内で
の動きデータに関する要素データをもとに上記骨格構造
の姿勢を決定するべく、伝送されてきた上記キャラクタ
の動き得る稼働範囲を包含するような3次元仮想空間を
考え、3次元仮想空間をこの3次元仮想空間に相似する
サブ3次元仮想空間に分割し、このサブ3次元仮想空間
をさらに階層的に分割して、サブ3次元仮想空間の大き
さ、サブ3次元仮想空間の分割サイズ、上記キャラクタ
の移動に伴うローカル座標系での回転移動行列、および
階層化されたサブ3次元仮想空間の位置に関連する情報
から、上記キャラクタの骨格構造の現在注目する部分が
3次元仮想空間内のどの位置に存在するかを復元するた
めの手段と、3次元仮想空間内での上記キャラクタの骨
格構造の現在注目する部分の位置が離れていることを条
件として、伝送されてきた補間情報をもとに互いに離れ
ているブロック同士を空間的に補間することによって、
上記キャラクタの骨格構造の連続的な姿勢を復元するた
めの手段とを含むことを特徴とするものである。
【0019】請求項7に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記送信手段
は、送信する上記骨格構造における3次元仮想空間内で
の動きデータに関する要素データを決定するべく、送信
の対象となるCGキャラクタに対して、このキャラクタ
の主要位置にローカル座標系を設定するための手段と、
ローカル座標系が設定された上記キャラクタが動き得る
稼働範囲を包含するような3次元仮想空間を考え、3次
元仮想空間をこの3次元仮想空間に相似するサブ3次元
仮想空間に分割し、このサブ3次元仮想空間を階層的に
さらに分割して、サブ3次元仮想空間の大きさ、サブ3
次元仮想空間の分割サイズ、上記キャラクタの移動に伴
うローカル座標系での回転移動行列、および階層化され
たサブ3次元仮想空間の位置に関連する情報から、上記
キャラクタの骨格構造の現在注目する部分が3次元仮想
空間内のどの位置に存在するかを表すための手段と、上
記キャラクタの骨格構造における任意に指定する部分の
3次元角度情報を上記コンピュータグラフィックスアニ
メーションデータに付加するための手段とを含み、上記
受信手段は、伝送されてきた上記骨格構造における3次
元仮想空間内での動きデータに関する要素データをもと
に上記骨格構造の姿勢を決定するべく、伝送されてきた
上記キャラクタの動き得る稼働範囲を包含するような3
次元仮想空間を考え、3次元仮想空間をこの3次元仮想
空間に相似するサブ3次元仮想空間に分割し、このサブ
3次元仮想空間をさらに階層的に分割して、サブ3次元
仮想空間の大きさ、サブ3次元仮想空間の分割サイズ、
上記キャラクタの移動に伴うローカル座標系での回転移
動行列、および階層化されたサブ3次元仮想空間の位置
に関連する情報から、上記キャラクタの骨格構造の現在
注目する部分が3次元仮想空間内のどの位置に存在する
かを復元するための手段と、上記キャラクタの骨格構造
における任意に指定する部分の3次元角度情報から上記
キャラクタの骨格構造の姿勢、および形状を復元するた
めの手段とを含むことを特徴とするものである。
【0020】請求項8に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記受信手段
は、伝送されてきた上記骨格構造の3次元仮想空間内で
の動きの衝突を検出するべく、伝送されてきたCGキャ
ラクタの動き得る稼働範囲を包含するような3次元仮想
空間を考え、3次元仮想空間をこの3次元仮想空間に相
似するサブ3次元仮想空間に分割し、このサブ3次元仮
想空間をさらに階層的に分割して、サブ3次元仮想空間
の大きさ、サブ3次元仮想空間の分割サイズ、上記キャ
ラクタの移動に伴うローカル座標系での回転移動行列、
階層化されたサブ3次元仮想空間の位置に関連する情報
から、上記キャラクタの骨格構造の現在注目する部分が
他の対象物と衝突するかどうかの判定を分割されたサブ
3次元仮想空間同士で行なうための手段を含むことを特
徴とするものである。
【0021】請求項9に記載の発明にかかる3次元骨格
構造の動き送受信装置は、請求項1または2に記載の3
次元骨格構造の動き送受信装置において、上記送信手段
は、送信する上記骨格構造の3次元仮想空間内での動き
位置を設定するべく、送信の対象となるCGキャラクタ
の3次元仮想空間内での位置を、当該キャラクタが動き
得る稼働範囲を包含するような3次元仮想空間、および
この3次元仮想空間を分割したサブ3次元仮想空間のう
ちいずれか一方の位置に関連する情報で指定するための
手段と、上記キャラクタの3次元仮想空間内での位置を
変更することを条件として、サブ3次元仮想空間に隣接
するサブ3次元仮想の位置に関連する情報を上記キャラ
クタの骨格構造に与えることによって、上記キャラクタ
の3次元仮想区間内での位置を変更するための手段とを
含み、上記受信手段は、伝送されてきた上記骨格構造の
3次元仮想空間内での動き位置を設定するべく、受信の
対象となる上記キャラクタの3次元仮想空間内での位置
を、伝送された上記キャラクタが動き得る稼働範囲を包
含するような3次元仮想空間、およびこの3次元仮想空
間を分割したサブ3次元仮想空間のいずれか一方の位置
に関連する情報で決定するための手段と、上記送信手段
側で上記キャラクタの3次元仮想空間内での位置が変更
されたことを条件として、伝送されてきたサブ3次元仮
想空間に隣接するサブ3次元仮想空間の位置に関連する
情報をもとに上記キャラクタの3次元仮想区間内での位
置を変更するための手段とを含むことを特徴とするもの
である。
【0022】請求項10に記載の発明にかかる3次元骨
格構造の動き送受信方法は、送信側から3次元コンピュ
ータグラフィックスにおける骨格構造の動きデータを受
信側に送信し、受信側で送信されてきた骨格構造の動き
データをもとにアニメーションを生成するための方法で
あって、上記受信側からの要求に応じて、上記骨格構造
の階層関係を定義する階層データ、この階層データの初
期状態、骨格の関節の制約条件、骨格に対応付ける形状
データ、上記骨格構造との対応関係データを含む初期情
報に付加して、上記骨格構造の動きデータを、時系列デ
ータとして送信するか、3次元仮想空間内での動きの特
徴となる要素データに分解し、この分解された要素デー
タに当該要素データの接続方法を付加したデータとして
送信するか否かを決定し、この決定された送信態様で上
記初期情報に上記骨格構造の動きデータを付加して送信
するための送信ステップと、送信側コンピュータ上にあ
る送信プログラムと受信側コンピュータ上にある受信プ
ログラムとによって、上記初期情報に上記骨格構造の動
きデータを付加したコンピュータグラフィックスアニメ
ーションデータを送信側コンピュータから受信側コンピ
ュータに伝送するための伝送ステップと、上記伝送ステ
ップから伝送されてきた上記コンピュータグラフィック
スアニメーションデータを受信し、この受信した上記コ
ンピュータグラフィックスアニメーションデータの送信
態様を判別し、上記初期情報に付加される上記骨格構造
の動きデータが時系列的データとして送信されてきたと
判別したときには、上記初期情報、および時系列的デー
タとして送信されてきた上記骨格構造の動きデータを解
釈し、運動学に基づいて上記骨格構造の姿勢を決定する
一方、上記初期情報に付加される上記骨格構造の動きデ
ータが3次元仮想空間内での動きの特徴となる要素デー
タに分解され、この分解された要素データに当該要素デ
ータの接続方法が付加されたデータとして送信されてき
たと判別されたときには、上記初期情報、および分解さ
れた要素データにこの要素データの接続方法が付加され
たデータとして送信されてきた上記骨格構造の動きデー
タを解釈し、運動学に基づいて上記骨格構造の姿勢を決
定するための受信ステップとを含むことを特徴とするも
のである。
【0023】請求項11に記載の発明にかかる3次元骨
格構造の動き送受信方法は、送信側から3次元コンピュ
ータグラフィックスにおける骨格構造の動きデータを受
信側に送信し、受信側で送信されてきた骨格構造の動き
データをもとにアニメーションを生成するための方法で
あって、上記受信側からの要求に応じて、上記骨格構造
の階層関係を定義する階層データ、この階層データの初
期状態、骨格の関節の制約条件、骨格に対応付ける形状
データ、上記骨格構造との対応関係データ、上記形状デ
ータの一部に対して動画マッピングする動画データ列、
およびマッピング方法を含む初期情報に付加して、上記
骨格構造の動きデータを、時系列データとして送信する
か、3次元仮想空間内での動きの特徴となる要素データ
に分解し、この分解された要素データに当該要素データ
の接続方法を付加したデータとして送信するか否かを決
定し、この決定された送信態様で上記初期情報に上記骨
格構造の動きデータを付加して送信するための送信ステ
ップと、送信側コンピュータ上にある送信プログラムと
受信側コンピュータ上にある受信プログラムとによっ
て、上記初期情報に上記骨格構造の動きデータを付加し
たコンピュータグラフィックスアニメーションデータを
送信側コンピュータから受信側コンピュータに伝送する
ための伝送ステップと、上記伝送ステップから伝送され
てきた上記コンピュータグラフィックスアニメーション
データを受信し、この受信した上記コンピュータグラフ
ィックスアニメーションデータの送信態様を判別し、上
記初期情報に付加される上記骨格構造の動きデータが時
系列的データとして送信されてきたと判別したときに
は、上記初期情報、および時系列的データとして送信さ
れてきた上記骨格構造の動きデータを解釈し、運動学に
基づいて上記骨格構造の姿勢を決定する一方、上記初期
情報に付加される上記骨格構造の動きデータが3次元仮
想空間内での動きの特徴となる要素データに分解され、
この分解された要素データに当該要素データの接続方法
が付加されたデータとして送信されてきたと判別された
ときには、上記初期情報、および分解された要素データ
にこの要素データの接続方法が付加されたデータとして
送信されてきた上記骨格構造の動きデータを解釈し、運
動学に基づいて上記骨格構造の姿勢を決定するための受
信ステップとを含むことを特徴とするものである。
【0024】請求項12に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記送
信ステップは、上記骨格構造を定義し、この定義された
骨格構造データを初期情報として送信するステップと、
上記骨格構造の予め定める部分の運動の3次元仮想空間
での軌跡を基に代表的な要素データに分解し、この分解
された要素データに当該要素データの接続方法を付加し
て送信するステップとを含み、上記受信ステップは、伝
送されてきた骨格構造データを初期情報として復元する
ステップと、初期状態として復元された骨格構造データ
に対応付ける形状データを上記骨格構造に割り付けるス
テップと、伝送されてきた要素データ、および伝送され
てきた要素データの接続方法から上記骨格構造の姿勢を
決定するステップとを含むことを特徴とするものであ
る。
【0025】請求項13に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記送
信ステップは、上記骨格構造、およびこの骨格構造の動
き情報を送信するステップと、上記骨格構造の一部に対
応付ける動画像データ列を圧縮し、この圧縮された動画
像データ列に上記骨格構造の運動に応じて動画像を変更
する方法を付加して送信するステップとを含み、上記受
信ステップは、伝送されてきた上記骨格構造、およびこ
の骨格構造の動き情報を復元するステップと、伝送され
てきた上記骨格構造の一部に対応付ける動画像データ列
を復元し、伝送されてきた上記骨格構造の運動に応じて
動画像を変更する方法を用いることによって、上記骨格
構造の姿勢を決定するステップとを含むことを特徴とす
るものである。
【0026】請求項14に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記送
信部ステップは、送信する上記骨格構造における3次元
仮想空間内での動きデータに関する要素データを決定す
るべく、送信の対象となるCGキャラクタに対して、こ
のキャラクタの主要位置にローカル座標系を設定するス
テップと、ローカル座標系が設定された上記キャラクタ
が動き得る稼働範囲を包含するような3次元仮想空間を
考え、3次元仮想空間をこの3次元仮想空間に相似する
サブ3次元仮想空間に分割し、このサブ3次元仮想空間
をさらに階層的に分割して、サブ3次元仮想空間の大き
さ、サブ3次元仮想空間の分割サイズ、上記キャラクタ
の移動に伴うローカル座標系での回転移動行列、および
階層化されたサブ3次元仮想空間の位置に関連する情報
から、上記キャラクタの骨格構造の現在注目する部分が
3次元仮想空間内のどの位置に存在するかを表すステッ
プとを含み、上記受信ステップは、伝送されてきた上記
骨格構造における3次元仮想空間内での動きデータに関
する要素データをもとに上記骨格構造の姿勢を決定する
べく、伝送されてきた上記キャラクタの動き得る稼働範
囲を包含するような3次元仮想空間を考え、3次元仮想
空間をこの3次元仮想空間に相似するサブ3次元仮想空
間に分割し、このサブ3次元仮想空間をさらに階層的に
分割して、サブ3次元仮想空間の大きさ、サブ3次元仮
想空間の分割サイズ、上記キャラクタの移動に伴うロー
カル座標系での回転移動行列、および階層化されたサブ
3次元仮想空間の位置に関連する情報から、上記キャラ
クタの骨格構造の現在注目する部分が3次元仮想空間内
のどの位置に存在するかを復元するステップを含むこと
を特徴とするものである。
【0027】請求項15に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記送
信部ステップは、送信する上記骨格構造における3次元
仮想空間内での動きデータに関する要素データを決定す
るべく、送信の対象となるCGキャラクタに対して、こ
のキャラクタの主要位置にローカル座標系を設定するス
テップと、ローカル座標系が設定された上記キャラクタ
が動き得る稼働範囲を包含するような3次元仮想空間を
考え、3次元仮想空間をこの3次元仮想空間に相似する
サブ3次元仮想空間に分割し、このサブ3次元仮想空間
をさらに階層的に分割し、サブ3次元仮想空間の大き
さ、サブ3次元仮想空間の分割サイズ、上記キャラクタ
の移動に伴うローカル座標系での回転移動行列、および
階層化されたサブ3次元仮想空間の位置に関連する情報
から、上記キャラクタの骨格構造の現在注目する部分が
3次元仮想空間内のどの位置に存在するかを表すステッ
プと、3次元仮想空間内での上記キャラクタの骨格構造
の現在注目する部分の位置が離れていることを条件とし
て、上記コンピュータグラフィックスアニメーションデ
ータに互いに離れているブロック同士を空間的に補間す
る補間情報を付加するステップとを含み、上記受信ステ
ップは、伝送されてきた上記骨格構造における3次元仮
想空間内での動きデータに関する要素データをもとに上
記骨格構造の姿勢を決定するべく、伝送されてきた上記
キャラクタの動き得る稼働範囲を包含するような3次元
仮想空間を考え、3次元仮想空間をこの3次元仮想空間
に相似するサブ3次元仮想空間に分割し、このサブ3次
元仮想空間をさらに階層的に分割して、サブ3次元仮想
空間の大きさ、サブ3次元仮想空間の分割サイズ、上記
キャラクタの移動に伴うローカル座標系での回転移動行
列、および階層化されたサブ3次元仮想空間の位置に関
連する情報から、上記キャラクタの骨格構造の現在注目
する部分が3次元仮想空間内のどの位置に存在するかを
復元するステップと、3次元仮想空間内での上記キャラ
クタの骨格構造の現在注目する部分の位置が離れている
ことを条件として、伝送されてきた補間情報をもとに互
いに離れているブロック同士を空間的に補間することに
よって、上記キャラクタの骨格構造の連続的な姿勢を復
元するステップとを含むことを特徴とするものである。
【0028】請求項16に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記送
信ステップは、送信する上記骨格構造における3次元仮
想空間内での動きデータに関する要素データを決定する
べく、送信の対象となるCGキャラクタに対して、この
キャラクタの主要位置にローカル座標系を設定するステ
ップと、ローカル座標系が設定された上記キャラクタが
動き得る稼働範囲を包含するような3次元仮想空間を考
え、3次元仮想空間をこの3次元仮想空間に相似するサ
ブ3次元仮想空間に分割し、このサブ3次元仮想空間を
階層的にさらに分割して、サブ3次元仮想空間の大き
さ、サブ3次元仮想空間の分割サイズ、上記キャラクタ
の移動に伴うローカル座標系での回転移動行列、および
階層化されたサブ3次元仮想空間の位置に関連する情報
から、上記キャラクタの骨格構造の現在注目する部分が
3次元仮想空間内のどの位置に存在するかを表すステッ
プと、上記キャラクタの骨格構造における任意に指定す
る部分の3次元角度情報を上記コンピュータグラフィッ
クスアニメーションデータに付加するステップとを含
み、上記受信ステップは、伝送されてきた上記骨格構造
における3次元仮想空間内での動きデータに関する要素
データをもとに上記骨格構造の姿勢を決定するべく、伝
送されてきた上記キャラクタの動き得る稼働範囲を包含
するような3次元仮想空間を考え、3次元仮想空間をこ
の3次元仮想空間に相似するサブ3次元仮想空間に分割
し、このサブ3次元仮想空間をさらに階層的に分割し
て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
の分割サイズ、上記キャラクタの移動に伴うローカル座
標系での回転移動行列、および階層化されたサブ3次元
仮想空間の位置に関連する情報から、上記キャラクタの
骨格構造の現在注目する部分が3次元仮想空間内のどの
位置に存在するかを復元するステップと、上記キャラク
タの骨格構造における任意に指定する部分の3次元角度
情報から上記キャラクタの骨格構造の姿勢、および形状
を復元するステップとを含むことを特徴とするものであ
る。
【0029】請求項17に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記受
信ステップは、伝送されてきた上記骨格構造の3次元仮
想空間内での動きの衝突を検出するべく、伝送されてき
たCGキャラクタの動き得る稼働範囲を包含するような
3次元仮想空間を考え、3次元仮想空間をこの3次元仮
想空間に相似するサブ3次元仮想空間に分割し、このサ
ブ3次元仮想空間をさらに階層的に分割して、サブ3次
元仮想空間の大きさ、サブ3次元仮想空間の分割サイ
ズ、上記キャラクタの移動に伴うローカル座標系での回
転移動行列、階層化されたサブ3次元仮想空間の位置に
関連する情報から、上記キャラクタの骨格構造の現在注
目する部分が他の対象物と衝突するかどうかの判定を分
割されたサブ3次元仮想空間同士で行なうステップを含
むことを特徴とするものである。
【0030】請求項18に記載の発明にかかる3次元骨
格構造の動き送受信方法は、請求項10または11に記
載の3次元骨格構造の動き送受信方法において、上記送
信ステップは、送信する上記骨格構造の3次元仮想空間
内での動き位置を設定するべく、送信の対象となるCG
キャラクタの3次元仮想空間内での位置を、当該キャラ
クタが動き得る稼働範囲を包含するような3次元仮想空
間、およびこの3次元仮想空間を分割したサブ3次元仮
想空間のうちいずれか一方の位置に関連する情報で指定
するステップと、上記キャラクタの3次元仮想空間内で
の位置を変更することを条件として、サブ3次元仮想空
間に隣接するサブ3次元仮想の位置に関連する情報を上
記キャラクタの骨格構造に与えることによって、上記キ
ャラクタの3次元仮想区間内での位置を変更するステッ
プとを含み、上記受信ステップは、伝送されてきた上記
骨格構造の3次元仮想空間内での動き位置を設定するべ
く、受信の対象となる上記キャラクタの3次元仮想空間
内での位置を、伝送された上記キャラクタが動き得る稼
働範囲を包含するような3次元仮想空間、およびこの3
次元仮想空間を分割したサブ3次元仮想空間のいずれか
一方の位置に関連する情報で決定するステップと、上記
送信ステップで上記キャラクタの3次元仮想空間内での
位置が変更されたことを条件として、伝送されてきたサ
ブ3次元仮想空間に隣接するサブ3次元仮想空間の位置
に関連する情報をもとに上記キャラクタの3次元仮想区
間内での位置を変更するステップとを含むことを特徴と
するものである。
【0031】
【発明の実施の形態】以下、本発明の一実施の形態を添
付図面に基づき詳細に説明する。図1は本発明の一実施
の形態にかかる3次元骨格構造の動き送受信装置の構成
を示すブロック図である。図1を参照して、本実施の形
態の3次元骨格構造の動き送受信装置は、送信側から3
DCGにおける骨格構造の動きデータを受信側に送信
し、受信側で送信されてきた骨格構造の動きデータをも
とにアニメーションを生成するためのものであって、C
Gアニメーションデータ送信部1、CGアニメーション
データ伝送部2、およびCGアニメーションデータ受信
部3を備えている。
【0032】図2はCGアニメーションデータ送信部の
構成の一例を示すブロック図である。図2を参照して、
CGアニメーションデータ送信部1は、骨格構造定義部
11、動きデータ定義部12、および動きデータ要素分
解部13を備えており、受信側からの要求に応じて、骨
格構造の階層関係を定義する階層データ、この階層デー
タの初期状態、骨格の関節の制約条件、骨格に対応付け
る形状データ、骨格構造との対応関係データ、形状デー
タの一部に対して動画マッピングする動画データ列、お
よびマッピング方法を含む初期情報に付加して、骨格構
造の動きデータを、時系列データとして送信するか、3
次元仮想空間内での動きの特徴となる基本動作に分解
し、この分解された基本動作に当該基本動作の接続方法
を付加したデータとして送信するか否かを決定し、この
決定された送信態様で初期情報に骨格構造の動きデータ
を付加して送信するようになっている。
【0033】再び、図1を参照して、CGアニメーショ
ンデータ伝送部2は、送信側コンピュータ上にある送信
プログラムと受信側コンピュータ上にある受信プログラ
ムとによって、初期情報に骨格構造の動きデータを付加
したCGアニメーションデータを送信側コンピュータか
ら受信側コンピュータに伝送するようになっている。
【0034】図3はCGアニメーションデータ受信部の
構成の一例を示すブロック図である。図3を参照して、
CGアニメーションデータ受信部3は、骨格構造定義部
31、形状データ対応付け部32、動きデータ定義部3
3、姿勢決定部34、動き要素データ接続部35、およ
び動き接続部36を備えており、CGアニメーションデ
ータ伝送部2から伝送されてきたCGアニメーションデ
ータを受信し、この受信したCGアニメーションデータ
の送信態様を判別し、初期情報に付加される骨格構造の
動きデータが時系列的データとして送信されてきたと判
別したときには、初期情報、および時系列的データとし
て送信されてきた骨格構造の動きデータを解釈し、運動
学に基づいて骨格構造の姿勢を決定する一方、初期情報
に付加される骨格構造の動きデータが3次元仮想空間内
での動きの特徴となる基本動作に分解され、この分解さ
れた基本動作に当該基本動作の接続方法が付加されたデ
ータとして送信されてきたと判別されたときには、初期
情報、および分解された基本動作にこの基本動作の接続
方法が付加されたデータとして送信されてきた骨格構造
の動きデータを解釈し、運動学に基づいて骨格構造の姿
勢を決定するようになっている。
【0035】ここで、上記3次元骨格構造の動き送受信
装置の動作について説明する。CGアニメーションデー
タ送信部1は、受信側からの要求に応じて、骨格構造の
階層関係を定義する階層データ、この階層データの初期
状態、骨格の関節の制約条件、骨格に対応付ける形状デ
ータ、骨格構造との対応関係データ、形状データの一部
に対して動画マッピングする動画データ列、およびマッ
ピング方法を含む初期情報に付加して、骨格構造の動き
データを、時系列データとして送信するか、3次元仮想
空間内での動きの特徴となる基本動作に分解し、この分
解された基本動作に当該基本動作の接続方法を付加した
データとして送信するか否かを決定し、この決定された
送信態様で初期情報に骨格構造の動きデータを付加して
送信する。
【0036】このとき、骨格構造定義部11は、送信の
対象となるCGキャラクタ(人間などの複雑な骨格を持
つものである。)を骨格構造で定義し、この定義された
骨格構造は、階層構造の最も親になる位置にルート(計
算の基準位置)が設定される。ここで、骨格構造は、通
常の人間の場合、図4、および図10(a)に示すよう
な階層構造を持っている。一方、ルートは、例えば、両
足の付け根などのように、通常、体の中心位置に設定
し、この位置にCGキャラクタのローカル座標系(以下
では、Zトップの右手系とする。)の原点を置く。
【0037】図4において、四角で囲った部分は、骨格
構造の関節、またはジョイントと呼ばれるものであっ
て、各ジョイントを繋ぐ直線は、腕や足などの部分に対
応しており、リンク、またはセグメントと呼ばれるもの
である。さらに、太い四角で囲った部分は、エンドサイ
トと呼ばれる手先や足先の先端部分である。図4では、
基本的な骨格を示したが、必要に応じて、骨格構造の階
層を変更する。例えば、図4の骨格構造において、手の
階層をもっと詳しく表現したい場合、左右の手首の下に
5本の指の階層と、この各階層にそれぞれ含まれる指の
関節とを設ければ良い。
【0038】骨格構造には、上記ジョイントの階層関係
以外に、階層の初期状態が設定される。例えば、腕や足
の長さ、および腕や足の長さの初期方向が設定される。
加えて、骨格構造には、各ジョイントの可動範囲が設定
される。例えば、右肘がローカル座標系XYZ軸回りの
回転でそれぞれ何度から何度まで回転可能かなどが設定
される。
【0039】図5は骨格構造のデータ形式の一例を示す
図であって、図5(a)は骨格の階層を示している。図
5(a)を参照して、例えば、人間の肘の部分を例にと
れば、セグメントが上腕や前腕に対応しており、セグメ
ントの両端にサイトと呼ぶ部分がある。さらに、肘など
の関節部分(上腕のサイトと前腕のサイトとで定義され
ている。)がジョイントである。一方、図5(b)は骨
格構造の定義の一例を示している。図5(b)の骨格構
造の定義例では、セグメント、サイト、およびジョイン
トには、識別子として、Neck、およびNeckBaseなどの各
部の名称が付加されており、サイトには、3次元座標位
置(-p)、および回転角度(-r)が、それぞれ、3成分
ずつ設定されている。サイトの座標は、各セグメントの
親サイトの位置にローカル座標の原点を置くようになっ
ている。ジョイントに関しては、SkullBase などの識別
名、および階層関係(-c: どの親サイトとどの子サイト
が接続しているかの親子関係)が設定されている。さら
に、必要に応じて、回転の自由度(Ballの場合は、XY
Zの3軸回りの回転)、および可動範囲(-l:角度)が
設定される。
【0040】動きデータ定義部12は、骨格構造定義部
11で設定された骨格構造の主要部分の動きデータを設
定する。ここで、主要部分とは、骨格の動かしたい部分
であって、例えば、体全体であれば、体全体に含まれる
骨格の関節の3次元座標位置または関節角度データを時
系列データとして与えることにより得られる。動きデー
タのフォーマットは、通常、フレーム番号などの時間デ
ータと実体データとからなり、それぞれ、ジョイントの
名称、角度データか座標データかを識別するための識別
子、および3要素(XYZ軸の成分)のデータで構成さ
れる。
【0041】動き要素データ分解部13は、必要に応じ
て、上述の時系列の動きデータ列をもとに、骨格の運動
を表現するのに必要な基準点や経過情報などに分解す
る。なお、この分解方法などについては、後で詳しく説
明することにする。
【0042】CGアニメーションデータ伝送部2は、送
信側コンピュータ上にある送信プログラムと受信側コン
ピュータ上にある受信プログラムとによって、初期情報
に骨格構造の動きデータを付加したCGアニメーション
データを送信側コンピュータから受信側コンピュータに
伝送する。つまり、CGアニメーションデータ送信部1
で圧縮された骨格構造、および動きのデータをTCP/
IPに従ってサーバーとクライアントとの間で伝送す
る。
【0043】CGアニメーションデータ受信部3は、C
Gアニメーションデータ伝送部2から伝送されてきたC
Gアニメーションデータを受信し、この受信したCGア
ニメーションデータの送信態様を判別し、初期情報に付
加される骨格構造の動きデータが時系列的データとして
送信されてきたと判別したときには、初期情報、および
時系列的データとして送信されてきた骨格構造の動きデ
ータを解釈し、運動学に基づいて骨格構造の姿勢を決定
する一方、初期情報に付加される骨格構造の動きデータ
が3次元仮想空間内での動きの特徴となる基本動作に分
解され、この分解された基本動作に当該基本動作の接続
方法が付加されたデータとして送信されてきたと判別さ
れたときには、初期情報、および分解された基本動作に
この基本動作の接続方法が付加されたデータとして送信
されてきた骨格構造の動きデータを解釈し、運動学に基
づいて骨格構造の姿勢を決定する。このとき、骨格構造
定義部31は、骨格構造定義部11で定義される人間の
骨格構造データ(図4参照)を受信し、この受信した骨
格構造データを解釈する。
【0044】形状データ対応付け部32は、処理対象と
なる骨格構造のどのセグメントと、予め伝送された形状
データのどの部分とが対応するかをグループ分けする。
ここで、形状データというのは、CGキャラクタの骨格
に貼り付ける皮膚(「スキン」とも呼ぶ。)の部分であ
って、通常は、ポリゴン列、またはメッシュデータの集
合である。このポリゴン列やメッシュデータから上腕に
対応するグループや足に対応するグループなどを分類
し、分類されたデータグループがどのように骨格構造の
上腕や足と対応するのかを予め定義しておく。通常、形
状と骨格との対応関係は、骨格構造のセグメントの親側
のサイトにそのセグメントのローカル座標系の原点を置
き、原点からどの方向(方向ベクトルと回転ベクトルと
で指定する。)にどれくらいのスケールでスキンを割り
付けるかを設定することによって決定される。骨格のセ
グメントは、複数の形状グループの中心に配置され、各
形状グループから最短距離で対応付けられる。
【0045】さらに、形状を自然に見せるためには、関
節部分でスキンが破れたりしないように設定する必要が
ある。この場合、関節部分の形状グループに対して、新
たな形状グループ(「フレクサ」と呼ぶ。)を設定し、
関節の曲げ角度に応じて、親側のセグメント、および子
側のセグメントからの曲げ角度に応じた影響を重み係数
で設定し、フレクサに含まれる形状グループを変形する
ことで実現される。
【0046】動きデータ定義部33は、動きデータ定義
部12、または動き要素データ分解部13から送信され
る動きデータを受信し、必要に応じて、受信した動きデ
ータを復元する。動き要素データ接続部35は、動きデ
ータ定義部33で復元された動きデータの基本動作同士
を滑らかに接続する。
【0047】姿勢決定部34は、骨格構造定義部31か
ら送られる骨格構造データと、形状データ対応付け部3
2から送られる骨格ごとにグループ分けされた形状デー
タと、動きデータ定義部33から送られる動きデータと
を用いて、任意の時刻における骨格の姿勢を決定する。
また、姿勢決定部34は、必要に応じて、動き要素デー
タ接続部35から送られてくる滑らかに基本動作同士が
接続された動きデータをも加味して、任意の時刻におけ
る骨格の姿勢を決定する。動き接続部36は、姿勢決定
部34で決定された骨格の姿勢を接続する。
【0048】次に、骨格構造の姿勢の決定法について説
明する。図4の骨格構造の任意の時刻(フレーム)にお
ける姿勢の決定方法には、動きデータの形式によって異
なるが、基本的には、ロボット工学を中心に開発された
キネマティックス(「運動学」とも呼ぶ。)法を用いる
(「ロボットの力学と制御''(有本著、朝倉書店)」な
どを参照)。キネマティックス法は、直鎖リンクで接続
された関節構造の初期位置に、各関節の角度データの時
間変化量を与え、親から順にジョイントの位置を決定す
ることで、直鎖の姿勢を決定する方法である。
【0049】図4に示した人間の骨格の場合、通常、ル
ートから左右の足先、ルートから左右の手先、ルートか
ら頭頂の合計5本の直鎖(例えば、右腕や右足など)に
ついて、個別に姿勢を決定する必要がある。
【0050】今、動きデータ定義部33から送られるデ
ータが各関節の角度データの場合を考える。一般に、図
4の必要なジョイントの角度データ全てが姿勢決定部3
4に与えられるので、各直鎖の姿勢は、一意的に決定さ
れる。このように、骨格構造の初期状態と、任意の時刻
におけるジョイントの角度データ(ローカル座標系での
初期位置からの回転角度)とから、骨格の姿勢を決定す
る方法をダイレクトキネマティックス(順運動学)法と
呼ぶ。
【0051】ダイレクトキネマティックス法の場合、姿
勢決定部34では、骨格構造定義部31から入力される
骨格の初期値データに対して、ルートに近い関節から順
に計算する。例えば、図5に示した骨格の親側のサイ
ト、およびセグメントの長さに対して、動きデータ定義
部33から与えられる親サイトの回転角度で決める回転
行列(3*4行列)を作用させる。その結果、子側のサ
イト位置が決まる。上記骨格の親側のサイト、およびセ
グメントの長さに対して、上記回転行列を作用させる操
作は、ジョイントの数だけ繰り返される。
【0052】ダイレクトキネマティックス法以外の姿勢
決定法として、インバースキネマティックス法が挙げら
れる。かかるインバースキネマティックスでは、図4の
骨格構造に対し計算する範囲(骨格を動かす影響範囲の
ことで、「ハンドル」と呼ぶ。)を設定する必要があ
る。図4では、例えば、右襟から右手先にハンドルを設
定する。さらに、この設定されたハンドルに対して、動
きデータ定義部33からハンドルの先端部分、つまり、
この例では、右手先の3次元仮想空間での軌跡の時系列
データが与えられる。軌跡データは、先端部の3次元座
標(XYZ軸成分)と回転角度(XYZ軸回りの回転成
分)との最大6要素を設定できるが、通常は、どちらか
3成分づつを別々に姿勢決定部34に与える。
【0053】上記インバースキネマティックス法を採用
して、ハンドルの先端部分の軌跡から骨格(ハンドルの
範囲)の姿勢を数式を用いて解く場合、拘束条件が無い
と、解が複数存在し得る。つまり、3次元仮想空間内の
骨格の姿勢が一意的に決まらない。そこで、通常は、ハ
ンドルに含まれる全ての関節角度の微小変化量の自乗和
が最小になるような評価関数(エネルギ最小化)に基づ
いて計算する。具体的な計算は、上述したダイレクトキ
ネマティックスで用いる関節角度と、先端位置の関係を
示す行列式(「ヤコビ行列」と呼び、一意的に決ま
る。)の逆行列とを計算する。この逆行列は、関節の数
がN個の場合、6*Nの行列(6は先端部の最大自由度
である。)となり、そのままでは逆行列が存在しない。
そこで、上記の拘束条件の下、疑似ヤコビ逆行列を掃き
だし法などで計算する(「ロボット工学(広瀬著、裳華
房)」など参照)。
【0054】姿勢決定部34では、上記インバースキネ
マティックスとダイレクトキネマティックスとの両方の
アルゴリズムを用途に応じて使い分けられる。さらに、
姿勢決定部34では、必要に応じて、骨格構造定義部3
1から入力される任意の関節の可動範囲データをもと
に、キネマティックスで決まる関節角度に対し設定され
た可動範囲と比較することで、関節の姿勢に制限を加え
る。つまり、キネマティックスで姿勢計算した結果、あ
る関節の角度が可動範囲を越えれば、姿勢計算で求めた
値にセットする条件判定処理を加える。上述のキネマテ
ィックス法を用いることで、骨格構造を持つキャラクタ
の姿勢が決定できる。
【0055】次に、骨格の姿勢にスキンを割り付ける方
法について説明する。上述したように、3DCGでは、
スキンデータは、ポリゴングループ、または自由曲面グ
ループで、通常、スキンの形状のモデリングには、汎用
の3DCGモデリングツールを用いる。このツールの出
力データ形式は、Dxf(AUTO DESK社製作の商品名AUTO
CADのファイルフォーマット)や、Obj(SGI社製作の
商品名Wave FRONTのファイルフォーマット) などの標準
フォーマットを利用する。
【0056】形状データ対応付け部32では、ポリゴン
グループに対して、骨格構造定義部31で定義される骨
格構造のどのセグメントを対応付けるかを設定する。例
えば、人間の上腕の形状グループが骨格の上腕のセグメ
ントと対応する場合、形状グループのモデリング座標の
原点(重心位置など)と、セグメントの親サイトの座標
原点とを一致させ、そこからのオフセット(XYZ軸方
向3成分)と形状のスケール(XYZ軸方向の拡大率)
とで配置関係を微調整する。
【0057】上述のキネマティックス法を用いて、骨格
の姿勢が決定されれば、注目するセグメントの親サイト
の位置と方向とが決まるので、上記求めた移動回転行列
をそのまま各セグメントと対応するグループの形状デー
タ(ポリゴンの頂点座標)に作用させれば、骨格の動き
に連動してスキンが移動する。
【0058】以上が基本的な骨格構造を持つCGキャラ
クタのアニメーション生成法の説明である。上述の例で
は、動きデータは、各関節の角度データ(ダイレクトキ
ネマティックスの場合)、あるいは先端部分の軌跡デー
タ(インバースキネマティックスの場合)であり、さら
に、各関節の角度データ、および先端部分の軌跡データ
の時系列データを動きデータ定義部33から順次入力す
る必要がある。一般に、インターネットで接続された、
図1に示すCGアニメーションデータの送受信系では、
CGアニメーションデータ伝送部1における通信トラフ
ィックを極力少なく押える必要がある。
【0059】つづいて、動きデータの圧縮方法について
説明する。圧縮率は、伝送路の転送性能や、送受信側の
マシンの描画性能に合わせて、階層的に圧縮率を制御で
きる必要がある。図6は骨格構造の動きの分割方法を説
明するための図である。図6を参照して、CGキャラク
タの動きデータは、(1)骨格構造の各関節の動き、な
らびに(2)体全体が3次元仮想空間内での位置、およ
び方向のデータで決定される。以下では、前者をローカ
ル情報と呼び、後者をワールド情報と呼ぶことにする。
【0060】通常のCGキャラクタアニメーションで
は、ワールド情報を図4で示した骨格構造のルートの情
報として定義し、さらにローカル情報を各関節情報とす
る。
【0061】まず、図6に示すようなCGキャラクタが
動き得る範囲を取り囲む3次元仮想空間を考える。この
3次元仮想空間の基準座標と、骨格構造のルート位置
(図6では、人間のヘソの位置)とを一致させ、ローカ
ル座標系の原点を設定する。このローカル座標系の原点
に対して、各X軸、Y軸、Z軸方向に仮想動作空間を設
定する。この仮想動作空間は、XYZ軸方向の大きさを
設定することで、全体のサイズが決まる。さらに、体の
移動に伴うワールド座標系での仮想動作空間の移動は、
キャラクタの平行移動と回転のマトリックスとで定義す
ることができる。仮想動作空間は、CGキャラクタの移
動(ワールド情報)に従って、回転または移動するもの
であり、定性的には、仮想動作空間は、ローカル座標系
でのCGキャラクタの手や足が移動し得る最大の範囲で
ある。図6では、仮想動作空間として、直方体を例に挙
げたが、CGキャラクタを中心とする球体を選んでも良
い。この場合、以下に説明する分割は、極座標系で与え
る方が都合が良い。
【0062】次に、3次元仮想空間に対し、この3次元
仮想空間を分割するようなサブ3次元仮想空間を考え
る。このサブ3次元仮想空間は、仮想動作空間を均等に
分割するものであって、そのサイズは、ローカル座標系
でのXYZ軸方向の分割ピッチdx,dy,dz、またはXYZ
軸方向の分割数(l,m,n)で量子化数を決定する。
【0063】3次元仮想空間内でCGキャラクタの動き
を設定する場合、骨格構造の各関節位置、あるいは先端
位置の軌跡を設定する必要がある。軌跡は、サブ3次元
仮想空間の識別番号、あるいは座標位置で定義する。な
お、サブ3次元仮想空間の分割ピッチを大きくとれば、
骨格構造の各関節位置、あるいは先端位置の量子化レベ
ルが下がり、データ量を削減することができる。
【0064】サブ3次元仮想空間は、送受信側のハード
ウエア、あるいは伝送系の性能に合わせて、図7に示す
ように、さらに階層的に分割した後、合成する。3次元
仮想空間内でのCGキャラクタの連続した運動の軌跡を
符号化するには、図8に示す3次元仮想空間での運動の
経過点をサブ3次元仮想空間で指定する。また、動きを
再生するのに最低限必要な情報には、動きの始点のサブ
3次元仮想空間の位置(または識別番号)、終点のサブ
3次元仮想空間の位置(または識別番号)、および動き
の始点と終点との間の補間方法の情報(直線補間、スプ
ライン補間など)である。なお、図8に示す経過点の情
報を増やせば増やすほど、運動を滑らかに再現できるも
のの、データ量は増えることになる。サブ3次元仮想空
間の識別番号が与えられたときに、受信側で、3次元仮
想空間内の座標に変換するには、例えば、サブ3次元仮
想空間の重心位置、およびローカル座標の原点からの相
対位置を用いて変換する。この場合、サブ3次元仮想空
間のサイズ分の量子化誤差が生じる。
【0065】図1で示したCGキャラクタの骨格データ
の送受信系における上述のデータの流れを整理すると、
まず、動き要素データ分解部13において、伝送したい
CGキャラクタに対し、3次元仮想空間のワールド座標
系での位置、および方向(ワールド情報)を表す移動回
転マトリックス、図6の仮想的な動作空間のサイズ、お
よびサブ3次元仮想空間への分割ピッチ(dx,dy,dz)を
伝送する。次に、必要に応じて、動きのデータとして、
CGキャラクタの腕や足の単位で、腕や足の骨格が移動
する3次元軌跡の始点と終点とのサブ3次元仮想空間の
位置、または識別番号、経過点のサブ空間位置または経
過点情報、および3次元軌跡の始点と終点との間の接続
方法を必要に応じて転送する。そうすると、受信側の動
きデータ要素接続部35では、上記転送データを解釈
(復元)して、図6に示すCGキャラクタの3次元軌跡
を補間することで、CGキャラクタの動きを再生する。
【0066】なお、上記の説明では、説明を簡素化する
ために、先端部分の軌跡のみを設定する方法を例に挙げ
て説明したが、姿勢決定部34において、ダイレクトキ
ネマティックスを採用して、姿勢を決定する場合も同様
に、必要な骨格の全ての関節の経過位置から求めた角度
情報をサブ3次元仮想空間の情報で転送すれば良い。
【0067】次に、サブ3次元仮想空間が姿勢決定部3
4に与えられた場合、送信、あるいは受信側で関節の角
度データを求める方法を図9に示す。図9を参照して、
関節の位置の初期位置(図9の球の中心位置)は、骨格
構造定義部11、および骨格構造定義部31で設定され
る。次に、ある時刻でのサブ3次元仮想空間内の位置、
あるいは識別番号が姿勢決定部34に与えられた場合、
サブ3次元仮想空間の重心位置座標が計算できる。サブ
3次元仮想空間内の位置、あるいは識別番号、およびサ
ブ3次元仮想空間の大きさと、既に知られているセグメ
ントの長さとをもとにローカル座標系での各軸回りの回
転角度(θx ,θy , θz )を計算する。この場合回転
の順序(X−Y−Zなど)は予め決めておく必要があ
る。
【0068】姿勢決定部34で、インバースキネマティ
ックス法を採用して、姿勢を決定する場合、図CGアニ
メーションデータ送信部1では、骨格構造のハンドル情
報と、骨格の先端位置での軌跡情報とを動き要素データ
分解部13から転送する。
【0069】ここまでの説明では、骨格の捻れ(ローカ
ル座標系でのZ軸回りの回転)の情報は、正確に規定し
ていなかった。関節の定義部分(図5(b)のJoint 情
報)で、関節の自由度がBallの場合は、XYZ軸の3軸
回りに回転可能であって、もし捻れを制限する場合は、
Z軸回りの回転を無視する。ところが、人間などでは、
腰、首、および手首などの関節は捻れが姿勢に大きく影
響し、特に、CGキャラクタは、手首が返っているかな
どの情報を正確に表現する必要がある。この場合、上記
の説明とは別に、捻れの情報(Z軸回りの回転角度)を
サブ3次元仮想空間情報に付加して、別途、送受信する
必要がある。例えば、図11(a)に示す例では、時刻
toでの手首の捻れ角度がθo 、時刻t1での捻れ角度がθ
1 を送受信し、姿勢決定部34で決まる骨格の関節角度
のうち、捻れが必要な部分のみ、θo からθ1 までの間
を補間した角度データに置き換える。
【0070】次に、基本の動作(「右手を上げる」と
か、「手を振る」などの連続した動作)同士を接続する
方法について説明する。例えば、CGキャラクタの基本
動作として、(1)右手を体の左下の仮想的な動作空間
から体の中心の仮想的な動作空間を通過し、右上方の仮
想的な動作空間へ移動する動きと、(2)右上方の仮想
的な動作空間から体の前方方向の仮想的な動作空間に手
を伸ばす動作を繋ぐ場合とを例に挙げる。
【0071】図11(a)は2つの基本動作の接続を説
明する概念図である。図11(a)を参照して、時刻t0
から時刻t1の間の動きが上記(1)の基本動作に、また
時刻t2から時刻t3までの動きが上記(2)の基本動作
に、それぞれ、対応するものとする。動き要素データ分
解部12で、仮想的な動作空間情報に分解し、始点のサ
ブ3次元仮想空間情報、および終点のサブ3次元仮想空
間情報、あるいは必要に応じて、始点と終点との間の経
過点のサブ3次元仮想空間情報を補間方法とともに転送
する。CGアニメーションデータ受信部3では、動き要
素接続部35において、サブ3次元仮想空間を解釈し、
基本動作ごとの軌跡情報を復元する。さらに、動き要素
データ接続部35で、基本動作(1)と基本動作(2)
とを接続する。
【0072】図11(b)は時間軸を基準に通常の基本
動作同士の接続状態を表した図である。図11(b)を
参照して、時刻t1での動作空間情報から基本動作(1)
の終点位置を復元できる。これを右手の関節のエンドサ
イト(右手の先端)の位置、または関節角度データに変
換したのが図11(b)のグラフである。また、同様
に、時刻t2での動作空間位置から時刻t2における右手先
の角度、あるいは座標値が復元できる。これらの基本動
作を接続するための接続情報として、基本動作(1)の
時刻負方向にどれだけ遡るか(時刻負方向の値)の情
報、例えば、t1′と、基本動作(2)の時刻正方向にど
れだけ経過するか、例えば、t2′とを設定する必要があ
る。なお、この値は、送受信側で固定値をデフォルトと
して持たせてもよい。これらの情報を用いて、図11の
時刻t1′,t1,t2,t2′における右手先端部の座標値を
用いて、補間処理を行なう。なお、図11(b)の白丸
は、一般に、これらの値はXYZ軸の3成分を持つが、
ここでは説明の簡略化のために、1成分のみを示してい
る。
【0073】また、これらの点の補間法として、直線補
間、あるいはスプライン補間などの情報を送受信側で予
め設定しておく。さらに、接続を滑らかに行なうには、
必要に応じて、時刻t1と時刻t2との間に補間情報となる
サブ3次元仮想空間情報を転送する(図11の時刻t1と
t2との間の点)。上述の例では、姿勢決定部34で、イ
ンバースキネマティックス法を採用して、骨格の姿勢を
決定する場合を例に挙げて説明したが、ダイレクトキネ
マティックス法による姿勢決定の場合も、各関節の情報
が姿勢決定部34に与えられるだけで、基本動作の接続
に関しては、全く同じ原理である。
【0074】以上の方法を用いることで、予め転送され
た複数の基本動作をもとに複数の基本動作を繋ぎ合わせ
たり、新たな仮想的な動作空間情報、および補間情報の
みを送ることで、基本動作を変更した新たな動きを極め
て少ないデータ量で生成することができる。
【0075】つづいて、上述の基本動作の始点や終点、
あるいはキーとなる経過点情報の作成方法について説明
する。3次元仮想空間内でのCGキャラクタの基本動作
は、上述のように、注目するCGキャラクタが3次元仮
想空間内のどのあたりを、どのような軌跡に沿って移動
しているか(ワールド情報)と、注目するCGキャラク
タの軌跡上のある時刻において、CGキャラクタの手や
足がどのような姿勢(運動)を取るか(ローカル情報)
とに分けられる。前者は、任意の時刻における図4の骨
格構造のルートの平行移動量(Xtrans, Ytrans, Ztran
s)、および方向(Xrot, Yrot, Zrot)で定義できる。
一方、後者は、各関節、または先端部分の角度(Xrot,
Yrot, Zrot)、あるいは3次元座標(Xtrans, Ytrans,
Ztrans)で定義される。これらの情報は、共に時系列の
データ、あるいは上述した仮想的な動作空間情報とし
て、送信系から受信系に送られる。
【0076】基本動作そのものを設定する場合、通常
は、モーションキャプチャと呼ばれる手法を用いる。以
下では、まず、モーションキャプチャを用いた動きデー
タの作成方法を説明する。モーションキャプチャは、体
の関節部分に光を反射するマーカを取り付けたモデルに
所望の動きをさせながら、複数のカメラで撮影する。2
台以上のカメラで撮影したあるマーカの2次元画像をも
とに、そのマーカの3次元座標、または骨格構造に対応
させたときの角度データを算出する(特願平7−312
005号などを参照)。モーションキャプチャされたC
Gキャラクタの動きは、図4に示した骨格構造の各関節
の角度データ(時系列)である。このデータは、図11
(a)の例では、時刻t0から時刻t1までの運動の軌跡1
や、時刻t2から時刻t3までの運動の軌跡2に対応する。
【0077】上記骨格構造の各関節の角度データをそれ
ぞれ基本動作として、動きデータ定義部12から、時系
列データでCGアニメーションデータ伝送部2に送り、
動きデータ定義部33で、解釈するのが基本の動き送受
信方法である。これに対し、動きのデータ量を削減した
い場合、軌跡上の経過点情報をサンプリングし、サンプ
リングされた軌跡上の経過点情報を接続方法とともに送
受信する方法がある。
【0078】さらに、送受信データを圧縮して再利用す
る必要がある場合は、図6に示した仮想的な動作空間デ
ータに分解する必要がある。この場合、モーションキャ
プチャした軌跡データをもとに、動き要素データ分解部
13で、図6のCGキャラクタの仮想的な動作空間に量
子化(ベクトル量子化)し、仮想的な動作空間データの
位置、または識別番号に分解する。動き要素データ接続
部35では、受信した仮想的な動作空間データから接続
方法の情報を用いてモーションキャプチャされた動きの
軌跡を復元する。
【0079】次に、モーションキャプチャなどを用いる
ことなく、動きデータを作成する方法を簡単に説明す
る。図6に示したCGキャラクタの骨格構造と、仮想的
な動作空間を設定する。CGキャラクタの初期状態は、
図10に示したものとなる。仮想的な動作空間をサブ3
次元仮想空間に分割し、この分割されたサブ3次元仮想
空間の識別番号などで位置を指定していく。
【0080】図12に簡単な右手の姿勢の設定例を示
す。図12を参照して、まず、ステップ1として、右手
先の始点位置を決める。例えば、始点を顔の右前とする
と、顔の右前近傍のサブ3次元仮想空間の番号を設定す
る。その結果を、例えば、インバースキネマティックス
法を採用して、右手の姿勢を決定して表示する。なお、
この場合、簡単なブラウザとして、キネマティックと表
示系とが必要である。右手の位置が思いのものと異なる
場合は、現在のブロック番号、あるいは位置から、移動
させたいXYZ軸方向(ローカル座標系)のサブ3次元
仮想空間のステップ数を設定することで、新たなサブ3
次元仮想空間を設定する(ステップ2)。ステップ2の
操作を繰り返すことで、所望の位置を設定できる。この
指定法の利点は、例えば、もう少し右や後ろなどと、人
間が動作の振付けを行なう要領で、大体の位置の設定が
できるところにある。この指定を必要な始点位置、終点
位置、および経過点のサブ3次元仮想空間に対して設定
する(ステップn、ステップn+1など)。
【0081】ここまでの説明では、主に骨格の動きの設
定を中心に説明した。CGキャラクタとして、実際に欲
しいのは、上記の骨格の姿勢にバインドされたスキン情
報である。既に説明したように、スキン形状と骨格のセ
グメントとは、ローカル座標位置を共用することで割り
付けることができる。キネマティックス法では、動かす
必要がある部分に骨格を設定する必要がある。図4、あ
るいは図10に示したのが一般に使われる骨格の階層関
係である。ところが、例えば、手が開いているとか指の
曲げ具合いなど人間の指先の形を設定したい場合は、同
様に、指の骨格を定義すれば良いが、単に、指の骨格を
定義しただけでは、データ量が増加してしまう。
【0082】そこで、データ量を削減するべく、手の形
状を固定にして、必要に応じて所望の形状データを入れ
換える方法について説明する。図4に示した階層構造の
右手や左手のジョイントにバインドする形状データとし
て、例えば、手を広げた形状や握った形状などを予め用
意する。さらに、図11で示したように、右手の動きが
与えられたときに、動き要素データ分解部13でサブ3
次元仮想空間の情報とともに、手首にバインドする形状
データの種類、および捻れ情報を付加して転送する。動
き要素データ接続部35では、サブ3次元仮想空間空間
情報で動きの軌跡を復元し、同時に、手首の捻れと、手
首にバインドされる形状とがどのようなものかを判断
し、この判断に基づいて切替えて表示することで、手先
の形状を正確に再生できる。
【0083】次に、CGキャラクタの再生において、重
要となる表情の表現法について説明する。表情をリアル
に表現する場合、図4に示す階層の首に対応するジョイ
ントに頭の形状をバインドさせることができるが、体の
動きに同期させて、「笑ったり」、「怒ったり」といっ
た表情を再現するのは難しい。そこで、表情は、実写の
動画を頭の形状にマッピングする方法を用いる。
【0084】図10は表情のマッピングを説明するため
の概念図である。図10を参照して、マッピングを施す
場合の頭の形状は、球や円柱が基本で、必要に応じて、
顔の凹凸を再現した形状データを用いる。この形状にマ
ッピング座標、または投影方向などのマッピング方法を
設定する。さらに、首が右を向いたり、左を向いたりし
て骨格の首が回る場合を考慮して、マッピングデータと
して、人間の顔を複数(通常は顔を取り囲む円上)のカ
メラ位置から見たときの表情の動画列(MPEG2(Mot
ion Picture Experts Group phase2) 圧縮画像)を用意
する。首の方向が決まると、表情のマッピングデータを
どの動画列(視点に依存するデータである。)から選ぶ
かが決まり、必要に応じて、複数の動画列から対応する
時間の画像データの対応する画素同士を対応する画素に
対して視線からの角度で重み付け、いわゆるマージして
表示する。例えば、CGキャラクタを観察する視点が図
10(b)に示すAとBの間の場合、動画列データとし
て、A,Bを選択し、A,B、および視点からキャラク
タの重心を見たときの角度の隔たりに応じた重み(角度
差に比例する。)を決定する。
【0085】CGアニメーションデータ送信部1では、
表情の動画列をMPEG2などを用いて、圧縮したデー
タとカメラ位置とを転送する機構が必要である。一方、
CGアニメーションデータ受信部2では、圧縮して転送
された動画列を復元し、カメラの位置をもとにどの視点
の画像かを選択してマッピングする機構が必要である。
なお、動画のマッピング法については、「Foley & Van
Dam et. al.,: Computer Graphics Principles and Pra
ctice II, Addison Wesley」を参照されたい。
【0086】図13は右手、左手、および頭の3本のハ
ンドルに対する動きのスクリプト表記の一例を示す図で
ある。図13を参照して、軌跡情報として、始点、終
点、および経過点のサブ3次元仮想空間の番号を設定
し、実際の再現時間を付加情報として転送する。この例
では、補間方法として、スプラインを指定している。
【0087】図14はCG骨格構造の動きデータの送受
信法の一例を示す図である。図14を参照して、CGア
ニメーションデータ送信部1とCGアニメーションデー
タ送信部2との間で、サブ3次元仮想空間で表現した動
きのデータの実体と、動きの記述言語(例えば13図)
とを送受信することで、種々の計算、および描画等の性
能、ならびにOS(Operating System)などのハードウエ
アに依存しない、CGアニメーションデータの送受信が
可能になる。
【0088】最後に、CGキャラクタが複数存在する場
合、複数のCGキャラクタのうち2者の衝突チェックを
行なう方法について簡単に説明する。図6に示したよう
に、サブ3次元仮想空間で動きを表現する利点の1つに
衝突チェックの計算の簡易化がある。例えば、一方の腕
と他方の手とが衝突するかどうかを大雑把に判定する場
合、まず、一方のキャラクタの注目する腕に含まれるセ
グメントのバウンダリを考える。バウンダリは、図4に
示す骨格構造の腕の親サイト、および子サイトで決まる
直方体とする。直方体の底面積は、スキンのサイズで決
まり、通常の人間では、体格に合わせて固定の値であ
る。このバウンダリと、他方のキャラクタのサブ3次元
仮想空間(直方体)との衝突判定を行なえば、簡単に大
まかな判定が可能になる。さらに、衝突を詳しく判定し
たい場合は、上記のバウンダリに含まれる形状データ
(ポリゴングループの全頂点)について衝突判定をすれ
ば良い。このサブ3次元仮想空間での衝突判定(バウン
ダリと注目点との内外判定)をすることで、衝突チェッ
クの計算の大幅な簡略化(高速化)が実現される。な
お、本発明は上記実施の形態に限定されるものではな
く、本発明の請求の範囲内での種々の設計変更、および
修正を加え得ることは勿論である。
【0089】
【発明の効果】以上の説明から明らかな通り、本発明に
よると、人間のような複雑な構造を持つキャラクタの3
次元の動きを送受信する場合、人間の階層を骨格構造で
定義し、その構造を一部の間接の3次元仮想空間内での
移動量を時系列または代表的な動きの要素とその接続方
法を付加して送受信することで、ネットワークをベース
とした送受信系でのキャラクタの自然で滑らかな運動を
送受信でき、転送時のデータ量も大幅に減少できる。
【図面の簡単な説明】
【図1】本発明の一実施の形態にかかる3次元骨格構造
の動き送受信装置の構成を示すブロック図である。
【図2】CGアニメーションデータ送信部の構成の一例
を示すブロック図である。
【図3】CGアニメーションデータ受信部の構成の一例
を示すブロック図である。
【図4】人間の骨格構造の階層関係の一例を示す図であ
る。
【図5】骨格構造のデータ形式の一例を示す図である。
【図6】骨格構造の動きの分割方法を説明するための図
である。
【図7】動きの分割サブ3次元仮想空間を説明するため
の図である。
【図8】動きの分割サブ3次元仮想空間から運動の軌跡
への復元を説明するための図である。
【図9】サブ3次元仮想空間が与えられたときに関節の
角度に変更する方法を説明するための図である。
【図10】人間の基本的な骨格と顔の形状とにマッピン
グする方法の一例を示す図である。
【図11】基本的な動きの同士の接続を説明するための
図である。
【図12】人間の運動から動きデータを生成するシーケ
ンスの一例を説明するための図である。
【図13】CG骨格構造の動きデータのスクリプト表現
の一例を説明するための図である。
【図14】CG骨格構造の動きデータの送受信法の一例
を示す図である。
【符号の説明】
1 CGアニメーションデータ送信部 2 CGアニメーションデータ伝送部 3 CGアニメーションデータ受信部 11 骨格構造定義部 12 動きデータ定義部 13 動き要素データ分解部 31 骨格構造定義部 32 形状データ対応付け部 33 動きデータ定義部 34 姿勢決定部 35 動きデータ接続部 36 動き接続部

Claims (18)

    【特許請求の範囲】
  1. 【請求項1】 送信側から3次元コンピュータグラフィ
    ックスにおける骨格構造の動きデータを受信側に送信
    し、受信側で送信されてきた骨格構造の動きデータをも
    とにアニメーションを生成するための装置であって、 上記受信側からの要求に応じて、上記骨格構造の階層関
    係を定義する階層データ、この階層データの初期状態、
    骨格の関節の制約条件、骨格に対応付ける形状データ、
    上記骨格構造との対応関係データを含む初期情報に付加
    して、上記骨格構造の動きデータを、時系列データとし
    て送信するか、3次元仮想空間内での動きの特徴となる
    要素データに分解し、この分解された要素データに当該
    要素データの接続方法を付加したデータとして送信する
    か否かを決定し、この決定された送信態様で上記初期情
    報に上記骨格構造の動きデータを付加して送信するため
    の送信手段と、 送信側コンピュータ上にある送信ブロクラムと受信側コ
    ンピュータ上にある受信プログラムとによって、上記初
    期情報に上記骨格構造の動きデータを付加したコンピュ
    ータグラフィックスアニメーションデータを送信側コン
    ピュータから受信側コンピュータに伝送するための伝送
    手段と、 上記伝送手段から伝送されてきた上記コンピュータグラ
    フィックスアニメーションデータを受信し、この受信し
    た上記コンピュータグラフィックスアニメーションデー
    タの送信態様を判別し、上記初期情報に付加される上記
    骨格構造の動きデータが時系列的データとして送信され
    てきたと判別したときには、上記初期情報、および時系
    列的データとして送信されてきた上記骨格構造の動きデ
    ータを解釈し、運動学に基づいて上記骨格構造の姿勢を
    決定する一方、上記初期情報に付加される上記骨格構造
    の動きデータが3次元仮想空間内での動きの特徴となる
    要素データに分解され、この分解された要素データに当
    該要素データの接続方法が付加されたデータとして送信
    されてきたと判別されたときには、上記初期情報、およ
    び分解された要素データにこの要素データの接続方法が
    付加されたデータとして送信されてきた上記骨格構造の
    動きデータを解釈し、運動学に基づいて上記骨格構造の
    姿勢を決定するための受信手段とを含むことを特徴とす
    る3次元骨格構造の動き送受信装置。
  2. 【請求項2】 送信側から3次元コンピュータグラフィ
    ックスにおける骨格構造の動きデータを受信側に送信
    し、受信側で送信されてきた骨格構造の動きデータをも
    とにアニメーションを生成するための装置であって、 上記受信側からの要求に応じて、上記骨格構造の階層関
    係を定義する階層データ、この階層データの初期状態、
    骨格の関節の制約条件、骨格に対応付ける形状データ、
    上記骨格構造との対応関係データ、上記形状データの一
    部に対して動画マッピングする動画データ列、およびマ
    ッピング方法を含む初期情報に付加して、上記骨格構造
    の動きデータを、時系列データとして送信するか、3次
    元仮想空間内での動きの特徴となる要素データに分解
    し、この分解された要素データに当該要素データの接続
    方法を付加したデータとして送信するか否かを決定し、
    この決定された送信態様で上記初期情報に上記骨格構造
    の動きデータを付加して送信するための送信手段と、 送信側コンピュータ上にある送信ブロクラムと受信側コ
    ンピュータ上にある受信プログラムとによって、上記初
    期情報に上記骨格構造の動きデータを付加したコンピュ
    ータグラフィックスアニメーションデータを送信側コン
    ピュータから受信側コンピュータに伝送するための伝送
    手段と、 上記伝送手段から伝送されてきた上記コンピュータグラ
    フィックスアニメーションデータを受信し、この受信し
    た上記コンピュータグラフィックスアニメーションデー
    タの送信態様を判別し、上記初期情報に付加される上記
    骨格構造の動きデータが時系列的データとして送信され
    てきたと判別したときには、上記初期情報、および時系
    列的データとして送信されてきた上記骨格構造の動きデ
    ータを解釈し、運動学に基づいて上記骨格構造の姿勢を
    決定する一方、上記初期情報に付加される上記骨格構造
    の動きデータが3次元仮想空間内での動きの特徴となる
    要素データに分解され、この分解された要素データに当
    該要素データの接続方法が付加されたデータとして送信
    されてきたと判別されたときには、上記初期情報、およ
    び分解された要素データにこの要素データの接続方法が
    付加されたデータとして送信されてきた上記骨格構造の
    動きデータを解釈し、運動学に基づいて上記骨格構造の
    姿勢を決定するための受信手段とを含むことを特徴とす
    る3次元骨格構造の動き送受信装置。
  3. 【請求項3】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記送信手段は、 上記骨格構造を定義し、この定義された骨格構造データ
    を初期情報として送信するための手段と、 上記骨格構造の予め定める部分の運動の3次元仮想空間
    での軌跡を基に代表的な要素データに分解し、この分解
    された要素データに当該要素データの接続方法を付加し
    て送信するための手段とを含み、 上記受信手段は、 伝送されてきた骨格構造データを初期情報として復元す
    るための手段と、 初期状態として復元された骨格構造データに対応付ける
    形状データを上記骨格構造に割り付けるための手段と、 伝送されてきた要素データ、および伝送されてきた要素
    データの接続方法から上記骨格構造の姿勢を決定するた
    めの手段とを含むことを特徴とする3次元骨格構造の動
    き送受信装置。
  4. 【請求項4】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記送信手段は、 上記骨格構造、およびこの骨格構造の動き情報を送信す
    るための手段と、 上記骨格構造の一部に対応付ける動画像データ列を圧縮
    し、この圧縮された動画像データ列に上記骨格構造の運
    動に応じて動画像を変更する方法を付加して送信するた
    めの手段とを含み、 上記受信手段は、 伝送されてきた上記骨格構造、およびこの骨格構造の動
    き情報を復元するための手段と、 伝送されてきた上記骨格構造の一部に対応付ける動画像
    データ列を復元し、伝送されてきた上記骨格構造の運動
    に応じて動画像を変更する方法を用いることによって、
    上記骨格構造の姿勢を決定するための手段とを含むこと
    を特徴とする3次元骨格構造の動き送受信装置。
  5. 【請求項5】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記送信部手段は、 送信する上記骨格構造における3次元仮想空間内での動
    きデータに関する要素データを決定するべく、 送信の対象となるCGキャラクタに対して、このキャラ
    クタの主要位置にローカル座標系を設定するための手段
    と、 ローカル座標系が設定された上記キャラクタが動き得る
    稼働範囲を包含するような3次元仮想空間を考え、3次
    元仮想空間をこの3次元仮想空間に相似するサブ3次元
    仮想空間に分割し、このサブ3次元仮想空間をさらに階
    層的に分割して、サブ3次元仮想空間の大きさ、サブ3
    次元仮想空間の分割サイズ、上記キャラクタの移動に伴
    うローカル座標系での回転移動行列、および階層化され
    たサブ3次元仮想空間の位置に関連する情報から、上記
    キャラクタの骨格構造の現在注目する部分が3次元仮想
    空間内のどの位置に存在するかを表すための手段とを含
    み、 上記受信手段は、 伝送されてきた上記骨格構造における3次元仮想空間内
    での動きデータに関する要素データをもとに上記骨格構
    造の姿勢を決定するべく、 伝送されてきた上記キャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、および階層化されたサブ3次元
    仮想空間の位置に関連する情報から、上記キャラクタの
    骨格構造の現在注目する部分が3次元仮想空間内のどの
    位置に存在するかを復元するための手段を含むことを特
    徴とする3次元骨格構造の動き送受信装置。
  6. 【請求項6】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記送信部手段は、 送信する上記骨格構造における3次元仮想空間内での動
    きデータに関する要素データを決定するべく、 送信の対象となるCGキャラクタに対して、このキャラ
    クタの主要位置にローカル座標系を設定するための手段
    と、 ローカル座標系が設定された上記キャラクタが動き得る
    稼働範囲を包含するような3次元仮想空間を考え、3次
    元仮想空間をこの3次元仮想空間に相似するサブ3次元
    仮想空間に分割し、このサブ3次元仮想空間をさらに階
    層的に分割し、サブ3次元仮想空間の大きさ、サブ3次
    元仮想空間の分割サイズ、上記キャラクタの移動に伴う
    ローカル座標系での回転移動行列、および階層化された
    サブ3次元仮想空間の位置に関連する情報から、上記キ
    ャラクタの骨格構造の現在注目する部分が3次元仮想空
    間内のどの位置に存在するかを表すための手段と、 3次元仮想空間内での上記キャラクタの骨格構造の現在
    注目する部分の位置が離れていることを条件として、上
    記コンピュータグラフィックスアニメーションデータに
    互いに離れているブロック同士を空間的に補間する補間
    情報を付加するための手段とを含み、 上記受信手段は、 伝送されきた上記骨格構造における3次元仮想空間内で
    の動きデータに関する要素データをもとに上記骨格構造
    の姿勢を決定するべく、 伝送されてきた上記キャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、および階層化されたサブ3次元
    仮想空間の位置に関連する情報から、上記キャラクタの
    骨格構造の現在注目する部分が3次元仮想空間内のどの
    位置に存在するかを復元するための手段と、 3次元仮想空間内での上記キャラクタの骨格構造の現在
    注目する部分の位置が離れていることを条件として、伝
    送されてきた補間情報をもとに互いに離れているブロッ
    ク同士を空間的に補間することによって、上記キャラク
    タの骨格構造の連続的な姿勢を復元するための手段とを
    含むことを特徴とする3次元骨格構造の動き送受信装
    置。
  7. 【請求項7】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記送信手段は、 送信する上記骨格構造における3次元仮想空間内での動
    きデータに関する要素データを決定するべく、 送信の対象となるCGキャラクタに対して、このキャラ
    クタの主要位置にローカル座標系を設定するための手段
    と、 ローカル座標系が設定された上記キャラクタが動き得る
    稼働範囲を包含するような3次元仮想空間を考え、3次
    元仮想空間をこの3次元仮想空間に相似するサブ3次元
    仮想空間に分割し、このサブ3次元仮想空間を階層的に
    さらに分割して、サブ3次元仮想空間の大きさ、サブ3
    次元仮想空間の分割サイズ、上記キャラクタの移動に伴
    うローカル座標系での回転移動行列、および階層化され
    たサブ3次元仮想空間の位置に関連する情報から、上記
    キャラクタの骨格構造の現在注目する部分が3次元仮想
    空間内のどの位置に存在するかを表すための手段と、 上記キャラクタの骨格構造における任意に指定する部分
    の3次元角度情報を上記コンピュータグラフィックスア
    ニメーションデータに付加するための手段とを含み、 上記受信手段は、 伝送されてきた上記骨格構造における3次元仮想空間内
    での動きデータに関する要素データをもとに上記骨格構
    造の姿勢を決定するべく、 伝送されてきた上記キャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、および階層化されたサブ3次元
    仮想空間の位置に関連する情報から、上記キャラクタの
    骨格構造の現在注目する部分が3次元仮想空間内のどの
    位置に存在するかを復元するための手段と、 上記キャラクタの骨格構造における任意に指定する部分
    の3次元角度情報から上記キャラクタの骨格構造の姿
    勢、および形状を復元するための手段とを含むことを特
    徴とする3次元骨格構造の動き送受信装置。
  8. 【請求項8】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記受信手段は、 伝送されてきた上記骨格構造の3次元仮想空間内での動
    きの衝突を検出するべく、 伝送されてきたCGキャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、階層化されたサブ3次元仮想空
    間の位置に関連する情報から、上記キャラクタの骨格構
    造の現在注目する部分が他の対象物と衝突するかどうか
    の判定を分割されたサブ3次元仮想空間同士で行なうた
    めの手段を含むことを特徴とする3次元骨格構造の動き
    送受信装置。
  9. 【請求項9】 請求項1または2に記載の3次元骨格構
    造の動き送受信装置において、 上記送信手段は、 送信する上記骨格構造の3次元仮想空間内での動き位置
    を設定するべく、 送信の対象となるCGキャラクタの3次元仮想空間内で
    の位置を、当該キャラクタが動き得る稼働範囲を包含す
    るような3次元仮想空間、およびこの3次元仮想空間を
    分割したサブ3次元仮想空間のうちいずれか一方の位置
    に関連する情報で指定するための手段と、 上記キャラクタの3次元仮想空間内での位置を変更する
    ことを条件として、サブ3次元仮想空間に隣接するサブ
    3次元仮想の位置に関連する情報を上記キャラクタの骨
    格構造に与えることによって、上記キャラクタの3次元
    仮想区間内での位置を変更するための手段とを含み、 上記受信手段は、 伝送されてきた上記骨格構造の3次元仮想空間内での動
    き位置を設定するべく、 受信の対象となる上記キャラクタの3次元仮想空間内で
    の位置を、伝送された上記キャラクタが動き得る稼働範
    囲を包含するような3次元仮想空間、およびこの3次元
    仮想空間を分割したサブ3次元仮想空間のいずれか一方
    の位置に関連する情報で決定するための手段と、 上記送信手段側で上記キャラクタの3次元仮想空間内で
    の位置が変更されたことを条件として、伝送されてきた
    サブ3次元仮想空間に隣接するサブ3次元仮想空間の位
    置に関連する情報をもとに上記キャラクタの3次元仮想
    区間内での位置を変更するための手段とを含むことを特
    徴とする3次元骨格構造の動き送受信装置。
  10. 【請求項10】 送信側から3次元コンピュータグラフ
    ィックスにおける骨格構造の動きデータを受信側に送信
    し、受信側で送信されてきた骨格構造の動きデータをも
    とにアニメーションを生成するための方法であって、 上記受信側からの要求に応じて、上記骨格構造の階層関
    係を定義する階層データ、この階層データの初期状態、
    骨格の関節の制約条件、骨格に対応付ける形状データ、
    上記骨格構造との対応関係データを含む初期情報に付加
    して、上記骨格構造の動きデータを、時系列データとし
    て送信するか、3次元仮想空間内での動きの特徴となる
    要素データに分解し、この分解された要素データに当該
    要素データの接続方法を付加したデータとして送信する
    か否かを決定し、この決定された送信態様で上記初期情
    報に上記骨格構造の動きデータを付加して送信するため
    の送信ステップと、 送信側コンピュータ上にある送信ブロクラムと受信側コ
    ンピュータ上にある受信プログラムとによって、上記初
    期情報に上記骨格構造の動きデータを付加したコンピュ
    ータグラフィックスアニメーションデータを送信側コン
    ピュータから受信側コンピュータに伝送するための伝送
    ステップと、 上記伝送ステップから伝送されてきた上記コンピュータ
    グラフィックスアニメーションデータを受信し、この受
    信した上記コンピュータグラフィックスアニメーション
    データの送信態様を判別し、上記初期情報に付加される
    上記骨格構造の動きデータが時系列的データとして送信
    されてきたと判別したときには、上記初期情報、および
    時系列的データとして送信されてきた上記骨格構造の動
    きデータを解釈し、運動学に基づいて上記骨格構造の姿
    勢を決定する一方、上記初期情報に付加される上記骨格
    構造の動きデータが3次元仮想空間内での動きの特徴と
    なる要素データに分解され、この分解された要素データ
    に当該要素データの接続方法が付加されたデータとして
    送信されてきたと判別されたときには、上記初期情報、
    および分解された要素データにこの要素データの接続方
    法が付加されたデータとして送信されてきた上記骨格構
    造の動きデータを解釈し、運動学に基づいて上記骨格構
    造の姿勢を決定するための受信ステップとを含むことを
    特徴とする3次元骨格構造の動き送受信方法。
  11. 【請求項11】 送信側から3次元コンピュータグラフ
    ィックスにおける骨格構造の動きデータを受信側に送信
    し、受信側で送信されてきた骨格構造の動きデータをも
    とにアニメーションを生成するための方法であって、 上記受信側からの要求に応じて、上記骨格構造の階層関
    係を定義する階層データ、この階層データの初期状態、
    骨格の関節の制約条件、骨格に対応付ける形状データ、
    上記骨格構造との対応関係データ、上記形状データの一
    部に対して動画マッピングする動画データ列、およびマ
    ッピング方法を含む初期情報に付加して、上記骨格構造
    の動きデータを、時系列データとして送信するか、3次
    元仮想空間内での動きの特徴となる要素データに分解
    し、この分解された要素データに当該要素データの接続
    方法を付加したデータとして送信するか否かを決定し、
    この決定された送信態様で上記初期情報に上記骨格構造
    の動きデータを付加して送信するための送信ステップ
    と、 送信側コンピュータ上にある送信プログラムと受信側コ
    ンピュータ上にある受信プログラムとによって、上記初
    期情報に上記骨格構造の動きデータを付加したコンピュ
    ータグラフィックスアニメーションデータを送信側コン
    ピュータから受信側コンピュータに伝送するための伝送
    ステップと、 上記伝送ステップから伝送されてきた上記コンピュータ
    グラフィックスアニメーションデータを受信し、この受
    信した上記コンピュータグラフィックスアニメーション
    データの送信態様を判別し、上記初期情報に付加される
    上記骨格構造の動きデータが時系列的データとして送信
    されてきたと判別したときには、上記初期情報、および
    時系列的データとして送信されてきた上記骨格構造の動
    きデータを解釈し、運動学に基づいて上記骨格構造の姿
    勢を決定する一方、上記初期情報に付加される上記骨格
    構造の動きデータが3次元仮想空間内での動きの特徴と
    なる要素データに分解され、この分解された要素データ
    に当該要素データの接続方法が付加されたデータとして
    送信されてきたと判別されたときには、上記初期情報、
    および分解された要素データにこの要素データの接続方
    法が付加されたデータとして送信されてきた上記骨格構
    造の動きデータを解釈し、運動学に基づいて上記骨格構
    造の姿勢を決定するための受信ステップとを含むことを
    特徴とする3次元骨格構造の動き送受信方法。
  12. 【請求項12】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記送信ステップは、 上記骨格構造を定義し、この定義された骨格構造データ
    を初期情報として送信するステップと、 上記骨格構造の予め定める部分の運動の3次元仮想空間
    での軌跡を基に代表的な要素データに分解し、この分解
    された要素データに当該要素データの接続方法を付加し
    て送信するステップとを含み、 上記受信ステップは、 伝送されてきた骨格構造データを初期情報として復元す
    るステップと、 初期状態として復元された骨格構造データに対応付ける
    形状データを上記骨格構造に割り付けるステップと、 伝送されてきた要素データ、および伝送されてきた要素
    データの接続方法から上記骨格構造の姿勢を決定するス
    テップとを含むことを特徴とする3次元骨格構造の動き
    送受信方法。
  13. 【請求項13】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記送信ステップは、 上記骨格構造、およびこの骨格構造の動き情報を送信す
    るステップと、 上記骨格構造の一部に対応付ける動画像データ列を圧縮
    し、この圧縮された動画像データ列に上記骨格構造の運
    動に応じて動画像を変更する方法を付加して送信するス
    テップとを含み、 上記受信ステップは、 伝送されてきた上記骨格構造、およびこの骨格構造の動
    き情報を復元するステップと、 伝送されてきた上記骨格構造の一部に対応付ける動画像
    データ列を復元し、伝送されてきた上記骨格構造の運動
    に応じて動画像を変更する方法を用いることによって、
    上記骨格構造の姿勢を決定するステップとを含むことを
    特徴とする3次元骨格構造の動き送受信方法。
  14. 【請求項14】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記送信部ステップは、 送信する上記骨格構造における3次元仮想空間内での動
    きデータに関する要素データを決定するべく、 送信の対象となるCGキャラクタに対して、このキャラ
    クタの主要位置にローカル座標系を設定するステップ
    と、 ローカル座標系が設定された上記キャラクタが動き得る
    稼働範囲を包含するような3次元仮想空間を考え、3次
    元仮想空間をこの3次元仮想空間に相似するサブ3次元
    仮想空間に分割し、このサブ3次元仮想空間をさらに階
    層的に分割して、サブ3次元仮想空間の大きさ、サブ3
    次元仮想空間の分割サイズ、上記キャラクタの移動に伴
    うローカル座標系での回転移動行列、および階層化され
    たサブ3次元仮想空間の位置に関連する情報から、上記
    キャラクタの骨格構造の現在注目する部分が3次元仮想
    空間内のどの位置に存在するかを表すステップとを含
    み、 上記受信ステップは、 伝送されてきた上記骨格構造における3次元仮想空間内
    での動きデータに関する要素データをもとに上記骨格構
    造の姿勢を決定するべく、 伝送されてきた上記キャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、および階層化されたサブ3次元
    仮想空間の位置に関連する情報から、上記キャラクタの
    骨格構造の現在注目する部分が3次元仮想空間内のどの
    位置に存在するかを復元するステップを含むことを特徴
    とする3次元骨格構造の動き送受信方法。
  15. 【請求項15】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記送信部ステップは、 送信する上記骨格構造における3次元仮想空間内での動
    きデータに関する要素データを決定するべく、 送信の対象となるCGキャラクタに対して、このキャラ
    クタの主要位置にローカル座標系を設定するステップ
    と、 ローカル座標系が設定された上記キャラクタが動き得る
    稼働範囲を包含するような3次元仮想空間を考え、3次
    元仮想空間をこの3次元仮想空間に相似するサブ3次元
    仮想空間に分割し、このサブ3次元仮想空間をさらに階
    層的に分割し、サブ3次元仮想空間の大きさ、サブ3次
    元仮想空間の分割サイズ、上記キャラクタの移動に伴う
    ローカル座標系での回転移動行列、および階層化された
    サブ3次元仮想空間の位置に関連する情報から、上記キ
    ャラクタの骨格構造の現在注目する部分が3次元仮想空
    間内のどの位置に存在するかを表すステップと、 3次元仮想空間内での上記キャラクタの骨格構造の現在
    注目する部分の位置が離れていることを条件として、上
    記コンピュータグラフィックスアニメーションデータに
    互いに離れているブロック同士を空間的に補間する補間
    情報を付加するステップとを含み、 上記受信ステップは、 伝送されきた上記骨格構造における3次元仮想空間内で
    の動きデータに関する要素データをもとに上記骨格構造
    の姿勢を決定するべく、 伝送されてきた上記キャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、および階層化されたサブ3次元
    仮想空間の位置に関連する情報から、上記キャラクタの
    骨格構造の現在注目する部分が3次元仮想空間内のどの
    位置に存在するかを復元するステップと、 3次元仮想空間内での上記キャラクタの骨格構造の現在
    注目する部分の位置が離れていることを条件として、伝
    送されてきた補間情報をもとに互いに離れているブロッ
    ク同士を空間的に補間することによって、上記キャラク
    タの骨格構造の連続的な姿勢を復元するステップとを含
    むことを特徴とする3次元骨格構造の動き送受信方法。
  16. 【請求項16】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記送信ステップは、 送信する上記骨格構造における3次元仮想空間内での動
    きデータに関する要素データを決定するべく、 送信の対象となるCGキャラクタに対して、このキャラ
    クタの主要位置にローカル座標系を設定するステップ
    と、 ローカル座標系が設定された上記キャラクタが動き得る
    稼働範囲を包含するような3次元仮想空間を考え、3次
    元仮想空間をこの3次元仮想空間に相似するサブ3次元
    仮想空間に分割し、このサブ3次元仮想空間を階層的に
    さらに分割して、サブ3次元仮想空間の大きさ、サブ3
    次元仮想空間の分割サイズ、上記キャラクタの移動に伴
    うローカル座標系での回転移動行列、および階層化され
    たサブ3次元仮想空間の位置に関連する情報から、上記
    キャラクタの骨格構造の現在注目する部分が3次元仮想
    空間内のどの位置に存在するかを表すステップと、 上記キャラクタの骨格構造における任意に指定する部分
    の3次元角度情報を上記コンピュータグラフィックスア
    ニメーションデータに付加するステップとを含み、 上記受信ステップは、 伝送されてきた上記骨格構造における3次元仮想空間内
    での動きデータに関する要素データをもとに上記骨格構
    造の姿勢を決定するべく、 伝送されてきた上記キャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、および階層化されたサブ3次元
    仮想空間の位置に関連する情報から、上記キャラクタの
    骨格構造の現在注目する部分が3次元仮想空間内のどの
    位置に存在するかを復元するステップと、 上記キャラクタの骨格構造における任意に指定する部分
    の3次元角度情報から上記キャラクタの骨格構造の姿
    勢、および形状を復元するステップとを含むことを特徴
    とする3次元骨格構造の動き送受信方法。
  17. 【請求項17】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記受信ステップは、 伝送されてきた上記骨格構造の3次元仮想空間内での動
    きの衝突を検出するべく、 伝送されてきたCGキャラクタの動き得る稼働範囲を包
    含するような3次元仮想空間を考え、3次元仮想空間を
    この3次元仮想空間に相似するサブ3次元仮想空間に分
    割し、このサブ3次元仮想空間をさらに階層的に分割し
    て、サブ3次元仮想空間の大きさ、サブ3次元仮想空間
    の分割サイズ、上記キャラクタの移動に伴うローカル座
    標系での回転移動行列、階層化されたサブ3次元仮想空
    間の位置に関連する情報から、上記キャラクタの骨格構
    造の現在注目する部分が他の対象物と衝突するかどうか
    の判定を分割されたサブ3次元仮想空間同士で行なうス
    テップを含むことを特徴とする3次元骨格構造の動き送
    受信方法。
  18. 【請求項18】 請求項10または11に記載の3次元
    骨格構造の動き送受信方法において、 上記送信ステップは、 送信する上記骨格構造の3次元仮想空間内での動き位置
    を設定するべく、 送信の対象となるCGキャラクタの3次元仮想空間内で
    の位置を、当該キャラクタが動き得る稼働範囲を包含す
    るような3次元仮想空間、およびこの3次元仮想空間を
    分割したサブ3次元仮想空間のうちいずれか一方の位置
    に関連する情報で指定するステップと、 上記キャラクタの3次元仮想空間内での位置を変更する
    ことを条件として、サブ3次元仮想空間に隣接するサブ
    3次元仮想の位置に関連する情報を上記キャラクタの骨
    格構造に与えることによって、上記キャラクタの3次元
    仮想区間内での位置を変更するステップとを含み、 上記受信ステップは、 伝送されてきた上記骨格構造の3次元仮想空間内での動
    き位置を設定するべく、 受信の対象となる上記キャラクタの3次元仮想空間内で
    の位置を、伝送された上記キャラクタが動き得る稼働範
    囲を包含するような3次元仮想空間、およびこの3次元
    仮想空間を分割したサブ3次元仮想空間のいずれか一方
    の位置に関連する情報で決定するステップと、 上記送信ステップで上記キャラクタの3次元仮想空間内
    での位置が変更されたことを条件として、伝送されてき
    たサブ3次元仮想空間に隣接するサブ3次元仮想空間の
    位置に関連する情報をもとに上記キャラクタの3次元仮
    想区間内での位置を変更するステップとを含むことを特
    徴とする3次元骨格構造の動き送受信方法。
JP10045397A 1996-04-25 1997-04-17 3次元骨格構造の動き送受信装置、および動き送受信方法 Expired - Lifetime JP3337938B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10045397A JP3337938B2 (ja) 1996-04-25 1997-04-17 3次元骨格構造の動き送受信装置、および動き送受信方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-105077 1996-04-25
JP10507796 1996-04-25
JP10045397A JP3337938B2 (ja) 1996-04-25 1997-04-17 3次元骨格構造の動き送受信装置、および動き送受信方法

Publications (2)

Publication Number Publication Date
JPH1040418A true JPH1040418A (ja) 1998-02-13
JP3337938B2 JP3337938B2 (ja) 2002-10-28

Family

ID=26441478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10045397A Expired - Lifetime JP3337938B2 (ja) 1996-04-25 1997-04-17 3次元骨格構造の動き送受信装置、および動き送受信方法

Country Status (1)

Country Link
JP (1) JP3337938B2 (ja)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000037456A (ko) * 2000-04-25 2000-07-05 박기현 컴퓨터 네트워크를 통한 캐릭터 애니메이션 구현 방법 및시스템
WO2002041258A1 (fr) * 2000-11-15 2002-05-23 Lexer Research Inc. Procede et programme permettant d'obtenir un objet d'affichage
US6512520B1 (en) 1997-07-31 2003-01-28 Matsushita Electric Industrial Co., Ltd. Apparatus for and method of transmitting and receiving data streams representing 3-dimensional virtual space
US6661420B2 (en) 1998-12-28 2003-12-09 Fujitsu Limited Three-dimensional skeleton data compression apparatus
US6757432B2 (en) 1998-07-17 2004-06-29 Matsushita Electric Industrial Co., Ltd. Apparatus for transmitting and/or receiving stream data and method for producing the same
JP2012038334A (ja) * 2004-07-30 2012-02-23 Extreme Reality Ltd Israel 3d空間次元に基づく画像処理のための装置およびシステム
JP2014501992A (ja) * 2011-01-05 2014-01-23 クゥアルコム・インコーポレイテッド ユーザの向きを追跡するための方法および装置
US8872899B2 (en) 2004-07-30 2014-10-28 Extreme Reality Ltd. Method circuit and system for human to machine interfacing by hand gestures
US8878779B2 (en) 2009-09-21 2014-11-04 Extreme Reality Ltd. Methods circuits device systems and associated computer executable code for facilitating interfacing with a computing platform display screen
US8878896B2 (en) 2005-10-31 2014-11-04 Extreme Reality Ltd. Apparatus method and system for imaging
US8928654B2 (en) 2004-07-30 2015-01-06 Extreme Reality Ltd. Methods, systems, devices and associated processing logic for generating stereoscopic images and video
US9046962B2 (en) 2005-10-31 2015-06-02 Extreme Reality Ltd. Methods, systems, apparatuses, circuits and associated computer executable code for detecting motion, position and/or orientation of objects within a defined spatial region
JP2015226757A (ja) * 2014-04-10 2015-12-17 ザ・ボーイング・カンパニーTheBoeing Company アソシエーティブメモリに連結された動作検知装置を用いた運動の識別
US9218126B2 (en) 2009-09-21 2015-12-22 Extreme Reality Ltd. Methods circuits apparatus and systems for human machine interfacing with an electronic appliance
WO2019167214A1 (ja) * 2018-03-01 2019-09-06 株式会社ソニー・インタラクティブエンタテインメント 推定装置、推定方法及びプログラム
JP2019192116A (ja) * 2018-04-27 2019-10-31 株式会社 ディー・エヌ・エー 画像生成装置及び画像生成プログラム
JP2020065229A (ja) * 2018-10-19 2020-04-23 西日本電信電話株式会社 映像通信方法、映像通信装置及び映像通信プログラム
CN111773700A (zh) * 2020-07-24 2020-10-16 网易(杭州)网络有限公司 一种动画数据的处理方法和装置
CN112581572A (zh) * 2020-12-10 2021-03-30 深圳市大富网络技术有限公司 一种动作采集方法、系统、装置及计算机存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107430781B (zh) 2015-01-30 2021-09-17 株式会社电通 计算机图形的数据结构、信息处理装置、信息处理方法以及信息处理系统
JP6805422B2 (ja) 2016-03-08 2020-12-23 株式会社電通 装置、プログラム及び情報処理方法

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6512520B1 (en) 1997-07-31 2003-01-28 Matsushita Electric Industrial Co., Ltd. Apparatus for and method of transmitting and receiving data streams representing 3-dimensional virtual space
US6757432B2 (en) 1998-07-17 2004-06-29 Matsushita Electric Industrial Co., Ltd. Apparatus for transmitting and/or receiving stream data and method for producing the same
US6661420B2 (en) 1998-12-28 2003-12-09 Fujitsu Limited Three-dimensional skeleton data compression apparatus
KR20000037456A (ko) * 2000-04-25 2000-07-05 박기현 컴퓨터 네트워크를 통한 캐릭터 애니메이션 구현 방법 및시스템
WO2002041258A1 (fr) * 2000-11-15 2002-05-23 Lexer Research Inc. Procede et programme permettant d'obtenir un objet d'affichage
US8928654B2 (en) 2004-07-30 2015-01-06 Extreme Reality Ltd. Methods, systems, devices and associated processing logic for generating stereoscopic images and video
JP2012038334A (ja) * 2004-07-30 2012-02-23 Extreme Reality Ltd Israel 3d空間次元に基づく画像処理のための装置およびシステム
KR101323966B1 (ko) * 2004-07-30 2013-10-31 익스트림 리얼리티 엘티디. 이미지 프로세싱을 기반으로 한 3d 공간 차원용 시스템 및 방법
US9177220B2 (en) 2004-07-30 2015-11-03 Extreme Reality Ltd. System and method for 3D space-dimension based image processing
US8872899B2 (en) 2004-07-30 2014-10-28 Extreme Reality Ltd. Method circuit and system for human to machine interfacing by hand gestures
US9046962B2 (en) 2005-10-31 2015-06-02 Extreme Reality Ltd. Methods, systems, apparatuses, circuits and associated computer executable code for detecting motion, position and/or orientation of objects within a defined spatial region
US9131220B2 (en) 2005-10-31 2015-09-08 Extreme Reality Ltd. Apparatus method and system for imaging
US8878896B2 (en) 2005-10-31 2014-11-04 Extreme Reality Ltd. Apparatus method and system for imaging
US9218126B2 (en) 2009-09-21 2015-12-22 Extreme Reality Ltd. Methods circuits apparatus and systems for human machine interfacing with an electronic appliance
US8878779B2 (en) 2009-09-21 2014-11-04 Extreme Reality Ltd. Methods circuits device systems and associated computer executable code for facilitating interfacing with a computing platform display screen
US9436286B2 (en) 2011-01-05 2016-09-06 Qualcomm Incorporated Method and apparatus for tracking orientation of a user
JP2014501992A (ja) * 2011-01-05 2014-01-23 クゥアルコム・インコーポレイテッド ユーザの向きを追跡するための方法および装置
JP2015226757A (ja) * 2014-04-10 2015-12-17 ザ・ボーイング・カンパニーTheBoeing Company アソシエーティブメモリに連結された動作検知装置を用いた運動の識別
WO2019167214A1 (ja) * 2018-03-01 2019-09-06 株式会社ソニー・インタラクティブエンタテインメント 推定装置、推定方法及びプログラム
JPWO2019167214A1 (ja) * 2018-03-01 2020-12-03 株式会社ソニー・インタラクティブエンタテインメント 推定装置、推定方法及びプログラム
US11660526B2 (en) 2018-03-01 2023-05-30 Sony Interactive Entertainment Inc. Estimation apparatus, estimation method, and program
JP2019192116A (ja) * 2018-04-27 2019-10-31 株式会社 ディー・エヌ・エー 画像生成装置及び画像生成プログラム
JP2020065229A (ja) * 2018-10-19 2020-04-23 西日本電信電話株式会社 映像通信方法、映像通信装置及び映像通信プログラム
CN111773700A (zh) * 2020-07-24 2020-10-16 网易(杭州)网络有限公司 一种动画数据的处理方法和装置
CN111773700B (zh) * 2020-07-24 2024-05-10 网易(杭州)网络有限公司 一种动画数据的处理方法和装置
CN112581572A (zh) * 2020-12-10 2021-03-30 深圳市大富网络技术有限公司 一种动作采集方法、系统、装置及计算机存储介质

Also Published As

Publication number Publication date
JP3337938B2 (ja) 2002-10-28

Similar Documents

Publication Publication Date Title
US5909218A (en) Transmitter-receiver of three-dimensional skeleton structure motions and method thereof
JP3337938B2 (ja) 3次元骨格構造の動き送受信装置、および動き送受信方法
Zhao A survey on virtual reality
Banerjee et al. Virtual manufacturing
US7064762B2 (en) Methods and system for general skinning via hardware accelerators
KR100727034B1 (ko) 3차원 공간상에서 2차원 인간형 캐릭터의 표현 및애니메이션 방법
EP1037134A2 (en) Virtual space control data receiving apparatus and method
JP2002298155A (ja) 感情による3dコンピュータグラフィックス表情モデル形成システム
Lau et al. Emerging web graphics standards and technologies
Li et al. VSculpt: a distributed virtual sculpting environment for collaborative design
Qinping A survey on virtual reality
Tang et al. Streaming 3D shape deformations in collaborative virtual environment
Wu et al. Solid model streaming as a basis for a distributed design environment
Li et al. Collaborative distributed virtual sculpting
Preda et al. Virtual character definition and animation within the MPEG-4 standard
Di Giacomo et al. Adaptation of virtual human animation and representation for MPEG
Preda et al. Insights into low-level avatar animation and MPEG-4 standardization
Bernardini et al. An efficient network protocol for virtual worlds browsing
Di Giacomo et al. Control structure and multi-resolution techniques for virtual human representation
Wang et al. Generation and manipulation of h-anim CAESAR scan bodies
Abdul-Jalil The development of a collaborative virtual environment for finite element simulation
JP2002300043A (ja) 情報処理装置及び方法、並びに記憶媒体
Smith Animation of captured surface data
Li et al. Web-based interactive design of freeform motions
Maad et al. Geometric Modelling of Moving Virtual Humans: A Survey of Various Practices

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070809

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080809

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080809

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090809

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090809

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100809

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110809

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110809

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120809

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130809

Year of fee payment: 11

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term