JP2004007736A - Device and method for decoding image - Google Patents
Device and method for decoding image Download PDFInfo
- Publication number
- JP2004007736A JP2004007736A JP2003168385A JP2003168385A JP2004007736A JP 2004007736 A JP2004007736 A JP 2004007736A JP 2003168385 A JP2003168385 A JP 2003168385A JP 2003168385 A JP2003168385 A JP 2003168385A JP 2004007736 A JP2004007736 A JP 2004007736A
- Authority
- JP
- Japan
- Prior art keywords
- frame
- image
- decoding
- inter
- intra
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、例えばテレビ電話等における動画像データの符号化や復号化のために用いる画像の復号化装置とその方法に関するものである。
【0002】
【従来の技術】
近年、テレビ電話やテレビ会議システムなどにおける動画像データを伝送、あるいは記録するために、画像圧縮の技術は、低ビットレート化に伴い、より以上の高圧縮率を実現する方法が要求されてきている。これらの技術として、ISO/IECにおけるMPEG1/2、ITU−TにおけるH.261、H.263等が標準化されている。
【0003】
図17は、従来の画像符号化装置のブロック図であり、又図18はその符号化装置に対応する画像復号化装置のブロック図であり、ITU−T標準のH.263を実現するものである。
【0004】
図17において、入力画像をフレーム内符号化する場合は、フレーム内・フレーム間符号化切り替えスイッチ11が上側に切り替えられる。入力画像はDCT5により離散コサイン変換された後、量子化器6で量子化されて、更にハフマン符号化器12で可変長符号化され、MUX(マルチプレクサ、多重化部)14で多重化されてビットストリームとして出力される。この時、量子化器6で量子化された信号の一部は逆量子化器7により逆量子化され、更に逆DCT8で逆離散コサイン変換されて加算器9を通じてフレーム遅延メモリ3に参照画像として格納される。この例では、アドバンスド動き補償モード(Advanced Motion Compensation Mode)、すなわち符号化処理の単位は8×8のブロック単位である。
【0005】
一方、入力画像をフレーム間符号化する場合は、フレーム内・フレーム間符号化切り替えスイッチ11が下側に切り替えられる。入力画像は動き予測器1でフレーム遅延メモリ3に格納されている参照画像と比較されて各ブロック毎の動きベクトルが検出され、動きベクトルメモリ2に格納される。動き補償器4は、この動きベクトルに基づいて、各ブロック毎にそのブロックに対応する領域を参照画像中で探索することにより、参照画像から予測画像を生成する。すなわち、参照画像に対して動き補償を行う。このようにして生成された予測画像と入力画像との残差を減算器10で求め、その残差信号をDCT5及び量子化器6を通して符号化し、更にハフマン符号化器12で可変長符号化し、MUX14で多重化してビットストリームとして出力する。この時、量子化された信号は逆量子化器7により逆量子化され、更に逆DCT8で逆離散コサイン変換され、更に加算器9により動き補償器4の出力である予測画像と加算されてフレーム遅延メモリ3に参照画像として格納される。又、動き予測器1で求められた動きベクトルは、動きベクトル符号化器13によって符号化された後、MUX14でハフマン符号化器12の出力である残差信号と多重化されて出力される。
【0006】
次に、図18において、前述の画像符号化装置により符号化されて出力されたビットストリームが画像復号装置に入力されると、DMUX(デマルチプレクサ、分離部)15により画像信号と動きベクトルの各符号化信号に分離される。画像信号はハフマン復号化器16で復号され、更に逆量子化器7、逆DCT8によって復号される。この時、画像信号がフレーム内符号化であれば、フレーム内・フレーム間符号化切り替えスイッチ18は上側に接続され、そのまま出力画像として出力される。又、この出力画像は参照画像としてフレーム遅延メモリ3に格納される。
【0007】
一方、DMUX15で分離された動きベクトルは、動きベクトル復号化器17で復号されて動きベクトルメモリ2に格納される。更に、この動きベクトルに基づいて、動き補償器4でフレーム遅延メモリ3の参照画像から予測画像が生成され、この生成された予測画像は加算器9により逆DCT8から出力された画像信号と加算される。この時に、画像信号がフレーム間符号化信号(つまり、残差信号である)であれば、フレーム内・フレーム間符号化切り替えスイッチ18は下側に接続され、加算された信号が出力画像として出力される。
【0008】
ここで、動き予測器1では、図19(a)に示すように、入力画像を8×8のブロックに分割した各ブロックについて、その対象ブロックと最も相関の強い領域を参照画像中で探索し、その偏位を求めることにより動きベクトルを求める。この時、例えば図19(b)に示すように、あるブロックCの周辺のブロックT,B,L,Rに対応する参照画像中の領域は、ブロックCに対応する領域と一部重なったり、あるいは間隔をおいて離れたりすることが起こる。その結果それらの探索された各領域から予測画像を構成すると、画像に重なりや不連続な部分が生じて画質が劣化する。そこで、このような画質の劣化を防ぐために、対象ブロック周辺の画素を考慮に入れるために、対象ブロックの上下左右のブロックの動きベクトルを用いて予測画像を修正していた。すなわち、図19(b)に示すように、ブロックCの予測値を得るために、そのブロックC及び、上下左右のブロックT,B,L,Rの動きベクトルからそれら5つのブロックに対応する参照画像中の領域をそれぞれ求め、その5つの領域から画素を読み出し、図20に示す各ブロック毎に設定されている係数を乗じて加算し、最後に8で除して正規化する。各ブロックについても同様の処理を行い、それらを用いて予測画像を得る。図17及び図18における動きベクトルメモリ2の出力に示した近傍動きベクトルがそれを表している。
【0009】
上記の方法により、画像に生じる不連続部分が緩和され画質が向上する。又、低いビットレートで、予測誤差(残差)を十分符号化できないときは動きベクトルだけが伝送され予測画像だけが伝送されることになるが、その場合でも、予測画像はオーバーラップして生成されるため、動きが均一な部分ではシャープな画像が得られ、不均一な部分では滑らかな画像が得られる。
【0010】
【発明が解決しようとする課題】
しかしながら、上記のような従来の方法では、対象ブロック周囲の上下左右のブロックの動きベクトルを用いて予測画像を生成するので、同じ参照画像を用いなければ整合が取れず、参照する画像が前フレームに限定される等、拡張性に欠けるという課題がある。
【0011】
また、例えばMPEG1/2では、IBBBPBBPBBP構造により、P画像データはB画像によらず独立して符号化することができる。ところがMPEG1/2では、ビットストリームは多重化されて定義されておらず、シーケンシャルにやってくるため、CPUやDSPで構成した場合、テンプレート(代表フレーム)のビットが巨大である時に所定の時間内にIフレームの復号化が出来ない場合が生じる。
【0012】
図21は、従来の画像復号化装置における復号処理のタイミングを示す図である。図21において、t0,t1はテンプレートを示し、p0,p1,・・・p6は一般フレームを示す。上側の図では、テンプレートt0,t1の復号処理に時間がかからず表示タイミングに間に合っているので、p0から順次フレーム表示されている。一方、下側の図では、テンプレートt1(p4)の復号処理に時間がかかりp4の表示タイミングに間に合わない。このとき、p3,p4の復号処理は当然ながらスキップ出来ないため、フレーム表示タイミングまでバッファにより余裕を設けて、予めp4の復号処理が遅延した場合は、p5,p6の復号処理をスキップして、次のテンプレートの復号処理を行うようにすれば、この問題に対処することが可能である。
【0013】
しかしながら、上記のように単一ビットストリームで伝送する方法では、次のテンプレートのビットストリームがくるまでビットを一々解釈しなければならず、一般フレームの処理をスキップしても処理時間の短縮が十分に行えないという課題がある。
【0014】
本発明は、従来の画像復号化におけるこのような課題を考慮し、エラー耐性、低遅延の画像伝送が行える画像復号化装置とその方法を提供することを目的とするものである。
【0015】
【課題を解決するための手段】
上記の目的を達成するために、第1の本発明は、画像を符号化して生成された複数の符号化済データを含む画像データと、前記フレーム内復号化済画像及びフレーム間復号化済画像との相関を取り、その相関に基いて決定された参照画像を示す識別情報とを含むビットストリームから、前記識別情報に基いてフレーム内符号化済データとして識別された符号化済データをフレーム内復号化するフレーム内復号化手段と、前記フレーム内復号化手段の動作と並行して、前記フレーム内復号化手段により復号化された符号化済データを参照データとして、前記識別情報に基いてフレーム間符号化済データとして識別された符号化済データを、フレーム間復号化するフレーム間復号化手段とを備えた画像復号化装置において、前記フレーム内復号化手段が前記符号化済データの前記フレーム内復号化を終了するまでに、前記フレーム間復号化手段による、前記所定の符号化済データよりも表示順番が前のフレーム内符号化済データを前記参照データとしてフレーム間符号化されたフレーム内符号化済データの前記フレーム間復号化が終了しない場合、
前記フレーム内復号化手段のフレーム内符号化済データの復号化の動作よりも、前記フレーム間復号化手段の前記フレーム間復号化の動作が優先して実行されることを特徴とする画像復号化装置である。
【0016】
また、第2の本発明は、画像を符号化して生成された複数の符号化済データを含む画像データと、前記画像と、フレーム内復号化済画像及びフレーム間復号化済画像との相関を取り、その相関に基いて決定された参照画像を示す識別情報とを含むビットストリームから、前記識別情報に基いてフレーム内符号化済データとして識別された符号化済データをフレーム内復号化するフレーム内復号化ステップと、
前記フレーム内復号化ステップと並行して行われる、前記フレーム内復号化ステップにて復号化された符号化済データを参照データとして、前記識別情報に基いてフレーム間符号化済データとして識別された符号化済データをフレーム間復号化するフレーム間復号化ステップとを備えた画像復号化方法において、
前記符号化済データの前記フレーム内復号化ステップが終了するまでに、前記フレーム間復号化ステップにおいて前記符号化済データよりも表示順番が前のフレーム内符号化済データを前記参照データとしてフレーム間符号化されたフレーム内符号化済データの復号化ステップが終了しない場合、前記フレーム内復号化ステップよりも、前記フレーム間復号化ステップを優先して行うことを特徴とする画像復号化方法である。
【0017】
【発明の実施の形態】
以下に、本発明をその実施の形態を示す図面に基づいて説明する。
(実施の形態1)
図1は、本発明にかかる第1の実施の形態の画像符号化装置の構成を示すブロック図であり、又、図2は、その画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。すなわち、その画像符号化装置には、参照画像を格納するフレーム遅延メモリ23、その参照画像と入力画像に基づいて動きベクトルを検出する動き検出手段としての動き予測器21a、その動きベクトルに基づき、参照画像から予測画像を生成する重み付き動き補償器22aが設けられ、又、参照画像としてテンプレート(代表フレーム)を格納するテンプレート格納メモリ24、そのテンプレート(フレーム遅延メモリ23の参照画像とは異なる参照画像)と入力画像に基づいて動きベクトルを検出する動き検出手段としての動き予測器21b、その動きベクトルに基づき、参照画像から予測画像を生成する重み付き動き補償器22bが設けられている。
【0018】
また、動き予測器21a及び21bで検出された動きベクトルを利用して、それら参照画像と入力画像との各相関度合を比較する相関比較器26、その比較の結果、相関の高い方の参照画像の重み付き動き補償器を選択する切り換え手段としての参照画像切り替えスイッチ27、その参照画像切り替えスイッチ27を介して出力された予測画像を格納する予測画像メモリ25、その予測画像メモリ25の予測画像と入力画像との残差を取る減算器10が設けられている。
【0019】
また、入力画像がフレーム内符号化かフレーム間符号化かにより切り替えられるフレーム内・フレーム間符号化切り替えスイッチ11、そのフレーム内・フレーム間符号化切り替えスイッチ11からの画像信号を離散コサイン変換するDCT5、その離散コサイン変換された信号を量子化する量子化器6、その量子化された信号を可変長符号化するハフマン符号化器12が設けられ、更に、相関比較器26の出力、すなわち切換情報としての切り替え制御ビットと、動き予測器21a及び21bからの動きベクトルのうち、切り替え制御ビットにより選択された方の動きベクトルとを多重化して符号化する多重動きベクトル符号化器28、その多重動きベクトル符号化器28の出力とハフマン符号化器12の出力とを多重化してビットストリームとして出力するMUX14が設けられている。
【0020】
更に、量子化器6の出力を逆量子化する逆量子化器7、その逆量子化された信号を逆離散コサイン変換する逆DCT8、その逆離散コサイン変換された信号と予測画像メモリ25に格納された予測画像とを加算して次の入力画像に対する参照画像を生成する加算器9、テンプレート格納メモリ24の参照画像を更新するためのテンプレート更新スイッチ19が設けられている。
【0021】
ここで、減算器10、DCT5及び量子化器6等が符号化手段を構成し、逆量子化器7、逆DCT8及び加算器9等が復号化手段を構成している。
【0022】
一方、図2の画像復号装置には、図1の画像符号化装置から出力されたビットストリームを入力し、画像信号(通常は残差信号)と多重動きベクトルに分離するDMUX15、その分離された画像信号を復号するハフマン復号化器16、その復号された信号を逆量子化する逆量子化器7、その逆量子化された信号を逆離散コサイン変換する逆DCT8が設けられ、又、DMUX15で分離された多重動きベクトルを復号化し、動きベクトルと切り替え制御ビットに分離する多重動きベクトル復号化器29、その分離された動きベクトルに基づいて、参照画像から予測画像を生成する重み付き動き補償器22c、その生成された予測画像を格納する予測画像メモリ25が設けられている。
【0023】
また、予測画像メモリ25の予測画像と逆DCT8の出力とを加算して出力画像を生成する加算器9、出力画像がフレーム内符号化かフレーム間符号化かにより切り替えられるフレーム内・フレーム間符号化切り替えスイッチ18、出力画像を参照画像として格納するフレーム遅延メモリ23、出力画像のうちテンプレートを参照画像として格納するテンプレート格納メモリ24が設けられ、更に、テンプレート格納メモリ24の参照画像を更新するためのテンプレート更新スイッチ19、参照画像を切り替え制御ビットによりフレーム遅延メモリ23とテンプレート格納メモリ24とで切り換える参照画像切り替えスイッチ27が設けられている。
【0024】
ここで、ハフマン復号化器16、逆量子化器7、逆DCT8及び多重動きベクトル復号化器30等が復号化手段を構成し、加算器9等が画像生成手段を構成している。又ここでは、動きベクトルの検出を16×16のブロック単位、いわゆるマクロブロック単位で行っている。尚、請求項に言うブロックとは、所定サイズのブロックであり、8×8のブロックは勿論のこと、このマクロブロックも含んでおり、更にはそれ以外のサイズのブロックであっても良い。
【0025】
次に、上記第1の実施の形態の画像符号化及び復号化装置の動作について、図面を参照しながら説明する。
【0026】
まず、一般フレームと代表フレーム(テンプレート)との対応について説明する。図3は一般フレームとテンプレートとの対応関係を示している。図3において、p0からp6は一般フレームを示し、t0,t1はテンプレートを示している。テンプレートt0は一般フレームp0からコピーされて作成され、一般フレームp2,p3は、そのテンプレートt0を参照して作成される。また、テンプレートt1は一般フレームp4からコピーされて作成され、一般フレームp6は、そのテンプレートt1を参照して作成される。この一般フレームはフレーム遅延メモリ23に格納され、テンプレートはテンプレート更新時にテンプレート格納メモリ24に格納される。
【0027】
いま既に、フレーム遅延メモリ23には前フレームが参照画像として格納され、テンプレート格納メモリ24にはテンプレートが参照画像として格納されているとする。ここで入力画像がやってくると、動き予測器21aは、その入力画像とフレーム遅延メモリ23の参照画像から16×16のマクロブロック単位で動きベクトルを検出し、その検出結果を重み付き動き補償器22a、相関比較器26及び多重動きベクトル符号化器28に出力する。同様に、動き予測器21bは、入力画像とテンプレート格納メモリ24の参照画像からマクロブロック単位で動きベクトルを検出し、その検出結果を重み付き動き補償器22b、相関比較器26及び多重動きベクトル符号化器28に出力する。
【0028】
次に、重み付き動き補償器22aは、上記で検出した動きベクトルに基づいて、その対象とするマクロブロック毎に、最も相関の高い領域を参照画像中から探索し、その探索した領域の周囲を含めた24×24画素の、マクロブロックよりも広い領域を抽出し、更にその抽出した広い領域の画素に対して図5に示すような重み係数を掛けて、抽出した領域の画素を得る。同様に、重み付き動き補償器22bは、テンプレートを参照画像として24×24画素の領域の画素を得る。ここで、図5の左側の重み係数は輝度信号に対するものであり、右側の重み係数は色差信号に対するものである。
【0029】
一方、相関比較器26は、動き予測器21a,21bの各出力を比較してどちらの参照画像と入力画像とがより相関が高いかを判定し、その結果に応じて参照画像切り替えスイッチ27を切り替えて、どちらの重み付き動き補償器の出力を予測画像メモリ25に接続するか選択する。この時、比較結果は切り替え制御ビットとして多重動きベクトル符号化器28にも出力される。その結果重み付き動き補償器22aが選択されたとすると、図4に示すように、予測画像メモリ25には、フレーム遅延メモリ23に格納された前フレームから、重み付けされた広い領域(円で示す、点線の正方形がマクロブロックを示す)の画素が入力される。その後、相関比較器26で入力画像とテンプレートとの相関が高いと判定され、重み付き動き補償器22bが選択されると、図4に示すように、テンプレートから重み付けされた領域の画素が入力される。このようにして、全マクロブロックに対して処理が行われ、重ね合わされた画素を更に8で除して正規化することにより予測画像メモリ25には、予測画像が生成される。この正規化は、具体的には予測画像メモリ25からデータを3ビットシフトして読み出すことにより行われるため、特別なハードウェアは必要でない。このように、1つの予測画像について、対象ブロックの周囲の動きベクトルを用いる必要がないため、各ブロック毎に異なる参照画像を用いることが可能であり、参照画像が隣同士で異なっていても抽出した領域の重なる部分(この例では各4画素)の画素に対して重み付けできる。
【0030】
この場合、動きベクトルの大きい動領域部分は、時間的に近い前フレームの領域から、動きベクトルの小さい静止画部分は、解像度の高いテンプレートから予測画像を生成することにより、ブロック境界を滑らかに連結して生成することが可能となる。
【0031】
又、参照画像を背景画像と前フレームとして予測画像を生成することにより、背景部分と前の動物体との間で見え隠れする背景部分を滑らかに予測することができる。
【0032】
又、参照画像を前後のフレームとした場合は、MPEG1/2で行われているBフレーム構造に適用できる。
(実施の形態2)
図6及び図7は、本発明にかかる第2の実施の形態の画像符号化装置の構成を示すブロック図である。また、図8は、その画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。本実施の形態が前述の第1の実施の形態と大きく異なる点は、一般フレームとテンプレートとを別々に処理し、データをパケット化して別々のビットストリームとする点であり、更に、一般フレームには誤り検出符号を付加し、テンプレートには誤り訂正符号を付加している点である。
【0033】
図6において、その画像符号化装置には、図1の画像符号化装置に、更に一般フレームかテンプレートかで入力画像を切り替える入力切り替えスイッチ30、一般フレーム用の出力バッファ31、一般フレームのデータに誤り検出符号を付加し、パケット化を行うための誤り検出符号付パケット化器32、一般フレームのパケットデータとテンプレートのパケットデータとを多重化して出力するMUX33が付加されている。尚、図1のテンプレート更新スイッチ19は除去されている。
【0034】
また図7において、入力画像がテンプレートの場合に、それを符号化処理する部分であり、フレーム内・フレーム間符号化切り替えスイッチ41、画像信号を離散コサイン変換するDCT43、その離散コサイン変換された信号を量子化する量子化器44、その量子化された信号を可変長符号化するハフマン符号化器48、テンプレートを参照画像として格納するテンプレート格納メモリ24が設けられ、又、入力画像とテンプレート格納メモリ24に格納されたテンプレートにより動きベクトルを検出する動き予測器21c、その検出した動きベクトルに基づいて、テンプレートから予測画像を生成する動き補償器4、その予測画像と入力画像との残差を取る減算器42、量子化器44の出力を逆量子化する逆量子化器45、その逆量子化された信号を逆離散コサイン変換する逆DCT46、その逆コサイン変換された信号と予測画像とを加算する加算器47が設けられている。更に、動き予測器21cで検出した動きベクトルを符号化する動きベクトル符号化器49、その符号化された動きベクトルと可変長符号化された信号を多重化するMUX50、テンプレート用の出力バッファ51、テンプレートのデータに誤り訂正符号を付加し、パケット化を行うための誤り訂正符号付パケット化器52が設けられている。
【0035】
一方、図8において、その画像復号化装置には、上記画像符号化装置からのビットストリームを入力し、一般フレームのパケットとテンプレートのパケットに分離するDMUX60が設けられ、その一般フレームのパケットの処理に対しては、一般フレームのパケットを分解する誤り検出付パケット分解器62、一般フレーム用の入力バッファ61、図2とほぼ同様の画像復号化装置が設けられている。
【0036】
また、テンプレートのパケットの処理に対しては、テンプレートのパケットを分解する誤り訂正付パケット分解器63、テンプレート用の入力バッファ64、入力バッファ64からの信号を画像信号と動きベクトルに分離するDMUX115、その分離された画像信号を復号するハフマン復号化器116及び逆量子化器107及び逆DCT108、テンプレートを参照画像として格納するテンプレート格納メモリ24、動きベクトルを復号する動きベクトル復号化器17、その復号された動きベクトルを格納する動きベクトルメモリ2、その動きベクトルに基づいて、テンプレート格納メモリ24のテンプレートから予測画像を生成する動き補償器4、その生成された予測画像と逆DCT108の出力とを加算する加算器109、フレーム内・フレーム間符号化切り替えスイッチ118が設けられている。ここでは、このテンプレートの復号処理は、従来と同様の方法で行っている。
【0037】
更に、多重動きベクトル復号化器29から出力される切り替え制御ビットにより、参照画像としてフレーム遅延メモリ23の一般フレームとテンプレートを切り替える参照画像切り替えスイッチ65、及び誤り検出付パケット分解器62で一般フレームにエラーが検出された場合に、出力画像を一般フレームからテンプレートに切り替える出力画像切り替えスイッチ66が設けられている。
【0038】
次に上記第2の実施の形態の画像符号化及び復号化装置の動作について、図面を参照しながら説明する。
【0039】
まず、本実施の形態では、図9に示すように、一般フレームp0からp6と、p0、p4と同一のテンプレートt0、t1とを別々のビットストリームとして処理する。又、データをパケット化するが、パケットの構成は図11に示すように、先頭にテンプレートか一般フレームかを識別するための識別子を設け、次に再生タイミングを示すフレーム番号を設ける。次に、テンプレートでは、データ及びリードソロモン誤り訂正符号を設け、一般フレームでは、この一般フレームが参照するテンプレートのフレーム番号及びCRC誤り検出符号を設ける。ここで、テンプレートのみに誤り訂正符号を付け、一般フレームには誤り検出符号を付けているのは、誤り訂正符号のデータ量は誤り検出符号のデータ量よりも多いためである。
【0040】
図6において、入力画像が一般フレームの場合は、入力切り替えスイッチ30を上側に接続し、一般フレームに対して前述の第1の実施の形態と同様の符号化処理を行う。この時、量子化器6は出力バッファ31,51からの信号により制御を受ける。ここで、出力バッファは、FIFOバッファであり、メモリ領域に対して書き込み先アドレスと読み出し先アドレスを巡回させるリングバッファとして実現される。バッファ余裕量は書き込み先アドレスと読み出し先アドレスの間の差として表現され、書き込み先アドレスが読み出し先アドレスを越えるとバッファはオーバーフローし(アドレスは巡回して動くため、単純なアドレスの大小ではない)、伝送画像情報の一部が欠落することになる。これを避けるためには、バッファ余裕量に応じて量子化ステップを変更すればよく、従って、出力バッファ31,51のバッファ余裕量により量子化器6,44を制御すれば良い。この処理はレート制御と呼ばれる。ハフマン符号化器12により可変長符号化された画像データと多重動きベクトル符号化器28により多重符号化された動きベクトル及び切り替え制御ビットは、MUX14で多重化された後、出力バッファ31に出力され、誤り検出符号付パケット化器32で、前述した図11に示すようなCRC誤り検出符号が付加されたパケットに作成される。
【0041】
一方、入力画像がテンプレートの場合は、入力切り替えスイッチ30が下側に接続され、図7に示すテンプレート用の符号化部で符号化処理される。この符号化部は、ここでは、従来の一般的な画像符号化装置と同様の符号化処理を行う。すなわち、テンプレートがフレーム内符号化の時は、フレーム内・フレーム間符号化切り替えスイッチ41が上側に接続され、DCT43、量子化器44、ハフマン符号化器48により符号化される。テンプレートがフレーム間符号化の時は、フレーム内・フレーム間符号化切り替えスイッチ41が下側に接続され、動き予測器21cで、入力されたテンプレートとテンプレート格納メモリ24の参照画像から動きベクトルを検出し、その検出した動きベクトルに基づいて、動き補償器4が、参照画像から予測画像を生成し、その予測画像と入力されたテンプレートとの残差を減算器42で取り、その残差信号をDCT43、量子化器44、ハフマン符号化器48により符号化する。又、検出された動きベクトルは動きベクトル符号化器49により符号化される。
【0042】
次に、ハフマン符号化器48により可変長符号化されたテンプレートの画像データと動きベクトル符号化器49により符号化された動きベクトルは、MUX50で多重化された後、出力バッファ51に出力され、誤り訂正符号付パケット化器52で、前述した図11に示すようなリードソロモン誤り訂正符号が付加されたパケットに作成される。
【0043】
以上のようにして別々のビットストリームとして作成された一般フレームの誤り検出符号付パケットとテンプレートの誤り訂正符号付パケットは、MUX33により時分割多重化されたビットストリームとして出力される。
【0044】
次に、図8において、上記画像符号化装置からのビットストリームがDMUX60に入力され、一般フレームのパケットとテンプレートのパケットに分離される。この分離は、パケットの先頭に付けられた識別子により簡単に行うことができる。分離された一般フレームのパケットは、誤り検出付パケット分解器62によって、パケットが分解されるとともに、誤り検出符号が解釈される。パケット分解後、入力バッファ61に出力されて前述の第1の実施の形態と同様の復号処理が行われる。又、テンプレートのパケットは、誤り訂正付パケット分解器63によって、パケットが分解されるとともに、誤り訂正符号が解釈される。パケット分解後、入力バッファ64に出力される。その後、DMUX115により画像信号と動きベクトルに分離され、画像信号はハフマン復号化器116、逆量子化器107、逆DCT108、加算器109により復号され、又、動きベクトルはテンプレート格納メモリ24に格納された参照画像から予測画像を生成するために動きベクトルメモリ2を介して動き補償器4に入力される。
【0045】
ここで、復号化はテンプレートの処理を優先して行う。例えば図10に示すように、テンプレートが4フレーム毎に符号化される場合、テンプレートt1の復号化処理をテンプレートt0を参照する一般フレームp2やp3等より優先して行う(上側の図参照)。この時に下側の図に示すように、テンプレートt1の処理に時間がかかり一般フレームp3を復号化してもp3の表示が間に合わない場合は、p3の復号化処理を途中で取りやめる。これにより一般フレームp4の表示タイミングまでにt1の復号処理を終了することが可能となる。
【0046】
更に、本実施の形態では、一般フレームに対して誤り検出付パケット分解器62で伝送エラーなどの誤りが検出された場合は、その一般フレームのデータを廃棄する。すなわち、図8の誤り検出付パケット分解器62から出力画像切り替えスイッチ66に対する制御信号が出力され、出力画像がテンプレートに切り替えられる。一方、テンプレートは伝送エラー等が生じてもパケットに付加された誤り訂正符号によりデータが誤り訂正される。誤りが生じて一般フレームが廃棄された場合は、テンプレートが一般フレームの代替フレームとして強制的に出力される。これによって、伝送路等にエラーがある場合でもテンプレートによる最低限の画質を維持することができ、伝送路等のエラーに対して耐性を持たせることが可能となる。
【0047】
なお、上記実施の形態では、誤り訂正符号をリードソロモン誤り訂正符号、又、誤り検出符号をCRC誤り検出符号としたが、これに限らず、それ以外の誤り訂正符号、誤り検出符号であっても勿論よい。
(実施の形態3)
図12は、本発明にかかる第3の実施の形態における処理画像とテンプレートの対応を示す模式図である。本実施の形態は、前述の第2の実施の形態を拡張したものであり、図12に示すように、一般フレームp0からp6が1つのテンプレートt0を参照するようなテンプレートが一般フレームより大きなパノラマ画像等の場合、あるいは参照ブロックが参照画像中に予め特定できる場合に適用することを目的としている。図13は、図12に示す画像における処理タイミングを示す図であり、テンプレートt0の復号処理中に一般フレームがp0から順次復号処理が行われ、フレーム表示されていく様子を示している。
【0048】
これを実現するために、例えば、一般フレームのパケットの先頭部に、参照するテンプレートの部分領域を含む左上マクロブロック位置と右下マクロブロック位置(図14参照)を付加する。テンプレートのデコードに必要な部分画像が予めデコードされるように、テンプレートのパケットにも全体画像に対して伝送する部分画像の占める左上マクロブロック位置と右下マクロブロック位置を付加する。テンプレート画像をどのような部分画像に分解するかは符号化側に任されている。テンプレートの符号化、復号化は分解された部分画像について独立に行われ、全画面のマクロブロックの縦横数が既知であるとすると、テンプレート復号はフレーム番号とマクロブロックの左上、右下の情報により一意に再構成することができる。正しいタイミングでテンプレート中の参照領域が作られるかどうかも符号化側のビットストリーム作成に依存しているが、復号化側で、一般フレームの再生が可能であるかどうかは、一般フレームのパケットにある参照先テンプレートのフレーム番号、参照マクロブロック範囲により、パケットの先頭データより判定することができる。
【0049】
図15は、本発明にかかる第4の実施の形態の画像符号化装置の構成を示すブロック図である。また、図16は、その画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。本実施の形態における画像符号化装置は、従来例の画像符号化装置に、量子化のために用いる量子化ステップをブロック毎に変更するためのオフセット値を画像に対応するように配置したオフセットマップ73と、そのオフセットマップ73のデータを可変長符号化するDPCMハフマン符号化器74を付加している。ここで、DPCMハフマン符号化器74の動作はH.261の動きベクトルの各方向成分の可変長符号が利用できる。又、量子化器70及び逆量子化器71は、そのオフセットマップ73に応じて量子化及び逆量子化を行い、MUX72は、ハフマン符号化器12、DPCMハフマン符号化器74、動きベクトル符号化器13の各出力信号を多重化してビットストリームを伝送すべき生成する。
【0050】
一方、本実施の形態における画像復号化装置は、DMUX80が上記の符号化装置から入力されたビットストリームを、画像データ、動きベクトル、オフセットマップのデータに分離するものであり、前述した従来例の画像復号化装置に、DMUX80で分離されたオフセットマップのデータを復号化するDPCMハフマン復号化器81と、その出力のオフセットマップ値を格納するオフセットマップ82を付加している。ここで、逆量子化器83は、そのオフセットマップ82に応じて量子化ステップを変更して逆量子化を行う。
【0051】
ここで、例えばテレビ電話などの画像のように、周辺部のほとんど動きがなく重要でない背景領域は荒い画像を送り、中央部の人の顔の表情変化等の細かい動きが必要な領域は細かい画像を送りたい場合に、画像の中央部の量子化を細かくする必要がある。これを一般の量子化ステップに対して中央部は−2〜−3、周辺部は+2〜+3のオフセット値を加えることにより行う。量子化ステップをマクロブロック毎に送り、オフセットマップのデータを画像毎に送る。このオフセットは、H.263の改造として、ピクチャーヘッダーのPQUANTの後に、例えば、LQOM(ロード量子化ステップオフセットマップ)と名付ける制御情報1ビットを付加し、その制御情報を用いて、例えばIピクチャーでリセットし、P、Bピクチャー等それ以外では、0の場合は、前のオフセットマップをそのまま引き継ぐ。ここで、オフセットのデフォルトは全て0である(オフセットなし)。
【0052】
なお、上記実施の形態では、いずれもブロックの所定のサイズを16×16とし、そのブロックのサイズより広い所定のサイズを24×24としたが、これに限らず、ブロックのサイズは前述したように、それ以外のサイズでも良く、又、広い所定のサイズもブロックのサイズより広ければどんなサイズでも良い。
【0053】
また、上記実施の形態において、動き予測器等、専用のハードウェアにより構成した手段については、可能であれば、これに代えて、同様の機能をコンピュータを用いてソフトウェア的に実現しても良い。
【0054】
なお、上記の実施の形態における本発明者による他の発明は、参照画像及び入力された画像から、所定サイズのブロック毎に動きベクトルを検出する動き検出手段と、その検出された動きベクトルに基づき、入力画像の各ブロックに対応するエリアを含む所定サイズよりも広い所定サイズのエリアを参照画像から抽出し、その広いエリアの各画素にそれぞれ予め設定された重み付けを行い、広いエリアの重み付けされた各画素を用いて、入力画像の予測画像を生成する重み付き動き補償手段と、その予測画像を格納する予測画像メモリと、その格納された予測画像と入力画像との残差をとり、その残差を符号化する符号化手段と、その符号化された画像データを復号して参照画像を得る復号化手段とを備えた画像符号化装置を含む。
【0055】
また、発明は、画像符号化装置から入力された符号化データを復号する復号化手段と、参照画像を格納するフレームメモリと、復号化手段により復号された動きベクトルに基づき、予測画像の各ブロックに対応するエリアを含む所定サイズよりも広い所定サイズのエリアをフレームメモリに格納されている参照画像から抽出し、その広いエリアの各画素にそれぞれ予め設定された重み付けを行い、広いエリアの重み付けされた各画素を用いて、予測画像を生成する重み付き動き補償手段と、その予測画像と復号化手段により復号された残差信号とに基づいて出力画像を生成する画像生成手段とを備えた画像復号化装置を含む。
【0056】
上記により、参照画像が前フレームに限定されず、例えば、予測画像を生成するのに異なる参照画像を用いることが可能である。
【0057】
また、発明は、画像データを、代表となる代表フレームとその代表フレーム以外の一般フレームとに分け、代表フレーム及び一般フレームを、それらを識別するフレーム識別情報を付加して別々のビットストリームとして多重化し、伝送する画像符号化方法を含む。
【0058】
また発明は、画像符号化装置から入力された符号化データからフレーム識別情報を検出し、その検出したフレーム識別情報に応じて、入力された符号化データを、代表フレーム及び一般フレームの画像データに分離し、その代表フレームから優先して復号し、その復号処理中に既に復号処理の終わった代表フレームを参照する一般フレームの復号処理が重なる場合は、その一般フレームの復号処理を取りやめる画像復号化方法を含む。
【0059】
上記により、代表フレームの復号処理に時間がかかっても一般フレームの復号処理を簡単にスキップすることが可能となる。
【0060】
また発明は、画像符号化装置から入力された符号化データの代表フレームから誤り訂正符号を抽出し、データに誤りが生じた場合はその代表フレームに対する訂正符号化を行い、入力された符号化データの一般フレームから誤り検出符号を抽出し、データに誤りが生じた場合はその一般フレームを廃棄し、その廃棄したフレームを代表フレームで代替する画像復号化方法を含む。
【0061】
上記により、例えば伝送路のエラーに対して、代表フレーム用いて最低限の画質を維持することができる。
【0062】
また発明は、伝送する画像の量子化のための量子化ステップを各ブロックで変更するために、量子化ステップのオフセット値が各画像毎に設定されたオフセットマップと、そのオフセットマップのデータを画像データの先頭に付加するオフセット付加手段とを備えた画像符号化装置を含む。
【0063】
また発明は、画像符号化装置から入力された符号化データからオフセットマップを抽出するオフセット抽出手段と、その抽出されたオフセット値に基づいて、各画像における量子化ステップを変更し、その変更した量子化ステップにより入力された符号化データを逆量子化して復号する復号化手段とを備えた画像復号化装置を含む。
【0064】
上記により、各ブロックにおける量子化ステップをオフセットマップのオフセット値に応じて容易に変更できる。
【0065】
以上のような他の発明は、例えば、参照する画像が限定されず拡張性があるオーバーラップ動き補償の効果を得ることができるという長所を有する。
【0066】
また、CPU、DSPにより不定(可変)処理時間となる画像の復号化においても、ビットストリーム解釈が間に合わないことによる画像再生の破綻を免れることができるという利点がある。
【0067】
また、代表フレームを別ビットストリームとすることによりエラー耐性、低遅延の画像伝送が行えるという利点がある。
【0068】
【発明の効果】
以上述べたところから明らかなように本発明は、エラー耐性、低遅延の画像伝送が行えるという利点がある。
【図面の簡単な説明】
【図1】本発明にかかる第1の実施の形態の画像符号化装置の構成を示すブロック図である。
【図2】上記図1の画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。
【図3】同第1の実施の形態における処理画像とテンプレートの対応を示す模式図である。
【図4】同第1の実施の形態における予測画像と参照画像との関係を説明する模式図である。
【図5】同第1の実施の形態における重み係数の一例を示す図である。
【図6】本発明にかかる第2の実施の形態の画像符号化装置の構成の一部を示すブロック図である。
【図7】図6につながる画像符号化装置の構成の残りの一部を示すブロック図である。
【図8】上記第2の実施の形態の画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。
【図9】同第2の実施の形態における処理画像とテンプレートの対応を示す模式図である。
【図10】上記第2の実施の形態の画像復号化装置における多重ビットストリームの復号処理タイミングを説明する図である。
【図11】上記第2の実施の形態におけるパケットの構成を示す図である。
【図12】本発明にかかる第3の実施の形態における処理画像とテンプレートの対応を示す模式図である。
【図13】上記第3の実施の形態の画像復号化装置における復号処理タイミングを説明する図である。
【図14】上記第3の実施の形態における参照領域を説明する図である。
【図15】本発明にかかる第4の実施の形態の画像符号化装置の構成を示すブロック図である。
【図16】上記図15の画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。
【図17】従来の画像符号化装置の構成を示すブロック図である。
【図18】上記図17の画像符号化装置に対応する画像復号化装置の構成を示すブロック図である。
【図19】同図(a)は、従来の画像符号化装置における動きベクトルの求め方を説明する図、同図(b)は、予測画像の求め方を説明する図である。
【図20】従来の画像符号化装置における予測画像の求め方を説明する図である。
【図21】従来の画像復号化装置における単一ビットストリームの復号処理タイミングを説明する図である。
【符号の説明】
1 動き予測器
3、23 フレーム遅延メモリ
4 動き補償器
5 DCT
6 量子化器
7 逆量子化器
8 逆DCT
21a、21b 動き予測器
22a、22b、22c 重み付き動き補償器
24 テンプレート格納メモリ
26 相関比較器
32 誤り検出符号付パケット化器
52 誤り訂正符号付パケット化器
62 誤り検出付パケット分解器
63 誤り訂正付パケット分解器
73、82 オフセットマップ
74 DPCMハフマン符号化器
81 DPCMハフマン復号化器[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image decoding apparatus and method for encoding and decoding moving image data in, for example, a videophone.
[0002]
[Prior art]
In recent years, in order to transmit or record moving image data in videophones, video conference systems, and the like, image compression techniques have been required to achieve higher compression ratios with lower bit rates. I have. These technologies include MPEG1 / 2 in ISO / IEC and H.264 in ITU-T. 261, H .; 263 etc. are standardized.
[0003]
FIG. 17 is a block diagram of a conventional image encoding apparatus, and FIG. 18 is a block diagram of an image decoding apparatus corresponding to the encoding apparatus. 263 is realized.
[0004]
In FIG. 17, when an input image is intra-frame encoded, the intra-frame / inter-frame
[0005]
On the other hand, when the input image is inter-frame encoded, the intra-frame /
[0006]
Next, in FIG. 18, when the bit stream encoded and output by the above-described image encoding device is input to the image decoding device, the DMUX (demultiplexer, separation unit) 15 outputs each of the image signal and the motion vector. It is separated into encoded signals. The image signal is decoded by a Huffman
[0007]
On the other hand, the motion vector separated by the
[0008]
Here, as shown in FIG. 19A, the
[0009]
According to the above method, discontinuous portions occurring in an image are alleviated and the image quality is improved. Also, when the prediction error (residual) cannot be coded sufficiently at a low bit rate, only the motion vector is transmitted and only the predicted image is transmitted. Therefore, a sharp image is obtained in a portion where the motion is uniform, and a smooth image is obtained in a portion where the motion is uneven.
[0010]
[Problems to be solved by the invention]
However, in the conventional method as described above, since a predicted image is generated using the motion vectors of the upper, lower, left, and right blocks around the target block, matching cannot be achieved unless the same reference image is used, and the image to be referred to is the previous frame. However, there is a problem of lack of expandability.
[0011]
Further, for example, in MPEG1 / 2, the P image data can be encoded independently of the B image by the IBBBPBBPBBP structure. However, in MPEG1 / 2, the bit stream is not defined by being multiplexed, and is sequentially transmitted. Therefore, when a bit stream of a template (representative frame) is constituted by a CPU or a DSP when a bit of the template (representative frame) is huge, the bit stream is not defined within a predetermined time. In some cases, the frame cannot be decoded.
[0012]
FIG. 21 is a diagram showing the timing of the decoding process in the conventional image decoding device. 21, t0 and t1 indicate templates, and p0, p1,... P6 indicate general frames. In the upper diagram, since the decoding processing of the templates t0 and t1 does not take much time and is in time for the display timing, the frames are sequentially displayed from p0. On the other hand, in the lower diagram, the decoding process of the template t1 (p4) takes time and cannot be performed in time for the display timing of p4. At this time, since the decoding processes of p3 and p4 cannot be skipped as a matter of course, a margin is provided in the buffer until the frame display timing, and when the decoding process of p4 is delayed in advance, the decoding processes of p5 and p6 are skipped. This problem can be dealt with by performing the decoding processing of the next template.
[0013]
However, in the method of transmitting a single bit stream as described above, the bits must be interpreted one by one until the next template bit stream comes, and the processing time can be sufficiently reduced even if the processing of the general frame is skipped. There is a problem that can not be done.
[0014]
An object of the present invention is to provide an image decoding apparatus and an image decoding method capable of performing error-resistant and low-delay image transmission in consideration of such problems in conventional image decoding.
[0015]
[Means for Solving the Problems]
In order to achieve the above object, a first aspect of the present invention provides image data including a plurality of encoded data generated by encoding an image, the intra-frame decoded image and the inter-frame decoded image. From the bit stream including the identification information indicating the reference image determined based on the correlation, the encoded data identified as the intra-frame encoded data based on the identification information, Intra-frame decoding means to be decoded, and in parallel with the operation of the intra-frame decoding means, the encoded data decoded by the intra-frame decoding means as reference data, and An inter-frame decoding means for inter-frame decoding encoded data identified as inter-coded data, wherein the intra-frame decoding is performed. By the time the stage ends the intra-frame decoding of the encoded data, the inter-frame decoding means refers to the intra-frame encoded data whose display order is earlier than the predetermined encoded data. When the inter-frame decoding of the intra-frame encoded data encoded as inter-frame data is not completed,
The image decoding method, wherein the operation of the inter-frame decoding by the inter-frame decoding unit is performed with priority over the operation of the intra-frame decoding unit decoding the intra-frame encoded data. Device.
[0016]
In addition, the second present invention relates to a method of calculating a correlation between image data including a plurality of encoded data generated by encoding an image, the image, an intra-frame decoded image, and an inter-frame decoded image. And a frame for decoding intra-frame encoded data identified as intra-frame encoded data based on the identification information from a bit stream including identification information indicating a reference image determined based on the correlation. Inner decoding step;
Performed in parallel with the intra-frame decoding step, the encoded data decoded in the intra-frame decoding step as reference data, identified as inter-frame encoded data based on the identification information An inter-frame decoding step of inter-frame decoding of the encoded data,
Until the intra-frame decoding step of the encoded data is completed, in the inter-frame decoding step, an intra-frame encoded data whose display order is earlier than the encoded data in the inter-frame decoding step is used as the reference data. An image decoding method characterized by performing the inter-frame decoding step prior to the intra-frame decoding step if the decoding step of the encoded intra-frame encoded data is not completed. .
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, the present invention will be described with reference to the drawings showing the embodiments.
(Embodiment 1)
FIG. 1 is a block diagram illustrating a configuration of an image encoding device according to a first embodiment of the present invention, and FIG. 2 illustrates a configuration of an image decoding device corresponding to the image encoding device. It is a block diagram. That is, the image encoding apparatus includes a
[0018]
The
[0019]
Also, an intra-frame / inter-frame
[0020]
Further, an
[0021]
Here, the
[0022]
On the other hand, the image decoding apparatus shown in FIG. 2 receives the bit stream output from the image encoding apparatus shown in FIG. 1 and separates it into an image signal (usually a residual signal) and a multiplex motion vector. A
[0023]
An
[0024]
Here, the
[0025]
Next, the operation of the image encoding and decoding apparatus according to the first embodiment will be described with reference to the drawings.
[0026]
First, the correspondence between a general frame and a representative frame (template) will be described. FIG. 3 shows the correspondence between general frames and templates. In FIG. 3, p0 to p6 indicate general frames, and t0 and t1 indicate templates. The template t0 is created by copying from the general frame p0, and the general frames p2 and p3 are created with reference to the template t0. The template t1 is created by copying from the general frame p4, and the general frame p6 is created with reference to the template t1. The general frame is stored in the
[0027]
It is assumed that the previous frame is already stored in the
[0028]
Next, based on the motion vector detected above, the weighted motion compensator 22a searches the reference image for a region having the highest correlation for each of the target macroblocks, and searches around the searched region. A region of 24 × 24 pixels including the macroblock is extracted, and the extracted pixels of the wide region are multiplied by a weighting factor as shown in FIG. 5 to obtain the pixels of the extracted region. Similarly, the
[0029]
On the other hand, the
[0030]
In this case, the block boundaries are smoothly connected by generating a predicted image from a region of a previous frame that is close in time with a large motion vector and a still image portion with a small motion vector from a high-resolution template. Can be generated.
[0031]
In addition, by generating a prediction image using a reference image as a background image and a previous frame, it is possible to smoothly predict a background portion which is hidden between the background portion and the preceding moving object.
[0032]
Also, when the reference image is a preceding and succeeding frame, it can be applied to a B frame structure performed by MPEG1 / 2.
(Embodiment 2)
FIGS. 6 and 7 are block diagrams showing the configuration of the image encoding device according to the second embodiment of the present invention. FIG. 8 is a block diagram showing a configuration of an image decoding device corresponding to the image encoding device. This embodiment is significantly different from the above-described first embodiment in that a general frame and a template are separately processed, and data is packetized into separate bit streams. Is that an error detection code is added and an error correction code is added to the template.
[0033]
In FIG. 6, the image coding apparatus includes an
[0034]
Also, in FIG. 7, when the input image is a template, it is a portion for encoding the image, an intra-frame / inter-frame encoding changeover switch 41, a DCT 43 for performing a discrete cosine transform of an image signal, and a signal subjected to the discrete cosine transform. 44, a
[0035]
On the other hand, in FIG. 8, the image decoding apparatus is provided with a DMUX 60 for receiving the bit stream from the image encoding apparatus and separating the packet into general frame packets and template packets. , A packet decomposer 62 with error detection for decomposing packets of a general frame, an input buffer 61 for a general frame, and an image decoding device substantially similar to FIG. 2 are provided.
[0036]
For processing of the template packet, an error correcting packet decomposer 63 for decomposing the template packet, an input buffer 64 for the template, a DMUX 115 for separating the signal from the input buffer 64 into an image signal and a motion vector, Huffman decoder 116 and
[0037]
Further, a switching control bit output from the multiplex
[0038]
Next, the operation of the image encoding and decoding apparatus according to the second embodiment will be described with reference to the drawings.
[0039]
First, in the present embodiment, as shown in FIG. 9, the general frames p0 to p6 and the templates t0 and t1 identical to p0 and p4 are processed as separate bit streams. Also, the data is packetized, and the structure of the packet is, as shown in FIG. 11, provided at the beginning with an identifier for identifying a template or a general frame, and then provided with a frame number indicating a reproduction timing. Next, in the template, data and a Reed-Solomon error correction code are provided, and in a general frame, a frame number and a CRC error detection code of the template referred to by the general frame are provided. Here, the reason why the error correction code is attached only to the template and the error detection code is attached to the general frame is that the data amount of the error correction code is larger than the data amount of the error detection code.
[0040]
In FIG. 6, when the input image is a general frame, the
[0041]
On the other hand, when the input image is a template, the
[0042]
Next, the image data of the template variable-length coded by the
[0043]
The packet with the error detection code of the general frame and the packet with the error correction code of the template created as separate bit streams as described above are output as a time-division multiplexed bit stream by the
[0044]
Next, in FIG. 8, the bit stream from the image encoding device is input to the
[0045]
Here, the decoding is performed with priority given to the processing of the template. For example, as shown in FIG. 10, when the template is encoded every four frames, the decoding process of the template t1 is performed with priority over the general frames p2 and p3 referring to the template t0 (see the upper diagram). At this time, as shown in the lower diagram, if the processing of the template t1 takes time and the display of p3 cannot be made in time even after decoding the general frame p3, the decoding processing of p3 is canceled in the middle. As a result, the decoding process at t1 can be completed by the display timing of the general frame p4.
[0046]
Further, in the present embodiment, when an error such as a transmission error is detected in a general frame by the packet decomposer 62 with error detection, the data of the general frame is discarded. That is, a control signal for the output image changeover switch 66 is output from the packet decomposer with error detection 62 in FIG. 8 and the output image is switched to the template. On the other hand, in the template, even if a transmission error or the like occurs, the data is error-corrected by the error correction code added to the packet. When an error occurs and the general frame is discarded, the template is forcibly output as a substitute frame for the general frame. As a result, even when there is an error in the transmission path or the like, it is possible to maintain the minimum image quality based on the template, and to make the transmission path or the like resistant to errors.
[0047]
In the above embodiment, the error correction code is a Reed-Solomon error correction code and the error detection code is a CRC error detection code. However, the present invention is not limited to this, and other error correction codes and error detection codes may be used. Of course, it is good.
(Embodiment 3)
FIG. 12 is a schematic diagram showing a correspondence between a processed image and a template according to the third embodiment of the present invention. This embodiment is an extension of the second embodiment described above. As shown in FIG. 12, a template in which general frames p0 to p6 refer to one template t0 has a larger panorama than a general frame. It is intended to be applied to a case of an image or the like or a case where a reference block can be specified in a reference image in advance. FIG. 13 is a diagram showing processing timing in the image shown in FIG. 12, and shows a state in which the decoding process of the general frame is sequentially performed from p0 during the decoding process of the template t0, and the frames are displayed.
[0048]
To realize this, for example, an upper left macroblock position and a lower right macroblock position (see FIG. 14) including a partial area of the template to be referred to are added to the head of the packet of the general frame. The upper left macro block position and the lower right macro block position occupied by the partial image to be transmitted with respect to the entire image are also added to the template packet so that the partial image necessary for decoding the template is decoded in advance. It is left to the encoding side to decompose the template image into what partial images. Encoding and decoding of the template are performed independently for the decomposed partial image, and assuming that the vertical and horizontal numbers of the macroblocks of the entire screen are known, the template decoding is performed based on the frame number and the upper left and lower right information of the macroblock. Can be uniquely reconstructed. Whether the reference area in the template is created at the correct timing also depends on the bit stream creation on the encoding side.However, on the decoding side, whether the playback of a general frame is possible depends on the packet of the general frame. Based on the frame number of a certain reference destination template and the reference macroblock range, the determination can be made from the head data of the packet.
[0049]
FIG. 15 is a block diagram illustrating a configuration of an image encoding device according to a fourth embodiment of the present invention. FIG. 16 is a block diagram showing a configuration of an image decoding device corresponding to the image encoding device. The image coding apparatus according to the present embodiment is different from the conventional image coding apparatus in that an offset map in which an offset value for changing a quantization step used for quantization for each block is arranged so as to correspond to an image. 73 and a
[0050]
On the other hand, in the image decoding apparatus according to the present embodiment, the
[0051]
Here, for example, an image of a videophone or the like, where there is almost no movement in the peripheral area and an insignificant background area sends a rough image, and an area that requires fine movement such as a change in facial expression of a person's face in the center is a fine image. , It is necessary to make the quantization at the center of the image finer. This is performed by adding an offset value of −2 to −3 in the central portion and +2 to +3 in the peripheral portion with respect to a general quantization step. A quantization step is sent for each macroblock, and offset map data is sent for each image. This offset is As a modification of H.263, one bit of control information named, for example, LQOM (load quantization step offset map) is added after PQUANT of the picture header, and the control information is used to reset, for example, an I picture, and P, B In other cases such as a picture, if the value is 0, the previous offset map is taken over as it is. Here, the default of the offset is all 0 (no offset).
[0052]
In the above embodiments, the predetermined size of each block is 16 × 16, and the predetermined size larger than the block size is 24 × 24. However, the present invention is not limited to this. In addition, other sizes may be used, and the wide predetermined size may be any size as long as it is larger than the size of the block.
[0053]
In the above-described embodiment, the means configured by dedicated hardware, such as a motion estimator, may be replaced with a similar function by software using a computer, if possible. .
[0054]
Note that another invention by the present inventor in the above embodiment is based on a motion detection unit that detects a motion vector for each block of a predetermined size from a reference image and an input image, and a motion detection unit that detects a motion vector based on the detected motion vector. An area having a predetermined size larger than a predetermined size including an area corresponding to each block of the input image is extracted from the reference image, and a predetermined weight is applied to each pixel of the wide area, and the weighting of the wide area is performed. A weighted motion compensator for generating a predicted image of an input image using each pixel, a predicted image memory for storing the predicted image, and a residual between the stored predicted image and the input image. The image encoding apparatus includes an encoding unit that encodes the difference, and a decoding unit that decodes the encoded image data to obtain a reference image.
[0055]
Also, the invention provides a decoding unit for decoding encoded data input from an image encoding device, a frame memory for storing a reference image, and each block of a predicted image based on a motion vector decoded by the decoding unit. An area of a predetermined size larger than the predetermined size including the area corresponding to the area is extracted from the reference image stored in the frame memory, and each pixel of the wide area is weighted in advance, and the weight of the wide area is calculated. A weighted motion compensating unit for generating a predicted image using each of the pixels, and an image generating unit for generating an output image based on the predicted image and a residual signal decoded by the decoding unit. Includes a decoding device.
[0056]
As described above, the reference image is not limited to the previous frame. For example, it is possible to use a different reference image to generate a predicted image.
[0057]
Also, the invention divides image data into a representative frame as a representative and a general frame other than the representative frame, and multiplexes the representative frame and the general frame as separate bit streams by adding frame identification information for identifying them. Includes an image encoding method for converting and transmitting.
[0058]
Further, the invention detects frame identification information from encoded data input from an image encoding device, and converts the input encoded data into representative frame and general frame image data according to the detected frame identification information. If the decoding of a general frame that refers to a representative frame that has already been decoded overlaps with the decoding of the representative frame, the decoding of the general frame is canceled. Including methods.
[0059]
As described above, even if it takes time to decode the representative frame, it is possible to easily skip the decoding process of the general frame.
[0060]
According to the invention, an error correction code is extracted from a representative frame of coded data input from an image coding apparatus, and when an error occurs in the data, correction coding is performed on the representative frame. An image decoding method for extracting an error detection code from a general frame, and discarding the general frame when an error occurs in the data, and replacing the discarded frame with a representative frame.
[0061]
As described above, for example, for a transmission path error, the minimum image quality can be maintained using the representative frame.
[0062]
According to the present invention, in order to change a quantization step for quantization of an image to be transmitted for each block, an offset map in which an offset value of the quantization step is set for each image, and data of the offset map are stored in an image. An image encoding device including an offset adding means for adding the data to the beginning of data.
[0063]
Further, the invention provides an offset extracting means for extracting an offset map from encoded data inputted from an image encoding device, and a quantization step for each image is changed based on the extracted offset value. Decoding means for dequantizing and decoding the encoded data input in the encoding step.
[0064]
As described above, the quantization step in each block can be easily changed according to the offset value of the offset map.
[0065]
The other inventions as described above have an advantage that, for example, an image to be referred to is not limited and an effect of scalable overlap motion compensation can be obtained.
[0066]
Also, in decoding an image for which the CPU and DSP have an indefinite (variable) processing time, there is an advantage that failure in image reproduction due to inadequate bitstream interpretation can be avoided.
[0067]
In addition, there is an advantage that image transmission with error tolerance and low delay can be performed by using a representative frame as a separate bit stream.
[0068]
【The invention's effect】
As is clear from the above description, the present invention has an advantage that image transmission with low error tolerance and low delay can be performed.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an image encoding device according to a first embodiment of the present invention.
FIG. 2 is a block diagram illustrating a configuration of an image decoding device corresponding to the image encoding device of FIG. 1;
FIG. 3 is a schematic diagram showing a correspondence between a processed image and a template according to the first embodiment.
FIG. 4 is a schematic diagram illustrating a relationship between a predicted image and a reference image according to the first embodiment.
FIG. 5 is a diagram illustrating an example of a weight coefficient according to the first embodiment.
FIG. 6 is a block diagram illustrating a part of a configuration of an image encoding device according to a second embodiment of the present invention.
FIG. 7 is a block diagram showing the remaining part of the configuration of the image encoding device leading to FIG. 6;
FIG. 8 is a block diagram illustrating a configuration of an image decoding device corresponding to the image encoding device according to the second embodiment.
FIG. 9 is a schematic diagram showing a correspondence between a processed image and a template according to the second embodiment.
FIG. 10 is a diagram for explaining a decoding processing timing of a multiplexed bit stream in the image decoding device according to the second embodiment.
FIG. 11 is a diagram showing a configuration of a packet according to the second embodiment.
FIG. 12 is a schematic diagram showing a correspondence between a processed image and a template according to a third embodiment of the present invention.
FIG. 13 is a diagram illustrating decoding processing timing in the image decoding device according to the third embodiment.
FIG. 14 is a diagram illustrating a reference area according to the third embodiment.
FIG. 15 is a block diagram illustrating a configuration of an image encoding device according to a fourth embodiment of the present invention.
FIG. 16 is a block diagram illustrating a configuration of an image decoding device corresponding to the image encoding device of FIG. 15;
FIG. 17 is a block diagram illustrating a configuration of a conventional image encoding device.
FIG. 18 is a block diagram illustrating a configuration of an image decoding device corresponding to the image encoding device of FIG. 17;
FIG. 19A is a diagram for explaining a method of obtaining a motion vector in a conventional image encoding device, and FIG. 19B is a diagram for explaining a method of obtaining a predicted image.
FIG. 20 is a diagram illustrating a method for obtaining a predicted image in a conventional image encoding device.
FIG. 21 is a diagram illustrating a decoding processing timing of a single bit stream in a conventional image decoding device.
[Explanation of symbols]
1 motion estimator
3,23 frame delay memory
4 Motion compensator
5 DCT
6 Quantizer
7 Inverse quantizer
8 Inverse DCT
21a, 21b motion estimator
22a, 22b, 22c Weighted motion compensator
24 Template storage memory
26 Correlation comparator
32 Packetizer with error detection code
52 Packetizer with error correction code
62 Packet Decomposer with Error Detection
63 Packet Decomposer with Error Correction
73, 82 Offset map
74 DPCM Huffman encoder
81 DPCM Huffman Decoder
Claims (2)
前記フレーム内復号化手段が前記符号化済データの前記フレーム内復号化を終了するまでに、前記フレーム間復号化手段による、前記所定の符号化済データよりも表示順番が前のフレーム内符号化済データを前記参照データとしてフレーム間符号化されたフレーム内符号化済データの前記フレーム間復号化が終了しない場合、
前記フレーム内復号化手段のフレーム内符号化済データの復号化の動作よりも、前記フレーム間復号化手段の前記フレーム間復号化の動作が優先して実行されることを特徴とする画像復号化装置。Image data including a plurality of encoded data generated by encoding an image, and a correlation between the intra-frame decoded image and the inter-frame decoded image, and a reference image determined based on the correlation. An intra-frame decoding unit for intra-frame decoding the encoded data identified as the intra-frame encoded data based on the identification information from a bit stream including the identification information indicating: In parallel with the operation of the above, the encoded data decoded by the intra-frame decoding means as reference data, the encoded data identified as inter-frame encoded data based on the identification information, the frame An image decoding apparatus comprising: an inter-frame decoding unit that performs inter-frame decoding.
By the time that the intra-frame decoding means completes the intra-frame decoding of the encoded data, the inter-frame decoding means performs intra-frame encoding whose display order is earlier than the predetermined encoded data. If the inter-frame decoding of the intra-frame encoded data obtained by inter-frame coding using the processed data as the reference data is not completed,
The image decoding method, wherein the operation of the inter-frame decoding by the inter-frame decoding unit is performed with priority over the operation of the intra-frame decoding unit decoding the intra-frame encoded data. apparatus.
前記符号化済データの前記フレーム内復号化ステップが終了するまでに、前記フレーム間復号化ステップにおいて前記符号化済データよりも表示順番が前のフレーム内符号化済データを前記参照データとしてフレーム間符号化されたフレーム内符号化済データの復号化ステップが終了しない場合、前記フレーム内復号化ステップよりも、前記フレーム間復号化ステップを優先して行うことを特徴とする画像復号化方法。Image data including a plurality of encoded data generated by encoding the image, the image, the correlation between the intra-frame decoded image and the inter-frame decoded image, and determined based on the correlation An intra-frame decoding step of intra-frame decoding encoded data identified as intra-frame encoded data based on the identification information from a bit stream including the identification information indicating the reference image. Encoded data identified as inter-frame encoded data based on the identification information, with the encoded data decoded in the intra-frame decoding step performed in parallel with the decoding step as reference data. An inter-frame decoding step of inter-frame decoding data, comprising:
Until the intra-frame decoding step of the encoded data is completed, in the inter-frame decoding step, an intra-frame encoded data whose display order is earlier than the encoded data in the inter-frame decoding step is used as the reference data. An image decoding method, wherein when the decoding step of the encoded intra-frame coded data is not completed, the inter-frame decoding step is performed with priority over the intra-frame decoding step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003168385A JP2004007736A (en) | 2003-06-12 | 2003-06-12 | Device and method for decoding image |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003168385A JP2004007736A (en) | 2003-06-12 | 2003-06-12 | Device and method for decoding image |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7277993A Division JPH09121358A (en) | 1995-10-25 | 1995-10-25 | Picture coding/decoding device and its method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004007736A true JP2004007736A (en) | 2004-01-08 |
Family
ID=30438294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003168385A Pending JP2004007736A (en) | 2003-06-12 | 2003-06-12 | Device and method for decoding image |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004007736A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009545918A (en) * | 2006-07-31 | 2009-12-24 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Video encoding |
-
2003
- 2003-06-12 JP JP2003168385A patent/JP2004007736A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009545918A (en) * | 2006-07-31 | 2009-12-24 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Video encoding |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6081551A (en) | Image coding and decoding apparatus and methods thereof | |
US9338453B2 (en) | Method and device for encoding/decoding video signals using base layer | |
US9350996B2 (en) | Method and apparatus for last coefficient indexing for high efficiency video coding | |
JP5007322B2 (en) | Video encoding method | |
JP3630474B2 (en) | Moving picture transmission system and moving picture transmission apparatus | |
KR100913088B1 (en) | Method and apparatus for encoding/decoding video signal using prediction information of intra-mode macro blocks of base layer | |
JP3226439B2 (en) | Image encoding method and image decoding method | |
EP1793613A2 (en) | Picture encoding method and apparatus and picture decoding method and apparatus | |
WO2007010901A1 (en) | Dynamic image encoding device, dynamic image decoding device, and code string format | |
US20090103613A1 (en) | Method for Decoding Video Signal Encoded Using Inter-Layer Prediction | |
JP4401336B2 (en) | Encoding method | |
WO1999029113A1 (en) | Transcoding | |
KR20060088461A (en) | Method and apparatus for deriving motion vectors of macro blocks from motion vectors of pictures of base layer when encoding/decoding video signal | |
CN1633185A (en) | Video signal encoding/decoding method and apparatus, and corresponding wireless communication device | |
JP2004007753A (en) | Image decoding method and device | |
JP2006279573A (en) | Encoder and encoding method, and decoder and decoding method | |
US6795498B1 (en) | Decoding apparatus, decoding method, encoding apparatus, encoding method, image processing system, and image processing method | |
US20100303151A1 (en) | Method for decoding video signal encoded using inter-layer prediction | |
US20060120454A1 (en) | Method and apparatus for encoding/decoding video signal using motion vectors of pictures in base layer | |
US20060133497A1 (en) | Method and apparatus for encoding/decoding video signal using motion vectors of pictures at different temporal decomposition level | |
KR20060085150A (en) | Method and apparatus for encoding/decoding video signal using prediction information of intra-mode macro blocks of base layer | |
JP2004007736A (en) | Device and method for decoding image | |
US8218639B2 (en) | Method for pixel prediction with low complexity | |
US20060120457A1 (en) | Method and apparatus for encoding and decoding video signal for preventing decoding error propagation | |
JP2001086501A (en) | Image coding method, intra coding control method, data recording medium, image coder, image decoder, image coding and decoding device and wireless image communication terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070109 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070308 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070807 |