JP2007267009A - エラー隠蔽方法及び画像データ復号装置 - Google Patents
エラー隠蔽方法及び画像データ復号装置 Download PDFInfo
- Publication number
- JP2007267009A JP2007267009A JP2006089371A JP2006089371A JP2007267009A JP 2007267009 A JP2007267009 A JP 2007267009A JP 2006089371 A JP2006089371 A JP 2006089371A JP 2006089371 A JP2006089371 A JP 2006089371A JP 2007267009 A JP2007267009 A JP 2007267009A
- Authority
- JP
- Japan
- Prior art keywords
- macroblock
- error
- image data
- decoding
- value
- 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.)
- Withdrawn
Links
Landscapes
- Error Detection And Correction (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【課題】MPEG方式の画像データを復号するときに、画質の劣化の少ないエラー隠蔽方法を実現する。
【解決手段】エラー判定部25は、スライス先頭のマクロブロック位置から、エラーを検出したマクロブロック位置までの各マクロブロックのデータの平均値と、近接するマクロブロックの平均値との差分絶対値を算出する。算出した差分絶対値が予め設定してある閾値より大きいか否かを判定し、差分絶対値が閾値より大きいマクロブロック位置を真の復号エラー発生位置と判定する。予測処理部23はエラー発生位置以降の画像データを隣接するマクロブロックの画像データで置き換えてエラーを隠蔽する。
【選択図】図1
【解決手段】エラー判定部25は、スライス先頭のマクロブロック位置から、エラーを検出したマクロブロック位置までの各マクロブロックのデータの平均値と、近接するマクロブロックの平均値との差分絶対値を算出する。算出した差分絶対値が予め設定してある閾値より大きいか否かを判定し、差分絶対値が閾値より大きいマクロブロック位置を真の復号エラー発生位置と判定する。予測処理部23はエラー発生位置以降の画像データを隣接するマクロブロックの画像データで置き換えてエラーを隠蔽する。
【選択図】図1
Description
本発明は、符号化された画像データを復号して表示するときのエラー隠蔽方法及び画像データ復号装置に関する。
DVDなどに記録されたMPEG方式の画像データを復号装置で早送り再生する場合、ビットストリームの断片が復号装置に供給されることにより、本来とは異なる画像が表示されるという問題がある。そのような問題を解決するために、特許文献1には、復号処理中に誤りを検出した場合に、MPEGストリームの現在の復号位置より復号済みの方向に所定ビット数だけ遡って復号を行うことにより復号誤りを減らすことが記載されている。
ところで、入力するビットストリームには伝送路上でエラーが混入することがあり、エラーが混入したビットストリームをそのまま復号すると、エラーを含む画像が表示されるので画質が劣化してしまう。そのため復号装置にはエラー隠蔽機能(エラーコンシール機能)が設けられている。
特許文献2には、エラー隠蔽処理が施されたピクチャの再生画像の画質を改善するため、エラーが検出された領域に動き補償予測により得られる予測画像が含まれる場合には、予測画像を平滑化することが記載されている。
また、特許文献3には、ビットストリームを復号するときに、符号化パラメータを有効に用いることができるか否かを示すエラーフラグを生成する手段を設けることが記載されている。これにより、エラーフラグが生成されているときには、符号化パラメータの計算を行い、その計算により得られた符号化パラメータを用いて画像データの符号化を行うことで画質の劣化を防止することができる。
図11は、エラー隠蔽機能を有する従来のビデオ復号装置11のブロック図である。入力したビットストリームはビデオ復号処理部12で画像データに復号され、予測処理部13によりピクチャ単位でフレームメモリ14に格納される。ビデオ復号処理部12は、ビットストリームのエラー検出を行い、エラー検出時にエラー情報をエラー判定部15に出力する。
エラー判定部15は、エラー情報を受信するとエラー検出位置を含む隠蔽アドレス情報を予測処理部13に出力し、予測処理部13が隠蔽アドレス情報に基づいて復号画像の所定領域の画像データの隠蔽処理を行う。
エラー隠蔽処理としては、エラーを検出したマクロブロック位置から次のスタートコードまでの間、もしくはエラーを検出したマクロブロックを含むスライスの先頭マクロブロック位置から次のスタートコードまでの間の復号画像を、エラーが発生していない前後のフレームの画像と入れ替えて復号画像に画質劣化が生じないようにしている。
しかしながら上記のエラー隠蔽方法では、エラー発生領域を完全に隠蔽することが難しい。その理由は、復号装置で検出されるエラー検出箇所が必ずしもビットストリーム上の正確なエラー混入位置ではないからである。復号エラーと判定する条件として、可変長符号テーブルのデータとの不一致や、復号処理後の各パラメータ値が制約範囲内に納まっているか等の条件が用いられるが、エラーの混入状態によっては、可変長符号テーブルで不一致が検出されず、かつ各パラメータ値も制約範囲内に納まってしまうような場合が多々発生する。
図12は、従来のエラー隠蔽処理におけるエラー隠蔽領域を示す図である。図12(A)は本来の画像であり、図12(B)は、ビットストリームに混入したエラーにより縦の棒状の図形の一部がずれて表示された状態である。図12(B)において、二重丸は、エラー隠蔽処理により検出されるエラー検出位置を示し、星印は実際にエラーが混入した位置を示す。
図12(C)は、二重丸で示すエラー検出位置以降の領域に対してエラー隠蔽処理を行った場合の表示画像を示す図である。図12(C)において斜線で示す領域がエラー隠蔽領域である。この場合、実際のエラー発生位置は、エラー検出位置より前方(図12(C)の正面から見てエラー検出位置の左側)にあるのでエラー画像が隠蔽されないことになる。
また、図12(D)は、エラー検出位置のスライスの先頭以降の領域に対してエラー隠蔽処理を行った場合の表示画像を示す図である。この場合、スライス全体が隣接するマクロブロックの画像データに置き換えられるのでエラー画像は隠蔽される。
図12(C)に示すようなエラー検出位置以降の画像を隠蔽する方法は、実際のエラー発生位置がエラー検出位置と異なる場合にエラー画像を隠蔽することができないという問題点があった。
また、図12(D)に示すように、エラーが検出されたときにスライスの先頭以降の画像を全て隠蔽する方法は、正常な画像に対してもエラー隠蔽処理が行われるためにエラー発生箇所以外の画質が劣化してしまうという問題点があった。
特許第3655115号公報
特許第3297293号公報
特開2000−333163号公報
本発明の課題は、MPEG方式の画像データを復号するときに、画質の劣化の少ないエラー隠蔽方法を実現することである。
本発明のエラー隠蔽方法は、MPEG方式で符号化されたビットストリームを復号するときのエラー隠蔽方法であって、前記ビットストリームのマクロブロック単位のデータの平均値をマクロブロックの代表値として記憶手段に保持し、復号エラーを検出した場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出し、算出した差分絶対値が所定の閾値以上のマクロブロックの位置を真の復号エラー発生位置として検出し、前記真の復号エラー発生位置からスライスの終端までの期間をエラー隠蔽処理の対象とする。
この発明によれば、実際にエラーが発生した位置を正確に検出することができるので、エラー発生位置以降の領域に対してエラー隠蔽処理を行うことで表示画像の画質の劣化を抑えることができる。また、実際にエラーが発生したマクロブロック位置からエラー隠蔽処理を施すことができるので、正常な画像の画質が劣化するのを防止できる。
本発明のエラー隠蔽方法において、各マクロブロックの直上及び直下に位置するマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
このように注目するマクロブロックの直上及び直下に位置するマクロブロックのデータの平均値をエラー判定の基準として用いることでエラーの判定精度を高めることができる。
本発明のエラー隠蔽方法において、各マクロブロックの直上、直下及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
このように注目するマクロブロックの直上、直下及び左隣のマクロブロックの平均値をエラー判定の基準として用いることでエラーの判定精度を高めることができる。
本発明のエラー隠蔽方法において、各マクロブロックの左斜め上、左隣、左斜め下、直上、直下、右斜め上、左斜め下のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
本発明のエラー隠蔽方法において、各マクロブロックの左斜め上、左隣、左斜め下、直上、直下、右斜め上、左斜め下のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
このように注目するマクロブロックの左斜め上、左隣、左斜め下、直上、直下、右斜め上、右斜め下の各マクロブロックの平均値をエラー判定の基準として用いることでエラー判定精度を高めることができる。
本発明のエラー隠蔽方法において、各マクロブロックの直上及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
このように注目するマクロブロックの左隣及び直上のマクロブロックの平均値をエラー判定の基準として用いることでエラー判定精度を高めることができる。この場合、注目するマクロブロックの過去のマクロブロックの平均値をエラー判定の基準として用いているのでリアルタイムでの処理が可能となる。
本発明のエラー隠蔽方法は、注目するマクロブロックの直上のマクロブロックを4分割したブロックの内で注目する前記マクロブロックに隣接する下側の2ブロックのデータと、直下のマクロブロックを4分割したブロックの内で注目する前記マクロブロックに隣接する上側の2ブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
このように注目するマクロブロックに隣接する上下それぞれ2ブロックのデータの平均値をエラー判定の基準として用いることでエラー判定精度を高めることができる。
本発明のエラー隠蔽方法において、注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる比較対象マクロブロックの代表値として設定する。
本発明のエラー隠蔽方法において、注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる比較対象マクロブロックの代表値として設定する。
このように1フレーム過去の同じ位置のマクロブロックの平均値をエラー判定の基準として用いることで、フレーム間の相関関係が高いという画像データの特性を利用してエラー判定精度を高めることができる。
本発明のエラー隠蔽方法において、注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータと、1フレーム未来の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する。
このように1フレーム過去と1フレーム未来の同じ位置のマクロブロックの平均値をエラー判定の基準として用いることで、フレーム間の相関関係が高いという画像の特性を利用してエラー判定精度を高めることができる。
本発明の画像データ復号装置は、MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、復号された複数の画像データの中の一の画像データについて、該一の画像データの近傍の画像データから、あるいは該一の画像データの存在するフレームよりも1つ前のフレーム内の同位置の画像データから、該一の画像データの復号結果が誤りか否かを判別する判別手段を有する。
この発明よれば、復号された画像データの近傍の画像データ、あるいは1つ前のフレーム内の同位置の画像データからその画像データに復号誤りがあるか否かを判定することができる。
本発明によればエラー発生位置を正確に検出し、そのエラー発生位置からエラー隠蔽処理を施すことで画質の劣化を少なくできる。
以下、本発明の実施の形態について図面を参照しながら説明する。図1は、実施の形態のビデオ復号装置(画像データ復号装置)21のブロック図である。
ビデオ復号処理部22は、入力するビットストリームを復号し、復号した画像データを予測処理部23に出力する。また、ビデオ復号処理部22は、ビットストリームのエラー検出を行い、エラーを検出したときにはエラー情報をエラー判定部25に出力する。
ビデオ復号処理部22は、入力するビットストリームを復号し、復号した画像データを予測処理部23に出力する。また、ビデオ復号処理部22は、ビットストリームのエラー検出を行い、エラーを検出したときにはエラー情報をエラー判定部25に出力する。
予測処理部23は、復号された画像データをピクチャ単位でフレームメモリ24に格納する。また、予測処理部23は、各マクロブロックのデータの平均値を算出し(平均値算出手段に対応する)、算出した平均値をマクロブロックの代表値として代表値保持部(記憶手段に対応する)26に保持する。予測処理部23は、例えば、マクロブロックのデータの輝度及び/又は色差信号の平均値を代表値として算出する。代表値保持部22に保持された各マクロブロックの代表値はエラー判定部25に出力される。予測処理部23は、後述するエラー隠蔽処理を施した画像データを再生装置等に出力する。
エラー判定部25は、スライス先頭のマクロブロック位置から、エラーを検出したマクロブロック位置までの各マクロブロックのデータの代表値と、各マクロブロックと近接するマクロブロックの代表値を代表値保持部26から取得し、それらの差分絶対値を算出する(差分算出手段に対応する)。そして、算出した差分絶対値が予め設定してある閾値を超えたか否かを判定し、閾値を超えたマクロブロック位置を真の復号エラー発生位置として検出する(復号エラー発生位置検出手段に対応する)。そして、その真の復号エラー発生位置からスタートコード(またはスライスの終端)までの期間をエラー隠蔽領域と決定し、エラー発生位置とスタートコードまでの期間を指すエラー隠蔽アドレス情報を予測処理部23に出力する。
予測処理部23は、エラー判定部25から出力されるエラー隠蔽アドレス情報に基づいてエラー隠蔽領域の画像データを所定の参照画像(例えば、隣接するマクロブロックの画像データ)と置き換えることでエラーが混入した画像を隠蔽する処理を実行する(エラー隠蔽手段に対応する)。
ここで、ビデオ復号装置21で実行されるエラー隠蔽処理の処理内容を図2(A)、(B)のフローチャートを参照して説明する。
水平方向のマクロブロックの位置を示す変数EPOS1に初期値として「0」を設定する(図2(A)、 S11)。次に、変数EPOS1が最終マクロブロックを指しているか否かを判別する(S12)。
水平方向のマクロブロックの位置を示す変数EPOS1に初期値として「0」を設定する(図2(A)、 S11)。次に、変数EPOS1が最終マクロブロックを指しているか否かを判別する(S12)。
変数EPOS1が最終マクロブロックの位置を指していないときには(S12、NO)、ステップS13に進み、変数EPOS1で指定されるマクロブロックのデータの復号処理を行う。次に、変数EPOS1で指定されるマクロブロックにおいてエラーを検出したか否かを判定する(S14)。このエラー判定では、マクロブロックのデータが、図示しない可変長符号テーブルのデータと一致する否か、あるいはパラメータ値が制約範囲に入っているか否かによりエラーの有無を判定している。
エラーが検出されなかった場合には(S14、NO)、ステップS15に進み、変数EPOSをインクリンメトした後、ステップS12に戻る。
変数EPOS1で指定されるマクロブロックのデータにエラーが検出された場合には(S14,YES)、ステップS16に進み、変数EPOS2に初期値として「0」を設定する。そして、変数EPOS2の値と、変数EPOS1の値が一致するか否かを判定する。
変数EPOS1で指定されるマクロブロックのデータにエラーが検出された場合には(S14,YES)、ステップS16に進み、変数EPOS2に初期値として「0」を設定する。そして、変数EPOS2の値と、変数EPOS1の値が一致するか否かを判定する。
両者の値が一致しないときには(S17,NO)、つまり変数EPOS2で指定されるマクロブロックの位置が、変数EPOS1で指定されるエラー検出位置と一致しないときには、ステップS18に進み、変数EPOS2で指定されるマクロブロックの近傍のマクロブロック(以下、これを比較対象マクロブロックと呼ぶ)のデータの平均値を代表値として算出する。
図2(B)のステップS18’の処理は、上記のステップS18の代表値算出処理の一例を示すものである。このステップS18’の処理は、比較対象マクロブロックとして、注目マクロブロックの上側のマクロブロック(MB)と下側のマクロブロックが指定された場合の処理である。この場合、変数EPOS2で指定されるマクロブロックの上側のマクロブロックの平均値と下側のマクロブロックの平均値を加算した値を「2」で除算した値を代表値として求める。
図2(A)のステップS18の次には、変数EPOS2で指定されるマクロブロック(これを注目マクロブロックと呼ぶ)の代表値と比較対象マクロブロックの代表値の差分絶対値を算出し、算出した差分絶対値が所定の閾値より大きいか否かを判定する(S19)。
なお、ステップS19の処理において、変数EPOS2で指定されるマクロブロックの代表値とその近傍の比較対象マクロブロックの代表値の差分絶対値を算出しているのは、注目マクロブロックの画像データが正常であれば、画像データの空間的、あるいは時間的連続性からそのマクロブロックのデータの平均値と近傍のマクブロックのデータの平均値との差分は所定値以下となるからである。従って、例えば、エラーが発生したときのマクロブロックのデータの平均値と、その近傍のマクロブロックのデータの平均値との差分絶対値を予め求めることでエラー判定の基準となる閾値を設定することができる。
ステップS19において、注目マクロブロックの代表値と近傍のマクロブロックの代表値の差分絶対値が閾値以下と判定されたときには(S19,NO)、ステップS20に進み、変数EPOS2の値をインクリメントしてステップS17に戻る。
ステップS19において、注目マクロブロックの代表値と近傍のマクロブロックの代表値の差の絶対値が所定の閾値より大きいときには(S19,YES)、ステップS21に進み、変数EPOS2で指定されるマクロブロックの位置を真のエラー発生位置として検出する。そして、その真のエラー発生位置を示すアドレス情報を予測処理部23に出力し、予測処理部23がエラー発生位置から最終マクロブロック位置までのマクロブロックのデータを対象としてエラー隠蔽処理を実行する。このエラー隠蔽処理では、エラー隠蔽処理の対象となるマクロブロックのデータをその近傍(例えば、直上)のマクロブロックのデータと差し替えることでエラーを含んだ画像を隠蔽する。
図3は、実施の形態のエラー隠蔽領域を示す図である。図3に二重丸で示す位置がエラー検出位置であり、星印で示す位置が上記のエラー隠蔽処理により検出されるエラー発生位置である。また、図3に斜線で示す領域が上記のエラー隠蔽処理により隠蔽される領域であり、エラー発生位置以降の画像データを近傍の画像データで置き換えてエラーを隠蔽している。
上述した実施の形態によれば、エラーが混入した可能性の高いマクロブロック位置からエラー隠蔽処理を施すことができるので画質の劣化を少なくできる。また、真のエラー発生位置からエラー隠蔽処理を施すことができるので、正常な画像データが近傍の画像データと置き換えられて画質が劣化するのを防止できる。
図4は、第1の実施の形態の比較対象マクロブロックの位置を示す図である。この第1の実施の形態は、比較対象マクロブロックとして注目マクロブロックの直上及び直下のマクロブロックを選択した場合の例である。
図4は、3×3個のマクロブロックからなる画像データの例を示しており、中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、その上下の複数の斜線で示す四角の領域が比較対象マクロブロックである。
この第1の実施の形態のエラー隠蔽処理においては、注目マクロブロックの直上のマクロブロックと直下のマクロブロックの平均値を比較対象マクロブロックの代表値として用いている(図2(B)のステップS18’の処理)。
画像データは隣接するマクロブロック間の相関関係が高いので(空間的相関関係が高い)、注目マクロブロックのデータの平均値と、その上下のマクロブロックのデータの平均値の差分絶対値が所定の閾値より大きいか否かを判定することで、注目マクロブロックのエラーの有無を判定することができる。
この第1の実施の形態によれば、画像データにおいて相関性が高いマクロブロック、つまり注目マクロブロックと隣接する上下のマクロブロックを比較対象マクロブロックとして用いることでエラー発生位置を正確に検出することができる。これにより従来のエラー隠蔽処理の開始位置より手前(時間的に前)の位置で、かつ実際にエラーが発生している可能性が高いマクロブロック位置からエラー隠蔽処理を施すことができるので、画質の劣化の少ない復号画像を表示させることができる。
次に、図5は、第2の実施の形態の比較対象マクロブロックの位置を示す図である。この第2の実施の形態は、比較対象マクロブロックとして注目マクロブロックの直上と直下と左隣のマクロブロックを用いる場合の例である。
図5において、中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、その上下の複数の斜線で示す四角の領域と左隣の斜線で示す領域が比較対象マクロブロックである。
この第2の実施の形態のエラー隠蔽処理においては、注目マクロブロックの直上と直下と左隣のマクロブロックのデータの平均値を代表値として用いる。画像データは隣接するマクロブロックのデータの相関関係が高いので、注目マクロブロックのデータの平均値と、その上下及び左隣のマクロブロックのデータの平均値の差分絶対値が所定の閾値より大きいか否かを判定することで、注目マクロブロックのエラーの有無を判定することができる。
この第2の実施の形態によれば、注目マクロブロックに隣接する上下及び左隣のマクロブロックを比較対象マクロブロックとして用いることでエラー発生位置をより正確に検出することができる。
次に、図6は、第3の実施の形態の比較対象マクロブロックの位置を示す図である。この第3の実施の形態は、比較対象マクロブロックとして注目マクロブロックの左斜め上、左隣、左斜め下、直上、直下、右斜め上、右斜め下のマクロブロックを用いる場合の例である。
図6において、中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、左斜め上(図6の正面から見て)、左隣、左斜め下、直上、直下、右斜め上、右斜め下の斜線で示す四角の領域、つまり右隣のマクロブロックを除く7方向のマクロブロックが比較対象マクロブロックとして選択されている。なお、右隣のマクロブロックを比較対象マクロブロックとして選択しないのは、注目マクロブロックにエラーが発生している場合には、その右隣のマクロブロックのデータはエラーの影響を受けている可能性が高いからである。
注目マクロブロックの平均値と、左斜め上、左隣、左斜め下、直上、直下、右斜め上、右斜め下のマクロブロックの平均値の差分絶対値が所定の閾値より大きいか否かを判定することで、注目マクロブロックのデータのエラーの有無を判定することができる。
この第3の実施の形態によれば、注目マクロブロックに隣接する右隣を除く7方向のマクロブロックを比較対象マクロブロックとして用いることでエラー発生位置をより正確に検出することができる。
次に、図7は、第4の実施の形態の比較対象マクロブロックの位置を示す図である。この第4の実施の形態は、比較対象マクロブロックとして注目マクロブロックの左隣と直上のマクロブロックを選択した場合の例である。
図7の中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、その左隣と直上の斜線で示す四角の領域が比較対象マクロブロックである。この第4の実施の形態のエラー隠蔽処理においては、注目マクロブロックの左隣と直上のマクロブロックの平均値を代表値として用いている。注目マクロブロックに隣接する左隣及び直上のマクロブロックのデータは相関関係が高いと推測されるので、注目マクロブロックの平均値と、左隣と直上のマクロブロックの平均値の差分絶対値が所定の閾値より大きいか否かを判定することで、注目マクロブロックにおけるエラーの有無を判定することができる。
この第4の実施の形態によれば、注目マクロブロックと相関関係が高い左隣と直上のマクロブロックをエラー判定の基準として用いることでエラー発生位置を正確に検出することができる。さらに、過去のマクロブロックのデータをエラー判定の基準として用いているのでリアルタイム処理が可能となる。
次に、図8は、第5の実施の形態の比較対象マクロブロックの位置を示す図である。この第5の実施の形態は、比較対象マクロブロックとして注目マクロブロックの直上及び直下のマクロブロックをそれぞれ4分割して下側または上側のブロックを選択した場合の例である。
図8の中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、その直ぐ上の複数の斜線で示す2ブロックと、注目マクロブロックの直下の複数の斜線で示す2ブロックが比較対象マクロブロックである。この第5の実施の形態のエラー隠蔽処理においては、注目マクロブロックの直上の隣接する2ブロックと直下の隣接する2ブロックの平均値を代表値として用いている。そして、注目マクロブロックの平均値と、直上及び直下の2ブロックの平均値の差分絶対値が所定の閾値より大きいか否かを判定することで、注目マクロブロックにおけるエラーの有無を判定することができる。
この第5の実施の形態によれば、注目マクロブロックと近接しているブロックのデータの平均値をエラー判定要素として用いているので、マクロブロックのエラーの判定精度を高めることができる。さらに、注目マクロブロックとより相関関係が高い、隣接する2ブロック分のデータをエラー判定の基準として用いているので4ブロック分のデータを用いる場合に比べて判定精度を高めることが期待できる。
次に、図9は、第6の実施の形態の比較対象マクロブロックの位置を示す図である。この第6の実施の形態は、比較対象マクロブロックとして、現フレームの1フレーム過去の同じ位置のマクロブロックを選択した場合の例である。
図9の現フレーム31の中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、1フレーム前の過去フレーム32の中央の複数の斜線で示す四角の領域が比較対象マクロブロックである。この第6の実施の形態のエラー隠蔽処理においては、現フレーム31の注目マクロブロックの1フレーム過去の同じ位置のマクロブロックの平均値を代表値として用いている。そして、注目マクロブロックの平均値と、1フレーム過去のマクロブロックの平均値の差分絶対値が所定の閾値より大きいか否かにより、注目マクロブロックのエラーの有無を判定している。
この第6の実施の形態によれば、注目マクロブロックと時間的相関性が高い1フレーム過去の同じ位置のマクロブロックの平均値をエラー判定要素として用いているのでマクロブロックのエラーの判定精度を高めることができる。
次に、図10は、第7の実施の形態の比較対象マクロブロックの位置を示す図である。この第7の実施の形態は、比較対象マクロブロックとして現フレームの1フレーム過去の同じ位置のマクロブロックと1フレーム未来の同じ位置のマクロブロックを選択した場合の例である。
図10の現フレーム31の中央の水平な複数の線で示す四角の領域が注目マクロブロックであり、1フレーム前の過去フレーム32の中央の複数の斜線で示す四角の領域と、1フレーム後の未来フレーム33の中央の複数の斜線で示す四角の領域が比較対象マクロブロックである。
この第7の実施の形態のエラー隠蔽処理においては、注目マクロブロックの1フレーム過去の同じ位置のマクロブロックと、1フレーム未来の同じ位置のマクロブロックの平均値を代表値として用いている。そして、注目マクロブロックの平均値と、1フレーム過去の同じ位置のマクロブロックと1フレーム未来の同じ位置のマクロブロックの平均値の差分絶対値が所定の閾値より大きいか否かを判定することで注目マクロブロックにおけるエラーの有無を判定している。
この第7の実施の形態によれば、注目マクロブロックと時間的相関関係が高い1フレーム過去及び未来の同じ位置のマクロブロックの平均値をエラー判定要素として用いているのでマクロブロックのエラーの判定精度を高めることができる。
本発明は上述した実施の形態に限らず、例えば、以下のように構成しても良い。
(1)本発明は、ビデオ復号装置に限らず、符号化された画像データを復号する装置であればどのような装置でも良い。
(2)第1〜6の実施の形態の画像データのフレーム内の空間的相関関係と、第6及び第7の7実施の形態のフレーム間の時間的相関関係の両方を組み合わせて比較対象マクロブロックを選択してもよい。例えば、空間的相関関係を利用した第1の実施の形態の比較対象マクロブロックと、時間的相関関係を利用した第6の実施の形態の比較対象マクロブロックの平均値をエラー判定の基準として用いても良い。
(3)実施の形態では、ビデオ復号処理部22でエラーが検出されたとき、スライスの先頭からエラー検出位置までの期間のマクロブロックのデータの平均値とその近傍のマクロブロックの平均値との差を算出しているが、ビデオ復号処理部22におけるエラー検出結果に依らず、各マクロブロックの平均値とその近傍のマクロブロック(1または複数のマクロブロック)の平均値との差分を算出して真のエラー発生位置を検出するようにしても良い。つまり、差分絶対値と閾値との比較によるエラー発生位置の検出のみでエラー判定を行っても良い。
(1)本発明は、ビデオ復号装置に限らず、符号化された画像データを復号する装置であればどのような装置でも良い。
(2)第1〜6の実施の形態の画像データのフレーム内の空間的相関関係と、第6及び第7の7実施の形態のフレーム間の時間的相関関係の両方を組み合わせて比較対象マクロブロックを選択してもよい。例えば、空間的相関関係を利用した第1の実施の形態の比較対象マクロブロックと、時間的相関関係を利用した第6の実施の形態の比較対象マクロブロックの平均値をエラー判定の基準として用いても良い。
(3)実施の形態では、ビデオ復号処理部22でエラーが検出されたとき、スライスの先頭からエラー検出位置までの期間のマクロブロックのデータの平均値とその近傍のマクロブロックの平均値との差を算出しているが、ビデオ復号処理部22におけるエラー検出結果に依らず、各マクロブロックの平均値とその近傍のマクロブロック(1または複数のマクロブロック)の平均値との差分を算出して真のエラー発生位置を検出するようにしても良い。つまり、差分絶対値と閾値との比較によるエラー発生位置の検出のみでエラー判定を行っても良い。
(付記1) MPEG方式で符号化されたビットストリームを復号するときのエラー隠蔽方法であって、
前記ビットストリームのマクロブロック単位のデータの平均値をマクロブロックの代表値として記憶手段に保持し、
復号エラーを検出した場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出し、
算出した差分絶対値が所定の閾値より大きいマクロブロック位置を真の復号エラー発生位置として検出し、
前記真の復号エラー発生位置からスライスの終端までの期間を対象にエラー隠蔽処理を行うエラー隠蔽方法。
(付記2) 各マクロブロックの直上及び直下に位置するマクロブロックのデータの平均値を、前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記3) 各マクロブロックの直上、直下及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記4) 各マクロブロックの左斜め上、左隣、左斜め下、直上、直下、右斜め上、右斜め下のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記5) 各マクロブロックの直上及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記6) 注目するマクロブロックの直上のマクロブロックを4分割したブロックの内で注目する前記マクロブロックに隣接する下側の2ブロックのデータと、直下のマクロブロックを4分割したブロックの内で注目する前記マクロブロックに隣接する上側の2ブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記7) 注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記8) 注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータと、1フレーム未来の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記9) MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、
前記ビットストリームのマクロブロック単位のデータの平均値を算出する平均値算出手段と、
前記平均値算出手段により算出された平均値を各マクロブロックの代表値として保持する記憶手段と、
マクロブロック単位で復号エラーを検出するエラー検出手段と、
前記エラー検出手段により復号エラーが検出された場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出する差分算出手段と、
前記差分絶対値が所定の閾値より大きいマクロブロック位置を真の復号エラー発生位置として検出する復号エラー発生位置検出手段と、
前記真の復号エラー発生位置からスライスの終端までのデータを所定のマクロブロックのデータで置き換えてエラーを隠蔽するエラー隠蔽手段とを備える画像データ復号装置。
(付記10) 前記平均値算出手段は、各マクロブロックの直上及び直下に位置するマクロブロックのデータの平均値を前記比較対象マクロブロックの代表値として算出し、
前記差分算出手段は、各マクロブロックの代表値と前記比較対象マクロブロックの代表値との差分絶対値を算出する付記9記載の画像データ復号装置。
(付記11) MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、
復号された複数の画像データの中の一の画像データについて、該一の画像データの近傍の画像データから、あるいは該一の画像データの存在するフレームよりも1つ前のフレーム内の同位置の画像データから、該一の画像データの復号結果が誤りか否かを判別する判別手段を有する画像データ復号装置。
前記ビットストリームのマクロブロック単位のデータの平均値をマクロブロックの代表値として記憶手段に保持し、
復号エラーを検出した場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出し、
算出した差分絶対値が所定の閾値より大きいマクロブロック位置を真の復号エラー発生位置として検出し、
前記真の復号エラー発生位置からスライスの終端までの期間を対象にエラー隠蔽処理を行うエラー隠蔽方法。
(付記2) 各マクロブロックの直上及び直下に位置するマクロブロックのデータの平均値を、前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記3) 各マクロブロックの直上、直下及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記4) 各マクロブロックの左斜め上、左隣、左斜め下、直上、直下、右斜め上、右斜め下のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記5) 各マクロブロックの直上及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記6) 注目するマクロブロックの直上のマクロブロックを4分割したブロックの内で注目する前記マクロブロックに隣接する下側の2ブロックのデータと、直下のマクロブロックを4分割したブロックの内で注目する前記マクロブロックに隣接する上側の2ブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記7) 注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記8) 注目するマクロブロックの1フレーム過去の同じ位置のマクロブロックのデータと、1フレーム未来の同じ位置のマクロブロックのデータの平均値を、エラー判定の基準となる前記比較対象マクロブロックの代表値として設定する付記1記載のエラー隠蔽方法。
(付記9) MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、
前記ビットストリームのマクロブロック単位のデータの平均値を算出する平均値算出手段と、
前記平均値算出手段により算出された平均値を各マクロブロックの代表値として保持する記憶手段と、
マクロブロック単位で復号エラーを検出するエラー検出手段と、
前記エラー検出手段により復号エラーが検出された場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出する差分算出手段と、
前記差分絶対値が所定の閾値より大きいマクロブロック位置を真の復号エラー発生位置として検出する復号エラー発生位置検出手段と、
前記真の復号エラー発生位置からスライスの終端までのデータを所定のマクロブロックのデータで置き換えてエラーを隠蔽するエラー隠蔽手段とを備える画像データ復号装置。
(付記10) 前記平均値算出手段は、各マクロブロックの直上及び直下に位置するマクロブロックのデータの平均値を前記比較対象マクロブロックの代表値として算出し、
前記差分算出手段は、各マクロブロックの代表値と前記比較対象マクロブロックの代表値との差分絶対値を算出する付記9記載の画像データ復号装置。
(付記11) MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、
復号された複数の画像データの中の一の画像データについて、該一の画像データの近傍の画像データから、あるいは該一の画像データの存在するフレームよりも1つ前のフレーム内の同位置の画像データから、該一の画像データの復号結果が誤りか否かを判別する判別手段を有する画像データ復号装置。
21 ビデオ復号装置
22 ビデオ復号処理部
23 予測処理部
24 フレームメモリ
25 エラー判定部
26 代表値保持部
22 ビデオ復号処理部
23 予測処理部
24 フレームメモリ
25 エラー判定部
26 代表値保持部
Claims (5)
- MPEG方式で符号化されたビットストリームを復号するときのエラー隠蔽方法であって、
前記ビットストリームのマクロブロック単位のデータの平均値をマクロブロックの代表値として記憶手段に保持し、
復号エラーを検出した場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出し、
算出した差分絶対値が所定の閾値より大きいマクロブロック位置を真の復号エラー発生位置として検出し、
前記真の復号エラー発生位置からスライスの終端までの期間を対象にエラー隠蔽処理を行うエラー隠蔽方法。 - 各マクロブロックの直上及び直下に位置するマクロブロックのデータの平均値を、前記比較対象マクロブロックの代表値として設定する請求項1記載のエラー隠蔽方法。
- 各マクロブロックの直上、直下及び左隣のマクロブロックのデータの平均値を、エラー判定の基準となる前記対象マクロブロックの代表値として設定する請求項1記載のエラー隠蔽方法。
- MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、
前記ビットストリームのマクロブロック単位のデータの平均値を算出する平均値算出手段と、
前記平均値算出手段により算出された平均値を各マクロブロックの代表値として保持する記憶手段と、
マクロブロックの復号エラーを検出するエラー検出手段と、
前記エラー検出手段により復号エラーが検出された場合に、スライス先頭のマクロブロック位置から復号エラーを検出したマクロブロック位置までの間の各マクロブロックの代表値と比較対象マクロブロックの代表値との差分絶対値を算出する差分算出手段と、
前記差分絶対値が所定の閾値より大きいマクロブロック位置を真の復号エラー発生位置として検出する復号エラー発生位置検出手段と、
前記真の復号エラー発生位置からスライスの終端までのデータを所定のマクロブロックのデータで置き換えてエラーを隠蔽するエラー隠蔽手段とを備える画像データ復号装置。 - MPEG方式で符号化されたビットストリームを復号する画像データ復号装置であって、
復号された複数の画像データの中の一の画像データについて、該一の画像データの近傍の画像データから、あるいは該一の画像データの存在するフレームよりも1つ前のフレーム内の同位置の画像データから、該一の画像データの復号結果が誤りか否かを判別する判別手段を有することを特徴とする画像データ復号装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006089371A JP2007267009A (ja) | 2006-03-28 | 2006-03-28 | エラー隠蔽方法及び画像データ復号装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006089371A JP2007267009A (ja) | 2006-03-28 | 2006-03-28 | エラー隠蔽方法及び画像データ復号装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007267009A true JP2007267009A (ja) | 2007-10-11 |
Family
ID=38639552
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006089371A Withdrawn JP2007267009A (ja) | 2006-03-28 | 2006-03-28 | エラー隠蔽方法及び画像データ復号装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007267009A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2507511A (en) * | 2012-10-31 | 2014-05-07 | Canon Kk | Error Concealment for an image display system |
-
2006
- 2006-03-28 JP JP2006089371A patent/JP2007267009A/ja not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2507511A (en) * | 2012-10-31 | 2014-05-07 | Canon Kk | Error Concealment for an image display system |
GB2507511B (en) * | 2012-10-31 | 2015-09-23 | Canon Kk | Method and device for processing an image belonging to a set of images in a display system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1535467B1 (en) | Method for error concealment in video sequences | |
JP4649355B2 (ja) | ブロックノイズ検出方法及び装置並びにブロックノイズ低減方法及び装置 | |
US8135076B2 (en) | Error concealment apparatus and method | |
JP6348188B2 (ja) | ビデオにおけるピクチャのロバストな符号化および復号化 | |
JP2007288462A (ja) | 映像表示装置 | |
EP1816871A1 (en) | Moving image decoding apparatus and moving image decoding method | |
US20140056354A1 (en) | Video processing apparatus and method | |
US20090116556A1 (en) | Digital image decoding apparatus and digital image decoding method | |
US8363160B2 (en) | Caption detection device, caption detection method, and pull-down signal detection apparatus | |
JP4509809B2 (ja) | ディジタル画像復号装置及び方法 | |
JP2006203597A (ja) | ディジタル画像復号装置及び方法 | |
JP2009010831A (ja) | 画像解析装置および画像解析方法 | |
JP2007267009A (ja) | エラー隠蔽方法及び画像データ復号装置 | |
JP4235209B2 (ja) | 動きベクトル検出装置および動きベクトル検出方法 | |
JP4227643B2 (ja) | 動画像符号化装置およびその方法 | |
KR20060047491A (ko) | 보조 정보 처리 방법, 보간 방법, 신호 프로세서 및 보간기 | |
JP5253328B2 (ja) | 画像補正装置及び画像補正方法 | |
JP2006238378A (ja) | ビデオビットストリーム復号化出力装置 | |
JP3852594B2 (ja) | ディジタル画像復号装置及びディジタル画像復号方法 | |
US20150215619A1 (en) | Method and apparatus for detecting gradual transition picture in video bitstream | |
JP2008283253A (ja) | 画像伝送システム、画像符号化装置、画像復号装置 | |
JP2008042769A (ja) | 動画像復号装置及び動画像復号方法 | |
JP2001148859A (ja) | エラーコンシールメント装置、エラーコンシールメント方法、およびプログラム記録媒体 | |
JP2006222696A (ja) | フェード検出装置及びフェード検出方法 | |
JP2008259018A (ja) | シーンチェンジ検出装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20080730 |
|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20090602 |