JP3616242B2 - Animation information compression method and computer-readable recording medium recording animation information compression program - Google Patents

Animation information compression method and computer-readable recording medium recording animation information compression program Download PDF

Info

Publication number
JP3616242B2
JP3616242B2 JP00820298A JP820298A JP3616242B2 JP 3616242 B2 JP3616242 B2 JP 3616242B2 JP 00820298 A JP00820298 A JP 00820298A JP 820298 A JP820298 A JP 820298A JP 3616242 B2 JP3616242 B2 JP 3616242B2
Authority
JP
Japan
Prior art keywords
information
key frame
animation
frame information
output
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.)
Expired - Fee Related
Application number
JP00820298A
Other languages
Japanese (ja)
Other versions
JPH10275245A (en
Inventor
正樹 ▲高▼倉
実 西畑
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP00820298A priority Critical patent/JP3616242B2/en
Publication of JPH10275245A publication Critical patent/JPH10275245A/en
Application granted granted Critical
Publication of JP3616242B2 publication Critical patent/JP3616242B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
この発明はコンピュータグラフィックスを用いて予め作成されたアニメーションのデータを記録または伝送するためのアニメーション処理方法に関し、特に、キーフレーム情報間の中間フレームを補間により生成してアニメーションを表示する際の、キーフレーム情報を圧縮するための方法に関する。
【0002】
【従来の技術】
アニメーションのような動きのある画像データは非常に多くの画像(フレームと呼ぶ)から成り立っている。各フレームの情報をそのままの形で記録しようとすると、膨大なデータ容量が必要となる。したがって、これらの動画像情報を、情報量をなるべく落とさないようにデータ量を圧縮し記録または伝送するための、いわゆる動画像圧縮の手法が提案されている。
【0003】
動画をカメラから入力したりディスプレイに出力したりする場合、いわゆるラスタスキャン手法が採用されることが多い。ラスタスキャン手法とは、各フレームを複数の水平の走査線に分解し、各走査線を上から順に、かつ左から右に走査していく手法である。このため動画像圧縮の手法は一般にラスタスキャン画像を対象とする場合が多い。
【0004】
コンピュータグラフィックスの手法により生成されたアニメーションもまた、ディスプレイ表示されるときにはラスタスキャンによる走査線情報に変換される。そのためアニメーションのデータを記録する場合、従来は、複数枚のラスタスキャン画像を圧縮して記録する方法が採用されている。たとえば、特開昭61−198877号公報には、ラスタスキャンによる走査線情報を圧縮するときに、コンピュータアニメーション特有の条件を利用して圧縮率を上昇させるデータ圧縮技法が開示されている。
【0005】
一方、コンピュータグラフィックスによるアニメーションの製作技法の1つに、キーフレームアニメーションと呼ばれる手法がある。キーフレームアニメーションでは、アニメーションを時間的に変化する複数の「物体」の集まりとして捉える。アニメーションを作成するときには、すべてのフレームを作成することはせずに、まず動きの要となるフレーム(「キーフレーム」と呼ぶ。)のみを作成する。次にキーフレーム以外のフレーム(「中間フレーム」と呼ぶ。)の物体を、キーフレームに含まれる物体を補間計算することにより自動的に生成する。この補間方法は特開昭60−191366号公報に開示されている。
【0006】
このキーフレーム手法を用いたアニメーションは、すべてのフレームではなく、そのうちの一部のキーフレームに関する情報のみからアニメーションを再生できる。そのためすべてのフレームの情報を作成し記録する場合と比較して、データ量が圧倒的に少ないという利点がある。このためたとえば、必要とされる記憶媒体の容量を削減でき、また伝送時間も少なくて済む。
【0007】
ところで、キーフレームの情報から中間フレームを補間して自動生成するためには、どの物体がどの物体に変化するかという情報が必要である。そのため前述の特開昭60−191366号公報には、物体の対応づけの手法が開示されている。キーフレームの情報とともにこの対応づけに関するデータも記録/伝送しておく必要がある。
【0008】
図8(a)〜(d)に、あるアニメーションの4つのキーフレームを時系列に従って示す。以下、従来技術においてこの図8に示されるアニメーションのキーフレームに含まれる物体の情報をどのように記録しておくか、について説明する。キーフレームの物体の情報を記録するためには、たとえば特開平5−101160号公報が開示するように、各物体が各キーフレームにおいてどのような状態にあるかを示すデータ(状態情報)を、たとえば図9に表形式で示すように予め準備しておく必要がある。
【0009】
図8(a)では、物体A0〜A2、B0〜B3、E2およびE3は塗り潰しポリゴンである。物体C1、C2および物体D1〜D3は曲線である。図8(a)〜(d)にそれぞれ示されるキーフレームは、アニメーション中の時刻t0、t1、t2およびt3のタイミングで提示されるものとする。
【0010】
図8(a)〜(d)を見るとわかるように、物体A0、A1およびA2は1つの物体の変化を示す。この物体を物体Aと呼ぶこととする。同様に物体B0〜B3は同一の物体Bの変化を示す。物体E2およびE3は1つの物体Eの変化を示す。物体C1およびC2は1つの物体Cの、物体D1〜D3は他の1つの物体Dの変化をそれぞれ示す。
【0011】
図9は、時刻t0〜t3に対応する各キーフレームに登場する物体と、各キーフレームにおける各物体の状態とを示している。図9では、各列が各時刻に対応のキーフレームを示し、各行がアニメーションに登場する物体に対応する。図9の表中の各要素は、そのキーフレームにおける各物体の状態情報を示す。説明の便宜のため、各物体を指す符号A0〜A2、B0〜B3、C1、C2、D1〜D3、E2およびE3などはそれぞれ、各時刻における物体A〜Eの状態情報をも指すものとする。また図9に示される表中で、空白の欄は、その時刻にはその物体が画面に登場しないということを示している。
【0012】
ここでは、物体としてはアニメーションの中に登場する図形を想定している。しかし物体としては図形以外にさまざまな形式が考えられる。たとえば図形でも線、ポリゴン、円、立体図形などが考えられる他、文字、音や音楽の大きさ、画質のパラメータ、表示ウィンドウの位置、サイズ、線の太さ、色、光源の位置および視点の位置などである。
【0013】
たとえば、あるキーフレームにおいて効果音を鳴らしたい場合にはそのキーフレームに効果音を物体として登場させる。あるキーフレームにおいて、アニメーションを表示するウィンドウの位置やサイズを変更したい場合には、そのウィンドウパラメータをそのキーフレームに入れる。このように、アニメーションの中で使われるさまざまな数値パラメータは、すべて本願明細書中での「物体」として取扱うこと、特にその物体の状態を表わす状態値として取扱うことができる。
【0014】
図9に表形式で示されるようなデータが予め準備されていれば、任意の時刻の中間フレームの画像を、その時刻の前後のキーフレーム(前後1個、または前後複数個のキーフレーム)についてのキーフレーム情報に記述された物体の状態情報を補間して算出することができる。この補間方法については、特開昭61−191366号公報に開示されている。補間計算の方法として公知の技術には、線形補間や、スプラインなどの曲線近似を用いる補間方法がある。
【0015】
ところで図9に示されるようなデータを実際に記憶媒体等に記録するフォーマットの一例を図10に示す。図10を参照して、アニメーション情報100は、複数のキーフレーム情報102、104、…を含む。たとえばキーフレーム情報102は、そのキーフレームが提示されるべき時刻と、そのキーフレーム内で提示されるべき物体に関する物体情報とを含む。各物体情報は、物体の識別番号と、物体の状態情報とを含んでいる。他のキーフレーム情報104等についても同様である。
【0016】
たとえば図9に示されるデータを図10に示されるフォーマットで記録したアニメーション情報を図11に示す。図11を参照して、アニメーション情報110は、キーフレーム情報112、114、116および118を含む。これらキーフレーム情報に対応するキーフレームは、時刻t0、t1、t2およびt3でそれぞれ提示されるべきものである。
【0017】
たとえばキーフレーム情報112は、時刻t0で提示されるべき物体の物体情報を含んでいる。
【0018】
第1の物体情報(a,A0)のうち「a」は、この物体情報が物体Aに関するものであることを示す識別番号、「A0」は、時刻t0での物体Aの状態情報を、それぞれ示す。また第2の物体情報(b,B0)のうち「b」は、この物体情報が物体Bに関するものであることを示す識別番号、「B0」は、この物体情報が物体Bの時刻t0での状態情報であることをそれぞれ示す。図11に示される各符号の意味については、以上の説明および図8〜図10から当業者には自明である。したがってここではそれらについての詳細な説明は繰返さない。
【0019】
各キーフレームの時刻(t0〜t3)および識別番号についてはさまざまな表現方法で記録することができる。たとえば時刻については1000分の1秒単位の数値で表現することができる。また識別番号としては、異なる物体に対して重複することがない、0以上の数字で表現する方法がある。
【0020】
物体の状態情報の表現方法も種々存在する。たとえばコマンドを利用した物体の状態情報の表現方法がある。コマンドを利用した塗り潰しポリゴンの状態情報の表現例を次に示す。
【0021】
P p1,p2,p3,x1,y1,x2,y2,・・・xn,yn
ここで、Pは、この物体が塗り潰しポリゴンであることを示すコマンドである。パラメータp1〜p3はそれぞれ、このポリゴンの色番号、塗り潰しパターンの番号、ポリゴンの頂点数をそれぞれ表わす。x1、y1、x2、y2、…,xn、yn(n=p3)は、ポリゴンの頂点の各々のx座標およびy座標である。なお、以下の説明では、ポリゴンの塗り潰しパターンとして、予め各種のパターンが登録されており、パラメータp2はそのうちのどれかを番号で指定するものとする。
【0022】
同様にコマンドを用いて曲線をコード形式で表現した例として次のようなものがある。
【0023】
L p1,p2,p3,x1,y1,x2,y2,・・・xn,yn
ここで、Lはこの物体が曲線であることを示すコマンドであり、パラメータp1〜p3はそれぞれ、曲線の色番号、曲線の太さ、曲線の特徴点の点数をそれぞれ示す。x1、y1、x2、y2、…、xn、yn(n=p3)は、曲線の特徴点の座標である。
【0024】
「物体」として、前述のように図形以外にさまざまなものが考えられるが、これらはそれぞれ、物体の種類を識別するコマンドを先頭にし、かつそのコマンドにより定められるパラメータ列からなるフォーマットでコード化することができる。
【0025】
図12に、他のアニメーション例として、いわゆるビジネスプレゼンテーションに関するものを示す。図12(a)〜(d)はそれぞれキーフレームを示す。図12において物体F0〜F3は背景である物体Fであって、すべてのキーフレームで同じ状態である。物体G1〜G3は「プレゼンテーション」という文字からなる物体Gであって、図12(b)〜(d)の3つのキーフレームにおいて同じ状態である。物体H2およびH3は「項目1」という文字からなる物体Hであって、物体H2では背景に色がついた状態であり、物体H3では背景は白となっている。物体I3は、「項目2」という文字からなる物体Iであって、図12(d)に示されるキーフレームのみにおいて表示され、その背景には色がついている。
【0026】
図12に示されるアニメーションを再生するためのキーフレーム情報を図9と同様の表形式で示すと図13のようになる。図13と図12との関係は、図9と図8との関係と同様である。したがってここではその詳細については繰返さないことにする。
【0027】
図13に示されるデータを従来の方法で表現した例を図14に示す。図14を参照して、アニメーション情報130は、4つのキーフレーム情報132、134、136および138を含んでいる。これらは図12(a)〜(d)に示されるキーフレームにそれぞれ対応する。たとえばキーフレーム情報132は図12(a)に示すキーフレームを表わすものであって、表示時刻であるt0と、背景となる物体F0に関する図形情報(f,F0)とを含んでいる。図形情報(f,F0)のうち「f」は図形F0〜F3で表わされる物体Fの識別番号を、「F0」は、物体Fの、このキーフレームでの時刻における状態情報である。
【0028】
他のキーフレーム情報の構造もキーフレーム情報132と同様である。
【0029】
さらに他のアニメーションの例を図15に示す。図15(a)〜(d)に示されるアニメーションは、繰返しを含んでいることが特徴である。図15に示されるアニメーションは鳥の羽ばたきを示すものである。図15(a)〜(d)において物体J0〜J3は鳥の胴体を、物体K0〜K3は鳥の翼を、それぞれ表わしている。図15を参照してわかるように、物体J0〜J3はすべてのキーフレームにおいて同じ形である。また物体K0およびK2は同じ形状であり、物体K1およびK3もまた同じ形状である。このようにアニメーション中には、繰返しが多く現われることがよくある。
【0030】
図15に示されるアニメーションをテーブル形式で示すと図16に示されるようになる。図16と図15との関係は図9と図8との関係と同様である。したがってここではその詳細については繰返さないこととする。
【0031】
図16に示されるデータを記録する形態を図17に示す。図17を参照して、このアニメーション情報150は、4つのキーフレーム情報152、154、156および158を含む。これらキーフレーム情報はそれぞれ図15(a)〜(d)のキーフレームを示している。たとえばキーフレーム情報152は図15(a)のキーフレームに対応するものであって、このキーフレームの表示時刻t0と、2つの物体J0およびK0についての物体情報とを含んでいる。これらのうち物体情報(j,J0)の「j」は物体Jを示す識別番号であり、「J0」は物体Jの状態がJ0であることを示す。他のキーフレーム情報154〜158も同様の意味を持っている。
【0032】
【発明が解決しようとする課題】
アニメーションの中でも、図12に示されるようないわゆるビジネスプレゼンテーション用のアニメーションは、多くの場合画面全体はあまり変化せず、画面に新しい項目が順番に追加されていく場合が多い。このようなアニメーションを、既に述べたようなキーフレームアニメーション方式を用いて記録すると、一旦画面に出現した後何ら変化しない物体であっても、以後のすべてのキーフレームに物体情報として記録する必要がある。キーフレームアニメーションでは、隣接するキーフレーム間で補間をする関係上、要となる時間における物体の状態をすべて記録する必要があることから、これは当然のことである。しかしこのような記録方式を用いれば、データ量が非常に大きくなるという問題点があった。特に各物体の状態情報そのものが大きなデータである場合、アニメーション情報を記録するために必要な記憶容量は、キーフレームの数と物体の数と1物体当りのデータ量との積に比例すると考えられるので、必要となるデータ量が加速度的に増大するという問題があった。
【0033】
また図15に示されるようなアニメーションでは、キーフレームアニメーション方式の特性上、以前に出現した物体と同一の形状を有する物体であっても、出現する各キーフレームごとにそのデータを記録する必要がある。この場合にも、いわゆるビジネスプレゼンテーション用のアニメーションと同様に、アニメーション情報を記録する際に必要となる記憶容量が非常に大きくなるという問題点があった。
【0034】
このような問題点は、アニメーション情報を記録する場合だけではなく、ネットワークを通じて他のコンピュータに伝送する場合にも同様にあてはまる。
【0035】
それゆえに請求項1〜9に記載の発明の目的は、キーフレームアニメーション方式を用いたアニメーション情報をより効率高く圧縮できる、アニメーション情報の圧縮方法を提供することである。
【0036】
また、請求項10に記載の発明の目的は、キーフレームアニメーション方式を用いたアニメーション情報をより効率高く圧縮できる、アニメーション情報の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することである。
【0037】
【課題を解決するための手段】
【0044】
請求項に記載の発明に係るアニメーション情報の圧縮方法は、コンピュータを用いて複数個のキーフレーム間を補間することにより中間フレームが生成され表示されるアニメーションのためのキーフレーム情報を圧縮する、コンピュータを用いた方法である。各キーフレーム情報は、対応のキーフレームにおいて表示されるべき物体に関する物体情報を含む。物体情報は、当該物体の状態情報と、当該キーフレーム情報に対して予め定める関係を有するキーフレーム情報内の対応する物体情報へのリンク情報とを含んでいる。
【0045】
この方法は、基準となるキーフレーム情報を媒体に出力する第1の出力ステップと、直前のキーフレーム情報の出力の終了に応答して次のキーフレーム情報を読込み、読込まれたキーフレーム情報内の各物体情報と、読込まれたキーフレーム情報に対して予め定める関係を有するキーフレーム情報内の対応の物体情報とを比較して、リンク情報と、相違のある状態情報についての相違量とのみを含んだ物体情報を含んだ圧縮後のキーフレーム情報を媒体に出力する第2の出力ステップと、この第2の出力ステップを、圧縮すべきキーフレーム情報のすべてを圧縮するまで繰返すステップとを含んでいる。
【0046】
この方法では、圧縮後のキーフレーム情報の物体情報には、リンク情報と、その物体情報の属するキーフレーム情報に対して予め定める関係を有するキーフレーム情報内の対応の物体情報とを比較した結果、相違のある状態情報についての相違量のみが含まれている。相違のない状態情報は含まれていない。また、相違のある状態情報の場合、アニメーションの特質として、その相違量は、状態情報の値そのものよりも小さくなることが多い。したがってこの方法によればアニメーション情報のデータ量を従来方法に比して遙かに小さくすることができる。
【0047】
請求項に記載の発明に係るアニメーション情報の圧縮方法は、請求項5に記載の発明の構成に加えて、予め定める関係を有するキーフレーム情報が、当該キーフレーム情報の出力前に既に媒体に出力済みのキーフレーム情報であることを特徴とする。キーフレーム情報を出力した後、当該キーフレーム情報を記憶しておけば、後のキーフレーム情報との比較をするために改めてキーフレーム情報を読込む必要がない。そのためキーフレーム間の比較処理を速やかに行なうことができる。
【0048】
請求項に記載の発明に係るアニメーション情報の圧縮方法は、請求項5または6に記載の発明の構成に加えて、アニメーション情報が出力される媒体が記憶媒体であることを特徴とする。アニメーション情報のために必要とされるデータ量が少なくて済むので、記憶媒体の容量を削減することができる。
【0049】
請求項に記載の発明に係るアニメーション情報の圧縮方法は、請求項5または6に記載の発明の構成に加えて、アニメーション情報が出力される媒体が通信媒体であることを特徴とする。アニメーション情報のためのデータ量を削減することができるので、従来方法と比較してより少ないデータ量を送信するだけで同一の情報量を有するアニメーションを再生することができる。
【0050】
請求項に記載の発明に係るアニメーション情報の圧縮方法は、コンピュータを用いて複数個のキーフレーム間を補間することにより中間フレームが生成され表示されるアニメーションのためのキーフレーム情報を圧縮する、コンピュータを用いたアニメーション情報の圧縮方法である。各キーフレーム情報は、対応のキーフレームにおいて表示されるべき物体に関する物体情報を含む。物体情報は、当該物体の状態情報と、当該キーフレーム情報に対して予め定める関係を有するキーフレーム情報内の対応する物体情報へのリンク情報とを含む。
【0051】
この方法は、基準となるキーフレーム情報を媒体に出力する第1の出力ステップと、直前のキーフレーム情報の出力の終了に応答して次のキーフレーム情報を読込み、読込まれたキーフレーム情報内の各物体情報について、当該物体情報と並行移動の関係にある物体情報を含むキ−フレ−ム情報を検索して、当該並行移動の関係にある物体情報を含むキ−フレ−ム情報を特定する情報と、リンク情報と、並行移動量とを含んだ物体情報を含んだ圧縮後のキーフレーム情報を媒体に出力する第2の出力ステップと、この第2の出力ステップを、圧縮すべきキーフレーム情報のすべてを圧縮するまで繰返すステップとを含む。
【0052】
この方法では、圧縮後のキーフレーム情報の物体情報には、リンク情報と、その物体情報に対応する物体と並行移動の関係にある物体の物体情報を含んだキーフレーム情報を特定する情報と、並行移動量とが含まれている。並行移動の関係にある物体の物体情報と、並行移動量とから、処理対象となるキーフレーム内の当該物体の座標情報を復元できる。当該物体の座標情報の全てを物体情報ないに記録する場合と比較して、必要なデータ量は削減される。
【0053】
また、並行移動の関係にある物体間の並行移動量は、アニメーションの特質として、物体の座標の値そのものよりも小さくなることが多い。したがってこの方法によればアニメーション情報のデータ量を従来方法に比して遙かに小さくすることができる。
【0054】
請求項に記載の発明に係る記録媒体は、コンピュータを用いて複数個のキーフレーム間を補間することにより中間フレームが生成され表示されるアニメーションのためのキーフレーム情報を圧縮する、ことを機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。各キーフレーム情報は、対応のキーフレームにおいて表示されるべき物体に関する物体情報を含む。物体情報は、当該物体の状態情報と、当該キーフレーム情報に対してより前に出力されたキーフレーム情報内の対応する物体情報へのリンク情報とを含んでいる。
【0055】
この記録媒体は、基準となるキーフレーム情報を読込み、媒体に出力する第1の出力ステップと、直前のキーフレーム情報の出力の終了に応答して次のキーフレーム情報を読込み、読込まれたキーフレーム情報内の各物体情報と、当該読込まれたキーフレーム情報に対してより前に出力されたキーフレーム情報内の対応の物体情報とを比較して、リンク情報と、相違のある状態情報についての相違量とのみを含んだ物体情報を含んだ圧縮後のキーフレーム情報を媒体に出力する第2の出力ステップと、この第2の出力ステップを、圧縮すべきキーフレーム情報のすべてを圧縮するまで繰返すステップとを実現させるためのアニメーション情報の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体を含む。
【0056】
ここで、アニメーション情報の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体として、請求項1に対応したものを記載したが、本発明はこれに限定されるものではなく、いずれの請求項に対しても、実現可能である。
【0057】
【発明の実施の形態】
実施の形態1
図1に、本願発明に係る方法を実施するためのアニメーション情報圧縮装置の概略のブロック図を示す。図1を参照して、この装置30は、ネットワーク42に接続されたコンピュータ32と、アニメーション情報を記録しておき、コンピュータ32からの入出力要求に応答して記録または出力するための、ハードディスク、フロッピィディスク等からなる外部記憶装置34と、コンピュータ32に接続され、アニメーションを表示するためのディスプレイ装置36と、必要なコマンドやデータを入力するためのキーボード40と、タブレット、ディジタイザ、マウスなどからなる座標入力装置38とを含んでいる。
【0058】
コンピュータ32は、後述するフローチャートに従った制御構造を有するプログラムを実行することにより、本願発明に係る方法を実現するための、マイクロプロセッサなどからなる演算処理装置50と、演算処理装置50とネットワーク42や他の周辺機器との間のインタフェース回路48と、演算処理装置50が実行するプログラムや、処理に必要なデータを格納するためのメモリ52とを含んでいる。
【0059】
アニメーション情報の圧縮プログラムは、磁気テープまたはCD−ROM等の記録媒体によって供給される。このアニメーション情報の圧縮プログラムはコンピュータ本体32によって実行され、操作者はディスプレイ装置36を見ながら、キーボード40またはマウスを操作することによってアニメーション情報の圧縮を行う。また、アニメーション情報の圧縮プログラムは他のコンピュータによりネットワーク42を通じてコンピュータ本体52に供給されてもよい。
【0060】
この装置30の動作は、通常のコンピュータの動作と同様である。すなわちメモリ52に格納されている命令を演算処理装置50が逐次読出して実行し、プログラムの制御構造に従って、実行する命令と、その命令が処理するデータと、データの格納先および読出先などを変更していくことにより、後述する機能が実現される。コンピュータ一般の動作については当業者の知識範囲内であるから、ここではその詳細については繰返さない。
【0061】
以下の例ではまず、図12に示されるプレゼンテーションのアニメーションのためのアニメーション情報を圧縮する場合を説明する。この場合の必要とされるデータの基本的枠組みは図13に示されるとおりであり、予め図14に示されるデータが準備されているものとする。本実施の形態では、図14に示されるデータを図2に示される形式に変換することにより、アニメーション情報を圧縮する。なお、以下の説明では一旦図14のようなアニメーション情報が準備された後これを圧縮する場合を例として説明するが、図14に示されるデータを作成することなく、直接図2に示されるデータ形式のアニメーション情報を作成するようにしてもよい。
【0062】
図2を参照して、本願発明の方法によって出力されるアニメーション情報60は、4つのキーフレーム情報62、64、66および68を含む。これらキーフレーム情報62、64、66および68はそれぞれ、図12(a)〜(d)のキーフレームに対応するものである。
【0063】
キーフレーム情報62は、アニメーションの先頭のキーフレームに対応するものである。本実施の形態ではこのキーフレーム情報62は、図14に示されるキーフレーム情報132と同じものである。このキーフレーム情報62は、後続するキーフレームを圧縮するための基準となる。
【0064】
キーフレーム情報64は、図12(b)に示されるキーフレームに対応する。キーフレーム情報64は、このキーフレームが表示される時刻t1と、背景となる物体F1に関する図形情報(f, )と、「プレゼンテーション」という文字からなる図形G1に関する図形情報(g,G1)とを含んでいる。
【0065】
図形情報(f, )のうち「f」は、図14に示されたものと同様であって、この物体情報が図12に示される物体F0〜F3により示されている物体Fであことを示す識別番号である。この図形情報で特徴的なことは、図14に示される例では「F1」として示されていた、図12(b)の背景の物体F1の状態情報が含まれておらず、単なる空白(データのない状態)となっている点である。これは、このキーフレーム情報64において、物体Fの状態が、キーフレーム情報62内の物体Fに関する状態情報F0と同一であることを示している。こうして、前フレームと同一の状態情報を有する物体情報に関しては、物体間の対応(リンク)を示す識別番号のみを記録する。これにより、物体情報を表現するために必要なデータ量が、前フレームと同一の状態情報を有する物体に関しては全く省略することができる。したがって、前フレームと同一の状態情報のあるアニメーションでは、それを記録または伝送するためのデータ量を大幅に減らすことが可能になる。なお、アニメーションの復元時には、状態情報のないものについては、直前のキーフレームの対応の状態情報を使用すればよい。
【0066】
アニメーション情報64内の図形情報(g,G1)は、図12(b)に示される「プレゼンテーション」という文字からなる物体G1に対応するものである。物体G1は、図12(c)(d)にそれぞれ出現する物体G2およびG3に対応し、物体Gを示すものであるが、図12(b)に示されるキーフレームで初めて出現する。したがってキーフレーム情報64内には物体Gの状態情報G1がその識別番号gとともにそのまま格納されている。
【0067】
キーフレーム情報66では次の特徴がある。図12(c)に示されるように、背景の物体F(F2)、「プレゼンテーション」という文字からなる物体G(G2)は前のキーフレームと全く同じである。したがってそれぞれの物体情報は(f, )、(g, )となり、前フレームと同一の状態情報は記録されない。また「項目1」という文字からなる物体H2(物体H)はこのキーフレームで初めて出現するので、その物体情報(h,H2)が記録される。
【0068】
物体情報68で特徴的なのは、物体FおよびGについては前キーフレームと全く状態が変化していないからそれぞれ物体情報(f, )、(g, )としてしか記録されていないのに対し、物体Hの状態が、図12(c)に示される物体H2から図12(d)に示される物体H3のように、文字の背景情報のみが変化しているので、その文字の背景情報のみを含んだ物体情報H3が記録されている点である。また物体Iについてはこのキーフレームで初めて出現しているので、その物体情報がすべて記録されている。
【0069】
このように、前フレームと同一の状態である物体に関しては、その状態情報を全く記録せず、また前フレームの対応する物体と一部の状態情報のみが相違する物体に関しては、その相違する物体情報のみを記録する。これにより、各物体の状態情報のうち、前フレームと同一の状態情報を記録する必要がないため、アニメーション情報を記録/伝送するための記憶容量または伝送量が少なくて済むという効果がある。
【0070】
図3に、図1に示される装置において図14に示されるようなアニメーション情報130から図2に示されるような圧縮後のアニメーション情報60を作成するためのプログラムについて図3を参照して説明する。まずステップS1(以下「ステップ」という呼称は省略する。)では、処理対象となるキーフレームの順番を表わす変数kを最初のキーフレームを示す値に設定する。この変数kで示されるキーフレームを以下「キーフレームk」と表記することとする。
【0071】
次にS2で、キーフレームkの中身が存在するかどうかをチェックする。キーフレームkが存在しなければ処理を終了する。キーフレームkが存在する場合には処理はステップS3に進む。
【0072】
S3では、キーフレームkに対応するキーフレーム情報に含まれる「表示時刻」の情報を、記録または伝送する。本明細書中では、記録または伝送をまとめて「出力する」と呼ぶことにする。この場合、出力先の媒体が記憶媒体であるか伝送媒体であるかの相違があるだけであり、図3に示されるプログラムの制御構造大枠は全く変わらない。ここで送信されるデータは、たとえば図2に示されるキーフレーム情報62内の表示時刻「t0」である。
【0073】
次にS4で、キーフレームk内の物体を特定するための変数iを、キーフレームk内の最初の物体を示す値に設定する。以下、変数iで指し示される物体を「物体i」と表記する。
【0074】
S5では、物体iが当該キーフレーム内に存在するか否かがチェックされる。物体iが当該キーフレーム内に存在しなければ制御はS14に進む。S14以下の処理については後述する。物体iが存在する場合には、制御はS6に進む。
【0075】
S6では、物体iが直前のキーフレームk−1内の物体とリンクしているか否かについて判断する。具体的には、物体iと同一の識別番号を有している物体情報が、キーフレームk−1に対応するキーフレーム情報内に存在しているか否かについて判断する。物体iが前のキーフレームk−1内の物体とリンクしている場合には制御はS7に移る。リンクしていない場合には制御はS12に移る。
【0076】
S7では、キーフレームk−1に対応するキーフレーム情報の中で、物体iに対応した物体、すなわち物体iとリンクした物体を検索し、この物体を物体jとする。
【0077】
S8では、物体iと物体jとの状態を比較する。もし両者の状態が全く同じであれば、制御はS9に進む。両者の状態が一部でも異なる場合には制御はS10に進む。
【0078】
S9では、物体iの識別番号のみを出力し制御をS13に移す。S8およびS9の処理によって、たとえば図2に示されるキーフレーム情報64内の物体情報(f, )が作成される。
【0079】
S10では、物体iと物体jとの、色情報以外の情報を相互に比較する。もし、色情報以外の状態がすべて同じであれば制御はS11に進み、他の場合には制御はS12に進む。
【0080】
S11では、物体iの色情報と、識別番号とを出力する。この処理によりたとえば図2に示されるキーフレーム情報68内の物体情報(h,H3)が作成される。S11の後、制御はS13に進む。
【0081】
S12では、物体iのすべての状態情報と、物体iの識別番号とを出力する。これにより作成されるデータはたとえば図2のキーフレーム情報62内の物体情報(f,F1)、キーフレーム情報64内の物体情報(g,G1)、キーフレーム情報66内の物体情報(h,H2)、およびキーフレーム情報68内の物体情報(i,I3)などである。
【0082】
S13では、物体iを、キーフレームk内の次の物体に設定し制御をS5に戻す。
【0083】
一方S5で物体iが存在していないと判断された場合制御はS14に進むが、S14では、キーフレームkを次のキーフレームに設定して制御をS2に戻す。
【0084】
図3に示される制御構造を有するプログラムでは、先頭のキーフレームについては、それより先のキーフレームが存在していないため、S6における判断の結果が必ずNOとなりS12ですべての物体情報の状態情報が出力される。2番目以後のキーフレーム情報についてS2〜S14の処理が繰返し実行され、処理すべきキーフレーム情報が存在しなくなると処理が終了する。この処理により、前述したように直前のキーフレーム内の、対応する物体情報と全く同じ状態を有する物体情報についてはその識別番号のみが記録される。また一部の状態情報のみが異なる物体情報では、その異なる状態情報のみが記録される。
【0085】
これにより、アニメーション情報のデータ量が従来と比して著しく削減され、記憶するときの記憶容量および伝送する際の伝送量を少なくすることができる。
【0086】
実施の形態2
上記した実施の形態1では、物体の色情報以外の情報がすべて同じ場合のときには、物体の色情報と識別番号とだけを出力している。しかし既に述べたように、色情報以外の他の情報に対しても、本発明の方法を同じように適用することができる。実施の形態2はそうした例である。
【0087】
この処理の対象となる情報として、物体の色情報、物体を構成する線の種類(線種)の情報、物体の塗り潰しパターン(塗種)の情報、物体の座標情報などが考えられる。図4に、そうした情報を処理するプログラムの制御構造に対応するフローチャートを示す。
【0088】
なおこのプログラムを実行するための装置は、図1に示す実施の形態1のための装置をそのまま利用することができる。すなわちこの処理は一般的なコンピュータを用いて実現することができる。
【0089】
図4を参照して、まずS21では、キーフレームkを最初のキーフレームに設定する。
【0090】
S22で、キーフレームkに対応するキーフレーム情報の中身が存在するかどうかをチェックする。対応するキーフレーム情報が存在しなければ処理を終了する。対応するキーフレーム情報が存在する場合には制御はS23に進む。
【0091】
S23では、キーフレームkの表示時刻を出力する。すなわちキーフレームkに対応するキーフレーム情報内の「表示時刻」で示されるデータを出力する。
【0092】
S24で、物体iをキーフレームkの最初の物体に設定する。
【0093】
S25では、物体iがキーフレームk内に存在するか否かをチェックする。物体iが存在しなければ制御はS39に進む。物体iが存在する場合には制御はS26に進む。
【0094】
S26では、物体iが前のキーフレームk−1内の物体とリンクしているか否かを調べる。物体iが前のキーフレームk−1内の物体とリンクしている場合は制御はS27に移る。リンクしていない場合には制御はS37に進む。
【0095】
S27では、キーフレームk−1に対応するキーフレーム情報の中に存在する、物体iに対応した物体、すなわち物体iとリンクされた物体を検索し、これを物体jとする。
【0096】
S28では、物体iの識別番号の情報のみを出力する。
【0097】
S29では、物体iと物体jとの座標情報を相互に比較する。座標情報が同じであれば制御はS31に進む。座標情報が異なる場合には制御はS30に進む。
【0098】
S30では、物体iの座標情報を出力する。制御はその後S31に進む。S29およびS30での処理により、物体iと、この物体iがリンクされている物体jとの座標情報に違いがある場合だけ、物体iの座標情報が出力される。座標情報に違いがない場合には座標情報は出力されない。再生する側では、座標情報がない物体に関しては、その物体にリンクされた物体の座標情報と同一の座標情報と判断してアニメーションを再生する。
【0099】
S31では、物体iと物体jとの色情報を比較する。色情報が同じであれば制御はS33に進む。色情報が異なる場合には制御はS32に進む。
【0100】
S32では、物体iの色情報を出力する。その後制御はS33に進む。S31およびS32での処理により、物体iと、この物体iとリンクされた物体jとの色情報に違いがある場合だけ、物体iの色情報が出力される。
【0101】
S33では、物体iと物体jとの線種情報を比較する。線種情報が双方同一であれば制御はS35に進む。線種情報が異なる場合には制御はS34に進む。
【0102】
S34では、物体iの線種情報を出力する。制御はその後S35に進む。S33およびS34の処理により、物体iと、この物体iとリンクされた物体jとの線種情報に違いがある場合だけ、物体iの線種情報が出力される。
【0103】
S35では、物体iと物体jとの塗種情報が比較される。塗種情報が同一であれば制御はS38に進む。塗種情報が異なる場合には制御はS36に進む。
【0104】
S36では、物体iの塗種情報を出力する。その後制御はS38に進む。S35およびS36での処理により、物体iと、この物体iにリンクされた物体jとの塗種情報に違いがある場合だけ、物体iの塗種情報が出力される。
【0105】
S37では、物体iの状態情報と、識別番号とを出力する。その後制御はS38に進む。
【0106】
S38では、物体iを、キーフレームk内の次の物体に設定する。制御はその後S25に戻される。
【0107】
S39では、キーフレームkを次のキーフレームに設定し制御をS22に戻す。
【0108】
以下、S22〜S39の処理が繰返し行なわれる。この例でも、最初のキーフレーム情報に対する処理では、S26での判断の答えが必ずNOとなるため、すべての物体の識別番号とすべての状態情報とが記録される。2番目以降のキーフレームでは、S29〜S36の処理によって、リンクされた物体と異なる状態情報のみが記録される。こうした処理により、アニメーション情報のデータ量が削減され、記憶容量またはデータの伝送容量を小さくすることができる。
【0109】
以上述べた例では、多角形の属性情報を挙げて説明がなされている。しかし、本発明は多角形に対してのみ適用可能なわけではなく、他のさまざまな物体の属性情報に対して適用することもできる。また図4に示されるフローチャートでは、多角形の属性の処理のみを扱うものとなっているが、上述したように多角形以外の多くの種類の物体の情報を扱う場合にも、図4に示されるフローチャートに基づき容易に対処することができる。たとえば図4に示されるS28とS29との間に、物体の種類による分岐処理を設け、S29〜S36の処理を、物体の種類ごとに用意すればよい。
【0110】
たとえば、文字の色、文字の装飾属性、グラデーションの方向、音の強さ、光の強さなど、物体の種類に応じてさまざまな属性が考えられる。これら属性の状態情報が、リンクされた物体間で同一である場合にその状態情報を出力しないことにより、データ量を削減することができる。再生する側では、このように伝送されてこない情報が存在する場合には、その物体とリンクされた物体の状態情報を用いてキーフレーム情報を再現することができる。
【0111】
実施の形態3
実施の形態1および2では、あるキーフレーム内の物体情報につき、そのキーフレームの直前に出力されたキーフレーム毎の、その物体とリンクされた物体の物体情報とを比較し、その結果によって出力する情報の内容を変えていた。しかし、キーフレーム間の物体情報の比較によるデータ圧縮は、この手法のみに限定されるわけではない。たとえば図15に示されるアニメーションの場合、図15(a)および(c)では物体J0およびJ2の形状が同一、物体K0およびK2の形状が同一である。一方で図15(b)および(c)を比較した場合、物体J1およびJ2の形状は同一であるが、物体K1の形状は物体K2の形状とは同一ではない。したがって物体の形状のみを考えた場合、図15に示される例では図15(c)のキーフレームと比較するのは図15(b)ではなく図15(a)に示されるものとする方がより効率的な圧縮が行なえる。
【0112】
この実施の形態3では、あるキーフレーム内の物体情報と、そのキーフレームとは異なる他のキーフレーム内の物体情報とを比較し、両者の相違が僅かとなる、または同一となるキーフレームがあれば、そのキーフレームの番号を処理対象のキーフレームの当該物体情報内に記録する。こうすることにより、記録しなければならない状態情報が削減されることが期待できるので、アニメーション情報をより効率的に圧縮することができる。以下そうした手法を利用した実施の形態3について説明する。
【0113】
この手法は、特に図15に示されるような繰返しが現われるアニメーションに対して有効である。アニメーションには繰返し処理がしばしば現われるので、この手法は広い範囲のアニメーションに対して効果的である。
【0114】
図5に、この実施の形態3の方法によって図17に示されるアニメーション情報150を圧縮した後のアニメーション情報を模式的に示す。図5を参照してこのアニメーション情報80は、キーフレーム情報82、84、86および88を含んでいる。これらキーフレーム情報はそれぞれ図15(a)〜(d)に対応する。
【0115】
キーフレーム情報82は、図17に示されるキーフレーム情報152と同一である。したがってここではその詳細については繰返さない。
【0116】
キーフレーム情報84は、図17に示されるキーフレーム情報154とほぼ同一であるが、1番目の物体の物体情報(j,J1)が(j,X1)となっている点のみが異なる。X1は、図15(b)に示される物体J1が、図15(a)に示される物体J0に対して移動した相対移動量を表現したデータである。X1はたとえば次のような形式のデータで記録できる。
【0117】
R p1,p2,p3
ここでRは、このデータが、物体のキーフレーム間における相対移動を示すものであることを示すコマンドであり、p1は、いくつ前のキーフレーム中の物体が相対移動したかを示す数値、p2およびp3は所定のx座標およびy座標に関するその物体の移動距離である。p2およびp3は、図15に示されるように物体が画面内を移動するようなアニメーションの場合、物体の座標をそのまま記録する場合と比較して非常に小さなサイズとなることが多い。したがってアニメーション情報をより効率的に圧縮することが可能になる。
【0118】
キーフレーム情報84における第2の物体についての物体情報(k,K1)は、物体K1がこのキーフレームで初めて出現しているため、図17に示す例と変わらない。
【0119】
以下、キーフレーム情報86では物体J2およびK2に関する情報がそれぞれ(j,X2)、(k,Y2)として示される。またキーフレーム情報88では物体J3およびK3の物体情報がそれぞれ(j,X3)、(k,Y3)としてそれぞれ示される。ここでX2、X3、Y2、Y3はX1と同様に、それぞれの物体の、相対移動の情報を表現したデータであり、その表現形式は前述したX1と同様である。たとえば図4に示される例ではX1、X2、X3、Y2、Y3は図6に示されるような記号で表現することができる。
【0120】
図15を参照して、物体J1、J2およびJ3はそれぞれ、1つ前のキーフレームの物体J0、J1およびJ2が移動したものである。したがって比較対象となるキーフレームはいずれも1つ前のキーフレームであり、図6においてX1、X2およびX3の記号「R」の次の数値はいずれも「1」となっている。(x1,y1)(x2,y2)(x3,y3)はそれぞれ、物体J0に対するJ1の変位、物体J1に対する物体J2の変位、物体J2に対する物体J3の変位である。
【0121】
一方、物体K2およびK3は、それぞれ2つ前のキーフレームの物体K0およびK1が移動したものである。したがってこの場合、比較対象のキーフレームは2つ前のキーフレームである。Y2およびY3の記号「R」の次の数値は、図6に示されるように「2」となっている。(x4,y4)(x5,y5)はそれぞれ、物体K0からK2への変位および物体K1からK3までの変位を示している。このように物体の状態情報のうち、たとえばその位置について、比較対象となるキーフレームを定め、そのキーフレームに対する物体の変位のみを記録することで、物体情報のデータ量を削減することが可能になる。再生する側では、物体情報に含まれる、比較対象となる物体情報が含まれるキーフレームを特定する情報と、当該物体情報に含まれている変位情報とから、そのキーフレームにおける当該物体の座標を求めてキーフレームを再現することが可能である。
【0122】
図5に示されるようなデータを作成するためのプログラム、すなわち実施の形態3に係るアニメーション情報の圧縮方法を実現するためのプログラムについて、図7を参照して説明する。S41では、キーフレームkを最初のキーフレームに設定する。
【0123】
S42では、キーフレームkに対応するキーフレーム情報の中身が存在するか否かをチェックする。対応するキーフレーム情報が存在しなければ処理を終了する。対応するキーフレーム情報が存在する場合には制御はS43に進む。
【0124】
S43では、当該キーフレーム情報に含まれる、キーフレームkの表示時刻を出力する。ここで出力されるデータはたとえば、図5に示される時刻t0、t1、t2およびt3などである。
【0125】
S44で、物体iをキーフレームk内の最初の物体に設定する。
【0126】
続いてS45で、物体iが存在するか否かをチェックする。物体iが存在しなければ制御はS53に進む。物体iが存在する場合には制御はS46に進む。
【0127】
S46では、物体iと比較する物体jを、とりあえず物体iとする。また、物体iの相対移動量の基準となるキーフレームの、当該キーフレームに対する相対位置を計算するための数値Lを0とする。この後制御はS47に進む。
【0128】
S47では、物体jとリンクした物体が、物体jの含まれるキーフレームより前のキーフレームに存在するかどうかを調べる。物体jとリンクした物体が存在しない場合には制御はS51に進む。存在する場合には制御はS48に進む。
【0129】
S48では、物体jとリンクした物体を新たに物体jとする。Lの値に1を加算する。
【0130】
続いてS49では、物体iと物体jとにつき、物体iが物体jを移動させたものかどうかを判定する。この判定方法としては次の方法を使用する。まず物体iと物体jとの座標以外の情報がすべて全く同じかどうかを調べる。もしこれらが一致しなければ、物体iが物体jを移動させたものではないと判定する。もし座標以外の情報が同じ場合には、座標の数が同じかどうかを比較する。座標の数が同じでなければ物体iは物体jを移動させたものではないと判定する。座標数が両者同じ場合には、物体iの座標点と物体jの対応する座標点との差を調べる。対応する座標点ごとに計算したx座標の差およびy座標の差がすべての点に対して同じであれば、物体iは物体jを移動させたものであると判定する。それ以外の場合にはそうではないと判定する。物体iが物体jを移動させたものであると判定された場合には制御はS50に進む。それ以外の場合には制御はS47に戻る。
【0131】
S50では、物体iが物体jをどれだけ移動させたものであるかという情報と、物体iから数えていくつ前にリンクした物体を移動させたものであるかという情報Lの値とを出力する。その後制御はS52に進む。この処理により、図5に示される物体情報(j,X1)、(j,X2)、(k,Y2)、(j,X3)、および(k,Y3)が出力される。
【0132】
一方S47における判断の結果がNOである場合には制御はS51に進むが、S51では、物体iの識別番号と状態情報とを出力し、制御をS52に進める。図5に示される例のうち、(j,J0)(k,K0)および(k,K1)がこのS51の処理で出力される。
【0133】
S52では、物体iをキーフレームk内の次の物体に設定する。制御はS45に戻り、S45以下の処理が繰返される。
【0134】
S45で、キーフレームk内に物体iが存在しないと判断された場合、制御はS53に進むが、S53では、キーフレームkを次のキーフレームに設定し、制御をS42に戻す。以下、S42以降の処理が繰返される。
【0135】
【発明の効果】
以上述べたように本発明のアニメーション情報の圧縮方法を用いると、ビジネスプレゼンテーションのためのアニメーションのように、新しい項目が順番に現われてくるようなアニメーションにおいて、先に出現した物体を何度も記録または伝送する必要がない。そのためすべてのキーフレームを記録または伝送する必要がある従来方式と比べて、アニメーション情報を記録または伝送するためのデータ量が非常に小さくなる。
【0136】
また、繰返しの多いアニメーションの場合に、一度出現した物体を何度もキーフレーム情報内に記録する必要はない。そのためすべてのキーフレーム内のすべての物体情報を記録または伝送する従来方式と比べて、アニメーション情報のデータ量が非常に小さくなる。そのため、従来は利用することができなかった小容量の記録メディア、たとえばフロッピィディスクやIC(集積回路)カードなどにもアニメーションを記録することができる。またその裏返しの効果として、一定の容量の記憶メディアの中に、従来以上の大量のアニメーションデータを記録しておくことができるので、従来よりも多いアニメーション情報を含んだ辞書やマニュアル等を電子的な媒体に記録することができる。
【0137】
同様に、アニメーションのデータ量を非常に小さくできるため、アニメーション情報を伝送する際の伝送容量が少なくて済む。たとえば1回に伝送可能なデータ量に制限があって、従来の方式によるアニメーション情報を伝送することができなかった場合でも、本発明による圧縮方法により圧縮したアニメーション情報を伝送することが可能になる。また同じアニメーションを再生するためのアニメーション情報を伝送する場合に、本願発明の方法によって圧縮したアニメーション情報を伝送する場合には、従来の方法で準備したアニメーション情報を伝送する場合と比較して、伝送に要する時間が非常に短くなるという効果がある。
【図面の簡単な説明】
【図1】本願発明に係るアニメーション情報の圧縮方法を実現するための装置の概略ブロック図である。
【図2】実施の形態1でのアニメーション情報のデータ形式を模式的に示す図である。
【図3】実施の形態1を実現するためのプログラムのフローチャートである。
【図4】実施の形態2の方法を実現するためのプログラムのフローチャートである。
【図5】実施の形態3でのアニメーション情報のデータ形式を模式的に示す図である。
【図6】実施の形態3での相対移動の記号表現の例を模式的に示す図である。
【図7】実施の形態3の方法を実現するためのプログラムのフローチャートである。
【図8】キーフレーム方式によるアニメーションのキーフレームを模式的に示す図である。
【図9】図8に示されるキーフレーム情報を表形式で示す図である。
【図10】図9に示されるデータを従来形式で記録する際のデータ形式を模式的に示す図である。
【図11】図10に示されるデータ形式に従って図9に示されるデータを記録した際のデータ内容を模式的に示す図である。
【図12】プレゼンテーションアニメーションのキーフレームを模式的に示す図である。
【図13】図12に示されるキーフレームのためのキーフレーム情報を表形式で示す図である。
【図14】図13に示されるキーフレーム情報を従来方式に従って記録した場合のデータ構造を示す図である。
【図15】繰返しが多数現われるアニメーションの一例のキーフレームを模式的に示す図である。
【図16】図15に示されるキーフレームのためのキーフレーム情報を表形式で示す図である。
【図17】図16に示されるキーフレーム情報からなるアニメーション情報のデータ形式を模式的に示す図である。
【符号の説明】
30 アニメーション情報圧縮装置
32 コンピュータ
34 外部記憶装置
36 ディスプレイ装置
38 座標入力装置
40 キーボード
42 ネットワーク
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an animation processing method for recording or transmitting animation data created in advance using computer graphics, and in particular, when displaying an animation by generating an intermediate frame between key frame information by interpolation. It relates to a method for compressing keyframe information.
[0002]
[Prior art]
Image data having a motion like animation is composed of a very large number of images (called frames). If the information of each frame is recorded as it is, an enormous amount of data is required. Therefore, a so-called moving image compression technique has been proposed for compressing and recording or transmitting the moving image information so that the amount of information is not reduced as much as possible.
[0003]
When a moving image is input from a camera or output to a display, a so-called raster scan method is often employed. The raster scanning method is a method of dividing each frame into a plurality of horizontal scanning lines and scanning each scanning line in order from the top and from the left to the right. For this reason, in general, a moving image compression method is often intended for raster scan images.
[0004]
An animation generated by a computer graphics technique is also converted into scanning line information by raster scanning when displayed on a display. Therefore, when recording animation data, conventionally, a method of compressing and recording a plurality of raster scan images has been employed. For example, Japanese Patent Application Laid-Open No. 61-198877 discloses a data compression technique for increasing the compression rate using conditions specific to computer animation when compressing scanning line information by raster scanning.
[0005]
On the other hand, there is a technique called key frame animation as one of animation production techniques using computer graphics. In key-frame animation, the animation is viewed as a collection of multiple “objects” that change over time. When creating an animation, not all the frames are created, but only the frames (referred to as “key frames”) that are important for movement are created first. Next, an object of a frame other than the key frame (referred to as “intermediate frame”) is automatically generated by performing interpolation calculation on the object included in the key frame. This interpolation method is disclosed in JP-A-60-191366.
[0006]
The animation using this key frame method can reproduce the animation only from information about some key frames, not all the frames. Therefore, there is an advantage that the amount of data is overwhelmingly small as compared with the case of creating and recording information of all frames. For this reason, for example, the required capacity of the storage medium can be reduced and the transmission time can be reduced.
[0007]
By the way, in order to automatically generate an intermediate frame by interpolating from key frame information, information on which object changes to which object is necessary. For this reason, Japanese Patent Application Laid-Open No. 60-191366 discloses a method for associating objects. It is necessary to record / transmit data relating to this association together with key frame information.
[0008]
8A to 8D show four key frames of a certain animation in time series. Hereinafter, how to record the information of the object included in the key frame of the animation shown in FIG. 8 in the prior art will be described. In order to record the information of the object of the key frame, for example, as disclosed in JP-A-5-101160, data (state information) indicating what state each object is in each key frame, For example, it is necessary to prepare in advance as shown in a table format in FIG.
[0009]
In FIG. 8A, the objects A0 to A2, B0 to B3, E2 and E3 are filled polygons. The objects C1 and C2 and the objects D1 to D3 are curves. Key frames shown in FIGS. 8A to 8D are presented at times t0, t1, t2, and t3 during the animation.
[0010]
As can be seen from FIGS. 8A to 8D, the objects A0, A1, and A2 show changes in one object. This object will be referred to as object A. Similarly, the objects B0 to B3 show changes in the same object B. Objects E2 and E3 show changes in one object E. Objects C1 and C2 indicate changes in one object C, and objects D1 to D3 indicate changes in another object D, respectively.
[0011]
FIG. 9 shows an object appearing in each key frame corresponding to times t0 to t3 and a state of each object in each key frame. In FIG. 9, each column indicates a key frame corresponding to each time, and each row corresponds to an object appearing in the animation. Each element in the table of FIG. 9 indicates state information of each object in the key frame. For convenience of explanation, reference numerals A0 to A2, B0 to B3, C1, C2, D1 to D3, E2, and E3 indicating the respective objects also indicate state information of the objects A to E at the respective times. . In the table shown in FIG. 9, a blank column indicates that the object does not appear on the screen at that time.
[0012]
Here, a figure that appears in the animation is assumed as the object. However, there are various forms of objects other than graphics. For example, the figure can be a line, polygon, circle, solid figure, etc., as well as text, sound and music size, image quality parameters, display window position, size, line thickness, color, light source position and viewpoint. Such as location.
[0013]
For example, when a sound effect is desired to be sounded at a certain key frame, the sound effect appears as an object at that key frame. If you want to change the position or size of the window that displays the animation at a keyframe, enter that window parameter in that keyframe. As described above, all the various numerical parameters used in the animation can be handled as “object” in the present specification, and in particular, can be handled as state values representing the state of the object.
[0014]
If data as shown in the table format in FIG. 9 is prepared in advance, an intermediate frame image at an arbitrary time is displayed for key frames before and after that time (one or more key frames before and after the time). The object state information described in the key frame information can be calculated by interpolation. This interpolation method is disclosed in Japanese Patent Laid-Open No. 61-191366. Known techniques for interpolation calculations include linear interpolation and interpolation methods using curve approximation such as splines.
[0015]
An example of a format for actually recording data as shown in FIG. 9 on a storage medium or the like is shown in FIG. Referring to FIG. 10, animation information 100 includes a plurality of key frame information 102, 104,. For example, the key frame information 102 includes a time at which the key frame is to be presented and object information regarding an object to be presented within the key frame. Each object information includes an object identification number and object state information. The same applies to other key frame information 104 and the like.
[0016]
For example, FIG. 11 shows animation information in which the data shown in FIG. 9 is recorded in the format shown in FIG. Referring to FIG. 11, animation information 110 includes key frame information 112, 114, 116 and 118. The key frames corresponding to the key frame information should be presented at times t0, t1, t2, and t3, respectively.
[0017]
For example, the key frame information 112 includes object information of an object to be presented at time t0.
[0018]
Of the first object information (a, A0), “a” is an identification number indicating that this object information is related to the object A, and “A0” is the state information of the object A at time t0. Show. In the second object information (b, B0), “b” is an identification number indicating that the object information is related to the object B, and “B0” is the object information at time t0 of the object B. It shows that it is status information. The meaning of each symbol shown in FIG. 11 is obvious to those skilled in the art from the above description and FIGS. Therefore, detailed description thereof will not be repeated here.
[0019]
The time (t0 to t3) and the identification number of each key frame can be recorded by various expression methods. For example, the time can be expressed by a numerical value in units of 1/1000 second. In addition, as an identification number, there is a method of expressing it with a number of 0 or more that does not overlap with different objects.
[0020]
There are various methods for expressing object state information. For example, there is a method for expressing object state information using commands. A representation example of the state information of a filled polygon using a command is shown below.
[0021]
P p1, p2, p3, x1, y1, x2, y2, ... xn, yn
Here, P is a command indicating that this object is a filled polygon. Parameters p1 to p3 respectively represent the color number of the polygon, the number of the fill pattern, and the number of vertices of the polygon. x1, y1, x2, y2,..., xn, yn (n = p3) are the x coordinate and y coordinate of each vertex of the polygon. In the following description, various patterns are registered in advance as polygon filling patterns, and one of the parameters p2 is designated by a number.
[0022]
Similarly, the following is an example of expressing a curve in a code format using commands.
[0023]
L p1, p2, p3, x1, y1, x2, y2, ... xn, yn
Here, L is a command indicating that this object is a curve, and parameters p1 to p3 respectively indicate the color number of the curve, the thickness of the curve, and the number of characteristic points of the curve. x1, y1, x2, y2,..., xn, yn (n = p3) are the coordinates of the characteristic points of the curve.
[0024]
As described above, various objects other than graphics can be considered as “objects”, and each of them is coded in a format consisting of a parameter sequence defined by the command with a command for identifying the type of the object at the head. be able to.
[0025]
FIG. 12 shows another animation example related to so-called business presentation. 12A to 12D each show a key frame. In FIG. 12, objects F0 to F3 are the object F that is the background, and are in the same state in all the key frames. Objects G1 to G3 are objects G made up of the characters “presentation”, and are in the same state in the three key frames of FIGS. 12 (b) to 12 (d). Objects H2 and H3 are objects H composed of the characters “item 1”. The object H2 has a colored background, and the object H3 has a white background. The object I3 is an object I composed of the characters “item 2”, and is displayed only in the key frame shown in FIG. 12D, and its background is colored.
[0026]
FIG. 13 shows key frame information for reproducing the animation shown in FIG. 12 in the same table format as FIG. The relationship between FIG. 13 and FIG. 12 is the same as the relationship between FIG. 9 and FIG. Therefore, details thereof will not be repeated here.
[0027]
An example in which the data shown in FIG. 13 is expressed by a conventional method is shown in FIG. Referring to FIG. 14, animation information 130 includes four key frame information 132, 134, 136 and 138. These correspond to the key frames shown in FIGS. For example, the key frame information 132 represents the key frame shown in FIG. 12A, and includes the display time t0 and graphic information (f, F0) regarding the object F0 as the background. Of the graphic information (f, F0), “f” is the identification number of the object F represented by the graphics F0 to F3, and “F0” is the status information of the object F at the time of this key frame.
[0028]
The structure of other key frame information is the same as that of the key frame information 132.
[0029]
Still another example of animation is shown in FIG. The animations shown in FIGS. 15A to 15D are characterized by including repetition. The animation shown in FIG. 15 shows the flapping of a bird. In FIGS. 15A to 15D, objects J0 to J3 represent bird trunks, and objects K0 to K3 represent bird wings. As can be seen with reference to FIG. 15, the objects J0 to J3 have the same shape in all key frames. The objects K0 and K2 have the same shape, and the objects K1 and K3 also have the same shape. In this way, many repetitions often appear during animation.
[0030]
FIG. 16 shows the animation shown in FIG. 15 in the form of a table. The relationship between FIG. 16 and FIG. 15 is the same as the relationship between FIG. 9 and FIG. Therefore, details thereof will not be repeated here.
[0031]
FIG. 17 shows a form for recording the data shown in FIG. Referring to FIG. 17, the animation information 150 includes four key frame information 152, 154, 156 and 158. Each of these key frame information indicates the key frames shown in FIGS. For example, the key frame information 152 corresponds to the key frame of FIG. 15A, and includes the display time t0 of this key frame and object information about the two objects J0 and K0. Among these, “j” in the object information (j, J0) is an identification number indicating the object J, and “J0” indicates that the state of the object J is J0. The other key frame information 154 to 158 has the same meaning.
[0032]
[Problems to be solved by the invention]
Among the animations, the so-called business presentation animation as shown in FIG. 12 often does not change much on the entire screen, and new items are often added to the screen in order. When such an animation is recorded using the key frame animation method as described above, it is necessary to record object information in all subsequent key frames even if the object does not change after appearing once on the screen. is there. In the key frame animation, this is natural because it is necessary to record all the states of the object at the required time due to the interpolation between the adjacent key frames. However, when such a recording method is used, there is a problem that the amount of data becomes very large. In particular, when the state information of each object itself is large data, the storage capacity required to record animation information is considered to be proportional to the product of the number of key frames, the number of objects, and the amount of data per object. Therefore, there is a problem that the amount of data required increases at an accelerated rate.
[0033]
Further, in the animation as shown in FIG. 15, due to the characteristics of the key frame animation method, it is necessary to record the data for each key frame that appears even if the object has the same shape as the object that has appeared previously. is there. Also in this case, like the so-called animation for business presentation, there is a problem that the storage capacity required for recording animation information becomes very large.
[0034]
Such a problem applies not only when recording animation information but also when transmitting it to another computer via a network.
[0035]
Therefore, an object of the present invention is to provide a method for compressing animation information, which can more efficiently compress animation information using the key frame animation method.
[0036]
Another object of the present invention is to provide a computer-readable recording medium on which an animation information compression program is recorded, which can more efficiently compress animation information using a key frame animation method.
[0037]
[Means for Solving the Problems]
[0044]
Claim 1 The method for compressing animation information according to the invention described in claim 1 uses a computer that compresses key frame information for an animation in which an intermediate frame is generated and displayed by interpolating between a plurality of key frames using a computer. It was the way. Each key frame information includes object information regarding an object to be displayed in the corresponding key frame. The object information includes state information of the object and link information to corresponding object information in key frame information having a predetermined relationship with the key frame information.
[0045]
In this method, a first output step for outputting reference key frame information to a medium, and the next key frame information is read in response to the end of the output of the previous key frame information, and the read key frame information Are compared with the corresponding object information in the key frame information having a predetermined relationship with the read key frame information, and only the link information and the difference amount for the different state information are compared. A second output step of outputting the compressed key frame information including the object information to the medium, and a step of repeating this second output step until all of the key frame information to be compressed is compressed. Contains.
[0046]
In this method, the object information of the compressed key frame information is a result of comparing the link information with the corresponding object information in the key frame information having a predetermined relationship with the key frame information to which the object information belongs. , Only the difference amount for the different state information is included. No state information is included. In the case of state information with a difference, the amount of difference is often smaller than the value of the state information as a characteristic of animation. Therefore, according to this method, the data amount of animation information can be made much smaller than that of the conventional method.
[0047]
Claim 2 In the animation information compression method according to the invention described in claim 5, in addition to the configuration of the invention according to claim 5, key frame information having a predetermined relationship has already been output to the medium before the key frame information is output. It is key frame information. If the key frame information is stored after the key frame information is output, it is not necessary to read the key frame information again for comparison with the subsequent key frame information. Therefore, comparison processing between key frames can be performed quickly.
[0048]
Claim 3 The animation information compression method according to the invention described in item 5 is characterized in that, in addition to the configuration of the invention described in claim 5 or 6, the medium on which the animation information is output is a storage medium. Since the amount of data required for the animation information can be reduced, the capacity of the storage medium can be reduced.
[0049]
Claim 4 The animation information compression method according to the invention described in item 5 is characterized in that, in addition to the configuration of the invention described in claim 5 or 6, the medium on which the animation information is output is a communication medium. Since the amount of data for animation information can be reduced, an animation having the same amount of information can be reproduced simply by transmitting a smaller amount of data compared to the conventional method.
[0050]
Claim 5 The method for compressing animation information according to the invention described in claim 1 uses a computer that compresses key frame information for an animation in which an intermediate frame is generated and displayed by interpolating between a plurality of key frames using a computer. This is the compression method of animation information. Each key frame information includes object information regarding an object to be displayed in the corresponding key frame. The object information includes state information of the object and link information to corresponding object information in key frame information having a predetermined relationship with the key frame information.
[0051]
In this method, a first output step for outputting reference key frame information to a medium, and the next key frame information is read in response to the end of the output of the previous key frame information, and the read key frame information For each piece of object information, key frame information including object information having a parallel movement relationship with the object information is searched to identify key frame information including the object information having the parallel movement relationship. A second output step for outputting compressed key frame information including object information including information to be performed, link information, and parallel movement amount to the medium; and Repeating until all of the frame information is compressed.
[0052]
In this method, the object information of the key frame information after compression includes link information, information for specifying key frame information including object information of an object that is in parallel movement with the object corresponding to the object information, The amount of parallel movement is included. The coordinate information of the object in the key frame to be processed can be restored from the object information of the object having the parallel movement relationship and the parallel movement amount. Compared to the case where all the coordinate information of the object is recorded without the object information, the necessary data amount is reduced.
[0053]
In addition, the amount of parallel movement between objects that are in a relationship of parallel movement is often smaller than the value of the coordinates of the object as a characteristic of animation. Therefore, according to this method, the data amount of animation information can be made much smaller than that of the conventional method.
[0054]
Claim 6 The recording medium according to the invention described above is for causing a function of compressing key frame information for an animation in which an intermediate frame is generated and displayed by interpolating between a plurality of key frames using a computer. A computer-readable recording medium on which a program is recorded. Each key frame information includes object information regarding an object to be displayed in the corresponding key frame. The object information includes state information of the object and link information to corresponding object information in the key frame information output before the key frame information.
[0055]
This recording medium reads key frame information serving as a reference, reads the next key frame information in response to the first output step of outputting to the medium, and the end of the output of the immediately preceding key frame information, and the read key Each object information in the frame information is compared with the corresponding object information in the key frame information that was output before the read key frame information, and the link information and the state information that is different About the difference amount A second output step for outputting the compressed key frame information including only the object information to the medium, and a step of repeating this second output step until all of the key frame information to be compressed is compressed. Including a computer-readable recording medium on which a compression program of animation information for realizing the above is recorded.
[0056]
Here, as a computer-readable recording medium in which a compression program for animation information is recorded, the one corresponding to claim 1 is described, but the present invention is not limited to this, and any claim Is also feasible.
[0057]
DETAILED DESCRIPTION OF THE INVENTION
Embodiment 1
FIG. 1 shows a schematic block diagram of an animation information compression apparatus for carrying out the method according to the present invention. Referring to FIG. 1, this apparatus 30 includes a computer 32 connected to a network 42, a hard disk for recording animation information and recording or outputting it in response to an input / output request from the computer 32, An external storage device 34 composed of a floppy disk or the like, a display device 36 connected to the computer 32 for displaying animation, a keyboard 40 for inputting necessary commands and data, a tablet, a digitizer, a mouse, etc. And a coordinate input device 38.
[0058]
The computer 32 executes a program having a control structure according to a flowchart to be described later, thereby realizing an arithmetic processing unit 50 composed of a microprocessor or the like, an arithmetic processing unit 50 and a network 42 for realizing the method according to the present invention. And an interface circuit 48 with other peripheral devices, a program executed by the arithmetic processing unit 50, and a memory 52 for storing data necessary for processing.
[0059]
The animation information compression program is supplied by a recording medium such as a magnetic tape or a CD-ROM. The animation information compression program is executed by the computer main body 32, and the operator compresses the animation information by operating the keyboard 40 or the mouse while looking at the display device 36. The animation information compression program may be supplied to the computer main body 52 through the network 42 by another computer.
[0060]
The operation of the device 30 is the same as that of a normal computer. That is, the processing unit 50 sequentially reads and executes the instructions stored in the memory 52, and changes the instruction to be executed, the data processed by the instruction, the data storage destination and the reading destination, etc. according to the control structure of the program By doing so, the functions described later are realized. Since the general operation of a computer is within the knowledge of those skilled in the art, the details thereof will not be repeated here.
[0061]
In the following example, a case where animation information for the animation of the presentation shown in FIG. 12 is compressed will be described first. The basic framework of data required in this case is as shown in FIG. 13, and the data shown in FIG. 14 is prepared in advance. In the present embodiment, the animation information is compressed by converting the data shown in FIG. 14 into the format shown in FIG. In the following description, the animation information as shown in FIG. 14 is prepared and then compressed as an example. However, the data shown in FIG. 2 is directly generated without creating the data shown in FIG. Format animation information may be created.
[0062]
Referring to FIG. 2, animation information 60 output by the method of the present invention includes four key frame information 62, 64, 66 and 68. Each of these key frame information 62, 64, 66 and 68 corresponds to the key frames shown in FIGS.
[0063]
The key frame information 62 corresponds to the first key frame of the animation. In the present embodiment, the key frame information 62 is the same as the key frame information 132 shown in FIG. The key frame information 62 becomes a reference for compressing the subsequent key frame.
[0064]
The key frame information 64 corresponds to the key frame shown in FIG. The key frame information 64 includes a time t1 when the key frame is displayed, graphic information (f,) related to the background object F1, and graphic information (g, G1) related to the graphic G1 including the characters “presentation”. Contains.
[0065]
Of the graphic information (f,), “f” is the same as that shown in FIG. 14, and this object information is the object F indicated by the objects F0 to F3 shown in FIG. This is an identification number. What is characteristic of this graphic information is that it does not include the state information of the background object F1 shown in FIG. 12B, which is shown as “F1” in the example shown in FIG. This is a point where there is no. This indicates that in the key frame information 64, the state of the object F is the same as the state information F0 regarding the object F in the key frame information 62. Thus, for object information having the same state information as the previous frame, only the identification number indicating the correspondence (link) between the objects is recorded. As a result, the amount of data necessary for expressing the object information can be omitted completely for an object having the same state information as the previous frame. Therefore, it is possible to greatly reduce the amount of data for recording or transmitting the animation having the same state information as the previous frame. At the time of restoring the animation, the state information corresponding to the immediately preceding key frame may be used for those without state information.
[0066]
The graphic information (g, G1) in the animation information 64 corresponds to the object G1 made up of the characters “Presentation” shown in FIG. The object G1 corresponds to the objects G2 and G3 that appear in FIGS. 12C and 12D, respectively, and indicates the object G, but appears for the first time in the key frame shown in FIG. 12B. Therefore, the state information G1 of the object G is stored in the key frame information 64 together with its identification number g.
[0067]
The key frame information 66 has the following characteristics. As shown in FIG. 12C, the background object F (F2) and the object G (G2) composed of the characters “presentation” are exactly the same as the previous key frame. Therefore, each object information becomes (f,), (g,), and the same state information as the previous frame is not recorded. Since the object H2 (object H) consisting of the characters “item 1” appears for the first time in this key frame, the object information (h, H2) is recorded.
[0068]
What is characteristic of the object information 68 is that the states of the objects F and G are not recorded as object information (f,) and (g,), respectively, because the state of the objects F and G is not changed at all. Since only the character background information changes from the object H2 shown in FIG. 12 (c) to the object H3 shown in FIG. 12 (d), the state includes only the character background information. This is a point where object information H3 is recorded. Since the object I appears for the first time in this key frame, all the object information is recorded.
[0069]
Thus, for an object that is in the same state as the previous frame, the state information is not recorded at all, and for an object in which only part of the state information is different from the corresponding object in the previous frame, the different object Records information only. As a result, it is not necessary to record the same state information as the previous frame among the state information of each object, and there is an effect that a storage capacity or a transmission amount for recording / transmitting animation information can be reduced.
[0070]
FIG. 3 shows a program for creating the compressed animation information 60 as shown in FIG. 2 from the animation information 130 as shown in FIG. 14 in the apparatus shown in FIG. 1 with reference to FIG. . First, in step S1 (hereinafter, “step” is omitted), a variable k indicating the order of key frames to be processed is set to a value indicating the first key frame. The key frame indicated by the variable k is hereinafter referred to as “key frame k”.
[0071]
Next, in S2, it is checked whether or not the contents of the key frame k exist. If the key frame k does not exist, the process ends. If the key frame k exists, the process proceeds to step S3.
[0072]
In S3, the “display time” information included in the key frame information corresponding to the key frame k is recorded or transmitted. In this specification, recording or transmission is collectively referred to as “output”. In this case, the only difference is whether the output destination medium is a storage medium or a transmission medium, and the control structure outline of the program shown in FIG. 3 is not changed at all. The data transmitted here is, for example, the display time “t0” in the key frame information 62 shown in FIG.
[0073]
Next, in S4, the variable i for specifying the object in the key frame k is set to a value indicating the first object in the key frame k. Hereinafter, the object pointed by the variable i is referred to as “object i”.
[0074]
In S5, it is checked whether or not the object i exists in the key frame. If the object i does not exist in the key frame, the control proceeds to S14. The processes after S14 will be described later. If the object i exists, the control proceeds to S6.
[0075]
In S6, it is determined whether or not the object i is linked to the object in the immediately preceding key frame k-1. Specifically, it is determined whether or not object information having the same identification number as the object i exists in the key frame information corresponding to the key frame k-1. If the object i is linked to the object in the previous key frame k-1, the control moves to S7. If it is not linked, control proceeds to S12.
[0076]
In S7, an object corresponding to the object i, that is, an object linked to the object i is searched from the key frame information corresponding to the key frame k-1, and this object is set as the object j.
[0077]
In S8, the states of the object i and the object j are compared. If both states are exactly the same, the control proceeds to S9. If the two states are partially different, the control proceeds to S10.
[0078]
In S9, only the identification number of the object i is output, and the control is shifted to S13. By the processing of S8 and S9, for example, object information (f,) in the key frame information 64 shown in FIG. 2 is created.
[0079]
In S10, information other than color information of the object i and the object j is compared with each other. If all the states other than the color information are the same, the control proceeds to S11, otherwise the control proceeds to S12.
[0080]
In S11, the color information of the object i and the identification number are output. By this processing, for example, object information (h, H3) in the key frame information 68 shown in FIG. 2 is created. After S11, the control proceeds to S13.
[0081]
In S12, all the state information of the object i and the identification number of the object i are output. The data created thereby includes, for example, object information (f, F1) in the key frame information 62 in FIG. 2, object information (g, G1) in the key frame information 64, and object information (h, F1) in the key frame information 66. H2), and object information (i, I3) in the key frame information 68.
[0082]
In S13, the object i is set as the next object in the key frame k, and the control is returned to S5.
[0083]
On the other hand, if it is determined in S5 that the object i does not exist, the control proceeds to S14. In S14, the key frame k is set as the next key frame, and the control is returned to S2.
[0084]
In the program having the control structure shown in FIG. 3, since there is no previous key frame for the first key frame, the determination result in S6 is always NO and the state information of all object information in S12 Is output. The processes of S2 to S14 are repeatedly executed for the second and subsequent key frame information, and the process ends when there is no more key frame information to be processed. By this process, as described above, only the identification number is recorded for the object information having the same state as the corresponding object information in the immediately preceding key frame. Further, in the case of object information that differs only in some state information, only the different state information is recorded.
[0085]
Thereby, the data amount of animation information is remarkably reduced as compared with the conventional case, and the storage capacity when storing and the transmission amount when transmitting can be reduced.
[0086]
Embodiment 2
In Embodiment 1 described above, when all the information other than the color information of the object is the same, only the color information of the object and the identification number are output. However, as already described, the method of the present invention can be similarly applied to information other than color information. Embodiment 2 is such an example.
[0087]
As information to be processed, information on the color of the object, information on the type of line (line type) constituting the object, information on the filling pattern of the object (paint type), coordinate information on the object, and the like can be considered. FIG. 4 shows a flowchart corresponding to the control structure of the program that processes such information.
[0088]
As an apparatus for executing this program, the apparatus for Embodiment 1 shown in FIG. 1 can be used as it is. That is, this process can be realized using a general computer.
[0089]
Referring to FIG. 4, first, in S21, key frame k is set as the first key frame.
[0090]
In S22, it is checked whether or not the contents of the key frame information corresponding to the key frame k exists. If there is no corresponding key frame information, the process is terminated. If the corresponding key frame information exists, the control proceeds to S23.
[0091]
In S23, the display time of the key frame k is output. That is, data indicated by “display time” in the key frame information corresponding to the key frame k is output.
[0092]
In S24, the object i is set as the first object of the key frame k.
[0093]
In S25, it is checked whether or not the object i exists in the key frame k. If the object i does not exist, the control proceeds to S39. If the object i exists, the control proceeds to S26.
[0094]
In S26, it is checked whether or not the object i is linked to the object in the previous key frame k-1. If the object i is linked to the object in the previous key frame k-1, the control moves to S27. If not linked, the control proceeds to S37.
[0095]
In S27, an object corresponding to the object i existing in the key frame information corresponding to the key frame k-1, that is, an object linked to the object i is searched, and this is set as the object j.
[0096]
In S28, only the information of the identification number of the object i is output.
[0097]
In S29, the coordinate information of the object i and the object j is compared with each other. If the coordinate information is the same, the control proceeds to S31. If the coordinate information is different, the control proceeds to S30.
[0098]
In S30, the coordinate information of the object i is output. Control then proceeds to S31. Only when there is a difference in the coordinate information between the object i and the object j to which the object i is linked by the processing in S29 and S30, the coordinate information of the object i is output. If there is no difference in the coordinate information, the coordinate information is not output. On the playback side, for an object without coordinate information, the animation is reproduced by determining that the coordinate information is the same as the coordinate information of the object linked to the object.
[0099]
In S31, the color information of the object i and the object j is compared. If the color information is the same, the control proceeds to S33. If the color information is different, the control proceeds to S32.
[0100]
In S32, the color information of the object i is output. Thereafter, the control proceeds to S33. Only when there is a difference in color information between the object i and the object j linked to the object i by the processing in S31 and S32, the color information of the object i is output.
[0101]
In S33, the line type information of the object i and the object j is compared. If the line type information is the same, the control proceeds to S35. If the line type information is different, the control proceeds to S34.
[0102]
In S34, the line type information of the object i is output. Control then proceeds to S35. The line type information of the object i is output only when there is a difference in the line type information between the object i and the object j linked to the object i by the processing of S33 and S34.
[0103]
In S35, the coating information of the object i and the object j is compared. If the coating information is the same, the control proceeds to S38. If the coating information is different, the control proceeds to S36.
[0104]
In S36, the coating type information of the object i is output. Thereafter, the control proceeds to S38. Only when there is a difference in the paint information between the object i and the object j linked to the object i by the processing in S35 and S36, the paint information of the object i is output.
[0105]
In S37, the state information of the object i and the identification number are output. Thereafter, the control proceeds to S38.
[0106]
In S38, the object i is set as the next object in the key frame k. Control is then returned to S25.
[0107]
In S39, the key frame k is set to the next key frame, and the control is returned to S22.
[0108]
Thereafter, the processes of S22 to S39 are repeated. Also in this example, in the process for the first key frame information, since the answer to the determination in S26 is always NO, the identification numbers of all objects and all the state information are recorded. In the second and subsequent key frames, only state information different from the linked object is recorded by the processing of S29 to S36. By such processing, the data amount of the animation information is reduced, and the storage capacity or the data transmission capacity can be reduced.
[0109]
In the example described above, description is made by taking polygon attribute information as an example. However, the present invention can be applied not only to polygons but also to attribute information of various other objects. In the flowchart shown in FIG. 4, only polygon attribute processing is handled. However, as described above, when processing information on many types of objects other than polygons, FIG. It can be easily dealt with based on the flowchart. For example, a branching process depending on the type of object may be provided between S28 and S29 shown in FIG. 4, and the processes of S29 to S36 may be prepared for each type of object.
[0110]
For example, various attributes such as character color, character decoration attribute, gradation direction, sound intensity, and light intensity can be considered depending on the type of object. When the state information of these attributes is the same between linked objects, the amount of data can be reduced by not outputting the state information. On the reproducing side, when there is information that is not transmitted in this way, the key frame information can be reproduced using the state information of the object linked to the object.
[0111]
Embodiment 3
In the first and second embodiments, object information in a key frame is compared with the object information of the linked object for each key frame output immediately before the key frame, and output according to the result. The contents of information to be changed. However, data compression by comparing object information between key frames is not limited to this method. For example, in the case of the animation shown in FIG. 15, in FIGS. 15A and 15C, the shapes of the objects J0 and J2 are the same, and the shapes of the objects K0 and K2 are the same. On the other hand, when FIGS. 15B and 15C are compared, the shapes of the objects J1 and J2 are the same, but the shape of the object K1 is not the same as the shape of the object K2. Therefore, when only the shape of the object is considered, in the example shown in FIG. 15, it is better to compare with the key frame in FIG. 15C than in FIG. 15B but in FIG. More efficient compression can be performed.
[0112]
In the third embodiment, object information in a key frame is compared with object information in another key frame that is different from the key frame. If there is, the number of the key frame is recorded in the object information of the key frame to be processed. By doing so, it can be expected that the state information that must be recorded is reduced, so that the animation information can be more efficiently compressed. Embodiment 3 using such a method will be described below.
[0113]
This method is particularly effective for an animation in which repetition as shown in FIG. 15 appears. This technique is effective for a wide range of animations because repeated processing often appears in animations.
[0114]
FIG. 5 schematically shows animation information after the animation information 150 shown in FIG. 17 is compressed by the method of the third embodiment. Referring to FIG. 5, this animation information 80 includes key frame information 82, 84, 86 and 88. Each of these key frame information corresponds to FIGS. 15 (a) to 15 (d).
[0115]
The key frame information 82 is the same as the key frame information 152 shown in FIG. Therefore, details thereof will not be repeated here.
[0116]
The key frame information 84 is almost the same as the key frame information 154 shown in FIG. 17, except that the object information (j, J1) of the first object is (j, X1). X1 is data representing the relative amount of movement of the object J1 shown in FIG. 15B with respect to the object J0 shown in FIG. X1 can be recorded as data in the following format, for example.
[0117]
R p1, p2, p3
Here, R is a command indicating that this data indicates relative movement between key frames of the object, and p1 is a numerical value indicating how many objects in the previous key frame have moved relative to each other, p2 And p3 are the moving distances of the object with respect to predetermined x and y coordinates. In the case of an animation in which an object moves in the screen as shown in FIG. 15, p2 and p3 are often much smaller than the case where the coordinates of the object are recorded as they are. Therefore, animation information can be compressed more efficiently.
[0118]
The object information (k, K1) on the second object in the key frame information 84 is not different from the example shown in FIG. 17 because the object K1 first appears in this key frame.
[0119]
Hereinafter, in the key frame information 86, information on the objects J2 and K2 is indicated as (j, X2) and (k, Y2), respectively. In the key frame information 88, the object information of the objects J3 and K3 is indicated as (j, X3) and (k, Y3), respectively. Here, X2, X3, Y2, and Y3 are data representing the relative movement information of each object, similar to X1, and the representation format is the same as X1 described above. For example, in the example shown in FIG. 4, X1, X2, X3, Y2, and Y3 can be expressed by symbols as shown in FIG.
[0120]
Referring to FIG. 15, objects J1, J2 and J3 are obtained by moving objects J0, J1 and J2 of the previous key frame, respectively. Therefore, all the key frames to be compared are the previous key frame, and in FIG. 6, the numerical values next to the symbol “R” of X1, X2, and X3 are all “1”. (X1, y1) (x2, y2) (x3, y3) are the displacement of J1 relative to the object J0, the displacement of the object J2 relative to the object J1, and the displacement of the object J3 relative to the object J2.
[0121]
On the other hand, the objects K2 and K3 are obtained by moving the objects K0 and K1 of the two previous key frames, respectively. Therefore, in this case, the key frame to be compared is the previous key frame. The next numerical value of the symbol “R” of Y2 and Y3 is “2” as shown in FIG. (X4, y4) (x5, y5) indicate the displacement from the object K0 to K2 and the displacement from the object K1 to K3, respectively. In this way, by defining the key frame to be compared for the position of the object state information, for example, and recording only the displacement of the object with respect to the key frame, the amount of object information data can be reduced. Become. On the playback side, the coordinates of the object in the key frame are obtained from the information specifying the key frame included in the object information and including the object information to be compared, and the displacement information included in the object information. It is possible to reproduce the key frame in search.
[0122]
A program for creating data as shown in FIG. 5, that is, a program for realizing the animation information compression method according to the third embodiment will be described with reference to FIG. In S41, the key frame k is set as the first key frame.
[0123]
In S42, it is checked whether or not the contents of the key frame information corresponding to the key frame k exists. If there is no corresponding key frame information, the process is terminated. If the corresponding key frame information exists, the control proceeds to S43.
[0124]
In S43, the display time of the key frame k included in the key frame information is output. The data output here is, for example, times t0, t1, t2, and t3 shown in FIG.
[0125]
In S44, the object i is set as the first object in the key frame k.
[0126]
Subsequently, in S45, it is checked whether or not the object i exists. If the object i does not exist, the control proceeds to S53. If the object i exists, the control proceeds to S46.
[0127]
In S46, the object j to be compared with the object i is set as the object i for the time being. Also, a numerical value L for calculating the relative position of the key frame serving as a reference for the relative movement amount of the object i with respect to the key frame is set to 0. Thereafter, the control proceeds to S47.
[0128]
In S47, it is checked whether an object linked to the object j exists in a key frame before the key frame including the object j. If there is no object linked to the object j, the control proceeds to S51. If it exists, control proceeds to S48.
[0129]
In S48, the object linked to the object j is newly set as the object j. Add 1 to the value of L.
[0130]
Subsequently, in S49, it is determined whether or not the object i has moved the object j with respect to the object i and the object j. The following method is used as this determination method. First, it is checked whether all information other than the coordinates of the object i and the object j are exactly the same. If they do not match, it is determined that the object i is not the one that has moved the object j. If the information other than the coordinates is the same, it is compared whether the number of coordinates is the same. If the number of coordinates is not the same, the object i is determined not to have moved the object j. When the number of coordinates is the same, the difference between the coordinate point of the object i and the corresponding coordinate point of the object j is examined. If the difference between the x-coordinate and the y-coordinate calculated for each corresponding coordinate point is the same for all the points, it is determined that the object i is the object j moved. In other cases, it is determined that this is not the case. If it is determined that the object i is the object j moved, the control proceeds to S50. Otherwise, control returns to S47.
[0131]
In S50, the information indicating how much the object i has moved the object j and the value of the information L indicating how far the object linked from the object i has been moved are output. . Thereafter, the control proceeds to S52. By this processing, the object information (j, X1), (j, X2), (k, Y2), (j, X3), and (k, Y3) shown in FIG. 5 are output.
[0132]
On the other hand, if the result of determination in S47 is NO, the control proceeds to S51, but in S51, the identification number and state information of the object i are output, and the control proceeds to S52. In the example shown in FIG. 5, (j, J0) (k, K0) and (k, K1) are output in the process of S51.
[0133]
In S52, the object i is set as the next object in the key frame k. Control returns to S45, and the processing from S45 onward is repeated.
[0134]
If it is determined in S45 that the object i does not exist in the key frame k, the control proceeds to S53. In S53, the key frame k is set as the next key frame, and the control is returned to S42. Thereafter, the processing after S42 is repeated.
[0135]
【The invention's effect】
As described above, when the animation information compression method of the present invention is used, an object that appears earlier is recorded many times in an animation in which new items appear in order, such as an animation for a business presentation. Or there is no need to transmit. Therefore, the amount of data for recording or transmitting animation information is very small as compared with the conventional method in which all key frames need to be recorded or transmitted.
[0136]
Further, in the case of an animation with many repetitions, it is not necessary to record an object once appearing in the key frame information many times. For this reason, the data amount of animation information becomes very small as compared with the conventional method in which all object information in all key frames is recorded or transmitted. Therefore, animation can be recorded on a small-capacity recording medium that could not be used conventionally, such as a floppy disk or an IC (integrated circuit) card. In addition, as a reverse effect, a large amount of animation data can be recorded in a certain amount of storage media, so a dictionary or manual containing more animation information than before can be stored electronically. Can be recorded on various media.
[0137]
Similarly, since the amount of animation data can be made very small, the transmission capacity for transmitting animation information can be reduced. For example, even if there is a limit to the amount of data that can be transmitted at one time and animation information cannot be transmitted by the conventional method, animation information compressed by the compression method according to the present invention can be transmitted. . Also, when transmitting animation information for reproducing the same animation, when transmitting animation information compressed by the method of the present invention, the transmission is compared with the case of transmitting animation information prepared by the conventional method. There is an effect that the time required for the process becomes very short.
[Brief description of the drawings]
FIG. 1 is a schematic block diagram of an apparatus for realizing an animation information compression method according to the present invention.
FIG. 2 is a diagram schematically showing a data format of animation information in the first embodiment.
FIG. 3 is a flowchart of a program for realizing the first embodiment.
FIG. 4 is a flowchart of a program for realizing the method of the second embodiment.
5 is a diagram schematically showing a data format of animation information in Embodiment 3. FIG.
FIG. 6 is a diagram schematically showing an example of symbolic representation of relative movement in the third embodiment.
FIG. 7 is a flowchart of a program for realizing the method of the third embodiment.
FIG. 8 is a diagram schematically showing key frames of an animation by a key frame method.
FIG. 9 is a diagram showing the key frame information shown in FIG. 8 in a table format.
FIG. 10 is a diagram schematically showing a data format when the data shown in FIG. 9 is recorded in a conventional format.
11 is a diagram schematically showing data contents when the data shown in FIG. 9 is recorded in accordance with the data format shown in FIG.
FIG. 12 is a diagram schematically showing key frames of a presentation animation.
FIG. 13 is a diagram showing key frame information for the key frame shown in FIG. 12 in a tabular format.
14 is a diagram showing a data structure when the key frame information shown in FIG. 13 is recorded according to the conventional method.
FIG. 15 is a diagram schematically showing a key frame as an example of an animation in which many repetitions appear.
FIG. 16 is a diagram showing key frame information for the key frame shown in FIG. 15 in a tabular format.
FIG. 17 is a diagram schematically showing a data format of animation information including key frame information shown in FIG. 16;
[Explanation of symbols]
30 Animation information compression device
32 computers
34 External storage
36 Display device
38 Coordinate input device
40 keyboard
42 Network

