知的ストーリーボードシステム
森博志

星野筑波大学工学システム学類准一
筑波大学機能工学系

あらまし CG アニメーションの製作現場では，作品に対するイメージを定着させ，様々なアイデアを統合するための道具としてストーリーボードが利用されている．しかしストーリーボードからアニメーションを製作するためには，多くの手順を踏む必要がある．もしストーリーボードから自動的にアニメーションを生成できれば，作業時間の短縮や作業工程の簡略化につながる．本稿では，ストーリーボードからアニメーションを生成する新しい手法を提案する．2次元的な線画から仮想人物の3次元姿勢を推定し，蓄積された3次元動作を用いて欠落した動作情報を補うことで連続的な動作を生成する．また，蓄積された動作を分析して，特徴の異なる動作を再構成する手法を述べる．
キーワード ストーリーボード，人物動作生成，3 次元姿勢推定，独立成分分析

Intelligent Storyboard System
Hiroshi MORI

Jun’ichi HOSHINO

University of Tsukuba, College of Engineering Systems
Abstruct Storyboard is a classical animation tool to help the creators to organize scenes. In this paper, we propose a new method for producing animation from storyboard. The 3D position and behavior of the characters are
estimated from 2D views using the constraints optimization and example-based interpolation method. We also show
animation examples produced from the storyboard.
Keywords

storyboard, human motion synthesis, 3D pose estimation, ICA

1. はじめに
近年のエンターテインメントや教育などのマルチメ
ディアコンテンツの製作現場では，CG による仮想人物を扱うコンテンツが増加している．コンテンツの作成に必要な環境は，コンピュータ技術の進歩により個人でも容易に整えることができるようになりつつある．しかし，コンテンツの製作には複雑な技術や専門知識を必要とする．加えて製作には膨大な時間が必要になるなど，個人，とりわけ初心者が製作するには未だに敷居が高いのが現状である．
CG アニメーションを作成する際には，キーフレームにより間欠的な動作を指定して，フレーム間の動作をスプライン曲線などの単純な手法で補間することが一般的である．このような手法で自然な動作を生成するためには，多数のキーフレームを設定することが必要となり，熟練も必要になる．また，フレーム単位での動きを直接扱う必要があるため，ストーリーに沿って長い動作を組み立てるための手法は別途考える必要がある．
アニメーションの製作過程では，作品に対する漠然

図 1．ストーリーボードの例としたイメージを定着させて，様々なアイデアを統合化するための道具として，紙によるストーリーボードが利用されている（図1）．ストーリーボードには，台詞に加えて，ト書きによる状況説明や，アニメーション作成時の様々な指定次項を記述する．また，複数のアニメーターのイメージを共有するための場となり，製作状況の管理にも活用されている [1，2，3，4]．
ところが紙によるストーリーボードでは，作品の構成とアニメーションを作成するプロセスとが分離されているという問題がある．そのため，アニメーションを作成

1Input : Storyboards

Output : Animation

Client#1

Estimating 3D location

Client#2

Client#3

Example-based interpolation

Networkserver

Object andMotion
Database

Animation
Database

Object andMotion
Database

Animation
Database

図 2．知的ストーリーボードシステム

図 3．共同作業支援システム

するときには，最初から作り直すことが必要になる．また，作業の途中で書き換えたり編集したりするなどのインタラクティブな操作ができない．
また，仮想人物の動作を記述する手法としては，TVML[9]のような特殊なスクリプト言語により動作の記述を行うことが一般的である．しかし言語による抽象化された言語のみで，多様な動作を表現することは困難である．抽象化された言語で，細かい動作を記述すると，結局はプログラミング言語のように数値レベルでの記述が必要になる．
本稿では仮想人物を扱うコンテンツの作成を目的とするシステムとして，知的ストーリーボードシステムを提案する．本システムではストーリーボードを用いた作品の構成と，アニメーションの製作を一貫して行えるようにする．製作プロセスを統合することにより，アニメーション作成の生産性の向上が期待できる．さらに複数の CG アニメーターの間でストーリーボードを共有することで，CG 作成時の共同作業を支援する．
本稿では，2章でシステムの概要を述べた後，3章でサンプルに基づいた3次元動作の補間方法を述べる．またその中で，独立成分分析を用いた人物動作の分析手法について述べる．4章ではストーリーボードによる線画から，3次元 CG アニメーションの生成を行った実験結果を示す．

支援する．また，イメージの共有や作業工程の管理を行う場として活用する．
図3に共同作業支援システムの構成例を示す．サーバーに各種のデータとストーリーボードを蓄積する．
各作業者はクライアントからストーリーボードを参照することができる．

