JP5701018B2 - Image decoding device - Google Patents
Image decoding device Download PDFInfo
- Publication number
- JP5701018B2 JP5701018B2 JP2010253728A JP2010253728A JP5701018B2 JP 5701018 B2 JP5701018 B2 JP 5701018B2 JP 2010253728 A JP2010253728 A JP 2010253728A JP 2010253728 A JP2010253728 A JP 2010253728A JP 5701018 B2 JP5701018 B2 JP 5701018B2
- Authority
- JP
- Japan
- Prior art keywords
- concealment
- motion vector
- error
- image
- unit
- 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)
Description
この発明は、画像の復号処理中にエラーが発生している場合、エラーが発生している箇所を隠蔽するコンシールメント処理を実施する機能を有する画像復号装置に関するものである。 The present invention relates to an image decoding apparatus having a function of performing concealment processing for concealing a location where an error has occurred when an error occurs during image decoding processing.
動画像データを高能率に圧縮する符号化技術として、例えば、国際標準規格であるMPEG−2やH.264/AVCなどが挙げられる。
これらの符号化技術は、動き補償予測処理、離散コサイン変換処理及び可変長符号化処理などが組み合わされているハイブリッドな符号化方式である。
符号化されるピクチャのタイプは、動き補償予測処理の方式に応じて分類される。
具体的には、フレーム内予測が実施されて圧縮が行われたピクチャであるイントラ符号化ピクチャ(以下、「Iピクチャ」と称する)と、時間的に前方向のフレームとの間で動き補償予測が実施されて圧縮が行われたピクチャである前方向予測符号化ピクチャ(以下、「Pピクチャ」と称する)と、時間的に前方向、後方向、もしくは双方向のいずれかのフレーム間で動き補償予測が実施されて圧縮が行われたピクチャである双方向予測符号化ピクチャ(以下、Bピクチャと称する)との3種に分類される。
これらの予測処理を実施して、Iピクチャを先頭とするGOPと称されるピクチャ群を周期的に繰り返して符号化を行うのが一般的である。
As an encoding technique for compressing moving image data with high efficiency, for example, MPEG-2 or H.264, which is an international standard, is used. H.264 / AVC.
These encoding techniques are hybrid encoding schemes in which motion compensation prediction processing, discrete cosine transform processing, variable length encoding processing, and the like are combined.
The type of picture to be encoded is classified according to the method of motion compensation prediction processing.
Specifically, motion-compensated prediction between an intra-coded picture (hereinafter referred to as “I picture”) that is a picture that has been subjected to intra-frame prediction and compressed, and a temporally forward frame. Between a forward prediction coded picture (hereinafter referred to as a “P picture”) that is a compressed picture that has been implemented and is temporally forward, backward, or bidirectional. The pictures are classified into three types: bi-predictive coded pictures (hereinafter referred to as B pictures), which are pictures that have been subjected to compensation prediction and compressed.
In general, encoding is performed by periodically repeating a group of pictures called GOP having an I picture at the head by performing these prediction processes.
動画像の符号化データは、画像符号化装置から例えばネットワークなどの伝送路を介して送信され、受信側の画像復号装置では、その符号化データに対する復号処理を実施することで、元の動画像を得ることができる。
ただし、伝送路上で符号化データの誤りや欠落等が発生すると、その符号化データの復号処理中にエラーが発生して、元の画像を正しく復号することができなくなり、次の符号化単位の先頭を受信するまでの間、復号画像が著しく劣化することがある。あるいは、復号処理を継続することができなくなることがある。
また、エラーが発生しているピクチャがIピクチャ又はPピクチャである場合、そのピクチャを参照ピクチャとして復号処理を実施するピクチャにも当該エラーが伝播してしまうため、次のGOPの先頭を受信するまでの間、復号画像の著しい劣化が継続する。
The encoded data of the moving image is transmitted from the image encoding device through a transmission path such as a network, for example, and the receiving side image decoding device performs a decoding process on the encoded data so that the original moving image is obtained. Can be obtained.
However, if an error or omission of encoded data occurs on the transmission path, an error occurs during the decoding process of the encoded data, and the original image cannot be correctly decoded. The decoded image may be significantly degraded until the head is received. Alternatively, the decoding process may not be continued.
If the picture in which the error has occurred is an I picture or a P picture, the error is also propagated to a picture that is to be decoded using that picture as a reference picture, so the head of the next GOP is received. Until then, the decoded image continues to deteriorate significantly.
近年の画像復号装置では、伝送路上で符号化データの誤りや欠落等が発生して、その符号化データの復号処理中にエラーが発生しても、復号画像の劣化を低減する手段として、エラーが発生している箇所を隠蔽するエラーコンシールメント機能を実装しているものがある。
例えば、エラーの影響が大きいIピクチャに対するエラーコンシールメント方式として、復号画像におけるエラー発生箇所の画像を、直前のIピクチャ/Pピクチャの同位置の画像に置換して復号画像を表示する方式、動き情報を用いて動きベクトルが示す直前のIピクチャ/Pピクチャの画像に置換して復号画像を表示する方式、DC(直流)成分だけから復号された画像に置換して復号画像を表示する方式などがある。
In recent image decoding apparatuses, even if errors or omissions in encoded data occur on a transmission path and an error occurs during the decoding process of the encoded data, an error is detected as a means for reducing degradation of the decoded image. Some have implemented an error concealment function that hides the location where the error occurs.
For example, as an error concealment method for an I picture having a large influence of error, a method of displaying a decoded image by replacing an image at an error occurrence position in a decoded image with an image at the same position of the immediately preceding I picture / P picture, motion A method for displaying a decoded image by replacing it with the image of the previous I picture / P picture indicated by the motion vector using information, a method for displaying a decoded image by replacing with an image decoded from only a DC (direct current) component, etc. There is.
しかし、時間的に前方向の画像を表示する方式では、シーンチェンジなどが発生して、前方向の画像との相関が低い場合には劣化が大きい復号画像になる。
また、DC成分だけから復号する方式では、前方向の画像との相関が高い場合、前方向の画像を用いてエラー隠蔽を行う方が視覚的な違和感が少ない復号画像を得ることが可能になるため、エラーコンシールメント方式として適切であると言えなくなる。
そこで、以下の特許文献1に開示されている画像復号装置では、符号化データの復号処理中にエラーが発生すると、その復号処理により得られたDC値、動きベクトルの大きさ、動きベクトルの変化量等が所定の範囲内にあるか否かを判定し、その判定結果に応じて、使用するエラーコンシールメント方式を決定するようにしている。
However, in the method of displaying the forward image in terms of time, a scene change or the like occurs, and when the correlation with the forward image is low, the decoded image is greatly deteriorated.
Further, in the method of decoding only from the DC component, when the correlation with the forward image is high, it is possible to obtain a decoded image with less visual discomfort by performing error concealment using the forward image. Therefore, it cannot be said that it is appropriate as an error concealment method.
Therefore, in the image decoding device disclosed in
従来の画像復号装置は以上のように構成されているので、動きベクトル等を基準にして、符号化を行うマクロブロック単位にエラーコンシールメント方式を切り替えているが、画像符号化装置において、例えば、符号化効率を重視して動きベクトルを算出しているような場合、その動きベクトルが実際の動きと異なり、マクロブロック毎にばらばらになっていることがある。このような場合、動きベクトル等を基準にして、エラーコンシールメント方式を切り替えると、細かい単位で画像の乱れが発生して、主観的な劣化が大きくなる課題があった。
また、画像符号化装置における可変長符号化処理の影響で、実際にエラーが発生しているマクロブロックと、エラーが検出されたマクロブロックが異なっていることがあるが、実際にエラーが発生しているマクロブロックの位置から、エラーが検出されたマクロブロックの位置までが、複数のマクロブロックラインに亘っている場合に、DC値によるエラーコンシールメント方式が選択されると、復号画像の劣化が大きくなる課題があった。
Since the conventional image decoding apparatus is configured as described above, the error concealment method is switched for each macroblock to be encoded on the basis of a motion vector or the like. In the image encoding apparatus, for example, When a motion vector is calculated with an emphasis on coding efficiency, the motion vector may be different for each macroblock, unlike an actual motion. In such a case, when the error concealment method is switched on the basis of a motion vector or the like, there is a problem that image disturbance occurs in a fine unit and subjective deterioration becomes large.
Also, due to the effect of variable length coding processing in the image coding device, the macro block where the error actually occurs may be different from the macro block where the error is detected, but the error actually occurs. If the error concealment method based on the DC value is selected when the position from the macro block to the position of the macro block where the error is detected extends over a plurality of macro block lines, the decoded image is degraded. There was a growing problem.
この発明は上記のような課題を解決するためになされたもので、画像符号化装置における可変長符号化処理の影響を受けることなく、動きに対する追従性を維持しながら、主観的な劣化が少ない復号画像を得ることができる画像復号装置を得ることを目的とする。 The present invention has been made to solve the above-described problems, and is less affected by variable length encoding processing in the image encoding apparatus, while maintaining the tracking capability with respect to motion and with less subjective deterioration. An object of the present invention is to obtain an image decoding apparatus capable of obtaining a decoded image.
この発明に係る画像復号装置は、画像復号手段の復号処理中にエラーが検出された場合、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定するとともに、そのマクロブロックを含むピクチャからエラーが伝播するピクチャの全体をコンシールメント対象に決定するコンシールメント対象決定手段と、画像復号手段から出力された符号化パラメータに含まれているピクチャタイプを参照して、データ蓄積手段に蓄積されている復号画像及び符号化パラメータの中から、コンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定する参照データ決定手段と、参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトルを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する動きベクトル算出手段と、参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと動きベクトル算出手段により算出されたコンシールメント処理単位の動きベクトルを参照して、コンシールメント処理に用いるコンシールメント方式を、フレーム間の画像データおよび動きベクトルを用いたフレーム間コンシールメント処理方式または同一フレーム内の画像データを用いたフレーム内コンシールメント処理方式に決定するコンシールメント方式決定手段とを設け、コンシールメント処理手段が、コンシールメント方式決定手段により決定されたコンシールメント方式にしたがって、参照データ決定手段により決定された参照用の復号画像を必要に応じて参照しながら、コンシールメント対象決定手段により決定されたコンシールメント対象を隠蔽するコンシールメント処理を実施するようにしたものである。 When an error is detected during the decoding process of the image decoding means, the image decoding apparatus according to the present invention determines the entire slice including the macroblock in which the error has occurred as a concealment target, and selects the macroblock as a macroblock. The concealment target determining means for determining the entire picture in which an error is propagated from the included picture as the concealment target, and the picture type included in the encoding parameter output from the image decoding means, Reference data determination means for determining a reference decoded image and encoding parameter used for concealment processing to be concealed from among the stored decoded images and encoding parameters, and a code determined by the reference data determination means Motion vector for each macroblock included in the activation parameter A motion vector calculation means for calculating a motion vector for a concealment processing unit composed of a plurality of macroblocks using a data block, and a motion for each macroblock included in the encoding parameter determined by the reference data determination means The concealment method used for the concealment processing is referred to by referring to the vector and macroblock type and the motion vector of the concealment processing unit calculated by the motion vector calculating means , and the interframe concealment using the image data and the motion vector between the frames. a concealment method determination means for determining a frame concealment processing system using the image data of the instrument processing method or in the same frame provided, the concealment processing unit, which is determined by the concealment method determination means concealing The concealment process for concealing the concealment target determined by the concealment target determination unit is performed in accordance with the reference method, referring to the decoded image for reference determined by the reference data determination unit as necessary. It is a thing.
この発明によれば、画像復号手段の復号処理中にエラーが検出された場合、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定するとともに、そのマクロブロックを含むピクチャからエラーが伝播するピクチャの全体をコンシールメント対象に決定するコンシールメント対象決定手段と、画像復号手段から出力された符号化パラメータに含まれているピクチャタイプを参照して、データ蓄積手段に蓄積されている復号画像及び符号化パラメータの中から、コンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定する参照データ決定手段と、参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトルを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する動きベクトル算出手段と、参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと動きベクトル算出手段により算出されたコンシールメント処理単位の動きベクトルを参照して、コンシールメント処理に用いるコンシールメント方式を、フレーム間の画像データおよび動きベクトルを用いたフレーム間コンシールメント処理方式または同一フレーム内の画像データを用いたフレーム内コンシールメント処理方式に決定するコンシールメント方式決定手段とを設け、コンシールメント処理手段が、コンシールメント方式決定手段により決定されたコンシールメント方式にしたがって、参照データ決定手段により決定された参照用の復号画像を必要に応じて参照しながら、コンシールメント対象決定手段により決定されたコンシールメント対象を隠蔽するコンシールメント処理を実施するように構成したので、画像符号化装置における可変長符号化処理の影響を受けることなく、動きに対する追従性を維持しながら、主観的な劣化が少ない復号画像を得ることができる効果がある。 According to the present invention, when an error is detected during the decoding process of the image decoding means, the entire slice including the macroblock in which the error has occurred is determined as a concealment target, and from the picture including the macroblock. With reference to the picture type included in the encoding parameter output from the image decoding unit, the concealment target determining unit that determines the entire picture in which the error is propagated as the concealment target, and the data is stored in the data storage unit. Among the decoded image and the encoding parameter, the reference data determining means for determining the reference decoded image and the encoding parameter used for the concealment process to be concealed, and the encoding parameter determined by the reference data determining means. Using the included macroblock-based motion vector Motion vector calculation means for calculating a motion vector for a concealment processing unit composed of a plurality of macroblocks, and a motion vector and macroblock type for each macroblock included in the encoding parameter determined by the reference data determination means The concealment method used for the concealment process with reference to the motion vector of the concealment processing unit calculated by the motion vector calculating means is the same as the inter-frame concealment processing method using the image data and the motion vector between the frames. a concealment method determination means for determining a frame concealment processing system using the image data in the frame is provided, the concealment processing means, the concealment method determined by the concealment method determination means Therefore, the concealment process for concealing the concealment target determined by the concealment target determination unit is performed while referring to the decoded image for reference determined by the reference data determination unit as necessary. Therefore, there is an effect that it is possible to obtain a decoded image with less subjective deterioration while maintaining the followability to the motion without being affected by the variable length coding process in the image coding apparatus.
実施の形態1.
図1はこの発明の実施の形態1による画像復号装置を示す構成図である。
図1において、画像復号部1は例えば国際標準規格であるMPEG−2やH.264/AVCなどの規格に適用しているデコーダであり、画像符号化装置から動き補償予測処理及び可変長符号化処理を実施して生成されている画像の符号化データを入力すると、その符号化データに対する復号処理を実施して、その復号結果である復号画像と符号化パラメータ(例えば、ピクチャタイプ、マクロブロック単位の動きベクトル及びマクロブロックタイプ、スライスの先頭のマクロブロックを示す位置情報などを含む)を出力する処理を実施する。
また、画像復号部1は復号処理中にエラーを検出すると、そのエラーが発生しているマクロブロックの位置情報やエラー検出フラグなどを含むエラー情報を出力する処理を実施する。
なお、画像復号部1は画像復号手段を構成している。
1 is a block diagram showing an image decoding apparatus according to
In FIG. 1, an
Further, when detecting an error during the decoding process, the
The
フレームメモリ部2は画像復号部1から出力された復号画像及び符号化パラメータをピクチャ単位に蓄積する例えばハードディスクやRAMなどの記録媒体である。なお、フレームメモリ部2はデータ蓄積手段を構成している。
The
コンシールメント対象決定部3は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、画像復号部1から出力されたエラー情報に含まれているエラー検出フラグが有意である場合(エラーが検出された旨を示している場合)、そのエラー情報に含まれている位置情報と画像復号部1から出力された符号化パラメータに含まれているスライスの先頭のマクロブロックを示す位置情報を参照して、エラーが発生しているマクロブロックを含むスライスを特定し、そのスライスの全体をコンシールメント対象に決定する処理を実施する。
また、コンシールメント対象決定部3は符号化パラメータに含まれているピクチャタイプを参照して、エラーが発生しているマクロブロックを含むピクチャ(以下、「エラー発生ピクチャ」と称する)からエラーが伝播するピクチャ(以下、「エラー伝播ピクチャ」と称する)を特定し、そのエラー伝播ピクチャの全体をコンシールメント対象に決定する処理を実施する。
なお、コンシールメント対象決定部3はコンシールメント対象決定手段を構成している。
The concealment
Further, the concealment
In addition, the concealment
参照フレーム決定部4は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、画像復号部1から出力されたエラー情報に含まれているエラー検出フラグが有意である場合、画像復号部1から出力された符号化パラメータに含まれているピクチャタイプを参照して、フレームメモリ部2に蓄積されている復号画像及び符号化パラメータの中から、コンシールメント対象決定部3により決定されたコンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定し、参照用の復号画像及び符号化パラメータとコンシールメント対象画像(コンシールメント対象を含む復号画像)の出力指示をフレームメモリ部2に出力する処理を実施する。なお、参照フレーム決定部4は参照データ決定手段を構成している。
The reference
推定動きベクトル算出部5は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、参照フレーム決定部4の出力指示の下で、フレームメモリ部2から出力された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する処理を実施する。なお、推定動きベクトル算出部5は動きベクトル算出手段を構成している。
The estimated motion
コンシールメント方式決定部6は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、フレームメモリ部2から出力された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと推定動きベクトル算出部5により算出されたコンシールメント処理単位の動きベクトルを参照して、コンシールメント処理に用いるコンシールメント方式を決定する処理を実施する。なお、コンシールメント方式決定部6はコンシールメント方式決定手段を構成している。
The concealment
コンシールメント処理部7は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、コンシールメント方式決定部6により決定されたコンシールメント方式にしたがって、参照フレーム決定部4の出力指示の下で、フレームメモリ部2から出力された参照用の復号画像を必要に応じて参照しながら、フレームメモリ部2から出力されたコンシールメント対象画像内のコンシールメント対象を隠蔽するコンシールメント処理を実施する。
即ち、コンシールメント処理部7はコンシールメント方式決定部6により決定されたコンシールメント方式がフレーム間コンシールメント処理方式である場合、フレームメモリ部2から出力された参照用の復号画像と推定動きベクトル算出部5により算出されたコンシールメント処理単位の動きベクトルを用いて、フレームメモリ部2から出力されたコンシールメント対象画像内のコンシールメント対象を隠蔽するコンシールメント処理を実施し、そのコンシールメント方式がフレーム内コンシールメント処理方式である場合、コンシールメント対象決定部3により決定されたコンシールメント対象の周囲のマクロブロックを用いて、そのコンシールメント対象画像内のコンシールメント対象を隠蔽するコンシールメント処理を実施する。
なお、コンシールメント処理部7はコンシールメント処理手段を構成している。
The
That is, when the concealment method determined by the concealment
The
図1の例では、画像復号装置の構成要素である画像復号部1、フレームメモリ部2、コンシールメント対象決定部3、参照フレーム決定部4、推定動きベクトル算出部5、コンシールメント方式決定部6及びコンシールメント処理部7のそれぞれが専用のハードウェアで構成されているものを想定しているが、画像復号装置がコンピュータで構成される場合、画像復号部1、フレームメモリ部2、コンシールメント対象決定部3、参照フレーム決定部4、推定動きベクトル算出部5、コンシールメント方式決定部6及びコンシールメント処理部7の処理内容を記述しているプログラムをコンピュータのメモリに格納し、当該コンピュータのCPUが当該メモリに格納されているプログラムを実行するようにしてもよい。
In the example of FIG. 1, an
次に動作について説明する。
画像復号部1は、画像符号化装置から動き補償予測処理及び可変長符号化処理を実施して生成されている画像の符号化データを入力すると、その符号化データに含まれている符号化方式情報を参照して、画像符号化装置における符号化方式を認識し、その符号化方式にしたがって、その符号化データに対する復号処理を実施する。
画像復号部1は、その符号化データの復号処理により得られた復号画像と符号化パラメータ(例えば、ピクチャタイプ、マクロブロック単位の動きベクトル及びマクロブロックタイプ、スライスの先頭のマクロブロックを示す位置情報などを含む)をフレームメモリ部2に出力する。
これにより、フレームメモリ部2には、画像復号部1から出力された復号画像及び符号化パラメータがピクチャ単位に1フレーム時間以上保存される。
Next, the operation will be described.
When the
The
As a result, the
また、画像復号部1は、その符号化データの復号処理中にエラーの検出処理を実施し、エラーが発生しているマクロブロックの位置情報やエラー検出フラグなどを含むエラー情報と符号化パラメータをコンシールメント対象決定部3及び参照フレーム決定部4に出力する。
なお、画像復号部1は、符号化データの復号処理中に、例えば、符号化方式の規格で規定されているシンタックスとの不一致や構文解析エラーを検出したとき、あるいは、デコード値が所定の範囲外であるときに、エラーを検出する。
In addition, the
Note that the
コンシールメント対象決定部3は、画像復号部1からエラー情報が出力され、そのエラー情報に含まれているエラー検出フラグが有意である場合(エラーが検出された旨を示している場合)、そのエラー情報に含まれている位置情報と画像復号部1から出力された符号化パラメータに含まれているスライスの先頭のマクロブロックを示す位置情報を参照して、エラーが発生しているマクロブロックを含むスライスを特定し、そのスライスの全体をコンシールメント対象に決定する。
ここで、図2はエラーが発生しているマクロブロック及びコンシールメント対象のスライスの一例を示す説明図である。
図2の例では、エラーが発生しているマクロブロックが上から2番目のスライスに含まれているので、上から2番目のスライスの先頭及び最後尾のマクロブロックを特定することで、上から2番目のスライスの全体をコンシールメント対象に決定している。
When the error information is output from the
Here, FIG. 2 is an explanatory diagram illustrating an example of a macroblock in which an error has occurred and a slice to be concealed.
In the example of FIG. 2, since the macro block in which an error has occurred is included in the second slice from the top, by specifying the first and last macro blocks of the second slice from the top, The entire second slice is determined as a concealment target.
このように、コンシールメント対象決定部3では、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定しているが、その理由は、復号処理中にエラーが発生すると、エラーが発生しているマクロブロックから、次の符号化単位(次のスライス)の先頭までエラーが継続するとともに、実際にエラーが発生しているマクロブロックとエラーを検出しているマクロブロックが異なっている場合があるからである。
As described above, the concealment
また、コンシールメント対象決定部3は、符号化パラメータに含まれているピクチャタイプを参照して、エラーが発生しているマクロブロックを含むエラー発生ピクチャから、エラーが伝播するエラー伝播ピクチャを特定し、そのエラー伝播ピクチャの全体をコンシールメント対象に決定する。
即ち、エラー発生ピクチャがIピクチャ又はPピクチャである場合は、図3に示すように、そのピクチャを動き補償予測により参照している復号画像にもエラーが伝播してしまう。
そのため、エラーを検出しているピクチャがIピクチャ又はPピクチャである場合、後続のピクチャから次のIピクチャまでの間の全てのピクチャをコンシールメント対象に決定する。また、エラーを検出しているIピクチャ又はPピクチャの次のIピクチャと、その後のPピクチャとの間のBピクチャをコンシールメント対象に決定する。
なお、コンシールメント対象決定部3は、コンシールメント対象を決定すると、そのコンシールメント対象を示すコンシールメント対象情報を参照フレーム決定部4、推定動きベクトル算出部5及びコンシールメント処理部7に出力するが、エラーが発生していないピクチャに対するコンシールメント対象情報についてはゼロを出力する。
Further, the concealment
That is, when the error-occurring picture is an I picture or a P picture, as shown in FIG. 3, the error also propagates to a decoded picture that refers to that picture by motion compensation prediction.
Therefore, when the picture from which an error is detected is an I picture or a P picture, all the pictures from the subsequent picture to the next I picture are determined as concealment targets. Further, the B picture between the I picture in which an error is detected or the I picture next to the P picture and the subsequent P picture is determined as a concealment target.
When the concealment
参照フレーム決定部4は、画像復号部1から出力されたエラー情報に含まれているエラー検出フラグが有意である場合、画像復号部1から出力された符号化パラメータに含まれているピクチャタイプを参照して、フレームメモリ部2に蓄積されている復号画像及び符号化パラメータの中から、コンシールメント対象決定部3により決定されたコンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定する。
ここで、図4は動きベクトルを用いてフレーム間コンシールメント処理を行う場合の参照用の復号画像及び符号化パラメータの一例を示す説明図である。
When the error detection flag included in the error information output from the
Here, FIG. 4 is an explanatory diagram showing an example of a decoded image for reference and an encoding parameter when performing an interframe concealment process using a motion vector.
エラー発生ピクチャ又はエラー伝播ピクチャがIピクチャ又はPピクチャである場合、図4(a)に示すように、フレーム間コンシールメント処理に用いられる参照用の復号画像として、符号化順で直前のIピクチャ又はPピクチャが使用される。
また、推定動きベクトル算出部5により推定動きベクトルが算出される際に使用される符号化パラメータとして、エラー発生ピクチャであれば直前のPピクチャ、エラー伝播ピクチャであれば自ピクチャの符号化パラメータが使用される。
その理由は、エラー発生ピクチャの符号化パラメータは、正しくない可能性が高いが、エラー伝播ピクチャの符号化パラメータは、正しく復号されているからである。
When the error occurrence picture or the error propagation picture is an I picture or a P picture, as shown in FIG. 4A, as the decoded picture for reference used in the interframe concealment process, the I picture immediately before in the coding order Or a P picture is used.
In addition, as an encoding parameter used when the estimated motion
The reason is that the coding parameter of the error occurrence picture is likely to be incorrect, but the coding parameter of the error propagation picture is correctly decoded.
エラー発生ピクチャ又はエラー伝播ピクチャがBピクチャである場合、図4(b)に示すように、フレーム間コンシールメント処理に用いられる参照用の復号画像として、符号化順で前方向の2枚のIピクチャ又はPピクチャ(表示順で前方向及び後方向の2枚のIピクチャ又はPピクチャ)が使用される。
また、推定動きベクトル算出部5により推定動きベクトルが算出される際に使用される符号化パラメータとして、符号化順で直前のPピクチャ(表示順で後方向のPピクチャ)の符号化パラメータが使用される。
When the error occurrence picture or the error propagation picture is a B picture, as shown in FIG. 4B, as a reference decoded image used in the inter-frame concealment process, two I frames in the forward direction in the coding order are used. A picture or a P picture (two I pictures or P pictures in forward and backward directions in display order) is used.
Also, as the encoding parameter used when the estimated motion
参照フレーム決定部4は、コンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定すると、その復号画像をコンシールメント処理部7に出力する指示をフレームメモリ部2に与え、その符号化パラメータを推定動きベクトル算出部5及びコンシールメント方式決定部6に出力する指示をフレームメモリ部2に与える。
また、参照フレーム決定部4は、コンシールメント対象画像(コンシールメント対象を含む復号画像)をコンシールメント処理部7に出力する指示をフレームメモリ部2に与える。
これにより、コンシールメント処理部7には、参照用の復号画像とコンシールメント対象画像が与えられ、推定動きベクトル算出部5及びコンシールメント方式決定部6には、符号化パラメータが与えられる。
When the reference
In addition, the reference
Thereby, the
推定動きベクトル算出部5は、参照フレーム決定部4の出力指示の下で、フレームメモリ部2から符号化パラメータを受けると、その符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する。
即ち、推定動きベクトル算出部5は、マクロブロック単位の動きベクトルを用いて、フレーム間コンシールメント処理が行われた場合、動きベクトルが当らない場合に細かい単位で画像の乱れが発生して、主観的な劣化が大きくなるので、コンシールメント対象内の複数のマクロブロック(例えば、水平方向4マクロブロック×垂直方向4マクロブロック)をコンシールメント処理単位として、コンシールメント処理毎に推定動きベクトルを算出している。
When the estimated motion
In other words, the estimated motion
推定動きベクトル算出部5は、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルの大きさに基づいてコンシールメント処理単位の動きベクトルを算出するが、以下、コンシールメント処理単位の動きベクトルの算出法を具体的に説明する。
例えば、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルの水平成分及び垂直成分毎に、メディアン(中間値)を求めて、そのメディアンをコンシールメント処理単位の動きベクトルとする。
ただし、マクロブロックのマクロブロックタイプがイントラ予測である場合、当該マクロブロックの動きベクトルを、メディアンを求める対象から除外するようにする。
The estimated motion
For example, a median (intermediate value) is obtained for each horizontal component and vertical component of motion vectors of a plurality of macroblocks constituting a concealment processing unit, and the median is set as a motion vector of the concealment processing unit.
However, when the macroblock type of the macroblock is intra prediction, the motion vector of the macroblock is excluded from the target for calculating the median.
ここでは、推定動きベクトル算出部5が複数のマクロブロックの動きベクトルの水平成分及び垂直成分毎に、メディアンを求める例を示したが、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルの平均値を求めて、その平均値をコンシールメント処理単位の動きベクトルとしてもよい。
ただし、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルの平均値を求めたのち、それらの動きベクトルと当該平均値の差分値を求め、その差分値が所定の閾値よりも大きい動きベクトルを除外して、再度、残りの動きベクトルの平均値を算出し、その平均値をコンシールメント処理単位の動きベクトルとする。
Here, an example is shown in which the estimated motion
However, after obtaining an average value of motion vectors of a plurality of macroblocks constituting a concealment processing unit, a difference value between those motion vectors and the average value is obtained, and the difference value is larger than a predetermined threshold value. Excluding the motion vector, the average value of the remaining motion vectors is calculated again, and the average value is used as the motion vector of the concealment processing unit.
また、推定動きベクトル算出部5が、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルを大きさに応じて複数のクラスに分類し、複数のクラスの中で、属している動きベクトルが一番多いクラスを選択し、そのクラスに属している動きベクトルのメディアン、平均値、または、平均値に最も近い動きベクトルの値をコンシールメント処理単位の動きベクトルとしてもよい。
Further, the estimated motion
推定動きベクトル算出部5は、コンシールメント処理単位の動きベクトルを算出すると、その動きベクトルと位置情報(コンシールメント処理を行う位置を示す情報)を含む推定動きベクトル情報をコンシールメント方式決定部6に出力する。
ただし、フレームメモリ部2から出力された符号化パラメータに含まれているピクチャタイプを参照し、コンシールメント対象がIピクチャ又はPピクチャであれば、上記のようにして算出しているコンシールメント処理単位の動きベクトルをそのまま推定動きベクトル情報に含めて出力するが、コンシールメント対象がBピクチャであれば、算出しているコンシールメント処理単位の動きベクトルを、表示順で前後のIピクチャ又はPピクチャとの表示時刻差に応じて、双方向への動きベクトル(前方向動きベクトル、後方向動きベクトル)に置き換え、双方向への動きベクトルをコンシールメント処理単位の動きベクトルとして推定動きベクトル情報に含めて出力する。
When the estimated motion
However, if the concealment target is an I picture or a P picture with reference to the picture type included in the encoding parameter output from the
ここで、図5はコンシールメント対象がBピクチャである場合のコンシールメント処理単位の動きベクトルの算出例を示す説明図である。
図5の例では、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルから算出されたコンシールメント処理単位の動きベクトルをMVcolとして、前方向動きベクトルMV1と後方向動きベクトルMV2を算出している。
MV1=T1/(T1+T2)×MVcol
MV2=T2/(T1+T2)×(−MVcol)
ただし、T1,T2は表示時刻差である。
Here, FIG. 5 is an explanatory diagram illustrating an example of calculating a motion vector in units of concealment processing when the concealment target is a B picture.
In the example of FIG. 5, the forward motion vector MV1 and the backward motion vector MV2 are calculated using the motion vector of the concealment processing unit calculated from the motion vectors of a plurality of macroblocks constituting the concealment processing unit as MVcol. doing.
MV1 = T1 / (T1 + T2) × MVcol
MV2 = T2 / (T1 + T2) × (−MVcol)
However, T1 and T2 are display time differences.
コンシールメント方式決定部6は、フレームメモリ部2から符号化パラメータを受け、推定動きベクトル算出部5から推定動きベクトル情報を受けると、その符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと、その推定動きベクトル情報に含まれているコンシールメント処理単位の動きベクトルとを参照して、コンシールメント処理に用いるコンシールメント方式を決定する。
以下、コンシールメント方式決定部6によるコンシールメント方式の決定処理を具体的に説明する。
図6はコンシールメント方式の判定条件を示す説明図である。
When the concealment
Hereinafter, the concealment method determination process by the concealment
FIG. 6 is an explanatory diagram showing determination conditions for the concealment method.
コンシールメント方式決定部6は、コンシールメント処理単位を構成している複数のマクロブロックのマクロブロックタイプを確認し、マクロブロックタイプがイントラ予測であるマクロブロックの割合が所定値以上である場合(イントラ予測であるマクロブロックが所定の閾値よりも多く含まれている場合)、コンシールメント処理単位内に動きが大きいマクロブロックが多く含まれていることが想定されるため、フレーム間コンシールメント処理が適当でないと判断し、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定する(図6(a)を参照)。この状況は、例えば、シーンチェンジが発生した場合にも当てはまることが想定される。
The concealment
コンシールメント方式決定部6は、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルにおける最大値と最小値の差分絶対値が所定の閾値以上である場合、コンシールメント処理単位内に動きが大きく異なる複数のマクロブロックが含まれていることが想定されるため、フレーム間コンシールメント処理が適当でないと判断し、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定する(図6(b)を参照)。
The concealment
コンシールメント方式決定部6は、コンシールメント処理単位を構成している複数のマクロブロックの動きベクトルを大きさに応じて複数のクラスに分類し、分類されたクラスの数(動きベクトルの分類数)が所定の閾値以上である場合(動きベクトルの大きさの分布が広範囲に亘る場合)、コンシールメント処理単位内に動きが異なる複数のマクロブロックが多く含まれていることが想定されるため、フレーム間コンシールメント処理が適当でないと判断し、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定する(図6(c)を参照)。
The concealment
コンシールメント方式決定部6は、推定動きベクトル算出部5により算出されたコンシールメント処理単位の動きベクトルがピクチャの画面外を指し示している場合、参照用の復号画像が存在せず、ピクチャ境界の画素値等の固定値に置き換えることになって、復号画像の主観的な劣化が大きくなることが想定されるため、フレーム間コンシールメント処理が適当でないと判断し、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定する(図6(d)を参照)。
コンシールメント方式決定部6は、上記の判定条件のいずれにも該当しない場合、コンシールメント処理に用いるコンシールメント方式として、コンシールメント処理単位の動きベクトルを用いるフレーム間コンシールメント処理方式に決定する。
When the motion vector of the concealment processing unit calculated by the estimated motion
The concealment
コンシールメント処理部7は、コンシールメント方式決定部6がコンシールメント方式を決定すると、そのコンシールメント方式がフレーム間コンシールメント処理方式である場合、フレームメモリ部2から出力された参照用の復号画像と推定動きベクトル算出部5により算出されたコンシールメント処理単位の動きベクトルを用いて、フレームメモリ部2から出力されたコンシールメント対象画像内のコンシールメント対象を隠蔽するコンシールメント処理を実施する。
一方、そのコンシールメント方式がフレーム内コンシールメント処理方式である場合、コンシールメント対象決定部3から出力されたコンシールメント対象情報が示すコンシールメント対象の周囲のマクロブロックを用いて、そのコンシールメント対象画像内のコンシールメント対象を隠蔽するコンシールメント処理を実施する。
When the concealment
On the other hand, when the concealment method is the in-frame concealment processing method, the concealment target image is used by using the surrounding macroblocks of the concealment target indicated by the concealment target information output from the concealment
即ち、コンシールメント処理部7は、コンシールメント方式がフレーム間コンシールメント処理方式である場合、参照用の復号画像からコンシールメント処理単位の動きベクトルが指し示す位置の画像(コンシールメント処理単位と同じサイズの画像)を取得し、コンシールメント対象画像内のコンシールメント対象を、その動きベクトルが指し示す位置の画像に置き換えるコンシールメント処理を実施して、コンシールメント処理画像を生成する。
一方、コンシールメント方式がフレーム内コンシールメント処理方式である場合、コンシールメント対象決定部3により決定されたコンシールメント対象の上側に位置しているマクロブロック(エラーが発生していないマクロブロック)の下端ラインの画素、または、下側に位置しているマクロブロック(エラーが発生していないマクロブロック)の上端ラインの画素を取得し、コンシールメント対象画像内のコンシールメント対象の画素を、その取得した画素に置き換えるコンシールメント処理を実施して、コンシールメント処理画像を生成する。
That is, when the concealment method is an inter-frame concealment processing method, the
On the other hand, when the concealment method is an in-frame concealment processing method, the lower end of a macroblock (a macroblock in which no error has occurred) positioned above the concealment target determined by the concealment
ここでは、コンシールメント方式がフレーム内コンシールメント処理方式である場合、コンシールメント処理部7が、下端ライン又は上端ラインの画素に置き換えるものを示したが、コンシールメント対象画像を構成している全画素の輝度信号及び色差信号の最大値と最小値を算出し、エラーが発生しているコンシールメント処理単位の画像を構成している各画素の輝度信号及び色差信号が、その最大値と最小値の範囲から大きく外れている場合、エラーにより画像が乱れていると判断して、当該画素を範囲内に収まっている周辺の画素の平均値に置き換え、範囲内に収まっている画素についてはそのまま出力するようにしてもよい。
Here, when the concealment method is the intra-frame concealment processing method, the
コンシールメント処理部7は、ピクチャに含まれているコンシールメント対象内の全ての画素に対するコンシールメント処理が完了すると、1ピクチャ分のコンシールメント処理画像を出力する。
また、コンシールメント処理部7は、コンシールメント処理を実施している場合、1ピクチャ分のコンシールメント処理画像をフレームメモリ部2に格納して、以降のコンシールメント処理の参照用の復号画像として使用できるようにする。
ただし、コンシールメント処理画像がIピクチャ又はPピクチャである場合に限り、そのコンシールメント処理画像を参照用の復号画像としてフレームメモリ部2に格納する。
When the concealment processing for all the pixels within the concealment target included in the picture is completed, the
In addition, when the concealment process is performed, the
However, only when the concealment processing image is an I picture or a P picture, the concealment processing image is stored in the
以上で明らかなように、この実施の形態1によれば、画像復号部1の復号処理中にエラーが検出された場合、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定するとともに、そのマクロブロックを含むピクチャからエラーが伝播するピクチャの全体をコンシールメント対象に決定するコンシールメント対象決定部3と、画像復号部1から出力された符号化パラメータに含まれているピクチャタイプを参照して、フレームメモリ部2に蓄積されている復号画像及び符号化パラメータの中から、コンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定する参照フレーム決定部4と、参照フレーム決定部4により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトルを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する推定動きベクトル算出部5と、参照フレーム決定部4により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと推定動きベクトル算出部5により算出されたコンシールメント処理単位の動きベクトルを参照して、コンシールメント処理に用いるコンシールメント方式を決定するコンシールメント方式決定部6とを設け、コンシールメント処理部7が、コンシールメント方式決定部6により決定されたコンシールメント方式にしたがって、参照フレーム決定部4により決定された参照用の復号画像を必要に応じて参照しながら、コンシールメント対象決定部3により決定されたコンシールメント対象を隠蔽するコンシールメント処理を実施するように構成したので、画像符号化装置における可変長符号化処理の影響を受けることなく、動きに対する追従性を維持しながら、主観的な劣化が少ない復号画像を得ることができる効果を奏する。
As apparent from the above, according to the first embodiment, when an error is detected during the decoding process of the
実施の形態2.
上記実施の形態1では、コンシールメント方式決定部6により決定されたコンシールメント方式がフレーム内コンシールメント処理方式である場合(動きベクトルを用いたフレーム間コンシールメント処理が適当でないと判断された場合)、コンシールメント処理部7が、コンシールメント対象の周囲のマクロブロックを用いて、そのコンシールメント対象画像を隠蔽するコンシールメント処理を実施するものを示したが、コンシールメント対象の周囲のマクロブロックを用いる代わりに、参照フレーム決定部4により決定された参照用の復号画像間(フレーム間)の同位置の画像データ(以下、「真裏画像データ」と称する)を用いて、コンシールメント対象画像を隠蔽するコンシールメント処理を実施するようにしてもよい。
この場合、コンシールメント処理部7が、過去のピクチャや周辺画素の特徴(平均値、最大値、最小値など)を算出する必要がなくなるため、簡易な構成を取ることが可能となる。
この実施の形態2でも、上記実施の形態1と同様の効果を得ることができる。
In the first embodiment, when the concealment method determined by the concealment
In this case, it is not necessary for the
In the second embodiment, the same effect as in the first embodiment can be obtained.
実施の形態3.
図7はこの発明の実施の形態3による画像復号装置を示す構成図であり、図において、図1と同一符号は同一または相当部分を示すので説明を省略する。
コンシールメント方式決定部8は図1のコンシールメント方式決定部6と同様に、コンシールメント処理に用いるコンシールメント方式を決定する処理を実施するが、コンシールメント処理に用いるコンシールメント方式として、フレーム間コンシールメント処理方式を用いない場合、フレームメモリ部2から出力されたコンシールメント対象画像(コンシールメント対象を含む復号画像)の全体に対するコンシールメント対象の割合を所定の閾値と比較し、コンシールメント対象の割合が閾値未満であれば、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定するが、コンシールメント対象の割合が閾値以上であれば、真裏画像データを用いてコンシールメント処理を実施する方式(上記実施の形態2の方式)に決定する処理を実施する。なお、コンシールメント方式決定部8はコンシールメント方式決定手段を構成している。
FIG. 7 is a block diagram showing an image decoding apparatus according to
The concealment
次に動作について説明する。
ただし、コンシールメント方式決定部8以外は、上記実施の形態1と同様であるため、コンシールメント方式決定部8の処理内容だけを説明する。
上記実施の形態1では、コンシールメント処理に用いるコンシールメント方式をフレーム間コンシールメント処理方式又はフレーム内コンシールメント処理方式のいずれかに決定しているが、この実施の形態3では、フレーム間コンシールメント処理方式、フレーム内コンシールメント処理方式、あるいは、真裏画像データを用いてコンシールメント処理を実施する方式に決定する点で相違している。
Next, the operation will be described.
However, since the configuration other than the concealment
In the first embodiment, the concealment method used for the concealment process is determined as either the inter-frame concealment process method or the intra-frame concealment process method. In the third embodiment, the inter-frame concealment method is used. It is different in that it is determined as a processing method, an in-frame concealment processing method, or a method for performing concealment processing using true back image data.
コンシールメント方式決定部8は、コンシールメント処理に用いるコンシールメント方式として、フレーム間コンシールメント処理方式を用いない場合、フレームメモリ部2から出力されたコンシールメント対象画像の全体に対するコンシールメント対象の割合を所定の閾値と比較する。
コンシールメント方式決定部8は、コンシールメント対象の割合が閾値未満である場合、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定するが、コンシールメント対象の割合が閾値以上である場合、フレーム内にコンシール元となる画像データが少ないため、フレーム内コンシールメント処理は適当でないと判断し、真裏画像データを用いてコンシールメント処理を実施する方式に決定する。
When the inter-frame concealment processing method is not used as the concealment method used for the concealment process, the concealment
The concealment
また、コンシールメント方式決定部8は、コンシールメント対象画像を構成している全画素の輝度信号及び色差信号の最大値と最小値を算出し、その最大値が所定の閾値よりも大きい場合、あるいは、その最小値が所定の閾値より小さい場合、コンシールメント対象を構成している画素の中で、その最大値と最小値の範囲内から大きく外れている画素を検出することができないため、フレーム内コンシールメント処理は適当でないと判断し、真裏画像データを用いてコンシールメント処理を実施する方式に決定する。
Further, the concealment
以上で明らかなように、この実施の形態3によれば、コンシールメント処理に用いるコンシールメント方式として、フレーム間コンシールメント処理方式を用いない場合、フレームメモリ部2から出力されたコンシールメント対象画像の全体に対するコンシールメント対象の割合を所定の閾値と比較し、コンシールメント対象の割合が閾値未満であれば、コンシールメント処理に用いるコンシールメント方式をフレーム内コンシールメント処理方式に決定し、コンシールメント対象の割合が閾値以上であれば、真裏画像データを用いてコンシールメント処理を実施する方式に決定するように構成したので、フレーム内コンシールメント処理方式では主観的な劣化を軽減できないような場合でも、劣化を改善しているコンシールメント処理画像を得ることができる効果を奏する。
As apparent from the above, according to the third embodiment, when the inter-frame concealment processing method is not used as the concealment method used for the concealment processing, the concealment target image output from the
実施の形態4.
図8はこの発明の実施の形態4による画像復号装置を示す構成図であり、図において、図1及び図7と同一符号は同一または相当部分を示すので説明を省略する。
コンシールメント対象決定部9は例えばCPUを実装している半導体集積回路、あるいは、ワンチップマイコンなどから構成されており、画像復号部1から出力されたエラー情報に含まれているエラー検出フラグが有意である場合、フレームメモリ部2に蓄積されている復号画像の中で、エラーが発生していない最新の復号画像における輝度信号又は色差信号の最大値及び最小値を特定し、マクロブロック内の画素値を上記最大値及び上記最小値と比較して、エラーが発生しているマクロブロックの検出処理を実施する。
また、コンシールメント対象決定部9はエラーが発生しているマクロブロックの検出処理で、エラーが発生しているマクロブロックを検出すると、そのマクロブロックから当該マクロブロックを含むスライスの最後までをコンシールメント対象に決定し、エラーが発生しているマクロブロックの検出処理で、エラーが発生しているマクロブロックを検出しなければ、上記実施の形態1〜3と同様に、画像復号部1の復号処理でエラーが検出されたマクロブロックを含むスライスの全体をコンシールメント対象に決定する処理を実施する。
また、コンシールメント対象決定部9はエラー伝播ピクチャのコンシールメント対象については、エラーが発生しているマクロブロックの検出処理で、エラーが発生しているマクロブロックが検出されれば、そのマクロブロックから当該マクロブロックを含むエラー伝播ピクチャの最後までをコンシールメント対象に決定する処理を実施する。
なお、コンシールメント対象決定部9はエラーマクロブロック検出手段及びコンシールメント対象決定手段を構成している。
FIG. 8 is a block diagram showing an image decoding apparatus according to
The concealment target determination unit 9 is composed of, for example, a semiconductor integrated circuit on which a CPU is mounted, a one-chip microcomputer, or the like, and the error detection flag included in the error information output from the
When the concealment target determination unit 9 detects a macroblock in which an error has occurred in the detection process of a macroblock in which an error has occurred, the concealment target determination unit 9 performs the concealment from that macroblock to the end of the slice including the macroblock. If the macroblock in which an error has occurred is not detected in the macroblock detection process in which an error has occurred, the decoding process of the
Further, the concealment target determination unit 9 can detect the error propagation picture concealment target from the macro block if the macro block in which the error has occurred is detected in the detection process of the macro block in which the error has occurred. A process of determining up to the end of the error propagation picture including the macroblock as a concealment target is performed.
The concealment target determining unit 9 constitutes an error macroblock detection unit and a concealment target determination unit.
次に動作について説明する。
ただし、コンシールメント対象決定部9以外は、上記実施の形態1〜3と同様であるため、コンシールメント対象決定部9の処理内容だけを説明する。
上記実施の形態1〜3では、コンシールメント対象決定部3が、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定するものを示したが、実際にはエラーが発生していないマクロブロックもコンシールメント処理が施されるため、当該マクロブロックの画質が劣化することがある。
そこで、この実施の形態4では、実際にエラーが発生しているマクロブロックの位置を推定し、そのマクロブロックから当該マクロブロックを含むスライスの最後までをコンシールメント対象に決定することで、実際にはエラーが発生していないマクロブロックの画質の劣化を防止するようにしている。
Next, the operation will be described.
However, since the components other than the concealment target determining unit 9 are the same as those in the first to third embodiments, only the processing content of the concealment target determining unit 9 will be described.
In the first to third embodiments, the concealment
Therefore, in the fourth embodiment, the position of the macro block in which the error actually occurs is estimated, and by determining from the macro block to the end of the slice including the macro block as the concealment target, Is designed to prevent deterioration of the image quality of macroblocks in which no error has occurred.
コンシールメント対象決定部9は、画像復号部1から出力されたエラー情報に含まれているエラー検出フラグが有意である場合、フレームメモリ部2に蓄積されている復号画像の中で、エラーが発生していない最新の復号画像における輝度信号又は色差信号の最大値及び最小値を特定し、マクロブロック内の画素値を上記最大値及び上記最小値と比較して、エラーが発生しているマクロブロックの検出処理を実施する。
即ち、コンシールメント対象決定部9は、スライスの先頭のマクロブロックから順番に、画像復号部1の復号処理でエラーが検出されたマクロブロック(実際にはエラーが発生していない可能性があるマクロブロック)まで、当該マクロブロック内の画素値と、上記の最大値及び最小値とを比較する。
そして、コンシールメント対象決定部9は、その最大値と最小値の範囲から大きく外れている画素値を含んでいるマクロブロックを検出(以下、「検出マクロブロック」と称する)する。その検出マクロブロックはエラーにより画像が乱れていると判断する。
The concealment target determination unit 9 generates an error in the decoded image stored in the
That is, the concealment target determination unit 9 sequentially detects macroblocks in which errors are detected in the decoding process of the image decoding unit 1 (macroblocks in which no error may actually occur), starting from the first macroblock of the slice. Until the block), the pixel value in the macroblock is compared with the maximum value and the minimum value.
Then, the concealment target determination unit 9 detects a macroblock including a pixel value that is greatly deviated from the range of the maximum value and the minimum value (hereinafter referred to as “detected macroblock”). The detected macroblock determines that the image is disturbed due to an error.
コンシールメント対象決定部9は、スライスの先頭のマクロブロックから検出処理を開始し、最初の検出マクロブロックから当該スライスの最後尾のマクロブロックまでをコンシールメント対象に決定する。
コンシールメント対象決定部9は、マクロブロックの検出処理で、エラーが発生しているマクロブロックを検出することができなければ、上記実施の形態1〜3と同様に、画像復号部1の復号処理でエラーが検出されたマクロブロックを含むスライスの全体をコンシールメント対象に決定する。
The concealment target determination unit 9 starts detection processing from the first macroblock of the slice, and determines from the first detected macroblock to the last macroblock of the slice as a concealment target.
If the concealment target determining unit 9 cannot detect a macroblock in which an error has occurred in the macroblock detection processing, the decoding processing of the
コンシールメント対象決定部9は、エラー伝播ピクチャについては、ピクチャの全体に対して、同様の検出処理を実施して、最大値と最小値の範囲から大きく外れている画素値を含んでいるマクロブロックを検出すれば、最初の検出マクロブロックから当該ピクチャの最後尾のマクロブロックまでをコンシールメント対象に決定する。
一方、マクロブロックの検出処理で、エラーが発生しているマクロブロックを検出することができなければ、上記実施の形態1〜3と同様に、エラー伝播ピクチャの全体をコンシールメント対象に決定する。
For the error propagation picture, the concealment target determination unit 9 performs the same detection process on the entire picture, and includes a macroblock that includes a pixel value that is significantly out of the range of the maximum value and the minimum value. Is detected, the first macroblock to the last macroblock of the picture is determined as a concealment target.
On the other hand, if the macroblock in which an error has occurred cannot be detected in the macroblock detection process, the entire error propagation picture is determined as a concealment object as in the first to third embodiments.
ここでは、エラー伝播ピクチャについても、同様の検出処理を実施するものを示したが、エラー伝播ピクチャの符号化パラメータに含まれている動きベクトルの垂直成分の正負方向の最大値を各々求め、エラー発生ピクチャのコンシールメント対象から垂直方向の正負方向の各々に対して、動きベクトルの最大値が含まれるマクロブロックライン分を拡張した範囲をコンシールメント対象としてもよい。
次のエラー伝播ピクチャについても、同様に動きベクトルの最大値を求め、直前のエラー伝播ピクチャのコンシールメント範囲から動きベクトルの最大値が含まれるマクロブロックライン分を拡張した範囲をコンシールメント対象としてもよい。
Here, the error propagation picture has been shown to be subjected to the same detection process, but the maximum value in the positive and negative direction of the vertical component of the motion vector included in the encoding parameter of the error propagation picture is obtained for each error propagation picture. A range obtained by extending the macroblock line including the maximum value of the motion vector from the concealment target of the generated picture to each of the positive and negative directions in the vertical direction may be set as the concealment target.
For the next error propagation picture, the maximum value of the motion vector is obtained in the same way, and the range of the macroblock line that includes the maximum value of the motion vector from the concealment range of the previous error propagation picture is used as the concealment target. Good.
以上で明らかなように、この実施の形態4によれば、コンシールメント対象決定部9が、エラーが発生しているマクロブロックの検出処理を実施し、その検出処理で、エラーが発生しているマクロブロックを検出した場合、そのマクロブロックから当該マクロブロックを含むスライスの最後までをコンシールメント対象に決定するように構成したので、実際にはエラーが発生していないマクロブロックにおける画質の劣化を招くことなく、動きに対する追従性を維持しながら、主観的な劣化が少ない復号画像を得ることができる効果を奏する。 As is apparent from the above, according to the fourth embodiment, the concealment target determining unit 9 performs the macroblock detection process in which an error has occurred, and an error has occurred in the detection process. When a macro block is detected, the concealment target is determined from the macro block to the end of the slice including the macro block, so that the image quality of the macro block in which no error actually occurs is deteriorated. Therefore, there is an effect that it is possible to obtain a decoded image with little subjective deterioration while maintaining the followability to the motion.
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。 In the present invention, within the scope of the invention, any combination of the embodiments, or any modification of any component in each embodiment, or omission of any component in each embodiment is possible. .
1 画像復号部(画像復号手段)、2 フレームメモリ部(データ蓄積手段)、3 コンシールメント対象決定部(コンシールメント対象決定手段)、4 参照フレーム決定部(参照データ決定手段)、5 推定動きベクトル算出部(動きベクトル算出手段)、6,8 コンシールメント方式決定部(コンシールメント方式決定手段)、7 コンシールメント処理部(コンシールメント処理手段)、9 コンシールメント対象決定部(エラーマクロブロック検出手段、コンシールメント対象決定手段)。
DESCRIPTION OF
Claims (12)
上記画像復号手段から出力された復号画像及び符号化パラメータを蓄積するデータ蓄積手段と、
上記画像復号手段の復号処理中にエラーが検出された場合、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定するとともに、上記マクロブロックを含むピクチャからエラーが伝播するピクチャの全体をコンシールメント対象に決定するコンシールメント対象決定手段と、
上記画像復号手段から出力された符号化パラメータに含まれているピクチャタイプを参照して、上記データ蓄積手段に蓄積されている復号画像及び符号化パラメータの中から、上記コンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定する参照データ決定手段と、
上記参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトルを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する動きベクトル算出手段と、
上記参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと上記動きベクトル算出手段により算出されたコンシールメント処理単位の動きベクトルを参照して、コンシールメント処理に用いるコンシールメント方式を、フレーム間の画像データおよび動きベクトルを用いたフレーム間コンシールメント処理方式または同一フレーム内の画像データを用いたフレーム内コンシールメント処理方式に決定するコンシールメント方式決定手段と、
上記コンシールメント方式決定手段により決定されたコンシールメント方式にしたがって、上記参照データ決定手段により決定された参照用の復号画像を必要に応じて参照しながら、上記コンシールメント対象決定手段により決定されたコンシールメント対象を隠蔽するコンシールメント処理を実施するコンシールメント処理手段と
を備えた画像復号装置。 Image decoding means for performing decoding processing on encoded data of an image generated by performing motion compensation prediction processing and variable length encoding processing, and outputting a decoded image and an encoding parameter as a decoding result;
Data storage means for storing the decoded image and encoding parameters output from the image decoding means;
When an error is detected during the decoding process of the image decoding means, the entire slice including the macroblock in which the error has occurred is determined as a concealment target, and the error propagates from the picture including the macroblock A concealment target determining means for determining the whole as a concealment target,
With reference to the picture type included in the encoding parameter output from the image decoding unit, the concealment process to be concealed from the decoded image and the encoding parameter stored in the data storage unit Reference data determining means for determining a reference decoded image and encoding parameters to be used in
A motion vector calculating means for calculating a motion vector in a concealment process unit composed of a plurality of macroblocks using a motion vector in a macroblock unit included in an encoding parameter determined by the reference data determining means; ,
By referring to the motion vector and macroblock type included in the encoding parameter determined by the reference data determining means and the motion vector of the concealment processing unit calculated by the motion vector calculating means, concealment is performed. A concealment method determining means for determining an interframe concealment processing method using inter-frame image data and motion vectors or an intra-frame concealment processing method using image data in the same frame as the concealment method used for the concealment processing When,
According to the concealment method determined by the concealment method determining means, the concealment determined by the concealment target determining means while referring to the reference decoded image determined by the reference data determining means as necessary. An image decoding apparatus comprising: concealment processing means for performing concealment processing for concealing an object to be sent.
上記画像復号手段から出力された復号画像及び符号化パラメータを蓄積するデータ蓄積手段と、上記画像復号手段の復号処理中にエラーが検出された場合、エラーが発生しているマクロブロックを含むスライスの全体をコンシールメント対象に決定するとともに、上記マクロブロックを含むピクチャからエラーが伝播するピクチャの全体をコンシールメント対象に決定するコンシールメント対象決定手段と、
上記画像復号手段から出力された符号化パラメータに含まれているピクチャタイプを参照して、上記データ蓄積手段に蓄積されている復号画像及び符号化パラメータの中から、上記コンシールメント対象のコンシールメント処理に用いる参照用の復号画像及び符号化パラメータを決定する参照データ決定手段と、
上記参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトルを用いて、複数のマクロブロックから構成されるコンシールメント処理単位の動きベクトルを算出する動きベクトル算出手段と、
上記参照データ決定手段により決定された符号化パラメータに含まれているマクロブロック単位の動きベクトル及びマクロブロックタイプと上記動きベクトル算出手段により算出されたコンシールメント処理単位の動きベクトルを参照して、コンシールメント処理に用いるコンシールメント方式を動きベクトルを用いたフレーム間コンシールメント処理方式または動きベクトルを用いないフレーム間コンシールメント処理方式に決定するコンシールメント方式決定手段と、
上記コンシールメント方式決定手段により決定されたコンシールメント方式にしたがって、上記参照データ決定手段により決定された参照用の復号画像を必要に応じて参照しながら、上記コンシールメント対象決定手段により決定されたコンシールメント対象を隠蔽するコンシールメント処理を実施するコンシールメント処理手段とを備え、
上記コンシールメント処理手段は、上記コンシールメント方式決定手段により決定されたコンシールメント方式が動きベクトルを用いたフレーム間コンシールメント処理方式である場合、上記参照データ決定手段により決定された参照用の復号画像と上記動きベクトル算出手段により算出されたコンシールメント処理単位の動きベクトルを用いて、上記コンシールメント対象決定手段により決定されたコンシールメント対象を隠蔽するコンシールメント処理を実施し、上記動きベクトルを用いないフレーム間コンシールメント処理方式である場合、上記参照データ決定手段により決定された参照用の復号画像間の同位置の画像データを用いて、上記コンシールメント対象を隠蔽するコンシールメント処理を実施することを特徴とする画像復号装置。 Image decoding means for performing decoding processing on encoded data of an image generated by performing motion compensation prediction processing and variable length encoding processing, and outputting a decoded image and an encoding parameter as a decoding result;
When an error is detected during the decoding process of the decoded image output from the image decoding unit and the decoding parameter of the image decoding unit, the slice including the macroblock in which the error has occurred A concealment target determining means for determining the entire picture in which an error is propagated from the picture including the macroblock as a concealment target,
With reference to the picture type included in the encoding parameter output from the image decoding unit, the concealment process to be concealed from the decoded image and the encoding parameter stored in the data storage unit Reference data determining means for determining a reference decoded image and encoding parameters to be used in
A motion vector calculating means for calculating a motion vector in a concealment process unit composed of a plurality of macroblocks using a motion vector in a macroblock unit included in an encoding parameter determined by the reference data determining means; ,
By referring to the motion vector and macroblock type included in the encoding parameter determined by the reference data determining means and the motion vector of the concealment processing unit calculated by the motion vector calculating means, concealment is performed. A concealment method determining means for determining an interframe concealment processing method using a motion vector or an interframe concealment processing method using no motion vector as a concealment method used for
According to the concealment method determined by the concealment method determining means, the concealment determined by the concealment target determining means while referring to the reference decoded image determined by the reference data determining means as necessary. A concealment processing means for performing concealment processing for concealing the object to be sent,
When the concealment method determined by the concealment method determination unit is an interframe concealment processing method using a motion vector, the concealment processing unit is a decoded image for reference determined by the reference data determination unit. The concealment process for concealing the concealment target determined by the concealment target determination unit is performed using the motion vector of the concealment processing unit calculated by the motion vector calculation unit, and the motion vector is not used. If a concealment processing scheme between frames, using the image data of the same position between the decoded image of the reference which is determined by the upper Symbol reference data determining means, performing a concealment process to conceal the concealment subject images decoded you wherein Location.
上記コンシールメント対象決定手段は、上記エラーマクロブロック検出手段によりエラーが発生しているマクロブロックが検出された場合、上記マクロブロックから当該マクロブロックを含むスライスの最後までをコンシールメント対象に決定し、上記エラーマクロブロック検出手段によりエラーが発生しているマクロブロックが検出されない場合、上記画像復号手段の復号処理でエラーが検出されたマクロブロックを含むスライスの全体をコンシールメント対象に決定する
ことを特徴とする請求項1から請求項9のうちのいずれか1項記載の画像復号装置。 If an error is detected during the decoding process of the image decoding means, the maximum value of the luminance signal or color difference signal in the latest decoded image in which no error has occurred among the decoded images stored in the data storage means And an error macroblock detection means for specifying a minimum value, comparing a pixel value in the macroblock with the maximum value and the minimum value, and performing a process of detecting a macroblock in which an error has occurred,
The concealment target determining means, when a macro block in which an error has occurred is detected by the error macro block detecting means, determines from the macro block to the end of the slice including the macro block as a concealment target, When a macroblock in which an error has occurred is not detected by the error macroblock detection unit, the entire slice including the macroblock in which the error is detected in the decoding process of the image decoding unit is determined as a concealment target. The image decoding device according to any one of claims 1 to 9.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010253728A JP5701018B2 (en) | 2010-11-12 | 2010-11-12 | Image decoding device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010253728A JP5701018B2 (en) | 2010-11-12 | 2010-11-12 | Image decoding device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012105179A JP2012105179A (en) | 2012-05-31 |
JP5701018B2 true JP5701018B2 (en) | 2015-04-15 |
Family
ID=46395047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010253728A Expired - Fee Related JP5701018B2 (en) | 2010-11-12 | 2010-11-12 | Image decoding device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5701018B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5811061B2 (en) * | 2012-07-24 | 2015-11-11 | 三菱電機株式会社 | Decoding device, error concealment processing device, and decoding method |
KR102379196B1 (en) * | 2017-05-31 | 2022-03-28 | 삼성전자주식회사 | Processing apparatuses and control methods thereof |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09154142A (en) * | 1995-11-29 | 1997-06-10 | Sanyo Electric Co Ltd | Error processing unit |
JP3496378B2 (en) * | 1995-12-22 | 2004-02-09 | 三菱電機株式会社 | Digital image decoding device and digital image decoding method |
JP3297293B2 (en) * | 1996-03-07 | 2002-07-02 | 三菱電機株式会社 | Video decoding method and video decoding device |
BR0318528A (en) * | 2003-10-09 | 2006-09-12 | Thomson Licensing | direct mode derivation process for error concealment |
JP2010212882A (en) * | 2009-03-09 | 2010-09-24 | Mitsubishi Electric Corp | Moving picture error processor |
-
2010
- 2010-11-12 JP JP2010253728A patent/JP5701018B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012105179A (en) | 2012-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101713354B1 (en) | Methods and apparatus for adaptively choosing a search range for motion estimation | |
US8514939B2 (en) | Method and system for motion compensated picture rate up-conversion of digital video using picture boundary processing | |
JP4724061B2 (en) | Video encoding device | |
JP4875007B2 (en) | Moving picture coding apparatus, moving picture coding method, and moving picture decoding apparatus | |
EP2415258A1 (en) | Inverse telecine techniques | |
US8411751B2 (en) | Reducing and correcting motion estimation artifacts during video frame rate conversion | |
JP2012034225A (en) | Motion vector detection device, motion vector detection method and computer program | |
JP2011147130A (en) | Techniques for motion estimation | |
JP5137687B2 (en) | Decoding device, decoding method, and program | |
JP2007122232A (en) | Image processor and program | |
US20140233645A1 (en) | Moving image encoding apparatus, method of controlling the same, and program | |
EP2981083A1 (en) | Method for encoding a plurality of input images and storage medium and device for storing program | |
JPH06311502A (en) | Motion picture transmission equipment | |
JP5701018B2 (en) | Image decoding device | |
JP4469904B2 (en) | Moving picture decoding apparatus, moving picture decoding method, and storage medium storing moving picture decoding program | |
US20130251045A1 (en) | Method and device for determining a motion vector for a current block of a current video frame | |
JP2006203597A (en) | Digital image decoder and decoding method | |
JP5407974B2 (en) | Video encoding apparatus and motion vector detection method | |
JP2009290889A (en) | Motion picture encoder, motion picture decoder, motion picture encoding method, motion picture decoding method, motion picture encoding program, and motion picture decoding program | |
JP2009218965A (en) | Image processor, imaging device mounted with the same and image reproduction device | |
EP2981082A1 (en) | Method for encoding a plurality of input images and storage medium and device for storing program | |
JP2007325206A (en) | Apparatus and method for decoding motion picture | |
JP2014200078A (en) | Moving image encoding apparatus and method for controlling the same | |
JP2019201388A (en) | Information processing unit, information processing method, and program | |
JP5649412B2 (en) | Error concealment device and decoding device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130903 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140416 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140520 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140711 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141118 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141217 |
|
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: 20150120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5701018 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |