(57)【特許請求の範囲】
【請求項１】
ベクタ画像をラスタ画像に変換して参照用画像を生成する参照用画像生成手段と、
前記ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成する仮圧縮画像生成手段と、
前記仮圧縮画像を拡大処理して前記参照用画像と同じサイズの比較用画像を生成する比較用画像生成手段と、
前記参照用画像と前記比較用画像との誤差率が基準誤差率より大きければ前記圧縮率を変更して前記仮圧縮画像生成手段及び前記比較用画像生成手段での処理を繰り返させる誤差評価手段と、
前記誤差評価手段において前記誤差率が前記基準誤差率以下であった場合、前記仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ前記基準誤差率及び前記圧縮率を変更して前記仮圧縮画像生成手段、前記比較用画像生成手段及び前記誤差評価手段での処理を繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記仮圧縮画像を前記ベクタ画像の圧縮画像としてメモリに保存する容量評価手段と、
を備えることを特徴とする画像圧縮装置。
【請求項２】
請求項１に記載の画像圧縮装置であって、
複数のベクタ画像に対して処理を行い、
前記容量評価手段は、前記複数のベクタ画像に対する仮圧縮画像の画像容量が前記メモリ容量より大きければ前記基準誤差率及び前記圧縮率を変更して前記仮圧縮画像生成手段、前記比較用画像生成手段及び前記誤差評価手段での処理を繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記複数のベクタ画像に対する仮圧縮画像を圧縮画像としてメモリに保存することを特徴とする画像圧縮装置。
【請求項３】
請求項２に記載の画像圧縮装置であって、
前記ベクタ画像の特徴、種類及び表示態様の少なくとも１つに応じて前記基準誤差率を変更することを特徴とする画像圧縮装置。
【請求項４】
ベクタ画像をラスタ画像に変換して参照用画像を生成する第１のステップと、
前記ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成する第２のステップと、
前記仮圧縮画像を補間拡大処理して前記参照用画像と同じサイズの比較用画像を生成する第３のステップと、
前記参照用画像と前記比較用画像との誤差率が基準誤差率より大きければ前記圧縮率を変更して前記第２のステップから前記第３のステップを繰り返させる第４のステップと、
前記第４のステップにおいて前記誤差率が前記基準誤差率以下であった場合、前記仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ前記基準誤差率及び前記圧縮率を変更して前記第２のステップから前記第４のステップを繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記仮圧縮画像を前記ベクタ画像の圧縮画像としてメモリに保存する第５のステップと、
を備えることを特徴とするベクタ画像の圧縮方法。
【請求項５】
コンピュータを、
ベクタ画像をラスタ画像に変換して参照用画像を生成する参照用画像生成手段と、
前記ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成する仮圧縮画像生成手段と、
前記仮圧縮画像を補間拡大処理して前記参照用画像と同じサイズの比較用画像を生成する比較用画像生成手段と、
前記参照用画像と前記比較用画像との誤差率が基準誤差率より大きければ前記圧縮率を変更して前記仮圧縮画像生成手段及び前記比較用画像生成手段での処理を繰り返させる誤差評価手段と、
前記誤差評価手段において前記誤差率が前記基準誤差率以下であった場合、前記仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ前記基準誤差率及び前記圧縮率を変更して前記仮圧縮画像生成手段、前記比較用画像生成手段及び前記誤差評価手段での処理を繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記仮圧縮画像を前記ベクタ画像の圧縮画像としてメモリに保存する容量評価手段と、
として機能させることを特徴とする画像圧縮プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像圧縮装置、画像圧縮方法及び画像圧縮プログラムに関する。
【背景技術】
【０００２】
電子ゲーム等のソフトウェアでは様々な画像を用いて情報処理が行われる。画像データは、ビットマップ形式等のように走査線の集まりで表現するラスタ形式の画像データと、線分の起終点の座標（位置）、方向、距離、曲線の曲がり方、太さ、色、線分に囲まれた面の色、それらの変化等で表現するベクタ形式の画像データに分けられる。
【０００３】
ベクタ画像は、拡大や縮小しても画質が維持されるという利点がある一方、描画に時間が掛るという問題がある。そこで、情報端末において画像を表示する際は、描画されたベクタ画像をビットマップ等のラスタ画像としてメモリに保存して、同じ画像を表示する際にはメモリからラスタ画像を読み出して表示させることで処理を効率化している。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、電子ゲーム等では画像のデータ容量を削減するために、ラスタ画像を圧縮する処理が行われている。しかしながら、モバイルデバイス等のメモリ容量が小さいデバイスでは、利用可能なメモリ容量に制約があるため、そのメモリ容量に合わせてラスタ画像を圧縮できないと実行時の処理速度が著しく低下する。
【０００５】
そこで、本発明は、ベクタ画像をラスタ画像にして圧縮する際に、元の画像との差異をできるだけ小さくしつつ、利用可能なメモリ容量に合わせてラスタ画像を圧縮することができる画像圧縮装置、画像圧縮方法及び画像圧縮プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の１つの態様は、ベクタ画像をラスタ画像に変換して参照用画像を生成する参照用画像生成手段と、前記ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成する仮圧縮画像生成手段と、前記仮圧縮画像を拡大処理して前記参照用画像と同じサイズの比較用画像を生成する比較用画像生成手段と、前記参照用画像と前記比較用画像との誤差率が基準誤差率より大きければ前記圧縮率を変更して前記仮圧縮画像生成手段及び前記比較用画像生成手段での処理を繰り返させる誤差評価手段と、前記誤差評価手段において前記誤差率が前記基準誤差率以下であった場合、前記仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ前記基準誤差率を変更して前記仮圧縮画像生成手段、前記比較用画像生成手段及び前記誤差評価手段での処理を繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記仮圧縮画像を前記ベクタ画像の圧縮画像としてメモリに保存する容量評価手段と、を備えることを特徴とする画像圧縮装置である。
【０００７】
ここで、複数のベクタ画像に対して処理を行い、前記容量評価手段は、前記複数のベクタ画像に対する仮圧縮画像の画像容量が前記メモリ容量より大きければ前記基準誤差率を変更して前記参照用画像生成手段、前記比較用画像生成手段及び前記誤差評価手段での処理を繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記複数のベクタ画像に対する仮圧縮画像を圧縮画像としてメモリに保存することが好適である。
【０００８】
また、前記ベクタ画像の特徴、種類及び表示態様の少なくとも１つに応じて前記基準誤差率を変更することが好適である。
【０００９】
本発明の別の態様は、ベクタ画像をラスタ画像に変換して参照用画像を生成する第１のステップと、前記ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成する第２のステップと、前記仮圧縮画像を拡大処理して前記参照用画像と同じサイズの比較用画像を生成する第３のステップと、前記参照用画像と前記比較用画像との誤差率が基準誤差率より大きければ前記圧縮率を変更して前記第２のステップから前記第３のステップを繰り返させる第４のステップと、前記第４のステップにおいて前記誤差率が前記基準誤差率以下であった場合、前記仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ前記基準誤差率を変更して前記第２のステップから前記第４のステップを繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記仮圧縮画像を前記ベクタ画像の圧縮画像としてメモリに保存する第５のステップと、を備えることが好適である。
【００１０】
本発明の別の態様は、コンピュータを、ベクタ画像をラスタ画像に変換して参照用画像を生成する参照用画像生成手段と、前記ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成する仮圧縮画像生成手段と、前記仮圧縮画像を補間拡大処理して前記参照用画像と同じサイズの比較用画像を生成する比較用画像生成手段と、前記参照用画像と前記比較用画像との誤差率が基準誤差率より大きければ前記圧縮率を変更して前記仮圧縮画像生成手段及び前記比較用画像生成手段での処理を繰り返させる誤差評価手段と、前記誤差評価手段において前記誤差率が前記基準誤差率以下であった場合、前記仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ前記基準誤差率を変更して前記仮圧縮画像生成手段、前記比較用画像生成手段及び前記誤差評価手段での処理を繰り返させ、前記仮圧縮画像の画像容量が前記メモリ容量以下であれば前記仮圧縮画像を前記ベクタ画像の圧縮画像としてメモリに保存する容量評価手段と、として機能させることを特徴とする画像圧縮プログラムである。
【発明の効果】
【００１１】
本発明によれば、ベクタ画像をラスタ画像にして圧縮する際に、元の画像との差異をできるだけ小さくしつつ、利用可能なメモリ容量に合わせてラスタ画像を圧縮することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態における画像圧縮装置の構成を示す図である。
【図２】本発明の実施の形態における画像圧縮方法を示すフローチャートである。
【発明を実施するための形態】
【００１３】
＜基本構成＞
本発明の実施の形態における画像圧縮装置１００は、図１に示すように、処理部１０、記憶部１２、入力部１４、出力部１６及び通信部１８を含んで構成される。画像圧縮装置１００は、コンピュータ、携帯電話、スマートフォン、タブレット端末等の通信可能な情報処理装置の基本構成を備える。
【００１４】
処理部１０は、ＣＰＵ等の演算処理を行う手段を含む。処理部１０は、記憶部１２に記憶されている画像圧縮プログラムを実行することによって、電子ゲーム等の処理において使用されるベクタ画像をラスタ画像に変換して所定のメモリ容量に収まるように圧縮処理を行う。ただし、圧縮された画像を利用する処理は、電子ゲームに限定されるものではなく、ベクタ画像を変換して得られるラスタ画像を用いるものであればよい。記憶部１２は、半導体メモリやメモリカード等の記憶手段を含む。記憶部１２は、処理部１０とアクセス可能に接続され、画像圧縮プログラム、処理に必要なデータ等の情報を記憶する。入力部１４は、画像圧縮装置１００に情報を入力する手段を含む。入力部１４は、例えば、ユーザからの入力を受けるキーボード、タッチパネル、ボタン等を備える。出力部１６は、ユーザから入力情報を受け付けるためのユーザインターフェース画面（ＵＩ）等や画像圧縮装置１００での処理結果を出力する手段を含む。出力部１６は、例えば、ユーザに対して画像を呈示するディスプレイを備える。通信部１８は、情報通信網１０２を介して、他の情報通信機器と情報をやり取りするためのインターフェースを含んで構成される。通信部１８による通信は有線及び無線を問わない。
【００１５】
画像圧縮装置１００において圧縮処理されたラスタ画像は、通信部１８を介して他の情報処理装置（コンピュータ、携帯電話、スマートフォン、タブレット端末等）に送信して利用することができる。
【００１６】
＜画像圧縮処理＞
本実施の形態では、画像圧縮装置１００において画像圧縮プログラムを実行することによって、ベクタ画像を圧縮されたラスタ画像に変換する機能を実現する。本実施の形態では、電子ゲーム等で利用される複数のベクタ画像を所定の指定メモリ容量に収まるようにそれぞれ圧縮された複数のラスタ画像に変換する画像圧縮処理を説明する。
【００１７】
指定メモリ容量は、処理対象であるベクタ画像を用いるアプリケーションにおいて画像用のキャッシュメモリ等として使用が許されるメモリ容量である。指定メモリ容量は、例えば、アプリケーションの種類、アプリケーションが実行されるデバイスの種類（コンピュータ、携帯電話、スマートフォン、タブレット端末等）に応じて予め設定される。
【００１８】
ステップＳ１０では、ベクタ画像をラスタ画像に変換する処理が行われる。当該ステップでの処理によって、画像圧縮装置１００は参照用画像生成手段として機能する。処理部１０は、記憶部１２に予め記憶されているベクタ形式で記述された画像データ（ベクタ画像）を読み出し、読み出されたベクタ画像の描画コマンドに従って描画し、ラスタ形式の画像データ（ラスタ画像）を生成する。対象となるベクタ画像が複数あれば、それぞれのベクタ画像を読み出してラスタ画像に変換する。処理部１０は、当該ステップで生成されたラスタ画像を参照用画像として記憶部１２に記憶させる。
【００１９】
ステップＳ１２では、生成されたラスタ画像を圧縮する処理が行われる。当該ステップでの処理によって、画像圧縮装置１００は仮圧縮画像生成手段として機能する。圧縮処理は、圧縮率に応じて行われる。処理部１０は、ステップＳ１０において生成されたラスタ画像を記憶部１２から読み出し、ラスタ画像を現在定められている圧縮率に応じて圧縮処理する。対象となるラスタ画像が複数あれば、それぞれのラスタ画像を読み出して圧縮処理する。処理部１０は、当該ステップで圧縮処理されたラスタ画像を仮圧縮画像として記憶部１２に記憶させる。
【００２０】
圧縮処理には、既存のアルゴリズムを適宜適用することができる。例えば、圧縮率に応じて元のラスタ画像の画素を間引いて圧縮する方法、元のラスタ画像の複数の画素間の平均画素値を用いて圧縮する方法等を採用することができる。
【００２１】
圧縮率の初期値は予め定められた値に設定され、以下の処理において指定メモリ容量に収まるようにラスタ画像を圧縮できる適切な圧縮率に変更される。
【００２２】
また、圧縮率は、処理対象となるベクタ画像の特徴、種類及び表示態様等に応じて画像毎に補正してもよい。
【００２３】
ベクタ画像の特徴としては、画像のサイズ、画像の表現色数、画像の輝度範囲、画像のエッジ数等が挙げられる。例えば、サイズの大きなベクタ画像を圧縮した場合、サイズの小さなベクタ画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像のサイズが大きいほど圧縮率が小さくなるように重み付けして補正してもよい。また、例えば、画像の表現色数の多いベクタ画像を圧縮した場合、表現色数が少ないベクタ画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像の表現色数が多いほど圧縮率が小さくなるように重み付けして補正してもよい。また、例えば、画像の輝度範囲が広いベクタ画像を圧縮した場合、輝度範囲が狭いベクタ画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像の輝度範囲が広いほど圧縮率が小さくなるように重み付けして補正してもよい。また、例えば、画像のエッジ数が多いベクタ画像を圧縮した場合、エッジ数が少ないベクタ画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像のエッジ数が多いほど圧縮率が小さくなるように重み付けして補正してもよい。また、例えば、画像中に文字が含まれる場合、文字が含まれない場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像に文字が含まれる場合は文字が含まれない場合に比べて圧縮率が小さくなるように重み付けして補正してもよい。
【００２４】
ベクタ画像の種類としては、背景画像、キャラクタ画像等の画像を利用するアプリケーションで特定される種類が挙げられる。例えば、背景画像はサイズが大きく、長時間に亘って表示され続けるのに対してキャラクタ画像はサイズが小さく、短い時間で変化することが多いので背景画像を圧縮した場合、キャラクタ画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、背景画像であるベクタ画像はキャラクタ画像のベクタ画像より圧縮率が小さくなるように重み付けして補正してもよい。
【００２５】
ベクタ画像の表示態様としては、静止した状態で表示される画像、動く状態で表示される画像、複数のシーンにまたがって表示される画像、複数のシーンをまたがずに表示される画像等の画像を利用するアプリケーションでの画像の表示の態様の違いが挙げられる。例えば、静止した状態で表示される画像を圧縮した場合、動く状態で表示される画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、静止した状態で表示される画像は動く状態で表示される画像より圧縮率が小さくなるように重み付けして補正してもよい。また、例えば、複数のシーンにまたがって表示される画像を圧縮した場合、複数のシーンをまたがずに表示される画像を同じ圧縮率で圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、複数のシーンにまたがって表示される画像は複数のシーンをまたがずに表示される画像より圧縮率が小さくなるように重み付けして補正してもよい。
【００２６】
ステップＳ１４では、仮圧縮画像を拡大して参照用画像と同じサイズの画像に変換する拡大処理が行われる。当該ステップでの処理によって、画像圧縮装置１００は比較用画像生成手段として機能する。拡大処理は、圧縮率の逆数の拡大率に応じて行われる。処理部１０は、ステップＳ１２において生成された仮圧縮画像を記憶部１２から読み出し、読み出された仮圧縮画像を現在定められている拡大率に応じて拡大処理する。対象となる仮圧縮画像が複数あれば、それぞれの仮圧縮画像を読み出して拡大処理する。処理部１０は、当該ステップで拡大処理されたラスタ画像を比較用画像として記憶部１２に記憶させる。
【００２７】
拡大処理には、既存のアルゴリズムを適宜適用すればよい。例えば、隣り合う画素の画素値を補間した画素を当該画素間に挿入して拡大する最近傍補間（Ｎｅａｒｅｓｔ  Ｎｅｉｇｈｂｏｒ  Ｉｎｔｅｒｐｏｌａｔｉｏｎ）、周囲４箇所の画素の画素値を線形的に補間して当該画素間に挿入して拡大する双一次補間（Ｂｉｌｉｎｅａｒ  Ｉｎｔｅｒｐｏｌａｔｉｏｎ）、周囲１６画素の画素値を三次式で補間して当該画素間に挿入する双三次補間（Ｂｉｃｕｂｉｃ  Ｉｎｔｅｒｐｏｌａｔｉｏｎ）等を適用することができる。
【００２８】
ステップＳ１６では、参照用画像と比較用画像との誤差率が評価される。当該ステップでの処理によって、画像圧縮装置１００は誤差評価手段として機能する。処理部１０は、ステップＳ１０において生成された参照用画像とステップＳ１４において生成された当該参照画像に対応する比較用画像との誤差率を求め、当該誤差率が基準誤差率以下であればステップＳ１８に処理を移行させ、当該誤差率が基準誤差率より大きければステップＳ２０にて圧縮率を現在の値よりも小さくしてステップＳ１２へ処理を戻す。
【００２９】
ここで、誤差率とは、同じベクタ画像から生成された参照用画像と比較用画像のそれぞれ対応する画素の画素値の差を全画素について総和した値を全画素数Ｎａで除算した値とすることが好適である。
【００３０】
例えば、同じベクタ画像から生成された参照用画像と比較用画像のそれぞれ対応する画素の輝度値の差を求め、全画素に対する輝度値の差を加算した値を全画素数Ｎａで除算した値を誤差率とすることが好適である。
【００３１】
また、カラー画像の場合、同じベクタ画像から生成された参照用画像の画素ｉの色値（Ｒｒｉ，Ｇｒｉ，Ｂｒｉ，αｒｉ）と比較用画像の対応する画素ｉの色値（Ｒｃｉ，Ｇｃｉ，Ｂｃｉ，αｃｉ）の平均二乗誤差値の総和を求め、その総和値を全画素数Ｎａで除算した値を誤差率ａとすることが好適である。すなわち、誤差率αは、数式（１）のように表わされる。なお、Ｒは赤、Ｇは緑、Ｂは青、αは透明度（アルファブレンド）を表わす。
【００３２】
【数１】
0005828052.tif 000002
【００３３】
このような誤差率αを適用することによって、曲線で囲まれており内部の色の比率が１：１でない図形において、エッジ付近の色を仮圧縮画像の色と異なる色とするという最適化も適用ができる。
【００３４】
なお、誤差率は、これらに限定されるものではなく、参照用画像と比較用画像との差が評価できる値であればよい。また、基準誤差率の初期値は予め定められた値に設定され、指定メモリ容量に収まるようにラスタ画像を圧縮できるように変更される。
【００３５】
また、基準誤差率は、処理対象となるベクタ画像の特徴、種類及び表示態様等に応じて画像毎に補正してもよい。
【００３６】
ベクタ画像の特徴としては、画像のサイズ、画像の表現色数、画像の輝度範囲、画像のエッジ数等が挙げられる。例えば、サイズの大きなベクタ画像を圧縮した場合、サイズの小さなベクタ画像を同じ圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像のサイズが大きいほど基準誤差率が小さくなるように重み付けして補正してもよい。また、例えば、画像の表現色数の多いベクタ画像を圧縮した場合、表現色数が少ないベクタ画像を圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像の表現色数が多いほど基準誤差率が小さくなるように重み付けして補正してもよい。また、例えば、画像の輝度範囲が広いベクタ画像を圧縮した場合、輝度範囲が狭いベクタ画像を圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像の輝度範囲が広いほど基準誤差率が小さくなるように重み付けして補正してもよい。また、例えば、画像のエッジ数が多いベクタ画像を圧縮した場合、エッジ数が少ないベクタ画像を圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像のエッジ数が多いほど基準誤差率が小さくなるように重み付けして補正してもよい。また、例えば、画像中に文字が含まれる場合、文字が含まれない場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、処理対象であるベクタ画像に文字が含まれる場合は文字が含まれない場合に比べて誤差基準率が小さくなるように重み付けして補正してもよい。
【００３７】
ベクタ画像の種類としては、背景画像、キャラクタ画像等の画像を利用するアプリケーションで特定される種類が挙げられる。例えば、背景画像はサイズが大きく、長時間に亘って表示され続けるのに対してキャラクタ画像はサイズが小さく、短い時間で変化することが多いので背景画像を圧縮した場合、キャラクタ画像を圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、背景画像であるベクタ画像に対してキャラクタ画像のベクタ画像より基準誤差率が小さくなるように重み付けして補正してもよい。
【００３８】
ベクタ画像の表示態様としては、静止した状態で表示される画像、動く状態で表示される画像、複数のシーンにまたがって表示される画像、複数のシーンをまたがずに表示される画像等の画像を利用するアプリケーションでの画像の表示の態様の違いが挙げられる。例えば、静止した状態で表示される画像を圧縮した場合、動く状態で表示される画像を圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、静止した状態で表示される画像は動く状態で表示される画像より基準誤差率が小さくなるように重み付けして補正してもよい。また、例えば、複数のシーンにまたがって表示される画像を圧縮した場合、複数のシーンをまたがずに表示される画像を圧縮した場合に比べて圧縮後のラスタ画像と元のベクタ画像との差異が認識され易い。そこで、複数のシーンにまたがって表示される画像は複数のシーンをまたがずに表示される画像より基準誤差率が小さくなるように重み付けして補正してもよい。
【００３９】
また、ある画像の誤差率が基準誤差率より大きければ圧縮率を現在の値よりも小さくしてステップＳ１２へ処理を戻すが、１つの画像に対する誤差率が基準誤差率より大きければ処理対象とされているすべての画像に対して圧縮率を変更してステップＳ１２からの処理を繰り返してもよい。また、誤差率が基準誤差率より大きい画像のみを処理対象として圧縮率を変更してステップＳ１２からの処理を繰り返してもよい。
【００４０】
圧縮率の変更方法は、例えば、二分探索法を適用することが好適である。すなわち、適切な圧縮率を探索するにあたって、現在の圧縮率による圧縮画像の誤差率が基準誤差率を超えているのは圧縮され過ぎていることを意味するので圧縮率を現在の圧縮率より小さく変更する。
【００４１】
例えば、圧縮率の初期値を２、すなわち元の画像のサイズを１としたときに圧縮後の画像のサイズを０．５とする圧縮率を設定し、当該圧縮率において誤差率が基準誤差率を超えた場合には圧縮後の画像のサイズを現在の画像のサイズ（０．５）に加えてその１／２（＝０．２５）だけ大きくする圧縮率である１．３３（＝１／０．７５）に変更する。さらに、圧縮率が１．３３において誤差率が基準誤差率を超えた場合、圧縮後の画像のサイズを現在の画像のサイズ（０．７５）に加えて前回の変更分（０．２５）の１／２（＝０．１２５）だけ大きくする圧縮率である１．１４（＝１／０．８７５）に変更する。このように圧縮率を変更して、圧縮後のラスタ画像が元のベクタ画像に対して許容される誤差率以下となる最適な圧縮率となるまで処理を繰り返す。
【００４２】
ステップＳ１８では、仮圧縮画像の画像容量と予め定められた指定メモリ容量との比較処理が行われる。当該ステップでの処理によって、画像圧縮装置１００は容量評価手段として機能する。処理部１０は、仮圧縮画像の画像容量が指定メモリ容量より大きければ、ステップＳ２２にて基準誤差率を変更してステップＳ１２に処理を戻し、ステップＳ１２からの処理を繰り返す。なお、基準誤差率を変更する際には、圧縮率を初期値に戻すことが好適である。仮圧縮画像の画像容量が指定メモリ容量以下であれば、ステップＳ１６までに得られた仮圧縮画像をベクタ画像の圧縮画像として記憶部１２に保存して処理を終了する。
【００４３】
現在の基準誤差率を満たす圧縮画像の容量が指定メモリ容量を超えている場合、基準誤差率が低すぎることを意味するので、基準誤差率を現在の基準誤差率より大きく変更する。例えば、現在の基準誤差率に所定値を加えて新たな基準誤差率とする。基準誤差率の初期値を１０％に設定した場合、圧縮されたラスタ画像の容量が指定メモリ容量を超えたときには現在の基準誤差率に１０％を加えて２０％に変更する。さらに、基準誤差率を２０％に変更しても圧縮されたラスタ画像の容量が指定メモリ容量を超えたときには現在の基準誤差率に１０％を加えて３０％に変更する。このように基準誤差率を変更して、圧縮後のラスタ画像ができるだけ元のベクタ画像に近い画像となるようにしつつ、許容されるメモリ容量に記憶できる容量の圧縮画像を生成する。
【００４４】
なお、さらに最適な圧縮率を求めるために、仮圧縮画像の画像容量が指定メモリ容量以下である場合に圧縮率を現在の圧縮率よりも小さくしてステップＳ１２からの処理を繰り返し、許される指定メモリ容量内においてできるだけ大きな圧縮画像となるように処理してもよい。
【００４５】
この場合も、圧縮率の変更方法は、二分探索法を適用することが好適である。例えば、圧縮率の初期値を２、すなわち元の画像のサイズを１としたときに圧縮後の画像のサイズを０．５とする圧縮率を設定し、当該圧縮率において誤差率が基準誤差率以下であり、圧縮画像の容量が指定メモリ容量以下である場合、圧縮後の画像のサイズを現在の画像のサイズ（０．５）に加えてその１／２（＝０．２５）だけ大きくする圧縮率である１．３３（＝１／０．７５）に変更する。さらに、圧縮率が１．３３において誤差率が基準誤差率以下であり、圧縮画像の容量が指定メモリ容量以下である場合、圧縮後の画像のサイズを現在の画像のサイズ（０．７５）に加えて前回の変更分（０．２５）の１／２（＝０．１２５）だけ大きくする圧縮率である１．１４（＝１／０．８７５）に変更する。このように圧縮率を変更して処理を繰り返し、圧縮後のラスタ画像のメモリ容量が指定メモリ容量を超えた場合に、１つ前の圧縮率を最適な圧縮率として、当該圧縮率を用いてステップＳ１６までに得られた仮圧縮画像をベクタ画像の圧縮画像として記憶部１２に保存して処理を終了する。
【符号の説明】
【００４６】
１０  処理部、１２  記憶部、１４  入力部、１６  出力部、１８  通信部、１００  画像圧縮装置。
【要約】
【課題】元の画像との差異をできるだけ小さくしつつ、利用可能なメモリ容量に合わせてベクタ画像をラスタ画像に圧縮する。
【解決手段】ベクタ画像をラスタ画像に変換して参照用画像を生成し（Ｓ１０）、ラスタ画像を圧縮率に応じて圧縮して仮圧縮画像を生成し（Ｓ１２）、仮圧縮画像を補間拡大処理して参照用画像と同じサイズの比較用画像を生成し（Ｓ１４）、参照用画像と比較用画像との誤差率が基準誤差率より大きければ圧縮率を変更して上記処理を繰り返させ（Ｓ１６）、誤差率が基準誤差率以下であった場合、仮圧縮画像の画像容量が予め定められたメモリ容量より大きければ基準誤差率を変更して上記処理を繰り返させ（Ｓ１８）、仮圧縮画像の画像容量がメモリ容量以下であれば仮圧縮画像をベクタ画像の圧縮画像としてメモリに保存する画像圧縮装置とする。
【選択図】図２【図１】
0005828052.tif 000003
【図２】
0005828052.tif 000004