2.2. 処理手法
ストーリーボードによる間欠的な2次元的なスケッチから仮想人物の3次元 CG アニメーションを作成する
ためには次の2つの手順を踏む必要がある．
1)
2次元による線画から3次元における人物の姿勢を推定する．
2)
間欠的な3次元の動作から連続した動作を生成する．
ストーリーボード上に記述された2次元的な姿勢から3次元姿勢の推定には，幾何拘束手法[5]を用いる．
ストーリーボード上の2次元線分と，アニメーション上の3次元姿勢との対応関係を図4に示す．
ストーリーボードからアニメーションを作成する際の問題点は，ストーリーボード間における仮想人物の3次元姿勢情報が不足していることである．そのため本稿では，サンプル動作に基づく補間法を用いる．推定された姿勢にサンプル動作を当てはめることで欠落している姿勢情報を補充する．この手法に用いる
サンプル動作，およびシーンの3次元モデルはデータ蓄積部に蓄えられる．サンプル動作は人物の各関節角の値として，画像処理技術[6]，あるいは磁気センサや光学式センサによるモーションキャプチャ装置を用いることにより得られる．
ここで，サンプル動作を単純に当てはめるだけ
では，事前に蓄積されたサンプル動作のみしか生成することができないという問題がある．人物の動作は，同じ動作であっても，それを行う人物，状況によって動作の特徴は異なってくる．多様な2. 知的ストーリーボードシステム
2.1. システムの概要
図2に知的ストーリーボードシステムの概念図を示す．本システムでは，利用者がストーリーボードを使用して，シーンのイメージを間欠的な2次元の線画で指定することにより，特別な知識を持たずとも3次元のCG アニメーションの生成を可能にする．
システムの応用例として，複数の CG アニメータの間でストーリーボードを共有することにより共同作業を2

る独立成分を s(t ) = [s1 (t ), s 2 (t ), L , s m (t )]T と仮定すると
θ ′(t ) は次のように表される．
θ ′(t ) = As(t )(2)
A は n × m の基底行列で A = [a 1 , a 2 , L , a m ] である．
また s(t ) は m 個の各成分が相互に独立である． m は独立成分の数で m ≤ n である．
ICA により θ ′(t ) からy (t ) = Bθ ′(t )(3)と な る 独 立 成 分 y (t ) と 分 離 行 列 B を 求 め る ． こ こ
で, y (t ) = s(t ) , B = A −1 となることが理想的である.
ICA の前処理として，姿勢データ θ ′(t ) の無相関化のために次のような変換を行う．
x(t ) = Vθ ′(t )(4)x(t ) は無相関化された姿勢データで， V は m × nの無相関化行列である．一般に無相関化は主成分分析（PCA : Principal Component Analysis）によってなされる．主成分分析による固有ベクトルを E ，固有値を並べた対角行列を D とすると， V = D −1 2 E T となる．したがって,
x(t ) = VAs(t ) = Ws(t )(5)
Tとなる．ここで x(t )x (t ) = I より
x(t )x T (t ) = Ws (t ) s T (t )W T = WW T = I(6)とできる．従って W = VA は直交行列となるため，フルランクの行列 A を求める問題を s(t ) = W T x(t ) となる直交行列 W を求める問題に簡単化することができる．
本 稿 に お け る ICA の 計 算 ア ル ゴ リ ズ ム に は
FastICA アルゴリズム[7]を用いる．
独立性を計る尺度として負のエントロピーを用いる．
y の密度関数を f (y ) とするとエントロピーは，

3D characterO

storyboard

図 4．ストーリーボード上の 2 次元線分と 3 次元姿勢の対応関係動作を生成する方法として異なる特徴をもつ多くの動作を蓄積する方法がある．しかしこの方法ではデータ量が多くなるため，検索の際の計算量を増加させてしまう．そこで少数のサンプル動作から異なる特徴をもつ多様な動作を生成するために，独立成分分析を用いた人物動作の分析と再構成を行う手法を用いる．

3. サンプル動作に基づく補間
ストーリーボードから連続的な仮想人物の動作を生成するには，ストーリーボード間の動作の間隔が広いため，単純に動作を補間するだけでは自然な動作にならないという問題がある．そのため，データ蓄積部に蓄積したサンプル動作を当てはめることで，欠落している動作情報を補う．

3.1. 独立成分分析による人物動作の分析
本稿ではデータ蓄積部からのサンプル動作の検索に要する計算量を低減し，サンプル動作の変形により多様な動作を生成するために，独立成分分析（ICA : Independent Component Analysis）[6,7,8]を用いる．仮想人物の姿勢パラメータを特徴空間に投影することで，動作の特徴を表す成分を抽出する．
時刻 t における人物動作の姿勢パラメータをθ(t ) = [θ 1 (t ), θ 2 (t ), ⋅ ⋅ ⋅ ⋅ , θ n (t )]T とする． n は姿勢パラメー
タの総数である． ICA の処理において各成分の平均は0でなければならないため，あらかじめ各姿勢パラメータからその平均を引いておく．
人物動作の総フレーム数を T とすると各姿勢パラメータの平均は1 Tc i = ∑ θ i (t )(1)
T t =0H (y ) = − ∫ f (y ) log f (y )dy(7)となる．エントロピーは正規分布のとき最大となる．
負のエントロピー J (y ) は正規分布のエントロピーを用いて()

