JP2012109744A - 画像圧縮装置、画像圧縮方法、コンピュータプログラム - Google Patents
画像圧縮装置、画像圧縮方法、コンピュータプログラム Download PDFInfo
- Publication number
- JP2012109744A JP2012109744A JP2010256308A JP2010256308A JP2012109744A JP 2012109744 A JP2012109744 A JP 2012109744A JP 2010256308 A JP2010256308 A JP 2010256308A JP 2010256308 A JP2010256308 A JP 2010256308A JP 2012109744 A JP2012109744 A JP 2012109744A
- Authority
- JP
- Japan
- Prior art keywords
- resolution
- data
- image
- complementary information
- image data
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Editing Of Facsimile Originals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
【課題】 様々な解像度の高解像度画像データに対して、回路規模を抑えつつ画像圧縮させる。
【解決手段】 第1の画像データを記憶する画像記憶手段から、所望の解像度に間引いた第2画像データを取得する。第2画像データを2×2画素ごとのブロックに分割したときの配置パターンに基づいて、第2画像の解像度の1/2倍の解像度に間引いた画像と組み合わせた場合に第2画像を復元可能な補完情報を生成する補完情報生成手段を設ける。更に、1/(2^M)倍の解像度の画像データを第1圧縮方式で圧縮する。また1/(2^N)倍の解像度の画像データを第2圧縮方式で圧縮する。1/(2^T)倍の解像度(T=0,…,N−1)の画像データそれぞれに対して補完情報生成手段で補完情報を生成させる。各データサイズに基づいて、補完情報と第1の圧縮データとの組合せを出力させるか、補完情報と第2の圧縮データとの組合せを出力させるかを判定する。
【選択図】図1
【解決手段】 第1の画像データを記憶する画像記憶手段から、所望の解像度に間引いた第2画像データを取得する。第2画像データを2×2画素ごとのブロックに分割したときの配置パターンに基づいて、第2画像の解像度の1/2倍の解像度に間引いた画像と組み合わせた場合に第2画像を復元可能な補完情報を生成する補完情報生成手段を設ける。更に、1/(2^M)倍の解像度の画像データを第1圧縮方式で圧縮する。また1/(2^N)倍の解像度の画像データを第2圧縮方式で圧縮する。1/(2^T)倍の解像度(T=0,…,N−1)の画像データそれぞれに対して補完情報生成手段で補完情報を生成させる。各データサイズに基づいて、補完情報と第1の圧縮データとの組合せを出力させるか、補完情報と第2の圧縮データとの組合せを出力させるかを判定する。
【選択図】図1
Description
本発明は、画像データを圧縮する画像圧縮装置に関するものである。
コピーやプリンタ等の文書画像を扱う装置においては、文書画像を画像圧縮装置によって画像圧縮して記憶や転送を行うものがある。
近年、文書画像を扱うスキャナ装置やプリンタ装置の技術向上に伴って、それらに接続される画像処理装置に含まれる画像圧縮装置が扱う画像データの解像度はより高いものが求められるようになってきている。同時に、従来通り低い解像度の画像データへの対応も継続して求められており、画像圧縮装置は様々な解像度の画像データへの対応が必要である。
また、画像圧縮による見た目の画質劣化の程度は、画像データの解像度によって異なるものである。そこで、画像圧縮による画質劣化の程度が画像データの解像度によって大きく異なることを抑えるために、解像度に応じて圧縮率を決めて圧縮する画像圧縮装置がある(特許文献1参照)。
一方、画素数が多い高解像度の画像データに対応するために画像圧縮装置の回路規模が大きくなり、半導体製造コストの増加や消費電力増加を招いてしまう。
本発明の画像圧縮装置は、第1の画像データを記憶する画像記憶手段と、前記第1の画像データの解像度に対して1/(2^T)倍の解像度を有する画像を要求された場合(ここで、T=0,1,2,…,Nの整数とする)、前記画像記憶手段から前記第1の画像データの解像度に対して1/(2^T)倍の解像度になるように間引いた場合の画素データを取得して、当該取得した画素データを第2の画像データとして出力する解像度変換手段と、前記解像度変換手段から出力される前記第2の画像データを2×2画素ごとのブロックに分割し、当該分割した各ブロックにおける画素値の配置パターンに基づいて、当該第2の画像データの解像度の1/2倍の解像度に間引いた画像と組み合わせることで前記第2の画像を復元することができる補完情報を生成する補完情報生成手段と、前記第1の画像データの解像度に対して1/(2^M)倍の解像度(ここで、M<Nとする)になるように間引いた場合の画素データで構成される前記第2の画像データを、第1の圧縮方式で圧縮することにより、第1の圧縮データを生成する第1圧縮手段と、前記第1の画像データの解像度に対して1/(2^N)倍の解像度になるように間引いた場合の画素データで構成される前記第2の画像データを、第2の圧縮方式で圧縮することにより、第2の圧縮データを生成する第2圧縮手段と、前記補完情報生成手段で生成された前記補完情報と、前記第1圧縮手段で生成された前記第1の圧縮データと、前記第2圧縮手段で生成された前記第2の圧縮データとを記憶する符号記憶手段と、前記解像度変換手段から出力される前記1/(2^T)倍の解像度になるように間引いた画素データで構成される前記第2の画像データ(T=0,1,2,…,N−1)それぞれに対して前記補完情報生成手段で補完情報を生成させ、前記符号記憶手段に記憶された各解像度における補完情報のデータサイズと前記第1の圧縮データのデータサイズと前記第2の圧縮データのデータサイズとの少なくともいずれかに基づいて、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させるか、前記1/(2^T)倍(T=0,1,2,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第2の圧縮データとの組み合わせを前記符号記憶手段から出力させるかを判定し、当該出力させると判定した方の組み合わせを前記符号記憶手段から出力させるように制御する制御手段と、を有することを特徴とする。
本発明によれば、様々な解像度の高解像度画像データを画像圧縮する画像圧縮装置を、回路規模の増加を抑えることができる。
[実施例1]
以下、本発明の実施例1について図面を用いて説明する。図1は、画像圧縮装置のブロック図である。制御手段107は、画像記憶手段101、解像度変換手段102、補完情報生成手段103、JPEG圧縮手段104、およびJPEG−LS圧縮手段105の動作を制御して、画像圧縮装置1に入力される画像データを圧縮するように制御を行う。なお、本実施例において、図1の各手段は、ASICなどの電子回路(ハードウェア)で実現するものとするが、これに限るものではなく、その一部をコンピュータがプログラム(ソフトウェア)を実行することにより実現するようにしてもよい。
以下、本発明の実施例1について図面を用いて説明する。図1は、画像圧縮装置のブロック図である。制御手段107は、画像記憶手段101、解像度変換手段102、補完情報生成手段103、JPEG圧縮手段104、およびJPEG−LS圧縮手段105の動作を制御して、画像圧縮装置1に入力される画像データを圧縮するように制御を行う。なお、本実施例において、図1の各手段は、ASICなどの電子回路(ハードウェア)で実現するものとするが、これに限るものではなく、その一部をコンピュータがプログラム(ソフトウェア)を実行することにより実現するようにしてもよい。
画像記憶手段101は、画像圧縮装置1に入力された画像データを内部に記憶し、当該記憶した画像データの解像度情報を制御手段107に対して送信する。また、画像記憶手段101は、解像度変換手段102からの指示に応じて、記憶している画像データを構成する画素データを、解像度変換手段102に対して転送する。
解像度変換手段102は、必要に応じて、画像記憶手段101に記憶された元の画像データから、解像度を下げた画像データを生成して出力する(なお、解像度変換せずに出力することも可能とする)。なお、解像度変換手段102は、補完情報生成手段103、JPEG圧縮手段104、および、JPEG−LS圧縮手段から送信される転送要求信号に応じて、該画像データを出力するものとする。このとき、解像度変換手段102は、所望の解像度の画像データを生成するのに必要な画素データを画像記憶手段101に対して指示して転送させる。
補完情報生成手段103は、解像度変換手段102から転送される画像データを受信して補完情報を生成し、符号記憶手段106に対して出力する。ここで補完情報とは、解像度変換した画像データと組み合わせて利用することで、画像データを元の解像度の画像データに復元するための情報である。また、補完情報生成手段103は、生成した補完情報のサイズ情報を制御手段107に対して送信する。
JPEG圧縮手段104は、解像度変換手段102から転送される画像データを受信してJPEG符号に変換し、符号記憶手段106に対して出力する。また、JPEG圧縮手段104は、生成したJPEG符号のサイズ情報を制御手段107に対して送信する。なお、本実施例において、JPEG圧縮手段104が実行するJPEG符号化は、非可逆圧縮とする。
JPEG−LS圧縮手段105は、解像度変換手段102から転送される画像データを受信してJPEG−LS符号に変換し、符号記憶手段106に対して出力する。また、JPEG−LS圧縮手段105は、生成したJPEG−LS符号のサイズ情報を制御手段107に対して送信する。なお、本実施例において、JPEG−LS圧縮手段105が実行するJPEG−LS符号化は、可逆圧縮とする。
符号記憶手段106は、補完情報生成手段103から送信される補完情報と、JPEG圧縮手段104、および、JPEG−LS圧縮手段105から送信される符号データを受信して記憶する。また、符号記憶手段106は、制御手段107の指示により、記憶した補完情報と符号データの全部または一部を外部に対して出力する。
図2は、解像度2400dpiの縦32画素、横32画素からなる画像データの模式図の例である。各マスは画素を表していて、それぞれの画素は24bitカラーの情報を持つ。図2(A)は、各画素の値が白黒のいずれかである画像の例であり、白い画素は値FFFFFFhを持ち、黒い画素は値000000hを持っている。図2(B)は各画素の座標を表したもので、最も左の画素のX座標を0に、最も上の画素のY座標を0にした座標値を使い、各画素に座標を付けている。
図3は、単純間引き方式による縮小画像処理の説明図である。図3(A)は縦32画素、横32画素からなる画像データを元画像として単純間引き方式で縮小するときに、間引かれる画素を白で、残る画素を黒で示した模式図である。すなわち、この間引き処理は、元画像を2×2画素サイズのブロックごとに分割し、その2×2画素ブロック内の右下の画素を残してその他の画素を削除したものに等しい。図3(B)は、図2(A)で示した画像データを単純間引き方式によって縮小した結果、間引かれずに残る画素を白および黒の画素として示し、間引かれる画素部分を斜線で示した模式図である。これらの残る画素を使って構成した画像データが縮小画像データとなる。なお、この縮小画像処理は、解像度を半分にする解像度変換処理でもある。以降では縮小の度合いを表すために解像度の数値を使う。
図4は、解像度1200dpiの縦16画素、横16画素からなる画像データの模式図である。図4(A)は、図2(A)で示した画像データを元画像として、単純間引き方式により解像度を半分にした画像データであり、各画素の値を白黒で表している。図4(B)は各画素の座標を表したもので、図2に示した画像の画素を単純間引きして残った画素の座標を付けている。
図5は、解像度600dpiの縦8画素、横8画素からなる画像データの模式図である。図5(A)は、図4(A)で示した画像データを元画像として、単純間引き方式により解像度を半分にした画像データであり、各画素の値を白黒で表している。図5(B)は各画素の座標を表したもので、図4に示した画像の画素を単純間引きして残った画素の座標を付けている。
図6は、補完情報を生成するときに使用する、2×2画素サイズのブロックにおける色の配置パターンの一覧(計8個)である。各パターンの4つの画素の色は、画素値そのものではなく、基準となる右下の画素の値と等しいかどうかの条件を示している。各配置パターンの4つの画素のうち白い画素は基準となる右下の画素値と同じ画素値を持つ画素を表し、また、黒い画素は基準となる右下の画素値と異なる画素値を持つ画素を表す。すなわち、パターン0と判断される条件は、4画素すべてが同じ値を持つことである。パターン1と判断される条件は、右上と左下の画素が基準となる右下の画素と同じ値を持ち、左上の画素が異なる値を持つことである。他のパターンの条件についても同様で、黒い画素だけが基準となる右下の画素と異なる画素値を持ち、白い画素が右下の画素値と同じ画素値を持つ条件を表している。補完情報生成手段103は、入力される画像データについて縦2画素×横2画素の4画素のブロック毎にこれらのパターンのいずれに一致するか比較・判定し、比較判定結果に基づいて補完情報を生成する。本実施例で生成される補完情報は、2×2画素のブロックごとに、図6のパターン群の中のいずれのパターンに一致するかを示すパターン番号と、右下の基準画素と異なる値を持つ画素全ての画素値とから構成される。
図7は、図2(A)で示した画像データを入力として補完情報生成手段103が生成する補完情報の模式図である。なお、補完情報は、基準画素(2×2画素の右下画素)の画素値とは異なる画素値とパターン番号とから構成されるが、図7は、その補完情報のうちのパターン番号だけを記載した図である。したがって、各マスの数値は、図2(A)の元画像を2×2画素のブロックごとに分割した場合に、各ブロックについて求められたパターン番号を示すものである。補完情報生成手段103は、実際には、パターン0以外のパターンに対してはパターン番号の他に、基準となる右下画素の画素値と異なっている画素値を組にして出力する。ここで、パターン1、2、4は異なっている画素が1つなので1つの画素値を組に持ち、パターン3、5、6は異なっている画素が2つなので2つの画素値を組に持ち、パターン7は異なっている画素が3つなので3つの画素値を組に持つ。ここで、補完情報(すなわち、パターン番号と画素値の組)の他に基準となる右下の画素の画素値があれば、元の画像データを復元することが可能である。一方、図4(A)は、図2(A)の画像に対して単純間引きすることにより、2×2画素のブロックごとの右下画素によって作成される画像である。したがって、補完情報と図4(A)で示した画素値とを持組み合わせれば、元の画像データである図2(A)で示した画像データを復元することが可能である。
図8は、図4(A)で示した画像データを入力として、補完情報生成手段103が生成する補完情報の模式図である。なお、補完情報は、基準画素(2×2画素の右下画素)の画素値とは異なる画素値とパターン番号とから構成されるが、図8は、その補完情報のうちパターン番号だけを記載した図である。したがって、各マスの数値は、図4(A)の元画像の2×2画素のブロック毎に分割した場合に、各ブロックについて求められたパターン番号を示すものである。補完情報(すなわち、図8のパターン番号と画素値との組)と、図5(A)で示した画素値(すなわち基準画素の画素値)とから、元の画像データである図4(A)で示した画像データを復元することが可能である。図8の補完情報と図5(A)で示した画素値とを用いて図4(A)の画像を復元することができるので、上述したように、さらに図7で示した補完情報もあれば、図4(A)に対する元の画像データである図2(A)で示した画像データを復元することも可能である。
図9は、制御手段107の動作フローを示すフローチャートである。制御手段107は、画像圧縮装置1全体の動作を制御しており、本フローチャートの流れで画像圧縮装置1の処理の一連の動作が実現される。本画像圧縮装置は、画像データを入力し、画像圧縮処理を行うことにより、補完情報と符号データ(基準画素で構成される画像データを更に圧縮符号化したデータ)とを出力する処理を行う。画像圧縮処理には、解像度変換した画像データを元の解像度の画像データに復元するための情報である補完情報(すなわちパターン番号と基準画素の画素値と異なる画素値)を生成する補完情報生成処理と、基準画素に基づき構成される画像データ(すなわち単純間引き処理により生成される低解像度の画像データ)に対して非可逆の画像圧縮を行うJPEG圧縮処理と、基準画素に基づき構成される画像データ(すなわち単純間引き処理により生成される低解像度の画像データ)に対して可逆の画像圧縮を行うJPEG−LS圧縮処理とが含まれる。本実施例の画像圧縮装置は、M個の補完情報とJPEG符号か、あるいは、N個の補完情報とJPEG−LS符号か、のいずれか合計サイズが小さい方を出力する。なお、本画像圧縮装置は、JPEG圧縮処理とJPEG−LS圧縮処理とを切り換えることで、画質劣化をより小さく抑えることができる構成である。以下に各動作ステップの内容を説明する。
ステップS901:制御手段107は、画像記憶手段101に対して動作開始信号を送信する。画像記憶手段101での動作フローは後述する。
ステップS902:制御手段107は、画像記憶手段101から画像データの解像度情報をdpi単位の数値で受信して、変数Rに代入する。なお、本実施例において、解像度の値は、1200に2のべき乗をかけた数値(1200、2400、4800、9600等)のいずれかであるとする。
ステップS903:制御手段107は、画像記憶手段101から画像データの水平方向と垂直方向それぞれの画素数情報を受信して、変数Xと変数Yに代入する。
ステップS904:制御手段107は、変数Mに0を代入して初期化する。
ステップS905:制御手段107は、変数Nに1を代入して初期化する。なお、この初期値はJPEG−LS圧縮を実行する解像度を特定するための設定値(初期値)であり、JPEG圧縮を実行する解像度を起点にさらに1/(2^(初期値N))縮小の解像度変換を行ってからJPEG−LS圧縮を実行することを示す値である。このフローチャートでは説明を簡単にするために変数Nの設定値を1にしているが、変数Nの設定値を他の値にすることでJPEG−LS圧縮を実行する解像度を変更することが可能である。
ステップS906:制御手段107は、変数Rの値が1200かどうか判定する。変数Rが1200であればステップS909に進む。変数Rが1200と判定した時点での変数Mの値を使った1/(2^M)は、入力された画像データを1200dpiに変換するために必要な縮小率となっている。また、変数Rが1200と判定した時点での変数Nの値を使った1/(2^N)は、Nの初期値が1の場合、入力された画像データを600dpiに変換するために必要な縮小率となっている。一方、変数Rが1200でないと判定した場合は、ステップS907に進む。なお、ここでの1200は、JPEG圧縮を実行する解像度を示している。このフローチャートでは説明を簡単にするために固定値1200にしているが、この比較値を他の値にすることでJPEG圧縮を実行する解像度を変更することが可能である。
ステップS907:制御手段107は、変数Rに(R÷2)を代入する。
ステップS908:制御手段107は、変数Mに(M+1)を代入し、また、変数Nに(N+1)を代入する。
ステップS909:制御手段107は、変数Tに0を代入する。変数Tは、解像度変換手段102に縮小率を指示するための変数であり、解像度変換手段102は、変数Tの縮小指示を受けた場合、1/(2^T)縮小の解像度変換を行う。以降では、1/(2^T)縮小のことを簡単に縮小率Tと表記する。
ステップS910:制御手段107は、解像度変換手段102に縮小率Tの指示を送信する。(すなわち、解像度変換手段102に対して、元の解像度の1/(2^T)倍の解像度になるように間引いた場合の画素データで構成される画像データを用意するように指示する。)また、制御手段107は、同時に解像度変換手段102に画像データの画素数XとYを送信する。解像度変換手段102での動作フローは後述する。
ステップS911:制御手段107は、変数Tの値が変数Nの値と同じかどうか判定する。変数Tの値が変数Nの値と同じであればステップS919に進む。これらが同じであるとき、解像度変換手段102では縮小率Nの解像度変換が行われて、解像度変換手段102から出力される画像データの解像度は600dpiとなる。変数Tの値が変数Nの値と異なればステップS912に進む。
ステップS912:制御手段107は、補完情報生成手段103に動作開始信号を送信する。補完情報生成手段103での動作フローは後述する。
ステップS913:制御手段107は、補完情報生成手段103から生成された補完情報のサイズ情報を受信して、変数H(T)に代入する。なお、縮小が複数回行われると、補完情報も複数生成されることになるので、それぞれのサイズ情報を保持するために、変数H(T)には配列型の変数を使用する。
ステップS914:制御手段107は、変数Tの値が変数Mの値と同じかどうか判定する。変数Tの値が変数Mの値と同じであればステップS915に進む。これらが同じであるとき、解像度変換手段102では縮小率Mの解像度変換が行われて、解像度変換手段102が出力する画像データの解像度は1200dpiとなる。一方、変数Tの値が変数Mの値と異なればステップS918に進む。
ステップS915:制御手段107は、JPEG圧縮手段104に動作開始信号を送信する。JPEG圧縮手段104での動作フローは後述する。
ステップS916:制御手段107は、JPEG圧縮手段104からJPEG符号のサイズ情報を受信して、変数Jに代入する。
ステップS917:制御手段107は、変数H(M)の値が変数Jの値以上かどうか判定する。変数H(M)の値が変数Jの値以上であれば、ステップS923に進む。ステップS917の処理は、補完情報のサイズH(M)とJPEG符号化したときのサイズJとを比較し、補完情報のサイズがJPEG符号化サイズ以上であればJPEG−LS圧縮処理(S919−S922)を行わずにS923に進むための条件分岐である。一方、変数H(M)の値が変数Jの値以上でないと判定した場合、ステップS918に進む。
ステップS918:制御手段107は、変数Tに(T+1)を代入して、ステップS910に進む。
ステップS919:制御手段107は、JPEG−LS圧縮手段105に動作開始信号を送信する。JPEG−LS圧縮手段105での動作フローは後述する。
ステップS920:制御手段107は、JPEG−LS圧縮手段105からJPEG−LS符号のサイズ情報を受信して、変数Lに代入する。
ステップS921:制御手段107は、変数H(N)に、{H(M)+H(M+1)+…+H(N−1)}を代入する。この値は、縮小率Mから縮小率(N−1)までの各解像度の画像データから生成した補完情報のサイズ情報の和を表している。なお、本実施例では、ステップS904およびステップS905においてMとNにそれぞれ0と1を代入しており、Mは(N−1)と同じであるため、H(N)に代入される値はH(M)の値となる。
ステップS922:制御手段107は、{H(N)+L}の値が変数Jの値以上かどうか判定する。{H(N)+L}の値が変数Jの値以上であれば、ステップS923に進む。ステップS922の処理は、補完情報とJPEG−LS符号のサイズとの合計と、JPEG符号のサイズとを比較し、よりサイズが小さくなる圧縮方式を選択するための条件分岐である。一方、{H(N)+L}の値が変数Jの値以上でないと判定した場合は、ステップS925に進む。
ステップS923:制御手段107は、符号記憶手段106にM個の補完情報の出力の指示を送信する。すなわち、縮小率0から縮小率(M−1)までのM個の解像度の画像データから生成したM個の補完情報の出力指示である。
ステップS924:制御手段107は、符号記憶手段106にJPEG符号の出力の指示を送信し、処理を終了する。
ステップS925:制御手段107は、符号記憶手段106にN個の補完情報の出力の指示を送信する。すなわち、縮小率0から縮小率(N−1)までのN個の解像度の画像データから生成したN個の補完情報の出力指示である。
ステップS926:制御手段107は、符号記憶手段106にJPEG−LS符号の出力の指示を送信し、処理を終了する。
すなわち、符号記憶手段106から最終的に出力される圧縮データは、ステップS923〜S924で出力される「M個の補完情報とJPEG符号」、もしくはステップS925〜S926で出力される「N個の補完情報とJPEG−LS符号」である。どちらの組み合わせで出力するかは、補完情報とJPEG符号とJPEG−LS符号との各データサイズに基づいて決めることになる。
図10は、画像記憶手段101の動作フローを示すフローチャートである。画像記憶手段101は、内部で2つの処理が並列に動作しており、それぞれの処理フローを図10(A)、および、図10(B)に示す。
まず、図10(A)の各ステップで、画像記憶手段101が実行する処理内容を説明する。
ステップS1001:画像記憶手段101は、図9のステップS901において制御手段107が送信した動作開始信号を受信した場合、次のステップS1002に進む。受信するまでは本ステップS1001で待機する。
ステップS1002:画像記憶手段101は、画像データを記憶するための内部バッファをクリアする。
ステップS1003:画像記憶手段101は、画像圧縮装置1の外部から入力される画像データを受信して、内部バッファに記憶する。このとき画像データの解像度情報も併せて受信して、内部バッファに記憶する。解像度は、1200、2400、4800、9600、等の1200の倍数である。
ステップS1004:画像記憶手段101は、制御手段107に対して画像データの解像度情報を送信する。このとき、制御手段107は、画像記憶手段101から送信された画像データの解像度情報を図9のステップS902において受信する。
ステップS1005:画像記憶手段101は、制御手段107に対して画像データの画素数情報を送信する。このとき、制御手段107は、画像記憶手段101から送信された画像データの画素数情報を図9のステップS903において受信する。
次に、図10(B)の各ステップで、画像記憶手段101が実行する処理内容を説明する。
ステップS1006:画像記憶手段101は、解像度変換手段102から画素データ要求信号を受信した場合、次のステップS1007に進む。画素データ要求信号は、画像データ中の画素を特定するための座標値IとJを含むものである。画素データ要求信号を受信するまでは本ステップS1006で待機する。
ステップS1007:画像記憶手段101は、画像データを記憶している内部バッファから座標(I,J)の画素データを読み出して解像度変換手段102に対して送信する。
図11は、解像度変換手段102の動作フローを示すフローチャートである。解像度変換手段102は、内部で4つの処理が並列に動作しており、それぞれの処理フローを図11(A)、図11(B)、図11(C)、および、図11(D)に示す。
まず、図11(A)の各ステップで、解像度変換手段102が実行する処理内容を説明する。
ステップS1101:解像度変換手段102は、図9のステップS910において制御手段107から送信された縮小率Tの指示を受信した場合、ステップS1102に進む。このとき、解像度変換手段102は、制御手段107から水平方向の画素数Xと垂直方向の画素数Yも同時に受信する。受信するまでは本ステップS1101で待機する。
ステップS1102:解像度変換手段102は、変数Sに1を代入する。
ステップS1103:解像度変換手段102は、変数Pに0を代入する。
ステップS1104:解像度変換手段102は、変数Pの値が縮小率Tの値と等しいかどうか判定する。変数Pの値が縮小率Tの値と等しければステップS1101に戻る。変数Pの値が縮小率Tの値と等しくなければステップS1105に進む。
ステップS1103:解像度変換手段102は、変数Pに0を代入する。
ステップS1104:解像度変換手段102は、変数Pの値が縮小率Tの値と等しいかどうか判定する。変数Pの値が縮小率Tの値と等しければステップS1101に戻る。変数Pの値が縮小率Tの値と等しくなければステップS1105に進む。
ステップS1105:解像度変換手段102は、変数Sに(S×2)を代入する。
ステップS1106:解像度変換手段102は、変数Pに(P+1)を代入して、ステップS1104に進む。
ステップS1106:解像度変換手段102は、変数Pに(P+1)を代入して、ステップS1104に進む。
次に図11(B)の各ステップで、解像度変換手段102が実行する処理内容を説明する。
ステップS1107:解像度変換手段102は、補完情報生成手段103から画像データ要求信号を受信した場合、次のステップS1108に進む。受信するまでは本ステップS1107で待機する。
ステップS1108:解像度変換手段102は、変数Bに変数Sの値を代入する。
ステップS1109:解像度変換手段102は、変数Aに変数Sの値を代入する。
ステップS1110:解像度変換手段102は、画像記憶手段101に画素データ(A−1,B−1)の要求信号を送信する。ここで、画素データ(A−1,B−1)とは、座標(A−1,B−1)における画素データのことである。このとき、前述したように図10(B)のステップS1006において画像記憶手段101は、解像度変換手段102から送信された画素データ要求信号を受信することになる。
ステップS1107:解像度変換手段102は、補完情報生成手段103から画像データ要求信号を受信した場合、次のステップS1108に進む。受信するまでは本ステップS1107で待機する。
ステップS1108:解像度変換手段102は、変数Bに変数Sの値を代入する。
ステップS1109:解像度変換手段102は、変数Aに変数Sの値を代入する。
ステップS1110:解像度変換手段102は、画像記憶手段101に画素データ(A−1,B−1)の要求信号を送信する。ここで、画素データ(A−1,B−1)とは、座標(A−1,B−1)における画素データのことである。このとき、前述したように図10(B)のステップS1006において画像記憶手段101は、解像度変換手段102から送信された画素データ要求信号を受信することになる。
ステップS1111:解像度変換手段102は、当該要求に応じて図10(B)のステップS1007で画像記憶手段101から送信された画素データを取得する。
ステップS1112:解像度変換手段102は、補完情報生成手段103に当該取得した画素データを送信する。
ステップS1113:解像度変換手段102は、変数Aの値が水平方向の画素数Xと一致しているかどうか判定する。変数Aの値が水平方向の画素数Xと一致していればステップS1115に進む。一致していなければステップS1114に進む。
ステップS1114:解像度変換手段102は、変数Aに(A+S)を代入して、ステップS1110に戻る。
ステップS1115:解像度変換手段102は、変数Bの値が垂直方向の画素数Yと一致しているかどうか判定する。変数Bの値が垂直方向の画素数Yと一致していればステップS1107に戻る。一致していなければステップS1116に進む。
ステップS1116:解像度変換手段102は、変数Bに(B+S)を代入して、ステップS1109に戻る。
ステップS1112:解像度変換手段102は、補完情報生成手段103に当該取得した画素データを送信する。
ステップS1113:解像度変換手段102は、変数Aの値が水平方向の画素数Xと一致しているかどうか判定する。変数Aの値が水平方向の画素数Xと一致していればステップS1115に進む。一致していなければステップS1114に進む。
ステップS1114:解像度変換手段102は、変数Aに(A+S)を代入して、ステップS1110に戻る。
ステップS1115:解像度変換手段102は、変数Bの値が垂直方向の画素数Yと一致しているかどうか判定する。変数Bの値が垂直方向の画素数Yと一致していればステップS1107に戻る。一致していなければステップS1116に進む。
ステップS1116:解像度変換手段102は、変数Bに(B+S)を代入して、ステップS1109に戻る。
つまり、ステップS1110からステップS1116では、解像度変換手段102は、水平方向の画素、ならびに、垂直方向の画素について、変数Sの値ごとの2重ループによる繰り返し処理を行っている。その処理内容は、画像記憶手段101に対して画素データの要求信号を送信し(S1110)、画像記憶手段101から画素データを受信し(S1111)、補完情報生成手段103に画素データを送信する(S1112)処理である。
次に、図11(C)の各ステップで、解像度変換手段102が実行する処理内容を説明する。
ステップS1117:解像度変換手段102は、JPEG圧縮手段104から画像データ要求信号を受信した場合、次のステップS1118に進む。受信するまでは本ステップS1117で待機する。
ステップS1118:解像度変換手段102は、変数Dに変数Sの値を代入する。
ステップS1119:解像度変換手段102は、変数Cに変数Sの値を代入する。
ステップS1119:解像度変換手段102は、変数Cに変数Sの値を代入する。
ステップS1120:解像度変換手段102は、画像記憶手段101に画素データ(C−1,D−1)の要求信号を送信する。ここで、画素データ(C−1,D−1)とは、座標(C−1,D−1)における画素データのことである。このとき、前述したように図10(B)のステップS1006において画像記憶手段101は、解像度変換手段102から送信された画素データ要求信号を受信することになる。
ステップS1121:解像度変換手段102は、当該要求に応じて図10(B)のステップS1007で画像記憶手段101から送信された画素データを受信する。
ステップS1122:解像度変換手段102は、JPEG圧縮手段104に当該受信した画素データを送信する。
ステップS1123:解像度変換手段102は、変数Cの値が水平方向の画素数Xと一致しているかどうか判定する。変数Cの値が水平方向の画素数Xと一致していればステップS1125に進む。一致していなければステップS1124に進む。
ステップS1124:解像度変換手段102は、変数Cに(C+S)を代入して、ステップS1120に戻る。
ステップS1125:解像度変換手段102は、変数Dの値が垂直方向の画素数Yと一致しているかどうか判定する。変数Dの値が垂直方向の画素数Yと一致していればステップS1117に戻る。一致していなければステップS1126に進む。
ステップS1126:解像度変換手段102は、変数Dに(D+S)を代入して、ステップS1119に戻る。
つまり、ステップS1119からステップS1126では、解像度変換手段102は、水平方向の画素、ならびに、垂直方向の画素について、変数Sの値ごとの2重ループによる繰り返し処理を行っている。その処理内容は、画像記憶手段101に対して画素データの要求信号を送信し(S1120)、画像記憶手段101から画素データを受信し(S1121)、JPEG圧縮手段104に画素データを送信する(S1122)処理である。
次に、図11(D)の各ステップで、解像度変換手段102が実行する処理内容を説明する。
ステップS1127:解像度変換手段102は、JPEG−LS圧縮手段105から画像データ要求信号を受信した場合、次のステップS1128に進む。受信するまでは本ステップS1127で待機する。
ステップS1128:解像度変換手段102は、変数Fに変数Sの値を代入する。
ステップS1129:解像度変換手段102は、変数Eに変数Sの値を代入する。
ステップS1130:解像度変換手段102は、画像記憶手段101に画素データ(E−1,F−1)の要求信号を送信する。ここで、画素データ(E−1,F−1)とは、座標(E−1,F−1)における画素データのことである。このとき、前述したように図10(B)のステップS1006において画像記憶手段101は、解像度変換手段102から送信された画素データ要求信号を受信することになる。
ステップS1128:解像度変換手段102は、変数Fに変数Sの値を代入する。
ステップS1129:解像度変換手段102は、変数Eに変数Sの値を代入する。
ステップS1130:解像度変換手段102は、画像記憶手段101に画素データ(E−1,F−1)の要求信号を送信する。ここで、画素データ(E−1,F−1)とは、座標(E−1,F−1)における画素データのことである。このとき、前述したように図10(B)のステップS1006において画像記憶手段101は、解像度変換手段102から送信された画素データ要求信号を受信することになる。
ステップS1131:解像度変換手段102は、当該要求に応じて前述の図10(B)のステップS1007で画像記憶手段101から送信された画素データを受信する。
ステップS1132:解像度変換手段102は、JPEG−LS圧縮手段105に当該受信した画素データを送信する。
ステップS1133:解像度変換手段102は、変数Eの値が水平方向の画素数Xと一致しているかどうか判定する。変数Eの値が水平方向の画素数Xと一致していればステップS1135に進む。一致していなければステップS1134に進む。
ステップS1134:解像度変換手段102は、変数Eに(E+S)を代入して、ステップS1130に戻る。
ステップS1135:解像度変換手段102は、変数Fの値が垂直方向の画素数Yと一致しているかどうか判定する。変数Fの値が垂直方向の画素数Yと一致していればステップS1127に戻る。一致していなければステップS1136に進む。
ステップS1136:解像度変換手段102は、変数Fに(F+S)を代入して、ステップS1129に戻る。
つまり、ステップS1129からステップS1136では、解像度変換手段102は、水平方向の画素、ならびに、垂直方向の画素について、変数Sの値ごとの2重ループによる繰り返し処理を行っている。その処理内容は、画像記憶手段101に対して画素データの要求信号を送信し(S1130)、画像記憶手段101から画素データを受信し(S1131)、JPEG−LS圧縮手段105に画素データを送信する(S1132)処理である。
図12は、補完情報生成手段103、JPEG圧縮手段104、および、JPEG−LS圧縮手段105の動作フローを示すフローチャートである。それぞれの処理フローを図12(A)、図12(B)、および、図12(C)に示す。
まず図12(A)の各ステップで、補完情報生成手段103が実行する処理内容を説明する。
ステップS1201:補完情報生成手段103は、図9のステップS912において制御手段107から送信された動作開始信号を受信した場合、次のステップS1202に進む。受信するまでは本ステップS1201で待機する。
ステップS1202:補完情報生成手段103は、解像度変換手段102に対して画像データ要求信号を送信する。このとき、前述したように図11(B)のステップS1107において、解像度変換手段102は、補完情報生成手段103から送信された画像データ要求信号を受信することになる。
ステップS1203:補完情報生成手段103は、当該要求に応じて図11(B)のステップS1112で解像度変換手段102から送信された画素データを受信する。そして、受信したすべての画素データは、画像データを構成することになる。
ステップS1204:補完情報生成手段103は、受信した画像データから補完情報を生成する。また、補完情報のサイズ情報も同時に生成する。
ステップS1205:補完情報生成手段103は、符号記憶手段106に対して補完情報を送信する。
ステップS1206:補完情報生成手段103は、制御手段107に対して補完情報のサイズ情報を送信する。このとき、前述したように図9のステップS913において制御手段107は、補完情報生成手段103から送信された補完情報のサイズ情報を受信することになる。
次に図12(B)の各ステップで、JPEG圧縮手段104が実行する処理内容を説明する。
ステップS1207:JPEG圧縮手段104は、図9のステップS915において制御手段107から送信された動作開始信号を受信した場合、次のステップS1208に進む。受信するまでは本ステップS1207で待機する。
ステップS1208:JPEG圧縮手段104は、解像度変換手段102に画像データ要求信号を送信する。このとき、前述したように図11(C)のステップS1117において解像度変換手段102は、JPEG圧縮手段104から送信された画像データ要求信号を受信することになる。
ステップS1209:JPEG圧縮手段104は、図11(C)のステップS1122で該要求に応じて解像度変換手段102から送信された画素データを受信する。この受信したすべての画素データにより画像データを構成する。
ステップS1210:JPEG圧縮手段104は、受信した画像データをJPEG圧縮することによりJPEG符号を生成する。また、JPEG符号のサイズ情報も同時に生成する。JPEG符号を生成する詳細な手続きについては説明を省略する。
ステップS1211:JPEG圧縮手段104は、符号記憶手段106に対して当該生成したJPEG符号を送信する。
ステップS1212:JPEG圧縮手段104は、制御手段107に対してJPEG符号のサイズ情報を送信する。このとき、前述したように図9のステップS916において制御手段107は、JPEG圧縮手段104から送信されたJPEG符号のサイズ情報を受信することになる。
次に図12(C)の各ステップで、JPEG−LS圧縮手段105が実行する処理内容を説明する。
ステップS1213:JPEG−LS圧縮手段105は、図9のステップS919において制御手段107から送信された動作開始信号を受信した場合、次のステップS1214に進む。受信するまでは本ステップS1213で待機する。
ステップS1214:JPEG−LS圧縮手段105は、解像度変換手段102に画像データ要求信号を送信する。このとき前述したように図11(D)のステップS1127において解像度変換手段102は、JPEG−LS圧縮手段105から送信された画像データ要求信号を受信することになる。
ステップS1215:JPEG−LS圧縮手段105は、当該要求に応じて図11(D)のステップS1132において解像度変換手段102から送信された画素データを受信する。そして、受信したすべての画素データにより画像データを構成する。
ステップS1216:JPEG−LS圧縮手段105は、受信した画像データをJPEG−LS圧縮することによりJPEG−LS符号を生成する。また、JPEG−LS符号のサイズ情報も同時に生成する。JPEG−LS符号を生成する詳細な手続きについては説明を省略する。
ステップS1217:JPEG−LS圧縮手段105は、符号記憶手段106に対して当該生成したJPEG−LS符号を送信する。
ステップS1218:JPEG−LS圧縮手段105は、制御手段107に対してJPEG−LS符号のサイズ情報を送信する。このとき、前述したように図9のステップS920において制御手段107は、JPEG−LS圧縮手段105から送信されたJPEG−LS符号のサイズ情報を受信することになる。
図13は、符号記憶手段106の動作フローを示すフローチャートである。符号記憶手段106は、内部で6つの処理が並列に動作しており、それぞれの処理フローを図13(A)、図13(B)、図13(C)、図13(D)、図13(E)、および、図13(F)に示す。
まず、図13(A)の各ステップで、符号記憶手段106が実行する処理内容を説明する。
ステップS1301:符号記憶手段106は、図12(A)のステップS1205において補完情報生成手段103から送信された補完情報を受信した場合、次のステップS1302に進む。受信するまでは本ステップS1301で待機する。
ステップS1302:符号記憶手段106は、当該受信した補完情報を内部の補完情報バッファに記憶する。このとき、すでに他の補完情報が記憶されていても、それを上書きすることなく、記憶した順番に読み出せるように追加で記憶する。
次に、図13(B)の各ステップで、符号記憶手段106が実行する処理内容を説明する。
ステップS1303:符号記憶手段106は、図12(B)のステップS1211においてJPEG圧縮手段104から送信されたJPEG符号を受信した場合、次のステップS1304に進む。受信するまでは本ステップS1303で待機する。
ステップS1304:符号記憶手段106は、当該受信したJPEG符号を内部のJPEG符号バッファに記憶する。
次に、図13(C)の各ステップで、符号記憶手段106が実行する処理内容を説明する。
ステップS1305:符号記憶手段106は、図12(C)のステップS1217においてJPEG−LS圧縮手段105から送信されたJPEG−LS符号を受信した場合、次のステップS1306に進む。受信するまでは本ステップS1305で待機する。
ステップS1306:符号記憶手段106は、当該受信したJPEG−LS符号を内部のJPEG−LS符号バッファに記憶する。
次に、図13(D)の各ステップで、符号記憶手段106が実行する処理内容を説明する。
ステップS1307:符号記憶手段106は、図9のステップS923またはステップS925において制御手段107から送信されたK個(MまたはN個)の補完情報の出力指示を受信した場合、次のステップS1308に進む。受信するまでは本ステップS1307で待機する。
ステップS1308:符号記憶手段106は、内部の補完情報バッファに記憶している補完情報を記憶した順番に先頭からK個だけ読み出す。
ステップS1309:符号記憶手段106は、読み出した補完情報を外部に対して送信する。
次に図13(E)の各ステップで、符号記憶手段106が実行する処理内容を説明する。
ステップS1310:符号記憶手段106は、図9のステップS924において制御手段107から送信されたJPEG符号の出力の指示を受信した場合、次のステップS1311に進む。受信するまでは本ステップS1310で待機する。
ステップS1311:符号記憶手段106は、内部のJPEG符号バッファに記憶しているJPEG符号を読み出す。
ステップS1312:符号記憶手段106は、読み出したJPEG符号を外部に対して送信する。
ステップS1313:符号記憶手段106は、内部の補完情報バッファ、JPEG符号バッファ、および、JPEG−LS符号バッファの内容をすべてクリアする。
次に図13(F)の各ステップで、符号記憶手段106が実行する処理内容を説明する。
ステップS1314:符号記憶手段106は、図9のステップS926において制御手段107から送信されたJPEG−LS符号の出力の指示を受信した場合、次のステップS1315に進む。受信するまでは本ステップS1314で待機する。
ステップS1315:符号記憶手段106は、内部のJPEG−LS符号バッファに記憶しているJPEG−LS符号を読み出す。
ステップS1316:符号記憶手段106は、読み出したJPEG−LS符号を外部に対して送信する。
ステップS1317:符号記憶手段106は、内部の補完情報バッファ、JPEG符号バッファ、および、JPEG−LS符号バッファの内容をすべてクリアする。
図2(A)に示した2400dpiの画像データの例を用いて、上述した本画像圧縮装置で画像データを圧縮する一連の処理の概略を説明する。
まず、制御手段107は、画像記憶手段101に対して画像データ受信信号を送信する。すると、画像記憶手段101は、外部から図2(A)に示す画像データを受信して内部に記憶し、制御手段107に対して画像データの解像度情報である2400を送信する。
制御手段107は、解像度が1200になるまで解像度変換手段102に解像度変換を行わせながら、各解像度の画像データについて補完情報生成手段103に補完情報を作成させる。つまり、図2(A)の画像の場合は最初の解像度が2400なので、制御手段107は、縮小率0(2400dpi)の画像データで補完情報を生成し、さらに、縮小率1(1200dpi)の画像データで補完情報を生成する。補完情報生成手段103は、縮小率0の場合はすべての画素を、縮小率1の場合は水平方向と垂直方向いずれも2画素おきの画素を、解像度変換手段102から受信して、それぞれの解像度における補完情報を生成して、符号記憶手段106に記憶させる。補完情報生成手段103は、各解像度の補完情報のサイズ情報を制御手段107に送信する。
制御手段107は、縮小率1(1200dpi)の処理において、JPEG圧縮手段104にJPEG符号の生成も行わせる。JPEG圧縮手段104は、前述の補完情報生成手段103の縮小率1の場合と同様に、2画素おきの画素を解像度変換手段102から受信して、JPEG圧縮することでJPEG符号を生成して符号記憶手段106に記憶させ、JPEG符号のサイズ情報を制御手段107に送信する。
制御手段107は、縮小率1(1200dpi)の処理において、補完情報のサイズ情報とJPEG符号のサイズ情報を比較して、補完情報のサイズ情報がJPEG符号のサイズ情報以上である場合にはJPEG−LS圧縮処理は行わない。この場合は、縮小率0(2400dpi)の補完情報と、縮小率1(1200dpi)のJPEG符号とを符号記憶手段106に出力させる。
また、補完情報のサイズ情報がJPEG符号のサイズ情報よりも小さい場合は、さらに縮小率2(600dpi)の処理を行い、JPEG−LS圧縮手段105にJPEG−LS符号の生成を行わせる。JPEG−LS圧縮手段105は、縮小率2の場合なので、4画素おきの画素を解像度変換手段102から受信して、JPEG−LS符号を生成して符号記憶手段106に記憶させ、JPEG−LS符号のサイズ情報を制御手段107に送信する。
この結果を用いて、制御手段107は、縮小率1(1200dpi)の補完情報のサイズ情報とJPEG−LS符号のサイズ情報との和と、JPEG符号のサイズ情報とを比較する。縮小率1(1200dpi)の補完情報のサイズ情報とJPEG−LS符号のサイズ情報との和が、JPEG符号のサイズ情報以上である場合は、縮小率0(2400dpi)の補完情報と、縮小率1(1200dpi)のJPEG符号とを符号記憶手段106に出力させる。一方、JPEG符号のサイズ情報の方が大きい場合は、縮小率0(2400dpi)の補完情報と、縮小率1(1200dpi)の補完情報と、縮小率2(600dpi)のJPEG−LS符号とを符号記憶手段106に出力させる。
以上に示したように、本画像圧縮装置1の構成で、高解像度の画像データを予め定めた解像度(1200dpiや600dpiの解像度)まで変換してから、JPEG圧縮またはJPEG−LS圧縮することができる。そのため、元の解像度の違いによって画像圧縮による画像劣化の度合いがばらつくことがない。
また、高解像度の画像データをそのままJPEG圧縮およびJPEG−LS圧縮といった複雑な画像圧縮を行わないため、画像圧縮手段の回路規模が小さく抑えられる。
なお、高解像度の画像データから複数の低解像度画像を生成する構成を単純に考えると、解像度変換手段と、解像度変換後の画像データを記憶する画像記憶手段とを組にして、複数の組を直列に繋ぐことで、低解像度画像を順番に生成していくことが考えられる。しかしながら、このような構成にすると回路規模が大きくなってしまう。例えば各手段を直列に接続する構成で一律の画像解像度での画像圧縮を実現するには、2400dpiの高解像度画像データを処理する場合、解像度変換手段が2つ、各解像度に変換する前後の画像を記憶するための画像記憶手段が3つ、補完情報生成手段が2つ必要となる。また、4800dpiの画像データを処理する場合、解像度変換手段が3つ、画像記憶手段が4つ、補完情報生成手段が3つ必要で、さらに回路規模が大きくなってしまう。
一方、本画像圧縮装置の構成では、図1に示したように、各処理手段の個数を増やすことなく、様々な高解像度の画像データに対応可能である。したがって、本画像圧縮装置の構成は、回路規模と対応可能な画像解像度の柔軟性において優れている。
[実施例2]
図14は、本発明の実施例2の画像圧縮装置のブロック図である。図14に示した画像圧縮装置の構成は、図1に示した画像圧縮装置の補完情報生成手段を2つに増やしたものである。この構成にすることで、回路規模が少し増えることになるが、並列動作させることにより、同時に複数の解像度の補完情報を生成することが可能になるため、補完情報を生成する速度を高速にすることができる。例えば、2400dpiの画像に対する補完情報と、1200dpiの画像に対する補完情報とを同時に生成することができるようになる。
図14は、本発明の実施例2の画像圧縮装置のブロック図である。図14に示した画像圧縮装置の構成は、図1に示した画像圧縮装置の補完情報生成手段を2つに増やしたものである。この構成にすることで、回路規模が少し増えることになるが、並列動作させることにより、同時に複数の解像度の補完情報を生成することが可能になるため、補完情報を生成する速度を高速にすることができる。例えば、2400dpiの画像に対する補完情報と、1200dpiの画像に対する補完情報とを同時に生成することができるようになる。
このように、本発明の画像圧縮装置は様々な解像度への対応だけではなく、システムに要求される回路規模や処理速度の性能への対応が柔軟な構成変更により可能である。
[実施例3]
以下、本発明の実施例3について図面を用いて説明する。実施例3は、補完情報生成手段103による補完情報の生成方法以外は、実施例1に示した構成と同じである。
以下、本発明の実施例3について図面を用いて説明する。実施例3は、補完情報生成手段103による補完情報の生成方法以外は、実施例1に示した構成と同じである。
図15は、解像度2400dpiの縦32画素、横32画素からなる画像データの模式図である。各マスは画素を表していて、それぞれの画素は24bitの情報を持つ。各画素の値は白と黒の他に斜線で表してあり、白い画素は値FFFFFFhを持ち、黒い画素は値000000hを持ち、また、斜線の画素は値808080hを持っているものとする。
図16は、図15で示した画像データを入力として補完情報生成手段103が生成する補完情報の模式図である。前述の図7と同様に、補完情報は、パターン番号とパターンに応じた数の画素値(基準画素の画素値と異なる画素値)とからなるが、図16は補完情報のうちのパターン番号だけを記載した図である。補完情報は、パターン0以外のパターンに対してはパターン番号の他に、基準となる右下の画素の値と異なっている画素の値を組に持つ。ここで、実施例1では基準画素と異なる画素値全てを保持するものとしたが、実施例3では、異なっている画素が2つ以上あるパターンについては、異なっている画素の値の平均値を計算し、その平均値を補完情報として持つものとする。このように構成することにより、実施例1のように異なる画素すべての画素値を組に持つ構成よりも、データ量を削減することができるようになる。その代り、非可逆変換となるため、補完情報を使って元の画像データを復元するときには平均値による近似誤差が発生する。本図では、非可逆変換となる2×2画素ブロックの位置を太い枠で表してある。それらの2×2画素ブロックは、異なっている画素の値が2つ以上あるパターンで、かつ、それらの値の平均値が別の値になる画素である。
以上のように、補完情報に非可逆となる情報が含まれる構成でも、本画像圧縮装置の処理を行うことができる。
[実施例4]
以下、本発明の実施例4について図面を用いて説明する。実施例4は、制御手段107の動作フローを示すフローチャート以外は、実施例1に示した構成と同じである。
以下、本発明の実施例4について図面を用いて説明する。実施例4は、制御手段107の動作フローを示すフローチャート以外は、実施例1に示した構成と同じである。
図17は、実施例4における制御手段107の動作フローを示すフローチャートである。ステップS1701〜S1708は、実施例1における図9のステップS901〜S908と同じである。異なる動作ステップの内容を以下に説明する。
ステップS1709:制御手段107は、解像度変換手段102に対して、縮小率Nの指示と、画像データの画素数X、Yとを送信する。このとき、解像度変換手段102は、図11のステップ1101において、制御手段107から送信された縮小率Nの指示と画像データの画素数XとYを受信することになる。
ステップS1710:制御手段107は、JPEG−LS圧縮手段105に動作開始信号を送信する。このとき、JPEG−LS圧縮手段105は、図12(C)のステップS1213において、制御手段107から送信された動作開始信号を受信することになる。
ステップS1711:制御手段107は、図12(C)のステップS1218でJPEG−LS圧縮手段105から送信されたJPEG−LS符号のサイズ情報を受信して、変数Lに代入する。
ステップS1712:制御手段107は、変数Lの値が既定値Thresholdの値より小さいかどうか判定する。変数Lの値が既定値Thresholdの値より小さければ、ステップS1713に進む。このステップは、JPEG−LS符号のサイズを既定の閾値と比較し、JPEG−LS符号のサイズが小さければJPEG−LS圧縮方式の出力を選択してJPEG圧縮処理を行わないための条件分岐である。
一方、変数Lの値が既定値Thresholdの値より小さくなければ、ステップS1714に進む。これは、JPEG−LS符号のサイズが既定値Thresholdの値以上であれば、JPEG圧縮処理を実行して出力させるための条件分岐である。なお、この場合、縮小率Mから縮小率(N−1)の補完情報は生成しない。
ステップS1713:制御手段107は、符号記憶手段106にJPEG−LS符号の出力の指示を送信して、ステップS1719に進む。このとき、符号記憶手段106は、図13(F)のステップS1314において、制御手段107からJPEG−LS符号の出力の指示を受信することになる。
ステップS1714:制御手段107は、解像度変換手段102に縮小率Mの指示と、画像データの画素数X、Yとを送信する。このとき、解像度変換手段102は、図11のステップS1101において、制御手段107から送信された縮小率の指示と画像データの画素数X、Yとを受信することになる。
ステップS1715:制御手段107は、JPEG圧縮手段104に動作開始信号を送信する。このとき、JPEG圧縮手段104は、図12(B)のステップS1207において、制御手段107から送信された動作開始信号を受信することになる。
ステップS1716:制御手段107は、図12(B)のステップS1212においてJPEG圧縮手段104から送信されたJPEG符号のサイズ情報を受信して、変数Jに代入する。これは、JPEG圧縮手段104の画像圧縮処理が終了するのを検知するためのステップである。
ステップS1717:制御手段107は、符号記憶手段106にJPEG符号の出力の指示を送信する。このとき、符号記憶手段106は、図13(E)のステップS1310において、制御手段107から送信されたJPEG符号の出力の指示を受信することになる。
ステップS1719:制御手段107は、変数Tに0を代入する。変数Tは、縮小率を表す変数である。
ステップS1720:制御手段107は、変数Tの値が変数Nの値と同じかどうか判定する。変数Tの値が変数Nの値と同じであればステップS1724に進み、同じでなければステップS1721へ進む。
ステップS1721:制御手段107は、解像度変換手段102に縮小率Tの指示と、画像データの画素数X、Yとを送信する。このとき、解像度変換手段102は、図11(A)のステップS1101において、制御手段107から送信された縮小率Tの指示と画像データの画素数X、Yとを受信することになる。
ステップS1722:制御手段107は、補完情報生成手段103に動作開始信号を送信する。このとき、補完情報生成手段103は、図12(A)のステップS1201において、制御手段107から送信された動作開始信号を受信することになる。
ステップS1723:制御手段107は、変数Tに(T+1)を代入して、ステップS1720に進む。
ステップS1724:制御手段107は、符号記憶手段106にN個の補完情報の出力の指示を送信して、終了する。このとき、符号記憶手段106は、図13(D)のステップS1307において、制御手段107から送信されたN個の補完情報の出力の指示を受信することになる。
以上、図17に示したように、実施例4では、JPEG−LS符号の大きさが既定の閾値より小さいかどうかの判断を先に行い、その結果を利用してJPEG符号と補完情報の生成の有無を制御することができる。
[実施例5]
また、実施例1では、図6のように配置パターンを定義したので、補完情報は、パターン番号と、基準画素と異なる画素値を有する画素全てについての画素値とにより構成されるものとした。このとき、配置パターンは8個であるので、各2×2画素ブロックに対してパターン番号は3bitで表現することができる。また、各画素値が24bitカラーで表現される場合、基準画素とは異なる画素値(補完色)を有する画素が0〜3個(パターン番号0の場合が0個、パターン番号7の場合が3個)なので、補完情報として保持される画素値のサイズは0〜72bitとなる。また、基準画素は常に1個なので、基準画素のサイズは24bitで表現される。
また、実施例1では、図6のように配置パターンを定義したので、補完情報は、パターン番号と、基準画素と異なる画素値を有する画素全てについての画素値とにより構成されるものとした。このとき、配置パターンは8個であるので、各2×2画素ブロックに対してパターン番号は3bitで表現することができる。また、各画素値が24bitカラーで表現される場合、基準画素とは異なる画素値(補完色)を有する画素が0〜3個(パターン番号0の場合が0個、パターン番号7の場合が3個)なので、補完情報として保持される画素値のサイズは0〜72bitとなる。また、基準画素は常に1個なので、基準画素のサイズは24bitで表現される。
本実施例5では、補完情報を生成する際に、実施例1の図6の配置パターンを用いる方法と異なる方法について説明する。図18は、本実施例5で用いる補完情報を生成する際に用いる配置パターンを示す図である。実施例5では、基準画素(右下画素)と異なる位置の画素同士も比較することにより、同色(同じ画素値)と判断される画素ごとに画素値を保持するようにする。2×2画素ブロックの全てが同色である場合のパターン番号を0とし、2×2画素ブロック内が2色である場合のパターン番号を1〜7、3色である場合のパターン番号を8〜D、全ての画素が異なる4色である場合のパターン番号をEで表わす。すなわち、2×2画素ブロックにおける色の配置パターンは15種類となるので、各2×2画素ブロックに対してパターン番号は4bitで表現することができる。また、各2×2画素ブロックに対して基準画素の画素値は24bitで表現できる。更に、各2×2画素ブロックに対して補完色(基準画素の画素値と異なる画素値)は0〜3色存在するので、0〜72bitで表現できる。すなわち、図18の配置パターンは、2×2画素ブロックに含まれる色数(画素値の種類の数)と各色の配置とを示していることになる。
このとき、補完情報生成手段103は、入力された画像データを2×2画素ブロックに分割し、各2×2画素ブロックが図18のいずれのパターンに一致するか判定することによって、パターン番号と、各配置パターンに対応する色数に応じた補完色(基準画素の色とは異なる画素値)とを補完情報として出力するようにすればよい。
[実施例6]
上述した実施例1〜5では、補完情報を生成する際の、2×2画素ブロックの基準画素として、右下画素を基準にしたが、これに限るものではなく、その他の位置の画素(左上画素など)を基準としてパターンを割り当ててもよい。
上述した実施例1〜5では、補完情報を生成する際の、2×2画素ブロックの基準画素として、右下画素を基準にしたが、これに限るものではなく、その他の位置の画素(左上画素など)を基準としてパターンを割り当ててもよい。
[実施例7]
実施例1では、符号記憶手段106から最終的に出力される圧縮データは、補完情報とJPEG符号とJPEG−LS符号との各データサイズに基づいて決めるようにしていた。
実施例1では、符号記憶手段106から最終的に出力される圧縮データは、補完情報とJPEG符号とJPEG−LS符号との各データサイズに基づいて決めるようにしていた。
本実施例7では、JPEG符号とJPEG−LS符号のいずれを出力するかが、ユーザにより予め指定されている場合について説明する。この場合、図1の画像圧縮装置において、JPEG圧縮手段104とJPEG−LS圧縮手段105のうちの指定された方だけが、圧縮手段として機能するようにすればよい。例えば、圧縮手段としてJPEG圧縮が指定されている場合、縮小率T(T=0,1,…,M−1)の各解像度の画像を解像度変換手段102に生成させて、補完情報生成手段103で各解像度の画像に対する補完情報を生成させる。そして、当該生成させた補完情報と、縮小率Mの解像度の画像を圧縮手段でJPEG圧縮させた画像データとを、符号記憶手段から出力させるようにする。
[その他の実施例]
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、以下の処理を実行することによっても実現される。その処理は、上述した実施例の機能を実現させるソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
Claims (13)
- 第1の画像データを記憶する画像記憶手段と、
前記第1の画像データの解像度に対して1/(2^T)倍の解像度を有する画像を要求された場合(ここで、T=0,1,2,…,Nの整数とする)、前記画像記憶手段から前記第1の画像データの解像度に対して1/(2^T)倍の解像度になるように間引いた場合の画素データを取得して、当該取得した画素データを第2の画像データとして出力する解像度変換手段と、
前記解像度変換手段から出力される前記第2の画像データを2×2画素ごとのブロックに分割し、当該分割した各ブロックにおける画素値の配置パターンに基づいて、当該第2の画像データの解像度の1/2倍の解像度に間引いた画像と組み合わせることで前記第2の画像を復元することができる補完情報を生成する補完情報生成手段と、
前記第1の画像データの解像度に対して1/(2^M)倍の解像度(ここで、M<Nとする)になるように間引いた場合の画素データで構成される前記第2の画像データを、第1の圧縮方式で圧縮することにより、第1の圧縮データを生成する第1圧縮手段と、
前記第1の画像データの解像度に対して1/(2^N)倍の解像度になるように間引いた場合の画素データで構成される前記第2の画像データを、第2の圧縮方式で圧縮することにより、第2の圧縮データを生成する第2圧縮手段と、
前記補完情報生成手段で生成された前記補完情報と、前記第1圧縮手段で生成された前記第1の圧縮データと、前記第2圧縮手段で生成された前記第2の圧縮データとを記憶する符号記憶手段と、
前記解像度変換手段から出力される前記1/(2^T)倍の解像度になるように間引いた画素データで構成される前記第2の画像データ(T=0,1,2,…,N−1)それぞれに対して前記補完情報生成手段で補完情報を生成させ、前記符号記憶手段に記憶された各解像度における補完情報のデータサイズと前記第1の圧縮データのデータサイズと前記第2の圧縮データのデータサイズとの少なくともいずれかに基づいて、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させるか、前記1/(2^T)倍(T=0,1,2,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第2の圧縮データとの組み合わせを前記符号記憶手段から出力させるかを判定し、当該出力させると判定した方の組み合わせを前記符号記憶手段から出力させるように制御する制御手段と、
を有することを特徴とする画像圧縮装置。 - 前記制御手段は、前記1/(2^T)倍(T=M,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報のデータサイズと前記第2の圧縮データのデータサイズとの合計が、前記第1の圧縮データのデータサイズ以上である場合は、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させ、前記合計が前記第1の圧縮データのデータサイズより小さい場合は、前記1/(2^T)倍(T=0,1,2,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第2の圧縮データとの組み合わせを前記符号記憶手段から出力させるように制御することを特徴とする請求項1に記載の画像圧縮装置。
- 前記制御手段は、前記1/(2^M)倍の解像度になるように間引いた画素データで構成される前記第2の画像データに対して前記補完情報生成手段で生成された補完情報のデータサイズが、前記第1の圧縮手段で生成された前記第1の圧縮データのデータサイズ以上であると判定した場合は、前記第2圧縮手段で前記第2の圧縮データを生成させることなく、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させることを特徴とする請求項1または2に記載の画像圧縮装置。
- 前記補完情報生成手段を複数有し、前記複数の補完情報生成手段それぞれに対して異なる解像度の画像データに対する補完情報の生成を行わせることを特徴とする請求項1乃至3のいずれか1項に記載の画像圧縮装置。
- 前記補完情報生成手段は、前記2×2画素のブロックにおける画素値の配置パターンと、前記2×2画素のブロックにおける基準画素の画素値と異なる画素値とを、前記補完情報として生成することを特徴とする請求項1乃至4のいずれか1項に記載の画像圧縮装置。
- 前記配置パターンは、前記基準画素と異なる画素値を有する画素の配置を示すパターンであり、前記基準画素の画素値と異なる画素値は全て個別に出力されることを特徴とする請求項5に記載の画像圧縮装置。
- 前記配置パターンは、前記2×2画素のブロックにおける色数と各色の配置とを示すパターンであり、前記基準画素の画素値と異なる画素値は色数分出力されることを特徴とする請求項5に記載の画像圧縮装置。
- 前記制御手段は、前記第2の圧縮データのデータサイズが所定の閾値より小さいか否か判定し、小さいと判定した場合は、前記1/(2^T)倍(T=0,1,2,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第2の圧縮データとの組み合わせを前記符号記憶手段から出力させ、小さくないと判定した場合は、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させることを特徴とする請求項1に記載の画像圧縮装置。
- 前記第1の圧縮方式は非可逆圧縮であり、前記第2の圧縮方式は可逆圧縮であることを特徴とする請求項1乃至8のいずれか1項に記載の画像圧縮装置。
- 前記MおよびNは、前記第1の画像データの解像度に基づいて設定することを特徴とする請求項1乃至9のいずれか1項に記載の画像圧縮装置。
- 第1の画像データを記憶する画像記憶手段と、
前記第1の画像データの解像度に対して1/(2^T)倍の解像度を有する画像を要求された場合(ここで、T=0,1,2,…,Mの整数とする)、前記画像記憶手段から前記第1の画像データの解像度に対して1/(2^T)倍の解像度になるように間引いた場合の画素データを取得して、当該取得した画素データを第2の画像データとして出力する解像度変換手段と、
前記解像度変換手段から出力される前記第2の画像データを2×2画素ごとのブロックに分割し、当該分割した各ブロックにおける画素値の配置パターンに基づいて、当該第2の画像データの解像度の1/2倍の解像度に間引いた画像と組み合わせることで前記第2の画像を復元することができる補完情報を生成する補完情報生成手段と、
前記第1の画像データの解像度に対して1/(2^M)倍の解像度(ここで、M<Nとする)になるように間引いた場合の画素データで構成される前記第2の画像データを、予め指定された圧縮方式で圧縮することにより、圧縮データを生成する圧縮手段と、
前記補完情報生成手段で生成された前記補完情報と、前記圧縮手段で生成された前記圧縮データとを記憶する符号記憶手段と、
前記解像度変換手段から出力される前記1/(2^T)倍の解像度になるように間引いた画素データで構成される前記第2の画像データ(T=0,1,2,…,M−1)それぞれに対して前記補完情報生成手段で補完情報を生成させ、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記圧縮データとの組み合わせを前記符号記憶手段から出力させるように制御する制御手段と、
を有することを特徴とする画像圧縮装置。 - 第1の画像データを記憶する画像記憶手段と、解像度変換手段と、補完情報生成手段と、第1圧縮手段と、第2圧縮手段と、前記補完情報生成手段で生成される補完情報および前記第1圧縮手段で生成される第1の圧縮データおよび前記第2圧縮手段で生成される第2の圧縮データを記憶する符号記憶手段と、制御手段と、を有する画像圧縮装置が実行する画像圧縮方法であって、
前記解像度変換手段が、前記第1の画像データの解像度に対して1/(2^T)倍の解像度を有する画像を要求された場合(ここで、T=0,1,2,…,Nの整数とする)、前記画像記憶手段から前記第1の画像データの解像度に対して1/(2^T)倍の解像度になるように間引いた場合の画素データを取得して、当該取得した画素データを第2の画像データとして出力する解像度変換工程と、
前記補完情報生成手段が、前記解像度変換工程で出力される前記第2の画像データを2×2画素ごとのブロックに分割し、当該分割した各ブロックにおける画素値の配置パターンに基づいて、当該第2の画像データの解像度の1/2倍の解像度に間引いた画像と組み合わせることで前記第2の画像を復元することができる前記補完情報を生成し、前記符号記憶手段に記憶させる補完情報生成工程と、
前記第1圧縮手段が、前記第1の画像データの解像度に対して1/(2^M)倍の解像度(ここで、M<Nとする)になるように間引いた場合の画素データで構成される前記第2の画像データを、第1の圧縮方式で圧縮することにより、前記第1の圧縮データを生成し、前記符号記憶手段に記憶させる第1圧縮工程と、
前記第2圧縮手段が、前記第1の画像データの解像度に対して1/(2^N)倍の解像度になるように間引いた場合の画素データで構成される前記第2の画像データを、第2の圧縮方式で圧縮することにより、前記第2の圧縮データを生成し、前記符号記憶手段に記憶させる第2圧縮工程と、
前記補完情報生成手段で生成された前記補完情報と、前記第1圧縮手段で生成された前記第1の圧縮データと、前記第2圧縮手段で生成された前記第2の圧縮データとを記憶する符号記憶手段と、
前記制御手段が、前記解像度変換工程で出力される前記1/(2^T)倍の解像度になるように間引いた画素データで構成される前記第2の画像データ(T=0,1,2,…,N−1)それぞれに対して前記補完情報生成手段で補完情報を生成させ、前記符号記憶手段に記憶された各解像度における補完情報のデータサイズと前記第1の圧縮データのデータサイズと前記第2の圧縮データのデータサイズとの少なくともいずれかに基づいて、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させるか、前記1/(2^T)倍(T=0,1,2,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第2の圧縮データとの組み合わせを前記符号記憶手段から出力させるかを判定し、当該出力させると判定した方の組み合わせを前記符号記憶手段から出力させるように制御する制御工程と、
を有することを特徴とする画像圧縮方法。 - コンピュータを、
画像記憶手段に記憶された第1の画像データの解像度に対して1/(2^T)倍の解像度を有する画像を要求された場合(ここで、T=0,1,2,…,Nの整数とする)、前記画像記憶手段から前記第1の画像データの解像度に対して1/(2^T)倍の解像度になるように間引いた場合の画素データを取得して、当該取得した画素データを第2の画像データとして出力する解像度変換手段、
前記解像度変換手段から出力される前記第2の画像データを2×2画素ごとのブロックに分割し、当該分割した各ブロックにおける画素値の配置パターンに基づいて、当該第2の画像データの解像度の1/2倍の解像度に間引いた画像と組み合わせることで前記第2の画像を復元することができる補完情報を生成し、当該生成した補完情報を符号記憶手段に記憶させる補完情報生成手段、
前記第1の画像データの解像度に対して1/(2^M)倍の解像度(ここで、M<Nとする)になるように間引いた場合の画素データで構成される前記第2の画像データを、第1の圧縮方式で圧縮することにより、第1の圧縮データを生成して前記符号記憶手段に記憶させる第1圧縮手段、
前記第1の画像データの解像度に対して1/(2^N)倍の解像度になるように間引いた場合の画素データで構成される前記第2の画像データを、第2の圧縮方式で圧縮することにより、第2の圧縮データを生成して前記符号記憶手段に記憶させる第2圧縮手段、
前記解像度変換手段から出力される前記1/(2^T)倍の解像度になるように間引いた画素データで構成される前記第2の画像データ(T=0,1,2,…,N−1)それぞれに対して前記補完情報生成手段で補完情報を生成させ、前記符号記憶手段に記憶された各解像度における補完情報のデータサイズと前記第1の圧縮データのデータサイズと前記第2の圧縮データのデータサイズとの少なくともいずれかに基づいて、前記1/(2^T)倍(T=0,1,2,…,M−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第1の圧縮データとの組み合わせを前記符号記憶手段から出力させるか、前記1/(2^T)倍(T=0,1,2,…,N−1)の解像度の第2の画像データそれぞれに対して生成された補完情報と前記第2の圧縮データとの組み合わせを前記符号記憶手段から出力させるかを判定し、当該出力させると判定した方の組み合わせを前記符号記憶手段から出力させるように制御する制御手段、
として機能させるためのコンピュータプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010256308A JP2012109744A (ja) | 2010-11-16 | 2010-11-16 | 画像圧縮装置、画像圧縮方法、コンピュータプログラム |
US13/292,968 US8488893B2 (en) | 2010-11-16 | 2011-11-09 | Image compression apparatus and image compression method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010256308A JP2012109744A (ja) | 2010-11-16 | 2010-11-16 | 画像圧縮装置、画像圧縮方法、コンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012109744A true JP2012109744A (ja) | 2012-06-07 |
Family
ID=46047805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010256308A Pending JP2012109744A (ja) | 2010-11-16 | 2010-11-16 | 画像圧縮装置、画像圧縮方法、コンピュータプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8488893B2 (ja) |
JP (1) | JP2012109744A (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4991816B2 (ja) * | 2009-09-30 | 2012-08-01 | シャープ株式会社 | 画像処理装置 |
US9626747B2 (en) | 2012-04-24 | 2017-04-18 | Apple Inc. | Image enhancement and repair using sample data from other images |
CN103514920A (zh) * | 2012-06-21 | 2014-01-15 | 联发科技股份有限公司 | 缓冲图像至缓冲器装置的方法及装置 |
TW201424380A (zh) * | 2012-12-07 | 2014-06-16 | Ind Tech Res Inst | 影像與訊息編碼系統、編碼方法、解碼系統及解碼方法 |
US9311721B1 (en) | 2013-04-04 | 2016-04-12 | Sandia Corporation | Graphics processing unit-assisted lossless decompression |
US10411733B2 (en) * | 2017-10-26 | 2019-09-10 | Arm Limited | Data compression and decompression |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08149282A (ja) | 1994-11-22 | 1996-06-07 | Canon Inc | 画像処理装置及び方法 |
US6847467B2 (en) * | 2001-11-01 | 2005-01-25 | Hewlett-Packard Development Company, L.P. | Method and apparatus for low memory rendering |
JP4687215B2 (ja) * | 2005-04-18 | 2011-05-25 | ソニー株式会社 | 画像信号処理装置、カメラシステム、および画像信号処理方法 |
KR101025847B1 (ko) * | 2007-01-19 | 2011-03-30 | 삼성전자주식회사 | 이진 영상을 효과적으로 압축하고 복원하는 방법 및 장치 |
US20080205508A1 (en) * | 2007-02-22 | 2008-08-28 | Streaming Networks (Pvt.) Ltd. | Method and apparatus for low complexity video encoding and decoding |
EA201000382A1 (ru) * | 2007-09-28 | 2011-08-30 | Всеволод Юрьевич Мокрушин | Способ кодирования цифровых сигналов (варианты), способ декодирования цифровых сигналов (варианты), устройство для их реализации (варианты) и система для передачи изображений по каналам связи с ограниченной пропускной способностью (варианты) |
-
2010
- 2010-11-16 JP JP2010256308A patent/JP2012109744A/ja active Pending
-
2011
- 2011-11-09 US US13/292,968 patent/US8488893B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8488893B2 (en) | 2013-07-16 |
US20120121176A1 (en) | 2012-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2012109744A (ja) | 画像圧縮装置、画像圧縮方法、コンピュータプログラム | |
JP4612782B2 (ja) | 画像処理装置、及びその方法、並びにプログラム、記憶媒体 | |
JP2006014341A (ja) | Mcuバッファを用いて画像データを格納するための方法及び装置 | |
JP2008278464A (ja) | 多次元データの符号化装置及び復号装置並びにその制御方法 | |
JP5158096B2 (ja) | 符号化用データ生成装置、符号化用データ生成方法、復号装置および復号方法 | |
JP6271888B2 (ja) | 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム | |
JP2008193263A (ja) | 画像処理方法、画像処理装置、画像処理プログラム、および、記録媒体 | |
JP2009200939A (ja) | 画像処理装置と画像処理方法および画像処理システム | |
CN113473139A (zh) | 一种图像处理方法和图像处理装置 | |
JP2004206447A (ja) | 二次元コード化装置及び二次元コード再生装置 | |
JP2005322233A (ja) | 大型のオーバーレイされたカメラ画像を圧縮符号化するためのメモリ効率の良い方法及び装置 | |
JP7090285B2 (ja) | 復元性の高い画像の圧縮と解凍 | |
JP2007067865A (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
JP2006340300A (ja) | 信号処理方法及び信号処理装置、並びに信号処理プログラム及び情報記録媒体 | |
JP4173498B2 (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP2007129455A (ja) | 画像符号化装置、画像符号化方法、画像符号化プログラムおよび画像符号化プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP4274187B2 (ja) | 表示データ伸張方法、表示データ圧縮伸張方法、表示データ伸張装置および表示データ圧縮伸張装置 | |
JP2011023926A (ja) | 画像圧縮装置、撮像装置、プログラムおよび画像伸張装置 | |
JP2012095227A (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP5654809B2 (ja) | 画像処理装置、画像処理方法 | |
JP4741317B2 (ja) | データ圧縮装置およびデータ圧縮プログラム | |
JP5523177B2 (ja) | 画像符号化装置及びその制御方法 | |
JP2002135596A (ja) | 画像処理装置、画像処理方法および画像データ転送方法 | |
AU2021427874A1 (en) | Real-time data processing device | |
KR20170046279A (ko) | 디코딩 장치, 전자 장치 및 그 제어 방법 |