Claims (6)

コンピュータを用いて複数個のキーフレーム間を補間することにより中間フレームが生成され表示されるアニメーションのためのキーフレーム情報を圧縮する、コンピュータを用いたアニメーション情報の圧縮方法であって、
各キーフレーム情報は、対応のキーフレームにおいて表示されるべき物体に関する物体情報を含み、
前記物体情報は、当該物体の状態情報と、当該キーフレーム情報に対して予め定める関係を有するキーフレーム情報内の対応する物体情報へのリンク情報とを含み、
基準となるキーフレーム情報を媒体に出力する第1の出力ステップと、
直前のキーフレーム情報の出力の終了に応答して次のキーフレーム情報を読込み、読込まれたキーフレーム情報内の各物体情報と、当該読込まれたキーフレーム情報に対して前記予め定める関係を有するキーフレーム情報内の対応の物体情報とを比較して、リンク情報と、相違のある状態情報についての相違量とのみを含んだ物体情報を含んだ圧縮後のキーフレーム情報を前記媒体に出力する第2の出力ステップと、
前記第2の出力ステップを、圧縮すべきキーフレーム情報のすべてを圧縮するまで繰返すステップとを含む、アニメーション情報の圧縮方法。
A method of compressing animation information using a computer that compresses key frame information for an animation in which an intermediate frame is generated and displayed by interpolating between a plurality of key frames using a computer,
Each key frame information includes object information regarding the object to be displayed in the corresponding key frame,
The object information includes state information of the object and link information to corresponding object information in key frame information having a predetermined relationship with the key frame information.
A first output step of outputting reference key frame information to a medium;
In response to the end of the output of the immediately preceding key frame information, the next key frame information is read, each object information in the read key frame information, and the predetermined relationship with the read key frame information. Compare the corresponding object information in the key frame information and output the compressed key frame information including the object information including only the link information and the difference amount for the different state information to the medium. A second output step;
A method of compressing animation information, comprising: repeating the second output step until all key frame information to be compressed is compressed.
前記予め定める関係を有するキーフレーム情報は、各キーフレーム情報の出力前に既に前記媒体に出力済みのキーフレーム情報である、請求項に記載のアニメーション情報の圧縮方法。The animation information compression method according to claim 1 , wherein the key frame information having a predetermined relationship is key frame information that has already been output to the medium before each key frame information is output. 前記媒体は記憶媒体である、請求項またはに記載のアニメーション情報の圧縮方法。The medium is a storage medium, a method of compressing the animation information according to claim 1 or 2. 前記媒体は通信媒体である、請求項またはに記載のアニメーション情報の圧縮方法。The medium is a communication medium, the method of compressing the animation information according to claim 1 or 2. コンピュータを用いて複数個のキーフレーム間を補間することにより中間フレームが生成され表示されるアニメーションのためのキーフレーム情報を圧縮する、コンピュータを用いたアニメーション情報の圧縮方法であって、
各キーフレーム情報は、対応のキーフレームにおいて表示されるべき物体に関する物体情報を含み、前記物体情報は、当該物体の状態情報と、当該キーフレーム情報に対して予め定める関係を有するキーフレーム情報内の対応する物体情報へのリンク情報とを含み、基準となるキーフレーム情報を媒体に出力する第1の出力ステップと、
直前のキーフレーム情報の出力の終了に応答して次のキーフレーム情報を読込み、読込まれたキーフレーム情報内の各物体情報について、当該物体情報に対応の物体と並行移動の関係にある物体の物体情報を含むキ−フレ−ム情報を検索して、当該並行移動の関係にある物体情報を含むキ−フレ−ム情報を特定する情報と、リンク情報と、並行移動量とを含んだ物体情報を含んだ圧縮後のキーフレーム情報を前記媒体に出力する第2の出力ステップと、
前記第2の出力ステップを、圧縮すべきキーフレーム情報のすべてを圧縮するまで繰返すステップとを含む、アニメーション情報の圧縮方法。
A method of compressing animation information using a computer that compresses key frame information for an animation in which an intermediate frame is generated and displayed by interpolating between a plurality of key frames using a computer,
Each key frame information includes object information related to an object to be displayed in the corresponding key frame, and the object information is included in the key frame information having a predetermined relationship with the state information of the object and the key frame information. A first output step of outputting reference key frame information to a medium, including link information to corresponding object information of
In response to the end of the output of the previous key frame information, the next key frame information is read. Object including key information including object information and specifying key frame information including object information in relation to the parallel movement, link information, and parallel movement amount A second output step of outputting the compressed key frame information including the information to the medium;
A method of compressing animation information, comprising: repeating the second output step until all key frame information to be compressed is compressed.
コンピュータを用いて複数個のキーフレーム間を補間することにより中間フレームが生成され表示されるアニメーションのためのキーフレーム情報を圧縮する、コンピュータを用いたアニメーション情報の圧縮プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
各キーフレーム情報は、対応のキーフレームにおいて表示されるべき物体に関する物体情報を含み、
前記物体情報は、当該物体の状態情報と、当該キーフレーム情報に対してより前に出力されたキーフレーム情報内の対応する物体情報へのリンク情報とを含み、
基準となるキーフレーム情報を読込み、媒体に出力する第1の出力ステップと、
直前のキーフレーム情報の出力の終了に応答して次のキーフレーム情報を読込み、読込まれたキーフレーム情報内の各物体情報と、当該読込まれたキーフレーム情報に対して前記より前に出力されたキーフレーム情報内の対応の物体情報とを比較して、リンク情報と、相違のある状態情報についての相違量とのみを含んだ物体情報を含んだ圧縮後のキーフレーム情報を前記媒体に出力する第2の出力ステップと、
前記第2の出力ステップを、圧縮すべきキーフレーム情報のすべてを圧縮するまで繰返すステップとを実現させるためのアニメーション情報の圧縮プログラムを記録した記録媒体。
Computer-readable recording of animation information compression program using a computer that compresses key frame information for animation in which intermediate frames are generated and displayed by interpolating between a plurality of key frames using a computer A recording medium,
Each key frame information includes object information regarding the object to be displayed in the corresponding key frame,
The object information includes state information of the object, and link information to corresponding object information in key frame information output earlier than the key frame information,
A first output step of reading key frame information as a reference and outputting it to a medium;
In response to the end of the output of the previous key frame information, the next key frame information is read, and each object information in the read key frame information and the read key frame information are output before the above. Compared with the corresponding object information in the key frame information, the compressed key frame information including the object information including only the link information and the difference amount for the different state information is output to the medium. A second output step,
A recording medium on which is recorded a compression program for animation information for realizing the step of repeating the second output step until all the key frame information to be compressed is compressed.
JP00820298A 1997-01-29 1998-01-20 Animation information compression method and computer-readable recording medium recording animation information compression program Expired - Fee Related JP3616242B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00820298A JP3616242B2 (en) 1997-01-29 1998-01-20 Animation information compression method and computer-readable recording medium recording animation information compression program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP9-15701 1997-01-29
JP1570197 1997-01-29
JP00820298A JP3616242B2 (en) 1997-01-29 1998-01-20 Animation information compression method and computer-readable recording medium recording animation information compression program