J (y ) = H y gauss − H (y )(8)と定義される．この負のエントロピーを最大化することで独立性を推定する．
ここで密度関数 f (y ) を最大エントロピー原理によって近似すると[{ (J ( y i ) ≈ c E{ G ( y i )} − E G y gauss)}]2(9)となる． G は非2次の関数， c は定数である．ここでw T x = 1 となる w を用いて y i = w T x とすると負のエントロピーはと表される．各成分から平均値 c i を引いた姿勢パラメータを θ ′(t ) とする． ここでキャラクター動作を構成す3

ru_arm.x
rf_arm.xl_thigh.x

l_shin.xr_thigh.x
r_shin.x

lf_arm.x
lu_arm.x

80

y1

y2

y3

5

1015frames

y4

y5

10.5

60-0.520

wiangle (degree)

040-1-1.5

0-2-20-2.5-40

t05(a)歩行動作

1015frames

202530-30(b)関節角データ

202530(c)独立成分

図 5．ICA による歩行動作の分析
y2
1

y1
10.5

0.5

0-0.5-1w1

w20-0.5-1.5-1-2-1.5-2.5-3-2t051015frames

2025300t(a) y151015202530frames(b) y2
図 6．独立成分と 3 次元動作の対応[{()} { (J G (w ) = E G w T x − E G y gauss)}]2

3.2. 動作の再構成(10)

分離した独立成分 y (t ) と基底 W により動作の再構成を行う．基底行列 A の各基底ベクトル a i は
a i = ED1 2 w i(13)と表される．従って人物動作の姿勢パラメータは
θ(t ) = Ay (t ) + C(14)
Tとして再構成される．ここで C = [c1 , c 2 , L , c n ] である．
動作を再構成する過程での計算量はきわめて少ない
ため，リアルタイムでの動作生成も容易に行うことができる．と表せる．
従って独立性を決定する問題は以下のようになる．
mMaximize ∑ J G (w i ) ， w i ; i = 1, K , m(11)i =1

ただし (w Tk x )(w Tj x ) = δ jk
w i は W の行ベクトルである．

負のエントロピーを最大にする W を求めるために，不動点法に基づく反復解法を用いる．
更新式は，+{} { ()}

w i = E xg (w i x) − E g ′ w i x w iT+T

wi = wi / wi

3.3. 連続動作の生成
間欠的な姿勢から，連続した動作を生成するには，まず製作目標となるアニメーション中で使用する動作を ICA を用いて特徴空間に投影し，動作データを蓄積部に保存する．次に2次元線図より推定された３次元姿勢の姿勢パラメータを，ICA により特徴空間に投影する．投影された特徴空間上の姿勢パラメータの各成分を y1, y 2, L , yn とする．データ蓄積部に蓄積されたサンプル動作の姿勢パラメータとストーリーボードから得た姿勢パラメータ y1, y 2, L , yn のマッチングを行うことにより対応する曲線を選択し，動作を推定する．
推定された動作の連結は独立成分の曲線を用い(12)+である．ここで， g は G の微分である．本稿では，
g 1 ( y ) = tanh (a1u ) とした．
不動点法により求めた W によって，仮想人物の姿
勢パラメータ θ(t ) は y (t ) = W T x(t ) = W T V (θ(t ) − C) として独立成分 y (t ) に分離される．
図5に歩行動作の独立成分への分離の例を示す．

4

(a)ストーリーボード(a)例 1(b)生成したアニメーション
図 7．バレエアニメーションの生成例(b)例 2て行う．連続した２つのフレーム間の姿勢変化が小さいと仮定すると，曲線上の点は互いに近接している．このことから動作は特徴空間における曲線の連続的な軌道として表現される．曲線を滑らかに結合することにより，動作の遷移を表現する．
また，特徴空間のサンプルに基づく空間的な拘束により，複雑な姿勢を連結した場合でも3次元において破綻の少ない姿勢の遷移を生成できる．

図 8．指揮者のアニメーションの生成例

