JP2007018157A - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP2007018157A JP2007018157A JP2005197564A JP2005197564A JP2007018157A JP 2007018157 A JP2007018157 A JP 2007018157A JP 2005197564 A JP2005197564 A JP 2005197564A JP 2005197564 A JP2005197564 A JP 2005197564A JP 2007018157 A JP2007018157 A JP 2007018157A
- Authority
- JP
- Japan
- Prior art keywords
- animation
- image processing
- processing apparatus
- vector data
- rendering
- 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.)
- Withdrawn
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
【課題】 アニメーションを含んだベクタデータの描画において、アニメーション中の描画速度を高めることを目的とする。
【解決手段】 ベクタデータから変換したラスタデータを記憶領域に記憶して、アニメーション中の描画に用いる。
【選択図】 図1
【解決手段】 ベクタデータから変換したラスタデータを記憶領域に記憶して、アニメーション中の描画に用いる。
【選択図】 図1
Description
本発明は、画像を表示するための画像生成装置に関する。
ベクタデータを用いた画像はラスタデータを用いた画像と比較して、拡大、縮小、変形をしても滑らかな画像で表現できる。それは、ベクタデータは色、大きさ、形、位置など画像を構成する情報を記録しているためである。また、記録容量もラスタデータより少なくてすむという特徴がある。
実際に、ベクタデータを描画するには、ベクタデータから出力領域の各ピクセルについて、どの色で表示するかの計算を行っている。つまり、描画する際にはラスタデータに変換されるということになる。
また、ベクタデータによりアニメーションを実現することができて、その実現方法は、アニメーション中に前後フレーム間で描画結果の変化するオブジェクト(以下、アニメーションオブジェクトとする)について、アニメーション中の各フレームにおいて、ベクタデータをラスタデータに変換して描画を行う。このアニメーション表示方法を第1アニメーション表示方法とする。
また、アニメーションを描画する時に、アニメーションオブジェクトの描画速度を高める手法として、アニメーションオブジェクトのラスタデータを別領域に記憶しておき、アニメーション中の各フレームにおいて、記憶したラスタデータにアニメーションシナリオに従って移動、変形などの加工を施して描画することでアニメーション表示を行うものがある。この手法はスプライトベースのアニメーションである。これを第2アニメーション表示方法とする。
又、従来例としては、例えば特許文献1をあげることが出来る。
特開2001−230972号公報
しかしながら、前記第1アニメーション表示方法では、アニメーション中の各フレームにおいて、ベクタデータからラスタデータに変換して描画する必要があり、出力の解像度に応じて、また、アニメーションオブジェクトの描画領域に応じて、各ピクセルの描画に必要な情報に関する計算が増大する。
また、アニメーション開始時にアニメーションオブジェクトを別領域に記憶して、アニメーション中に用いる前記第2アニメーション表示方法をベクタデータで表されたアニメーションに適用できれば、アニメーションの描画速度を高めることが期待できる。しかし、一般に、前記第2アニメーション表示方法は、予めどのオブジェクトがアニメーションオブジェクトであるかや、アニメーションの内容を知っておく必要があるが、ベクタデータから、ベクタデータ中のどのオブジェクトをアニメーションオブジェクトとして抽出してラスタデータとして記憶領域に記憶するかの判断手段は持ち合わせていない。そのため、本発明のように、ベクタデータで表されたアニメーションの描画にそのまま適用することは出来ない。
本発明は上述の問題に鑑みてなされたもので、前記第2アニメーション表示方法をベクタデータに適用させるものである。ベクタデータ内のアニメーションオブジェクトの識別をして、アニメーションオブジェクトのアニメーション内容の識別を行い、アニメーションオブジェクトのアニメーション開始時のラスタデータを記憶領域に保存し、アニメーション中は記憶領域中のラスタデータを利用することによってベクタデータで表されたアニメーションの描画速度を高めることを目的とする。
さらに、基本的な描画方法である前記第1アニメーション表示方法と、高速に描画できる前記第2アニメーション表示方法を場合に応じて的確に使い分けることによって、高速かつ見た目にも違和感のないアニメーションを実現することを目的とする。
上記の目的を達成するために、本発明の請求項1記載の画像処理装置は、アニメーションを含んだベクタデータを読み込んでグラフィックを描画するための画像処理装置であって、前記ベクタデータを描画するためにラスタデータにデータ変換する手段と、アニメーション中に、前記アニメーションオブジェクトを識別する手段と、アニメーション中に、前記アニメーションオブジェクトについて、前記ベクタデータ内に記述されたアニメーションシナリオを識別する手段と、アニメーション中に、前記アニメーションオブジェクトについて、アニメーション開始時に前記ベクタデータから変換したラスタデータを記憶領域に記憶し、記憶したラスタデータをアニメーション表示中の各フレームの描画に用いるアニメーション表示手段と、アニメーション中に、前記アニメーションシナリオに従って、前記記憶領域に記憶したラスタデータを加工して描画する手段を有することを特徴とする。
本発明の請求項2記載の画像処理装置は、請求項1において、一度前記ベクタデータをレンダリング処理した後に、次のレンダリング処理を行う際、前回のレンダリング処理時とレンダリング処理結果が変化しない描画領域に関しては、前記ベクタデータをラスタデータに変換することなく、前回のレンダリング処理結果を用いてレンダリング処理を行う手段を有することを特徴とする。
本発明の請求項3記載の画像処理装置は、アニメーション中に、前記アニメーションオブジェクトについて、アニメーション表示中の各フレームにおいて、ベクタデータをラスタデータに変換して描画する第1アニメーション表示手段と、アニメーション中に、前記アニメーションオブジェクトについて、アニメーション開始時にベクタデータから変換したラスタデータを記憶領域に記憶し、記憶したラスタデータをアニメーション表示中の各フレームの描画に用いる第2アニメーション表示手段と、アニメーション中に、前記アニメーションオブジェクトを描画する手段として、前記第1あるいは第2アニメーション表示手段のいずれか一方を選択して適用する描画方法選択手段と、アニメーション中に、前記アニメーションオブジェクトを描画する手段として、前記第1アニメーション表示手段から、前記第2アニメーション表示手段に切り替える手段と、アニメーション中に、前記アニメーションオブジェクトを描画する手段として、前記第2アニメーション表示手段から、前記第1アニメーション表示手段に切り替える描画方法切り替え手段とを有することを特徴とする。
本発明の請求項4記載の画像処理装置は、請求項3において、前記描画方法選択手段は、前記前後フレーム間で描画結果の変化するオブジェクトの大きさを基に選択することを特徴とする。
本発明の請求項5記載の画像処理装置は、請求項3において、前記描画方法選択手段は、アニメーションの種類を基に選択することを特徴とする。
本発明の請求項6記載の画像処理装置は、請求項3において、前記描画方法切り替え手段は、ベクタデータ等を記憶するメモリの使用可能残量を基に選択することを特徴とする。
本発明の請求項7記載の画像処理装置は、請求項3において、前記第2アニメーション表示手段は、前記前後フレーム間で描画結果の変化するオブジェクトのアニメーション開始時からの変倍率に応じて、適宜ベクタデータからラスタデータを再度記憶領域に記憶し、以後のアニメーションの描画には再度記憶したラスタデータを利用することを特徴とする。
本発明は、ベクタデータで表されたアニメーションを表示する際に、前述した2つのアニメーション表示方法を、条件によって使い分け、または切り替えることによって、ベクタデータのアニメーション表示時の各フレームにおける描画速度を高め、全体として見た目にも違和感のないアニメーション表示を実現することができる。
以下に、本発明の詳細を、実施形態に基づいて図面を参照しながら説明する。また、具体例として、ベクタデータであってアニメーションを実現できる図5に示すSVGファイルを取り上げて説明していく。
図1は本発明の実施形態に係る画像処理装置の構成を示すブロック図である。
同図において、CPU101は、システム制御部であり、装置全体を制御する。ROM102は、CPUの制御プログラムや各種固定データを格納するものである。RAM103は、SRAM、DRAM等で構成され、プログラム制御変数等を格納するためのものである。また、本実施例におけるベクタデータ、ラスタデータ等もRAM103に格納されるものである。
図2は、本発明の実施形態に係るシステム全体の流れを示すフローチャートである。
同図において、まず、ベクタデータを読み込み(S201)、RAM102に保存する。続いて、ベクタデータを解析してアニメーションの表示方法を判定する(S202)。ベクタデータの解析においては、アニメーションオブジェクトの数や出現順序、出現頻度、各アニメーションオブジェクトのアニメーションの種類などが解析される。ここで、あるオブジェクトAとオブジェクトBがあるとき、描画処理ではオブジェクトBよりオブジェクトAが前面にあって、オブジェクトAが移動などのアニメーションを行ってオブジェクトBの上を通過するような場合、アニメーション中の前後フレームでオブジェクトBも描画結果が異なるが、このような場合、オブジェクトAはアニメーションオブジェクトだが、オブジェクトBはアニメーションオブジェクトとしない。つまり、アニメーションオブジェクトの定義は、ある単一または単一グループのオブジェクトに注目し、そのオブジェクトのみを描画したと仮定したときに、前後フレームで描画結果が異なるオブジェクトとする。
図5のSVGファイルについて、その詳細の説明をする。まず描画領域として横幅20cm、縦幅15cmの矩形領域を確保し、その左上端を座標(0,0)、右下端を座標(2000,1500)となる座標系設定する。また描画開始時には、座標(300,100)を左上端とし、横幅300、縦幅100の長方形が描画される。描画開始後1秒後にアニメーションを開始して1.5秒後までの間に、長方形の左上端を固定して、横幅1500、縦幅1300まで拡大してアニメーションを終了する。
S202で、ベクタデータ内のすべてのアニメーションにおいて、アニメーション表示方法の判定がなされると、次のステップに進み描画処理をする(S203)。描画処理では、まず、ベクタデータの初期状態をラスタデータに変換して描画を行う。アニメーション開始までは描画しても描画結果に変化がないので再描画は行わない。しかし、描画を一定間隔で行わないと表示されなくなるようなシステムにおいては、アニメーション開始以前においても必要に応じて描画を行う。図5のSVGファイルにおいては、初期状態として座標(300,100)を左上端とし、横幅300、縦幅100なる長方形を描画した後、1秒後までは何も処理は行われない。
S203の処理内では、アニメーションが開始される毎にアニメーション処理を行う。図2のフローチャートでは単一のアニメーション処理のループがあるが、異なるアニメーション処理は同時に起きても、時間的な重なりをもって起きてもよい。図5のSVGファイルにおいては、アニメーションは長方形の拡大のみである。
アニメーションが開始されるとアニメーション処理のステップ(S205)に移る。図5のSVGファイルでは、描画開始から1秒後にアニメーションが開始して(S204)、0.5秒間のアニメーションを行った後、描画開始から1.5秒後にアニメーションを終了する。
ベクタデータに記述されたすべてのアニメーション表示が終了すると、描画を終了する(S206)。描画を終了する条件は特に記述していないが、アニメーション終了時点で描画を終了してもよいし、アニメーション終了後、再び何らかの処理が続けられる場合などでは、外部から何らかの処理命令があるまでアニメーション終了時の描画結果を維持してもよい。
図3は、図2のアニメーション表示方法判定処理(S202)の内容を詳細に示したフローチャートである。ここでは、2つの条件によってアニメーションの表示方法を判定する。
一つ目の条件は、アニメーションオブジェクトの大きさが所定の範囲内にあるかどうかの判定(S301)である。この条件に当てはまる場合には次の条件判定のステップ(S302)に進む。条件に当てはまらない場合には、第1のアニメーション表示方法と判定する。この条件の判定基準は、アニメーションオブジェクトがアニメーション開始からアニメーション終了まで、一時たりともある一定の大きさを超えない場合には、所定の範囲内となる。本実施例においては、特に大きさの定義をしていないが、オブジェクトの面積や、縦幅、横幅などと定義してもよい。
二つ目の条件はアニメーションの種類が所定の範囲内にあるかどうかの判定(S302)である。この条件の当てはまる場合には第2のアニメーション表示方法と判定し、当てはまらない場合には、第1のアニメーション表示方法と判定する。この条件の判定基準として、所定の範囲内のアニメーションとは、座標系と平行方向の伸縮かその組み合わせによる形状変化を除いた形状の変化や、色、透明度の変化を伴わない、縦横比を維持した拡大、縮小、回転、平行移動、またはそれらの組み合わせのときとする。図5のSVGファイルのアニメーションにおいては、x軸、y軸に関する拡大なので、所定の範囲内のアニメーション処理となる。
各々のアニメーションオブジェクトについて、判定したアニメーション表示方法に従ってアニメーション処理を行う。図4はアニメーション表示方法判定で、第2のアニメーション表示方法と判定された場合のアニメーション処理の詳細を示したフローチャート図である。以下、図4の処理について説明する。
アニメーションを開始すると、はじめにアニメーションオブジェクト部分のベクタデータをラスタデータに変換して描画する。このとき、アニメーション開始時点ですでに、アニメーションオブジェクトが描画されている場合には、この処理は省略してもよい。図5のSVGファイルにおいては、アニメーション開始時にはすでにアニメーションオブジェクトとなる長方形は描画されている。続いて、ラスタデータを記憶するためのメモリの残量による分岐処理(S402)を行う。メモリの残量が所定の範囲内にある場合には、メモリ残量に応じてラスタデータの解像度を調節してメモリに記憶する。ここで、ラスタデータを描画した解像度のままで保存するときの容量よりもメモリ残量が大きい場合には、描画したままの解像度で保存し、そうでない場合には、メモリ残量に収まるようなラスタデータの解像度を計算して、メモリに収まる解像度に調節する。また、メモリ残量が所定の範囲内という条件は、アニメーションオブジェクトの現在の解像度とメモリの残量の関係から計算される。つまり、メモリ残量の条件は、アニメーションオブジェクトの解像度によって変化する。
メモリ残量が所定の範囲内にない場合には、ラスタデータを保存せず、次フレームもベクタデータをラスタデータに変換して描画を行う(S404)。そしてまたS402の条件へ戻るという流れである。
S403でラスタデータをメモリに記憶すると、S405の処理に移る。次フレームはメモリに記憶した保存したラスタデータをアニメーションシナリオに従って加工を施したものを描画する。
S406でアニメーションの終了を検出し、アニメーションが終了した場合にはアニメーション処理を終了する。図5のSVGファイルにおいては、描画開始から1.5秒後にS406の処理を行った時には、アニメーション終了と判定し、アニメーション処理を終了する。
また、S407では変倍率による条件分岐処理を行う。変倍率は、特に拡大を伴うアニメーションのときに、メモリに保存されているラスタデータの解像度とアニメーションオブジェクトを現時点でラスタデータに変換したと仮定したときの解像度から計算される値である。変倍率がある閾値を超えた場合には、その時点でのアニメーションオブジェクトのベクタデータをラスタデータに変換して次フレームの描画を行い(S404)、S402の処理に移る。逆に、閾値を超えない場合には、S405に移って引き続きメモリに記憶されているラスタデータを用いて次フレームの描画を行う。
101 CPU
102 ROM
103 RAM
104 表示部
102 ROM
103 RAM
104 表示部
Claims (7)
- アニメーションを含んだベクタデータを読み込んでグラフィックを描画するための画像処理装置であって、
前記ベクタデータを描画するためにラスタデータに変換する手段と、
アニメーション中に、前後フレーム間で描画結果の変化するオブジェクトを識別する手段と、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトについて、前記ベクタデータ内に記述されたアニメーションシナリオを識別する手段と、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトについて、アニメーション開始時に前記ベクタデータから変換したラスタデータを記憶領域に記憶し、記憶したラスタデータをアニメーション表示中の各フレームの描画に用いるアニメーション表示手段と、
アニメーション中に、前記アニメーションシナリオに従って、前記記憶領域に記憶したラスタデータを加工して描画する手段を有することを特徴とする画像処理装置。 - 請求項1記載の画像処理装置において、
一度前記ベクタデータをレンダリング処理した後に、次のレンダリング処理を行う際、前回のレンダリング処理時とレンダリング処理結果が変化しない描画領域に関しては、前記ベクタデータをラスタデータに変換することなく、前回のレンダリング処理結果を用いてレンダリング処理を行う手段を有することを特徴とする画像処理装置。 - アニメーションを含んだベクタデータを読み込んでグラフィックを描画するための画像処理装置であって、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトについて、アニメーション表示中の各フレームにおいて、ベクタデータをラスタデータに変換して描画する第1アニメーション表示手段と、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトについて、アニメーション開始時にベクタデータから変換したラスタデータを記憶領域に記憶し、記憶したラスタデータをアニメーション表示中の各フレームの描画に用いる第2アニメーション表示手段と、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトを描画する手段として、前記第1あるいは第2アニメーション表示手段のいずれか一方を選択して適用する描画方法選択手段と、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトを描画する手段として、前記第1アニメーション表示手段から、前記第2アニメーション表示手段に切り替える手段と、
アニメーション中に、前記前後フレーム間で描画結果の変化するオブジェクトを描画する手段として、前記第2アニメーション表示手段から、前記第1アニメーション表示手段に切り替える描画方法切り替え手段とを有することを特徴とする画像処理装置。 - 請求項3記載の画像処理装置において、
前記描画方法選択手段は、前記前後フレーム間で描画結果の変化するオブジェクトの大きさを基に選択することを特徴とする画像処理装置。 - 請求項3記載の画像処理装置において、
前記描画方法選択手段は、アニメーションの種類を基に選択すること特徴とする画像処理装置。 - 請求項3記載の画像処理装置において、
前記描画方法切り替え手段は、ベクタデータ等を記憶するメモリの使用可能残量を基に選択することを特徴とする画像処理装置。 - 請求項3記載の画像処理装置において、
前記第2アニメーション表示手段は、前記前後フレーム間で描画結果の変化するオブジェクトのアニメーション開始時からの変倍率に応じて、適宜ベクタデータからラスタデータを再度記憶領域に記憶し、以後のアニメーションの描画には再度記憶したラスタデータを利用することを特徴とする画像処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005197564A JP2007018157A (ja) | 2005-07-06 | 2005-07-06 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005197564A JP2007018157A (ja) | 2005-07-06 | 2005-07-06 | 画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007018157A true JP2007018157A (ja) | 2007-01-25 |
Family
ID=37755291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005197564A Withdrawn JP2007018157A (ja) | 2005-07-06 | 2005-07-06 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007018157A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017068419A (ja) * | 2015-09-29 | 2017-04-06 | 三菱電機株式会社 | 図形描画装置および図形描画プログラム |
US11007592B2 (en) | 2015-07-30 | 2021-05-18 | Denso Aircool Corporation | Heat exchanger and method for producing same |
JP2022535669A (ja) * | 2019-06-11 | 2022-08-10 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | アニメーションレンダリング方法、装置、コンピュータ読み取り可能な記憶媒体、及びコンピュータ機器 |
-
2005
- 2005-07-06 JP JP2005197564A patent/JP2007018157A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11007592B2 (en) | 2015-07-30 | 2021-05-18 | Denso Aircool Corporation | Heat exchanger and method for producing same |
JP2017068419A (ja) * | 2015-09-29 | 2017-04-06 | 三菱電機株式会社 | 図形描画装置および図形描画プログラム |
JP2022535669A (ja) * | 2019-06-11 | 2022-08-10 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | アニメーションレンダリング方法、装置、コンピュータ読み取り可能な記憶媒体、及びコンピュータ機器 |
JP7325535B2 (ja) | 2019-06-11 | 2023-08-14 | テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド | アニメーションレンダリング方法、装置、コンピュータ読み取り可能な記憶媒体、及びコンピュータ機器 |
US11783522B2 (en) | 2019-06-11 | 2023-10-10 | Tencent Technology (Shenzhen) Company Limited | Animation rendering method and apparatus, computer-readable storage medium, and computer device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020248951A1 (zh) | 动画渲染方法、装置、计算机可读存储介质和计算机设备 | |
JP4770878B2 (ja) | 情報表示装置及びプログラム | |
JP5351971B2 (ja) | モーションベクトルを決定するための方法、装置及びソフトウエア | |
JP2013058147A (ja) | 画像処理装置及び方法、並びにプログラム | |
JP2007018157A (ja) | 画像処理装置 | |
JP2011165173A (ja) | 情報処理装置、情報処理装置の動作方法、および記憶媒体 | |
JP2006520963A (ja) | 直接推定を用いた三角形レンダリング | |
JP2013045401A (ja) | アニメーション描画装置 | |
JP2006520963A5 (ja) | ||
US20150242988A1 (en) | Methods of eliminating redundant rendering of frames | |
JP4827659B2 (ja) | 画像処理装置、画像処理方法、及びコンピュータプログラム | |
JP2003066943A (ja) | 画像処理装置及びプログラム | |
US9019304B2 (en) | Image processing apparatus and control method thereof | |
JP2010259116A (ja) | コスト関数演算方法、コスト関数演算装置及びその補間方法 | |
JP2009205537A (ja) | 表示装置、表示方法及びプログラム | |
JP2008017065A (ja) | 電子黒板装置および電子黒板装置における画像処理方法並びにそのプログラム | |
JP4890425B2 (ja) | マンガのコマ画像のためのマスク画像の作成方法及びプログラム | |
JP6120561B2 (ja) | 図形描画装置及び図形描画プログラム | |
JP2006106983A (ja) | 表示装置及び表示方法 | |
JP2003303355A (ja) | 3次元形状処理装置、3次元形状処理方法、プログラム及び記憶媒体 | |
Lee et al. | Fast seam carving using partial update and divide and conquer method | |
JP4152383B2 (ja) | ナビゲーションシステム | |
JP2006331209A (ja) | 図形描画装置及びプログラム | |
CN117834999A (zh) | 一种基于第三方视频库调用的窗口变换方法、设备及介质 | |
CN117934266A (zh) | 一种基于Canvas的2D图像渲染方法、系统及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081007 |