JP2009239951A - 動画像復号化装置 - Google Patents

動画像復号化装置 Download PDF

Info

Publication number
JP2009239951A
JP2009239951A JP2009146897A JP2009146897A JP2009239951A JP 2009239951 A JP2009239951 A JP 2009239951A JP 2009146897 A JP2009146897 A JP 2009146897A JP 2009146897 A JP2009146897 A JP 2009146897A JP 2009239951 A JP2009239951 A JP 2009239951A
Authority
JP
Japan
Prior art keywords
picture
information
macroblock
error
decoded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009146897A
Other languages
English (en)
Other versions
JP5265459B2 (ja
Inventor
Takashi Sugimoto
杉本  隆
Takeshi Tanaka
健 田中
Hiroshi Ikeda
浩 池田
Seishi Abe
清史 安倍
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2009146897A priority Critical patent/JP5265459B2/ja
Publication of JP2009239951A publication Critical patent/JP2009239951A/ja
Application granted granted Critical
Publication of JP5265459B2 publication Critical patent/JP5265459B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

【課題】エラーが発生したピクチャがアンカーピクチャとして指定された場合でも復号を安定的に継続する。
【解決手段】動きベクトル情報を含みマクロブロック単位で記述されるマクロブロック情報と、マクロブロックを含む復号済みピクチャの画像データとを対応付けて保存するピクチャメモリ103と、復号対象ピクチャにエラーがあるか否かを判定するエラー判定部104と、エラーありと判定された場合、復号対象ピクチャの画像データを前記復号済みピクチャの画像データに置換する画像データ置換部109と、エラーありと判定された場合、エラーを含む復号対象ピクチャに対応するマクロブロック情報を、復号済みピクチャに対応付けて保存されているマクロブロック情報に置換するマクロブロック情報置換部113又は復号対象ピクチャがエラーを含むことを示す情報を、復号対象ピクチャの画像データに対応付けて保存するマクロブロック情報保存部111を備える。
【選択図】図6

Description

本発明は、既に復号化済みのピクチャの動きベクトルや参照ピクチャなどの情報を参照することによって、入力されたストリームの復号化を行う動画像復号化装置および動画像復号化方法に関するものである。
動画像符号化においては、一般に動画像の有する空間方向および時間方向の冗長性を削減することによって情報量の圧縮を行う。ここで時間方向の冗長性を削減する方法として、ピクチャ間予測が用いられる。ピクチャ間予測では、あるピクチャを符号化する際に、表示時間順で前方または後方にあるピクチャを参照ピクチャとする。
そして、その参照ピクチャからの動き量を検出し、動き補償によって得られたピクチャと符号化対象のピクチャの差分値に対して、空間方向の冗長度を取り除くことにより情報量の圧縮を行う。
近年、標準化されたH.264規格では、符号化の単位をスライスとしている。スライスとは、ピクチャより小さく、複数のマクロブロックから構成される単位である。ピクチャは、1つもしくは複数のスライスから構成される。参照ピクチャを持たずに符号化対象ピクチャのみを用いて画面内予測を行うマクロブロックのみを含むスライスをIスライスと呼ぶ。また、既に復号化済みの1枚のピクチャを参照して画面間予測を行うマクロブロックと画面内予測を行うマクロブロックとを含むスライスをPスライスと呼ぶ。また、既に復号化済みの2枚以下のピクチャを同時に参照して画面間予測を行うマクロブロックと画面内予測を行うマクロブロックを含むスライスをBスライスと呼ぶ。
ピクチャは複数の種類のスライスから構成することができ、Iスライスのみを含むピクチャをIピクチャ、IスライスとPスライスのみを含むピクチャをPピクチャ、IスライスとPスライスとBスライスを含むピクチャをBピクチャと呼ぶ。
以降、説明をわかりやすくするため、ピクチャで説明を行うが、スライスであっても同じ議論が成立する。
H.264規格では、MPEG2規格やMPEG4規格と比較して、参照ピクチャに対する制約が大幅に緩和されている。Pピクチャに属するマクロブロックで参照する参照ピクチャは、復号化済みのピクチャであれば、表示時間的に前方であっても後方であってもどちらでもよい。Bピクチャに属するマクロブロックで参照する2枚以下のピクチャは、復号化済みであれば、表示時間的に前方であっても後方であってもどちらでもよい。また、参照ピクチャは、ピクチャ種類に依存せず、Iピクチャ、Pピクチャ、Bピクチャのいずれであってもよい。
図1は、上記従来の動画像符号化方式における各ピクチャの予測関係(参照関係)を示す模式図である。
図中の縦線は1枚のピクチャを示しており、各ピクチャの右下にピクチャタイプ(I、P、B)を示している。また図中の矢印は、矢印の始端にあるピクチャが、矢印の終端にあるピクチャを参照ピクチャとして用いて画面間予測復号化することを示している。
Bピクチャではマクロブロックごとに最大2枚までのピクチャを参照でき、一方の参照を前方参照L0、もう一方の参照を後方参照L1と呼ぶ。前方参照といっても、表示時間的に前方のピクチャが優先されるだけであって、必ずしも表示時間的に前方のピクチャである必要はない。また、後方参照も、表示時間的に後方のピクチャが優先されるだけであって、必ずしも表示時間的に後方のピクチャである必要はない。
Pピクチャではマクロブロックごとに最大1枚までのピクチャを参照でき、前方参照L0のみが可能である。このときも、Bピクチャと同様、参照されるピクチャは必ずしも表示時間的に前方のピクチャである必要はない。例えば、図中の先頭から9枚目のBピクチャB9は、前方参照として表示時間的には後者になる10枚目のPピクチャP10、後方参照として表示時間的には前者になる7枚目のPピクチャP7を参照ピクチャとして用いている。また、H.264規格では、MPEG2規格やMPEG4規格と比較して、表示順序に対する制約も大幅に緩和されている。復号化済みのピクチャを格納するピクチャメモリがオーバーフローしない限りは、復号化順に依存せずに表示順を決定することができる。
図2は、H.264規格の動画像符号化方式における各ピクチャの復号化順と表示順の関係の一例を示す模式図である。
図中の上方は、各ピクチャを復号化順に並べたものであり、下方は、各ピクチャを表示順に並べたものである。中間の矢印は、各ピクチャの復号化順と表示順の対応を示す。表示順は各ピクチャの属性として符号化されている。例えば、図中のPピクチャP10は、後から復号化されるBピクチャB11や、Pピクチャ13の後に表示される。
また、H.264規格では、Bピクチャの復号化において、符号化対象マクロブロック自体が動きベクトルを持たないダイレクトモードという符号化モードを選択することができる。ダイレクトモードには、時間的ダイレクトモードと空間的ダイレクトモードの2種類が存在する。時間的ダイレクトモードでは、符号化済みのほかのピクチャの動きベクトルを参照動きベクトルとして、ピクチャ間の表示時間的位置関係に基づいてスケーリング処理を行うことによって、符号化対象マクロブロックで用いる動きベクトルを予測して生成している(特許文献1参照)。
図3は、時間的ダイレクトモードにおける動きベクトルの予測生成方法を示す模式図である。
縦棒はピクチャを示し、ピクチャの右上に付与された記号は、PはPピクチャ、BはBピクチャを示し、ピクチャタイプに付している数字は各ピクチャの復号化順を示している(以降同様の命名基準とする)。また、各ピクチャP1、B3、B4、B5、P2は、それぞれ表示時間情報としてT1、T2、T3、T4、T5を有している。ここでは、ピクチャB5のマクロブロックBL0を時間的ダイレクトモードで復号化する場合について説明する。
ピクチャB5の表示時間的に近傍に位置する既に復号化済みピクチャ(アンカーピクチャ)であるピクチャP2中の、マクロブロックBL0と同じ位置にあるマクロブロック(アンカーマクロブロック)BL1の動きベクトルMV1を利用する。この動きベクトルMV1は、マクロブロックBL1が復号化された際に用いられた動きベクトルであり、ピクチャP1を参照している。この場合にマクロブロックBL0を復号化する際に用いる動きベクトルは、ピクチャP1に対しては動きベクトルMV_F、ピクチャP2に対しては動きベクトルMV_Bとなる。この際、動きベクトルMV1の大きさをMV、動きベクトルMV_Fの大きさをMVf、動きベクトルMV_Bの大きさをMVbとすると、MVf、MVbはそれぞれ
MVf=(T4−T1)/(T5−T1)×MV
MVb=(T5−T4)/(T5−T1)×MV
によって得られる。
このように動きベクトルMV1からスケーリング処理を行うことによって得られた動きベクトルMV_F、動きベクトルMV_Bを用いて、参照ピクチャであるピクチャP1とピクチャP2からマクロブロックMBL0の動き補償を行う。
また、アンカーマクロブロックBL1が画面内予測マクロブロックである場合、動きベクトルを持たない。このときは、動きベクトルMV1=0として扱う。その結果、ピクチャP2とピクチャB4中の、マクロブロックBL0と同じ位置にあるマクロブロックの画素値の平均値が、マクロブロックBL0の画素値となる。
空間的ダイレクトモードでは、時間的ダイレクトモードと同様に符号化対象マクロブロック自体は動きベクトルを持たず、符号化対象マクロブロックの空間的に周辺に位置する符号化済みマクロブロックの持つ動きベクトルを参照し、それを用いて復号化を行っている(特許文献2参照)。
図4は、空間的ダイレクトモードにおける動きベクトルの予測生成方法を示す模式図である。
ここでは、図中のピクチャB3のマクロブロックBL0を空間的ダイレクトモードで復号化する場合について説明する。
この場合、復号化対象であるマクロブロックBL0の周辺の3画素A、B、Cを含む復号化済みマクロブロックのそれぞれの動きベクトルMVA1、MVB1、MVC1のうち、復号化対象ピクチャから表示時間的に最も近くにある既に復号化されたピクチャを参照した動きベクトルを、符号化対象マクロブロックの動きベクトルの候補として決定する。これにより決定した動きベクトルが3つの場合には、それらの中央値を符号化対象マクロブロックの動きベクトルとして選択する。また、2つである場合には、それらの平均値を求め、符号化対象マクロブロックの動きベクトルとする。図に示す例では、動きベクトルMVA1、MVC1はピクチャP2を参照して求められ、動きベクトルMVB1はピクチャP1を参照して求められている。
よって、復号化対象ピクチャから表示時間的に最も近くにある既に復号化されたピクチャであるピクチャP2を参照した動きベクトルMVA1、MVC1の平均値を求め、復号化対象マクロブロックの1つめの動きベクトルであるMV_Fとする。2つめの動きベクトルであるMV_Bを求める場合も同様である。
一方、動画像復号化においては、受信した圧縮ストリームにエラーが含まれている場合が存在する。エラーが含まれている場合、エラーを検出して復号化動作を停止してもよいが、停止してしまうと、視聴しているユーザにとっては見ることが出来ないという不都合が生じる。そこで、エラーをできるだけ目立たないようにしつつ、復号化の停止を避けながら、復号化を続行するエラーコンシールメントという処理を行う。従来、エラーコンシールメントは、復号化対象ピクチャにエラーが検出された場合に、当該ピクチャのピクチャデータを、周辺の他のピクチャのピクチャデータから代用する方法が代表的である(特許文献3参照)。
図5は、従来のエラーコンシールメントの方法を示す模式図である。P1、B1、B2、P2のピクチャから構成されており、P1は正常に復号化されたが、P2はエラーを発生し復号化が停止したとする。このとき、特許文献3では、B1、B2、P2のピクチャを、既に復号化済みのP1のピクチャで置き換えることで、エラーコンシールメントを行う。この際、代用されるピクチャは、他のピクチャから参照可能なピクチャであり、かつ最も後に復号化されたピクチャである。このようにすることで、B1、B2、P2とは異なるピクチャであるが、エラーが発生したピクチャの代わりに時間的に近いピクチャを表示することにより、視聴しているユーザにエラーの発生を感じさせず、スムーズに復号化しているように見せることができる。
特開平11−75191号公報 国際公開第2004/008775号 特開平10−23435号公報
すでに述べた通り、動画像符号化方法には、復号化対象マクロブロック自体が動きベクトルを持たない符号化モードが存在する。その1つである時間的ダイレクトモードでは、既に復号化済みの他のピクチャの動きベクトルや参照タイプ、表示時間情報などを用いることで、復号化対象マクロブロックの動きベクトルを予測して生成している。
一方、従来のエラーコンシールメントは、エラーが発生したピクチャの種類に応じて、既に復号化された他のピクチャを選択し、前記選択したピクチャにより代用を行う。ただし、代用するのは表示するピクチャデータについてのみであり、動きベクトルや参照タイプ、表示時間情報などに対しては対処していない。
そのため、あるピクチャにてエラーが検出され、そのピクチャが時間的ダイレクトモードのアンカーピクチャとして指定された場合、復号化対象マクロブロックの動きベクトルを予測するための動きベクトルの情報が欠落しているために、復号化動作を正しく行えず、復号化に使用するデータの不整合が生じ、復号化動作が不安定になり、最悪の場合停止してしまう恐れがある。
そこで、本発明は上記の事情に鑑みてなされたものであり、エラーが発生したピクチャがアンカーピクチャとして指定された場合でも、エラーコンシールメントを行い、エラーの発生を隠蔽すると共に、復号化を安定的に継続することを目的とする。
前記従来の課題を解決するために、本発明の動画像復号化装置は、復号化対象のマクロブロック自体は動きベクトル情報を持たず、既に復号化済みの他のピクチャのマクロブロック情報を参照して、当該復号化対象のマクロブロックの動きベクトル情報を予測生成する動画像復号化装置であって、入力された動画像符号化ストリームから復号化された復号化済みのマクロブロックのマクロブロック情報を保存する保存手段と、前記入力された動画像符号化ストリームにエラーがあるか否かを判定する判定手段と、前記判定手段によりエラーがあると判定された場合、前記復号化済みのマクロブロックのマクロブロック情報を変更するマクロブロック情報変更手段とを備える。
また、本発明の動画像復号化装置は、過去に復号化した動きベクトル情報を少なくとも有するマクロブロック単位の情報であるマクロブロック情報を参照して、入力された動画像符号化ストリームの復号化を行なう動画像復号化装置であって、前記動画像符号化ストリームにエラーがあるか否かを判定する判定手段と、前記動画像符号化ストリームに含まれる復号化対象ピクチャを復号化することにより、ピクチャデータを生成する復号化手段と、前記動画像符号化ストリームのマクロブロック情報を、復号化されたピクチャデータに対応付けて保存する保存手段とを備え、前記保存手段は、前記判定手段によりエラーがあると判定された場合、エラーが発生したことを示す情報を前記マクロブロック情報に対応付けて保存し、前記復号化手段は、復号化済みのピクチャのマクロブロック情報を参照して復号化を行う復号化モードにより前記動画像符号化ストリームを復号化する場合、前記マクロブロック情報がエラーの発生した前記マクロブロック情報であれば復号化動作を変更する。
また、本発明の動画像復号化装置は、前記ストリームにエラーがあるか否かを判定する判定手段と、前記ストリームの動きベクトル情報を少なくとも有するマクロブロック単位の情報であるマクロブロック情報を、復号化された画像データに対応付けて保存する保存手段と、前記判定手段によりエラーがあると判定されたストリームの画像データを、前記保存手段に保存されている復号化された画像データに置き換える画像データ置換手段と、前記判定手段によりエラーがあると判定されたストリームのマクロブロック情報を、前記保存手段に保存されているマクロブロック情報に置き換えるマクロブロック情報置換手段とを備え、前記保存手段は、前記マクロブロック情報置換手段により置き換えられたマクロブロック情報を、前記画像データ置換手段により置き換えられた画像データに対応付けて保存する。
本発明に係る動画像復号化装置によれば、マクロブロック情報置換手段により、エラーがあると判定されたストリームのマクロブロック情報を、既に復号化されたピクチャのマクロブロック情報に置き換えるという構成をとることにより、エラーが発生し、エラーコンシールメントしたピクチャがアンカーピクチャとして指定された場合であっても、時間的ダイレクトモードの復号化を安定的に継続することができる。
図1は、H.264規格の参照ピクチャの関係の一例を示す図である。 図2は、H.264規格の復号化順と表示順の関係の一例を示す図である。 図3は、時間的ダイレクトモードによる復号化の一例を示す図である。 図4は、空間的ダイレクトモードによる復号化の一例を示す図である。 図5は、従来のエラーコンシールメントの一例を示す図である。 図6は、本実施の形態1、2、3における動画像復号化装置の構成を示すブロック図である。 図7(a)(b)(c)は、それぞれに対応付けられてピクチャメモリに格納されるデータの内容の一例を示す図である。 図8は、本実施の形態1の動画像復号化装置による復号化動作の一例を示すフローチャートである。 図9は、本実施の形態2の動画像復号化装置による復号化動作の一例を示すフローチャートである。 図10は、本実施の形態3の動画像復号化装置による復号化動作の一例を説明するフローチャートである。 図11は、本実施の形態4における動画像復号化装置の構成を示すブロック図である。 図12は、エラーを検出したと判定したときに、マクロブロック情報がエラーを含むことを示すフラグをマクロブロック情報の一部として格納する場合の動画像復号化装置の動作を示すフローチャートである。 図13は、マクロブロック情報の一部にエラーの有無を示すフラグが格納されている場合に画面間予測処理を行う動画像復号化装置の動作を示すフローチャートである。 図14は、本実施の形態5における動画像復号化装置の復号化動作を説明するフローチャートである。 図15は、本発明の動画像復号化装置のハードウェア構成の一例を示すブロック図である。 図16(a)(b)(c)は、上記各実施の形態の画像信号処理方法を、フレキシブルディスク等の記録媒体に記録されたプログラムを用いて、コンピュータシステムにより実施する場合の説明図である。
以下、本発明の実施の形態における動画像復号化装置について、図面を参照しながら説明する。
(実施の形態1)
実施の形態1における動画像復号化装置の構成を、図を用いて説明する。図6は、本実施の形態1の動画像復号化装置の構成の一例を示すブロック図である。
図6に示すように、実施の形態1の動画像復号化装置は、入力された符号列中のピクチャにエラーがある場合、当該ピクチャの画像データを復号化済みの他のピクチャの画像データで置換するとともに、動きベクトルを含むマクロブロックごとの情報であるマクロブロック情報、およびピクチャごとの情報であるピクチャ管理情報を、復号化済みの他のピクチャのマクロブロック情報およびピクチャ管理情報で置換する。この動画像復号化装置は、符号列解析部101、予測残差復号化部102、ピクチャメモリ103、エラー判定部104、復号化画像データ切り替え部105、動き補償部106、加算演算部107、マクロブロックタイプスイッチ部108、画像データ置換部109、動きベクトル演算部110、マクロブロック情報保存部111、情報切り替え部112、及びマクロブロック情報置換部113を備える。
符号列解析部101は、入力された符号列よりブロックタイプ情報、エラー情報、参照ピクチャ情報、動きベクトル情報、表示時間情報、予測残差符号化データ等のデータを抽出し、これらの情報をピクチャメモリ103に出力する。
また、符号列解析部101は、少なくともブロックタイプ情報、動きベクトル情報、参照ピクチャ情報を動きベクトル演算部110に出力し、少なくともブロックタイプ情報、動きベクトル情報、参照ピクチャ情報、表示時間情報をマクロブロック情報保存部111に出力し、予測残差符号化データを予測残差復号化部102に出力する。さらに、符号列解析部101は、符号列にエラーがあるか否かを検出する。
予測残差復号化部102は、符号列解析部101にて抽出された予測残差符号化データの逆直交変換処理や逆量子化処理を行い、予測残差画像データを生成し、加算演算部107に出力する。ここで、予測残差復号化部102、動き補償部106、加算演算部107および動きベクトル演算部110は、「前記動画像符号化ストリームに含まれる復号化対象ピクチャを復号化する復号化手段」の一例である。
動きベクトル演算部110は、符号列解析部101から取得したブロックタイプ情報により、符号列に動きベクトル情報を含むタイプと判断した場合、符号列解析部101から取得した動きベクトル情報を動き補償部106に出力する。
また、ブロックタイプ情報により、符号列に動きベクトル情報を含まないダイレクトモードだと判断した場合は、ピクチャメモリ103からアンカーピクチャの同位置のマクロブロックの動きベクトル情報、ブロックタイプ情報およびアンカーピクチャの表示時間情報を読み出して動きベクトルを算出し、算出された動きベクトルを動き補償部106、マクロブロック情報保存部111に出力する。
マクロブロック情報保存部111は、符号列解析部101から取得したそれぞれの情報と、動きベクトル演算部110から取得した動きベクトル情報とを保存し、情報切り替え部112に出力する。
エラー判定部104は、符号列解析部101にてエラーが検出されたか否かを判定し、復号化画像データ切り替え部105、画像データ置換部109、情報切り替え部112及びマクロブロック情報置換部113に判定結果を通知する。ここで、符号列解析部101およびエラー判定部104は、「前記動画像符号化ストリーム中で復号化対象ピクチャにエラーがあるか否かを判定する判定手段」の一例である。
動き補償部106は、動きベクトル演算部110から出力された動きベクトル情報および参照ピクチャ情報に基づいて、ピクチャメモリ103から復号化済み画像データを読み出し、動き補償画像データを生成し、加算演算部107に出力する。
加算演算部107は、予測残差復号化部102より入力された予測残差画像データと、動き補償部106より入力された動き補償画像データとを加算し復号化画像データを生成する。また、加算演算部107は、復号化画像データをマクロブロックタイプスイッチ部108に出力する。
マクロブロックタイプスイッチ部108は、ブロックタイプ情報をもとに動き補償を利用する場合には108bに、利用しない場合では108aに切り替える。108bに接続されるときは、加算演算部107により生成された画像データを復号化画像データとして取得し、復号化画像データ切り替え部105に出力する。また、108aに接続されるときは、予測残差復号化部102により生成された画像データをそのまま復号化画像データとして取得し、復号化画像データ切り替え部105に出力する。
画像データ置換部109は、エラー判定部104から判定結果を取得し、エラーを検出したと判定したときは、ピクチャメモリ103から既に復号化済みの画像データを読み出し、復号化画像データ切り替え部105に出力する。このとき、最も後に復号化された画像データを選択する。
復号化画像データ切り替え部105は、スイッチなどであり、エラー判定部104により通知された判定結果を取得し、エラーを検出していないと判定したときは、マクロブロックタイプスイッチ部108の出力結果をピクチャメモリ103に書き込む。エラーを検出したと判定したときは、画像データ置換部109の出力結果をピクチャメモリ103に書き込む。画像データ置換部109および復号化画像データ切り替え部105は、「前記判定手段によりエラーがあると判定された場合、前記復号化対象ピクチャの画像データを、前記復号化対象ピクチャより前に前記保存手段に保存された復号化済みの画像データに置き換える画像データ置換手段」の一例である。
ピクチャメモリ103は、復号化画像データ切り替え部105により取得する画像データ、符号列解析部101により抽出されたそれぞれの情報を、ピクチャ管理情報、画像データ、マクロブロック情報に分類して格納する。ここで、ピクチャ管理情報は少なくとも表示時間情報を含み、マクロブロック情報は復号化時の動きベクトルを少なくとも含むこととする。また、ピクチャ管理情報、マクロブロック情報はそれぞれ同じ情報を管理してもよい。例えば、表示順情報はピクチャ管理情報にもマクロブロック情報にも管理される。ここで、ピクチャメモリ103は、「少なくとも動きベクトル情報を含み、前記動画像符号化ストリーム内にマクロブロック単位で記述されるマクロブロック情報と、前記マクロブロックを含むピクチャの復号化済みの画像データとを対応付けて保存する保存手段」、「前記マクロブロック情報置換手段により置き換えられたマクロブロック情報と、前記画像データ置換手段により置き換えられた画像データとを対応付けて保存する前記保存手段」の一例である。
情報切り替え部112は、スイッチなどであり、エラー判定部104から判定結果を取得し、エラーを検出していないと判定したときは、マクロブロック情報保存部111が出力するそれぞれの情報をピクチャメモリ103に書き込む。エラーを検出したと判定したときは、ピクチャメモリ103からマクロブロック情報置換部113が読み出したマクロブロック情報とピクチャ管理情報とをピクチャメモリ103に書き込む。ここで、ピクチャメモリ103、情報切り替え部112、マクロブロック情報置換部113および後述のマクロブロック情報保存部602は、「前記判定手段によりエラーがあると判定された場合、前記復号化対象ピクチャに対応付けられている前記マクロブロック情報を、前記復号化済みのピクチャに対応付けて保存されているマクロブロック情報に置き換える、または、前記復号化対象ピクチャが前記エラーを含むことを示す情報を、前記復号化対象ピクチャのマクロブロック情報に対応付けて保存する前記保存手段」の一例である。
マクロブロック情報置換部113は、「前記判定手段によりエラーがあると判定された場合、前記復号化対象ピクチャに対応付けられている前記マクロブロック情報を、前記復号化済みのピクチャに対応付けて保存されているマクロブロック情報に置き換えるマクロブロック情報置換手段」の一例であり、エラー判定部104から判定結果を取得し、エラーを検出したと判定したときは、ピクチャメモリ103から過去に復号化されたピクチャのピクチャ管理情報とマクロブロック情報とを読み出す。また、ピクチャメモリ103から読み出したピクチャ管理情報とマクロブロック情報とを情報切り替え部112に出力する。ここで、過去に復号化したピクチャのピクチャ管理情報とマクロブロック情報とは、画像データ置換部109が使用したピクチャの画像データと表示時間情報により対応付けられた情報である。つまり、ここでは最も後に復号化された画像データに対応するピクチャ管理情報とマクロブロック情報とである。このように、最も後に復号化された画像データに対応するピクチャ管理情報の表示時間情報をそのまま使う場合には、得られた動きベクトルを正しくスケーリングできない可能性がある。しかし、得られた動きベクトルが遠くのピクチャを参照している場合には、復号化対象ピクチャと最も後に復号化されたピクチャとの表示時間のずれはスケーリングにおいてそれほど問題にならないと考えられる。従って、これにより、時間的ダイレクトモードで、近似的に復号化対象マクロブロックの動きベクトルを算出することができる。
次に、動画像復号化装置のピクチャメモリ103に格納されるデータ構造について、図7を用いて説明する。図7は、それぞれに対応付けられてピクチャメモリに格納されるデータの内容の一例を示す図である。
図7(a)のピクチャ管理情報は、ピクチャメモリ103に複数枚格納されるそれぞれのピクチャのピクチャ単位の管理情報であり、少なくとも表示時間情報を含んでいる。図7(b)の画像データは、復号化された画像データであり、輝度成分と色差成分とから構成され、参照画像データ及び出力画像データになるデータである。図7(c)のマクロブロック情報は、少なくともブロックタイプ情報と動きベクトル情報と参照ピクチャ情報とを含み、ダイレクトモードの復号化に必要となる情報である。図7の(a)(b)(c)は通常の復号化においては、それぞれ対応する情報であり、1つの集まりとして管理される。
次に、本実施の形態における動画像復号化装置の動作を図8に示すフローチャートを用いて説明する。図8は、本実施の形態1の動画像復号化装置による復号化動作の一例を示すフローチャートである。
まず、符号列解析部101は、入力された符号列よりマクロブロックごとにブロックタイプ情報や動きベクトル情報、参照ピクチャ情報などを得る(S301)。
符号列解析部101にてエラーが検出された否かをエラー判定部104にて判定する(S302)。
ステップS302にてエラー判定部104がエラーを検出しなかった場合、マクロブロックタイプスイッチ部108にて、マクロブロックタイプごとに画像予測方法を切り替える(S303)。
マクロブロックの予測タイプが画面内予測の場合は、予測残差復号化部102や図示していない画面内予測部が復号化画像データを生成して、ピクチャメモリ103に格納する(S304)。
マクロブロックの予測タイプが画面間予測の場合は、動き補償部106が参照ピクチャ情報や動きベクトル情報を用いて動き補償画像データを生成し、加算演算部107で、動き補償画像データと予測残差画像データとを加算し、復号化画像データを生成してピクチャメモリ103に格納する(S305)。
復号化時のブロックタイプ情報及び動きベクトル情報を少なくとも含むマクロブロック情報を、マクロブロック情報保存部111によってピクチャメモリ103に格納する(S306)。
以上を、復号化対象ピクチャ内のマクロブロック数だけ繰り返す(S307)。
ステップS302でエラー判定部104がエラーを検出した場合、画像データ置換部109によって、復号化中のピクチャ全体の画像データを、既に復号化した他のピクチャの画像データで置き換える(S308)。
マクロブロック情報置換部113によって、復号化中のピクチャ管理情報を、最も後に復号化した他のピクチャのピクチャ管理情報で置き換える(S309)。
次に、マクロブロック情報置換部113によって、復号化中のピクチャ全体のマクロブロック情報を、最も後に復号化したピクチャのマクロブロック情報で置き換える(S310)。すなわち、本実施の形態の動画像復号化装置は、マクロブロックごとにエラーの有無を検出するが、1つのピクチャ全体でエラーが検出されなければマクロブロックごとに通常の復号化処理を行い、復号化対象ピクチャ内でエラーが検出されると一度に復号化対象ピクチャ全体の画像データ、マクロブロック情報およびピクチャ管理情報の置換を行う。
なお、上記実施の形態では、ピクチャ管理情報やマクロブロック情報を置換すると記載したが、実際には、エラーが含まれる復号化対象ピクチャの画像データ、マクロブロック情報およびピクチャ管理情報として、(1)最も後に復号化したピクチャの画像データ、マクロブロック情報およびピクチャ管理情報をコピーするとしてもよいし、(2)最も後に復号化したピクチャの画像データ、マクロブロック情報およびピクチャ管理情報が格納されているピクチャメモリ103内のアドレスでそのデータを表すとしてもよい。すなわち、(1)の場合、最も後に復号化したピクチャの画像データ、マクロブロック情報およびピクチャ管理情報は、エラーがある復号化対象ピクチャの実体データとして、同じデータが複数存在することになるが、(2)の場合は、エラーがある復号化対象ピクチャの画像データ、マクロブロック情報およびピクチャ管理情報として、最も後に復号化されたピクチャの画像データ、マクロブロック情報およびピクチャ管理情報のピクチャメモリ103内のアドレスが示されるだけであり、実体データは1つだけですむ。従って、(2)のように置換することによって、ピクチャメモリ103内の記憶領域を節約することができるという効果がある。
このように構成することにより、表示される画像データだけでなく、後のピクチャのダイレクトモードの復号化に必要なマクロブロック情報についても、正しく復号されたピクチャのマクロブロック情報を使うことができるようになり、安定して復号動作を継続することができる。
なお、本実施の形態では、画像データ及びマクロブロック情報の置き換えを、最も後に復号化されたピクチャから代用する方法をとったが、表示順が最も遅いピクチャから代用してもよいし、あるいは表示順が復号化対象ピクチャに最も近いピクチャから代用してもよい。また、画像データ及びマクロブロック情報の置き換えを、最も後に復号化されたピクチャ、表示順が最も遅いピクチャまたは表示順が復号化対象ピクチャに最も近いピクチャから代用してもよいとしたが、それに近いピクチャとしてもよい。それに近いピクチャとは、例えば、ピクチャメモリに格納されている中で最後から2番目に復号化されたピクチャ、表示順が2番目に遅いピクチャ、表示順が復号化対象ピクチャに2番目に近いピクチャとしてもよい。また、画像データの代用先であるピクチャとマクロブロック情報の代用先であるピクチャとは、同じであっても異なっていてもよい。また、マクロブロック情報の中で、一部の情報は他のピクチャから代用し、一部の情報は新たに算出してもよい。
また、本実施の形態では、画像データおよびマクロブロック情報のコンシールメントをピクチャ単位で行ったが、それぞれスライス単位、マクロブロック単位で行ってもよい。さらに、同じピクチャのマクロブロックのうち、エラーが発生したマクロブロック以降のマクロブロック、エラーが発生したマクロブロック以前のマクロブロックをコンシールメント単位としてもよい。
例えば、コンシールメントをマクロブロック単位で行うとした場合、エラーがあると判定された復号化対象マクロブロックの画像データを、直前に復号化されたマクロブロックの画像データまたは直後に復号化されるマクロブロックの画像データで置き換える。また、動きベクトル情報を含むマクロブロック情報も復号化対象マクロブロックでエラーがあると判定された場合には、復号化対象マクロブロックの直前に復号化されたマクロブロックのマクロブロック情報または、復号化対象マクロブロックの直後に復号化されるマクロブロックのマクロブロック情報で置き換える。また、この場合、マクロブロック単位でコンシールメントを行うので、ピクチャ管理情報については、復号化対象ピクチャのピクチャ管理情報をそのまま使用するとしてもよい。
さらに、コンシールメントをスライス単位で行うとした場合も、コンシールメントをマクロブロック単位で行う場合と同様に、エラーがあると判定された復号化対象スライスの画像データを、直前に復号化されたスライスの画像データまたは直後に復号化されるスライスの画像データで置き換えればよい。また、動きベクトル情報を含むマクロブロック情報についても、エラーがあると判定された復号化対象スライスに含まれるすべてのマクロブロックのマクロブロック情報を、直前に復号化されたスライスに含まれるすべてのマクロブロックのマクロブロック情報、または、直後に復号化されるスライスに含まれるすべてのマクロブロックのマクロブロック情報で置き換えるとしてもよい。ピクチャ管理情報については、復号化対象ピクチャのピクチャ管理情報をそのまま使用するとしてもよいし、エラーを含むスライスの連続数に応じて、直前に復号化されたピクチャのピクチャ管理情報で置き換える、または、直後に復号化されるピクチャのピクチャ管理情報で置き換えるとしてもよい。
なお、本実施の形態1では、マクロブロック情報に含まれる動きベクトル情報及び表示時刻情報を、直近に復号化されたピクチャのものをそのまま代用するとしたが、本発明はこれに限定されない。例えば、画像データが置き換えられたフレームの表示時刻情報を、フレームレートなどから算出し、代用するマクロブロック情報の中の表示時刻情報を、算出された表示時刻情報に書き替えて使用するとしてもよい。
(実施の形態2)
実施の形態2における動画像復号化装置の構成は、実施の形態1で説明に使用した図6と同じ構成であるので、その説明を省略する。
実施の形態2では、実施の形態1とはマクロブロック情報置換部113の動作が異なる。実施の形態2では、マクロブロック情報置換部113は、「前記判定手段によりエラーがあると判定された前記動画像符号化ストリームのピクチャ管理情報を、前記保存手段に保存されているピクチャ管理情報に置き換える際、前記表示時刻情報を置き換えずに元の表示時刻情報を用いる前記マクロブロック情報置換手段」の一例であり、エラー判定部104から判定結果を取得し、エラーを検出したと判定したときは、ピクチャメモリ103から最も後に復号化されたピクチャのピクチャ管理情報を読み出し、そのまま情報切り替え部112に出力するのではなく、ピクチャ管理情報のうち表示時間情報を、エラーが発生したピクチャの表示時間情報に書き換えてから情報切り替え部112に出力する。また、実施の形態1と同じように、ピクチャ内の全マクロブロックについて、ピクチャメモリ103から最も後に復号化されたピクチャの全マクロブロック情報を読み出し、出力する。
ここで、ピクチャメモリ103は、「少なくとも表示時刻情報を有するピクチャ単位の情報であるピクチャ管理情報を前記画像データに対応付けて保存し、」、「前記マクロブロック情報置換手段による置き換え後の前記ピクチャ管理情報を保存する前記保存手段」の一例である。
本実施の形態2における動画像復号化装置の動作を図9に示すフローチャートを用いて説明する。図9は、本実施の形態2の動画像復号化装置による復号化動作の一例を示すフローチャートである。図8と同じ処理をするステップには同じ符号を付し、その説明を省略する。
マクロブロック情報置換部113によって、復号化中のピクチャ管理情報を、表示時間情報のみを復号化中のピクチャの表示時間情報に変換した後、復号化済みピクチャのピクチャ管理情報と置き換える。つまり、復号化中のピクチャ管理情報は、表示時間情報のみそのままで、その他の情報については復号化済みピクチャのピクチャ管理情報に置き換えられる(S401)。
このように動作することにより、ダイレクトモードを計算する場合の表示時間を正しく扱うことができ、より正確にスケーリングを行うことができるため、より画質が向上する。また、より正しい表示時間情報を使うことができるので、より安定して復号化動作を継続することができるようになる。
なお、ここではピクチャ管理情報のうち、表示時間情報のみを書き換えるとしたが、他のピクチャ管理情報、例えばフレーム番号などを置き換えてもよい。
なお、ここでは復号化中のピクチャの表示時間情報で置き換えるとしたが、例えば、エラーによる欠落などで復号化中のピクチャの表示時間情報が得られていない場合は、過去のピクチャの表示時間情報から本ピクチャの表示時間情報を外部的に挿入して表示時間情報を算出し、置き換えてもよい。
なお、本実施の形態では、画像データ及びマクロブロック情報の置き換えを、最も後に復号化されたピクチャから代用する方法をとったが、表示順が最も遅いピクチャから代用してもよいし、あるいは表示順が復号化対象ピクチャに最も近いピクチャから代用してもよい。
また、画像データの代用先であるピクチャとマクロブロック情報の代用先であるピクチャとは、同じであっても異なっていてもよい。また、マクロブロック情報の中で、一部の情報は他のピクチャから代用し、一部の情報は新たに算出してもよい。
また、本実施の形態では、画像データおよびマクロブロック情報のコンシールメントをピクチャ単位で行ったが、それぞれスライス単位、マクロブロック単位で行ってもよい。さらに、同じピクチャのマクロブロックのうち、エラーが発生したマクロブロック以降のマクロブロック、エラーが発生したマクロブロック以前のマクロブロックをコンシールメント単位としてもよい。
(実施の形態3)
実施の形態3における動画像復号化装置の構成は、実施の形態1で説明に使用した図6と同じ構成であるので、その説明を省略する。
実施の形態3では、実施の形態1、2とはマクロブロック情報置換部113の動作が異なる。実施の形態3では、マクロブロック情報置換部113は、エラー判定部104から判定結果を取得し、エラーを検出したと判定したときは、実施の形態2と同じように、他のピクチャのピクチャ管理情報のうち表示時間情報をエラーが発生したピクチャの表示時間情報に書き換えてから情報切り替え部112に出力する。次に、実施の形態1、2とは異なり、エラーが発生したピクチャ内の全マクロブロックについて、全ブロックタイプ情報を画面内予測に変換してから出力する。なお、マクロブロック情報置換部113は、エラーが発生したピクチャ、すなわち、復号化対象ピクチャ内の全マクロブロック情報に対し、ピクチャメモリ103から最も後に復号されたピクチャの全マクロブロック情報を読み出し、読み出した全マクロブロック情報で置換した上、その全マクロブロック情報に含まれる全ブロックタイプ情報を画面内予測に変換してから当該ピクチャのマクロブロック情報として出力するとしてもよい。ここで、マクロブロック情報置換部113は、「前記マクロブロック情報はさらにブロックタイプ情報を有し、前記判定手段によりエラーがあると判定された場合、前記復号化対象ピクチャの前記マクロブロック情報に含まれる前記ブロックタイプ情報を、画面内予測を示す情報に置き換える前記マクロブロック情報置換手段」の一例である。
本実施の形態3における動画像復号化装置の動作を図10に示すフローチャートを用いて説明する。図8、図9と同じ処理をするステップについては同じ符号を付し、その説明を省略する。図10は、本実施の形態3の動画像復号化装置による復号化動作の一例を説明するフローチャートである。
マクロブロック情報置換部113は、復号化対象マクロブロックのマクロブロック情報について、ブロックタイプ情報を画面内予測に変換した後、情報切り替え部112に出力する(S501)。他のマクロブロック情報については、そのままで構わない。
このように動作することにより、このピクチャをアンカーピクチャとするダイレクトモードを計算する場合において、アンカーマクロブロックを、動きベクトルのない画面内予測として扱うことになる。従って、前述したように、動き補償によって得られる画像データは、既に復号化した2枚の参照ピクチャの平均をとった画像データとなり、特に動きの少ない動画像において画質が向上する。
なお、ここでは復号化対象マクロブロックのマクロブロック情報のうち、ブロックタイプ情報のみを書き換えるとしたが、ピクチャメモリから読み出した復号化済みのピクチャのマクロブロック情報を情報切り替え部112に出力する場合には、ブロックタイプ情報の他のマクロブロック情報である、例えば表示時間情報も書き換えてよい。
また、ここではマクロブロック情報のうち、ブロックタイプ情報を画面内予測に書き換えるとしたが、ピクチャメモリから読み出した復号化済みのピクチャのマクロブロック情報を情報切り替え部112に出力する場合には、動きベクトル情報及びブロックタイプ情報を動きベクトル値が0となる画面間予測に書き換えてもよい。ここで、マクロブロック情報置換部113は、「前記判定手段によりエラーがあると判定された場合、前記復号化対象ピクチャの前記マクロブロック情報に含まれる前記動きベクトル情報の動きベクトルを0とする前記マクロブロック情報置換手段」の一例である。
なお、本実施の形態では、画像データ及びマクロブロック情報の置き換えを、最も後に復号化されたピクチャから代用する方法をとったが、表示順が最も遅いピクチャから代用してもよいし、あるいは表示順が復号化対象ピクチャに最も近いピクチャから代用してもよい。
また、画像データの代用先であるピクチャとマクロブロック情報の代用先であるピクチャとは、同じであっても異なっていてもよい。
また、マクロブロック情報の中で、一部の情報は他のピクチャから代用し、一部の情報は新たに算出してもよい。
また、本実施の形態では、画像データおよびマクロブロック情報のコンシールメントをピクチャ単位で行ったが、それぞれスライス単位、マクロブロック単位で行ってもよい。さらに、同じピクチャのマクロブロックのうち、エラーが発生したマクロブロック以降のマクロブロック、エラーが発生したマクロブロック以前のマクロブロックをコンシールメント単位としてもよい。
(実施の形態4)
実施の形態4における動画像復号化装置の構成を、図11を用いて説明する。図11は、本実施の形態4の動画像復号化装置の構成を示すブロック図である。
実施の形態4は、従来の実施の形態の構成に対して、エラー判定部601のエラー判定結果を、エラー情報としてマクロブロック情報保存部602に入力している点で異なる。
実施の形態4におけるマクロブロック情報保存部602は、従来の実施の形態と同様に復号化対象ピクチャの全マクロブロックについて、復号化対象ピクチャのマクロブロック情報に含まれている少なくとも動きベクトル情報及びブロックタイプ情報をピクチャメモリ103に格納する。実施の形態4においては、これらの情報に加えて、エラー情報を格納する。このエラー情報として、マクロブロック情報保存部602は、エラー判定部601がエラーを検出していないと判定したときは、格納されているマクロブロック情報が正しいものであることを示すフラグをマクロブロック情報の一部として格納する。エラー判定部601がエラーを検出したと判定したときは、このマクロブロック情報がエラーを含むものであることを示すフラグを当該ピクチャに含まれるすべてのマクロブロックについてマクロブロック情報の一部として格納する。もちろん、このフラグは、エラー判定部601がエラーを検出したと判定したときのみ、マクロブロック情報の一部として格納するとしてもよい。ここで、マクロブロック情報保存部602は、「前記判定手段により復号化対象ピクチャにエラーがあると判定された場合、前記復号化対象ピクチャが前記エラーを含むことを示す情報と、前記エラーを含む前記復号化対象ピクチャの前記マクロブロック情報とを対応付けて保存するマクロブロック情報保存手段」の一例である。
動きベクトル演算部110は、ピクチャメモリ103から読み出したアンカーピクチャの該当する位置のマクロブロック情報に含まれるエラー情報がこのマクロブロックの復号化時のエラーを示していない場合は、このマクロブロック情報を正しいものとして、ダイレクトモードの動きベクトルの計算を行う。
一方、動きベクトル演算部110は、マクロブロック情報に含まれるエラー情報がこのマクロブロックを含むピクチャの復号化時のエラーを示している場合は、このマクロブロック情報は正しくないとして、ピクチャメモリ103から読み出した動きベクトル値及びブロックタイプ情報を使用せず、常にブロックタイプ情報を画面内予測であるとして動作する。または、動きベクトル演算部110は、ブロックタイプ情報が画面内予測であるとみなして動作する代わりに、エラー情報がアンカーマクロブロックを含むピクチャのエラーを示している場合は、空間的ダイレクトモードで動きベクトルの算出を行うとしてもよい。ここで、動きベクトル演算部110は、「既に復号化されたピクチャのマクロブロック情報を参照して復号化対象ピクチャを復号化する場合、参照したマクロブロック情報が、前記エラーを含むことを示す情報と対応するマクロブロック情報であれば、復号化動作を前記マクロブロック情報で示される復号化動作とは異なる動作に変更する前記復号化手段」および「参照したマクロブロック情報が、前記エラーを含むことを示す情報に対応付けられたマクロブロック情報であれば、参照した前記マクロブロック情報の示すブロックタイプにかかわらず、前記マクロブロック情報が画面内予測を示しているものと判断して復号化対象ピクチャを復号化する前記復号化手段」の一例である。
次に、本実施の形態4の動作を図12及び図13に示すフローチャートを用いて説明する。図12は、エラーを検出したと判定したときに、マクロブロック情報がエラーを含むことを示すフラグをマクロブロック情報の一部として格納する場合の動画像復号化装置の動作を示すフローチャートである。図13は、マクロブロック情報の一部にエラーの有無を示すフラグが格納されている場合に画面間予測処理を行う動画像復号化装置の動作を示すフローチャートである。
まず、符号列解析部101は、入力された符号列よりマクロブロック情報を得る(S701)。
符号列解析部にてエラーが検出されたかをエラー判定部601にて判定する(S702)。
ステップS702にてエラー判定部601が、エラーが検出されなかったと判定した場合は、マクロブロックタイプスイッチ部108にて、ブロックタイプ情報ごとに画像予測方法を切り替える(S703)。
マクロブロックタイプが画面内予測の場合は、予測残差復号化部102や図示していない画面内予測部が復号化画像データを生成して、ピクチャメモリ103に格納する(S704)。
マクロブロックタイプが画面間予測の場合は、後で説明するのでここでは省略する(S705)。
次に、復号化時のブロックタイプ情報及び動きベクトル情報を含むマクロブロック情報を、マクロブロック情報保存部602によってピクチャメモリ103に格納する(S706)。
以上を、復号化対象ピクチャ内のマクロブロック数だけ繰り返す(S707)。
ステップS702にてエラー判定部601が、エラーが検出されたと判定した場合は、画像データ置換部109によって、復号化中のピクチャ全体の画像データを、既に復号化した他のピクチャの画像データで置き換える(S708)。
さらに、エラー判定部601は、マクロブロック情報保存部602によって、復号化中のピクチャの全マクロブロックに対応するマクロブロック情報として、少なくともエラーが発生したことを示すフラグを出力し、ピクチャメモリ103に格納する(S709)。
本実施の形態4に示す動画像復号化装置はこのようにして復号化対象ピクチャの復号化動作を完了する。次に、ブロックタイプ情報が画面間予測の場合についてのステップS705で動きベクトル演算部110の動作を、図13に示すフローチャートを用いて詳細に説明する。
まず、ブロックタイプ情報がダイレクトモードであるかどうかを判定する(S802)。
ブロックタイプ情報がダイレクトモードではない場合、そのまま通常のダイレクトモードではない画面間予測として動きベクトルを算出する(S807)。
ブロックタイプ情報がダイレクトモードである場合、ピクチャメモリ103からアンカーピクチャのピクチャ管理情報及びアンカーマクロブロックのマクロブロック情報を取得する(S803)。
アンカーマクロブロックのマクロブロック情報の中のエラー情報がエラーを示しているかどうかを判定する(S804)。
エラー情報がエラーを示していない場合は、取得したマクロブロック情報が正しいとして、ダイレクトモードの演算を行い動きベクトルを算出する(S805)。
エラー情報がエラーを示している場合は、取得したマクロブロック情報は正しくないとして、アンカーマクロブロックのブロックタイプ情報が画面内予測であるとして、ダイレクトモードの演算を行い、動きベクトルを算出する(S806)。
算出された動きベクトルを用いて、ピクチャメモリ103から参照ピクチャを取得し、動き補償の処理を行って画面間予測の処理を行う(S807)。
このようにダイレクトモードの復号化を行うときに、アンカーマクロブロックを含むピクチャがエラーを発生している場合には、エラーを含むマクロブロック情報を用いてダイレクトモードの処理を行うことがないので、エラーを含むストリームを復号化する場合も、安定して復号動作を継続することができる。
なお、本実施の形態では、エラーを検出した場合、該当ピクチャの全てのマクロブロック情報にエラーを示すフラグを書き込むとしたが、エラーを発生したマクロブロックのみとしても、エラーを発生したマクロブロック以降の全てのマクロブロックとしてもよい。また、該当スライスとしてもよい。
また、マクロブロック情報にエラー情報を書き込むのではなく、ピクチャ管理情報にエラーを書き込んでもよい。なお、すべてのマクロブロックにエラーを示すフラグを立てるのであれば、エラーフラグは1つの方が合理的であるので、例えば、マクロブロック情報は、必ずしもマクロブロックごとに管理するデータだけでなくそれ以外の単位(ピクチャ、スライスなど)で管理するとしてもよい。エラーフラグもその中で管理するようにしてもよい。ピクチャ単位で管理するエラーフラグがONの場合、動画像復号化装置は、そのピクチャのすべてのマクロブロックのエラーフラグがONであるのと同様に動作すればよい。
また、本実施の形態では、エラーを発生したアンカーマクロブロックのブロックタイプ情報を画面内予測として扱うとしたが、ブロックタイプ情報が画面間予測で動きベクトルの大きさが0としてもよい。また、本発明はこれに限定されず、マクロブロック情報にエラーフラグがあったときに何らかの手段でエラーコンシールメントすることが重要であるので、エラーフラグがあったときに必ずしも、画面内予測や動きベクトルを0とする画面間予測とする必要はなく、それ以外の方法で復号化を行うとしてもよい。
(実施の形態5)
実施の形態5における動画像復号化装置の構成は、実施の形態1で説明に使用した図6と同じ構成であるので、その説明を省略する。
実施の形態5では、エラー判定部104の動作が実施の形態1と異なる。エラーが検出された位置がマクロブロック情報である場合は、実施の形態1と同じように、エラーを復号化画像データ切り替え部105、画像データ置換部109、マクロブロック情報置換部113及び情報切り替え部112に通知する。しかし、エラーが検出された位置がマクロブロック情報でない場合は、エラー判定部104は、エラーを復号化画像データ切り替え部105、画像データ置換部109にのみ通知する。これにより、画像データのみ他のピクチャから代用し、マクロブロック情報はそのまま使用することになる。
ここで、符号列解析部101およびエラー判定部104は、「さらに前記マクロブロック情報に含まれる情報にエラーがあるか否かを判定する前記判定手段」の一例であり、マクロブロック情報置換部113は、「前記判定手段が前記マクロブロック情報に含まれる情報にエラーがあると判定した場合にのみ、復号化対象ピクチャの前記マクロブロック情報を前記保存手段に保存されているマクロブロック情報に置き換える前記マクロブロック情報置換手段」の一例である。
実施の形態5における動画像復号化装置の動作を図14に示すフローチャートを用いて説明する。図14は、本実施の形態5における動画像復号化装置の復号動作を説明するフローチャートである。図8と同じ処理をするステップについては同じ符号を付し、その説明を省略する。また、ステップS901でエラーが検出された場所がマクロブロック情報である場合も実施の形態1と同じであるので説明を省略する。
マクロブロック情報が正常に復号化された後に、エラー判定部104でエラーが検出された場合(S901)、画像データ置換部109によって、復号化中のピクチャ全体の画像データを、既に復号化した他のピクチャの画像データで置き換える(S308)が、マクロブロック情報はそのまま使用する。
このように動作することにより、エラーが検出された位置によって必要最低限の情報で代用することが可能となり、処理能力が向上する。
なお、上記実施の形態2〜5では、ピクチャメモリから読み出した復号化済みのピクチャのマクロブロック情報を情報切り替え部112に出力する場合には、マクロブロック情報の中の表示時刻情報を書き替えることとしたが、本発明はこれに限定されない。例えば、ピクチャメモリから読み出した復号化済みのピクチャの表示時刻情報を、フレームレートなどから近似的に算出した復号化対象ピクチャの表示時刻に書き替える代わりに、ピクチャメモリから読み出した復号化済みのピクチャのマクロブロック情報に含まれる動きベクトル情報を、近似的に算出した復号化対象ピクチャの表示時刻に基づいてスケーリングして得られる動きベクトル情報に書き替えるとしてもよい。
以上のように、本発明の動画像復号化装置によれば、エラーコンシールメントを行う場合においても、エラーを含むピクチャに対して時間的ダイレクトモードで参照される動きベクトルを補うことが可能となるような情報を付加することができるという効果がある。
(実施の形態6)
実施の形態6における動画像復号化装置の構成を、図15を用いて説明する。図15は、動画像復号化装置のハードウェア構成の一例を示すブロック図である。
実施の形態6における動画像復号化装置は、実施の形態1のピクチャメモリ103を除く部分を集積回路であるLSIで実現し、ピクチャメモリ103をDRAM(Dynamic Random Access Memory)で構成し、記憶装置114から符号列を入力し、表示装置115に表示する構成である。
本実施の形態の動作は実施の形態1と同じである。
これらLSIやDRAM、記憶装置、表示装置は、一部又は全部を含むように1チップ化されてもよいし、これらを分割して複数のLSIとして実現されてもよい。
ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
表示装置115を接続することにより、動画像を見る視聴者はエラーが含まれていても、画面が乱れることなく、視聴を行うことが出来る。
なお、表示装置115は、ブラウン管を用いたCRTでもよいし、液晶テレビやプラズマディスプレーパネルであってもよい。
また、記憶装置114は、ハードディスク装置であっても、フラッシュメモリであっても、DVDなどのディスク装置であってもよい。また、ピクチャメモリ103は、DRAMに限らず、SRAMやフラッシュメモリ、ハードディスク装置などであってもよい。
(実施の形態7)
さらに、上記各実施の形態で示した画像信号処理方法を実現するためのプログラムを、フレキシブルディスク等の記録媒体に記録するようにすることにより、上記各実施の形態で示した処理を、独立したコンピュータシステムにおいて簡単に実施することが可能となる。
図16は、上記各実施の形態の画像信号処理方法を、フレキシブルディスク等の記録媒体に記録されたプログラムを用いて、コンピュータシステムにより実施する場合の説明図である。
図16(b)は、フレキシブルディスクを正面からみた外観、断面構造、及びフレキシブルディスクを示し、図16(a)は、記録媒体本体であるフレキシブルディスクの物理フォーマットの例を示している。フレキシブルディスクFDはケースF内に内蔵され、該ディスクの表面には、同心円状に外周からは内周に向かって複数のトラックTrが形成され、各トラックは角度方向に16のセクタSeに分割されている。従って、上記プログラムを格納したフレキシブルディスクでは、上記フレキシブルディスクFD上に割り当てられた領域に、上記プログラムが記録されている。
また、図16(c)は、フレキシブルディスクFDに上記プログラムの記録再生を行うための構成を示す。画像信号処理方法を実現する上記プログラムをフレキシブルディスクFDに記録する場合は、コンピュータシステムCsから上記プログラムを、フレキシブルディスクドライブFDDを介して書き込む。また、フレキシブルディスク内のプログラムにより画像信号処理方法を実現する上記画像信号処理方法をコンピュータシステム中に構築する場合は、フレキシブルディスクドライブFDDによりプログラムをフレキシブルディスクから読み出し、コンピュータシステムに転送する。
なお、上記説明では、記録媒体としてフレキシブルディスクを用いて説明を行ったが、光ディスクを用いても同様に行うことができる。また、記録媒体はこれに限らず、ICカード、ROMカセット等、プログラムを記録できるものであれば同様に実施することができる。
以上のように、本発明に係る動画像復号化装置は、例えば、携帯電話、DVD装置、セットトップボックス、デジタルテレビ、自動車、カーナビ、セキュリティシステムなど動画像を構成するピクチャを復号化あるいは表示する機器において有用である。
101 符号列解析部
102 予測残差復号化部
103 ピクチャメモリ
104 エラー判定部
105 復号化画像データ切り替え部
106 動き補償部
107 加算演算部
108 マクロブロックタイプスイッチ部
109 画像データ置換部
110 動きベクトル演算部
111 マクロブロック情報保存部
112 情報切り替え部
113 マクロブロック情報置換部
114 記憶装置
115 表示装置

Claims (1)

  1. 復号化対象のマクロブロック自体は動きベクトル情報を持たず、既に復号化済みの他のピクチャのマクロブロック情報を参照して、当該復号化対象のマクロブロックの動きベクトル情報を予測生成する動画像復号化装置であって、
    入力された動画像符号化ストリームから復号化された復号化済みのマクロブロックのマクロブロック情報を保存する保存手段と、
    前記入力された動画像符号化ストリームにエラーがあるか否かを判定する判定手段と、
    前記判定手段によりエラーがあると判定された場合、前記復号化済みのマクロブロックのマクロブロック情報を変更するマクロブロック情報変更手段と
    を備えた動画像復号化装置。
JP2009146897A 2006-12-27 2009-06-19 動画像復号化装置および動画像復号化方法 Active JP5265459B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009146897A JP5265459B2 (ja) 2006-12-27 2009-06-19 動画像復号化装置および動画像復号化方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006351245 2006-12-27
JP2006351245 2006-12-27
JP2009146897A JP5265459B2 (ja) 2006-12-27 2009-06-19 動画像復号化装置および動画像復号化方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2008551151A Division JP4427086B2 (ja) 2006-12-27 2007-12-27 動画像復号化装置

Publications (2)

Publication Number Publication Date
JP2009239951A true JP2009239951A (ja) 2009-10-15
JP5265459B2 JP5265459B2 (ja) 2013-08-14

Family

ID=39562599

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2008551151A Active JP4427086B2 (ja) 2006-12-27 2007-12-27 動画像復号化装置
JP2009146897A Active JP5265459B2 (ja) 2006-12-27 2009-06-19 動画像復号化装置および動画像復号化方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2008551151A Active JP4427086B2 (ja) 2006-12-27 2007-12-27 動画像復号化装置

Country Status (5)

Country Link
US (2) US8265159B2 (ja)
EP (1) EP2099227B1 (ja)
JP (2) JP4427086B2 (ja)
CN (2) CN101513074B (ja)
WO (1) WO2008078807A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012089975A (ja) * 2010-10-18 2012-05-10 Nec Corp 符号化ストリーム信号の復号装置およびエラー隠蔽処理方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8265159B2 (en) * 2006-12-27 2012-09-11 Panasonic Corporation Moving picture decoding apparatus
KR20100128392A (ko) * 2009-05-28 2010-12-08 삼성전자주식회사 영상 디스플레이 방법, 영상 매칭 방법 및 이를 이용한 디스플레이 장치
US8811473B2 (en) 2009-07-07 2014-08-19 Panasonic Corporation Moving picture decoding device, moving picture decoding method, moving picture decoding system, integrated circuit, and program
JP5387520B2 (ja) * 2010-06-25 2014-01-15 ソニー株式会社 情報処理装置と情報処理方法
JP5698644B2 (ja) * 2011-10-18 2015-04-08 株式会社Nttドコモ 動画像予測符号化方法、動画像予測符号化装置、動画像予測符号化プログラム、動画像予測復号方法、動画像予測復号装置及び動画像予測復号プログラム
US10447752B2 (en) * 2016-11-22 2019-10-15 Vmware, Inc. Live migration of virtualized video stream decoding
WO2018198179A1 (ja) 2017-04-25 2018-11-01 オリンパス株式会社 画像表示端末、画像送信端末、画像表示システム、画像表示方法、画像送信方法、およびプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000236522A (ja) * 1999-02-12 2000-08-29 Sony Corp 画像情報処理装置および方法、並びに提供媒体
WO2005046072A1 (en) * 2003-10-09 2005-05-19 Thomson Licensing Direct mode derivation process for error concealment
JP2006295569A (ja) * 2005-04-11 2006-10-26 Toshiba Corp 動画像復号装置

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0810937B2 (ja) 1989-07-14 1996-01-31 国際電信電話株式会社 動き補償誤り補正方式
JPH0818979A (ja) * 1994-06-27 1996-01-19 Canon Inc 画像処理装置
JPH0884334A (ja) 1994-09-14 1996-03-26 Hitachi Ltd 画像信号の復号化方法およびその装置
JPH0951541A (ja) 1995-08-04 1997-02-18 Kokusai Electric Co Ltd 動画像通信方法
JPH1023435A (ja) 1996-06-27 1998-01-23 Sanyo Electric Co Ltd エラー処理装置及び復号装置
USRE38564E1 (en) 1997-03-07 2004-08-10 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
US5991447A (en) 1997-03-07 1999-11-23 General Instrument Corporation Prediction and coding of bi-directionally predicted video object planes for interlaced digital video
US5974184A (en) 1997-03-07 1999-10-26 General Instrument Corporation Intra-macroblock DC and AC coefficient prediction for interlaced digital video
US6005980A (en) 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
US6212236B1 (en) 1997-03-26 2001-04-03 Matsushita Electric Industrial Co., Ltd. Image decoding apparatus
JP3604290B2 (ja) * 1998-09-25 2004-12-22 沖電気工業株式会社 動画像復号方法及び装置
KR100357093B1 (ko) * 1999-06-02 2002-10-18 엘지전자 주식회사 동영상 압축 복원시스템에서의 오류 은폐장치 및 방법
JP2001359103A (ja) 2000-06-12 2001-12-26 Ntt Docomo Inc 動画像データ符号化装置、動画像データ伝送方法および動画像データ復号装置
JP2004531925A (ja) * 2001-03-05 2004-10-14 インタービデオインコーポレイテッド 圧縮されたビデオビットストリームにおける冗長な動きベクトルを符号化し復号するシステム及び方法
CN1134174C (zh) * 2001-06-08 2004-01-07 清华大学 地面数字电视广播中的视频差错隐藏方法
CN100581238C (zh) * 2001-08-23 2010-01-13 宝利通公司 视频错误隐藏的系统和方法
CN1917641A (zh) * 2002-01-18 2007-02-21 株式会社东芝 视频编码方法和装置以及视频解码方法和装置
EP3525467B1 (en) * 2002-04-19 2021-02-24 Panasonic Intellectual Property Corporation of America Bitstream decoding method and apparatus
PT3525467T (pt) * 2002-04-19 2021-04-08 Panasonic Ip Corp America Método e aparelho de descodificação de fluxo de bits
CN100566420C (zh) 2002-07-15 2009-12-02 株式会社日立制作所 动态图像的编码方法
US7027515B2 (en) * 2002-10-15 2006-04-11 Red Rock Semiconductor Ltd. Sum-of-absolute-difference checking of macroblock borders for error detection in a corrupted MPEG-4 bitstream
US8693540B2 (en) * 2005-03-10 2014-04-08 Qualcomm Incorporated Method and apparatus of temporal error concealment for P-frame
US7660354B2 (en) 2005-05-11 2010-02-09 Fang Shi Temporal error concealment for bi-directionally predicted frames
JP4523886B2 (ja) * 2005-07-08 2010-08-11 富士通株式会社 動画像復号装置、動画像復号方法および動画像復号プログラム
JP4534910B2 (ja) * 2005-08-26 2010-09-01 ソニー株式会社 画像処理装置および画像処理方法、記録媒体、並びに、プログラム
US8265159B2 (en) * 2006-12-27 2012-09-11 Panasonic Corporation Moving picture decoding apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000236522A (ja) * 1999-02-12 2000-08-29 Sony Corp 画像情報処理装置および方法、並びに提供媒体
WO2005046072A1 (en) * 2003-10-09 2005-05-19 Thomson Licensing Direct mode derivation process for error concealment
JP2006295569A (ja) * 2005-04-11 2006-10-26 Toshiba Corp 動画像復号装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012089975A (ja) * 2010-10-18 2012-05-10 Nec Corp 符号化ストリーム信号の復号装置およびエラー隠蔽処理方法

Also Published As

Publication number Publication date
US8265159B2 (en) 2012-09-11
US8755439B2 (en) 2014-06-17
JPWO2008078807A1 (ja) 2010-04-30
JP5265459B2 (ja) 2013-08-14
EP2099227A1 (en) 2009-09-09
EP2099227A4 (en) 2011-06-01
CN102176751A (zh) 2011-09-07
CN101513074B (zh) 2011-07-06
US20120183072A1 (en) 2012-07-19
CN101513074A (zh) 2009-08-19
US20090323821A1 (en) 2009-12-31
CN102176751B (zh) 2013-12-25
JP4427086B2 (ja) 2010-03-03
WO2008078807A1 (ja) 2008-07-03
EP2099227B1 (en) 2019-11-13

Similar Documents

Publication Publication Date Title
JP5265459B2 (ja) 動画像復号化装置および動画像復号化方法
JP5155157B2 (ja) 動画像復号化装置
TW201911869A (zh) 全方位視訊之解碼方法、編碼方法及電子設備
JP4531058B2 (ja) 動画像復号装置
US20100020879A1 (en) Method for decoding a block of a video image
US20100086053A1 (en) Motion estimation device, motion estimation method, and motion estimation program
JP2007288462A (ja) 映像表示装置
US8629939B1 (en) Television ticker overlay
KR20210094089A (ko) 비디오 처리 방법 및 장치
US20140056354A1 (en) Video processing apparatus and method
TWI652934B (zh) 自適應視頻解碼方法及其裝置
JP2009010460A (ja) 画像処理装置およびその方法、並びにプログラム
JP2001076155A (ja) 動画像内の移動物体検出方法及び装置
JPWO2013031071A1 (ja) 動画像復号装置、動画像復号方法、及び集積回路
JP2011040836A (ja) フレーム補間装置及びフレーム補間方法
JP4235209B2 (ja) 動きベクトル検出装置および動きベクトル検出方法
US20120328017A1 (en) Video decoder and video decoding method
JP6221820B2 (ja) 符号化装置、符号化方法および符号化プログラム
JPWO2008117440A1 (ja) デコード方法及びデコード装置
JP2007259197A (ja) 手ぶれ補正付き動画復号再生装置および方法
JP2011035612A (ja) フレームレート変換装置、およびそれを搭載した表示装置
KR100234237B1 (ko) 동화상 움직임 검출장치
JP2011142670A (ja) ディジタル画像復号装置及びディジタル画像復号方法
JP2002044607A (ja) 信号処理装置及びサブサンプル方法
Çetin An adaptive true motion estimation algorithm for frame rate up-conversion and its hardware design

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121005

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130501

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5265459

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150