li =Qi +1 − Qi −1, (i = 1,2, L , n − 1)
Qi +1 − Qi −1(15)として求められる．点 Qi と接ベクトル l i を用いて3次のベジェスプライン曲線を構成する．求める補間曲線をP (t ) とすると，3.4. 動作の特徴の変更
少数のサンプル動作から多様な動作を生成するために，特徴空間の各成分の曲線を変形することにより，異なる特徴を持った動作を生成する．
図6に歩行動作における独立成分と3次元動作の対応関係を示す．各成分は3次元動作の任意の特徴を表現している．そのため各成分を編集することにより動作の特徴に多様性を持たせる．
ここで曲線の変形を容易にするために近似を行う．
動作曲線上から n + 1 個の通過点を選択し，その点を Q0 , Q1 , L , Q n とする．局所的に定義された曲線で補間を行うために，エルミート補間を用いる．点 Qi における接線方向を表す単位ベクトル l i は
Q − Q0Q − Q n −1, ln = n,l0 = 1
Q1 − Q0
Q n − Q n −1nni =0i =0P(t ) = ∑ H (t − i ) Qi + ∑ α i D(t − i ) l i(16)H (t ) = 2t 3 − 3t 2 + 1
D(t ) = t 3 − 2t 2 + tとして求められる． α i は任意の定数である．

(17)
(18)

4. 実験
本手法の有効性を確認するために実際にストーリーボードからアニメーションの作成を行った．
サンプル動作における人物モデルの関節角データを ICA を用いて特徴空間へ投影を行う．本稿における ICA による特徴空間の次元数は，前処理に用いるPCA において，累積寄与率が90％程度になる数に設定した．この数値は経験上求めたもので，動作の再現性を損なうことなく，特徴を表現する次元数とな5t(a)サンプル歩行パターンtt(b)特徴の変更例 1(c)特徴の変更例 2

図 9．動作の特徴の変更
る．次元数は累積寄与率より求めるため，一定ではな
く，サンプルとなる3次元動作が複雑な姿勢の遷移を行うほど，次元数は高くなる傾向にある．
図7は本手法により生成したバレエのアニメーションである．(a)は入力となるストーリーボード，(b)は生成したアニメーションである．ストーリーボードから得た3次元姿勢をサンプル動作より作成した特徴空間に投影を行い，補間することでアニメーションを生成した．図8は同様にして生成した指揮者のアニメーションの例
である．
これらの実験からストーリーボードによって指定したまばらな2次元線図から仮想人物の連続した3次元動作のアニメーションを生成できていることが確認できる．
図9は独立成分の曲線を変形させて，サンプル動作を元に異なる特徴をもつ動作を生成した例である．
(a)の歩行パターンをサンプルとして特徴の異なる歩行パターン（b）,（c）を生成した．独立成分を編集することにより，特徴の異なる動作の生成が可能であることがわかる．

姿勢の推定，複数仮想人物の動作生成，ネットワークを利用した共同作業支援機能への取り組みが挙げられる．
参考文献［1］ John Hart: ”The Art of Storyboard: Storyboarding for Film，TV， and Animation”， FocialPress， 1999
［2］ Mark Simon: “Storyboards: Motion in Art” ，
Focial Press， 2000
［3］ Amy Spaulding: “The Page as a Stage Set:
Storyboard Picture Books”，Scarecrow， 1995［4］ “A Visit With Disney’s the Little Mermaid andFriends Storyboard”， Mous Works， 1993［5］ J.Hoshino: ”Extracting Personal Characteristics
from Human Movement”, Int. Conf. on Acaustics
and Signal Processing ,ICASSSP2001, Conference Proceedings CD-ROM, IMDSP-P6.1, 2001
［6］ A．Hyvarinen and E．Oja: “A Fast Fixed-Point
Algorithm for Independent Component Analysis”，
Neural Computation ， vol9 ， pp ． 1483-1492 ，
1997［7］ A．Hyvarinen: ” Fast and Robust Fixed-Point
Algorithms for Independent Component Analysis”，IEEE Trans．on Neural Networks, 1999［8］ J．Hurri， A．Hyvarinen， J．Karhunen， andE.Oja: ” Image Feature Extraction Using Independent Component Analysis” ， Proceedingsof IEEE Nordic Conference on Signal Processing(NORSIG96)， 1996
［9］ 林、折原、下田、上田、横山、八重樫、栗原、安村：「テレビ番組記述言語ＴＶＭＬの言語仕様とCG 記述方法」第３回知能情報メディアシンポジ
ウム、pp.75 -80, ,1997

5. むすび
本稿では，ストーリーボードによる2次元的なスケッチから，仮想人物を扱う3次元 CG アニメーションの生成を行うことができる知的ストーリーボードシステムの提案を行った．本システムでは機能の実現のために2次元的な線画から3次元姿勢を推定する手法と，サンプル動作を用いて連続動作を生成する手法を用いた．特に連続した動作を生成する際に，独立成分分析を用いた人物動作の生成方法について重点をおいた．本稿では，単純な線画の記述によるストーリーボードからのアニメーションの生成の実験を行い，システムの実現が可能であることを示した．
今後の課題として，仮想カメラの位置，ビューイング変換を考慮に入れたストーリーボードからの3次元

6