(57)【要約】【課題】ＪＰＥＧ符号化において生成される符号量を予め指定して制御する場合に、少ない符号量でも画像の劣化を抑える。【解決手段】ブロック単位に生成される符号化データについて色差信号および輝度信号のそれぞれに対して許容符号量を設定し、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量より少ない場合に、前記生成された符号化データの符号量と前記許容符号量との差を次に符号化される輝度信号の許容符号量に加算して輝度信号の新たな許容符号量とする（３７）。【選択図】  図３
2006148235.tif 000002
【特許請求の範囲】
【請求項１】
ＪＰＥＧによる画像圧縮符号化において生成される符号量の制御を行うＪＰＥＧ画像符号量制御装置であって、ブロック単位に生成される符号化データについて色差信号および輝度信号のそれぞれに対して許容符号量を設定する手段と、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量より少ない場合に、前記生成された符号化データの符号量と前記許容符号量との差を次に符号化される輝度信号の許容符号量に加算して輝度信号の新たな許容符号量とする手段と、を備えるＪＰＥＧ画像符号量制御装置。
【請求項２】
色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量を超えた場合に、ブロック終了符号を符号化データに付加する手段を備える請求項１記載のＪＰＥＧ画像符号量制御装置。
【請求項３】
ＪＰＥＧによる画像圧縮符号化において生成される符号量の制御を行うＪＰＥＧ画像符号量制御方法であって、ブロック単位に生成される符号化データについて色差信号および輝度信号のそれぞれに対して許容符号量を設定し、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量より少ない場合に、前記生成された符号化データの符号量と前記許容符号量との差を次に符号化される輝度信号の許容符号量に加算して輝度信号の新たな許容符号量とするＪＰＥＧ画像符号量制御方法。
【請求項４】
色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量を超えた場合に、ブロック終了符号を符号化データに付加する請求項３記載のＪＰＥＧ画像符号量制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はＪＰＥＧによる画像圧縮符号化技術に関し、特にＪＰＥＧ符号化において生成される符号量の制御を可能にするＪＰＥＧ画像符号量制御装置および方法に関する。
【背景技術】
【０００２】
従来のＪＰＥＧ符号化においては生成される符号量の制御を行うことができず、符号化処理による出来高の符号量の画像データに対して送信や保存を行っていた。したがって、画像によってデータ量が異なるため、通信路やメモリ資源の活用に制約を受けやすい問題があった。
【０００３】
その対策としてＤＣ成分のみを符号化して符号量を予測する方法があるが、精度は画像によって左右され、また符号化を２回行うことになり、処理の冗長さに難点があった。
【０００４】
近年、これらの問題を解決するために、量子化テーブルの操作により符号量を調整する方法（例えば、特許文献１参照）や、ハフマン符号化の際に予め設定した符号量になるように制御する方法（例えば、特許文献２参照）が提案されている。
【特許文献１】特開平５−６３９９４号公報
【特許文献２】特開平７−２２２１５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記従来の問題解決法において、特許文献１に示された量子化テーブルの操作により符号量を調整する方法は、画像に応じて異なる操作を行う必要があるため、演算量が多くなるという問題があった。
【０００６】
また、特許文献２に示されたハフマン符号化の際に予め設定した符号量になるように制御する方法は、量子化テーブルの操作により符号量を調整する方法に比べて実現が容易であるが、色成分ごとに処理する手法であるため、輝度信号と色差信号の符号量のバランスによっては画像が劣化する恐れがあった。
【０００７】
本発明は、ＪＰＥＧ符号化において生成される符号量を予め指定して制御する場合に、少ない符号量でも画像の劣化を抑えることができ、限られたメモリ資源を活用し易くするＪＰＥＧ画像符号量制御装置および方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のＪＰＥＧ画像符号量制御装置は、ＪＰＥＧによる画像圧縮符号化において生成される符号量の制御を行うＪＰＥＧ画像符号量制御装置であって、ブロック単位に生成される符号化データについて色差信号および輝度信号のそれぞれに対して許容符号量を設定する手段と、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量より少ない場合に、前記生成された符号化データの符号量と前記許容符号量との差を次に符号化される輝度信号の許容符号量に加算して輝度信号の新たな許容符号量とする手段とを備える。
【０００９】
上記構成によれば、輝度信号あるいは色差信号の符号化において許容符号量に対して余った符号量が次の輝度信号の符号化のための新たな許容符号量とされるため、人間の視覚に敏感な輝度信号に対してより多くの符号量を割り当てることができ、少ない符号量でも画像の劣化を抑えることが可能となる。
【００１０】
本発明のＪＰＥＧ画像符号量制御装置において、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量を超えた場合に、ブロック終了符号を符号化データに付加する手段を備える。
【００１１】
上記構成によれば、輝度信号に対してより多くの符号量を割り当てながら、生成される符号量を予め指定した符号量に制御することができ、限られたメモリ資源を活用することが容易になる。
【００１２】
本発明のＪＰＥＧ画像符号量制御方法は、ＪＰＥＧによる画像圧縮符号化において生成される符号量の制御を行うＪＰＥＧ画像符号量制御方法であって、ブロック単位に生成される符号化データについて色差信号および輝度信号のそれぞれに対して許容符号量を設定し、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量より少ない場合に、前記生成された符号化データの符号量と前記許容符号量との差を次に符号化される輝度信号の許容符号量に加算して輝度信号の新たな許容符号量とする。
【００１３】
上記構成によれば、輝度信号あるいは色差信号の符号化において許容符号量に対して余った符号量が次の輝度信号の符号化のための新たな許容符号量とされるため、人間の視覚に敏感な輝度信号に対してより多くの符号量を割り当てることができ、少ない符号量でも画像の劣化を抑えることが可能となる。
【００１４】
本発明のＪＰＥＧ画像符号量制御方法において、色差信号あるいは輝度信号から生成された符号化データの符号量が前記許容符号量を超えた場合に、ブロック終了符号を符号化データに付加する。
【００１５】
上記構成によれば、輝度信号に対してより多くの符号量を割り当てながら、生成される符号量を予め指定した符号量に制御することができ、限られたメモリ資源を活用することが容易になる。
【発明の効果】
【００１６】
本発明によれば、人間の視覚に敏感な輝度信号に対してより多くの符号量を割り当てることができ、少ない符号量でも画像の劣化を抑えることが可能となり、限られたメモリ資源を活用し易くなる。これにより、例えばディジタルカメラの使用者が符号量を指定することで撮影可能な画像枚数を決めることが可能になるなど、本発明はディジタルカメラやカメラ付き携帯電話に搭載されるＪＰＥＧ符号化器において極めて有用である。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態について図面を参照しながら説明する。図１は本発明の一実施の形態に係るＪＰＥＧ画像符号量制御における符号化処理と復号処理を示す図である。
【００１８】
図１において、１はＤＣＴ演算を行うＤＣＴ変換器、２は量子化器２、３は本発明のＪＰＥＧ画像符号量制御を実行するハフマン符号量制御器、４はエントロピー符号化を行うハフマン符号化器、５はメモリあるいは伝送路を示すメモリ／伝送路、６はハフマンテーブル、７は量子化テーブル、８はハフマン復号器、９は逆量子化器、１０は逆ＤＣＴ演算を行う逆ＤＣＴ（ＩＤＣＴ）変換器である。
【００１９】
符号化においては、原画像はまず８×８のブロックに分割され、各ブロックはＤＣＴ変換器１でＤＣＴ変換が行われ、量子化器２で量子化テーブル７を用いて量子化され、ハフマン符号化器４でハフマンテーブル６を用いてハフマン符号化が行われる。
【００２０】
ハフマン符号量制御器３はハフマン符号化器４で逐次生成されるハフマン符号量の監視を行い、処理中のブロックのハフマン符号量が割り当てビット数より少ない場合は余ったビット数の抽出を行い、割り当てビット数より多い場合はハフマン符号化器４を停止することができる。生成された符号化データはＪＰＥＧで規定されるパラメータとともにメモリ／伝送路５に格納され、あるいは送信される。
【００２１】
復号においては、メモリ／通信路５から取得または受信した符号化データを符号化に使用されたハフマンテーブル６を用いてハフマン復号器８で復号し、さらに符号化に使用された量子化テーブル７を用いて逆量子化器９で逆量子化し、最後に逆ＤＣＴ変換器１０で逆ＤＣＴ変換を行うことで８×８ブロックの原画像が復号される。
【００２２】
図３および図４は本発明のＪＰＥＧ画像符号量制御における符号量制御の処理内容を示すフロー図であり、図３は符号量制御を行うための準備処理を示し、図４はハフマン符号化の際の符号量制御処理を示している。
【００２３】
図４において、ＪＰＥＧ符号化の符号量を指定するために、まずステップ４０で圧縮率を指定して圧縮画像のデータサイズを求める。次に、ステップ４１で入力画像のサンプリングファクタにより輝度信号と色差信号を合わせた１画面の総ブロック数を求め、さらに、ステップ４２で１ブロックの割り当てビット数を求める。
【００２４】
ハフマン符号化では、輝度信号の１ブロックの割り当てビット数は、前のブロックの輝度信号と色差信号のハフマン符号化によって変動するので、輝度信号と色差信号のそれぞれに対して１ブロックの割り当てビット数を分ける。
【００２５】
輝度信号についてはステップ４３において、ステップ４２で求めた１ブロックの割り当てビット数を輝度信号の１ブロックの割り当てビット数とする。また、色差信号についてはステップ４４において、輝度信号と同様にステップ４２で求めた１ブロックの割り当てビット数を色差信号の１ブロックの割り当てビット数とする。
【００２６】
その後、原画像をサンプリングファクタに応じた入力順序で符号化装置に入力し、ステップ４５においてＤＣＴ変換を行い、ステップ４６において量子化を行う。
【００２７】
量子化後は、ステップ４７で量子化した信号が輝度信号か色差信号かの判定を行い、当該ブロックのハフマン符号化後の符号量がハフマン符号の終端符号ＥＯＢ分のビット数を含めて割り当てビット数を超えないようにするために、ＥＯＢのビット数を設定する。
【００２８】
ＪＰＥＧの一般に用いられるハフマンテーブルの使用を想定し、輝度信号の場合はステップ４８で４ビットに設定し、色差信号の場合はステップ４９で２ビットに設定する。さらに、ハフマン符号化において符号化データが“ＦＦｈ”であった場合は、その直後に“００ｈ”の８ビットを付加しなければならないという規則があるため、そのビット数も考慮しなければならない。
【００２９】
次にハフマン符号化の処理に進む。ハフマン符号化では、符号化した結果が予め指定したビット数以下に収まった場合は、余ったビット分を以降のハフマン符号化に利用する。一方、割り当てビット数を超えた場合は、その時点でハフマン符号化処理を停止し、それ以前に生成された符号に終了符号ＥＯＢを付加する。
【００３０】
ハフマン符号化器は３つのサンプリングファクタに対応しており、サンプリングファクタよって入力する色成分の順序が異なる。ＹＵＶ＝４：４：４の画像に対してはＣｂ、Ｃｒ、Ｙの組を１サイクルとして繰り返し、ＹＵＶ＝４：２：２ではＣｂ、Ｙ、Ｃｒ、Ｙの組を１サイクルとして繰り返し、ＹＵＶ＝４：２：０では先頭行を０行目として、偶数行ではＹＵＶ＝４：２：２と同じ順に、奇数行ではＹのみを入力する。各サンプリングファクタとも、まず色差信号をハフマン符号化し、次に輝度信号をハフマン符号化する。
【００３１】
一般に色差信号は信号の変化が輝度信号に比べて緩やかであるため、圧縮率が高く、少ないビット数で符号化し易い。上記のような入力順序で符号化を行えば、余ったビットを人間の視覚に敏感な輝度信号に割り当てることができ、画質の劣化を抑えることができる。
【００３２】
まず、ハフマン符号化対象のブロックが現在までに何ビットハフマン符号化されたかを示すビットカウントの値を０にする。続いてＤＣ成分については１画素に対して、ＡＣ成分についてはランレングス長と画素値が０でない画素の組み合わせに対して、ステップ２３でハフマン符号化を行う。その際に生成されたハフマン符号のビット数を図３のフロー図に表記する「ハフマン符号ビット数」とする。
【００３３】
次にステップ２４で、ビットカウントとＥＯＢビット数の合計が１ブロックの割り当てビット数より小さいか判定し、真の場合はハフマン符号の調査に移り、偽の場合はハフマン符号にＥＯＢを追加してハフマン符号化の終了後の処理へ移る。
【００３４】
ステップ２５のハフマン符号の調査では、ハフマン符号が“８‘ｈＦＦ”の場合はステップ２６でビットカウントに８を加算し、ＪＰＥＧ符号化の規約によりステップ２７で“８‘ｈ００”を追加し、ステップ２８でハフマン符号ビット数に８を加算する。
【００３５】
さらに、ステップ２９でビットカウントとハフマン符号ビット数とＥＯＢビット数の合計が１ブロックの割り当てビット数より少ないか判定し、真の場合はステップ３０で生成するハフマン符号を前回までに生成されたハフマン符号に追加し、ステップ３１でビットカウンタにハフマン符号ビット数を加算する。一方、偽の場合はステップ３４でハフマン符号にＥＯＢを追加し、ステップ３５でビットカウンタにＥＯＢビット数を加算する。
【００３６】
真の場合のハフマン符号の書き込み後は、ステップ３２で対象ブロックのハフマン符号化が終了したかを判定し、真の場合は終了処理へ、偽の場合は次のデータのハフマン符号化を行う。
【００３７】
ハフマン符号化の終了処理では、ステップ３３でビットカウンタを０に戻し、ステップ３６で次の対象ブロックが輝度信号か色差信号かを調べる。輝度信号の場合はステップ３７において、ステップ４３で求めた輝度信号の１ブロックの割り当てビット数に今までのハフマン符号で余ったビット数を加算した値を新たな輝度信号の１ブロックの割り当てビット数とする。色差信号の場合はステップ３８において、ステップ４４で求めた色差信号の１ブロックの割り当てビット数を採用する。以上により、ステップ３９で１ブロックのハフマン符号化が終了し、次のブロックのハフマン符号化に進む。
【００３８】
図２は上述したハフマン符号化で余ったビット数の取り扱いを説明する図である。図２において、ＹＵＶ＝４：４：４の場合は、Ｃｂ、Ｃｒ、Ｙが１組として処理され、Ｃｂ、Ｃｒのハフマン符号化で余ったビット数１１をＹのハフマン符号化に割り当てる。さらにＹのハフマン符号化で余ったビット数１３はビット余り１５とされ、ビット数１２やビット数１４により以降のＹのハフマン符号化に割り当てられる。
【００３９】
ＹＵＶ＝４：２：２の場合は、Ｃｂ、ＹおよびＣｒ、Ｙがそれぞれ１組として処理され、色差信号のハフマン符号化の余りビット数１６をＹのハフマン符号化に割り当てる。さらにＹのハフマン符号化で余ったビット数１８はビット余りとされ、ビット数１７やビット数１９により以降のＹのハフマン符号化に用いられる。
【００４０】
ＹＵＶ＝４：２：０の場合は、先頭行を０行目として偶数行ではＣｂ、ＹおよびＣｒ、Ｙがそれぞれ１組として処理され、色差信号のハフマン符号化の余りビット数２０をＹのハフマン符号化に割り当てる。さらにＹのハフマン符号化で余ったビット数２１はビット余りとされ、ビット数２２により奇数行のＹのハフマン符号化に割り当てられる。さらに奇数行のＹのハフマン符号化で余ったビット数はビット余りとされ、以降のＹのハフマン符号に割り当てられる。
【産業上の利用可能性】
【００４１】
本発明のＪＰＥＧ画像符号量制御装置および方法は、人間の視覚に敏感な輝度信号に対してより多くの符号量を割り当てることができ、少ない符号量でも画像の劣化を抑えることができるという効果を有し、ＪＰＥＧによる画像圧縮符号化技術等として有用である。
【図面の簡単な説明】
【００４２】
【図１】本発明の一実施の形態に係るＪＰＥＧ画像符号量制御における符号化処理と復号処理を示す図。
【図２】本発明のＪＰＥＧ画像符号量制御におけるハフマン符号化で余ったビット数の取り扱いを説明する図。
【図３】本発明のＪＰＥＧ画像符号量制御における符号量制御を行うための準備処理を示すフロー図。
【図４】本発明のＪＰＥＧ画像符号量制御におけるハフマン符号化時の符号量制御処理を示すフロー図。
【符号の説明】
【００４３】
１  ＤＣＴ変換器
２  量子化器
３  ハフマン符号量制御器
４  ハフマン符号化器
５  メモリまたは伝送路
６  ハフマンテーブル
７  量子化テーブル
８  ハフマン復号器
９  逆量子化器
１０  逆ＤＣＴ変換器
１１〜２２  ビット数情報
２３〜４９  符号量制御の処理ステップ
【図１】
2006148235.tif 000003
【図２】
2006148235.tif 000004
【図３】
2006148235.tif 000005
【図４】
2006148235.tif 000006