(57)【要約】【課題】  半画素作成処理の無駄と不足を軽減する。【解決手段】  ハフマン復号手段１００は、入力される符号データをマクロブロック毎にハフマン復号する。逆量子化手段１０１は、ハフマン復号手段１００の出力に逆量子化処理を施す。逆直交変換手段１０２は、逆量子化手段１０１の出力に逆直交変換処理を施す。切り替え手段１０３は、ＰピクチャとＢピクチャの構成割合と動きベクトル数の統計から４つの動き補償処理を切り替え、それぞれに適した処理系１１０〜１１２，１２０〜１２３，１３０〜１３３，１４０〜１４２に供給する。【選択図】  図１
2006203280.tif 000002
【特許請求の範囲】
【請求項１】
動き補償処理を含む画像復号方法であって、
処理方法の異なる複数の動き補償処理と、
前記複数の動き補償処理を切り替える切り替え処理
とを具備することを特徴とする画像復号方法。
【請求項２】
前記複数の動き補償処理は、非参照フレーム作成時に、半画素フレームを予め作成しておく動き補償処理を含むことを特徴とする請求項１に記載の画像復号方法。
【請求項３】
前記切り替え処理は、動きベクトルの数の統計によって半画素作成処理の重複度合いを計測し、その結果を用いて前記複数の動き補償処理を切り替えることを特徴とする請求項１又は２に記載の画像復号方法。
【請求項４】
前記切り替え手段は、非整数の動きベクトル数の統計によって予め作成する半画素作成処理の有効度合いを計測し、その結果を用いて前記複数の動き補償処理を切り替えることを特徴とする請求項１又は２に記載の画像復号方法。
【請求項５】
請求項１乃至４の何れか１項に記載の画像復号方法を実施することを特徴とする画像復号装置。
【請求項６】
画面内符号化、画面間符号化及び動き補償を使用して圧縮された入力画像情報を復号する方法であって、
当該入力画像情報の、動きベクトルの数の統計によって半画素作成処理の重複度合いを計測する計測ステップと、
当該計測ステップの結果に従い選択される半画素作成処理を有する動き補償処理を、当該入力画像情報のうちの動き補償された画像情報に施す動き補償ステップ
とを具備することを特徴とする画像復号方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像復号方法及び装置に関する。
【背景技術】
【０００２】
動画圧縮に用いられる技術として動き補償がある。これは、フレーム間で似ているブロックの画像情報を動きベクトル情報と差分値で伝送（又は記録）することで圧縮率を向上させるものである。動画圧縮方式として周知のＭＰＥＧ方式にも、この動き補償が使用されている。
【０００３】
ＭＰＥＧ方式では、フレーム内符号化のＩピクチャと、Ｉピクチャ又はＰピクチャである別のフレームからの予測値との差分を符号化するフレーム間予測符号化のＰピクチャと、Ｐピクチャ又はＩピクチャである前後の２フレームからの予測値との差分を符号化するフレーム間予測符号化のＢピクチャがある。動き補償のために、Ｐピクチャでは最大１ピクチャを参照でき、Ｂピクチャでは、最大２ピクチャを参照できる。動きベクトルの精度は０．５画素単位とされている。
【０００４】
復号時の動き補償処理では、動きベクトルを用いてマクロブロック（ＭＢ）と呼ばれるブロック単位で画面上の位置を補償する。０．５画素単位の動きベクトルについては、半画素作成処理において線形補間によって画素値を算出したものを参照ブロックとして用いる。図１０に示すように、０．５画素単位の動きベクトルの存在により、補間する可能性がある位置として、図１０に記号○、△で□示す三種類の位置がある。
【０００５】
図８は、従来例１における復号処理装置の概略構成ブロック図を示す。ハフマン復号手段５００は、入力される符号データをマクロブロック毎にハフマン復号し、逆量子化手段５０１はハフマン復号手段の出力データに逆量子化処理を施し、逆直交変換手段５０２は、逆量子化手段５０１の出力データに逆直交変換処理を施す。その後、動き補償処理を必要としないイントラマクロブロック（イントラＭＢ）に関しては、逆直交変換手段５０２の出力データが、復号結果としてそのまま出力される。
【０００６】
動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）には、次のような動き補償処理が施される。ブロック参照手段５１０は、動きベクトルを用いて所望のブロックを参照する。半画素作成手段５１１が０．５単位のベクトルの場合に限り線形補間により半画素ブロックを作成する。加算手段５１２は、逆直交変換手段５０２の出力と半画素作成手段５１１の出力とを加算する。加算手段５１２の出力データが、復号結果として出力される。
【０００７】
以上のような従来例に対し、特にソフトウエアで実現した際の半画素作成処理に注目した復号処理の高速化手法が多く提案されている。例えば、特許文献１に記載の構成が知られている。
【０００８】
図９は、特許文献２に記載される従来例２における復号処理装置の概略構成ブロック図を示す。
【０００９】
ハフマン復号手段７００は、入力される符号データをマクロブロック毎にハフマン復号する。逆量子化手段７０１は、ハフマン復号手段７００の出力データに逆量子化処理を施す。逆直交変換手段７０２は、逆量子化手段７０１の出力データに逆直交変換処理を施す。その後、動き補償処理を必要としないイントラＭＢに関しては、逆直交変換手段７０２の出力データが、復号結果として出力される。
【００１０】
動き補償処理を必要とするノンイントラＭＢは、次のように処理される。ＰピクチャのノンイントラＭＢについては、ブロック参照手段７１０が動きベクトルを用いて所望のブロックを参照し、半画素作成手段７１１が０．５単位のベクトルの場合に限り線形補間により半画素ブロックを作成し、加算手段７１２が逆直交変換手段５０２の出力と半画素作成手段５１１の出力とを加算する。加算手段７１２の出力が、復号結果として出力される。
【００１１】
動き補償処理を必要とするノンイントラＭＢのうちの、ＢピクチャのノンイントラＭＢについては、動きベクトル補正手段７２０が、動きベクトルの小数部を切り捨てる補正を行い、ブロック参照手段７２１が補正された動きベクトルを用いて所望のブロックを参照し、加算手段７２２が逆直交変換手段７０２の出力とブロック参照手段７２１の出力を加算する。加算手段７１２の出力が、復号結果として出力される。
【００１２】
従来例２の方法では、半画素作成をしないことによる画像の乱れの累積を抑えつつ、演算量を低減でき、高速化が可能となる。
【特許文献１】特開平９−３２２１７５号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
従来例１の構成では、小数点以下の動きベクトルの数が多ければ多いほど、同画素に対して半画素作成処理を重複して行う確率が高くなる。その結果、演算量が多く、処理負荷が重い。
【００１４】
従来例２の方法では、半画素作成をしないことによる画像の乱れの累積を抑えつつ、演算量を低減でき、高速化が可能となる。しかし、Ｂピクチャに関しては、半画素作成をしないことによる画像の乱れが目立ち、画質が低下する。
【００１５】
本発明は、このような不都合を解消した画像復号方法及び装置を提示することを目的とする。
【課題を解決するための手段】
【００１６】
本発明に係る画像復号方法は、動き補償処理を含む画像復号方法であって、処理方法の異なる複数の動き補償処理と、前記複数の動き補償処理を切り替える切り替え処理とを具備することを特徴とする。
【００１７】
本発明に係る画像復号装置は、復号処理方法を実施することを特徴とする。
【発明の効果】
【００１８】
本発明によれば、復号処理内に存在する動き補償処理において動きベクトル数の統計をとり、最適な動き補償処理を施すことで、半画素作成処理に関する演算量を大幅に低減し、高速な復号処理を実現する。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照して、本発明の実施例を詳細に説明する。
【実施例１】
【００２０】
図１は、本発明の第１実施例である画像復号装置の概略構成ブロック図を示す。ハフマン復号手段１００は、入力される符号データをマクロブロック毎にハフマン復号する。逆量子化手段１０１は、ハフマン復号手段１００の出力に逆量子化処理を施す。逆直交変換手段１０２は、逆量子化手段１０１の出力に逆直交変換処理を施す。
【００２１】
切り替え手段１０３は、ＰピクチャとＢピクチャの構成割合と動きベクトルの数の統計から、以下の４つの動き補償処理を切り替える。
【００２２】
第１の動き補償処理では、動き補償処理を必要としないイントラマクロブロック（イントラＭＢ）に関して、逆直交変換手段１０２の出力データをそのまま、復号結果として出力する。動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）に関しては、ブロック参照手段１１０が動きベクトルを用いて所望のブロックを参照し、半画素作成手段１１１が０．５単位のベクトルの場合に限り線形補間により半画素ブロックを作成し、加算手段１１２が逆直交変換手段１０２の出力と半画素作成手段１１１の出力を加算する。加算手段１１２の出力データが、復号結果として出力される。
【００２３】
第２の動き補償処理では、動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）に関して、ブロック参照手段１２０が動きベクトルを用いて水平方向で整数のベクトルは従来どおりのフレームから、水平方向で非整数のベクトルは予め作成した水平方向半画素フレームから所望のブロックを参照し、半画素作成手段１２１が、垂直方向が非整数のベクトルの場合に限り線形補間により半画素ブロックを作成し、加算手段１２２が逆直交変換手段１０２の出力と半画素作成手段１２１の出力を加算する。さらに、Ｉ、Ｐピクチャに関しては水平方向半画素作成手段１２３が水平方向の半画素ブロックを作成し、水平方向半画素フレームに格納する。
【００２４】
第３の動き補償処理では、まず動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）に関して、ブロック参照手段１３０が動きベクトルを用いて水平垂直方向で共に整数又は水平垂直方向で共に非整数のベクトルは従来どおりのフレームから、水平方向だけで非整数のベクトルは予め作成した水平方向半画素フレームから、垂直方向だけで非整数のベクトルは予め作成した垂直方向半画素フレームから所望のブロックを参照し、半画素作成手段１３１が、水平垂直方向で共に非整数のベクトルの場合に限り線形補間により半画素ブロックを作成し、加算手段１２２が、逆直交変換手段１０２の出力と半画素作成手段１３１の出力を加算する。さらに、Ｉ、Ｐピクチャに関しては、水平垂直方向半画素作成手段１３３が、水平方向と垂直方向の半画素ブロックを作成し、それぞれ水平・垂直方向半画素フレームに格納する。
【００２５】
第４の動き補償処理では、まず動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）に関して、ブロック参照手段１４０が、動きベクトルを用いて水平垂直方向で共に整数のベクトルは従来どおりのフレームから、水平方向だけで非整数のベクトルは予め作成した水平方向半画素フレームから、垂直方向だけで非整数のベクトルは予め作成した垂直方向半画素フレームから、水平垂直方向で共に非整数のベクトルは予め作成した斜め方向半画素フレームから所望のブロックを参照し、加算手段１４１が、逆直交変換手段１０２の出力とブロック参照手段１４０の出力を加算する。さらに、Ｉ、Ｐピクチャに関しては、全方向半画素作成手段１４３が、水平方向、垂直方向及び斜め方向の半画素ブロックを作成し、それぞれ水平・垂直・斜め方向半画素フレームに格納する。
【００２６】
図２及び図３を参照して、切り替え手段１０３の動作を説明する。切り替え手段１０３は、各ブロック参照手段１４０からマクロブロックあたりのベクトル数の情報を受け、Ｐピクチャ及びＢピクチャに対し、それぞれ、マクロブロックあたりのベクトル数の期待値Ｖｐ，Ｖｂを算出する。但し、０≦Ｖｐ≦１、０≦Ｖｂ≦２である。切り替え手段１０３は、この結果と、ＰピクチャとＢピクチャの構成割合を示すＰピクチャの出現周期Ｍとを用いて、図２に示す式で被参照フレームにかかるベクトル数の期待値Ｅを求める。この結果から、図３に示す判定条件により、上述の４つの動き補償処理を切り替える。
【００２７】
このように、本実施例では、ＰピクチャとＢピクチャの構成割合と動きベクトルの数の統計によって、半画素作成処理の重複度合いを計測することができ、この計測結果により最適な動き補償処理を適用できる。
【実施例２】
【００２８】
図４は、本発明の第２実施例の概略構成ブロック図である。ハフマン復号手段３００は、入力される符号データをマクロブロック毎にハフマン復号し、逆量子化手段３０１は、ハフマン復号手段の出力に逆量子化処理を施し、逆直交変換手段３０２は、逆量子化手段３０１の出力に逆直交変換処理を施す。その後、切り替え手段３０３が、ＰピクチャとＢピクチャの構成割合と動きベクトルの数の統計から、以下の４つの動き補償処理を切り替える。
【００２９】
第１の動き補償処理では、動き補償処理を必要としないイントラマクロブロック（イントラＭＢ）に関しては、逆量子化手段３０２の出力データをそのまま、復号結果として出力する。動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）に関しては、ブロック参照手段３１０が、動きベクトルを用いて所望のブロックを参照し、半画素作成手段３１１が０．５単位のベクトルの場合に限り線形補間により半画素ブロックを作成し、加算手段３１２が、逆直交変換手段３０２の出力と半画素作成手段３１１の出力とを加算する。加算手段３１２の出力を、復号結果として出力する。
【００３０】
第２の動き補償処理では、まず動き補償処理を必要とするノンイントラマクロブロック（ノンイントラＭＢ）に関しては、ブロック参照手段３２０が動きベクトルを用いて切り替え手段３０３から指定された方向（水平又は垂直）が整数であるベクトルは従来どおりのフレームから、切り替え手段３０３から指定された方向（水平又は垂直）が非整数であるベクトルは予め作成した半画素フレームから所望のブロックを参照し、半画素作成手段３２１が切り替え手段３０３から指定されなかった方向（垂直又は水平）で非整数のベクトルの場合に限り線形補間により半画素ブロックを作成し、加算手段３２２が逆直交変換手段３０２の出力と半画素作成手段３２１の出力を加算する。加算手段３１２の出力を、復号結果として出力する。さらに、Ｉピクチャ及びＰピクチャに関しては、単方向半画素作成手段３２３が、切り替え手段３０３から指定された方向（水平又は垂直）の半画素ブロックを作成し、半画素フレームに格納する。
【００３１】
図５，図６及び図７を参照して、切り替え手段３０３の動作を説明する。切り替え手段３０３は、ブロック参照手段３１０からマクロブロックあたりのベクトルの情報を受け、Ｐピクチャ及びＢピクチャに対し、それぞれ、マクロブロックあたりの水平又は垂直方向で非整数のベクトル数の期待値ＨＰｐ（０≦ＨＰｐ≦１），ＨＰｂ（０≦ＨＰｂ≦２）と、水平方向で非整数のベクトル数の期待値ＨＰｈｐ（０≦ＨＰｈｐ≦１），ＨＰｈｂ（０≦ＨＰｈｂ≦２）と、垂直方向で非整数のベクトル数の期待値ＨＰｖｐ（０≦ＨＰｖｐ≦１），ＨＰｖｂ（０≦ＨＰｖｂ≦２）とを算出する。この結果のうち、水平又は垂直方向で非整数のベクトル数の期待値ＨＰｐ，ＨＰｂと、ＰピクチャとＢピクチャの構成割合を示すＰピクチャの出現周期Ｍを用いて、図５に示す式で被参照フレームにかかる非整数ベクトル数の期待値Ｅを求める。この結果から、図６に示す判定条件により、上述の２つの動き補償処理を切り替える。
【００３２】
第２の動き補償処理が選択された場合、Ｐピクチャの出現周期Ｍと、求めた水平方向で非整数のベクトル数の期待値ＨＰｈｐ，ＨＰｈｂと、垂直方向で非整数のベクトル数の期待値ＨＰｖｐ，ＨＰｖｂを用いて、図７に示す式で被参照フレームにかかる水平方向と垂直方向の非整数ベクトル数の期待値Ｅｈ，Ｅｖを求め、その値が大きい方を第２の動き補償処理において予め作成する半画素フレームの方向（水平又は垂直）とし、その結果を関連するブロック参照手段３２０、半画素作成手段３２１及び単方向半画素作成手段３２３に通知する。
【００３３】
このように、ＰピクチャとＢピクチャの構成割合と非整数の動きベクトル数の統計によって、予め作成する半画素作成処理の有効度合いを計測できる。この計測結果を利用することで、最適な動き補償処理を適用できる。
【図面の簡単な説明】
【００３４】
【図１】本発明の第１実施例の概略構成ブロック図である。
【図２】第１実施例の切り替え手段で用いる計算式である。
【図３】第１実施例の切り替え手段で用いる切り替え条件である。
【図４】本発明の第２実施例の概略構成ブロック図である。
【図５】第２実施例の切り替え手段で用いる計算式１である。
【図６】第２実施例の切り替え手段で用いる切り替え条件である。
【図７】第２実施例の切り替え手段で用いる計算式２である。
【図８】第１従来例の概略構成ブロック図である。
【図９】第２従来例の概略構成ブロック図である。
【図１０】動き補償処理に関する動作説明図である。
【符号の説明】
【００３５】
１００：ハフマン復号手段
１０１：逆量子化手段
１０２：逆直交変換手段
１０３：切り替え手段
１１０：ブロック参照手段
１１１，１２１，１３１：半画素作成手段
１１２，１２２，１３２：加算手段
１２３：水平方向半画素作成手段
１３３：水平垂直方向半画素作成手段
１４２：全方向半画素作成手段
３００：ハフマン復号手段
３０１：逆量子化手段
３０２：逆直交変換手段
３０３：切り替え手段
３１０，３２０：ブロック参照手段
３１１，３２１：半画素作成手段
３１２，３２２：加算手段
３２３：単方向半画素作成手段
５００：ハフマン復号手段
５０１：逆量子化手段
５０２：逆直交変換手段
５１０：ブロック参照手段
５１１：半画素作成手段
５１２：加算手段
７００：ハフマン復号手段
７０１：逆量子化手段
７０２：逆直交変換手段
７１０，７２１：ブロック参照手段
７１１：半画素作成手段
７１２，７２２：加算手段
７２０：動きベクトル補正手段
【図１】
2006203280.tif 000003
【図２】
2006203280.tif 000004
【図３】
2006203280.tif 000005
【図４】
2006203280.tif 000006
【図５】
2006203280.tif 000007
【図６】
2006203280.tif 000008
【図７】
2006203280.tif 000009
【図８】
2006203280.tif 000010
【図９】
2006203280.tif 000011
【図１０】
2006203280.tif 000012