JP5078199B2 - 画像符号化装置及びその方法並びにプログラムコード、記憶媒体 - Google Patents
画像符号化装置及びその方法並びにプログラムコード、記憶媒体 Download PDFInfo
- Publication number
- JP5078199B2 JP5078199B2 JP2001193559A JP2001193559A JP5078199B2 JP 5078199 B2 JP5078199 B2 JP 5078199B2 JP 2001193559 A JP2001193559 A JP 2001193559A JP 2001193559 A JP2001193559 A JP 2001193559A JP 5078199 B2 JP5078199 B2 JP 5078199B2
- Authority
- JP
- Japan
- Prior art keywords
- coefficient
- image
- encoding
- subband
- area
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【発明の属する技術分野】
本発明は、画像データを符号化する技術に関するものである。
【0002】
【従来の技術】
近年、デジタルカメラ、スキャナといった画像入力装置の技術の向上にともない、これら入力装置により取り込む画像データの解像度は増加の一途を辿っている。低解像度の画像であれば画像データの量も少なく、伝送、蓄積といった処理に支障をきたすことはないが、高解像度になるにつれ、画像データ量も膨大なものになり、伝送する際に多くの時間がかかったり、蓄積に多くの記憶容量を必要とするという問題がある。
【0003】
このため画像の伝送、蓄積に際しては高能率符号化を用いることにより、画像の冗長性を除く、あるいは視覚的に許容できる範囲で画像を加工し、データ量の削減を行うことが一般的である。復号により元の画像を完全に再現できる符号化方式を可逆符号化、視覚的に近い画像を得ることができるものの、完全には元の画像を再現できない符号化方式を非可逆符号化と呼んでいる。非可逆符号化の場合、視覚的に劣化が目立たない部分を変化させて符号量の削減を図ることが肝要であるが、これは画像の特性に大きく依存している。画像データと一口にいってもそのタイプは様々であり、人物・風景等を銀塩写真で撮影し、スキャナで読み取る、あるいは直接デジタルカメラで撮影するなどして生成される自然画像、文字、線情報をラスタライズした文字・線画像、コンピュータで生成した2次元画像データや3次元形状をレンダリングしたCG画像などがあり、良好な再生画質を得るためにはそれぞれに必要解像度、必要階調数が異なると言われる。一般には文字画像、線画像は自然画像に比べて高い解像度が必要であるとされている。
【0004】
従来、高能率符号化の一手法としてウェーブレット変換を利用する方法が用いられている。従来方式では、まず、離散ウェーブレット変換を用いて符号化対象画像を複数の周波数帯域(サブバンド)に分割する。そして次に,各サブバンドの変換係数をさまざまな方法で量子化,エントロピー符号化して符号列を生成する。画像のウェーブレット変換の方法としては、図4(a),(b),(c)にその過程を示すように、符号化対象画像(図4(a))に対して1次元の変換処理を水平、垂直方向にそれぞれに適用して4つのサブバンドに分割する方法が用いられる。さらに、低周波サブバンド(LLサブバンド)のみを繰り返して分割する方法が一般的である。図5に1次元の変換を2回繰り返して行った場合の各サブバンドの例を示す。
【0005】
ウェーブレット変換を用いた画像符号化の利点の一つとして、空間解像度の段階的復号の実現が容易であるということが挙げられる。図5のようにウェーブレット変換を施し、低周波サブバンドLLから高周波サブバンドHH2へと順々に各サブバンドの係数を符号化・伝送した場合、復号側ではLLサブバンドの係数を受信した段階で原画像に対して1/4の解像度の復元画像を、また、LL,LH1,HL1,HH1を受信した段階で1/2の解像度の復元画像を、さらにLH2,HL2,HH2までを受信した場合には元の解像度の復元画像をといった具合に、徐々に解像度を上げて画像を復号することができる。
【0006】
【発明が解決しようとする課題】
しかしながら、上述した様な従来型の高能率符号化方法では、自然画像、文字・線画像の混在する画像データを符号化する際に、自然画像と文字・線画像で良好な画質を得るために必要とされる解像度が異なる点を考慮していないため、効率の良い符号化方式とは言えなかった。
【0007】
本発明は以上の問題に鑑みて成されたものであり、異なる解像度レベルを必要とする領域を含む画像データを符号化する場合に、効率の良い画像符号化を行うことを目的とする。
【0008】
【課題を解決するための手段】
本発明の目的を達成するために、例えば本発明の画像符号化装置は以下の構成を備える。
【0009】
すなわち、画像に対して符号化を行う画像符号化装置であって、
前記画像において、他の領域よりも高解像度で復号を要求する領域を示す領域情報を生成する領域情報生成手段と、
前記画像に対して周波数変換を施し、サブバンド毎の係数を生成する周波数変換手段と、
前記周波数変換手段によるサブバンドのうち復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値のうち、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する修正手段と、
前記修正手段により修正された係数を含む全ての係数についてエントロピ符号化を行い、符号列を生成する符号化手段と
を備え、
前記修正手段は、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値が、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値であるか否かを示すマスク情報を前記領域情報に基づいて生成し、当該マスク情報に応じて、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する
ことを特徴とする。
【0014】
【発明の実施の形態】
以下添付図面に従って、本発明を好適な実施形態に従って詳細に説明する。
【0015】
[第1の実施形態]
図1に本実施形態における画像符号化装置の機能構成を示す。同図において101は画像入力部、102は離散ウェーブレット変換部、103は係数量子化部、104は係数値修正部、105は高解像度領域情報入力部、106はマスク生成部、107はビットプレーン符号化部、108は符号列形成部、109は符号出力部である。
【0016】
又、本実施形態における画像符号化装置の基本構成を図10に示す。
【0017】
1001はCPUで、RAM1002やROM1003に格納されたプログラムやデータを用いて本画像符号化装置全体の制御を行うと共に、後述の各種の符号化処理を実行する。1002はRAMで、外部記憶装置1004や記憶媒体ドライブ1010からロードされるプログラムやデータを一時的に記憶するエリアを備えると共に、CPU1001が各種の処理を実行する際に用いるワークエリアも備える。1003はROMで、本画像符号化装置全体の制御などを行うプログラムやデータ等を格納する。1004はハードディスクなどの外部記憶装置で、記憶媒体ドライブ1009から読み込んだプログラムやデータ等を保存する。1005、1006は夫々キーボード、マウスで、本画像符号化装置に対して各種の指示を入力することができる。1007はCRTや液晶画面などの表示装置で、各種のメッセージや文字情報や画像情報などを表示することができる。1008はスキャナ、デジタルカメラ等の撮像装置、CCDなどの撮像デバイスとガンマ補正、シェーディング補正など各種の画像調整回路を含む画像入力装置である。1009は記憶媒体ドライブ1009で、CD−ROMやDVD等の記憶媒体からプログラムやデータなどを読み込んでRAM1002や外部記憶装置1004や等に出力する。1010は上述の各部を繋ぐバスである。
【0018】
尚、後述の符号化処理のプログラムはCD−ROMやDVDなどの記憶媒体からドライブ1009を介して読み込み、実行するがこれに限定されるものではなく、ROM1003に記憶しておいても良い。
【0019】
又上述の通り、本実施形態の画像符号化装置は図10に示す基本構成を備えるが、図1に示した機能構成を有するプログラムを記憶媒体ドライブ1009,もしくは外部記憶装置1004等から読み込み、CPU1001により実行することで、本画像符号化装置を図1に示す構成を備える装置としても良い。
【0020】
本実施形態では1画素の輝度値が8ビットで表現されるモノクロ画像データを符号化するものとして説明する。しかしながらこれに限らず、4ビット、10ビット、12ビットなど、8ビット以外のビット数で輝度値を表現している画像データにも適用できる。また各画素をRGB、CMYKなどの複数の色成分或いはYCrCb等の輝度と色度/色差成分で表現するカラー画像データにも適用できる。この場合にはカラー画像データ中の各成分がモノクロ画像データであると見なせば良い。
【0021】
以下、図1に示す機能構成を有する画像符号化装置の各部の機能とその動作について説明する。
【0022】
まず、本実施形態の画像符号化装置が行う符号化処理の符号化対象となる画像データP(x,y)が画像入力部101からラスタースキャン順に入力される。この画像入力部101は画像入力装置1008として機能し、例えばスキャナ、デジタルカメラ等の撮像機能を有する部分である。また、CCDなどの撮像デバイスとガンマ補正、シェーディング補正など各種の画像調整回路機能を含む。
【0023】
離散ウェーブレット変換部102は画像入力部101から入力される画像データP(x,y)をRAM1002に適宜格納しながら2次元の離散ウェーブレット変換を施す。そして画像データP(x、y)をLL,LH1,HL1,HH1,LH2,HL2,HH2の7つのサブバンドに分解し、各サブバンドの係数をRAM1002内において、画像データP(x、y)を格納しているエリアとは別のエリアに上記の7つのサブバンドの係数を出力する。以降、各サブバンドの係数をC(S,x,y)と表す。Sはサブバンドを表し、LL,LH1,HL1,HH1,LH2,HL2,HH2のいずれかである。またx,yは各サブバンド内の左上隅の係数位置を(0,0)とした場合の水平方向および垂直方向の係数位置を表す。2次元離散ウェーブレット変換は、1次元の変換(フィルタ処理)を変換対象の画像の水平・垂直方向それぞれに適用することにより実現する。
【0024】
図4に符号化対象画像に対して2次元の離散ウェーブレット変換を施す処理を示す。まず符号化対象画像(図4(a))に対して垂直方向に1次元の離散ウェーブレット変換を適用し、低周波サブバンドLと高周波サブバンドHに分解する(図4(b))。さらに、夫々に水平方向の1次元離散ウェーブレット変換を適用することにより、LL,HL,LH,HHの4つのサブバンドに分解する(図4(c))。本画像符号化装置では、N個の1次元信号x(n)(nは0からN−1とする)に対する1次元離散ウェーブレット変換は以下の式により行われるものとする。
【0025】
h(n)=x(2n+1)−(x(2n)+x(2n+2))/2 (1)
l(n)=x(2n)+(h(n−1)+h(n)+2)/4 (2)
ここで、h(n)は高周波サブバンドの係数、l(n)は低周波サブバンドの係数を表す。なお、ここでは説明を省略するが、上記式の計算において必要となる1次元信号x(n)の両端x(n)(n<0およびn≧N)は公知の手法により1次元信号x(n)(0≦n<N)の値から求めておく。上述の2次元離散ウェーブレット変換により得られたサブバンドLLに対して、さらに繰り返して2次元離散ウェーブレット変換を適用することにより、図5のようにLL,LH1,HL1,HH1,LH2,HL2,HH2の7つのサブバンドに分解することもできる。なお、図5のLLは図4(c)のLLを再分解したものであり、同一のものではない。
【0026】
係数量子化部103は離散ウェーブレット変換部102により生成される各サブバンドの係数C(S,x,y)を、各サブバンド毎に定めた量子化ステップdelta(S)を用いて量子化する。量子化された係数値をQ(S,x,y)と表すとすると、係数量子化部103で行われる量子化処理は以下の式により表される。
【0027】
Q(S,x,y)=sign{C(S,x,y)}×floor{|C(S,x,y)|/delta(S)}
ここで、sign{I}は整数Iの正負符号を表す関数であり、Iが正ならば1、負ならば−1を返す。また、floor{R}は実数Rを超えない最大の整数値を表す。
【0028】
一方、画像入力部101からの画像データ入力と同期して高解像度領域情報入力部105から、高解像度を必要とする領域(例えば、画像中の文字領域)を指定する領域指定情報H(x,y)が入力される。この入力は本画像符号化装置の操作者が入力しても良いし、本画像符号化装置による画像処理の結果として入力しても良い。
【0029】
前者の場合には例えば、表示装置1007に符号化対象の画像を表示し、操作者は表示装置1007に表示された画像を参照して高解像度を必要とする領域をキーボード1005やマウス1006等を用いて選択する。この選択の際にはGUIなどを用いても良い。
【0030】
後者の場合には例えば、高解像度を必要とする領域を画像中の文字領域とする場合、エッジ処理などの画像処理を用いてこの文字領域を推定してもよい。又、後者の場合には、画像入力部101から画像を入力する必要がある。
【0031】
なお、H(x,y)は0または1の値を持ち、1ならば高解像度を必要とする領域、0ならば必要としない領域を表す。また、H(0,0)は画像の左上隅の画素に対する領域指定情報を表す。
【0032】
マスク生成部106は高解像度領域情報入力部105から入力(指定)される領域指定情報H(x,y)を元に、HL2サブバンド、LH2サブバンド、HH2サブバンドの各係数が高解像度領域の画素を参照して生成された係数であるか否かを示すマスク情報M(S,x,y)(但しSはHL2,LH2,HH2のいずれか)を求める。マスク情報M(S,x,y)は、式(1),(2)を用いて画像データP(x,y)からC(S,x,y)を求める過程で、高解像度領域の画素、すなわちH(x,y)=1であるP(x,y)を少なくとも一つ使用した場合には1、使用していない場合は0とする。なお、マスク情報M(S、0,0)はサブバンドSに含まれる係数のうち、左上隅の係数に対するマスク情報を示す。
【0033】
係数値修正部104は係数量子化部103により量子化された各サブバンドの係数Q(S,x,y)について、サブバンドSがHL2,LH2,HH2ならば、マスク生成部106の生成するM(S,x,y)を参照して修正を施し、修正量子化値Q’(S,x,y)を求める。サブバンドSがHL2,LH2,HH2以外であれば修正量子化値Q’(S,x,y)=Q(S,x,y)である。サブバンドSがHL2,LH2,HH2の場合には、
とする。すなわち、高解像度領域内の画素に関係する係数であれば、Q(S,x,y)をそのまま修正量子化値とし、高解像度領域内の画素に関係しない係数であれば、0に置き換える。
【0034】
ビットプレーン符号化部107は、係数値修正部104の生成する修正量子化値Q’(S,x,y)を符号化し、符号列を生成する。各サブバンドの係数をブロック分割し、別々に符号化することによりランダムアクセスを容易にする方法などが知られているが、ここでは説明を簡単にするためにサブバンド単位に符号化することとする。各サブバンドの修正量子化値Q’(S,x,y)(以降、単に係数値と呼ぶ)の符号化は、サブバンド内の係数値Q’(S,x,y)の絶対値を自然2進数で表現し、上位の桁から下位の桁へとビットプレーン方向を優先して2値算術符号化することにより行われる。各サブバンドの修正量子化値Q’(S,x,y)を自然2進表記した場合の下からn桁目のビットをQn(S,x,y)と表記して説明する。なお、2進数の桁を表す変数nをビットプレーン番号と呼ぶこととし、ビットプレーン番号nはLSBを0桁目とする。
【0035】
図6にビットプレーン符号化部107でサブバンドSを符号化する処理のフローチャートを示す。
【0036】
ステップS601はサブバンドS内の係数の絶対値の最大値Mabs(S)を求めるステップ、ステップS602は最大値Mabs(S)を表すのに必要な有効桁数NBP(S)を求めるステップ、ステップS603は変数nに有効桁数を代入するステップ、ステップS604は(n−1)を求めてnに代入するステップ、ステップS605はn桁目のビットプレーンを符号化するステップ、ステップS606はnが0であるか否かを判定するステップである。
【0037】
同図を用いてビットプレーン符号化部107におけるサブバンドSの符号化処理の流れについて説明する。まず、ステップS601で符号化対象となるサブバンドS内の係数の絶対値を調べ、その最大値Mabs(S)を求める。次に、ステップS602ではMabs(S)を2進数で表現するのに必要となる桁数NBP(S)を以下の式により求める。
【0038】
NBP(S)=ceil{log2(Mabs(S))}
ここで、ceil{R}は実数Rに等しいか、あるいはそれ以上の最小の整数値を表す。ステップS603ではビットプレーン番号nに有効桁数NBP(S)を代入する。ステップS604ではビットプレーン番号nから1を引く。ステップS605ではビットプレーンnを2値算術符号を用いて符号化する。本実施形態においては算術符号としてQM−Coderを用いることとする。このQM−Coderを用いて、ある状態(コンテクスト)で発生した2値シンボルを符号化する手順、或いは、算術符号化処理のための初期化手順、終端手順については、静止画像の国際標準ITU-T Recommendation T.81 | ISO/IEC10918-1勧告等に詳細に説明されているのでここでは説明を省略する。また、説明を簡単にするため、本実施形態では単一のコンテクストで各ビットを算術符号化するものとする。各ビットプレーンの符号化の開始時にはビットプレーン符号化部107における不図示の算術符号化器を初期化し、終了時に算術符号化器の終端処理を行う。また、個々の係数について最初に符号化される’1’の直後に、その係数の正負符号を0、1で表し、算術符号化する。ここでは正ならば0、負ならば1とする。例えば、係数が−5で、この係数の属するサブバンドSの有効桁数NBP(S)が6であった場合、係数の絶対値は2進数000101で表され、各ビットプレーンの符号化により上位桁から下位桁へと符号化される。2番目のビットプレーンの符号化時(この場合、上から4桁目)に最初の’1’が符号化され、この直後に正負符号’1’を算術符号化する。
【0039】
ステップS606では、ビットプレーン番号nを0と比較し、n=0即ち、ステップS605でLSBプレーンの符号化を行なった場合にはサブバンドの符号化処理を終了し、それ以外の場合にはステップS604に処理を移す。
【0040】
上述の処理により、サブバンドSの全係数を符号化し、各ビットプレーンnに対応する符号列CS(S,n)を生成する。生成した符号列は符号列形成部108に送られる。送られた係数列はRAM1002に一時的に格納される。
【0041】
ビットプレーン符号化部107により全サブバンドの係数の符号化が終了し、全符号列がRAM1002に格納されると、符号列形成部108は所定の順序でRAM1002に格納される符号列を読み出し、復号する場合に必要な付加情報を挿入して、本画像符号化装置の出力となる最終的な符号列を形成し、符号出力部109に出力する。
【0042】
符号列形成部108で生成される最終的な符号列はヘッダと、レベル0、レベル1、およびレベル2の3つに階層化された符号化データにより構成される。レベル0の符号化データはLLサブバンドの係数を符号化して得られるCS(LL,NBP(LL)−1)からCS(LL,0)の符号列から構成される。レベル1はLH1,HL1,HH1の各サブバンドの係数を符号化して得られる符号列CS(LH1,NBP(LH1)−1)〜CS(LH1,0)、CS(HL1,NBP(HL1)−1)〜CS(HL1,0)、および、CS(HH1,NBP(HH1)−1)〜CS(HH1,0)から構成される。また、レベル2はLH2,HL2,HH2の各サブバンドの係数を符号化して得られる符号列CS(LH2,NBP(LH2)−1)〜CS(LH2,0)、CS(HL2,NBP(HL2)−1)〜CS(HL2,0)、および、CS(HH2,NBP(HH2)−1)〜CS(HH2,0)から構成される。
【0043】
図3に符号列形成部108により生成される符号列の構造を示す。
【0044】
符号出力部109は符号列形成部108で生成された符号列を装置外部へと出力する。この符号出力部109は、例えば、記憶媒体ドライブ1010や外部記憶装置1004といった記憶装置としての機能、ネットワーク回線のインターフェース等としての機能を含む。
【0045】
以上に述べたように、高解像度の求められる領域については高解像度を得るために必要な変換係数を保持し、それ以外の変換係数は0に置き換えて符号化することにより、必要解像度の異なる領域を含む画像データを効率良く非可逆符号化することが可能となる。
【0046】
又、本実施形態では係数修正部104は係数量子化部103による量子化値Q(S、x、y)に対して修正を行っていたが、これに限定されるものではなく、離散ウェーブレット変換部102からの係数を直接修正しても良い。
【0047】
[第2の実施形態]
図2は本実施形態における画像符号化装置の機能構成を示す図である。なお、図1で示した部分と同じ部分については同じ符号で示し、それらの説明を省略する。また、本実施形態における画像符号化装置の基本構成は第1の実施形態(図10)と同じものとする。また、本実施形態では高解像度を必要とする領域として画像中の文字領域を用いるがこれに限定されるものではない。
【0048】
図2において201はタイル分割部、202は像域判定部、203は係数値修正部である。
【0049】
本実施形態では、第1の実施形態と同様に、1画素の輝度値が8ビットで表現されるモノクロ画像データを符号化するものとして説明する。しかしながらこれに限らず、4ビット、10ビット、12ビットなど8ビット以外のビット数で輝度値を表現している画像データにも適用できる。また各画素をRGB、CMYKなどの複数の色成分或いはYCrCb等の輝度と色度/色差成分で表現するカラー画像データにも適用できる。この場合にはカラー画像データ中の各成分がモノクロ画像データであると見なせば良い。
【0050】
以下、図2に示す機能構成を有する画像符号化装置の各部の機能とその動作について説明する。
【0051】
まず、画像データP(x,y)が画像入力部101からラスタースキャン順に入力される。この画像入力部101は画像入力装置1008として機能し、例えばスキャナ、デジタルカメラ等の撮像機能を有する部分である。また、CCDなどの撮像デバイスとガンマ補正、シェーディング補正など各種の画像調整回路機能を含む。
【0052】
タイル分割部201は画像入力部101からラスタースキャン順に入力される画像データP(x,y)をRAM1002に格納し、所定の幅TWと高さTHのタイルに分割する。図7にタイル分割部201により分割されたタイルの例を示す。同図に図示する様に左上隅のタイルをT0とし、ラスタースキャン順にT1,T2,…Tnと各タイルに番号を付け、各タイル内の画素値をTi(x,y)(i=0〜n)とする。尚、Ti(0,0)は、i番目のタイルの左上隅の画素の値を示す。
【0053】
以降、タイル分割部201で形成したタイルT0〜Tnを順番に符号化する。
【0054】
離散ウェーブレット変換部102はタイル分割部201により形成されるタイルTi(x,y)をRAM1002に適宜格納しながら2次元の離散ウェーブレット変換を施す。そしてタイルデータTi(x、y)をLL,LH1,HL1,HH1,LH2,HL2,HH2の7つのサブバンドに分解し、各サブバンドの係数をRAM1002内において、タイルデータTi(x、y)を格納しているエリアとは別のエリアに上記の7つのサブバンドの係数を出力する。この離散ウェーブレット変換部102によるタイルデータTi(x,y)のサブバンド分解方法は第1の実施形態において画素データP(x,y)を分解する方法と同じである。
【0055】
係数量子化部103は離散ウェーブレット変換部102により生成される各サブバンドの係数C(S,x,y)を、第1の実施形態と同様にして量子化する。
【0056】
像域判定部202はタイル分割部201で分割されるタイルデータTi(x,y)を離散ウェーブレット変換102と同じタイミングで取得し、タイルが文字情報を含むか否かを判定し、判定結果(像域分離情報)Zを出力する。ここで像域分離情報Zはタイルが文字情報を含むと判定された場合には1、文字情報を含まないと判定された場合には0とする。本実施形態では像域判定の具体的方法は問わない。例えば、表示装置1007に各タイルデータを表示し、キーボード1005やマウス1006を用いて本画像符号化装置の操作者に文字情報の有無を判定させ、その判定結果を入力させても良い。その場合、像域判定部202は入力結果を像域分離情報Zに反映させる処理を行う。またその他にも、タイルデータTiに対する微分処理を行い、その処理結果としてのエッジ情報などからタイルデータTiに文字情報が含まれているか否かを判定し、その判定結果を像域分離情報Zとしても良い。その場合、像域判定部202は上述の微分処理などのエッジ情報の導出処理と、エッジ情報を用いた上述の判定処理を行い、その結果を像域分離情報Zに反映させる処理を行う。
【0057】
係数値修正部203では係数量子化部103により量子化された各サブバンドの係数Q(S,x,y)について、サブバンドSがHL2,LH2,HH2ならば、像域判定部202の生成する像域分離情報Zを参照して修正を施し、修正量子化値Q’(S,x,y)を求める。サブバンドSがHL2,LH2,HH2以外であればQ’(S,x,y)=Q(S,x,y)である。サブバンドSがHL2,LH2,HH2の場合には、
とする。すなわち、タイルが文字情報を含むと判断された場合には、Q(S,x,y)をそのまま修正量子化値とし、文字情報を含まないと判断された場合にはそのタイルのHL2,LH2,HH2サブバンドの全ての係数を0に置き換える。
【0058】
ビットプレーン符号化部107は、係数値修正部203の生成する修正量子化値Q’(S,x,y)を符号化し、符号列を生成する。各サブバンドの修正量子化値Q’(S,x,y)の符号化方法は第1の実施形態で述べた通りである。像域判定部202から出力される判定結果Zが0である場合、係数値修正部203によりHL2,LH2,HH2の各サブバンドの修正量子化値は全て0となるので、この場合、各サブバンドの有効ビット数NBP(HL2),NBP(LH2),NBP(HH2)は全て0となり、サブバンド係数符号化データは発生しない。
【0059】
符号列形成部108はビットプレーン符号化部107により1つのタイルの全サブバンドの係数の符号化が終了し、全符号列がRAM1002に格納されると、符号列形成部108は所定の順序でRAM1002に格納される符号列を読み出し、タイルの復号に必要な付加情報を挿入して、タイルの符号化データを形成し、符号出力部109に出力する。但し、タイルが画像データの最初のタイル(タイル番号T0)であった場合にはさらにその先頭に、画像の水平方向サンプル数、垂直方向サンプル数、タイルのサイズTW,THなど画像データを復号するために必要な付加情報を挿入する。
【0060】
符号列形成部108で生成されるタイルの符号化データはヘッダと、レベル0、レベル1、およびレベル2の3つに階層化された符号化データにより構成される。レベル0の符号化データはLLサブバンドの係数を符号化して得られるCS(LL,NBP(LL)−1)からCS(LL,0)の符号列から構成される。レベル1はLH1,HL1,HH1の各サブバンドの係数を符号化して得られる符号列CS(LH1,NBP(LH1)−1)〜CS(LH1,0)、CS(HL1,NBP(HL1)−1)〜CS(HL1,0)、および、CS(HH1,NBP(HH1)−1)〜CS(HH1,0)から構成される。また、レベル2はLH2,HL2,HH2の各サブバンドの係数を符号化して得られる符号列CS(LH2,NBP(LH2)−1)〜CS(LH2,0)、CS(HL2,NBP(HL2)−1)〜CS(HL2,0)、および、CS(HH2,NBP(HH2)−1)〜CS(HH2,0)から構成される。但し、像域判定部202から出力される像域分離情報Zが0である場合にはレベル2は各サブバンドの有効ビット数を表す情報のみを含む。この場合のタイル符号化データの構造を図8に示す。
【0061】
像域判定部202から出力される判定結果Zが1である場合のタイル符号化データの構造は図3に示した第1の実施形態の符号列の構造と同じである。
【0062】
符号出力部109は符号列形成部108で生成されたタイル符号化データを装置外部へと出力する。この符号出力部109は、例えば、記憶媒体ドライブ1010や外部記憶装置1004といった記憶装置としての機能、ネットワーク回線のインターフェース等としての機能を含む。
【0063】
以上の処理により、タイル単位で高解像度データの要否を判定し、高解像度データを必要としないタイルについては高解像度を得るために必要な変換係数を0に置き換えて符号化することにより、必要解像度の異なる領域を含む画像データを効率良く非可逆符号化することが可能となる。
【0064】
[第3の実施形態]
図9に本実施形態の画像符号化装置の機能構成を示す。なお、図1、2で示した部分と同じ部分については同じ符号で示し、それらの説明を省略する。また、本実施形態における画像符号化装置の基本構成は第1の実施形態(図10)と同じものとする。
【0065】
図9において901は適応離散ウェーブレット変換部である。適応離散ウェーブレット変換部901は、像域分離情報Zに応じてサブバンド分解に使用するフィルタを選択する機能を有する。
【0066】
本実施形態では第1、第2の実施形態と同様に、1画素の輝度値が8ビットで表現されるモノクロ画像データを符号化するものとして説明する。しかしながらこれに限らず、4ビット、10ビット、12ビットなど8ビット以外のビット数で輝度値を表現している画像データにも適用できる。また各画素をRGB、CMYKなどの複数の色成分或いはYCrCb等の輝度と色度/色差成分で表現するカラー画像データにも適用できる。この場合にはカラー画像データ中の各成分がモノクロ画像データであると見なせば良い。
【0067】
また本実施形態における画像符号化装置は、離散ウェーブレット変換部102を適応離散ウェーブレット変換部901に置き換えた点、像域判定部202の像域分離情報Zを適応離散ウェーブレット変換部901に入力するよう変更した点を除き、第2の実施形態と同じであるので、変更された適応離散ウェーブレット変換部901の動作についてのみ説明する。
【0068】
適応離散ウェーブレット変換部901はタイル分割部201により形成されるタイルTi(x,y)をRAM1002に適宜格納しながら2次元の離散ウェーブレット変換を施す。そしてタイルデータTi(x、y)をLL,LH1,HL1,HH1,LH2,HL2,HH2の7つのサブバンドに分解し、各サブバンドの係数をRAM1002内において、タイルデータTi(x、y)を格納しているエリアとは別のエリアに上記の7つのサブバンドの係数を出力する。この離散ウェーブレット変換部901によるタイルデータTi(x,y)のサブバンド分解方法は、像域判定部202の像域分離情報Zに応じて使用するフィルタを切り替える点を除き、第1の実施形態において画像データP(x,y)を分解する方法と同じである。像域判定部202の像域分離情報Zが0である場合、即ち、文字領域を含まないと判断されたタイルについては第1、第2の実施形態の離散ウェーブレット変換と同じく、式(1)、(2)のフィルタを使用する。一方、判定結果Zが1である場合、即ち、文字領域を含むと判断されたタイルについては式(1),(2)に代えて以下の式を適用する。
【0069】
h(n)=x(2n)−x(2n+1) (3)
l(n)=floor{x(2n)+x(2n+1)/2} (4)
ここでfloor{R}は実数Rを超えない最大の整数値を得る関数である。
よって、本実施形態では2つのフィルタを用いるので、外部記憶装置1004やRAM1002にこのフィルタを記憶しておく必要がある。
【0070】
適応離散ウェーブレット変換部901で生成された各サブバンドの係数C(S,x,y)は第2の実施形態で説明した手順により符号化され、符号出力部109から符号化データが出力される。本実施形態では、符号形成部108で各タイルの符号化データに挿入されるヘッダには使用フィルタを復号側に知らせるために像域判定部202の像域分離情報Zが含まれる。
【0071】
以上の処理により、タイル単位で文字領域を含むか否かを判定し、判定結果に応じて離散ウェーブレット変換に用いるフィルタを選択し、文字領域を含まないタイルについては高解像度を得るために必要な変換係数を0に置き換えて符号化することにより、必要解像度の異なる領域を含む画像データを効率良く非可逆符号化することが可能となる。
【0072】
(変形例)
本発明は上述した実施の形態に限定されるものではない。例えば上述した第1乃至3の実施形態においては、式(1),(2)による離散ウェーブレット変換を用いた符号化の例を示したが、離散ウェーブレット変換については本実施形態で使用したものに限定されるものではなく、フィルタの種類や適応方法を変えても構わない。例えば9/7フィルタなど、よりタップ数の長いフィルタに変えても構わないし、低周波サブバンド以外にも2次元離散ウェーブレット変換を繰り返し適用しても構わない。また、係数の符号化方式としてQM−Coderを用いたビットプレーン符号化方式を示したが、上述の実施の形態に限定されるものではなく、例えば、MQ−Coder等、QM−Coder以外の算術符号化方法を適用しても構わないし、MELCODEなどその他の2値符号化方式を適用しても構わない。また、ビットプレーンを着目係数の近傍係数の状態に応じて複数のサブビットプレーンにカテゴリ分けし、複数回のパスで符号化しても良い。さらにはGolomb符号などを適用して、係数を2値に分解することなく、多値のままエントロピ符号化しても構わない。
【0073】
また、説明を簡単にするために、上記各実施形態では、サブバンド単位のビットプレーン符号化について説明したが、ランダムアクセス性を高めるために各サブバンドを更に小ブロックに分割してこの小ブロック単位にビットプレーン符号化を適用しても構わない。
【0074】
また、符号列の形成にあたっては受信側で徐々に解像度を上げて画像を復元できるように並べたが、これに限らず、徐々に画質が向上するように値の大きな係数から順に並べて符号列を形成しても構わない。
【0075】
なお、本発明は複数の機器(例えばホストコンピュータ、インターフェース機器、リーダ、プリンタ等)から構成されるシステムの一部として適用しても、単一の機器(例えば複写機、ファクシミリ装置、デジタルカメラ等)からなる装置の一部に適用しても良い。
【0076】
また、本発明は上記実施の形態を実現するための装置および方法のみに限定されるものではなく、上記システムまたは装置内のコンピュータ(CPUあるいはMPU)に、上記実施の形態を実現するためのソフトウェアのプログラムコードを供給し、このプログラムコードに従って上記システムあるいは装置のコンピュータが上記各種デバイスを動作させることにより上記実施の形態を実現する場合も本発明の範疇に含まれる。
【0077】
またこの場合、前記ソフトウェアのプログラムコード自体が上記実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、具体的には上記プログラムコードを格納した記憶媒体は本発明の範疇に含まれる。
【0078】
このようなプログラムコードを格納する記憶媒体としては、例えばフロッピィーディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0079】
また、上記コンピュータが、供給されたプログラムコードのみにしたがって各種デバイスを制御することにより、上記実施の形態の機能が実現される場合だけではなく、上記プログラムコードがコンピュータ上で稼動しているOS(オペレーティングシステム)、あるいは他のアプリケーションソフト等と共同して上記実施の形態が実現される場合にもかかるプログラムコードは本発明の範疇に含まれる。
【0080】
更に、この供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上記実施の形態が実現される場合も本発明の範疇に含まれる。
【0081】
【発明の効果】
以上の説明により、本発明によって、異なる解像度レベルを必要とする領域を含む画像データを符号化する場合に、効率の良い画像符号化を行うことができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態における画像符号化装置の機能構成を示す図である。
【図2】本発明の第2の実施形態における画像符号化装置の機能構成を示す図である。
【図3】符号列形成部108により生成される符号列の構造を示す図である。
【図4】符号化対象画像に対して2次元の離散ウェーブレット変換を施す処理を示す図である。
【図5】1次元のウェーブレット変換を2回繰り返して行った場合の各サブバンドの例を示す図である。
【図6】ビットプレーン符号化部107でサブバンドSを符号化する処理のフローチャートである。
【図7】タイル分割部201により分割されたタイルの例を説明する図である。
【図8】本発明の第2の実施形態において、像域判定部202から出力される像域分離情報Zが0である場合のタイル符号化データの構造を示す図である。
【図9】本発明の第3の実施形態における画像符号化装置の機能構成を示す図である。
【図10】本発明の第1乃至3の実施形態における画像符号化装置の基本構成を示す図である。
Claims (9)
- 画像に対して符号化を行う画像符号化装置であって、
前記画像において、他の領域よりも高解像度で復号を要求する領域を示す領域情報を生成する領域情報生成手段と、
前記画像に対して周波数変換を施し、サブバンド毎の係数を生成する周波数変換手段と、
前記周波数変換手段によるサブバンドのうち復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値のうち、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する修正手段と、
前記修正手段により修正された係数を含む全ての係数についてエントロピ符号化を行い、符号列を生成する符号化手段と
を備え、
前記修正手段は、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値が、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値であるか否かを示すマスク情報を前記領域情報に基づいて生成し、当該マスク情報に応じて、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する
ことを特徴とする画像符号化装置。 - 前記他の領域よりも高解像度で復号を要求する領域は文字領域を含むことを特徴とする請求項1に記載の画像符号化装置。
- 前記修正手段は、復号解像度レベルが最も高い各サブバンドに対して前記マスクを生成することを特徴とする請求項1に記載の画像符号化装置。
- 前記周波数変換手段は、離散ウェーブレット変換を用いることを特徴とする請求項1に記載の画像符号化装置。
- 画像に対して符号化を行う画像符号化装置であって、
前記画像を予め定められたサイズのタイルに分割する分割手段と、
前記分割手段による各タイルに対して周波数変換を行い、各タイルに対するサブバンド毎の係数を生成する周波数変換手段と、
前記分割手段による各タイルに特定の領域が含まれているか否かの判定結果を生成する判定手段と、
前記周波数変換手段によるサブバンドのうち、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値のうち、前記特定の領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する修正手段と、
前記修正手段により修正された係数を含む全ての係数についてエントロピ符号化を行い、符号列を生成する符号化手段と
を備え、
前記修正手段は、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値が、前記特定の領域内の画素を用いずに生成された係数もしくは該係数の量子化値であるか否かを示すマスク情報を生成し、当該マスク情報に応じて、前記特定の領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する
ことを特徴とする画像符号化装置。 - 画像に対して符号化を行う画像符号化方法であって、
前記画像において、他の領域よりも高解像度で復号を要求する領域を示す領域情報を生成する領域情報生成工程と、
前記画像に対して周波数変換を施し、サブバンド毎の係数を生成する周波数変換工程と、
前記周波数変換工程によるサブバンドのうち、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値のうち、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する修正工程と、
前記修正工程で修正された係数を含む全ての係数についてエントロピ符号化を行い、符号列を生成する符号化工程と
を備え、
前記修正工程では、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値が、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値であるか否かを示すマスク情報を前記領域情報に基づいて生成し、当該マスク情報に応じて、前記領域情報が示す領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する
ことを特徴とする画像符号化方法。 - 画像に対して符号化を行う画像符号化方法であって、
前記画像を予め定められたサイズのタイルに分割する分割工程と、
前記分割工程による各タイルに対して周波数変換を行い、各タイルに対するサブバンド毎の係数を生成する周波数変換工程と、
前記分割工程による各タイルに特定の領域が含まれているか否かの判定結果を生成する判定工程と、
前記周波数変換工程によるサブバンドのうち、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値のうち、前記特定の領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する修正工程と、
前記修正工程で修正された係数を含む全ての係数についてエントロピ符号化を行い、符号列を生成する符号化工程と
を備え、
前記修正工程では、復号解像度レベルが最も高いサブバンドを構成する係数群もしくは該係数群のそれぞれの量子化値が、前記特定の領域内の画素を用いずに生成された係数もしくは該係数の量子化値であるか否かを示すマスク情報を生成し、当該マスク情報に応じて、前記特定の領域内の画素を用いずに生成された係数もしくは該係数の量子化値を0に修正する
ことを特徴とする画像符号化方法。 - コンピュータを請求項1乃至5の何れか1項に記載の画像符号化装置として機能させるためのコンピュータプログラム。
- 請求項8に記載のコンピュータプログラムを格納した、コンピュータが読み取り可能な記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001193559A JP5078199B2 (ja) | 2001-06-26 | 2001-06-26 | 画像符号化装置及びその方法並びにプログラムコード、記憶媒体 |
US10/176,583 US7013050B2 (en) | 2001-06-26 | 2002-06-24 | Image encoding apparatus and method, program code, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001193559A JP5078199B2 (ja) | 2001-06-26 | 2001-06-26 | 画像符号化装置及びその方法並びにプログラムコード、記憶媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2003009153A JP2003009153A (ja) | 2003-01-10 |
JP2003009153A5 JP2003009153A5 (ja) | 2008-07-24 |
JP5078199B2 true JP5078199B2 (ja) | 2012-11-21 |
Family
ID=19031823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001193559A Expired - Fee Related JP5078199B2 (ja) | 2001-06-26 | 2001-06-26 | 画像符号化装置及びその方法並びにプログラムコード、記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5078199B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4737663B2 (ja) * | 2005-02-21 | 2011-08-03 | 株式会社リコー | 画像処理装置、画像処理方法、プログラム及び情報記録媒体 |
JP4763413B2 (ja) * | 2005-10-17 | 2011-08-31 | 日本放送協会 | 画像改善装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0918876A (ja) * | 1995-06-27 | 1997-01-17 | Sharp Corp | 動画像符号化装置及び動画像復号装置 |
JPH10224789A (ja) * | 1997-02-07 | 1998-08-21 | Matsushita Electric Ind Co Ltd | 画像データ処理装置および画像データ処理方法 |
JPH11112987A (ja) * | 1997-09-30 | 1999-04-23 | Ricoh Co Ltd | 画像データ符号化装置 |
JPH11355575A (ja) * | 1998-04-09 | 1999-12-24 | Ricoh Co Ltd | 画像処理装置 |
JP2000013610A (ja) * | 1998-06-25 | 2000-01-14 | Fuji Photo Film Co Ltd | 符号化画像ファイル作成方法および装置、復号化方法および装置、並びに符号化画像ファイル作成方法および復号化方法をコンピュータに実行させるプログラムを記録したコンピュータ読取り可能な記録媒体 |
JP2001045484A (ja) * | 1999-07-30 | 2001-02-16 | Mitsubishi Electric Corp | 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法 |
JP4412688B2 (ja) * | 1999-11-24 | 2010-02-10 | キヤノン株式会社 | 画像処理装置及びその方法 |
-
2001
- 2001-06-26 JP JP2001193559A patent/JP5078199B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003009153A (ja) | 2003-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7013050B2 (en) | Image encoding apparatus and method, program code, and storage medium | |
JP4365957B2 (ja) | 画像処理方法及びその装置及び記憶媒体 | |
JP4367880B2 (ja) | 画像処理装置及びその方法並びに記憶媒体 | |
US6847735B2 (en) | Image processing system, image processing apparatus, image input apparatus, image output apparatus and method, and storage medium | |
US6985630B2 (en) | Image processing apparatus and method, program and storage medium | |
JP3927388B2 (ja) | 画像処理装置、画像処理方法及び記録媒体 | |
JP2005515727A (ja) | 複合文書の圧縮のためのコーダに整合したレイヤ分離および補間 | |
JP2001222392A (ja) | 印刷制御装置及びその方法 | |
JP5078199B2 (ja) | 画像符号化装置及びその方法並びにプログラムコード、記憶媒体 | |
JP2016092589A (ja) | 符号化装置及びその制御方法 | |
JP4486847B2 (ja) | 圧縮画像から中間調画像を作成する方法と装置 | |
JP6632752B2 (ja) | 画像符号化装置及び方法及びプログラム及び記憶媒体 | |
JP4412688B2 (ja) | 画像処理装置及びその方法 | |
JP2003204439A (ja) | 画像符号化装置及び画像符号化方法 | |
JP2005198007A (ja) | 画像処理装置、画像処理方法、プログラム及び情報記録媒体 | |
JP3709106B2 (ja) | 画像圧縮および伸張装置 | |
JP4031442B2 (ja) | 画像処理装置、及びそれを備える画像形成装置 | |
JP4194311B2 (ja) | 動画像符号化装置及び動画像復号装置並びにそれらの方法 | |
JP2001258033A (ja) | 画像データの符号化装置及び方法、記憶媒体 | |
JP4926128B2 (ja) | 画像処理装置、画像読取装置、画像形成装置、コンピュータプログラム、記録媒体、及び画像処理方法 | |
JP2001197498A (ja) | 画像処理装置及び方法及び記憶媒体 | |
JP4174254B2 (ja) | 動画像符号化装置及び動画像復号装置並びにそれらの方法 | |
JP2002077903A (ja) | 画像符号化装置及び画像符号化方法並びに記憶媒体 | |
JP2003047005A (ja) | 画像符号化装置及びその方法並びにプログラム、記憶媒体 | |
JP4090352B2 (ja) | 画像処理装置、画像処理方法、画像形成装置、プログラム及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080609 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080609 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101020 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101025 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120305 |
|
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: 20120824 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120828 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150907 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5078199 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150907 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |