JP2009081579A - 動画像復号装置、および動画像復号方法 - Google Patents
動画像復号装置、および動画像復号方法 Download PDFInfo
- Publication number
- JP2009081579A JP2009081579A JP2007248084A JP2007248084A JP2009081579A JP 2009081579 A JP2009081579 A JP 2009081579A JP 2007248084 A JP2007248084 A JP 2007248084A JP 2007248084 A JP2007248084 A JP 2007248084A JP 2009081579 A JP2009081579 A JP 2009081579A
- Authority
- JP
- Japan
- Prior art keywords
- error
- prediction
- decoding
- intra
- macro block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/89—Methods 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/895—Methods 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
Abstract
【課題】エラーコンシールメント処理に係わる処理の負荷を低くすること。
【解決手段】ストリーム情報処理部303Bは、エラーを検出したマクロブロック以降のマクロブロックのシンタックス値を書き換え、予測モードをイントラ4×4予測に設定し、および予測方向をDC(平均値)モードに設定し、およびDCT係数を全て0に設定する。
【選択図】 図5
【解決手段】ストリーム情報処理部303Bは、エラーを検出したマクロブロック以降のマクロブロックのシンタックス値を書き換え、予測モードをイントラ4×4予測に設定し、および予測方向をDC(平均値)モードに設定し、およびDCT係数を全て0に設定する。
【選択図】 図5
Description
本発明は、エラーコンシールメント処理を行う動画像復号装置、および動画像復号方法に関する。
現在、携帯型マルチメディアプレーヤや携帯電話等にチューナが搭載され、携帯電話・移動体端末向けの1セグメント部分受信サービス(以下、ワンセグ放送)を視聴できる機器が増えてきている。
ワンセグ放送は、移動しながら視聴されることがあるが、移動時には電波状況が刻々と変化する。特に弱電界領域にはいると、受信して復調されたデータに誤りが混じることがある。データに誤りが混入した場合、動画像の復号時にエラーコンシールメント処理が行われる。
特許文献1には、生成される画像に適したエラーコンシールメント処理を実行し、エラーによる画質の劣化を低減する技術が開示されている。
特開2007−67664号公報
ワンセグ放送は、携帯機器で受信されることが多い。携帯機器では、駆動時間を延ばすために、動画像の復号に係わる処理を出来るだけ低負荷で行うことが望まれる。従って、エラーコンシールメント処理も出来るだけ低負荷で行うことが望まれる。
本発明の目的は、エラーコンシールメント処理に係わる処理の負荷を低くすることが可能な動画像復号装置、および動画像復号方法を提供することにある。
本発明の一例に係わる動画像復号装置は、圧縮符号化された動画像ストリームをデコードする動画像復号装置において、前記動画像ストリームのデコード対象画面に含まれる各マクロブロックのシンタックス値を復号処理する復号手段と、前記復号手段が復号したシンタックス値のエラーを検出するエラー検出手段と、前記エラー検出手段がエラーを検出したデコード対象画面が動き補償予測処理が実行されないフレーム内予測ピクチャの場合、エラーを検出したマクロブロック以降のマクロブロックのデータを前記フレーム内予測ピクチャの情報または復号を行ったマクロブロックのデータから推定するために、エラーを検出したマクロブロック以降のマクロブロックのシンタックス値を書き換えるエラーコンシールメント処理を実行するエラーコンシールメント処理手段と、前記復号手段によって復号されたシンタックス値、或いは前記エラーコンシールメント処理手段によって書き換えられたシンタックス値に応じて、1以上の参照ピクチャから、デコード対象画面に対応するフレーム間予測信号を生成する動き補償予測処理を実行する手段と、前記復号手段によって復号されたシンタックス値、或いは前記エラーコンシールメント処理手段によって書き換えられたシンタックス値に応じて、前記デコード対象画面からフレーム内予測信号を生成するフレーム内予測処理を実行する手段と、前記デコード対象画面をデコードするために、前記デコード対象画面に対応する予測誤差信号に前記フレーム間予測信号および前記フレーム内予測信号の一方を加算する手段とを具備することを特徴とする。
エラーコンシールメント処理に係わる処理の負荷を低くすることが可能になる。
本発明の実施の形態を以下に図面を参照して説明する。
まず、図1を参照して、本発明の一実施形態に係る動画像復号装置の構成を説明する。
この動画像復号装置は、例えば、パーソナルコンピュータ、PDA、AV(オーディオ・ビデオ)プレーヤ、のような携帯型機器であり、内蔵バッテリによって駆動可能に構成されている。以下では、電子機器がオーディオデータおよびビデオデータを再生するためのマルチメディアプレーヤ11として実現されている場合を想定する。
マルチメディアプレーヤ11の本体表面上には、表示デバイスとしてのLCD12と、入力デバイスとしての各種操作ボタン(バックボタン13、スタートボタン14、OKボタン15、上下左右ボタン16、ワンセグボタン)とが設けられている。
次に、図2を参照して、マルチメディアプレーヤ11のシステム構成を説明する。
図2に示すように、マルチメディアプレーヤ11は、CPU101、メモリ102、表示コントローラ103、ハードディスクドライブ(HDD)104、入力インタフェース部105、USBコントローラ106、オーディオコントローラ107、ワンセグチューナ108、無線LANモジュール109、電源回路110、およびバッテリ111等を備えている。
CPU101はマルチメディアプレーヤ11の動作を制御するプロセッサであり、メモリ102にロードされた各種プログラム(オペレーティングシステム、およびアプリケーションプログラム等)を実行する。アプリケーションプログラムは、オーディオデータおよびビデオデータの再生、およびワンセグ放送の再生の実行等を行うためのプログラムである。
表示コントローラ103はLCD12を制御し、各種操作メニュー、およびアプリケーションプログラムによって再生されたビデオデータに対応する画像等を、LCD12の表示画面上に表示する。HDD104は、オーディオデータおよびビデオデータ等の各種データを格納するためのストレージデバイスとして機能する。USBコントローラ106はマルチメディアプレーヤ11の本体に設けられたUSB端子121に接続されており、USB端子121に接続された他の各種デバイスとの通信を実行する。オーディオコントローラ107は音源デバイスであり、アプリケーションプログラムによって再生されたオーディオデータに対応するサウンド信号を生成し、そのサウンド信号をヘッドホン端子122に出力する。
ワンセグチューナ108はモバイル端末向けのワンセグ放送を受信するために設けられている。ワンセグチューナ108はチューナ回路、OFDM復調器、およびエラー訂正器等を備えている。チューナ回路はアンテナから入力されるデジタル放送信号(高周波信号)の中から、所望の受信チャンネルに対応する周波数の信号成分を、ミキサを用いて中間周波数信号に変換するとともに、アンプを用いてそれぞれのOFDM復調器に入力するための所定の電力レベルに増幅する。
OFDM復調器では、チューナ回路からのアナログの中間周波数信号をそれぞれA/D変換してデジタル信号に変換し、それぞれ直交復調を行って複素デジタル信号に変換し、それぞれFFT(高速フーリエ変換)を行って周波数軸上のサブキャリア信号に分解した上でからワンセグ放送を再生するための復調信号を出力する。
ワンセグ放送では、リードソロモンと畳み込み符号によって、エラー訂正のための符号化が行われている。エラー訂正器203は、復調信号のエラーを検出し、検出したエラーを訂正して誤り訂正信号(トランスポートストリーム(TS))を出力する。
トランスポートストリームは、圧縮符号化された放送番組データを多重化したデータストリームである。地上波デジタルTV放送においては、各チャネルの放送番組データに対応するトランスポートストリーム(TS)は、圧縮符号化された動画像データと、圧縮符号化されたオーディオデータと、グラフィクスデータとを含む。グラフィクスデータも圧縮符号化されている。
CPU101で実行されるワンセグ放送再生アプリケーションは、復号されたトランスポートストリーム(TS)を映像データ、音声データに分離する。ワンセグ放送再生アプリケーションのソフトウェア・ビデオデコードモジュールは、H.264/AVC規格でエンコードされている映像のストリームをデコードし、表示コントローラ103に送る。表示コントローラ103は、デコードされたデータに応じたビデオ信号を生成する。ビデオ信号がLCD12に入力されることによって、LCD12はワンセグ放送の動画像を表示する。
また、ワンセグ放送再生アプリケーションは、AAC方式でエンコードされている音声データをオーディオコントローラ107に送る。オーディオコントローラ107は、音声データを復号し、オーディオ信号を生成する。オーディオ信号はヘッドホン端子122を介してヘッドホンに入力され、ヘッドホンからワンセグ放送の音声を出力する。
電源回路110は、マルチメディアプレーヤ11の本体内に設けられたバッテリ111からの電力、または外部のACアダプタ112からの電力を用いて、各コンポーネントに動作電源を供給する。
次に、図3を参照して、ワンセグ放送再生アプリケーションによって実現されるビデオデコードモジュールの機能構成を説明する。
ワンセグ放送アプリケーションのビデオデコードモジュールは、H.264/AVC規格に対応しており、図示のように、エントロピー復号部301、エラー検出部302、エラーコンシールメント処理部303、逆量子化部304、逆DCTのような逆変換部305、加算部306、デブロッキングフィルタ部307、フレームメモリ308、イントラ予測部309、インター予測部310、およびモード切替スイッチ部311を含む。逆変換部305によるH.264の直交変換は整数精度であり、従来のDCTとは異なるが、ここではDCTと称することとする。
各画面の符号化は、たとえば16×16画素のマクロブロック単位で実行される。各マクロブロックごとに、フレーム内符号化モード(イントラ符号化モード)およびフレーム間予測符号化モード(インター符号化)のいずれか一方が選択される。
フレーム間予測符号化モードにおいては、既に符号化された画面(ピクチャ)に対する符号化対象画面の動きを推定することによって、符号化対象画面に対応する動き補償フレーム間予測信号が、例えばブロックのような、定められた形状単位で生成される。そして、符号化対象画面(ピクチャ)から動き補償フレーム間予測信号を引いた残差信号、つまり予測誤差信号が、直交変換(DCT)、量子化、およびエントロピー符号化によって、符号化される。また、イントラ符号化モードにおいては、符号化対象画面(ピクチャ)の予測信号は符号化対象画面と同一の画面(ピクチャ)から生成され、その生成された予測信号が直交変換(DCT)、量子化、およびエントロピー符号化によって、符号化される。
MPEG−2や、MPEG−4ではピクチャを一つの単位として、符号化モードが決められている。しかし、H.264/AVC規格の場合、一つのピクチャ内のスライスが符号化の基本単位となっており、複数の符号化モードを混在させることが出来る。
一つのピクチャ単位でアクセスするために、いくつかのNALユニットをまとめた一区切りをアクセス・ユニットと呼ぶ。アクセス・ユニットは、SPS(Sequence Parameter Set)、PPS(Picture Parameter Set)、主ピクチャ情報を有する。
SPSは、画像のプロファイルやレベルなど、シーケンス全体の符号化に関する情報を含むヘッダである。PPSは、ピクチャ全体の符号化モードを示すヘッダである。主ピクチャ情報は、ピクチャに含まれる複数のマクロブロックのデータの集まりである。
なお、ピクチャ全体のヘッダに相当するPPSが無い場合もあるので、PPSによってピクチャの先頭を見つけることが出来ない。ピクチャの区切りは、スライスのヘッダに含まれるフレーム番号等を参照して、フレーム番号などのいくつかの情報が直前のNALユニットと異なるか否かによって検出する。
各マクロブロックのデータは、復号に用いるための情報を有する。復号に用いられる情報としては、予測モード情報、予測ブロックサイズ、予測方向情報、参照ピクチャインデックス、動きベクトル情報、DCT係数がある。
以下、図3のビデオデコードモジュール(ソフトウェアデコーダ)の動作を説明する。
H.264/AVC規格にしたがって圧縮符号化された動画像ストリームは、まず、エントロピー復号部301に入力される。圧縮符号化された動画像ストリームには、1画面の符号化された画像情報の他に、フレーム間予測符号化(インター予測符号化)で用いられた予測ブロックサイズ情報、参照ピクチャインデックス、および動きベクトル情報、フレーム内予測符号化(イントラ予測符号化)で用いられたフレーム内予測情報、ならびに予測モード(インター予測符号化/イントラ予測符号化)を示すモード情報等が含まれている。
デコード処理は、たとえば16×16画素のマクロブロック単位で実行される。エントロピー復号部301は動画像ストリームに対して可変長復号のようなエントロピー復号処理を施して、動画像ストリームに含まれるシンタックス値をそれぞれ分離する。シンタックス値としては、DCT係数、予測ブロックサイズ、動きベクトル情報(動きベクトル差分情報)、フレーム内予測情報、参照ピクチャインデックス、および予測モード情報がある。この場合、例えば、デコード対象画面(ピクチャ)内の各マクロブロックは4×4画素(または8×8画素)のブロック毎にエントロピー復号処理され、各ブロックは4×4(または8×8)の量子化DCT係数に変換される。以下では、各ブロックが4×4画素である場合を想定する。
動きベクトル情報は、モード切替スイッチ部311を介してインター予測部310に送られる。フレーム内予測情報は、モード切替スイッチ部311を介してイントラ予測部309に送られる。モード情報はモード切替スイッチ部311に送られる。
各デコード対象ブロックの4×4の量子化DCT係数は、逆量子化部304による逆量子化処理により4×4のDCT係数(直交変換係数)に変換される。この4×4のDCT係数は、逆変換部305による逆整数DCT(直交逆変換)処理によって、周波数情報から、4×4の画素値に変換される。この4×4の画素値は、デコード対象ブロックに対応する予測誤差信号である。この予測誤差信号は加算部306に送られ、そこでデコード対象ブロックに対応する予測信号(動き補償フレーム間予測信号またはフレーム内予測信号)が加算され、これによってデコード対象ブロックに対応する4×4の画素値がデコードされる。
イントラ予測モードにおいては、モード切替スイッチ部311によってイントラ予測部309が選択され、これによって、イントラ予測部309によって得られるフレーム内予測信号が予測誤差信号に加算される。インター予測モードにおいては、モード切替スイッチ部311によってインター予測部310が選択され、動き補償フレーム間予測信号が予測誤差信号に加算される。
このように、デコード対象画面に対応する予測誤差信号に予測信号(動き補償フレーム間予測信号またはフレーム内予測信号)を加算してデコード対象画面をデコードする処理が所定のブロック単位で実行される。
デコードされた各画面(ピクチャ)は、デブロッキングフィルタ部307によってデブロッキングフィルタ処理が施された後に、フレームメモリ308に格納される。このデブロッキングフィルタ部307は、例えば4×4画素のブロック単位で、デコードされた各画面に対してブロックノイズを低減するためのデブロッキングフィルタ処理を施す。このデブロッキングフィルタ処理は、ブロック歪みが参照画面に含まれてしまい、これによってブロック歪みが別の画面の復号画像に伝搬してしまうことを防止する。デブロッキングフィルタ処理は、ブロック歪みが生じやすい箇所に対してはより強いフィリタリングが施され、ブロック歪みが生じにくい箇所に対しては弱いフィリタリングが施されるように、適応的に実行される。デブロッキングフィルタ処理はループフィルタ処理によって実現されている。
そして、デブロッキングフィルタ処理された各画面は、フレームメモリ308から出力画像フレーム(または出力画像フィールド)として読み出される。また、動き補償フレーム間予測のための参照画面として使用されるべき各画面は、フレームメモリ308内に一定期間保持される。H.264/AVC規格の動き補償フレーム間予測符号化においては、複数の画面を参照画面として使用することができる。このため、フレームメモリ308は、複数画面分の画像を記憶するための複数個のフレームメモリ部を備えている。
インター予測部310は、デコード対象画面から動き補償フレーム間予測信号を生成するフレーム間予測処理を実行する。インター予測部310は、デコード対象画面に対応する動きベクトル情報に基づき、デブロッキングフィルタ処理された1つの参照画面からデコード対象画面に対応するフレーム間予測信号を生成するための動き補償予測処理を実行する。動き補償予測処理は、参照画面インデックスに応じて参照される参照画面に対して画素補間処理を施す処理と、動画像ストリームに含まれる動きベクトル情報に基づいて、画素補間処理された参照画面からデコード対象画面に対応するフレーム間予測信号を生成する処理とを含む。すなわち、インター予測部310は、デコードされた画面(参照画面)に対して画素補間処理を施し、これによって、小数精度の画素群を含む予測補間信号を生成する。そして、インター予測部310は、動きベクトル情報に基づいて動き補償予測を実行することにより、画素補間処理によって得られた予測補間信号からデコード対象画面に対応するフレーム間予測信号を生成する。
イントラ予測部309は、デコード対象画面からフレーム内予測信号を生成するフレーム内予測処理を実行する。フレーム内予測処理では、デコード対象画面から、その画面内に含まれるデコード対象ブロックのフレーム内予測信号が生成される。このイントラ予測部309は、上述のフレーム内予測情報に従ってフレーム内予測処理(イントラ予測処理ともいう)を実行して、デコード対象ブロックと同一画面内に存在する、当該デコード対象ブロックに近接する既にデコードされた他のブロック内の画素値からフレーム内予測信号を生成する。デコード対象ブロックの大きさには、4×4ブロックと、16×16ブロックとの二つの予測ブロックサイズがある。また、予測部ブロックサイズが4×4ブロックの場合、予測方向情報に従って、vertical(予測モード0)、horizontal(予測モード1)、DC(予測モード2)、diagonal down-left(予測モード3)、diagonal down-right(予測モード4)、vertical right(予測モード5)、horizontal down(予測モード6)、vertical left(予測モード7)、およびhorizontal up(予測モード8)の9種類の予測方向のうちの一つが、予測ブロック単位で選択される。また、また、予測部ブロックサイズが16×16ブロックの場合、予測方向情報に従って、vertical(予測モード0)、horizontal(予測モード1)、DC(予測モード2)、およびplane(予測モード3)の4種類の予測方向のうちの一つが、予測ブロック単位で選択される。
受信環境によっては、エントロピー復号部301に入力される動画像ストリーム(入力ストリーム)のデータにエラーが混入する場合がある。特にエラー混入によって損失してしまったデータに該当する領域の画像を補完するエラーコンシールメント機能が重要である。
エラー検出部302は、入力ストリームのデータにエラーが混入していたか否かをマクロブロック毎に判別する。そして、エラー検出部302は、エラーの有無を示すエラーフラグと、判定を行ったマクロブロックの番号とを含むエラー情報をエラーコンシールメント処理部303に出力する。エラー情報は、エラーフラグが有効な場合、エラー情報に含まれる番号のマクロブロックにエラーがあったことを示す。エラー情報は、エラーフラグが無効な場合、エラー情報に含まれる番号のマクロブロックにエラーが無かったことを示す。
エラー検出部302は、図4のフローチャートに示すように、エラーの混入を検出するために、ストリームからシンタックス値を取得し(ステップS11)、シンタックス値が規格の範囲内の値であるか否かを判別している(ステップS12)。エラー検出部302は、シンタックス値が規格の範囲内の値であればエラーが混入していないと判断する。また、エラー検出部302は、ピクチャのヘッダ、シンタックス値が規格の範囲外であればエラーが混入していると判断し、エラーが発生した現在のマクロブロック位置を出力する(ステップS13)。
エラーコンシールメント処理部303は、図5に示すように、エラー情報解析部303A、およびストリーム情報処理部303B等を有する。エラー情報解析部303Aは、エラー検出部302から出力されたエラー情報を解析し、エラーの有無を判別する。エラーがないマクロブロックの場合、エラーコンシールメント処理部303は入力されたストリーム情報に処理を加えることなく出力する。エラー情報解析部303Aがエラー情報からエラーがあったことを検出した場合、エラー情報解析部303Aは、ストリーム情報処理部303Bにエラーがあったマクロブロックの番号を通知する。ストリーム情報処理部303Bは、エラー検出したデータ以降それ以降の失われたデータについてどのようなデータであったかを前記ピクチャのヘッダ情報、または正常に復号出来たマクロブロックの情報から推定するために、エラーがあったマクロブロックのシンタックス値を書き換える処理を実行する。
図6および図7のフローチャートを参照して、エラー検出部302によるエラー検出の詳細の手順を説明する。
先ず、エラー検出部302は、ピクチャのヘッダ情報を取得し(ステップS21)、ヘッダ情報が規格の範囲内の値であるか否かを判別する(ステップS22)。範囲内の値ではないと判断した場合(ステップS22のNo)、エラーが発生したと判断し、エラー検出部302は、エラーコンシールメント処理部303にピクチャの先頭のマクロブロック番号と、当該マクロブロックにエラーが有ることを示すエラーフラグを含むエラー情報を出力する(ステップS37)。
先ず、エラー検出部302は、ピクチャのヘッダ情報を取得し(ステップS21)、ヘッダ情報が規格の範囲内の値であるか否かを判別する(ステップS22)。範囲内の値ではないと判断した場合(ステップS22のNo)、エラーが発生したと判断し、エラー検出部302は、エラーコンシールメント処理部303にピクチャの先頭のマクロブロック番号と、当該マクロブロックにエラーが有ることを示すエラーフラグを含むエラー情報を出力する(ステップS37)。
ステップS21で取得するピクチャのヘッダ情報の一例は、そのピクチャのプロファイルやレベルなど、シーケンス全体の符号化に関する情報を含む。H.264/AVC規格では、SPS(Sequence Parameter Set)に相当する。また、ピクチャのヘッダ情報の別の一例は、ピクチャ全体の符号化モードを示す。H.264/AVC規格では、PPS(Picture Parameter Set)に相当する。
範囲内の値であると判断した場合(ステップS22のYES)、イントラ予測モードであるかインター予測モードの何れかを示す予測モード情報を取得する(ステップS23)。予測モード情報の値が規格の範囲内の値であるか否かを判別する(ステップS24)。規格の範囲内の値の値ではないとは、例えば予測モード情報がイントラ予測モードおよびインター予測モードの一方を示さない場合である。
範囲内の値ではないと判断した場合(ステップS24のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーフラグが有効、且つ現在のエラー検出対象のマクロブロック番号を含むエラー情報を出力する(ステップS37)。
ステップS24において範囲内の値であると判断した場合(ステップS24のYes)、エラー検出部302は、エラー検出対象のマクロブロックがインター予測モードであるか否かを判別する(ステップS25)。インター予測モードではないと判断した場合(ステップS25のNo)、則ちイントラ予測モードであると判断した場合、予測ブロックサイズを取得する(ステップS26)。H.264/AVC規格の場合、予測ブロックサイズは、インター予測モードであれば、16×16、16×8、8×16、8×8、8×4、4×8、4×4の何れかである。取得した予測ブロックサイズが規格の範囲内の値であるか否かを判別する(ステップS27)。範囲内の値ではないと判断した場合(ステップS27のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーフラグが有効、且つ現在のエラー検出対象のマクロブロック番号を含むエラー情報を出力する(ステップS37)。
範囲内の値であると判断した場合(ステップS27のYes)、予測方向情報を取得する(ステップS28)。H.264/AVC規格におけるインター予測モードで予測部ブロックサイズが4×4ブロックの場合、予測部ブロックサイズが4×4ブロックであれば、予測方向は、予測モード0〜予測モード8の何れかである。また、H.264/AVC規格におけるインター予測モードで予測部ブロックサイズが4×4ブロックの場合、予測部ブロックサイズが16×16ブロックであれば、予測方向は、予測モード0〜予測モード3の何れかである。
範囲外であると判断した場合(ステップS29のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーフラグが有効、且つ現在のエラー検出対象のマクロブロック番号を含むエラー情報を出力する(ステップS37)。
ステップS25において、インター予測モードであると判断した場合(ステップS25のYes)、予測ブロックサイズを取得する(ステップS31)。予測ブロックサイズが規格の範囲内の値であるか否かを判別する。H.264/AVC規格におけるインター予測モードの場合、予測ブロックサイズは、16×16、16×8、8×16、8×8、8×4、4×8、4×4の何れかである。範囲外であると判断した場合(ステップS32のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーフラグが有効、且つ現在のエラー検出対象のマクロブロック番号を含むエラー情報を出力する(ステップS37)。
範囲内の値であると判断した場合(ステップS32のYes)、参照ピクチャインデックスを取得する(ステップS33)。参照ピクチャインデックスが規格の範囲内の値であるか否かを判別する(ステップS34)。例えば、未来のピクチャを参照していていれば、規格の範囲外である。
範囲外であると判断した場合(ステップS34のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーが発生したエラーフラグを有効、且つ現在のエラー検出対象のマクロブロックの番号を含むエラー情報を出力する(ステップS37)。
範囲内の値であると判断した場合(ステップS34のYes)、動きベクトル情報を取得する(ステップS35)。動きベクトル情報の値が規格範囲内の値であるか否かを判別する(ステップS36)。範囲外であると判断した場合(ステップS36のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーが発生したエラーフラグを有効、且つエラーがあったマクロブロックの番号を含むエラー情報を出力する(ステップS37)。
ステップS29において予測方向が規格の範囲内の値であると判断した場合(ステップS29のYes)、またはステップS36において動きベクトルが規格の範囲内の値であると判断した場合(ステップS36のYes)、DCT係数を取得する(ステップS41)。DCT係数が規格の範囲内の値であるか否かを判別する(ステップS42)。範囲外であると判断した場合(ステップS42のNo)、エラーが発生したと判断し、エラーコンシールメント処理部303にエラーが発生したエラーフラグを有効、且つエラーがあったマクロブロックの番号を含むエラー情報を出力する(ステップS37)。
範囲内の値であると判断した場合(ステップS42のYes)、エラーコンシールメント処理部303にエラー発生の有無を示すエラーフラグが無効、且つエラーがあったマクロブロックの番号を含むエラー情報を出力する(ステップS43)。
ピクチャの最後のマクロブロックであるか否かを判別する(ステップS44)。最後のマクロブロックではないと判断した場合(ステップS44のNo)、ステップS23に戻り、次のマクロブロックの予測モード情報を取得し、ステップS24以下の処理を実行する。
最後のマクロブロックであると判断した場合(ステップS44のYes)、ストリームの最後のピクチャであるか否かを判別する(ステップS45)。ストリームの最後のピクチャではないと判断した場合(ステップS45のNo)、ステップS21に戻り次のピクチャのヘッダ情報を取得し、ステップS22以下の処理を実行する。ストリームの最後のピクチャであると判断した場合(ステップS45のYes)、処理を終了する。
以上の処理で、エラー検出部302は、マクロブロック内にエラーがあるか否かを検出し、エラー情報を出力する。
次に、エラーコンシールメント処理部303が実施するエラーコンシールメント処理をより詳細に参照して説明する。エラーコンシールメント処理部303は、エラー検出部がエラー情報を出力した場合に、シンタックス値を変更することによってエラーコンシールメント処理を行う。エラーコンシールメント処理部303が実行するシンタックス値の変更処理は、IピクチャおよびPピクチャの何れかのピクチャであるかによって、実施する処理が異なる。
Iピクチャの場合、エラーを検出したマクロブロック以降(エラーを検出したマクロブロックを含む)のマクロブロック・タイプの予測モードをイントラ4×4予測に設定、および予測方向をDC(平均値)モードに設定、および予測誤差信号が0になるようにDCT係数を全て0に設定する。
Pピクチャの場合、エラーを検出したマクロブロック以降(エラーを検出したマクロブロックを含む)のマクロブロックの予測モードをスキップト・マクロブロックに設定する。
次に、実際のエラーコンシールメント処理部の処理を図8のフローチャートを参照して説明する。
エラー情報解析部303Aは、エラー検出部302から送られるエラー情報を取得する(ステップS51)。エラー情報解析部303Aは、エラー情報中のエラーフラグを参照して、エラーが無かったか否かを判別する(ステップS52)。エラーがあると判断した場合(ステップS52のYes)、エラー情報解析部303Aは、エラー情報中のマクロブロック番号を取得し、マクロブロック番号をストリーム情報処理部303Bに通知する(ステップS53)。次に、ストリーム情報処理部303Bは、処理中のピクチャがIピクチャであるか否かを判別する(ステップS54)。Iピクチャであると判断した場合(ステップS54のYes)、ストリーム情報処理部303Bは、エラーを検出したマクロブロックからピクチャの最後のマクロブロックまで、シンタックス値を書き換える(ステップS55〜S57)。
ステップS56での書換処理によって、ストリーム情報処理部303Bは、予測モードをイントラ4×4予測モード、予測方向情報をDC(平均値)モード、DCT係数を全て0にする。
ステップS54において、Iピクチャではないと判断した場合(ステップS54のNo)、則ちPピクチャである場合、ストリーム情報処理部303Bは、エラーを検出したマクロブロックからピクチャの最後のマクロブロックまで、シンタックス値を書き換える(ステップS65〜S67)。ステップS66での書換処理によって、ストリーム情報処理部303Bは、エラーを検出したマクロブロックからピクチャの最後のマクロブロックまで、予測モードをスキップト・マクロブロックに設定する。
以上の処理で、マクロブロック内にエラーがあった場合にエラーコンシールメント処理を行うことが出来る。この処理は、シンタックス値を規格にそった値に書き換えるだけの処理なので、CPU101に与える負荷は小さい。
また、ストリーム情報処理部303Bによってシンタックス値が書き換えられたマクロブロックは、シンタックス値が書き換えられていないマクロブロックと同様の処理が逆量子化部304、逆変換部305、加算部306、デブロッキングフィルタ部307、イントラ予測部309、インター予測部310、およびモード切替スイッチ部311によって行われる。その結果、エラーがあったマクロブロック以降の画像が、正常に復号出来たマクロブロックの情報から表示される。
なお、本実施形態のデコード制御処理は全てコンピュータプログラムによって実現されているので、このコンピュータプログラムをコンピュータ読み取り可能な記憶媒体を通じて通常のコンピュータに導入するだけで、本実施形態と同様の効果を容易に実現することができる。
また、以上説明した第1乃至第11の各実施形態で説明したソフトウェアデコーダは、マルチメディアプレーヤに限らず、PDA、携帯型電話機等にも適用することができる。
なお、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
301…エントロピー復号部,302…エラー検出部,303…エラーコンシールメント処理部,303A…エラー情報解析部,303B…ストリーム情報処理部,304…逆量子化部,305…逆変換部,306…加算部,307…デブロッキングフィルタ部,308…フレームメモリ,309…イントラ予測部,310…インター予測部,311…モード切替スイッチ部。
Claims (12)
- 圧縮符号化された動画像ストリームをデコードする動画像復号装置において、
前記動画像ストリームのデコード対象画面に含まれる各マクロブロックのシンタックス値を復号処理する復号手段と、
前記復号手段が復号したシンタックス値のエラーを検出するエラー検出手段と、
前記エラー検出手段がエラーを検出したデコード対象画面が動き補償予測処理が実行されないフレーム内予測ピクチャの場合、エラーを検出したマクロブロック以降のマクロブロックのデータを前記フレーム内予測ピクチャの情報または復号を行ったマクロブロックのデータから推定するために、エラーを検出したマクロブロック以降のマクロブロックのシンタックス値を書き換えるエラーコンシールメント処理を実行するエラーコンシールメント処理手段と、
前記復号手段によって復号されたシンタックス値、或いは前記エラーコンシールメント処理手段によって書き換えられたシンタックス値に応じて、前記デコード対象画面からフレーム内予測信号を生成するフレーム内予測処理を実行する手段と、
前記デコード対象画面をデコードするために、前記デコード対象画面に対応する予測誤差信号に前記フレーム間予測信号および前記フレーム内予測信号の一方を加算する手段と
を具備することを特徴とする動画像復号装置。 - 前記エラーコンシールメント処理手段は、エラーが検出されたマクロブロック以降の各マクロブロックのシンタックス値を、前記復号対象のマクロブロックの周囲の復号済みのマクロブロックから前記フレーム内予測信号を生成するイントラ予測モードに書き換えることを特徴とする請求項1記載の動画像復号装置。
- 前記エラーコンシールメント処理手段は、前記イントラ予測モードにDCモードが設定されるように前記シンタックス値を書き換えることを特徴とする請求項2記載の動画像復号装置。
- 前記エラーコンシールメント処理手段は、エラーが検出されたマクロブロック以降のマクロブロックのシンタックス値を、前記予測誤差信号が0になるように書き換えることを特徴とする請求項1記載の動画像復号装置。
- 圧縮符号化された動画像ストリームをデコードする動画像復号方法において、
前記動画像ストリームのデコード対象画面に含まれる各マクロブロックのシンタックス値を復号処理し、
前記復号されたシンタックス値のエラーを検出し、
エラーを検出したデコード対象画面が動き補償予測処理が実行されないフレーム内予測ピクチャの場合、エラーを検出したマクロブロック以降のマクロブロックのデータを前記フレーム内予測ピクチャの情報または復号を行ったマクロブロックのデータから推定するために、エラーを検出したマクロブロック以降のマクロブロックのシンタックス値を書き換えるエラーコンシールメント処理を実行し、
前記復号されたシンタックス値、或いは前記エラーコンシールメント処理によって書き換えられたシンタックス値に応じて、1以上の参照ピクチャから、デコード対象画面に対応するフレーム間予測信号を生成する動き補償予測処理を実行し、
前記復号されたシンタックス値、或いは前記エラーコンシールメント処理によって書き換えられたシンタックス値に応じて、前記デコード対象画面からフレーム内予測信号を生成するフレーム内予測処理を実行し、
前記デコード対象画面をデコードするために、前記デコード対象画面に対応する予測誤差信号に前記フレーム間予測信号および前記フレーム内予測信号の一方を加算する
ことを特徴とする動画像復号方法。 - 前記エラーコンシールメント処理は、エラーが検出されたマクロブロック以降の各マクロブロックのシンタックス値を、前記復号対象のマクロブロックの周囲の復号済みのマクロブロックから前記フレーム内予測信号を生成するイントラ予測モードに書き換える処理であることを特徴とする請求項5記載の動画像復号方法。
- 前記エラーコンシールメント処理は、前記イントラ予測モードにDCモードが設定されるように前記シンタックス値を書き換える処理であることを特徴とする請求項6記載の動画像復号方法。
- 前記エラーコンシールメント処理は、エラーが検出されたマクロブロック以降のマクロブロックのシンタックス値を、前記予測誤差信号が0になるように書き換える処理であることを特徴とする請求項5記載の動画像復号方法。
- 圧縮符号化された動画像ストリームをデコードするプログラムにおいて、
前記動画像ストリームのデコード対象画面に含まれる各マクロブロックのシンタックス値を復号処理し、
前記復号したシンタックス値のエラーを検出し、
前記エラー検出手段がエラーを検出したデコード対象画面が動き補償予測処理が実行されないフレーム内予測ピクチャの場合、エラーを検出したマクロブロック以降のマクロブロックのデータを前記フレーム内予測ピクチャの情報または復号を行ったマクロブロックのデータから推定するために、エラーを検出したマクロブロック以降のマクロブロックのシンタックス値を書き換えるエラーコンシールメント処理を実行し、
前記復号されたシンタックス値、或いは前記エラーコンシールメント処理によって書き換えられたシンタックス値に応じて、1以上の参照ピクチャから、デコード対象画面に対応するフレーム間予測信号を生成する動き補償予測処理を実行し、
前記復号されたシンタックス値、或いは前記エラーコンシールメント処理によって書き換えられたシンタックス値に応じて、前記デコード対象画面からフレーム内予測信号を生成するフレーム内予測処理を実行し、
前記デコード対象画面をデコードするために、前記デコード対象画面に対応する予測誤差信号に前記フレーム間予測信号および前記フレーム内予測信号の一方を加算する
ことを特徴とするプログラム。 - 前記エラーコンシールメント処理は、エラーが検出されたマクロブロック以降の各マクロブロックのシンタックス値を、前記復号対象のマクロブロックの周囲の復号済みのマクロブロックから前記フレーム内予測信号を生成するイントラ予測モードに書き換える処理であることを特徴とする請求項9記載のプログラム。
- 前記エラーコンシールメント処理は、前記イントラ予測モードにDCモードが設定されるように前記シンタックス値を書き換える処理であることを特徴とする請求項10記載のプログラム。
- 前記エラーコンシールメント処理では、エラーが検出されたマクロブロック以降のマクロブロックのシンタックス値を、前記予測誤差信号が0になるように書き換える処理であることを特徴とする請求項9記載のプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007248084A JP2009081579A (ja) | 2007-09-25 | 2007-09-25 | 動画像復号装置、および動画像復号方法 |
US12/212,543 US20090080520A1 (en) | 2007-09-25 | 2008-09-17 | Video decoding apparatus and video decoding method |
CN2008101685710A CN101399995B (zh) | 2007-09-25 | 2008-09-25 | 视频解码设备和视频解码方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007248084A JP2009081579A (ja) | 2007-09-25 | 2007-09-25 | 動画像復号装置、および動画像復号方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009081579A true JP2009081579A (ja) | 2009-04-16 |
Family
ID=40471547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007248084A Pending JP2009081579A (ja) | 2007-09-25 | 2007-09-25 | 動画像復号装置、および動画像復号方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20090080520A1 (ja) |
JP (1) | JP2009081579A (ja) |
CN (1) | CN101399995B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012089975A (ja) * | 2010-10-18 | 2012-05-10 | Nec Corp | 符号化ストリーム信号の復号装置およびエラー隠蔽処理方法 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102148985B (zh) * | 2010-02-05 | 2013-06-12 | 宏碁股份有限公司 | 视讯译码装置 |
CN102611891B (zh) * | 2012-02-07 | 2014-05-07 | 中国电子科技集团公司第三研究所 | 一种在变换域内直接进行转换编码的方法 |
GB2501535A (en) * | 2012-04-26 | 2013-10-30 | Sony Corp | Chrominance Processing in High Efficiency Video Codecs |
CN117560501B (zh) * | 2024-01-11 | 2024-04-12 | 杭州国芯科技股份有限公司 | 一种多标准视频解码器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005311512A (ja) * | 2004-04-19 | 2005-11-04 | Toshiba Corp | エラーコンシールメント方法及び復号器 |
-
2007
- 2007-09-25 JP JP2007248084A patent/JP2009081579A/ja active Pending
-
2008
- 2008-09-17 US US12/212,543 patent/US20090080520A1/en not_active Abandoned
- 2008-09-25 CN CN2008101685710A patent/CN101399995B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005311512A (ja) * | 2004-04-19 | 2005-11-04 | Toshiba Corp | エラーコンシールメント方法及び復号器 |
Cited By (1)
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 |
---|---|
CN101399995B (zh) | 2011-06-15 |
CN101399995A (zh) | 2009-04-01 |
US20090080520A1 (en) | 2009-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009081576A (ja) | 動画像復号装置、および動画像復号方法 | |
US9830716B2 (en) | Image processing device and method | |
JP5090158B2 (ja) | 映像情報記録装置、映像情報記録方法、映像情報記録プログラム、及び映像情報記録プログラムを記録した記録媒体 | |
JP2006254230A (ja) | 情報処理装置およびプログラム | |
JP4792001B2 (ja) | 動画像復号装置、放送受信装置、動画像復号方法 | |
US20110122953A1 (en) | Image processing apparatus and method | |
JP2007174196A (ja) | 情報処理装置、制御方法およびプログラム | |
US20130182770A1 (en) | Image processing device, and image processing method | |
JP2011142423A (ja) | 画像処理装置および方法 | |
JP4834590B2 (ja) | 動画像復号化装置及び動画像復号化方法 | |
US8611433B2 (en) | Information processing apparatus and video decoding method of information processing apparatus | |
JP2009081579A (ja) | 動画像復号装置、および動画像復号方法 | |
JP2009038501A (ja) | 復号化装置および復号方法 | |
JPWO2007091367A1 (ja) | 画像復号装置および画像復号方法 | |
JP2011151431A (ja) | 画像処理装置および方法 | |
JP2006254231A (ja) | 情報処理装置および同装置で用いられるプログラム | |
JP4357560B2 (ja) | 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム | |
JP4672734B2 (ja) | デジタル放送受信用の信号処理装置、信号処理方法および信号処理プログラム、並びにデジタル放送受信装置 | |
US20130089146A1 (en) | Information processing apparatus and information processing method | |
JP5066232B2 (ja) | 情報処理装置および画像処理方法 | |
JP2006101406A (ja) | 情報処理装置および同装置で用いられるプログラム | |
JP2006101321A (ja) | 情報処理装置および同装置で用いられるプログラム | |
WO2012077575A1 (ja) | 符号化装置および符号化方法、並びに復号装置および復号方法 | |
JP2009182891A (ja) | 情報処理装置およびプログラム | |
JP2008092353A (ja) | 画像出力装置、携帯用画像表示機器及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100518 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110517 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110524 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110927 |