Publications (2)

Publication Number Publication Date
JPH10275245A JPH10275245A (en) 1998-10-13
JP3616242B2 true JP3616242B2 (en) 2005-02-02

Family

ID=26342668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00820298A Expired - Fee Related JP3616242B2 (en) 1997-01-29 1998-01-20 Animation information compression method and computer-readable recording medium recording animation information compression program

Country Status (1)

Country Link
JP (1) JP3616242B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001059957A1 (en) * 2000-02-10 2001-08-16 Sharp Kabushiki Kaisha Server device, communication terminal, relay server, conversion rule management server, and recording medium storing program
JP2004056599A (en) * 2002-07-22 2004-02-19 Monolith Co Ltd Image distribution system and charging method usable in the image distribution system

Also Published As

Publication number Publication date
JPH10275245A (en) 1998-10-13

Similar Documents

Publication Publication Date Title
JP2642021B2 (en) Display systems
US6487565B1 (en) Updating animated images represented by scene graphs
US20030197703A1 (en) Method of processing animation by interpolation between key frames with small data quantity
KR102294134B1 (en) Authoring tools for synthesizing hybrid slide-canvas presentations
US20060232589A1 (en) Uninterrupted execution of active animation sequences in orphaned rendering objects
JPH06503663A (en) Video creation device
JPH06507743A (en) Image synthesis and processing
EA000271B1 (en) Method and apparatus for processing a table
US20060192781A1 (en) Character image generating apparatus, character image generating method, display control apparatus, display control method and computer-readable recording medium recorded character image generation program or display control program thereon
JP3616242B2 (en) Animation information compression method and computer-readable recording medium recording animation information compression program
JP3616241B2 (en) Animation display method and computer-readable recording medium recording animation display program
US11430166B1 (en) Facilitating generation of number-bullet objects
CN113362443B (en) Embroidery effect picture generation method and device, storage medium and electronic equipment
JPH0827792B2 (en) Document editing method
KR100679289B1 (en) System of processing image for vector pixel
JP2001256508A (en) Method and device for animation generation, and computer readable recording medium recorded with program of animation generation method executable on computer
JP3210822B2 (en) Animation processing method and apparatus for implementing the method
US20020057273A1 (en) Method of and apparatus for reproducing facial expressions
JP4166207B2 (en) Animation playback device and animation playback program
JP3581545B2 (en) Animation processing method, animation processing device, computer-readable recording medium recording animation processing program, and computer-readable recording medium recording animation data
JP2009157538A (en) Activity management apparatus, system and program
JP4377993B2 (en) Color processing method and apparatus
JP2536722B2 (en) Image control change device
JPH0935083A (en) Animation editing device
KR20190123541A (en) System and method for generating an object with subjective preference

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040330

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20040430

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040713

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040726

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20041019

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041104

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20081112

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091112

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091112

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101112

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees