(57)【特許請求の範囲】
【請求項１】
フレーム内符号化された各フレームの画像を復号化する画像復号方法であって、
各フレームの画像を復号化する第１の工程と、
前記第１の工程で復号化された画像について、動いている対象物の有る領域と無い領域とを峻別する第２の工程と、
前記動いている対象物の無い領域について、過去のフレームの画像との間で平均化処理を行う第３の工程と
を備え、
前記第２の工程は、前記各フレームの画像内で複数に分割されてなる各ブロック領域について、最新のフレームのブロック領域内の各画素値と、直前のフレームのブロック領域内の各画素値との差分の絶対値の合計を演算し、当該合計が所定の閾値より大きいブロック領域を、前記動いている対象物の有る領域であると判断し、
前記第２の工程において、前記合計が前記所定の閾値より小さいブロック領域のうち、前記合計が前記所定の閾値より大きいブロック領域に隣接するブロック領域を、前記動いている対象物の有る領域であると判断する画像復号方法。
【請求項２】
請求項１に記載の画像復号方法であって、
前記第３の工程は、前記動いている対象物の無い領域において、前記動いている対象物の有る領域との境界に位置する境界領域の平均化処理の掛かり具合を、前記境界領域以外の前記動いている対象物の無い領域と前記動いている対象物の有る領域との間で、漸次的に変化させる一方、前記境界領域以外の前記動いている対象物の無い領域の平均化処理の掛かり具合を一定にすることを特徴とする画像復号方法。
【請求項３】
請求項１または請求項２に記載の画像復号方法をコンピュータ上で実現するために、前記各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、フレーム内符号化された各フレームの画像を復号化する画像復号方法及びプログラムに関する。
【０００２】
【従来の技術】
動画像を圧縮する方法としては、ＭＰＥＧ等の時系列的な差分情報を使用した方法の他、ＭｏｔｉｏｎＪＰＥＧ方式のように、静止画像の圧縮方式（フレーム内符号化方式）を採用し、かかる静止画像を時系列的に切り替えて表示することで、見かけ上、動画像のように再生する静止画連続再生方式がある。
【０００３】
【発明が解決しようとする課題】
ＭｏｔｉｏｎＪＰＥＧ等の静止画連続再生方式の画像圧縮技術において、直交変換と量子化を用いて圧縮符号化された動画シーケンスを復号すると、量子化誤差のため画像にちらつきが生じることがある。このちらつきは、ＭｏｔｉｏｎＪＰＥＧではブロック歪が目立たないほどの高画質のシーケンスにおいても発生し、背景のように動きのない領域で特に目立つ。また、静止画では目立たないが動画像として動かすと目立つといった特徴がある。
【０００４】
このような問題に鑑みてこの発明が解決しようとするところは、静止画連続再生方式の画像圧縮技術において、ちらつきを防止して画質を向上し得る画像復号方法及びプログラムを提供する点にある。
【０００５】
【課題を解決するための手段】
上記課題を解決すべく、請求項１に記載の発明は、フレーム内符号化された各フレームの画像を復号化する画像復号方法であって、各フレームの画像を復号化する第１の工程と、前記第１の工程で復号化された画像について、動いている対象物の有る領域と無い領域とを峻別する第２の工程と、前記動いている対象物の無い領域について、過去のフレームの画像との間で平均化処理を行う第３の工程とを備え、前記第２の工程は、前記各フレームの画像内で複数に分割されてなる各ブロック領域について、最新のフレームのブロック領域内の各画素値と、直前のフレームのブロック領域内の各画素値との差分の絶対値の合計を演算し、当該合計が所定の閾値より大きいブロック領域を、前記動いている対象物の有る領域であると判断し、前記第２の工程において、前記合計が前記所定の閾値より小さいブロック領域のうち、前記合計が前記所定の閾値より大きいブロック領域に隣接するブロック領域を、前記動いている対象物の有る領域であると判断する。
【０００６】
請求項２に記載の発明は、請求項１に記載の画像復号方法であって、前記第３の工程は、前記動いている対象物の無い領域において、前記動いている対象物の有る領域との境界に位置する境界領域の平均化処理の掛かり具合を、前記境界領域以外の前記動いている対象物の無い領域と前記動いている対象物の有る領域との間で、漸次的に変化させる一方、前記境界領域以外の前記動いている対象物の無い領域の平均化処理の掛かり具合を一定にする。
【０００９】
請求項３に記載の発明は、請求項１または請求項２に記載の画像復号方法をコンピュータ上で実現するために、前記各工程をコンピュータに実行させるためのプログラムである。
【００１０】
【発明の実施の形態】
この画像復号方法は、ネットワークまたは所定のデータ記録媒体を通じて与えられた静止画連続再生方式の画像圧縮データ（ビットストリームデータ）について、その静止画連続再生方式に対応した手順で各フレームについての復号処理を行った後に、その復号画像に対して、例えば一部の領域について画素ごとに時間軸方向の平均化フィルタを用いて平均化処理（スムージング）を行うことで、ちらつきを軽減し主観的な画質を向上させる。ただし、対象物が動いている領域は、視認者から見て、ちらつきがあっても目立たない領域となることから、平均化処理を施さないように判定を行う。そして、実際に復号画像にスムージング判定を行ってスムージング処理を行ったときに、スムージングを行う領域と行わない領域の境界が目立たないように、その境界部分について平均化フィルタの係数を段階的に変化させる。
【００１１】
具体的には、図１のフローチャートに示した手順を順次実行する。
【００１２】
まず、図１中のステップＳ１において、圧縮符号化されて与えられた静止画連続再生方式のビットストリームデータ１を、各フレーム毎に復号処理する。
【００１３】
次に、ステップＳ２において、スムージング判定を行い、スムージングすべき領域（スムージング領域）を決定する。
【００１４】
ここでスムージング領域を決定する理由は次の通りである。後述するスムージング処理は、フレームメモリ２に蓄積された直前前のフレームと最新のフレーム（以下「カレント画像」と称す）の各画素値を平均化することで行われることになるため、スムージング領域に動いている対象物が含まれていると、平均化された画像にはカレント画像に以前の画像に映っていた対象物が同時に映りこんでしまう。これを防止するため、動いている対象物を含んでいる領域は、スムージングを行わないようにする必要がある。そこで、ステップＳ２においては、例えば１６ピクセル×１６ピクセル等の所定のサイズの矩形のブロック（マクロブロック）毎に、内部の変化の大きさを見てスムージングを行うか行わないかを判定する。具体的には、次の（１）式によって定義される差分絶対値和（ＳＡＤ）をマクロブロック単位で計算し、このＳＡＤの値と所定の閾値とを比較して、ＳＡＤの値が閾値より小さいマクロブロックを当面のスムージング領域Ｒ２（図２）と仮定する。
【００１５】
【数１】
0004617442.tif 000002
【００１６】
（１）式中の変数ｎはフレーム番号、変数ｘnはｎ番目のフレーム（カレント画像）における注目画素値、変数ｘ’n-1はｎ−１番目のフレーム（直前のフレーム）におけるスムージング処理後の注目画素値をそれぞれ示している。この時点で仮定されるスムージング領域Ｒ２の例を図２に示す。図２中の符号Ｒ１（斜線ハッチングが描かれたブロック）はスムージング処理を行わない領域である。
【００１７】
ところで、図２に示したような固定値としての閾値による判定方式では、スムージング判定を常に適切に判定できるとは限らない。例えば、動いている対象物を一部に含んでいるようなブロックであって、その動いている対象物の当該ブロック中に占める面積が極めて小さい場合は、上記したＳＡＤの値が閾値に満たないことがあり、そのために、動いている対象物を含むにもかかわらずスムージング領域Ｒ２と判定してしまうことがある。そして、動いている対象物にスムージングが行われてしまうと、その対象物がぼやけた状態になってしまい、視認性を大きく阻害する。このことを考慮するとと、スムージング判定においてスムージングを行わないと判定された領域Ｒ１を拡張しておく（スムージング領域Ｒ２を縮小しておく）と安全である。即ち、図３の如く、ステップＳ２において最初にスムージング領域Ｒ２と仮定されたブロックであって、且つ“スムージングしない”と判定されたブロックＲ１に隣接しているブロックＲ３では、上記の最初の仮定結果（即ち、スムージング領域Ｒ２であるとの仮定結果）にかかわらず“スムージングしない”ことにする。この図３において拡張される領域は、最初にスムージングを行わないと判定された領域Ｒ１の周辺の１マクロブロック分である。したがって、正式なスムージング領域Ｒ４は、最初に仮定されたスムージング領域Ｒ２よりも符号Ｒ３の部分だけ縮小される。
【００１８】
次に、ステップＳ３において、先のステップＳ２で決定されたスムージング領域Ｒ４内の各注目ブロックが、図４のように境界領域Ｒ５に位置するブロックであるか否かを判断する。
【００１９】
このステップＳ３での判断の後、スムージング処理を実行する。このスムージング処理では、平均化フィルタとして、例えば図５に示したようなＩＩＲ（infinite impulse response：無限長インパルス応答）フィルタ回路５を用いて行われる。このＩＩＲフィルタ回路５では、スムージング重み係数をαとして、入力された画素値に対してスムージング重み係数αを積算し、これを遅延ブロック（Ｚ-1）７で遅延させて係数ブロック８に出力する。係数ブロック８では、遅延ブロック７からの出力値に（１−α）を積算し、この積算値が加算器９において次の入力画素値に加算される。かかる遅延ブロック７から加算器９までのループを無限下位繰り返すことで、ＩＩＲフィルタ回路５では、カレント画像の注目画素値ｘnがそれ以前のフレームの画素値ｘ1，ｘ2，…，ｘn-1により畳み込まれ、これによりスムージング処理が行われる。したがって、カレント画像に近いフレームを主成分とする畳み込み演算により、各画素値のスムージング処理を行うことができる。
【００２０】
尚、図５のＩＩＲフィルタ回路５においては、スムージング重み係数αの値が大きいほどスムージングの影響は小さくなる。そして、このスムージング重み係数αは、上記したステップＳ３での判断結果によって異なる値に設定される。
【００２１】
即ち、例えばスムージング処理を行わない領域Ｒ１，Ｒ３においては、αが１に設定され、これにより畳み込み演算を全く行わずに、入力値がそのまま出力値となって出力されることになる。
【００２２】
一方、通常のスムージング処理の場合、即ち、ステップＳ３において、各注目ブロックが、図４のように境界領域Ｒ５に位置しないブロックＲ６であると判断された場合は、次のステップＳ４に進む。ステップＳ４では、スムージング重み係数αを０．５に一律に設定し、このαの値をもって、図５に示したＩＩＲフィルタ回路５で畳み込み演算を行ってスムージング処理を行う。かかるスムージング処理がなされた画素は、フレームメモリ２に格納されるとともに、ステップＳ６で出力画像として出力される。
【００２３】
一方、ステップＳ３において、各注目ブロックが、図４のように境界領域Ｒ５に位置するブロックＲ５であると判断された場合は、次のステップＳ５に進む。ステップＳ５では、当該注目ブロック内の各画素ごとに、スムージング重み係数αを、例えば図６のように漸次的に変化させて設定し、図５に示したＩＩＲフィルタ回路５で畳み込み演算を行ってスムージング処理を行う。図６の左半分に示される１６ピクセル×１６ピクセルのブロックＲ５は、スムージング処理を行わないマクロブロックＲ３が右側に隣接して存在し、またブロックＲ５の上側、下側及び左側にはスムージング領域（図示省略）のマクロブロックが隣接している場合の例である。
【００２４】
スムージング処理を行わないマクロブロックＲ３内の各画素についてのスムージング重み係数αの値は、上述のように１である。また、通常のスムージング領域Ｒ６（図４）において、各画素についてのスムージング重み係数αの値は、上述のように０．５である。したがって、これらの境界領域Ｒ５に位置するブロックＲ５内の各画素に係る重み係数αは、０．５から１までの間で漸次的に変化するように設定される。かかる処理によって、通常のスムージング領域Ｒ６、スムージング処理を行わない領域Ｒ３との境界が目立たなくなる。
【００２５】
以上のように、ＭｏｔｉｏｎＪＰＥＧ等の静止画連続再生方式の画像圧縮技術において、特にちらつきの目立ちやすいとされる動きの少ないマクロブロックについては、ＩＩＲフィルタ回路５でスムージング処理を行うことで、ちらつきを低減することができる。
【００２６】
また、動きのある部分を含むマクロブロックにおいては、スムージング処理を行わないことで、その動いている対象物の鮮明さを維持できる。
【００２７】
そして、スムージング領域Ｒ４と非スムージング領域Ｒ１，Ｒ３との境界に位置するマクロブロック内においては、通常のスムージング領域Ｒ６と非スムージング領域Ｒ３との間にあって、そのマクロブロック内の各画素毎に、スムージング処理の掛かり具合を漸次的に変化させているので、領域境界を目立たなくすることが可能となる。
【００２８】
【発明の効果】
請求項１、請求項２及び請求項３に記載の発明によれば、フレーム内符号化された各フレームの画像を復号化した後、動いている対象物が無いと判断した領域について、過去のフレームの画像との間で平均化処理を行うので、静止画連続再生方式の画像圧縮技術において従来問題となっていたちらつきを低減することができる。また、動いている対象物が無いと判断した領域については、平均化処理を行わないことで、その動いている対象物の鮮明さを維持できる。
【００２９】
請求項１及び請求項３に記載の発明によれば、注目フレームと直前のフレームのブロック領域内の各画素値の差分の絶対値の合計を演算し、当該合計と所定の閾値とを比較するだけで、各ブロック領域内の動いている対象物の有無を峻別できるため、効率のよい峻別を行うことができる。
【００３０】
請求項１及び請求項３に記載の発明によれば、例えば、或るブロック領域内において動いている対象物の端部のみが少しだけ映っているような場合に、その動いている対象物のブロック領域内に占める面積が小さいことが原因となる誤判断を防止することができる。
【図面の簡単な説明】
【図１】この発明の一の実施の形態に係る画像復号方法を示すフローチャートである。
【図２】最初にスムージング領域を仮定した状態を示す図である。
【図３】スムージング処理を行わない領域を１ブロック単位で拡大した状態を示す図である。
【図４】境界領域を示す図である。
【図５】平均化フィルタを示す図である。
【図６】境界領域のマクロブロック内における各画素のスムージング重み係数を示す図である。
【符号の説明】
１  ビットストリームデータ
２  フレームメモリ
５  ＩＩＲフィルタ回路
６，８  係数ブロック
７  遅延ブロック
９  加算器
【図１】
0004617442.tif 000003
【図２】
0004617442.tif 000004
【図３】
0004617442.tif 000005
【図４】
0004617442.tif 000006
【図５】
0004617442.tif 000007
【図６】
0004617442.tif 000008