JP2005175629A - 画像符号化装置、画像符号化方法および画像符号化プログラム - Google Patents

画像符号化装置、画像符号化方法および画像符号化プログラム Download PDF

Info

Publication number
JP2005175629A
JP2005175629A JP2003409498A JP2003409498A JP2005175629A JP 2005175629 A JP2005175629 A JP 2005175629A JP 2003409498 A JP2003409498 A JP 2003409498A JP 2003409498 A JP2003409498 A JP 2003409498A JP 2005175629 A JP2005175629 A JP 2005175629A
Authority
JP
Japan
Prior art keywords
coefficient
inverse
image
dct
zero
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.)
Granted
Application number
JP2003409498A
Other languages
English (en)
Other versions
JP4253572B2 (ja
Inventor
Naomi Takeda
奈穂美 武田
Shinichiro Koto
晋一郎 古藤
Yoshihiro Kikuchi
義浩 菊池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2003409498A priority Critical patent/JP4253572B2/ja
Publication of JP2005175629A publication Critical patent/JP2005175629A/ja
Application granted granted Critical
Publication of JP4253572B2 publication Critical patent/JP4253572B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】高画質を保ちつつ、画像の符号化および復号化の処理効率を向上させることのできる画像符号化装置を提供することを目的とする。
【解決手段】直交変換を用いて画像を符号化する画像符号化装置10であって、直交変換および量子化が行われた後のDCT(Discrete Cosine Transform)係数が逆変換後にゼロになるか否かを、前記DCT係数のAC(交流)係数およびDC(直流)係数のうち少なくとも一方に基づいて判定する係数チェック手段122,123と、係数チェック手段122,123がDCT係数が逆変換後にゼロにならないと判断した場合に、当該DCT係数に対して、エントロピー符号化を行うエントロピー符号化手段124とを備えた。
【選択図】 図2

Description

本発明は、直交変換を用いて画像を符号化する画像予符号化装置、画像符号化方法および画像符号化プログラムに関するものである。
画像信号の圧縮符号化方式としてJPEG、MPEG−1(ISO/IEC11172−2)、MPEG−2(ISO/IEC13818−2)、MPEG−4(ISO/IEC14496−2)およびITU−TH.263などが広く実用化されている(非特許文献1〜2参照)。
画像信号の圧縮符号化の処理は、主に(1)画素間の空間的相関除去のための直交変換(以下、単に「変換」と称す)、(2)量子化、(3)エントロピー符号化の3つのステップで構成されている。原画像から(1)および(2)のステップを経て得られた係数の行列Aを(3)のステップで処理することにより符号化ビット列が生成される。
一方、復号化の処理は、主に、(I)エントロピー復号化、(II)逆量子化、(III)(1)の直交変換の逆変換(以下、単に「逆変換」と称す)の3つのステップで構成されている。画像符号化において得られた符号化ビット列から上記(I)〜(III)のステップ
を経て得られた係数の行列Bを用いて画像再構成を行うことにより復号画像が生成される。
また、圧縮符号化における圧縮率をさらに向上させ、かつ画質を向上させることを目的として、次世代の符号化方式が検討された。そして、ITU−TとISO/IECとのジョイントにより、ITU−T Rec.H.264及びISO/IEC 14496−10(以下「H.264」と称す)が標準化方式として定められた。H.264はMPEG−4と比較して2倍の圧縮率で同等の画質を得られる符号化方式であるとして注目されている。
「わかりやすいJPEG/MPEG2の技術」(オーム社出版局) 「MPEG4のすべて」(工業調査会)
上記で述べた符号化処理((1)〜(3))および復号化の処理((I)〜(III))において、(1)、(2)と(II)、(III)が非可逆である場合がある。この非可逆性に起因して、行列Aの要素(以下において「係数」とも称する)のうち少なくとも一つが0(以下「Aが非ゼロ」と称す)でない場合であっても、行列Bのすべての係数が0(以下「Bがゼロ」と称す)となる場合がある。従って、符号化ビット列に有意ではない情報が含まれる可能性がある。
そのため、この点に留意せずに符号化を行った場合、有意でない情報を取り除いた場合と比較して画質は等しいにも関わらず、ビット量が多くなるという問題がある。
有意でない情報が符号化されることを避けるために、画像符号化の際に(1)、(2)の後でAを入力として(II)、(III)を行い、得られるBの値が非ゼロである場合にのみ(3)の処理を行い符号化ビット列に反映するなどの方法が考えられる。しかしこの場合には、符号化時に復号化処理の一部を行うことにより、符号化時間が増加するという新たな問題が生じる。
上述した課題を解決し、目的を達成するために、本発明は、高画質を保ちつつ、画像の符号化および復号化の処理効率を向上させることのできる画像符号化装置を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、直交変換を用いて画像を符号化する画像符号化装置であって、直交変換および量子化が行われた後のDCT(Discrete Cosine Transform)係数が逆変換後にゼロになるか否かを、前記DCT係数のAC(交流)係数およびDC(直流)係数のうち少なくとも一方に基づいて判定する係数チェック手段と、前記係数チェック手段が前記DCT係数が逆変換後にゼロにならないと判断した場合に、当該DCT係数に対して、エントロピー符号化を行うエントロピー符号化手段とを備えたことを特徴とする。
本発明にかかる画像符号化装置は、DCT係数に対して実際に逆変換を施すことなくDCT係数が逆変換後にゼロになるDCT係数を判別することができる。従って、逆変換後にゼロになると判別されたDCT係数に対して実際に逆変換を施す必要がなくなるため処理を効率化させることができるという効果を奏する。また、逆変換後ゼロにならないDCT係数のみをエントロピー符号化するので、圧縮率を向上させることができるという効果を奏する。
以下に、本発明にかかる画像符号化装置、画像符号化方法および画像符号化プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
(実施の形態1)
実施の形態1に係る画像符号化装置10は、逆変換等の処理結果を予測することにより、逆変換等の処理にかかる処理負担を軽減することができる。図1は、実施の形態1にかかる画像符号化装置10の機能構成を示すブロック図である。画像符号化装置10は、減算器110と、符号化部120と、加算器112と、フレームメモリ114と、動き補償部116とを備えている。
画像符号化装置10において、まず入力動画像信号200が減算器110に入力される。そして、減算器110は、入力動画像信号200に対する予測画像信号204の誤差である予測誤差信号201を生成する。予測画像信号204はフレームメモリ114に一時保存された少なくとも一つの参照フレーム画像信号から、動き補償部116により生成される。
動き補償部116は、参照フレームを選択する。また、動きベクトルの生成および動き補償予測を行う。動き補償部116はまた、動き補償予測に用いた動きベクトルを予測して生成される予測ベクトルの生成に関わる情報をマクロブロック毎に符号化したデータ208を出力する。
ここで、動き補償予測について説明する。動画像の符号化においては、画素間の時間的相関除去を目的として時間的に前後に存在する1つあるいは複数の単位時間の画像(以下「フレーム」と称す)を参照して予測画像を作る。そして、原画像と予測画像の差分を符号化する。また、参照画像と現符号化対象画像から予測ベクトルを抽出し符号化する。以上のように予測画像を作る処理が動き補償予測である。
予測誤差信号201は、符号化部120において符号化される。符号化部120は、予測誤差信号201をまず量子化変換係数の符号化データに変換する。そして、符号化データに対して動き補償予測に使用した参照フレームを特定するインデックス、および動き補償部116から出力されたデータ208を付加し、符号化データ205として図示しない蓄積系、または伝送系へ向けて送出する。
符号化部120はまた、入力動画像信号200を逆量子化および逆変換し、逆変換後データ203を加算器112に送出する。加算器112は、逆変換後データ203と予測画像信号204とを加算して復号化画像信号206を生成し、復号化画像信号206をフレームメモリ114に送出する。フレームメモリ114は、復号化画像信号206を一時保存する。
なお、他の例としては、画像符号化装置10は、フレームメモリ114にかえて、複数のフレームメモリによって構成される参照フレームメモリセットを有してもよい。この場合、復号化画像信号206は、フレームメモリセットに参照フレームとして一時保存される。
また、他の例としては、減算器110は、空間的画素予測であるIntra予測(参照H.264規格仕様書)と入力動画像信号200との予測誤差信号を生成してもよい。
図2は、符号化部120の詳細な機能構成を示すブロック図である。符号化部120は、変換・量子化部121と、AC係数チェック部123と、DC係数チェック部122と、逆量子化・逆変換部125と、エントロピー符号化部124とを有している。ここで、AC係数チェック部123およびDC係数チェック部122は、本発明の係数チェック手段を構成する。
変換・量子化部121は、予測誤差信号201を入力し、複数画素からなるブロック毎に画素間相関除去のための変換および、量子化を行う。実施の形態1にかかる変換・量子化部121は、予測誤差信号201を4×4画素ブロック(以下、単に「ブロック」と称す)に分割し、ブロック単位に変換・量子化を行う。この方法を4×4手法と呼ぶ。
ここで、変換・量子化部121による変換・量子化について詳述する。前提として、画像信号は、数式1で示される。
A={a(i,j)| i,j=0,…,3}…数式1
変換・量子化部121は、まず4×4の画像信号から数式2によりBを得る。
B=C・A…数式2
ここで、Cは、H.264におけるエンコードで使われる変換行列であって、数式3で示される。
C={c(i,j)| i,j=0,…,3}…数式3
次に、上記結果から数式4で示される係数行列210を得る。
D={d(i,j)|×(q(i,j,qp)*b(i,j),qp), i,j=0,…,3}…数式4
ここで、Qは量子化処理の前処理として使われる行列である。また、Qは次式で与えられる。また、Xは量子化関数である。
Q={q(i,j,qp)| i,j=0,…,3}…数式5
変換・量子化部121は、上記の演算によって得られた係数行列(D)210の係数をエントロピー符号化してビットストリームとしてDCチェック部122に出力する。
AC係数がゼロであって、かつDC係数が基準範囲内の値である場合には、逆量子化および逆変換した結果がゼロになる。また、DC係数が基準範囲外の値である場合には、逆量子化および逆変換した結果は非ゼロになる。従って、AC係数チェック部123およびDC係数チェック部122によるDC係数およびAC係数のチェック結果に基づいて係数行列210の逆量子化および逆変換した結果を判定することができる。従って、実際に逆変換等の処理を行うことなく、係数行列210に対してエンコード処理を行うか否かを決定することができる。以下、この内容について詳述する。
AC係数およびDC係数と、逆量子化等の処理との関係について説明する前提として、まずデコード処理について説明する。
デコード処理においては、まず、係数行列(D)210の各要素に対して、逆量子化の前処理(行列IQの要素を掛ける)を行う。そして、前処理後の係数行列(D)210に対して逆量子化を行う。その結果として、E行列を得る。
ここで、IQおよびEは、それぞれ数式6、数式7で示される。また、IX(a,qp)は、逆量子化関数である。
IQ={iq(i,j,qp)| i,j=0,…,3}・・・数式6
E={e(i,j)|IX( iq(i,j,qp)*d(i,j),qp), i,j=0,…,3}・・・数式7
次に、E行列に対して数式8で示される逆変換を行う。
F=IC・E・・・数式8
ここで、ICはEに対して逆変換を行う変換行列であって、数式9で示される。
IC={ic(i,j)| i,j=0,…,3}・・・数式9
以上で、デコード処理が完了する。
なお、H.264におけるIC,IQ,IXに関してはH.264の規格仕様書のScaling and transformation process for residual 4×4 blocksの節に記載されている。
ここで、図3−1から図3−3を参照しつつDC係数チェック部122の処理について説明する。図3−1から図3−3は、係数行列210の一例を示している。図3−1および図3−2に示される係数行列210a,bにおけるAC係数211a,211bは全てゼロである。一方、図3−3に示される係数行列210cのAC係数211cには、1,4など0以外の係数が含まれている。従って、AC係数211cは非ゼロである。
なお、以下の前提として、d(i,j)=1の場合のQP=qpにおけるE(i,j)の値をu(i,j,qp)と定義する。なお、QPは、量子化値である。
DC係数チェック部122は、係数行列(D)210におけるd(0,0)*u(0,0,qp)の値をチェックする。具体的には、丸めを行った結果が0になるか否かを判定する。
例えば、数式10のように係数(ここではX')に対する丸め(結果X'')が行われる場合、d(0,0)*u(0,0,qp)が−(1<<(p−1))−1より大きく、(1<<(p−1))未満であるかどうかのチェックを行う。なおここで、−(1<<(p−1) )−1より大きく、(1<<(p−1))未満の範囲を基準範囲と呼ぶ。
X''=(X'+(1<<(p-1)))>>p・・・数式10
d(0,0)*u(0,0,1)が基準範囲内に含まれている場合には、係数行列(D)210に対して逆量子化および逆変換を行った結果がゼロになるので、エントロピー符号化を行わなくてよい。
このように、DC係数チェック部122は、実際に係数行列(D)210に対して逆量子化および逆変換を行わずに、d(0,0)*u(0,0,1)の値に基づいて、逆量子化および逆変換の結果がゼロか否かを判定することができる。
なお、d(0,0)*u(0,0,1)の基準範囲に対応するDC係数の範囲を、DC係数基準範囲とし、当該DC係数基準範囲と係数行列(D)210のDC係数とを比較することによって、係数行列(D)210の逆量子化および逆変換の結果がゼロか否かを判定してもよい。
先に述べたH.264の規格仕様に沿った場合はここでP=5の場合であり、この場合の基準範囲は、−33より大きく32未満の範囲である。
H.264ではQP=1のとき、u(0,0,1)の値が11である。この場合、図3−1のDC係数は2であり、d(0,0)*u(0,0,1)=22となる。すなわち、図3−1に示す係数行列(D)210のd(0,0)*u(0,0,1)は、基準範囲内に含まれている。また、図3−2においては、d(0,0)*u(0,0,1)=33となり、基準範囲に含まれない。
なお、他の例としては、丸めが数式11のように行われる場合は、d(0,0)*u(0,0,qp)が−1より大きく、(1<<(p−1))未満であるかどうかのチェックを行ってもよい。
X'<0の場合 X''=(X'-(1<<(p-1)))>>p
X'>0の場合 X''=(X'+(1<<(p-1)))>>p
X'=0の場合 X''=0・・・数式11
このように、丸めの計算が他の式で与えられる場合であっても、丸めの結果が0になるか否かのチェックと同様の数値との比較を行えばよい。
また、IQ行列は、本実施の形態に限定されない。行列Dの全係数に対して、例えばiq(i,j,qp)=1(i,j=0,…,3)などの一定値をかけてもよい。また、画素の位置(i,j)によって値を変更してもよい。これらの処理が行われる場合であっても、D行列のDC係数に対して行われるIQ行列係数iq(0,0,qp)および逆量子化関数によって定義されるu(i,j,qp)を用いることによりDC係数のチェックを行うことができる。
AC係数チェック部123は、そして、AC係数の全てがゼロか、少なくとも1つゼロでない要素があるかをチェックする。すなわち、AC係数がゼロか非ゼロかをチェックする。また、DC係数チェック部122は、変換・量子化部121から係数行列210を入力し、DC係数がゼロか、非ゼロかをチェックする。ここで、AC係数とは係数行列210における(0,0)成分以外の全ての要素のことである。DC係数とは、係数行列210における(0,0)成分のことである。
逆量子化・逆変換部125は、係数行列210に対して逆量子化・逆変換を行う。
エントロピー符号化部124は、変換・量子化部121から係数行列210を入力し、係数行列210に対してエントロピー符号化を行う。そして、エントロピー符号化後のデータである符号化データ205を送出する。
図4は、画像符号化装置10の符号化処理を示すフローチャートである。まず、画像符号化装置10にブロックとしての入力動画像信号200が入力されると(ステップS100)、符号化部120の変換・量子化部121に入力動画像信号200が1ブロック毎に入力される(ステップS101)。次に、変換・量子化部121は、入力動画像信号200に対して変換・量子化を行う(ステップS102)。
次に、DC係数チェック部122は、変換・量子化部121の処理により得られた係数行列(D)210のDC係数が基準範囲内の値か否かをチェックする(ステップS103)。DC係数が基準範囲内である場合には(ステップS103,Yes)、AC係数チェック部123は、係数行列(D)210AC係数がゼロか否かをチェックする((ステップS104)。係数行列(D)210のAC係数が非ゼロである場合(ステップS104,No)、逆量子化・逆変換部125は、係数行列210に対して逆量子化および逆変換を行う(ステップS105)。そして、その結果がゼロである場合には(ステップS106,Yes)、エントロピー符号化を行わずに、当該ブロックに対する処理が完了する。
このように、AC係数が非ゼロである場合には、実際に逆量子化および逆変換した結果に基づいて判断する。また、逆量子化および逆変換した結果がゼロである場合には、エントロピー符号化を行わないので、処理を効率化することができるだけでなく、不必要なビットが符号に含まれないため、符号化の圧縮効率を上げることが可能になる。
そして、全ブロックについての処理が完了すると(ステップS108,Yes)、画像符号化装置10の符号化処理が完了する。なお、全ブロックについての処理が完了していない場合には(ステップS108,No)、ステップS101に戻り、次のブロックに対する処理を行う。
また、係数行列210に対して逆量子化および逆変換の結果がゼロでない場合には(ステップS106,No)、エントロピー符号化を行い(ステップS107)、当該ブロックに対する処理が完了する。
一方、係数行列(D)210のAC係数がゼロである場合(ステップS104,Yes)、エントロピー符号化を行わずに、当該ブロックに対する処理が完了する。
このように、DC係数が基準範囲内の値であって、かつAC係数がゼロである場合には(ステップS104,Yes)、逆量子化および逆変換した結果がゼロになるので、エントロピー符号化を行わず、ステップS108へ進む。
また、係数行列(D)210のDC係数が基準範囲外の値である場合(ステップS103,No)、エントロピー符号化部124は、エントロピー符号化を行う(ステップS107)。そして、全ブロックについての処理が完了していれば(ステップS108,Yes)、画像符号化装置10の符号化処理が完了する。
このように、係数行列210のAC係数およびDC係数をチェックすることにより、一定のブロックについては、逆量子化および逆変換した結果を判定することができる。従って、逆量子化および逆変換にかかる処理負担を軽減することができる。
また、このように実施の形態1にかかる画像符号化装置10は、逆量子化および逆変換の結果が非ゼロとなるブロックについてのみエントロピー符号化を行うので、処理を軽減することができる。
図5は、画像符号化装置10のハードウェア構成を示す図である。画像符号化装置10は、ハードウェア構成として、画像符号化装置10における画像符号化処理を実行する画像符号化プログラムなどが格納されているROM52、ROM52内のプログラムに従って画像符号化装置10の各部を制御し、画像符号化処理等を実行するCPU51、ワークエリアが形成され、画像符号化装置10の制御に必要な種々のデータが記憶されているRAM53、および各部を接続するバス62を備えている。
先に述べた画像符号化装置10における画像符号化処理を実行する画像符号化プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フロッピー(R)ディスク(FD)、DVD等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
また、本実施の形態にかかる画像符号化プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
この場合には、画像符号化プログラムは、画像符号化装置10において上記記録媒体から読み出して実行することにより主記憶装置上にロードされ、上記ソフトウェア構成で説明した各部が主記憶装置上に生成されるようになっている。
(実施の形態2)
次に、実施の形態2にかかる画像符号化装置10について説明する。実施の形態1にかかる画像符号化装置10は、AC係数がゼロであって、かつDC係数が基準範囲外である場合には、逆変換を行わないが、実施の形態2にかかる画像符号化装置10は、エンコード時にデコード画像を作成する。
図6は、実施の形態2にかかる符号化部120の詳細な機能構成を示すブロック図である。実施の形態2にかかる符号化部120は、第1逆量子化・逆変換部126および第2逆量子化・逆変換部127を備えている。第1逆量子化・逆変換部126は、実施の形態1にかかる逆量子化・逆変換部125と同様に、逆量子化および逆変換を行う。また、第2逆量子化・逆変換部127は、DC係数が基準範囲外となる係数行列に対して、逆量子化・逆変換を行う。
図7は、実施の形態2にかかる画像符号化装置10の符号化処理を示すフローチャートである。実施の形態2にかかる画像符号化装置10の処理においては、DC係数が基準範囲外となる場合に(ステップS103,No)、第2の逆量子化・逆変換を行う(ステップS110)。続いて、ステップS107へ進む。
一方、DC係数が基準範囲内であり、かつAC係数が全てゼロであ場合には(ステップS103,Yes、ステップS104,Yes)、第2の逆量子化・逆変換およびエントロピー符号化を行わず、ステップS108に進む。
図8−1は、第1逆量子化・逆変換部126が処理する行列演算式を示している。また、図8−2は、第2逆量子化・逆変換部127が処理する行列演算式を示している。このように、第2逆量子化・逆変換部127は、AC係数が全てゼロの時に特化した行列演算を行う。
例えば、H.264において第2逆量子化・逆変換部127が施す処理は数式12に示すように、DC係数を全てのFの係数としてコピーするだけである。
F={f(i,j)=e(0,0)| i,j=0,…,3}・・・数式12
このように、第2逆量子化・逆変換部127が行う演算は、図8−1に示すような第1逆量子化・逆変換部126における演算に比べて簡略であるため、処理を高速化することができる。
なお、実施の形態2に係る画像符号化装置10のこれ以外の構成および処理は、実施の形態1に係る画像符号化装置10の構成および動作と同様である。
(実施の形態3)
次に、実施の形態3にかかる画像符号化装置10について説明する。実施の形態3にかかる画像符号化装置10は、入力画像信号を16×16マクロブロック(以下、単に「マクロブロック」と称す)単位で変換・量子化処理する。なお、このような」処理を16×16手法と呼ぶ。
16×16手法では、まずマクロブロック中の16個のブロックに対して変換・量子化を行う。そして、16個のブロックのそれぞれから得られるDC係数16個を集めたブロックを作成する。作成したブロックに対して更に変換・量子化を行う。これにより、16×16手法では、4×4手法よりも広い範囲において、階層的に画素の空間的相関の除去を行うことができる。
図9は、実施の形態3にかかる符号化部120の詳細な機能構成を示すブロック図である。実施の形態3にかかる符号化部120は、第1変換・量子化部130と、第2変換・量子化部132と、第1逆量子化・逆変換部126と、第3逆量子化・変換部128と、AC係数チェック部123と、DC係数チェック部122と、エントロピー符号化部124とを有している。
第1変換・量子化部130は、マクロブロックに含まれる16個のブロックに対して変換および量子化を行う。第2変換・量子化部132は、DC係数16個を集めたブロックに対して変換および量子化を行う。第1逆量子化・逆変換部126は、第1変換・量子化部130により変換および量子化された係数行列(D)210の逆量子化および逆変換を行う。第3逆量子化・逆変換部128は、第2変換・量子化部132により変換および量子化された行列の逆量子化および逆変換を行う。
図10は、実施の形態3にかかる画像符号化装置10の符号化処理を示すフローチャートである。入力動画像信号200が入力されると(ステップS100)、次に、第1変換・量子化部130は、マクロブロック中に含まれる16個の4×4ブロックそれぞれに対して、実施の形態1において示した数式3で表される変換・量子化処理を施す(ステップS120)。
なお、ステップS120においては、実施の形態1において説明したステップS102における変換・量子化処理と異なり、図11に示す4×4ブロックのC(0,0)以外のCの係数に対してのみ数式4で表される量子化処理を施す。
次に、第2変換・量子化部132は、図11に示す行列Hに対して、変換・量子化処理を施す(ステップS122)。ここで行列Hは、16個の4×4ブロックのC(0,0)成分を集めた行列である。
より具体的には、行列Hは、4×4ブロックk(0≦k≦15)のC(0,0)をG(k)と表した場合に、数式13によりCのDC係数を16個集めた行列である。
H={H(i,j)=G(i*4,j*4),| i,j=0,…,3}・・・数式13
また、第2変換・量子化部132が施す処理は、数式14および数式15で表される。
J=L・H・・・数式14
M={Y(q(0,0,qp)*J(i,j),qp)| i,j=0,…,3}・・・数式15
ここで、Lは数式16で表される。またY(a,qp)は量子化関数である。
L={L(i,j)| i,j=0,…,3}・・・数式16
行列Lは輝度DC成分変換を行う係数行列であり、また、行列Mは、変換結果行列Jに対して量子化前処理上記Q行列の該当係数をかけて、量子化(関数Y)を行うことにより得られる行列である。エントロピー符号化部124は、このMの係数とd(0,0)以外のDの係数をエントロピー符号化し、ビットストリームを出力する。
ここで、ステップS124以降の処理について説明する前に、16×16手法で変換・量子化したエンコードデータをデコードする際のデコーダにおける逆量子化・逆変換処理について説明する。
デコーダはビットストリームを入力し行列Mの係数をエントロピー復号化して、Mの係数を得る。そして、実施の形態1において説明した数式6のiq(0,0,qp)を用いて逆変換前処理を行う。その後、関数IYにより各要素の逆量子化を行い、逆変換を行う。ここで、関数IYは、数式17で表される。また、逆量子化処理は、数式18で表される処理である。
N={IY(iq(0,0,qp)*M(i,j),qp)| i,j=0,…,3}・・・数式17
O=IL・N・・・数式18
一方、d(0,0)以外の係数行列Dの係数をエントロピー復号化によって得る。ここで、得られたOの各要素を、図12に示すように各ブロックのp(0,0)として用いる。d(0,0)以外の係数行列Dの係数に対して数式19で表される逆量子化を行い、実施の形態1において説明した数式8で表される逆変換を行い画像を再構成するための値Fを生成する。
P={p(i,j)|I×( iq(i,j)*d(i,j),qp), i,j=0,…,3}(i=j=0は除く)・・・数式19
ここで、IQは数式20で示される。また、IX(a,qp)は逆量子化関数である。
IQ={iq(i,j,qp)| i,j=0,…,3}・・・数式20
以上のデコード処理を踏まえつつ、図10におけるステップS124以降の処理を説明する。ステップS122における第2変換・量子化部132の処理によって得られた行列Mに対し、第3逆量子化・逆変換128は、第3の逆量子化・逆変換を行う(ステップS124)。さらに、第3の逆量子化・逆変換により得られたOの各要素を該当するブロックのd(0,0)にセットする。
次に、各ブロックに関して係数行列(D)に対する処理を行う。まず、DC係数チェック部122は、係数行列(D)のDC係数すなわちd(0,0)が基準範囲内に含まれるか否かをチェックする(ステップS103)。
ここでd(0,0)と比較する基準範囲は、実施の形態1において説明したのと同様に、逆量子化・逆変換後の丸め処理によって定まる。ここで、実施の形態1の場合と同様に、H.264での丸めが利用される場合には、基準範囲は,−33より大きく32未満の範囲である。
DC係数が基準範囲内に含まれる場合には(ステップS103,Yes)、AC係数チェック部123は、係数行列(D)のAC係数がゼロか否かをチェックする(ステップS104)。AC係数がゼロである場合には(ステップS104,Yes)、当該ブロックに対してエントロピー符号化を施さずに、次のブロックの処理に移行する(ステップS108)。一方、DC係数が基準範囲内に含まれない場合には(ステップS103,No)、エントロピー符号化部124は、当該ブロックのエントロピー符号化を行う(ステップS107)。そして、次のブロックの処理に移行する(ステップS108)。
また、ステップS104において、DのAC係数がゼロでなかった場合(ステップS104,No)、第1逆量子化・逆変換部126は、第1の逆量子化・逆変換処理を行う(ステップS105)。そして、第1の逆量子化・逆変換処理の結果がゼロであるかどうかの判定を行う(ステップS106)。
処理の結果がゼロである場合には(ステップS106,Yes)、当該ブロックに対してエントロピー符号化を行わずに、次のブロックの処理に移行する(ステップS108)。一方、処理の結果がゼロでない場合には、エントロピー符号化部124は、当該ブロックのエントロピー符号化を行った後に、次のブロックの処理に移行する(ステップS107、ステップS108)。そして、全てのブロックの対する処理が完了すると、画像符号化装置10の符号化処理が完了する。
実施の形態3においては、16×16手法における輝度ブロック16個からなるマクロブロック単位の処理として説明を行ったが、これに対応する色差ブロック8個(4:2:2の場合)に対しても同様の処理を行う。
ただし、この場合には、16個のブロックのDC成分においては、DC成分から新たに4×4ブロックを構成し、このブロックに対して、数式13および数式14で表される処理を4個のブロックに関して実行するようにする。すなわち、数式13および数式14で表される処理を数式21から数式24で表される処理に置き換えて、Cb,Crに関してそれぞれ実行すればよい。
H={h(i,j)=g(i*4,j*4),| i,j=0,1}・・・数式21
J=L・H・・・数式22
L={l(i,j)| i,j=0,1}・・・数式23
M={Y(q(0,0,qp)*j(i,j),qp)j=0,1}・・・数式24
なお、実施の形態3に係る画像符号化装置10のこれ以外の構成および処理は、実施の形態1に係る画像符号化装置10の構成および動作と同様である。
(実施の形態4)
次に、実施の形態4にかかる画像符号化装置10について説明する。実施の形態4にかかる画像符号化装置10は、実施の形態2にかかる画像符号化装置10と同様に、エンコード時にデコード画像を作成する。
図13は、実施の形態4にかかる符号化部120の詳細な機能構成を示すブロック図である。実施の形態4にかかる符号化部120は、図9を参照しつつ説明した実施の形態3の符号化部120の機能構成に加えて、第2逆量子化・逆変換部127を有している。第2逆量子化・逆変換部127は、エンコード時にデコード画像を作成する場合には、AC係数が全てゼロであり、かつDC係数が基準範囲内の値となる係数行列に対して、逆量子化・逆変換を行う。
図14は、実施の形態4に係る画像符号化装置10の画像符号化処理を示すフローチャートである。実施の形態4にかかる画像符号化処理において、ステップS107においてエントロピー符号化を行う場合その直前に、第2逆量子化・逆変換部127が第2の逆量子化および逆変換を行う(ステップS109)。このとき第2逆量子化・逆変換部127は、第1逆量子化・逆変換部126が施す処理に比べて簡略な処理を施す。従って、実施の形態4にかかる画像符号化装置10においても実施の形態2にかかる画像符号化装置10と同様に、処理の高速化を図ることができる。
なお、実施の形態4に係る画像符号化装置10のこれ以外の構成および処理は、実施の形態1または実施の形態2において説明した画像符号化装置10の構成および動作と同様である。
(実施の形態5)
次に、実施の形態5にかかる画像符号化装置10について説明する。実施の形態5にかかる画像符号化装置10は、処理対象となる係数行列が、作成済みの係数リストに含まれるか否かを判定することにより、当該係数行列に対しエントロピー符号化処理を行うか否かを決定する。
図15は、実施の形態4にかかる符号化部120の詳細な機能構成を示すブロック図である。実施の形態4にかかる符号化部120は、変換・量子化部121と、エントロピー符号化部124と、係数チェック部140と、非符号化係数保持部141とを有している。
非符号化係数保持部141は、逆量子化および逆変換の結果ゼロになるDの係数リストを保持している。係数チェック部140は、非符号化係数保持部141に保持されている係数リストを利用して、逆量子化および逆変換の結果ゼロになるか否かを判定する。
なお、非符号化係数保持部141を利用したチェック部140の処理は、実施の形態1におけるAC係数チェック部123およびDC係数チェック部122による処理に対応する。
図16−1および図16−2は、非符号化係数保持部141が保持する係数リストを示している。係数リストには、逆量子化・逆変換した場合にゼロになるDと、各DのAC係数およびDC係数の範囲とが対応付けられている。したがって、係数チェック部140は、非符号化係数保持部141に保持されている係数リストを参照することにより、逆変換した場合にゼロになるか否かを判断することができる。すなわち、係数リストを参照することによりエントロピー符号化処理の実行の有無を決定することができる。
本実施の形態にかかる係数リストには、上述したようなH.264の規格仕様書に沿ったIC,IQおよび、C,Qを用いた場合における、逆量子化・逆変換によってFがゼロになるEの係数が示されている。
リストの最初にはAC係数がゼロで、かつ逆量子化・逆変換処理結果がゼロになる場合のDC係数の範囲とQP値とが示されている。最初のQP=0はQPの値が0である場合であることを示している。続いてカギ括弧で囲まれた値がDC係数の上限値(3)および下限値(−3)である。
次にAC係数が非ゼロの場合のリストが示される。最初のQP=0は上記と同様QPの値が0であることを示し、それに続く括弧で囲まれた連続する16の整数が逆量子化・逆変換後にゼロとなる係数集合を示している。この16整数は4×4行列の係数である。なお図16−1および図16−2においては、各行における4列を連続して表記している。
例えば図3−3の行列をこの表記に直すと(2040010000000000)となる。係数リストに関してはQP値と、全係数が一意に決まれば良く、本発明はこの表記法には依存しない。
このリストは、例えば全てのとりうるEの係数の組み合わせに関して、全てのとりうる量子化値についての逆量子化・逆変換処理を行い、結果がゼロとなるものをリストに挙げるという方法を符号化方式毎に一度だけ行うことによって作成される。
H.264において4×4手法でAC係数が全て0である場合は図16−1および図16−2に示す係数リストにおいて、AC係数が全て0の場合に示した通りである。
図17は、実施の形態1において逆量子化・逆変換の結果がゼロになると判定した条件、すなわちAC係数が全て0である場合の各QP(0〜51)に関するu(0,0,qp)の値を示している。
例えば、QP=0の場合はu(0,0,0)=10であるので、d(0,0)*10が−32より大きく31未満の範囲に含まれるのは整数係数d(0,0)の値が−3,−2,−1,0,1,2,3の場合のみであり、Dがゼロではなく、DのAC係数がゼロであるという条件からd(0,0)の値は−3,−2,−1,1,2,3の6通りのみである。これは、図16に示すQP=0の場合のDC係数の範囲に対応している。同様にQP=1の場合はu(0,0,1)=11であるのでd(0,0)の値が−2,−1,1,2の4通りのみとなる。これは、図16に示すQP=1の場合のDC係数の範囲に対応している。
このように、上述の方法によって作成された係数リストに示される値は、実施の形態1において逆量子化・逆変換の結果がゼロになると判定した条件に対応している。
ここで、係数チェック部140による係数リストを用いた係数チェックの手法について、図18、図19−1〜図19−3を参照しつつ説明する。
図18は4×4手法において逆量子化・逆変換結果がゼロになる係数集合のリストを示している。ある係数集合が図18の係数リストに含まれるか否かをチェックする際、係数リストから図19−1〜図19−3に示すチェック関数を作成する。図19−1〜図19−3は、QP=0の場合のチェック関数を示している。図19−1〜図19−3に示す関数がコールされた場合、係数を1つずつチェックしながら、入力係数の該当する分岐の処理に入る。そして、係数リストに無い場合はFalseが返され、係数リストにある場合にはTrueが返される。このように、16個の係数を入力とし、TrueまたはFalseのBool値を出力する(図19−1の行0参照)。
例えば、図18の係数リストの2行目の( -1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 )は、図19−2の行51の分岐に入る。そしてTlueが返される。また、係数リストの1行目の(-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0)は、図19−2の行84の分岐に入る。そしてTrueが返される。
また例えば、QP=0の場合に(-1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 )という係数列が入力されて上記の関数がコールされた場合、c[0]=−1の分岐に入り(行8)、さらにc[1]=0の分岐に入り(行12)、その後c[2]=0,c[3]=0,…,c[11]=1の分岐に入り(行21)、c[12]=0,c[13]=0, c[14]=0,c[15]=0(行34)の分岐に入る、そしてTrueが返される。
一方、QP=0で(55 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 )の場合、最初のswitch文(行1)で3,2,1,−1,−2,−3のどのcaseにも入らないため、行120においてdefault分岐に入る。そしてFalseが返される。
以上のように16個の係数の比較を行うことによって、逆量子化・逆変換結果がゼロになるか否かを判定することができる。
上記の関数ではAC係数がゼロの場合と非ゼロの場合とに分けずに全ての係数の分岐をswitch case文を用いて表したが、他の例としては図16のリストのようにまず、AC係数がゼロの場合とそうではない場合とに分け、前者の場合はDC係数の上限値および下限値(図16のカギ括弧で囲んだ値)とDC係数との比較を行い上限値より大きいあるいは下限値より小さい場合にFalseを返し、それ以外の場合にはTrueを返すこととしてもよい。この場合も、上記実施の形態5にかかる処理と同様に、逆量子化・逆変換結果がゼロになるか否かを判定することができる。
図20は、実施の形態4にかかる画像符号化装置10の符号化処理を示すフローチャートである。実施の形態4にかかる画像符号化装置10においては、変換・量子化部121が変換・量子化処理を行った後に(ステップS102)、係数チェック部140が、変換・量子化部121から出力された係数行列(D)が非符号化係数保持部141に保持されている係数リストに含まれるかどうかをチェックする(ステップS113)。
係数行列(D)が係数リストに含まれている場合には(ステップS113,Yes)、エントロピー符号化を行わずに、次のブロックに移行する(ステップS108)。また、係数行列(D)が係数リストに含まれていない場合には(ステップS113,No)、エントロピー符号化を行い(ステップS107)、次のブロックに移行する(ステップS108)。
なお、実施の形態5にかかる画像符号化装置10は、4×4手法により符号化処理を行ったが、これにかえて、16×16手法により符号化処理を行ってもよい。この場合は実施の形態3にかかる図10のステップS124の後に各ブロックの係数行列(D)において、係数がリストと一致するか否かのチェックを行って、本実施の形態と同様に処理を行えばよい。
図21−1および図21−2は、この場合に係数チェック部140が利用する係数リストを示している。図21に示す係数リストは、4×4手法の場合と同様にH.264の規格仕様書に沿ったIC,IQ,IX,IL,IYおよび、C,Q,L,X,Yを用いた場合、逆量子化・逆変換によってFがゼロになる場合のEの係数を示している。すなわち、16×16手法を用いて逆量子化・逆変換処理をする場合に結果がゼロになる係数組み合わせのリストである。
図21−1および図21−2に示す係数リストにおいて、AC係数が全て0となるのは、係数リストの最初に並べられた、AC係数が全て0の場合である。これは、実施の形態2にかかる画像符号化装置10が逆量子化・逆変換結果がゼロになると判定した条件と一致している。16×16手法においては全てのQPにおいてDのAC係数がゼロならば、d(0,0)が−32より大きく31未満の範囲である場合に逆量子化・逆変換結果がゼロになる。
また他の例としては、実施の形態5においては、非符号化係数保持部141は、QP値と係数行列(D)とを対応付けて保持していたが、QP値が一定である場合にはQP値を保持しなくともよい。
なお、実施の形態5に係る画像符号化装置10のこれ以外の構成および処理は、実施の形態1に係る画像符号化装置10の構成および動作と同様である。
(実施の形態6)
次に実施の形態6にかかる画像符号化装置10について説明する。実施の形態6にかかる画像符号化装置10は、エンコード時に逆変換処理を行う。
図22は、実施の形態6にかかる符号化部120の詳細な機能構成を示すブロック図である。実施の形態6にかかる符号化部120は、第4逆量子化・逆変換部129を有している。第4逆量子化・逆変換部129は、実施の形態1にかかる逆量子化・逆変換部125と同様に、逆量子化および逆変換を行う。
図23は、実施の形態6にかかる画像符号化装置10の画像符号化処理を示すフローチャートである。実施の形態6にかかる画像符号化装置10においては、エントロピー符号化を行う場合その直前に、第4逆量子化・逆変換部129が、第4の逆量子化および逆変換を行う(ステップS114)。
なお、実施の形態6に係る画像符号化装置10のこれ以外の構成および処理は、実施の形態5に係る画像符号化装置10の構成および動作と同様である。
また、他の例としては、第4逆量子化・逆変換部129に替えて、DC係数のみ非ゼロの場合には実施の形態2にかかる第2逆量子化・逆変換部127を用い、それ以外の場合は実施の形態2にかかる第1逆量子化・逆変換部126を用いてもよい。
(実施の形態7)
次に、実施の形態7にかかる画像符号化装置10について説明する。実施の形態5にかかる画像符号化装置10は、取り得る係数値と量子化値の全てについて逆量子化・逆変換を行った。これに対して、実施の形態7にかかる画像符号化装置10は、所定の条件に当てはまらない係数集合は、逆量子化・逆変換結果がゼロとはならないと判断する。すなわち、これらの係数集合に対しては、逆量子化・逆変換を行わない。そして、その他の係数集合、すなわち所定の条件に当てはまる係数集合に対してのみ逆量子化・逆変換を行う。これにより、係数リストを作成する処理を高速化することができる。
図24は、実施の形態6にかかる符号化部120の詳細な機能構成を示すブロック図である。実施の形態6にかかる係数チェック部140は、図25に示す処理を行う。
図25は、ある係数について係数リストに追加するか否かを判断する処理を示すフローチャートである。ここで、これから判断を行う係数を候補係数と呼ぶ。
候補係数と量子化値が入力されると、まず、量子化値qpと16個の係数c(i,j)(i,j=0,…,3)に関して、c(i,j)*u(i,j,qp)の値がある範囲以内であるかどうかを判定する(S200)。ここでu(i,j)は上記で定義した通りである。また、ここで比較する値の範囲は、実施の形態1において説明したのと同様に基準範囲である。すなわち、丸めによって0になる範囲である。つまり、H.264においては、c(i,j)*u(i,j,qp)が−32以上でかつ31以下の範囲である。
c(i,j)*u(i,j,qp)の値が基準範囲内にある場合には(ステップS200,Yes)、逆量子化・逆変換が行われる(S201)。その結果がゼロである場合には(ステップS202,Yes)、そのQPに対する候補係数を係数リストに追加する(S203)。逆量子化・逆変換の結果がゼロでない場合には(ステップS202,No)、候補係数は係数リストに追加されない。この場合候補係数はそのQPに関して逆量子化・逆変換した結果がゼロにはならないためである。
また、c(i,j)*u(i,j,qp)が基準範囲内にない場合(ステップS200,No)、候補係数は係数リストには追加されない。以上で、係数を追加するか否かを判断する処理が完了する。
上記処理においては、逆量子化の前処理に用いる値は、iq(i,j,qp)である。この値はQPにのみ依存する場合もあり、またQPおよびi,jに依存する場合もある。
例えば、図26に示すようにiq(i,j,QP)= LevelScale(QP%6,i,j)とiq(i,j,QP)が定義される場合には、i,jに応じて逆量子化前処理に使われる値が異なる。ここでc(i,j)は変換係数であり、w(i,j)は逆量子化後の係数である。
図27−1から図27−3は、図26に示すiq(i,j,qp)における各c(i,j)が1である場合に逆量子化結果w(i,j)がどのようになるかをいくつかのQPの場合を例に示している。
図27−1は、QP=0の場合の行列u(i,j,0)を示している。QP=0の場合、図26に示したQP%6は0となる。従って、LevelScaleの値は(0,0),(0,2),(2,0),(2,2)の位置で10になる。また(1,1),(1,3),(3,1),(3,3)の位置で16、それ以外の位置で13となる。従って、u(i,j,0)は図27−1に示す行列となる。
また、図27−3は、QP=6の場合の行列u(i,j,6)を示している。この場合、LevelScaleの値はQP=0の場合と同様になり、QP%6の値が異なる。従って、この場合の係数は、QP=0の場合のそれぞれの係数を2倍した値となる。
また、図27−2は、QP=3の場合の行列u(i,j,3)を示している。QP%6が3であるので、図26のv行列の上から4行目の値を用いる。従って、u(i,j,3)は図27−2に示す行列となる。
本発明はiqの定義がQPのみに依存する場合も、上記のようにi,jに依存する場合にも同様に適用可能である。
以下、QP=0の場合に、図28−1から図28−4に示す候補係数を用いて、図25に示した係数リストへの追加処理をより具体的に説明する。
図28−1に示す候補係数310のDC係数は3、これに対応するu(0,0,0)は10であり、3*10=30となる。従ってc(i,j)*u(i,j,qp)は、基準範囲に含まれている。また、他の15係数はいずれも0であるからステップS200からステップS201へと進む。
この係数を逆量子化・逆変換した結果はゼロとなる(ステップS202,Yes)。従って、ステップS203へ進み、候補係数310は係数リストに追加される(S203)。以上で、係数リストへの追加処理が完了する。
図28−2に示す候補係数毎に対応する逆量子化値をかけると、行列322が得られる。行列322のいずれの係数においても、c(i,j)*u(i,j,QP)は基準範囲に含まれている。したがって、ステップS200からステップS201へ進む。
この係数を逆量子化・逆変換した結果はゼロとなる(S202,Yes)。従って、ステップS203へ進み、候補係数320は、係数リストに追加される(S203)。
図28−3に示す係数毎に対応するu(i,j,qp)を掛けると行列332が得られる。行列332のいずれの係数もc(i,j)*u(i,j,qp)は、基準範囲に含まれているので、ステップS200からステップS201へ進む。
この係数を逆量子化・逆変換した結果はゼロとならず(S202,No)。従って、候補係数330は、係数リストに追加されずに処理が完了する。
図28−4に示す係数毎に対応するu(i,j,qp)を掛けると行列342が得られる。行列342においては、c(i,j)*u(i,j,qp)が基準範囲内にないので、逆量子化・逆変換は行われず、また候補係数340は係数リストに追加されずに処理が完了する。
なお、実施の形態7に係る画像符号化装置10のこれ以外の構成および処理は、実施の形態6に係る画像符号化装置10の構成および動作と同様である。
以上の説明は4×4手法を例にとって行ったが、16×16手法においても本発明を適用可能である。16×16手法を用いる場合はブロックのDC係数以外に対して、S200のチェックを行い、DC係数に対してはu(0,0,qp)を乗算せずにDC係数がある値の範囲(H.264の場合−32から31)内かどうかのチェックを行えばよく、それ以外は上記において説明した処理と同様である。
また、上記の説明ではAC係数がゼロの場合と非ゼロの場合との場合分けを行わずに係数リストへ追加したが、ここで作成される係数リストから、AC係数がゼロであるものを抽出し、DC係数部分の上限値および下限値を探索するのは容易である。実施の形態4に係る非符号化係数保持部141が保持する図15に示す係数リストや実施の形態5にかかる非符号化係数保持部141が保持する図17に示す係数リストを簡単に作成することができる。
また他の例としては、エンコード時に当該係数リストが存在しない場合に、逆量子化および逆変換した結果がゼロになるか否かを判定するために上記処理をおこなってもよい。
例えば、図29に示す符号化部120の構成において、係数チェック部140が図25のステップS200におけるチェックを行い、Yesの場合のみ逆量子化・逆変換部125が逆量子化・逆変換を行う。そして、逆量子化および逆変換の結果がゼロになる場合はエントロピーコーディングを行わない。また、ステップS200のチェックでNoの場合はエントロピー符号化部124でエントロピー符号化を行う。
以上、本発明を実施の形態を用いて説明したが、上記実施の形態に多様な変更または改良を加えることができる。
そうした変更例としては、本実施の形態にかかる画像符号化装置10は、動画像に対する符号化処理を行ったが、これにかえて静止画に対する符号化処理を行ってもよい。直交変換ベースの静止画像符号化装置の構成は、図1を参照しつつ説明した実施の形態1にかかる画像符号化装置10とほぼ同様である。すなわち、静止画像符号化装置は、主に減算器110と、符号化部120とを有している。また、符号化部120の機能構成は、図2を参照しつつ説明した実施の形態1にかかる画像符号化装置10の符号化部120の機能構成と同様である。
このように、実施の形態にかかる符号化処理は動画象および静止画像のいずれに対しても適用することができる。
以上のように、本発明にかかる画像符号化装置、画像符号化方法および画像符号化プログラムは、直交変換を行う装置等に有用であり、特に、画像符号化装置に適している。
実施の形態1にかかる画像符号化装置10の機能構成を示すブロック図である。 符号化部120の詳細な機能構成を示すブロック図である。 係数行列210の一例を示す図である。 係数行列210の一例を示す図である。 係数行列210の一例を示す図である。 画像符号化装置10の符号化処理を示すフローチャートである。 画像符号化装置10のハードウェア構成を示す図である。 実施の形態2にかかる符号化部120の詳細な機能構成を示すブロック図である。 実施の形態2にかかる画像符号化装置10の符号化処理を示すフローチャートである。 第1逆量子化・逆変換部126が処理する行列演算式を示す図である。 第2逆量子化・逆変換部127が処理する行列演算式を示す図である。 実施の形態3にかかる符号化部120の詳細な機能構成を示すブロック図である。 実施の形態3にかかる画像符号化装置10の符号化処理を示すフローチャートである。 行列Hに対する量子化および変換処理を説明するための図である。 行列Dに対する逆量子化および逆変換処理を説明するための図である。 実施の形態4にかかる符号化部120の詳細な機能構成を示すブロック図である。 実施の形態4に係る画像符号化装置10の画像符号化処理を示すフローチャートである。 実施の形態4にかかる符号化部120の詳細な機能構成を示すブロック図である。 非符号化係数保持部141が保持する係数リストを示す図である。 非符号化係数保持部141が保持する係数リストを示す図である。 非符号化係数保持部141が保持する係数リストを示す図である。 AC係数が全て0である場合の各QP(0〜51)に関するu(0,0,qp)の値を示す図である。 4×4手法において逆量子化・逆変換結果がゼロになる係数集合のリストを示す図である。 QP=0の場合のチェック関数を示す図である。 QP=0の場合のチェック関数を示す図である。 QP=0の場合のチェック関数を示す図である。 実施の形態4にかかる画像符号化装置10の符号化処理を示すフローチャートである。 係数リストを示す図である。 係数リストを示す図である。 実施の形態6にかかる符号化部120の詳細な機能構成を示すブロック図である。 実施の形態6にかかる画像符号化装置10の画像符号化処理を示すフローチャートである。 実施の形態6にかかる符号化部120の詳細な機能構成を示すブロック図である。 ある係数について係数リストに追加するか否かを判断する処理を示すフローチャートである。 iq(i,j,QP)を示す図である。 QP=0の場合の行列u(i,j,0)を示す図である。 QP=3の場合の行列u(i,j,3)を示す図である。 QP=6の場合の行列u(i,j,6)を示す図である。 候補係数と逆量子化後の行列を示す図である。 候補係数と逆量子化後の行列を示す図である。 候補係数と逆量子化後の行列を示す図である。 候補係数と逆量子化後の行列を示す図である。 実施の形態7にかかる符号化部120の詳細な機能構成を示すブロック図である。
符号の説明
10 画像符号化装置
51 CPU
52 ROM
53 RAM
57 通信I/F
62 バス
110 減算器
112 加算器
114 フレームメモリ
116 動き補償部
120 符号化部
121 変換・量子化部
122 AC係数チェック部
123 DC係数チェック部
124 エントロピー符号化部
125 逆量子化・逆変換部
126 第1逆量子化・逆変換部
127 2逆量子化・逆変換部
128 第3逆量子化・逆変換部
129 第4逆量子化・逆変換部
130 第1変換・量子化部
132 第2変換・量子化部
140 係数チェック部
141 非符号化係数保持部

Claims (9)

  1. 直交変換を用いて画像を符号化する画像符号化装置であって、
    直交変換および量子化が行われた後のDCT(Discrete Cosine Transform)係数が逆変換後にゼロになるか否かを、前記DCT係数のAC(交流)係数およびDC(直流)係数のうち少なくとも一方に基づいて判定する係数チェック手段と、
    前記係数チェック手段が前記DCT係数が逆変換後にゼロにならないと判断した場合に、当該DCT係数に対して、エントロピー符号化を行うエントロピー符号化手段と
    を備えたことを特徴とする画像符号化装置。
  2. 逆変換後にゼロになるDCT係数のAC係数およびDC係数のうち少なくとも一方の係数を非符号化係数として記憶する非符号化係数記憶手段をさらに備え、
    前記係数チェック手段は、前記DCT係数記憶手段に記憶されている前記非符号化係数と、対応する前記DCT係数とを比較して、当該DCT係数が逆変換後にゼロになるか否かを判定することを特徴とする請求項1に記載の画像符号化装置。
  3. 前記係数チェック手段が、前記非符号化係数記憶手段に記憶されている前記非符号化係数と、対応する前記DCT係数とを比較した結果、前記DCT係数が逆変換後にゼロになると判断できない場合に、当該DCT係数に対して逆量子化および逆変換を行う逆量子化・逆変換手段をさらに備え、
    前記エントロピー符号化手段は、前記逆量子化・逆変換手段が逆量子化および逆変換を行った後の前記DCT係数がゼロになると判断できない場合に、当該DCT係数に対してエントロピー符号化を行うことを特徴とする請求項2に記載の画像符号化装置。
  4. 前記係数チェック手段が、前記非符号化係数記憶手段に記憶されている前記非符号化係数と、対応する前記DCT係数とを比較した結果、前記DCT係数が逆変換後にゼロになると判断できない場合に、当該DCT係数に対して逆量子化および逆変換を行う逆量子化・逆変換手段をさらに備え、
    前記非符号化係数記憶手段は、前記逆量子化・逆変換手段が逆量子化および逆変換を行った後の前記DCT係数がゼロになると判断できない場合に、当該DCT係数を前記非符号化係数として記憶することを特徴とする請求項2記載の画像符号化装置。
  5. 前記非符号化係数記憶手段は、前記非符号化係数に対応付けて、当該非符号化係数を定める基準とした量子化値をさらに記憶し、
    前記係数チェック手段は、前記DCT係数の量子化値に対応付けて前記DCT係数記憶手段に記憶されている前記非符号化係数と、対応する前記DCT係数とを比較して、当該DCT係数が逆変換後にゼロになるか否かを判定することを特徴とする請求項4に記載の画像符号化装置。
  6. 前記係数チェック手段は、前記DCT係数のDC係数が予め定められた基準範囲内の値であるか否かをチェックするDC係数チェック手段を有し、
    前記エントロピー符号化手段は、前記DC係数チェック手段が前記DC係数が前記基準範囲外の値であると判定した場合に、当該DCT係数に対してエントロピー符号化を行うことを特徴とする請求項1に記載の画像符号化装置。
  7. 前記係数チェック手段は、
    前記DCT係数のDC係数が予め定められた基準範囲内の値であるか否かを判定するDC係数チェック手段と、
    前記DCT係数のAC係数がゼロであるか否かを判定するAC係数チェック手段と
    を有し、
    前記AC係数チェック手段が前記AC係数がゼロではないと判定した場合に、前記DCT係数の逆量子化および逆変換を行う逆量子化・逆変換手段をさらに備え、
    前記逆量子化・逆変換手段が前記DCT係数の逆変換を行った後の前記DCT係数がゼロにならない場合に、当該DCT係数に対してエントロピー符号化を行うことを特徴とする請求項1に記載の画像符号化装置。
  8. 直交変換を用いて画像を符号化する画像符号化方法であって、
    直交変換および量子化が行われた後のDCT係数が逆変換後にゼロになるか否かを、前記DCT係数のAC係数およびDC係数のうち少なくとも一方に基づいて判定する係数チェックステップと、
    前記係数チェックステップにおいて前記DCT係数が逆変換後にゼロにならないと判断された場合に、当該DCT係数に対してエントロピー符号化を行うエントロピー符号化ステップと
    を有することを特徴とする画像符号化方法。
  9. 直交変換を用いて画像を符号化する画像符号化処理をコンピュータに実行させる画像符号化プログラムであって、
    直交変換および量子化が行われた後のDCT係数が逆変換後にゼロになるか否かを、前記DCT係数のAC係数およびDC係数のうち少なくとも一方に基づいて判定する係数チェックステップと、
    前記係数チェックステップにおいて前記DCT係数が逆変換後にゼロにならないと判断された場合に、当該DCT係数に対して、エントロピー符号化を行うエントロピー符号化ステップと
    をコンピュータに実行させることを特徴とする画像符号化プログラム。
JP2003409498A 2003-12-08 2003-12-08 画像符号化装置、画像符号化方法および画像符号化プログラム Expired - Fee Related JP4253572B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003409498A JP4253572B2 (ja) 2003-12-08 2003-12-08 画像符号化装置、画像符号化方法および画像符号化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003409498A JP4253572B2 (ja) 2003-12-08 2003-12-08 画像符号化装置、画像符号化方法および画像符号化プログラム

Publications (2)

Publication Number Publication Date
JP2005175629A true JP2005175629A (ja) 2005-06-30
JP4253572B2 JP4253572B2 (ja) 2009-04-15

Family

ID=34730867

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003409498A Expired - Fee Related JP4253572B2 (ja) 2003-12-08 2003-12-08 画像符号化装置、画像符号化方法および画像符号化プログラム

Country Status (1)

Country Link
JP (1) JP4253572B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101351714B1 (ko) * 2009-10-21 2014-01-16 미쓰비시덴키 가부시키가이샤 비트 스트림 복호 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2684735C1 (ru) * 2018-05-25 2019-04-12 Публичное акционерное общество "Челябинский трубопрокатный завод" (ПАО "ЧТПЗ") Способ гибридной лазерно-дуговой сварки стальных труб с наружным плакирующим слоем

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101351714B1 (ko) * 2009-10-21 2014-01-16 미쓰비시덴키 가부시키가이샤 비트 스트림 복호 방법

Also Published As

Publication number Publication date
JP4253572B2 (ja) 2009-04-15

Similar Documents

Publication Publication Date Title
JP5128443B2 (ja) 映像の符号化、復号化の方法及びその装置
KR101684038B1 (ko) 동화상 복호 장치, 동화상 부호화 장치, 동화상 복호 방법, 및 동화상 부호화 방법
KR101365567B1 (ko) 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치
KR101311402B1 (ko) 영상의 부호화 방법 및 장치, 복호화 방법 및 장치
JP2010135864A (ja) 画像符号化方法及び装置並びに画像復号化方法及び装置
JP5545783B2 (ja) 画像シーケンスを表す符号化されたデータのストリームを復号する方法および画像シーケンスを符号化する方法
KR101500781B1 (ko) 이미지들을 처리하기 위한 방법 및 그 대응하는 전자 장치
JP2009518940A (ja) 画像の符号化方法及び装置、復号化方法及び装置
JP2006157881A (ja) 可変長符号化装置及びその方法
JP2009218742A (ja) 画像符号化装置
WO2020036132A1 (ja) 画像符号化装置、画像復号装置、及びプログラム
JP5004180B2 (ja) 動画像符号化装置および復号装置
JP4829019B2 (ja) 通信端末装置
JP4901450B2 (ja) 動画像符号化装置
JP2006180298A (ja) 画像符号化制御方法及びその装置
JP2023168518A (ja) 予測ブロック生成装置、画像符号化装置、画像復号装置、及びプログラム
JP2007013298A (ja) 画像符号化装置
KR20170114598A (ko) 적응적 색상 순서에 따른 색상 성분 간 예측을 이용한 동영상 부호화 및 복호화 방법 및 장치
WO2014005930A1 (en) Spatial prediction with increased number of possible coding modes
US20220337837A1 (en) Architecture for rate estimation in video coding
JP4253572B2 (ja) 画像符号化装置、画像符号化方法および画像符号化プログラム
WO2014084674A2 (ko) 잔차 변환을 이용한 인트라 예측 방법 및 장치
KR102599267B1 (ko) 화상 부호화 장치, 화상 부호화 방법 및 프로그램, 화상 복호 장치, 화상 복호 방법 및 프로그램
JP4367354B2 (ja) 画像符号化装置
KR20170037815A (ko) 반도체 장치 및 화상 부호화 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070227

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080520

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080722

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: 20090120

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: 20090126

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140130

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees