(57)【要約】【課題】  生成される画像に適したエラーコンシールメントを可能とし、エラーによる画質の劣化を低減する復号化装置及び復号化方法を提供すること。【解決手段】  本発明にかかる復号化装置１００は、入力されるビットストリームを復号情報２０３に復号化する復号化部１０１と、復号化においてエラーが検出された場合、エラーの隠蔽を開始する隠蔽開始位置を決定するエラー位置推定部１０３と、復号情報２０３に対し隠蔽開始位置からエラー隠蔽処理を行いフレームデータを生成する画像生成部とを備え、エラー位置推定部１０３は、復号化時に得られる動き情報に応じて隠蔽開始位置を決定するものである。【選択図】  図１
2007067664.tif 000002
【特許請求の範囲】
【請求項１】
入力されるデジタル動画像の符号化データを復号化データに復号化する復号化部と、
前記復号化部の復号化においてエラーが検出された場合、エラーの隠蔽を開始する隠蔽開始位置を決定する隠蔽開始位置決定部と、
前記復号化データに対し前記決定された隠蔽開始位置からエラー隠蔽処理を行い画像データを生成する画像生成部とを備え、
前記隠蔽開始位置決定部は、前記復号化部の復号化時に得られる動き情報に応じて前記隠蔽開始位置を決定する、
復号化装置。
【請求項２】
前記決定される隠蔽開始位置は、前記復号化データにおいて前記エラーが検出された位置よりも過去に復号化されたデータ位置であり、
前記隠蔽開始位置決定部は、
前記動き情報の示す動き量が小さい場合、前記隠蔽開始位置を前記エラーが検出されたエラー検出位置に近づけ、
前記動き情報の示す動き量が大きい場合、前記隠蔽開始位置を前記復号化が開始された復号化開始位置に近づける、
請求項１に記載の復号化装置。
【請求項３】
前記決定される隠蔽開始位置は、前記復号化データにおいて前記エラーが検出された位置よりも過去に復号化されたデータ位置であり、
前記隠蔽開始位置決定部は、
前記動き情報の示す動き量の変化が小さい場合、前記隠蔽開始位置を前記エラーが検出されたエラー検出位置に近づけ、
前記動き情報の示す動き量の変化が大きい場合、前記隠蔽開始位置を前記復号化が開始された復号化開始位置に近づける、
請求項１に記載の復号化装置。
【請求項４】
前記隠蔽開始位置決定部は、同じフレーム内の復号化データにおける前記動き情報に応じて前記隠蔽開始位置を決定する、
請求項１乃至３のいずれか一つに記載の復号化装置。
【請求項５】
前記隠蔽開始位置決定部は、過去に復号化されたフレーム間の復号化データにおける前記動き情報に応じて前記隠蔽開始位置を決定する、
請求項１乃至４のいずれか一つに記載の復号化装置。
【請求項６】
前記隠蔽開始位置決定部は、前記エラーが検出された位置周辺の復号化データにおける前記動き情報に応じて前記隠蔽開始位置を決定する、
請求項１乃至５のいずれか一つに記載の復号化装置。
【請求項７】
前記隠蔽開始位置決定部は、前記エラーが検出された位置よりも過去に復号化された復号化データにおける前記動き情報に応じて前記隠蔽開始位置を決定する、
請求項１乃至６のいずれか一つに記載の復号化装置。
【請求項８】
前記隠蔽開始位置決定部は、前記エラーが検出された位置よりも画面上側に位置する復号化データにおける前記動き情報に応じて前記隠蔽開始位置を決定する、
請求項１乃至７のいずれか一つに記載の復号化装置。
【請求項９】
前記隠蔽開始位置決定部は、前記エラーが検出された位置よりも画面左側に位置する復号化データにおける前記動き情報に応じて前記隠蔽開始位置を決定する、
請求項１乃至８のいずれか一つに記載の復号化装置。
【請求項１０】
前記隠蔽開始位置決定部は、前記復号化部の復号化時に得られる動きベクトルに応じて前記隠蔽開始位置を決定する、
請求項１乃至９のいずれか一つに記載の復号化装置。
【請求項１１】
入力されるデジタル動画像の符号化データを復号化データに復号化し、
前記復号化においてエラーが検出された場合、エラーの隠蔽を開始する隠蔽開始位置を決定し、
前記復号化データに対し前記決定された隠蔽開始位置からエラー隠蔽処理を行い画像データを生成し、
前記隠蔽開始位置の決定において、前記復号化時に得られる動き情報に応じて前記隠蔽開始位置を決定する、
復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、圧縮符号化されたデジタルビデオデータ（ビットストリーム）を復号する復号化装置及び復号化方法に関し、特に、ビットストリームにエラーが発生した場合に再生画像の乱れを低減するための復号化装置及び復号化方法に関する。
【背景技術】
【０００２】
近年の携帯電話の普及や高機能化に伴い、携帯電話の機能として圧縮符号化されたビットストリームを再生するサービスが普及している。例えば、携帯電話内に蓄積されたビットストリームの再生やテレビ電話機能、携帯向けデジタル放送受信機能などがある。しかし、携帯電話の場合、圧縮されたビットストリームは通信回線である無線網を通って受信機に伝送されるため、伝送途中にエラーが発生する可能性がある。受信したビットストリームにエラーが発生すると、復号した再生画像が乱れて、画質が劣化してしまいサービス品質の低下につながってしまう。圧縮されたビデオストリームは、時間方向に相関があるため、あるフレームでエラーが発生すると後続フレームにエラーが伝播されてしまい、再生画像が大きく乱れる。
【０００３】
このようにビットストリームにエラーが発生した場合に発生する画像の乱れを極力低減するため、エラーの影響を目立ち難くするエラーコンシールメント（エラー隠蔽）の技術が必須である。
【０００４】
エラーコンシールメントを行う従来の復号化装置として、例えば、特許文献１や２が知られている。図６は、特許文献１に記載された従来の復号化装置の構成を示している。
【０００５】
図に示されるように、従来の復号化装置９００は、復号化部９０１と、画像構成部９０２と、ＤＣ判定部９０３と、参照メモリ９０４とから構成されている。復号化部９０１は、受け取ったビットストリーム（符号化データ）を復号化してフレームデータに復号する。復号化部９０１は、復号化時に得られたＤＣ成分や、復号化時に検出された誤りをＤＣ判定部９０３に通知する。
【０００６】
ＤＣ判定部９０３は、復号化部９０１から誤り検知信号を受けると、ＤＣ成分が所定の範囲に収まっているか否かを判定し、所定の範囲に収まっていると判定した場合、ＤＣ成分によってエラーの隠蔽を行う旨をエラー隠蔽方法通知信号として画像構成部９０２へ通知する。また、ＤＣ判定部９０３は、ＤＣ成分が所定の範囲に収まっていないと判定した場合、前フレーム画像によってエラーの隠蔽を行うべき旨をエラー隠蔽方法通知信号として画像構成部９０２へ通知する。画像構成部９０２は、ＤＣ判定部９０３から受け取るエラー隠蔽方法に基づき画像信号の構築を行う。
【特許文献１】特開２００５−２０７８０号公報
【特許文献２】特開平１０−１３６３６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上記特許文献１のような従来のエラーコンシールメント技術は、例えばＶＬＤ部(可変長復号部)などでエラーを検出した後にどのような手段でエラーを隠蔽するかという方法に注目している。例えば、特許文献１では、復号できたＤＣ成分によりエラーコンシールメントを行っている。しかしながら、上記特許文献１ではエラー検出後のエラーコンシールメント方法のみ考慮しているため、エラー検出前のデータについては考慮されていない。
【０００８】
図７は、従来技術において、入力されるビットストリーム６０１と復号化されて生成される画像データ６０２を示している。図７において、同期ポイントは符号化方式毎に規定されるユニークワードであり、復号化装置がビットストリーム中のエラーを検出し復号が出来ないと判断した場合には、同期ポイントを検索する。同期ポイントを発見すると同期ポイント以降のビットストリームが再度復号可能となる。ＭＢ（ｉ）はマクロブロックである。１フレームは複数マクロブロックから構成されており、含まれるマクロブロックの個数はフレームの大きさによって決まる。例えば、ＱＣＩＦ（Quarter Common Intermediate Format）サイズのフレームの場合、９９個のマクロブロックが含まれる。
【０００９】
図７においてデコード開始位置（ａ）は同期ポイント検出後、デコードを開始する位置である。復号化装置は可変長符号化されたビットストリーム６０１をデコードしＭＢ（ｋ）、ＭＢ（ｋ＋１）、ＭＢ（ｋ＋２）のデコード画像を構築する。ここで得られた画像は正常デコード画像６０２ａである。図７のエラー発生位置（ｂ）は、ビットストリームに何らかの外的要因によりエラーが発生した位置である。復号化装置がエラー検出を行う場合、ビットストリームから復号した復号値が各符号化方式で決められた値に違反していないかどうかにより判定するため、復号化装置はＭＢ（ｋ＋３）にエラーが発生していることが必ずわかるとは限らない。ビットストリームは可変長符号であり冗長度が低いため、通常の場合、数マクロブロックデコードした後にエラー検出が可能となるのである。図７では、エラー発生位置（ｂ）のＭＢ（ｋ＋３）ではエラーだと判定することが出来ず、ＭＢ（ｋ＋３）からＭＢ（ｋ＋５）までを正常な画像と判断しデコード画像を構築した後、エラー検出位置（ｃ）でエラーを検出している。
【００１０】
ここで、ＭＢ（ｋ）からＭＢ（ｋ＋２）から得られる画像は、正常にデコードが行われエラーを含まない正常デコード画像６０２ａである。ＭＢ（ｋ＋３）からＭＢ（ｋ＋５）から得られる画像は、復号化装置としては正常にデコードが出来ているが画像としてはエラーの影響を受けてしまうため、画質が劣化した異常デコード画像６０２ｂである。
【００１１】
そして、復号化装置はエラー検出位置（ｃ）でエラーを検出した後、同期ポイントの位置（ｄ）を検索する動作を行う。これはエラー検出後のマクロブロックＭＢ（ｋ＋６）、ＭＢ（ｋ＋７）はデコード不能なためである。復号化装置は、同期ポイント検出位置（ｄ）から再度デコード動作を行う。ここでＭＢ（ｋ＋６）、ＭＢ（ｋ＋７）はデコード画像を得ることが出来ないため、上記のエラーコンシールメントが行われる。つまり、この例では、エラーコンシールメントを開始する隠蔽開始位置（ｆ）は、エラー検出位置（ｃ）であり、ＭＢ（ｋ＋６）、ＭＢ（ｋ＋７）に対応する画像が、エラーコンシールメント画像６０３ｃとなる。
【００１２】
この従来技術は、エラー検出後（エラー検出位置（ｃ）の後）のエラーコンシールメント画像６０２ｃの画質劣化を低減するための技術である。しかし、エラー発生時の画質劣化の原因となる異常デコード画像６０２ｂの画質劣化をどのように低減するかという問題について考慮されていない。特に、異常デコード画像６０２ｂは、復号化装置としては正しいデータと認識して画像を構築してしまうため、本来存在しない赤やピンク、緑などの画素が多く表示されてしまうことが多く、画質劣化が大きいため、解決が必要となる。
【００１３】
上記特許文献２では、エラー検出位置（ｃ）よりも前の位置を隠蔽開始位置（ｆ）としてエラーコンシールメントを行っている。しかし、隠蔽開始位置（ｆ）が常に固定の位置であるため、最適な位置からエラーコンシールメントすることができない。例えば、エラー検出位置からの遡りが大きすぎると、エラーコンシールメントが不要なデータまでコンシールメントしてしまうため、画質が劣化する。また、エラー検出位置からの遡りが小さすぎると、エラーコンシールメントが必要なデータをコンシールメントすることができないため、画質が劣化する。
【００１４】
このように、従来の復号化装置は、エラーコンシールメントを開始する位置が、エラー検出位置、もしくは、エラー検出位置よりも前の所定の位置で、常に固定の位置であるため、最適な位置からエラーコンシールメントを行うことができず、画質が劣化するという問題があった。
【課題を解決するための手段】
【００１５】
本発明にかかる復号化装置は、入力されるデジタル動画像の符号化データを復号化データに復号化する復号化部と、前記復号化部の復号化においてエラーが検出された場合、エラーの隠蔽を開始する隠蔽開始位置を決定する隠蔽開始位置決定部と、前記復号化データに対し前記決定された隠蔽開始位置からエラー隠蔽処理を行い画像データを生成する画像生成部とを備え、前記隠蔽開始位置決定部は、前記復号化部の復号時に得られる動き情報に応じて前記隠蔽開始位置を決定するものである。
【００１６】
この復号化装置によれば、動き情報に応じて隠蔽開始位置が動的に変化するようになるため、生成される画像に適したエラーコンシールメントを行うことができるようになり、エラーによる画質劣化を効果的に低減することができる。
【００１７】
本発明にかかる復号化方法は、入力されるデジタル動画像の符号化データを復号化データに復号化し、前記復号化においてエラーが検出された場合、エラーの隠蔽を開始する隠蔽開始位置を決定し、前記復号化データに対し前記隠蔽開始位置からエラー隠蔽処理を行い画像データを生成し、前記隠蔽開始位置の決定において、前記復号化時に得られる動き情報に応じて前記隠蔽開始位置を決定するものである。
【００１８】
この復号化方法によれば、動き情報に応じて隠蔽開始位置が動的に変化するようになるため、生成される画像に適したエラーコンシールメントを行うことができるようになり、エラーによる画質劣化を効果的に低減することができる。
【発明の効果】
【００１９】
本発明によれば、生成される画像に適したエラーコンシールメントを可能とし、エラーによる画質の劣化を低減する復号化装置及び復号化方法を提供することができる。
【発明を実施するための最良の形態】
【００２０】
以下に図面を参照して、本発明の実施の形態にかかる復号化装置について説明する。本実施形態にかかる復号化装置は、エラー検出した場合に、エラー検出位置の周辺の動きベクトルに基づいて、隠蔽開始位置を動的に変化させることを特徴としている。
【００２１】
まず、図１を用いて、本実施形態にかかる復号化装置の概略構成について説明する。この復号化装置１００は、ビットストリーム（動画像の符号化データ）を復号化し、復号化時にエラーがある場合にはエラーコンシールメントを行い、画像を生成する。図に示されるように、復号化装置１００は、復号化部１０１、エラー位置推定部１０３、復号情報格納部１０４、参照メモリ１０５、画像構成部１０６から構成されている。
【００２２】
復号化部１０１は、入力されたビットストリームを復号化し復号化情報（復号化データ）を生成する。復号化部１０１は、生成した復号化情報２０２を復号化情報格納部１０４に格納する。また、復号化部１０１は、２つの機能部を有している。１つ目は、復号時に得られた動きベクトル、ＤＣ／ＡＣ成分などを出力する動き情報出力部１０１ａである。２つ目は、符号語のミスマッチや画像フレームの外部を参照している動きベクトルを復号するなどの矛盾の有無から誤りを検知するエラー検知部１０１ｂである。エラー検知部１０１ｂは、エラーを検出するとエラーを検出した位置を示すエラー情報２０１をエラー位置推定部１０３に通知する。また、復号化部１０１は、ビットストリームの復号を行うとともに、所定の周期で画像構成部１０６に対して画像構成指令２０５を出力する。画像構成指令２０５を出力する周期は、一定周期でもよいし、ビットストリームから同期ポイントが発見された時でも構わない。
【００２３】
エラー位置推定部１０３は、復号化部１０１から受け取ったエラー情報２０１に基づきエラー発生位置を推定する。本実施形態では、ここで推定したエラー発生位置からエラーコンシールメントを行うため、推定するエラー発生位置は、エラーコンシールメントを開始する隠蔽開始位置である。すなわち、エラー位置推定部１０３は、ビットストリームの復号化においてエラーが検出された場合に、この隠蔽開始位置を決定する隠蔽開始位置決定部である。
【００２４】
ここで推定するエラー発生位置は、少なくともエラーが検出された位置よりも前（過去）に復号化された復号化情報の位置である。エラー位置推定部１０３が推定する推定方法として、エラー検出位置から一定数のＭＢ（マクロブロック）分戻った位置をエラー発生位置と推定する、エラー検出位置から一定のビットストリームバイト数戻った位置をエラー発生位置と推定する、デコード開始位置から一定数のＭＢ分進んだ位置をエラー発生位置と推定する、デコード開始位置から一定のビットストリームバイト数進んだ位置をエラー発生位置と推定するなどが考えられる。本実施形態では、後述するように、エラー位置推定部１０３は、復号化部１０１で生成する動き情報に応じてエラー推定位置（隠蔽開始位置）を決定する。エラー発生位置を推定すると、復号化情報において、デコードするデコード部分とエラーコンシールメントするエラーコンシールメント部分が決定する。
【００２５】
エラー位置推定部１０３は、推定したエラー発生位置をエラー推定位置情報（隠蔽開始位置情報）２０３として、復号化情報格納部１０４に格納する。例えば、エラー位置推定部１０３は、エラー発生位置を推定すると、復号化情報格納部１０４の復号化情報２０２を参照し、計算結果より復号化情報２０２にエラー発生位置を設定してもよい。すわなち、エラー位置推定部１０３は、復号化部１０１が復号化した復号化情報２０２に対して、デコード部分の範囲とエラーコンシールメント部分の範囲を設定する。
【００２６】
画像構成部１０６は、復号化部１０１から画像構成指令２０５を受信すると、画像の構成を行う。画像構成部１０６は、復号化情報格納部１０４に蓄積された復号化情報２０２及びエラー推定位置情報２０３と、参照メモリ１０５に格納された過去のフレームデータ２０４とを参照し、画像の構成を行う。画像構成部１０６は、復号化部１０１が復号化した復号化情報２０２に対しエラー推定位置（隠蔽開始位置）からエラーコンシールメント処理を行いフレームデータ（画像データ）を生成する画像生成部である。すなわち、画像構成部１０６は、復号化情報２０２のうちエラー推定位置よりも前に復号化したデコード部分について、各符号化方式の規格通りに画像の復元を行う。画像構成部１０６は、復号化情報２０２のうちエラー推定位置よりも後に復号化したエラーコンシールメント部分について、エラーコンシールメント技術を用いて画像の復元を行う。エラーコンシールメントとして、例えば、復号できたＤＣ成分で隠蔽する、直前のフレームから画像をコピーして隠蔽する、周辺ブロックの画像をコピーして隠蔽する、周辺ブロックの動きベクトルを用いて動き補償予測することにより隠蔽する、もしくはそれらの組み合わせ等が考えられる。
【００２７】
画像構成部１０６は、この動作を繰り返し１フレームデータが構成できると、フレームデータとして出力する。また、画像構成部１０６は、参照メモリ１０５の過去のフレームデータ２０４の更新を行う。
【００２８】
図２は、復号化装置１００のさらに具体的な構成例を示している。図２では、エラー位置推定部１０３の機能を実現するために、図１の構成に加えて動き情報処理部１０７と静動判定部１０８を備えている。尚、図２において、図１と同一の符号を付されたものは同様の要素である。
【００２９】
図２では、復号化部１０１の動き情報出力部１０１ａが、復号化時に得られる動き情報３０１を動き情報処理部１０７に出力し、動き情報処理部１０７では、この動き情報３０１を格納する。また、復号化部１０１のエラー検知部１０１ｂから、エラー情報２０１が動き情報処理部１０７にも出力される。動き情報処理部１０７では、エラー情報２０１からエラーを検出した位置を認識でき、この検出位置周辺の周辺動き情報３０２を静動判定部１０８に出力する。例えば、エラー検出位置の周辺とは、エラーが検出された位置の近傍のマクロブロック（復号化データ）である。特に、エラーの検出よりもある程度前に復号化されたデータは、エラーの影響を受けていないため、少なくとも、エラーが検出された位置よりも前（過去）に復号化されたマクロブロックが対象となる。好ましくは、エラー検出したマクロブロックの画面上側に位置するマクロブロックや、エラー検出したマクロブロックの画面左側に位置するマクロブロックである。
【００３０】
静動判定部１０８は、周辺動き情報３０２から動きが大きい領域か小さい領域かの判定を行い、静動判定値３０３をエラー位置推定部１０３に出力する。具体的には、動き情報３０１としてデコード時に取得可能な動きベクトルを保持し、エラー検出位置周辺の動きベクトルの大きさや向きなどを用いて、周辺マクロブロックの動き判定をすることが可能である。また、デコード時に得られる周波数領域係数（通常の動画像符号化ではＤＣＴ係数）を保持し、エラー発生位置周辺の画像の滑らかさや前フレームからの差分の大小を用いて動き判定を行うことも可能である。
【００３１】
エラー位置推定部１０３は、復号化情報格納部１０４の復号化情報２０２を参照し、静動判定値３０３を用いて周辺マクロブロックの動きに応じてエラー発生位置の推定する。例えば、周辺マクロブロックの動きが小さい場合は、目立つようなエラーは発生していないと判断できるため、エラー発生位置（隠蔽開始位置）をよりエラー検出位置に近づけることで、後続フレームに続くエラーの影響を低減することが可能である。逆に、周辺マクロブロックの動きが大きい場合、目立つようなエラーが発生していると判断できるため、エラー発生位置（隠蔽開始位置）をよりデコード開始位置に近づけることで、画質の劣化を低減することが可能である。
【００３２】
また、エラー位置推定部１０３は、上記のように同じフレーム内のマクロブロック（復号化データ）の動き情報を判定してもよいし、過去に復号化されたフレーム間のマクロブロック（復号化データ）の動き情報を判定してもよい。すなわち、エラー位置推定部１０３は、復号化情報における空間軸方向の動き情報や、時間軸方向の動き情報、後続フレームで参照される領域の情報などに応じてエラー発生位置の推定を行ってもよい。
【００３３】
時間軸方向の動きを判定する場合も、上記と同様に判定可能である。例えば、時間軸方向に周辺マクロブロックの動きが小さい場合は、エラー発生位置をエラー検出位置に近づけることにより、後続フレームに続くエラーの影響を低減することが可能である。逆に時間軸方向に周辺マクロブロックの動きが大きい場合、エラー発生位置をよりデコード開始位置に近づけることにより画質の劣化を低減することが可能である。時間軸方向で動き判定を行う場合、動き情報処理部１０７に複数フレーム分の動き情報３０１を蓄積し、静動判定部１０８では複数フレーム分の周辺動き情報３０２から静動判定を行うことにより、動き判定の精度を上げることができる。
【００３４】
次に、図３を用いて、エラー位置推定部１０３及び静動判定部１０８で実行されるエラー発生位置の推定処理、すなわち、エラー隠蔽開始位置の決定処理の一例について説明する。
【００３５】
復号化部１０１でエラーが検出されると、エラー位置推定部１０３は、まず、エラー発生位置を仮定する（Ｓ３０１）。すなわち、エラー位置推定部１０３は、動き情報に応じてエラー発生位置を移動させる前に、仮のエラー発生位置を決定する。例えば仮のエラー発生位置は、エラー検出位置から所定のＭＢ遡った位置である。
【００３６】
次いで、静動判定部１０８は、動き情報処理部１０７からエラー検出位置の周辺動き情報を取得する（Ｓ３０２）。次いで、静動判定部１０８は、動き情報と閾値を比較する（Ｓ３０３）。このとき比較する閾値は、あらかじめ固定の値でもよいし、周辺マクロブロックなどに応じて、決定した値でもよい。例えば、静動判定部１０８は、エラー検出位置や仮のエラー発生位置の周辺マクロブロックの１つの動き情報を閾値と比較してもよいし、周辺マクロブロックの複数の動き情報の差分（変化量）を閾値と比較してもよい。例えば、正常に復号化されたデータが動きの大きい画像の場合、単純に動き情報を判定すると、画質が劣化するため、動き情報の変化量の大小を判定することが好ましい。
【００３７】
Ｓ３０３において、動き情報が閾値よりも小さいと判定された場合、エラー位置推定部１０３は、仮のエラー発生位置をエラー検出位置に近づける（Ｓ３０４）。例えば、エラー位置推定部１０３は、１つのマクロブロック分、もしくは、任意のマクロブロック分、任意のビット分、エラー発生位置をエラー検出位置の方向へ移動する。
【００３８】
Ｓ３０４の後、再度、静動判定部１０８は、動き情報と閾値を比較する（Ｓ３０５）。Ｓ３０５において、動き情報が閾値よりも小さいと判定された場合、エラー位置推定部１０３は、Ｓ３０４に戻り、さらにエラー発生位置をエラー検出位置に近づける。Ｓ３０５において、動き情報が閾値よりも大きいと判定された場合、現在の位置をエラー発生位置と決定してエラー位置情報を出力する（Ｓ３０８）。例えば、周辺マクロブロックの動き情報が小さい場合には、仮のエラー発生位置からエラー検出位置の前まで動き情報の大小判定を繰り返しエラー発生位置を決定する。
【００３９】
一方、Ｓ３０３において、動き情報が閾値よりも大きいと判定された場合、エラー位置推定部１０３は、エラー発生位置をデコード開始位置に近づける（Ｓ３０６）。Ｓ３０４と同様に、エラー位置推定部１０３は、１つのマクロブロック分、もしくは、任意のマクロブロック分、任意のビット分、エラー発生位置をデコード開始位置の方向へ移動する。
【００４０】
Ｓ３０６の後、再度、静動判定部１０８は、動き情報と閾値を比較する（Ｓ３０７）。Ｓ３０７において、動き情報が閾値よりも大きいと判定された場合、エラー位置推定部１０３は、Ｓ３０６に戻り、さらにエラー発生位置をデコード開始位置に近づける。Ｓ３０７において、動き情報が閾値よりも小さいと判定された場合、現在の位置をエラー発生位置と決定してエラー位置情報を出力する（Ｓ３０８）。例えば、周辺マクロブロックの動き情報が大きい場合には、仮のエラー発生位置からデコード開始位置まで動き情報の大小判定を繰り返しエラー発生位置を決定する。
【００４１】
尚、図３の処理は一例であり、隠蔽開始位置を固定せずに動き情報に応じて動的に変化させるものであれば、その他の処理であってもよい。例えば、上記のように動き情報の判定を繰り返さずに、１回の判定としてもよい。エラー発生位置の候補をいくつか設定しておき、動き情報の判定に応じて、これらの候補からエラー発生位置を選択してもよい。
【００４２】
次に、図４を用いて、本実施形態にかかる復号化方法について説明する。図４において、４０１は入力されるビットストリーム、４０２から４０４は復号化されて生成される画像データである。図７と同様に、ビットストリームには、複数の同期ポイントが含まれており、同期ポイントの間に複数のマクロブロックＭＢ（ｉ）が含まれている。
【００４３】
復号化部１０１は、ビットストリーム４０１から同期ポイントを検出し、デコード開始位置（ａ）からデコードを開始する。復号化部１０１は、ビットストリーム４０１をデコードし、ＭＢ（ｋ）、ＭＢ（ｋ＋１）、ＭＢ（ｋ＋２）の復号化情報２０２を復号化情報格納部１０４に格納するとともに、これらのＭＢについての動き情報３０１を動き情報処理部１０７に格納する。
【００４４】
次いで、復号化部１０１は、デコード処理を進めていき、ＭＢ（ｋ＋３）のエラー発生位置（ｂ）でエラーが発生したとする。上記のように、復号化部１０１は、ＭＢ（ｋ＋３）を復号した時点では、エラーを検出することができないため、さらにデコード処理を進め、ＭＢ（ｋ＋３）からＭＢ（ｋ＋５）までをデコードし、復号化情報２０２と動き情報３０１を出力する。そして、復号化部１０１は、エラー検出位置（ｃ）でエラーを検出する。その後、復号化部１０１は、次の同期ポイントを検出し、同期ポイント検出位置（ｄ）から次のマクロブロックのデコードを再開する。
【００４５】
一方、エラー検出位置（ｃ）でエラーが検出されると、エラー位置推定部１０３は、静動判定部１０８による動き情報の判定に基づいて、エラー発生位置（隠蔽開始位置）を推定する。すなわち、エラー位置推定部１０３は、図の隠蔽開始位置（ｅ）を決定する。隠蔽開始位置（ｅ）は、エラーコンシールメントを開始する一であり、復号化情報において、デコード部分とエラーコンシールメント部分とを区分する分岐点である。デコード開始位置（ａ）から隠蔽開始位置（ｅ）までがデコード部分であり、隠蔽開始位置（ｅ）から同期ポイント検出位置（ｄ）までがエラーコンシールメント部分である。
【００４６】
上記のように、エラー位置推定部１０３は、周辺マクロブロックの動きが小さい場合には、隠蔽開始位置をエラー検出位置（ｃ）に近い（ｅ'）とし、周辺マクロブロックの動きが大きい場合には、隠蔽開始位置をデコード開始位置（ａ）に近い（ｅ''）とする。
【００４７】
画像構成部１０６は、隠蔽開始位置（ｅ）に基づき、デコード部分については、復号化情報から画像データを生成し、エラーコンシールメント部分については、エラーコンシールメント処理を行って画像を生成する。図において、４０２は隠蔽開始位置が（ｅ）の場合の画像データ、４０３は隠蔽開始位置が（ｅ'）の場合の画像データ、４０４は隠蔽開始位置が（ｅ''）の場合の画像データである。
【００４８】
エラー発生位置（ｂ）とほぼ同じ位置を隠蔽開始位置（ｅ）とすると、画像データ４０２のように、エラー発生位置（ｂ）の前のマクロブロックに対応する画像が正常デコード画像４０２ａとなり、エラー発生位置（ｂ）の後のマクロブロックに対応する画像がエラーコンシールメント画像４０２ｃとなる。この場合、エラー発生前のマクロブロックを全て正常にデコードでき、異常デコード画像も生成されないが、厳密にエラー発生位置を推定することは困難であるため、本実施形態では、隠蔽開始位置を（ｅ'）や（ｅ''）とする。
【００４９】
エラー発生位置（ｂ）よりもエラー検出位置（ｃ）側を隠蔽開始位置（ｅ'）とすると、画像データ４０３のように、エラー発生位置（ｂ）の前のマクロブロックに対応する画像が正常デコード画像４０３ａ、エラー発生位置（ｂ）から隠蔽開始位置（ｅ'）までのマクロブロックに対応する画像が異常デコード画像４０３ｂ、隠蔽開始位置（ｅ'）の後のマクロブロックに対応する画像がエラーコンシールメント画像４０３ｃとなる。この場合、エラー発生前のマクロブロックを全て正常にデコードできるが、一部に異常デコード画像が生成される。周辺マクロブロックの動きが小さい場合、次フレームへの影響が小さいため、一部に異常デコード画像が存在していても画質は劣化しない。
【００５０】
ここで、図５に従来技術でデコードされた画像データ６０２と本実施形態の画像データ４０３の比較を示す。従来技術では、エラー検出位置（ｃ）を隠蔽開始位置（ｆ）としているため、結果として異常デコード画像６０２ｂが広い範囲で発生してしまい、画質劣化の原因となっていた。本実施形態では、隠蔽開始位置（ｅ）をエラー検出位置（ｃ）よりも前にすることにより、従来技術に比べて異常デコード画像４０３ｂを少なくすることができるため従来技術に比べ画質劣化を抑えることが可能となる。
【００５１】
また、図４のように、エラー発生位置（ｂ）よりもデコード開始位置（ａ）側を隠蔽開始位置（ｅ''）とすると、画像データ４０４のように、隠蔽エラー開始位置（ｅ''）の前のマクロブロックに対応する画像が正常デコード画像４０４ａとなり、隠蔽開始位置（ｅ''）の後のマクロブロックに対応する画像がエラーコンシールメント画像４０４ｃとなる。この場合、エラー発生前のマクロブロックの一部をエラーコンシールメントしてしまうが、異常デコード画像が生成されることがないため、画質の劣化を低減することができる。周辺マクロブロックの動きが大きいと、次フレームへの影響が大きいため、異常デコード画像が存在しないことが好ましい。
【００５２】
以上のように、本実施形態では、ビットストリームの復号においてエラーが発生した場合、エラー検出位置よりも前のエラー発生位置を推定して隠蔽開始位置を決定し、エラーコンシールメントを行う。これにより、異常デコード画像(デコーダとしてビットストリームが誤っているにも関わらず正常だと判定してデコードしてしまう画像)領域を低減することが可能となり、エラーによる画質劣化を低減することができる。特に、隠蔽開始位置を従来例のように固定の位置とするのではなく、周辺マクロブロックの動きに応じて隠蔽開始位置を動的に変化させるため、画像に適した位置からエラーコンシールメントを行うことができるようになり、異常デコード画像やエラーコンシールメントによる後続フレームへの影響を低減することができ、画質劣化を効果的に低減することができる。
【００５３】
尚、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の変形、実施が可能である。例えば、上記の例では、通信回線により受信するビットストリームの復号化を行ったが、記憶装置に記憶された符号化データを読み出して復号化するものであってもよい。符号化データに同期ポイントが無い場合には、符号化データの先頭や、１フレームの先頭、１ラインの先頭などをデコード開始位置としてもよい。
【図面の簡単な説明】
【００５４】
【図１】本発明にかかる復号化装置の概略構成図である。
【図２】本発明にかかる復号化装置の詳細構成図である。
【図３】本発明にかかる復号化方法を説明するためのフローチャートである。
【図４】本発明にかかる復号化方法を説明するための図である。
【図５】本発明にかかる復号化方法を説明するための図である。
【図６】従来の復号化装置の構成図である。
【図７】従来の復号化方法を説明するための図である。
【符号の説明】
【００５５】
１００  復号化装置
１０１  復号化部
１０１ａ  動き情報出力部
１０１ｂ  エラー検知部
１０３  エラー位置推定部
１０４  復号化情報格納部
１０５  参照メモリ
１０６  画像構成部
１０７  動き情報処理部
１０８  静動判定部
２０１  エラー情報
２０２  復号化情報
２０４  過去のフレームデータ
２０５  画像構成指令
３０１  動き情報
３０２  周辺動き情報
３０３  静動判定値
【図１】
2007067664.tif 000003
【図２】
2007067664.tif 000004
【図３】
2007067664.tif 000005
【図４】
2007067664.tif 000006
【図５】
2007067664.tif 000007
【図６】
2007067664.tif 000008
【図７】
2007067664.tif 000009