(57)【要約】【課題】動画像符号化データの復号処理において、動き補償のための参照データ読み込みに必要なデータ量が大きいため、復号装置には高性能なメモリが要求されていた。【解決手段】動画像の符号化により得られた符号化データを、動き補償を伴う復号処理により復号する画像復号装置１００であって、復号した画像データを格納する画像メモリ１１２と、動き補償に必要な参照ピクチャを、画像メモリ１１２から取得する参照画像取得部１０９と、参照ピクチャを使用して動き補償を行う動き補償部１０８と、画像メモリ１１２から出力画像を読み出して出力する画像出力部１１３と、予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの画像メモリ１１２への書き込みが完了するかどうかを判定し、完了しないと判定された場合は復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御する制御部１１０と、を備える。【選択図】図１
2012019462.tif 000002
【特許請求の範囲】
【請求項１】
動画像の符号化により得られた符号化データを、動き補償を伴う復号処理により復号する画像復号装置であって、
復号した画像データを格納する画像メモリと、
動き補償に必要な参照ピクチャを、前記画像メモリから取得する参照画像取得部と、
前記参照ピクチャを使用して動き補償を行う動き補償部と、
前記画像メモリから出力画像を読み出して出力する画像出力部と、
予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの前記画像メモリへの書き込みが完了するかどうかを判定し、完了しないと判定された場合は前記復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御する制御部と、
を備える画像復号装置。
【請求項２】
前記制御部は、
前記復号処理が中断されたピクチャに対して、復号されなかった画面内の領域の画像データを、直前に出力したピクチャの画像データで置き換えて出力する
請求項１記載の画像復号装置。
【請求項３】
前記制御部は、
前記復号処理の中断は、復号対象ピクチャが別のピクチャの参照ピクチャになり得ない場合にのみ行う
請求項１または２に記載の画像復号装置。
【請求項４】
動画像の符号化により得られた符号化データを、動き補償を伴う復号処理により復号する画像復号方法であって、
復号した画像データを画像メモリに格納するステップと、
動き補償に必要な参照ピクチャを、前記画像メモリから取得するステップと、
前記参照ピクチャを使用して動き補償を行うステップと、
前記画像メモリから出力画像を読み出して出力するステップと、
予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの前記画像メモリへの書き込みが完了するかどうかを判定し、完了しないと判定された場合は前記復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御するステップと、
を含む画像復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像を圧縮符号化したデータの復号処理を行う、画像復号装置および画像復号方法に関するものである。
【背景技術】
【０００２】
近年、ＡＶ情報のデジタル化が進み、動画像をデジタル化して取り扱うことのできる機器が広く普及しつつある。動画像は膨大な情報量を有するので、記録容量や伝送効率を考慮して情報量を削減しつつ符号化することが一般的である。動画像の符号化技術として、ＭＰＥＧ２やＨ．２６４（非特許文献１参照）という国際規格が定められており、ビデオカメラレコーダ、デジタル放送、インターネットストリーミングなど様々な分野で広く用いられている。これらの画像符号化技術では、動き予測（以下、動き補償ともいう）方式が導入されている。
【０００３】
動き予測は、符号化処理対象のピクチャと、参照ピクチャとから動きベクトルを検出し、予測ピクチャを生成する処理である。ここで、参照ピクチャは、動き予測において参照されるピクチャであり、既に符号化されているピクチャの中から選択される。
【０００４】
動き予測により得られた動き情報（参照ピクチャを特定する情報、動きベクトルなど）および予測結果との差分などの情報が符号化される。ピクチャは、通常マクロブロックと呼ばれる１６×１６画素サイズの矩形領域に分割され、そのマクロブロック単位で符号化処理は行われる。
【０００５】
上記のような動き予測を伴う画像符号化データの復号処理について、動画像復号装置の典型的な全体構成例を図３に示し、その動作を簡単に説明する。動画像復号装置は、符号化データの入力端子１０１、可変長復号部１０２、逆量子化部１０３、逆直交変換部１０４、動き補償部１０８、参照画像取得部１０９、画像メモリ１１２、加算器１０５および再生画像の出力端子１１４を備える。
【０００６】
入力された画像符号化データは、可変長復号部１０２で可変長符号の復号を行い、１６×１６画素サイズのマクロブロック毎に量子化変換係数データと動き情報が出力される。以後はマクロブロック単位で復号処理が行われる。量子化変換係数データは、逆量子化部１０３で逆量子化処理、逆直交変換部１０４で逆直交変換処理が施され、予測差分データが出力される。参照画像取得部１０９は、動き情報に基づいて必要な参照ピクチャの一部の領域を画像メモリ１１２から読み出して出力する。動き補償部１０８では参照画像取得部１０９から得た参照ピクチャデータと動き情報から、動き予測データを生成して出力する。加算器１０５は、この動き予測データに、逆変換処理部１０４から出力される予測差分データを加算することで復号画素データを生成する。復号画素データは出力端子１１４から出力されるとともに、画像メモリ１１２に格納される。
【０００７】
ここで、動き補償について詳しく説明する。Ｈ ．２６４では、１６×１６画素からなるマクロブロックに対して、動き補償のブロックは、１６×１６、１６×８、８×１６、８×８、８×４、４×８、４×４画素の合計７種類の動き補償のブロックサイズから適切なブロックサイズを選択して符号化に使用される。動き予測データを生成する参照ピクチャは、前方（時間的に過去の画像)および後方（時間的に未来の画像)の中から最大２つ選択することができる。
【０００８】
図４は、Ｈ．２６４における動き補償のブロックサイズについて示したものであり、横１６画素×縦１６画素の大きさを有するマクロブロックをどのように分割するかを示している。まず、１６×１６画素のブロックに対する分割方法が４通りあり、各々のブロック分割タイプを図４（ａ）〜（ｄ）に示している。
【０００９】
図４（ａ）は、マクロブロックを分割せずに動き補償を行う場合（分割タイプ１）を示し、図４（ｂ）はマクロブロックを横１６画素×縦８画素の２つのブロックに分割して動き補償を行う場合（分割タイプ２）を示し、図４（ｃ）はマクロブロックを横８画素×縦１６画素の２つのブロックに分割して動き補償を行う場合（分割タイプ３）を示し、図４（ｄ）はマクロブロックを横８画素×縦８画素の４つのブロックに分割して動き補償を行う場合（分割タイプ４）を示している。
【００１０】
さらに、図４（ｄ）に示す分割タイプ４の分割方法を選択する場合には、横８画素×縦８画素の４つのサブブロックに対して、図４（ｅ）〜（ｈ）にそれぞれ示す横８画素×縦８画素の４ブロックのそれぞれを分割する方法から選択できる。ここで図４（ｅ）、（ｆ）、（ｇ）、および（ｈ）に示す分割方法はそれぞれ、分割タイプ４、分割タイプ５、分割タイプ６、および分割タイプ７に対応している。
【００１１】
また、Ｈ．２６４規格では１／４画素までの小数画素単位で動き補償を行うことが許可されている。この際、Ｈ．２６４規格ではその線形フィルタ画素補間の方法として６タップフィルタが採用されており、１／２精度画素を周辺の６画素から求めることが決められている。この６タップフィルタによる画素補間の方法について、図５を用いて説明する。
【００１２】
図５はＨ．２６４における輝度信号の画素補間方法を説明するための概念図である。図５において補間前の整数精度画素位置の画素信号を網掛けの四角形で表し、１／２画素精度および１／４画素精度の小数画素位置の画素信号を白抜きの四角形で表している。まず、整数画素信号から６タップフィルタを用いて１／２画素精度の画素信号が生成され、次に２タップの平均値フィルタにより１／４画素精度の画素信号が生成される。
【００１３】
２つの整数画素信号の水平方向の中間位置にある１／２画素信号は、水平方向の６タップフィルタ処理により生成する。例えば、画素ｂは、整数画素Ｅ、Ｆ、Ｇ、Ｈ、Ｉ、Ｊに水平方向の６タップフィルタを施すことによって生成する。
【００１４】
２つの整数画素信号の垂直方向の中間位置にある１／２画素信号は、垂直方向の６タップフィルタ処理により生成する。例えば、画素ｈは、整数画素Ａ、Ｃ、Ｇ、Ｍ、Ｒ、Ｔに垂直方向の６タップフィルタを施すことによって生成する。
【００１５】
４つの整数画素信号の中間位置にある１／２画素信号は、６タップフィルタ処理を水平と垂直の両方向に行うことにより生成する。例えば、画素ｊを生成する場合、１／２画素精度の信号ａａ、ｂｂ、ｂ、ｓ、ｇｇ、ｈｈを水平方向６タップフィルタ処理により生成した後、これらの信号に垂直方向に６タップフィルタ処理を行うことによって生成する。あるいは、垂直方向フィルタ処理により画素ｃｃ、ｄｄ、ｈ、ｍ、ｅｅ、ｆｆを生成した後、水平方向フィルタ処理によってｊを生成しても構わない。
【００１６】
このように、全ての１／２画素精度の信号を計算した後、平均値フィルタを用いて１／４画素精度の信号を生成する。例えば、画素ａはＧとｂから、画素ｆはｂとｊから、画素ｒはｍとｓからそれぞれ平均値フィルタを施して生成する。
【００１７】
従って、整数画素精度の画素Ｇ、Ｈ、ＭおよびＮで囲まれる小数精度画素位置の画素信号を求めるためには、図５で示した周囲６×６の画素が必要である。
【００１８】
また、動き補償を行うブロック単位では、図６に示すように動き補償を行うブロックの画素が位置する領域（ａ）に対して、対象のブロックを上と左に２画素、下と右に３画素分拡大した領域（ｂ）の画素が輝度信号では必要となる。従って、横×縦サイズが１６×１６、１６×８、８×１６、８×８、８×４、４×８、４×４の各動き補償のブロックサイズに対して、それぞれ水平、垂直に５画素分ずつ拡大した２１×２１、２１×１３、１３×２１、１３×１３、１３×９、９×１３、９×９の画素領域が必要となる。
【００１９】
なお、色差信号に関しては、小数精度画素の周囲４つの整数精度画素から線形補間で生成する。色差信号の動き補償ブロックサイズは、例えば４：２：０フォーマットの場合、８×８、８×４、４×８、４×４、４×２、２×４、２×２であり、小数精度画素を求めるのに必要な参照画素領域は、それぞれ水平、垂直に１画素分ずつ拡大した９×９、９×５、５×９、５×５、５×３、３×５、３×３となる。
【００２０】
以上のように、動き補償を行うために必要な参照画素データのデータ転送量が大きくなるという問題が生じる。従って、参照画像データを高速に読み出して処理するためには、高性能で高価なメモリが必要となり、画像復号装置のコストが上昇してしまう。
【００２１】
上記問題を解決するために、特許文献１では参照ピクチャから取得した画素を一旦記憶するバッファを設け、既にバッファ内に記憶されている画素は再取得せずに動き補償を行う技術が示されている。この技術では、一度取得した画素が他のブロックの動き補償で再利用される可能性が高いことを利用し、画像メモリから取得するデータ量を削減する。
【先行技術文献】
【特許文献】
【００２２】
【特許文献１】特開２００５−３５４６７３号公報
【非特許文献】
【００２３】
【非特許文献１】Ｈ．２６４  ＩＳＯ／ＩＥＣ１４４９６−１０規格
【発明の概要】
【発明が解決しようとする課題】
【００２４】
しかしながら上記従来の構成では、マクロブロック毎の動きベクトルの相関が大きいときはバッファ内に記憶されているデータを利用できるため効率的であるが、動きベクトルがランダムになっているような場合はバッファ内のデータを利用することができない。そのため、Ｈ．２６４規格に準拠した全ての符号化データに対して破綻なく復号処理を行うためには、帯域の広いメモリが必要になるという課題がある。
【００２５】
本発明は、帯域の狭いメモリを使用しても、どのような符号化データに対しても破綻することなく復号可能な画像復号装置を提供することを目的とする。
【課題を解決するための手段】
【００２６】
本発明の画像復号装置の第一の発明は、復号した画像データを格納する画像メモリと、動き補償に必要な参照ピクチャを、前記画像メモリから取得する参照画像取得部と、前記参照ピクチャを使用して動き補償処理を行う動き補償部と、前記画像メモリから出力画像を読み出して出力する画像出力部とを備え、予め設定した目標処理時間内に復号対象ピクチャを復号した画像データの前記画像メモリへの書き込みが完了するかどうかを判定し、完了しないと判定された場合は前記復号対象ピクチャの復号処理を中断し、次のピクチャから復号処理を再開するよう制御する制御部とを備える。
【００２７】
また第二の発明は、前記制御部は、前記復号処理が中断されたピクチャに対して、復号されなかった画面内の領域の画像データを、直前に出力したピクチャの画像データで置き換えて出力することを特徴とする。
【００２８】
また第三の発明は、前記制御部は、前記復号処理の中断は、復号対象ピクチャが別のピクチャの参照ピクチャになり得ない場合にのみ行うことを特徴とする。
【発明の効果】
【００２９】
本発明の第一の発明によれば、ピクチャ単位で目標処理時間内に処理が完了するかどうかを判定し、完了しない場合は途中で符号化処理を打ち切る。これにより、動画符号化データ内のあるピクチャに対して、動き補償処理のための参照画像読み出しに必要なメモリ帯域が使用するメモリの帯域を超える場合にも、その影響は１ピクチャ内に制限され、符号化データ全体の復号処理の遅延などが起こることはなく、時間軸方向での影響を最小限に留めることが可能になる。
【００３０】
また第二の発明によれば、復号処理が打ち切られることで復号されなかった領域は、相関の大きな直前のピクチャで置き換える。これにより、ピクチャ内における画像乱れの影響を最小限に留めることが可能になる。
【００３１】
また第三の発明によれば、復号処理を打ち切るピクチャは、他の参照ピクチャになり得ないピクチャに限定する。これにより、復号処理打ち切りによって発生する影響は他のピクチャに伝播することがなく、ピクチャ内に留められる。
【図面の簡単な説明】
【００３２】
【図１】実施の形態における画像復号装置の構成を示すブロック図
【図２】実施の形態における画像復号装置の動作を説明するタイミング図
【図３】従来の画像復号装置の構成を示すブロック図
【図４】動き補償ブロックの説明図
【図５】６タップフィルタによる画素補間処理の説明図
【図６】参照画像データ読み込み領域の説明図
【発明を実施するための形態】
【００３３】
以下に、実施の形態について、図面を参照しながら説明する。
【００３４】
図１は、実施の形態における画像復号装置の構成を示すブロック図である。また、図２は、具体的に動作を説明するための図である。図１において、画像復号装置１００は、入力端子１０１、可変長復号部１０２、逆量子化部１０３、逆直交変換部１０４、加算器１０５、画面内予測部１０６、信号選択部１０７、動き補償部１０８、参照画像取得部１０９、制御部１１０、メモリコントローラ１１１、画像メモリ１１２、画像出力部１１３および出力端子１１４を備える。
【００３５】
可変長復号部１０２は、入力端子１０１から入力されたＨ．２６４画像符号化データの可変長符号の復号を行い、１６×１６画素サイズのマクロブロック単位で可変長復号結果を出力する。その出力は、量子化変換係数データ、量子化パラメータ情報、マクロブロックの符号化モードを示すマクロブロックタイプ情報および動きベクトルと参照ピクチャを示す動き情報などである。
【００３６】
量子化変換係数データは、逆量子化部１０３で逆量子化処理、逆直交変換部１０４で逆直交変換処理が施される。逆直交変換部１０４は、予測差分データを出力する。
【００３７】
画面内予測部１０６は、そのマクロブロックが画面内予測符号化されている場合、マクロブロックタイプ情報で示された予測モードに従って、マクロブロックの周辺画素データから画面内予測データを生成する。
【００３８】
参照画像取得部１０９は、そのマクロブロックが動き予測符号化されている場合、動き補償のブロック毎に、参照ピクチャを示す情報と動きベクトルから動き予測データを生成するのに必要な参照ピクチャの矩形領域を求め、画像メモリ１１２上の該当するアドレスを決定してメモリコントローラ１１１に対して読み出し要求を発行する。
【００３９】
動き補償部１０８は、参照画像取得部１０９経由で取得された参照ピクチャのデータを使用して、補間フィルタ処理を行い、１／４画素精度の動き予測データを生成する。
【００４０】
信号選択部１０７は、そのマクロブロックの予測モードに従って画面内予測データもしくは動き予測データを選択する。選択された予測データと逆直交変換部１０４から出力される予測差分データを加算器１０５で加算してマクロブロックの復号データが生成される。復号データはメモリコントローラ１１１を介して画像メモリ１１２に書き込まれる。
【００４１】
画像出力部１１３は、再生画像出力タイミングに合わせてメモリコントローラ１１１に対して必要なピクチャの読み出し要求を行い、読み出されたデータを出力する。
【００４２】
メモリコントローラ１１１の動作について説明する。本実施の形態においては、画像メモリ１１２はＤＤＲ−ＳＤＲＡＭ（Ｄｏｕｂｌｅ−Ｄａｔａ−Ｒａｔｅ  Ｓｙｎｃｈｒｏｎｏｕｓ  Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）で構成される。なお、画像メモリ１１２は、ＤＤＲ−ＳＤＲＡＭに限らず、他の形態のメモリであってもよく、画像を保持できるものであればよい。メモリにアクセスする回路（マスター）は、（１）復号データ書き込み、（２）再生出力読み出し、（３）参照画像読み出しの計３回路からなる。メモリコントローラ１１１は、各マスターからのメモリアクセス要求の調停処理を行い、選択されたマスターの書き込みおよび読み出しアクセスを行う。また、メモリコントローラ１１１は、ＤＤＲ−ＳＤＲＡＭへのモード設定やリフレッシュ動作を行う。
【００４３】
メモリコントローラ１１１へのアクセス要求のうち、復号データの書き込みと、画像出力の読み出しについては、ピクチャあたりのデータ量は一定である。一方、参照画像取得のためのデータ量は符号化モードによって異なる。例えば、Ｉピクチャのようにピクチャ全体が画面内符号化されている場合、参照画像の読み出しデータ量は０である。それに対して、動き補償ブロックサイズ１６×１６の片方向予測で符号化される場合、輝度信号では２１×２１＝４４１画素分の読み出しが必要である。さらに、動き補償ブロックサイズ４×４の双方向予測で符号化される場合、動き補償ブロックあたり９×９サイズの参照画像読み出しが必要であり、マクロブロックあたりの動き補償ブロック数は１６、それぞれ双方向予測のため更に２倍のブロック数が必要になるので、１６×１６画素のマクロブロックあたり、９×９×１６×２＝２５９２画素分の読み出しが必要となる。このようなマクロブロックでは画像メモリ１１２からのデータ読み込み時間が大きくなる。すなわち、動き補償ブロックサイズが小さいマクロブロックの割合が大きいピクチャは、そうでないピクチャに比べて復号処理に要する時間が増大する。
【００４４】
制御部１１０は、参照画像データの取得状況からピクチャ単位で復号処理の進行状況を監視し、予め決めておいた目標時間を越える場合、そのピクチャの復号処理の打ち切りを可変長復号部１０２と画像出力部１１３に通知する。可変長復号部１０２は、復号中のピクチャにおいて復号処理打ち切りが通知された時点のマクロブロック以降の復号処理を中止し、次のピクチャの先頭マクロブロックから復号処理を再開する。
【００４５】
画像出力部１１３は、通常はピクチャ毎に画像メモリ１１２から再生画像データを読み出して出力する。復号処理が途中で打ち切られている場合、復号されなかった領域は直前に出力したピクチャのデータを画像メモリ１１２から読み込んで出力する。
【００４６】
図２は、復号打ち切り処理の説明図である。図２において、（ａ）はピクチャ毎の復号処理タイミングを示している。（ａ）の矩形は各復号ピクチャ、矩形の中の文字はピクチャタイプと表示順である。例えばＩ２はＩピクチャで２番目に表示するピクチャの意味である。（ｂ）は画像メモリ１１２上における書き込みピクチャアドレス、（ｃ）は画像出力部１１３が読み出す再生データ、（ｄ）は読み出しピクチャアドレス、（ｅ）は再生画像の画面イメージを示している。
【００４７】
図２（ａ）の点線は、各ピクチャの目標復号完了時刻である。制御部１１０は各ピクチャが目標復号完了時刻までに復号完了しない場合には、強制的に復号処理を打ち切る。図中のＢ１ピクチャに対して復号処理が打ち切られている。画像出力部１１３は、ピクチャ毎に画像メモリ１１２からデータを読み出して出力する際、復号されていない領域は直前のピクチャを出力するよう、読み出しアドレスを変更して画像メモリ１１２からデータを読み出す。図２（ｃ）で再生出力の斜線部が直前のピクチャのデータが出力されている区間であり、再生画像は図２（ｅ）に示すように、画面下部の斜線領域が直前のピクチャで置き換えられて表示される。
【００４８】
以上説明したように、本実施の形態によれば、ピクチャ毎に目標処理時間内に処理が完了するかどうかを判定し、完了しない場合は途中で符号化処理を打ち切ることにより、動き補償の符号化条件によって参照画像読み出しに必要なデータ量が多く、メモリの性能を超えた読み出し帯域が要求されるようなピクチャが符号化データ内に存在した場合においても、符号化データ全体の復号処理の遅延は発生せず、その影響はピクチャ内のみに限定される。
【００４９】
また、復号されなかった領域は直前に出力されたピクチャで置き換えることにより、復号処理を途中で打ち切っても、そのピクチャの再生画像は大きく乱れることなく再生することができる。
【００５０】
さらに、Ｈ．２６４規格ではストリーム中のｎａｌ＿ｒｅｆ＿ｉｄｃなるフラグにより、そのピクチャが他のピクチャの参照ピクチャかどうかが示される。このフラグを見て、参照ピクチャでない場合にのみ打ち切り処理を行うことが可能である。これにより、復号打ち切りの影響が他のピクチャに伝播することを防ぐことができる。なお、双方向予測では、参照ピクチャは、表示順で前にある非参照ピクチャよりも先に復号されるため、復号完了から表示までの時間的余裕が大きく、復号打ち切り処理を行わなくても再生破綻が起きることはない。
【００５１】
なお、本実施の形態では、制御部１１０とメモリコントローラ１１１とを別に設ける構成について説明したが、メモリコントローラ１１１を設けず、制御部１１０で画像メモリ１１２に対する制御を実施する形態であってもよい。
【産業上の利用可能性】
【００５２】
本実施の形態にかかる画像復号装置は、処理に必要なメモリに要求される性能を低く抑えることができるため、高解像度画像信号の符号化システムや低コストの画像復号装置に有用である。
【符号の説明】
【００５３】
１０２    可変長復号部
１０３    逆量子化部
１０４    逆直交変換部
１０６    画面内予測部
１０８    動き補償部
１０９    参照画像取得部
１１０    制御部
１１１    メモリコントローラ
１１２    画像メモリ
１１３    画像出力部
【図１】
2012019462.tif 000003
【図２】
2012019462.tif 000004
【図３】
2012019462.tif 000005
【図４】
2012019462.tif 000006
【図５】
2012019462.tif 000007
【図６】
2012019462.tif 000008