(57)【要約】【課題】動きの連続性がない領域以外の領域の画質を改善する。【解決手段】不連続性判定部２５は、符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかを判定し、量子化制御部１７は、不連続ブロックについて、ピクチャの目標符号量に応じて設定される量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、画素ブロックの量子化を制御する。本発明は、例えば、画像を符号化する符号化装置等に適用できる。【選択図】図１
2012156573.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかを判定する不連続性判定手段と、
前記不連続ブロックについて、前記ピクチャの目標符号量に応じて設定される、前記画素ブロックを量子化するための量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、前記画素ブロックの量子化を制御する量子化制御手段と
を備える符号化装置。
【請求項２】
前記不連続性判定手段は、
前記画素ブロックについて、前記画素ブロックの動きベクトルに従った動きが連続しているピクチャ数を表す連続性値を求め、
前記連続性値が、前記連続性値の閾値より小さい前記画素ブロックを、前記不連続ブロックであると判定する
請求項１に記載の符号化装置。
【請求項３】
前記不連続性判定手段は、
さらに、前記画素ブロックについて、動きが空間方向に不連続であるかどうかを判定し、
動きが空間方向に不連続であり、かつ、前記連続性値が、前記連続性値の閾値より小さい前記画素ブロックを、前記不連続ブロックであると判定する
請求項２に記載の符号化装置。
【請求項４】
前記不連続性判定手段は、注目する画素ブロックである注目ブロックについて、
前記注目ブロックを含む周辺の複数の画素ブロックにおいて、動きが似ている２つの画素ブロックのセットの数を求め、
動きが似ている２つの画素ブロックのセットの数が、閾値以下である場合に、動きが空間方向に不連続であると判定する
請求項３に記載の符号化装置。
【請求項５】
前記不連続性判定手段は、前記画素ブロックの動きベクトルに従って動き補償を行ったときの予測残差が、前記予測残差の閾値以上であり、かつ、前記連続性値が、前記連続性値の閾値より小さい前記画素ブロックを、前記不連続ブロックであると判定する
請求項２に記載の符号化装置。
【請求項６】
前記量子化制御手段は、前記不連続ブロックについて、前記ピクチャを構成する前記画素ブロックに対する前記不連続ブロックの割合が大であるほど、粗い量子化が行われるように、前記画素ブロックの量子化を制御する
請求項２に記載の符号化装置。
【請求項７】
符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかを判定し、
前記不連続ブロックについて、前記ピクチャの目標符号量に応じて設定される、前記画素ブロックを量子化するための量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、前記画素ブロックの量子化を制御する
ステップを含む符号化方法。
【請求項８】
符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかを判定する不連続性判定手段と、
前記不連続ブロックについて、前記ピクチャの目標符号量に応じて設定される、前記画素ブロックを量子化するための量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、前記画素ブロックの量子化を制御する量子化制御手段と
して、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、符号化装置、符号化方法、及び、プログラムに関し、特に、例えば、動画像において、動きの連続性がない領域以外の領域の画質を改善することができるようにする符号化装置、符号化方法、及び、プログラムに関する。
【背景技術】
【０００２】
近年のマルチメディアの発展に伴い、動画像について、様々な（圧縮）符号化方式が提案されている。動画像についての代表的な符号化方式としては、例えば、MPEG(Moving Picture Expert Group)-1,2,4方式やH.264(ITU-T Q6/16 VCEG)方式がある。
【０００３】
これらの符号化方式では、符号化の対象である原画像が、所定のサイズ（画素数）の領域である画素ブロックに分割され、画素ブロックを処理単位として、動き補償予測や、DCT(Discrete Cosine Transform)、量子化等の処理が施される。なお、動き補償予測を行う場合には、既に符号化された画像データを復号して得られる復号画像が参照画像として用いられるため、符号化時に、復号を行うこと（局所復号）が必要となる。
【０００４】
ところで、動画像を、例えば、MPEG方式等で符号化する場合に得られる符号化データの符号量は、動画像自体の特性、すなわち、例えば、動画像を構成する各ピクチャ（フレーム、又は、フィールド）の空間周波数特性や、シーンの変化等の影響を受ける。
【０００５】
動画像の符号化時においては、符号量を一定値に収めつつ、良好な画質の復号画像を得ることができるようにするために、ピクチャを量子化するための量子化パラメータをマクロブロック単位等で調整することにより、符号量を制御する符号量制御が行われる。
【０００６】
符号量制御のアルゴリズムとしては、例えば、TM5(Test Model 5)がある（例えば、特許文献１及び２参照）。
【０００７】
TM5では、視覚的に劣化の目立ちやすい画素ブロックを抽出するための特徴量として、空間アクティビティを用い、マクロブロックの空間アクティビティに基づいて、ピクチャの中の平坦領域（空間アクティビティが低い領域）ほど、量子化パラメータが小さく設定（調整）される。
【０００８】
TM5のような、空間アクティビティに基づく符号量制御によれば、復号画像において、主観的な画質の劣化が目立ちやすい平坦領域の画質を向上することができる。
【０００９】
主観的な画質の劣化が目立ちやすい領域としては、平坦領域の他に、動き補償予測において予測残差が大きくなる領域がある。
【００１０】
しかしながら、空間アクティビティと予測残差との間には、相関がないため、空間アクティビティに基づく符号量制御では、主観的な画質の劣化が目立ちやすい、予測残差が大きくなる可能性の高い領域の手当てを十分に行うことが困難である。
【００１１】
そこで、特許文献３では、静止と動きの境界領域を求めることによって、予測残差が大きくなる可能性の高い領域の画質を改善する技術が提案されている。特許文献３に記載の技術では、マクロブロックの動きベクトルに基づいて、静止と動きの境界を検出し、そのような境界がある領域を、予測残差が大きくなる可能性の高い領域として、量子化パラメータ（ひいては、量子化ステップ）を小さく設定する符号量制御が行われる。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開平11-196417号公報
【特許文献２】特開2009-200871号公報
【特許文献３】特開2010-130558号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
ところで、ピクチャにおいて、例えば、紙吹雪や、滝、噴水等が被写体が映っている領域では、動きの連続性がなく（低く）、予測残差が大きくなる傾向がある。
【００１４】
したがって、ピクチャにおいて、例えば、紙吹雪を背景として、人物等の、視聴者が比較的注目する前景が映っている場合、特許文献３に記載の技術によれば、予測残差が大きくなる紙吹雪の領域の量子化パラメータが小さく設定される。
【００１５】
その結果、予測残差が大きくなる紙吹雪の領域については、小さい量子化パラメータに対応する小さい量子化ステップでの量子化、つまり、細かい量子化が行われる。
【００１６】
予測残差が大きくなる紙吹雪の領域について、小さい量子化パラメータが設定され、細かい量子化が行われる場合、その量子化によって多くの符号量が発生するため、その他の領域に割り当てることのできる符号量が少なくなる。
【００１７】
したがって、ピクチャにおいて、上述したように、紙吹雪等の、動きの連続性がない領域を背景として、人物等の、視聴者が比較的注目する前景が映っている場合、その前景に対して、大きい量子化パラメータが設定され、その結果、復号画像において、視聴者が比較的注目する前景の画質が劣化することがある。
【００１８】
本発明は、このような状況に鑑みてなされたものであり、動きの連続性がない領域以外の領域の画質を改善することができるようにするものである。
【課題を解決するための手段】
【００１９】
本発明の一側面の符号化装置、又は、プログラムは、符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかを判定する不連続性判定手段と、前記不連続ブロックについて、前記ピクチャの目標符号量に応じて設定される、前記画素ブロックを量子化するための量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、前記画素ブロックの量子化を制御する量子化制御手段とを備える符号化装置、又は、符号化装置として、コンピュータを機能させるためのプログラムである。
【００２０】
本発明の一側面の符号化方法は、符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかを判定し、前記不連続ブロックについて、前記ピクチャの目標符号量に応じて設定される、前記画素ブロックを量子化するための量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、前記画素ブロックの量子化を制御するステップを含む符号化方法である。
【００２１】
以上のような一側面においては、符号化対象の動画像を構成するピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きが時間方向に不連続な画素ブロックである不連続ブロックであるかどうかが判定される。そして、前記不連続ブロックについて、前記ピクチャの目標符号量に応じて設定される、前記画素ブロックを量子化するための量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、前記画素ブロックの量子化が制御される。
【００２２】
なお、符号化装置は、独立した装置であっても良いし、１つの装置を構成している内部ブロックであっても良い。
【００２３】
また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
【発明の効果】
【００２４】
本発明の一側面によれば、動きの連続性がない領域以外の領域の画質を改善することができる。
【図面の簡単な説明】
【００２５】
【図１】本発明を適用した符号化装置の一実施の形態の構成例を示すブロック図である。
【図２】不連続性判定部２５の構成例を示すブロック図である。
【図３】時間不連続性判定部４１が行う時間不連続性の判定を説明する図である。
【図４】空間不連続性判定部４３が行う空間不連続性の判定を説明する図である。
【図５】不連続性判定処理を説明するフローチャートである。
【図６】量子化オフセット量設定処理を説明するフローチャートである。
【図７】オフセットテーブルを示す図である。
【図８】符号量制御処理を説明するフローチャートである。
【図９】量子化処理を説明するフローチャートである。
【図１０】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【発明を実施するための形態】
【００２６】
［本発明を適用した符号化装置の一実施の形態］
【００２７】
図１は、本発明を適用した符号化装置の一実施の形態の構成例を示すブロック図である。
【００２８】
図１において、符号化装置は、外部から供給される動画像を、例えば、H.264方式で符号化する。なお、符号化装置が行う符号化の符号化方式は、H.264方式に限らず、MPEG-1,2,4等のその他の方式でもよい。
【００２９】
外部からの動画像を構成するピクチャは、表示順に、動画像並び替え部１１、及び、不連続性判定部２５に供給される。
【００３０】
動画像並び替え部１１は、そこに表示順に供給されるピクチャを一時記憶し、あらかじめ定められたGOP(Group Of Picture)の構造によって決まる符号化順（復号順）に読み出すことで、動画像としてのピクチャの並びを、符号化順に並び替える。さらに、動画像並び替え部１１は、並び替え後のピクチャを、順次、符号化対象のピクチャである現ピクチャとして、動きベクトル検出部２４、イントラ予測部１２、及び、インター予測部１３に供給する。
【００３１】
イントラ予測部１２は、後述する対象マクロブロックについて、動画像並び替え部１１からの現ピクチャのうちの、既に符号化、局所復号されて、参照フレームメモリ２３に記憶されている領域を、参照画像として、参照フレームメモリ２３から読み出す。そして、イントラ予測部１２は、参照フレームメモリ２３からの参照画像を、そのまま予測画像として用いて、動画像並び替え部１１からの現ピクチャを構成する対象マクロブロックのフレーム内予測（イントラ予測）としての、対象マクロブロックと予測画像との（各画素どうしの）差を求める演算を行い、対象マクロブロックと予測画像との差である予測残差（フレーム内予測の予測残差）を、予測画像とともに、モード判定部１４に供給する。
【００３２】
ここで、後述する動きベクトル検出部２４は、動画像並び替え部１１からの現ピクチャを、例えば、横×縦が16×16画素や8×8画素等のマクロブロックに分割し、現ピクチャを構成するマクロブロックを、順次、符号化対象のマクロブロックとして、動きベクトル等の動き補償パラメータを求めるが、この符号化対象のマクロブロックが、対象マクロブロックである。
【００３３】
インター予測部１３は、現ピクチャよりも先に符号化、局所復号されて、参照フレームメモリ２３に記憶されているピクチャ（復号画像）を、参照画像として、参照フレームメモリ２３から読み出す。
【００３４】
さらに、インター予測部１３は、参照フレームメモリ２３から読み出した参照画像に対して、重み係数の乗算やオフセットの加算等により、動画像並び替え部１１からの現ピクチャを構成する対象マクロブロックと、参照画像との間の振幅補償を行う。
【００３５】
また、インター予測部１３は、動きベクトル検出部２４が出力する動き補償パラメータとしての、対象マクロブロックの動きベクトルに従って、参照画像の動き補償を行うことで、予測画像を生成する。
【００３６】
そして、インター予測部１３は、予測画像を用いて、動画像並び替え部１１からの現ピクチャを構成する対象マクロブロックのインター予測としての、対象マクロブロックと予測画像との差を求める演算を行い、対象マクロブロックと予測画像との差である予測残差（インター予測の予測残差）を、予測画像とともに、モード判定部１４に供給する。
【００３７】
なお、予測残差は、輝度信号及び色差信号のそれぞれについて求められる。
【００３８】
モード判定部１４は、イントラ予測部１２及びインター予測部１３それぞれからの対象マクロブロックの予測残差から、符号化コスト（予測残差の符号量等）を算出する。そして、モード判定部１４は、符号化コストに基づき、１つ以上の予測モードの候補から、例えば、最小の符号化コストの予測モードを、最適な予測モードに決定し、イントラ予測部１２及びインター予測部１３それぞれからの対象マクロブロックの予測残差のうちの、最適な予測モードで求められた予測残差を、直交変換部１５に供給する。
【００３９】
また、モード判定部１４は、最適な予測モードを、可変長符号化部１８、及び、予測復号部２２に供給するとともに、最適な予測モードで用いられた予測画像を、予測復号部２２に供給する。
【００４０】
直交変換部１５は、モード判定部１４からの対象マクロブロックの予測残差に、例えば、DCT等の直交変換処理を施し、その結果得られる対象マクロブロックの直交変換係数を、量子化部１６に供給する。
【００４１】
量子化部１６には、直交変換部１５から直交変換係数が供給される他、符号量制御部１９からマクロブロック単位の量子化パラメータが供給されるとともに、量子化オフセット量設定部２７からマクロブロック単位の量子化オフセット量が供給される。
【００４２】
量子化部１６は、量子化制御部１７を内蔵し、量子化制御部１７の制御に従って、直交変換部１５からの対象マクロブロックの直交変換係数を量子化する。
【００４３】
すなわち、量子化制御部１７は、量子化オフセット量設定部２７からの量子化オフセット量に従い、符号量制御部１９からの量子化パラメータを変更（調整）する。さらに、量子化制御部１７は、変更後の量子化パラメータに対応する値の量子化ステップを求め、その量子化ステップで量子化を行うように、量子化部１６を制御する。
【００４４】
これにより、量子化制御部１７は、対象マクロブロックが、動きが時間方向に不連続なマクロブロックである不連続ブロックである場合に、そのような不連続ブロックについて、符号量制御部１９によって現ピクチャの目標符号量に応じて設定される量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、対象マクロブロックの量子化を制御する。
【００４５】
量子化部１６は、量子化制御部１７で求められる量子化ステップで、直交変換部１５からの対象マクロブロックの直交変換係数を量子化し、量子化後の直交変換係数である量子化係数を、可変長符号化部１８、及び、逆量子化部２０に供給する。
【００４６】
可変長符号化部１８には、量子化部１６から量子化係数が供給されるとともに、予測モード判定部１４から予測モードが供給される他、動きベクトル検出部２４が出力する動き補償パラメータが供給される。
【００４７】
可変長符号化部１８は、モード判定部１４から予測モードや、量子化部１６からの量子化係数、動きベクトル検出部２４からの動き補償パラメータに対して、算術符号化等の可変長符号化の処理を施して多重化し、動画像の符号化データとして出力する。
【００４８】
可変長符号化部１８が出力する符号化データは、図示せぬ伝送媒体を介して伝送され、あるいは、図示せぬ記録媒体に記録される。
【００４９】
符号量制御部１９は、例えば、TM5等によって、符号量制御を行う。
【００５０】
すなわち、符号量制御部１９は、可変長符号化部１８が出力する符号化データの符号量に基づいて、現ピクチャの目標符号量を算出する。さらに、符号量制御部１９は、その目標符号量等に応じて、マクロブロック（の直交変換係数）を量子化するための量子化パラメータを設定し、量子化部１６（の量子化制御部１７）に供給することで、可変長符号化部１８が出力する符号化データの符号量のフィードバック制御を行う。
【００５１】
逆量子化部２０は、量子化部１６から供給される量子化係数を、量子化部１６が量子化に用いたのと同一の量子化ステップで逆量子化し、その結果得られる直交変換係数を、逆直交変換部２１に供給する。
【００５２】
逆直交変換部２１は、逆量子化部２０からの直交変換係数に、逆直交変換処理を施し、その結果得られる予測残差を、予測復号部２２に供給する。
【００５３】
予測復号部２２は、逆直交変換部２１からの予測残差を、モード判定部１４からの符号化モードに基づき、モード判定部１４からの予測画像を用いて局所復号し、その結果得られる復号画像を、参照フレームメモリ２３に供給する。
【００５４】
参照フレームメモリ２３は、予測復号部２２からの復号画像（局所復号されたピクチャ）を記憶する。
【００５５】
動きベクトル検出部２４は、動画像並び替え部１１からの現ピクチャを、例えば、横×縦が16×16画素や8×8画素等のマクロブロックに分割し、現ピクチャを構成するマクロブロックを、順次、符号化対象のマクロブロックである対象マクロブロックとして、動き補償パラメータを求める。
【００５６】
すなわち、動きベクトル検出部２４は、対象マクロブロックの動きベクトルを、参照フレームメモリ２３に記憶された復号画像を参照画像として用いて求める。
【００５７】
そして、動きベクトル検出部２４は、対象マクロブロックの動きベクトルと、その動きベクトルを用いるのに用いた参照画像の選択の方法や、対象マクロブロックの形状（サイズ）等とを、動き補償パラメータとして、インター予測部１３や可変長符号化部１８等に供給する。
【００５８】
不連続性判定部２５は、そこに表示順に供給されるピクチャを、順次、注目する注目ピクチャとして、その注目ピクチャを分割した所定サイズの複数の画素ブロックとしての、例えば、複数のマクロブロックそれぞれについて、動きが、少なくとも時間方向に不連続なマクロブロックである不連続ブロックであるかどうかを判定する。
【００５９】
そして、不連続性判定部２５は、注目ピクチャの各マクロブロックについての、不連続ブロックであるかどうかの判定結果である不連続情報を、不連続情報並び替え部２６に供給する。
【００６０】
不連続情報並び替え部２６は、不連続性判定部２５からの（表示順の）ピクチャ単位の不連続情報を、動画像並び替え部１１と同様にして、符号化順に並び替え、量子化オフセット量設定部２７に供給する。
【００６１】
量子化オフセット量設定部２７は、不連続情報並び替え部２６から符号化順に供給されるピクチャ単位の不連続情報のうちの、現ピクチャの各マクロブロックの不連続情報に基づき、現ピクチャの各マクロブロックについて、符号量制御部１９で設定される量子化パラメータを変更（調整）するためのオフセットである量子化オフセット量を設定する。
【００６２】
そして、量子化オフセット量設定部２７は、現ピクチャの各マクロブロックについての量子化オフセット量を、量子化部１６（の量子化制御部１７）に供給する。
【００６３】
[不連続性判定部２５]
【００６４】
図２は、図１の不連続性判定部２５の構成例を示すブロック図である。
【００６５】
不連続性判定部２５は、フレームメモリ３１、動きベクトル検出部３２、及び、判定部３３を有する。
【００６６】
不連続性判定部２５に表示順に供給されるピクチャは、フレームメモリ３１、及び、動きベクトル検出部３２に供給される。
【００６７】
フレームメモリ３１は、そこに供給されるピクチャを一時記憶する。
【００６８】
動きベクトル検出部３２は、そこに供給されるピクチャを、順次、注目ピクチャとし、フレームメモリ３１に記憶された、注目ピクチャの１ピクチャ前のピクチャ（以下、前ピクチャともいう）を、参照画像として、注目ピクチャを分割した所定サイズの複数の画素ブロックそれぞれについて、動きベクトルを検出する。
【００６９】
すなわち、動きベクトル検出部３２は、注目ピクチャを、例えば、マクロブロック等の画素ブロックに分割し、各画素ブロックを、順次、注目する注目ブロックとして、例えば、注目ブロックから、フレームメモリ３１に記憶された参照画像としての前ピクチャへの動きを表すベクトルを、注目ブロックの動きベクトルとして検出する。
【００７０】
動きベクトル検出部３２は、注目ピクチャを構成する各画素ブロックの動きベクトルの検出を、例えば、ブロックマッチングによって行い、そのブロックマッチングにおいて得られる予測残差（画素ブロックの動きベクトルに従って動き補償を行ったときの予測残差）、すなわち、例えば、注目ピクチャの画素ブロックの各画素と、その画素ブロックの位置から動きベクトルだけ移動した位置の、前ピクチャの各画素との差分絶対値和と、動きベクトルとを、判定部３３に供給する。
【００７１】
判定部３３は、注目ピクチャを構成する各画素ブロックを、順次、注目ブロックとし、動きベクトル検出部３２からの動きベクトル、及び、予測残差に基づき、注目ブロックが、動きが不連続な画素ブロックである不連続ブロックであるかどうかを判定する。
【００７２】
すなわち、判定部３３は、時間連続性判定部４１、ベクトルメモリ４２、空間連続性判定部４３、及び、総合判定部４４を有する。
【００７３】
時間不連続性判定部４１は、動きベクトル検出部３２からの注目ブロックの動きベクトル、並びに、ベクトルメモリ４２に記憶された動きベクトル、及び、後述する連続性値に基づき、注目ブロックについて、動きの時間方向の不連続性である時間不連続性を判定し、その判定結果を、総合判定部４４に供給する。
【００７４】
また、時間不連続性判定部４１は、ベクトルメモリ４２に記憶された動きベクトルを、注目ピクチャの各画素ブロックの動きベクトルに更新するとともに、ベクトルメモリ４２に記憶された連続性値を更新する。
【００７５】
ベクトルメモリ４２は、ピクチャの各画素ブロックについて、時間不連続性判定部４１から供給される動きベクトルと連続性値とのセットを一時記憶する。
【００７６】
ここで、時間不連続性判定部４１は、注目ピクチャの各画素ブロックについて、時間不連続性を判定した後、動きベクトル検出部３２からの注目ピクチャの各画素ブロックの動きベクトルを、ベクトルメモリ４２に記憶させる。
【００７７】
したがって、時間不連続性判定部４１が、注目ピクチャの各画素ブロックの時間不連続性を判定するとき、ベクトルメモリ４２には、注目ピクチャの１ピクチャだけ前のピクチャである前ピクチャの各画素ブロックの動きベクトルが記憶されている。
【００７８】
また、時間不連続性判定部４１は、注目ピクチャの注目ブロックの時間不連続性の判定において、ベクトルメモリ４２に記憶された前ピクチャの各画素ブロックの動きベクトルのうちの、注目ブロックから、その注目ブロックの動きベクトルだけ移動した位置の前ピクチャの画素ブロックである対応ブロックの動きベクトルを参照し、注目ブロックの動きベクトルと、対応ブロックの動きベクトルとが似ているかどうかを判定する。
【００７９】
そして、時間不連続性判定部４１は、注目ブロックの動きベクトルと、対応ブロックの動きベクトルとが似ている場合（一致する場合を含む）、ベクトルメモリ４２において、対応ブロックの動きベクトルとセットで記憶されている連続性値（以下、対応ブロックの連続性値ともいう）を、1だけインクリメントし、そのインクリメント後の連続性値を、注目ブロックの連続性値として、注目ブロックの動きベクトルとセットにして、ベクトルメモリ４２に記憶させる。
【００８０】
一方、注目ブロックの動きベクトルと、対応ブロックの動きベクトルとが似ていない場合、時間不連続性判定部４１は、注目ブロックの連続性値を0にセットし、注目ブロックの動きベクトルとセットにして、ベクトルメモリ４２に記憶させる。
【００８１】
したがって、画素ブロックの連続性値は、その画素ブロックの動きベクトルに従った動きが（時間方向に）連続しているピクチャ数を表す。
【００８２】
空間不連続性判定部４３は、動きベクトル検出部３２からの注目ブロックの動きベクトルと、注目ブロックの周辺の画素ブロックである複数の周辺ブロックの動きベクトルとに基づき、注目ブロックについて、動きの空間方向の不連続性である空間不連続性を判定し、その判定結果を、総合判定部４４に供給する。
【００８３】
総合判定部４４は、動きベクトル検出部３２からの注目ブロックの予測残差、時間不連続性判定部４１からの注目ブロックについての時間不連続性の判定結果、及び、空間不連続性判定部４３からの注目ブロックについての空間不連続性の判定結果に基づき、注目ブロックが、不連続ブロックであるかどうかを判定し、その判定結果を表す不連続情報を、不連続情報並び替え部２６（図１）に供給する。
【００８４】
図３は、図２の時間不連続性判定部４１が行う時間不連続性の判定を説明する図である。
【００８５】
ここで、図３において、横方向は、ピクチャの空間方向であるx，y方向を表し、縦方向は、ピクチャの時間方向（時間軸）tを表す。
【００８６】
いま、動画像の先頭からn番目のピクチャである第nピクチャが注目ピクチャであるとして、その注目ピクチャの注目ブロックの動きベクトルを、MV=(vx,vy)と表すとともに、注目ブロックの連続性値を、MVcと表すこととする。
【００８７】
さらに、注目ブロックから、その注目ブロックの動きベクトルMVだけ移動した位置の前ピクチャ（ここでは、第n-1ピクチャ）の画素ブロックである対応ブロックの動きベクトルを、MV'=(vx',vy')と表すとともに、対応ブロックの連続性値を、MVc'と表すこととする。
【００８８】
時間不連続性判定部４１は、時間不連続性の判定において、注目ブロックの動きベクトルMVと、対応ブロックの動きベクトルMV'とが似ているかどうかを判定する。
【００８９】
そして、時間不連続性判定部４１は、注目ブロックの動きベクトルMV=(vx,vy)と、対応ブロックの動きベクトルMV'=(vx',vy')とが似ている場合、すなわち、動きベクトルMV=(vx,vy)とMV'=(vx',vy')とが相違している程度である相違度としての、例えば、動きベクトルMV=(vx,vy)とMV'=(vx',vy')との、x成分どうしの差とy成分どうしの差との絶対値和|vx-vx'|+|vy-vy'|（以下、xy差分和ともいう）が、xy差分和の閾値THd以上でない場合、対応ブロックの連続性値MVc'を、1だけインクリメントした値を、注目ブロックの連続性値MVc=MVc'+1として求める。
【００９０】
一方、注目ブロックの動きベクトルMV=(vx,vy)と、対応ブロックの動きベクトルMV'=(vx',vy')とが似ていない場合、すなわち、動きベクトルMV=(vx,vy)とMV'=(vx',vy')との相違度としてのxy差分和が、閾値THd以上である場合、時間不連続性判定部４１は、注目ブロックの連続性値MVcを、0にセットする。
【００９１】
そして、時間不連続性判定部４１は、注目ブロックの連続性値MVcが、連続性値の閾値THcより小さい場合、注目ブロックに、時間不連続性がある、つまり、注目ブロックの時間方向の動きが不連続であると判定する。
【００９２】
一方、注目ブロックの連続性値MVcが、連続性値の閾値THcより小さくない場合、注目ブロックに、時間不連続性がない、つまり、注目ブロックの時間方向の動きが連続であると判定する。
【００９３】
図４は、図２の空間不連続性判定部４３が行う空間不連続性の判定を説明する図である。
【００９４】
ここで、図４は、注目ピクチャの注目ブロックと、その注目ブロックの周辺の複数の周辺ブロックとしての、注目ブロックの上、下、左、右、左上、左下、右上、及び、右下のそれぞれに隣接する８つの画素ブロックとを示している。
【００９５】
空間不連続性判定部４３は、注目ブロックと８つの周辺ブロックとの９つの画素ブロックのうちの、上下又は左右に隣接する２つの画素ブロックの動きベクトルどうしの相違度としてのxy差分和を算出する。
【００９６】
さらに、空間不連続性判定部４３は、相違度が、相違度の閾値THd'以下となる２つの画素ブロックのセット（以下、ブロックセットともいう）をカウントし、相違度が閾値THd'以下となるブロックセットの数、つまり、動き（ベクトル）が似ている２つの画素ブロックのセットの数に基づき、注目ブロックの空間不連続性を判定する。
【００９７】
すなわち、空間不連続性判定部４３は、相違度が閾値THd'以下となるブロックセットの数が、空間不連続性の判定用の閾値THn以下である場合、注目ブロックに、空間不連続性がある、つまり、注目ブロックの空間方向の動きが不連続であると判定する。
【００９８】
また、空間不連続性判定部４３は、相違度が閾値THd'以下となるブロックセットの数が、閾値THn以下でない場合、注目ブロックに、空間不連続性がない、つまり、注目ブロックの空間方向の動きが連続であると判定する。
【００９９】
図５は、図２の不連続性判定部２５が行う、画素ブロックが不連続ブロックであるかどうかを判定する不連続性判定処理を説明するフローチャートである。
【０１００】
不連続性判定部２５に表示順に供給されるピクチャは、フレームメモリ３１、及び、動きベクトル検出部３２に供給され、フレームメモリ３１は、そこに供給されるピクチャを記憶する。
【０１０１】
動きベクトル検出部３２は、新たなピクチャが供給されると、そのピクチャを注目ピクチャとして、不連続性判定処理を開始する。
【０１０２】
不連続性判定処理では、ステップＳ１１において、動きベクトル検出部３２は、フレームメモリ３１に記憶された前ピクチャを、参照画像として用いて、注目ピクチャを分割した複数の画素ブロックそれぞれについて、動きベクトルを検出する。
【０１０３】
すなわち、動きベクトル検出部３２は、注目ピクチャを、画素ブロックに分割し、各画素ブロックを、順次、注目ブロックとして、フレームメモリ３１に記憶された参照画像としての前ピクチャを用いたブロックマッチングにより、注目ブロックの動きベクトルと、予測残差とを求める。
【０１０４】
そして、動きベクトル検出部３２は、注目ピクチャの各画素ブロックの動きベクトルを、時間不連続性判定部４１、空間不連続性判定部４３、及び、総合判定部４４に供給するとともに、注目ピクチャの各画素ブロックの予測残差を、総合判定部４４に供給して、処理は、ステップＳ１１からステップＳ１２に進む。
【０１０５】
ステップＳ１２では、総合判定部４４は、注目ピクチャの画素ブロックのうちの、まだ、注目ブロックに選択していない画素ブロックの１つを、注目ブロックに選択して、処理は、ステップＳ１３に進む。
【０１０６】
ステップＳ１３では、総合判定部４４は、動きベクトル検出部３２からの注目ブロックの予測残差が、予測残差の閾値THe以上であるかどうかを判定する。
【０１０７】
ここで、動きベクトルは、その大きさが大きくなるほど、誤差が大きくなる傾向があり、動きベクトルの誤差が大きい場合には、予測残差も大きくなる傾向がある。
【０１０８】
そこで、総合判定部４４がステップＳ１３で用いる予測残差の閾値THeとしては、注目ブロックの動きベクトルMV=(vx,vy)の大きさに対応する値を採用することができる。
【０１０９】
すなわち、注目ブロックの動きベクトルMV=(vx,vy)が、それほど大きくない場合、具体的には、例えば、x成分及びy成分それぞれの絶対値の和|vx|+|vy|が、所定の閾値としての、例えば、10より小さい場合、閾値THeとしては、小さい値である、例えば、2.5×Nを採用することができる。
【０１１０】
ここで、Nは、画素ブロックの画素数を表す。
【０１１１】
一方、注目ブロックの動きベクトルMV=(vx,vy)が大きい場合、具体的には、例えば、x成分及びy成分それぞれの絶対値の和|vx|+|vy|が、所定の閾値としての10以上である場合、閾値THeとしては、上述の2.5×Nより大きい値である、例えば、5×Nを採用することができる。
【０１１２】
なお、閾値THeとしては、注目ブロックの動きベクトルMVの大きさに対応する値の他、例えば、シミュレーション等によってあらかじめ求められた固定値を採用することができる。
【０１１３】
ステップＳ１３において、注目ブロックの予測残差が閾値THe以上でないと判定された場合、処理は、ステップＳ１４に進み、総合判定部４４は、注目ブロックが、不連続ブロックでないと判定する。そして、総合判定部４４は、注目ブロックについて、不連続ブロックでない旨の判定結果を表す不連続情報を、不連続情報並び替え部２６（図１）に供給して、処理は、ステップＳ１４からステップＳ２４に進む。
【０１１４】
また、ステップＳ１３において、注目ブロックの予測残差が閾値THe以上であると判定された場合、注目ブロックが不連続ブロックである可能性があるので、処理は、ステップＳ１５に進み、以下、ステップＳ１５ないしＳ２０において、注目ブロックの時間不連続性を判定する時間不連続性判定の処理が行われる。
【０１１５】
すなわち、時間不連続性判定の処理では、ステップＳ１５において、時間不連続性判定部４１は、ベクトルメモリ４２から、注目ブロックに対する対応ブロックの動きベクトルMV'と連続性値MVc'とを読み出し、処理は、ステップＳ１６に進む。
【０１１６】
ステップＳ１６では、時間不連続性判定部４１は、注目ブロックの動きベクトルMV=(vx,vy)と、対応ブロックの動きベクトルMV'=(vx',vy')とが相違している程度である相違度としてのxy差分和|vx-vx'|+|vy-vy'|を算出し、処理は、ステップＳ１７に進む。
【０１１７】
ステップＳ１７では、時間不連続性判定部４１は、相違度が、閾値THd以上であるかどうかを判定する。
【０１１８】
ここで、閾値THdとしては、注目ブロックの動きベクトルMV=(vx,vy)の大きさに対応する値としての、例えば、1+(|vx|+|vy|)/4等を採用することができる。
【０１１９】
また、閾値THdとしては、注目ブロックの動きベクトルMVの大きさに対応する値の他、例えば、シミュレーション等によってあらかじめ求められた固定値を採用することができる。
【０１２０】
ステップＳ１７において、相違度が、閾値THd以上であると判定された場合、すなわち、注目ブロックの動きベクトルMVと、対応ブロックの動きベクトルMV'とが似ていない場合、処理は、ステップＳ１８に進み、時間不連続性判定部４１は、注目ブロックの連続性値MVcを、0にセットする（連続性値MVcをリセットする）。
【０１２１】
さらに、時間不連続性判定部４１は、注目ブロックの動きベクトルMVと連続性値MVcとを、注目ブロックの、注目ピクチャ上の位置に対応するベクトルメモリ４２のアドレスに書き込み、処理は、ステップＳ１８からステップＳ２０に進む。
【０１２２】
ここで、以上のように、注目ブロックの動きベクトルMVと連続性値MVcとを、注目ブロックの、注目ピクチャ上の位置に対応するベクトルメモリ４２のアドレスに書き込むことで、上述のステップＳ１５では、注目ブロックから、その注目ブロックの動きベクトルだけずれた位置に対応するベクトルメモリ４２のアドレスから、動きベクトルと連続性値とを読み出すことで、対応ブロックの動きベクトルMV'と連続性値MVc'とを得ることができる。
【０１２３】
なお、ベクトルメモリ４２は、例えば、複数のバンクを有し、注目ブロックの動きベクトルMVと連続性値MVcの書き込みは、対応ブロックの動きベクトルMV'と連続性値MVc'が記憶されているバンクとは異なるバンクに対して行われる。
【０１２４】
一方、ステップＳ１７において、相違度が、閾値THd以上でないと判定された場合、すなわち、注目ブロックの動きベクトルMVと、対応ブロックの動きベクトルMV'とが似ている場合、処理は、ステップＳ１９に進み、時間不連続性判定部４１は、対応ブロックの連続性値MVc'を、1だけインクリメントし、そのインクリメント後の値を、注目ブロックの連続性値MVc=MVc'+1とする。
【０１２５】
さらに、時間不連続性判定部４１は、注目ブロックの動きベクトルMVと連続性値MVcとを、注目ブロックの、注目ピクチャ上の位置に対応するベクトルメモリ４２のアドレスに書き込み、処理は、ステップＳ１９からステップＳ２０に進む。
【０１２６】
ステップＳ２０では、時間不連続性判定部４１は、注目ブロックの連続性値MVcが、閾値THcより小さいかどうかを判定する。
【０１２７】
ここで、閾値THcとしては、例えば、シミュレーション等によってあらかじめ求められた固定値としての、例えば、3等を採用することができる。
【０１２８】
ステップＳ２０において、注目ブロックの連続性値MVcが、閾値THcより小さくないと判定された場合、時間連続性判定部４１は、注目ブロックに、時間不連続性がないと判定し、その判定結果を、総合判定部４４に供給して、処理は、ステップＳ１４に進む。
【０１２９】
時間連続性判定部４１から、時間不連続性がない旨の判定結果の供給を受けた総合判定部４４は、ステップＳ１４において、注目ブロックが、不連続ブロックでないと判定する。そして、総合判定部４４は、注目ブロックについて、不連続ブロックでない旨の判定結果を表す不連続情報を、不連続情報並び替え部２６に供給して、処理は、ステップＳ１４からステップＳ２４に進む。
【０１３０】
また、ステップＳ２０において、注目ブロックの連続性値MVcが、閾値THcより小さいと判定された場合、時間連続性判定部４１は、注目ブロックに、時間不連続性があると判定し、その判定結果を、総合判定部４４に供給する。
【０１３１】
さらに、この場合、注目ブロックが不連続ブロックである可能性があるため、処理は、ステップＳ２０からステップＳ２１に進み、以下、ステップＳ２１及びＳ２２において、注目ブロックの空間不連続性を判定する空間不連続性判定の処理が行われる。
【０１３２】
すなわち、空間不連続性判定の処理では、ステップＳ２１において、空間不連続性判定部４３は、動きベクトル検出部３２からの注目ピクチャの各画素ブロックの動きベクトルを用い、図４で説明したように、注目ブロックと８つの周辺ブロックとの９つの画素ブロックのうちの、上下又は左右に隣接する２つの画素ブロックの動きベクトルどうしの相違度としてのxy差分和を算出する。
【０１３３】
さらに、空間不連続性判定部４３は、相違度が、相違度の閾値THd'以下となる２つの画素ブロックのセットであるブロックセットの数をカウントし、処理は、ステップＳ２１からステップＳ２２に進む。
【０１３４】
ここで、閾値THd'としては、例えば、シミュレーション等によってあらかじめ求められた固定値としての、例えば、2等を採用することができる。
【０１３５】
ステップＳ２２では、空間不連続性判定部４３は、相違度が閾値THd'以下となるブロックセット（以下、非相違ブロックセットともいう）の数が、閾値THn以下であるかどうかを判定する。
【０１３６】
ここで、閾値THnとしては、例えば、シミュレーション等によってあらかじめ求められた固定値としての、例えば、2等を採用することができる。
【０１３７】
ステップＳ２２において、非相違ブロックセットの数が、閾値THn以下でないと判定された場合、すなわち、例えば、注目ブロックと８つの周辺ブロックとの９つの画素ブロックそれぞれの動きベクトルが似ている場合、空間不連続性判定部４３は、注目ブロックに、空間不連続性がないと判定し、その判定結果を、総合判定部４４に供給して、処理は、ステップＳ１４に進む。
【０１３８】
空間連続性判定部４３から、空間不連続性がない旨の判定結果の供給を受けた総合判定部４４は、ステップＳ１４において、注目ブロックが、不連続ブロックでないと判定する。そして、総合判定部４４は、注目ブロックについて、不連続ブロックでない旨の判定結果を表す不連続情報を、不連続情報並び替え部２６に供給して、処理は、ステップＳ１４からステップＳ２４に進む。
【０１３９】
また、ステップＳ２２において、非相違ブロックセットの数が、閾値THn以下であると判定された場合、すなわち、例えば、注目ブロックと８つの周辺ブロックとの９つの画素ブロックそれぞれの動きベクトルが似ていない場合、空間不連続性判定部４３は、注目ブロックに、空間不連続性があると判定し、その判定結果を、総合判定部４４に供給して、処理は、ステップＳ２３に進む。
【０１４０】
時間連続性判定部４１からの、時間不連続性がある（時間方向の連続性がない）旨の判定結果と、空間連続性判定部４３からの、空間不連続性がある（空間方向の連続性がない）旨の判定結果との供給を受けた総合判定部４４は、ステップＳ２３において、注目ブロックが、不連続ブロックであると判定する。そして、総合判定部４４は、注目ブロックについて、不連続ブロックである旨の判定結果を表す不連続情報を、不連続情報並び替え部２６に供給して、処理は、ステップＳ２３からステップＳ２４に進む。
【０１４１】
ステップＳ２４では、総合判定部４４は、注目ピクチャのすべての画素ブロックを、注目ブロックに選択したかどうかを判定する。
【０１４２】
ステップＳ２４において、注目ピクチャの画素ブロックの中に、注目ブロックに選択していない画素ブロックがあると判定された場合、処理は、ステップＳ１２に戻り、総合判定部４４は、注目ピクチャの画素ブロックのうちの、まだ、注目ブロックに選択していない画素ブロックの１つを、注目ブロックに新たに選択して、以下、同様の処理が繰り返される。
【０１４３】
また、ステップＳ２４において、注目ピクチャのすべての画素ブロックを、注目ブロックに選択したと判定された場合、注目ピクチャに対する不連続性判定処理は終了する。
【０１４４】
上述したように、量子化制御部１７（図１）では、対象マクロブロックが、不連続ブロックである場合に、そのような不連続ブロックについて、符号量制御部１９によって現ピクチャの目標符号量に応じて設定される量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、対象マクロブロックの量子化が制御される。
【０１４５】
その結果、不連続ブロックでないマクロブロック（以下、非不連続ブロックともいう）については、符号量制御部１９によって現ピクチャの目標符号量に応じて設定される量子化パラメータに従って行われる量子化よりも細かい量子化が行われる。
【０１４６】
すなわち、量子化制御部１７（図１）では、不連続ブロックについて、現ピクチャの目標符号量に応じて設定される量子化パラメータに従って行われる量子化よりも粗い量子化が行われるように、その不連続ブロックの量子化が制御される結果、現ピクチャの符号量を目標符号量にするために、非不連続ブロックについては、現ピクチャの目標符号量に応じて設定される量子化パラメータに従って行われる量子化よりも細かい量子化が行われるように、その非不連続ブロックの量子化が制御される。
【０１４７】
したがって、ピクチャにおいて、前述したように、紙吹雪等の、動きの連続性がない領域を背景として、人物等の、視聴者が比較的注目する前景が映っている場合には、動きの連続性がない背景については、粗い量子化が行われるとともに、背景以外の領域、つまり前景については、細かい量子化が行われる。
【０１４８】
その結果、復号画像において、動きの連続性がない領域以外の領域（ここでは、視聴者が比較的注目する前景）の画質（主観的な画質）を改善することができる。
【０１４９】
なお、図５では、ステップＳ１３において、注目ブロックの予測残差が閾値THe以上であるかどうかを判定し、その後、時間不連続性判定の処理（ステップＳ１５ないしＳ２０）と、空間不連続性判定の処理（ステップＳ２１及びＳ２２）とを行うこととしたが、ステップＳ１３での予測残差の判定の処理は、行わなくても良い。
【０１５０】
すなわち、図５では、ステップＳ１３において、画素ブロックの予測残差が小さいかどうかを判定し、予測残差が小さくない画素ブロックのみを、時間不連続性判定、及び、空間不連続性判定の処理の対象とすることとしたが、予測残差にかかわらず、すべての画素ブロックを、時間不連続性判定、及び、空間不連続性判定の処理の対象とすることができる。
【０１５１】
また、図５の不連続性判定処理では、予測残差が閾値THe以上であり、連続性値MVcが閾値THcより小さく（時間不連続性があり）、かつ、非相違ブロックセット（相違度が閾値THd'以下となるブロックセット）の数が閾値THn以下である（空間不連続性がある）画素ブロックを、不連続ブロックであると判定することとしたが、不連続性判定処理では、その他の、少なくとも、動きが時間方向に不連続な画素ブロック（少なくとも、時間不連続性があるブロック）を、不連続ブロックであると判定することができる。
【０１５２】
すなわち、不連続性判定処理では、例えば、画素ブロックに、時間不連続性がある場合、つまり、画素ブロックの連続性値MVcが、閾値THcより小さい場合に、そのことのみをもって（予測残差、及び、空間不連続性の有無にかかわらず）、画素ブロックを、不連続ブロックであると判定することができる。
【０１５３】
この場合、不連続性判定部２５（図２）は、空間連続性判定部４３、及び、総合判定部４４を設けずに構成することができる。
【０１５４】
また、不連続性判定処理では、例えば、画素ブロックに、時間不連続性があり、かつ、空間不連続性もある場合、つまり、画素ブロックの連続性値MVcが、閾値THcより小さく、かつ、その画素ブロックについての非相違ブロックセットの数が、閾値THn以下である場合に、そのことのみをもって（予測残差にかからわず）、画素ブロックを、不連続ブロックであると判定することができる。
【０１５５】
さらに、不連続性判定処理では、例えば、画素ブロックに、時間不連続性があり、かつ、予測残差が、閾値THe以上である場合に、そのことのみをもって（空間不連続性の有無にかからわず）、画素ブロックを、不連続ブロックであると判定することができる。
【０１５６】
なお、不連続性判定処理において、画素ブロックに、時間不連続性があるだけでなく、空間不連続性もある場合に、画素ブロックを、不連続ブロックであると判定することにより、ピクチャに、テロップが映っているときの、そのテロップの画質が劣化することを防止することができる。
【０１５７】
すなわち、本件発明者が行ったシミュレーションによれば、静止しているテロップが、紙吹雪の中に映っているピクチャについて、画素ブロックに、時間不連続性があれば、空間不連続性の有無にかかわらず、その画素ブロックを、不連続ブロックであると判定すると、テロップを含む画素ブロックが、不連続ブロックであると判定され、テロップを含む画素ブロックに対して、粗い量子化が行われることにより、復号画像において、テロップの画質が劣化することが確認された。
【０１５８】
画素ブロックに、時間不連続性、及び、空間不連続性の両方がある場合に、その画素ブロックを、不連続ブロックであると判定することにより、上述のようなテロップの画質が劣化することを防止することができる。
【０１５９】
すなわち、画素ブロックに、時間不連続性、及び、空間不連続性の両方がある場合に、その画素ブロックを、不連続ブロックであると判定すると、テロップを含む画素ブロックについては、空間不連続性がないと判定され、ひいては、不連続ブロックでないと判定されることにより、粗い量子化は行われず、その結果、上述のようなテロップの画質が劣化することを防止することができる。
【０１６０】
なお、図５の不連続性判定処理では、予測残差の判定（ステップＳ１３）を行い、その後、時間不連続性判定（ステップＳ１５ないしＳ２０）、及び、空間不連続性判定（ステップＳ２１及びＳ２２）を、その順で行うこととしたが、予測残差の判定、時間不連続性判定、及び、空間不連続性判定は、任意の順序で行うことができる。
【０１６１】
また、予測残差の判定、時間不連続性判定、及び、空間不連続性判定は、そのうちの２以上を並列に行うことができる。
【０１６２】
［量子化オフセット量設定部２７］
【０１６３】
図６は、図１の量子化オフセット量設定部２７が行う、量子化オフセット量を設定する量子化オフセット量設定処理を説明するフローチャートである。
【０１６４】
量子化オフセット量設定部２７は、不連続情報並び替え部２６から、現ピクチャの画素ブロックとしてのマクロブロックすべての不連続情報が供給されると、量子化オフセット量設定処理を開始する。
【０１６５】
量子化オフセット量設定処理では、ステップＳ３１において、量子化オフセット量設定部２７は、不連続情報並び替え部２６から供給される、現ピクチャの各画素ブロックの不連続情報を取得（受信）して、処理は、ステップＳ３２に進む。
【０１６６】
ステップＳ３２では、量子化オフセット量設定部２７は、現ピクチャの各画素ブロックについて、不連続情報並び替え部２６からの不連続情報に基づき、量子化パラメータを変更（調整）するためのオフセットである量子化オフセット量を設定し、量子化部１６（図１）の量子化制御部１７に供給して、量子化オフセット量設定処理を終了する。
【０１６７】
すなわち、量子化オフセット量設定部２７は、画素ブロックの不連続情報が、不連続ブロックであることを表している場合、その画素ブロック（不連続ブロックである画素ブロック）について、符号量制御部１９（図１）で設定される量子化パラメータに従った量子化よりも、粗い量子化が行われるように量子化パラメータを調整するために、量子化オフセット量として、例えば、あらかじめ定められた正の値等を設定する。
【０１６８】
また、量子化オフセット量設定部２７は、画素ブロックの不連続情報が、不連続ブロックでないことを表している場合、その画素ブロック（不連続ブロックでない画素ブロック）について、例えば、符号量制御部１９で設定される量子化パラメータを変更しない値である0を、量子化オフセット量として設定する。
【０１６９】
なお、不連続ブロックである画素ブロックに設定する量子化オフセット量は、固定値とすることもできるし、現ピクチャを構成する画素ブロック（の数）に対する不連続ブロック（の数）の割合等に応じた値とすることもできる。
【０１７０】
図７は、不連続ブロックに設定する量子化オフセット量を、現ピクチャを構成する画素ブロックに対する不連続ブロックの割合に応じた値とする場合の、その不連続ブロックの割合と、量子化オフセット量との関係の例を示すオフセットテーブルを示す図である。
【０１７１】
図７のオフセットテーブルによれば、現ピクチャの不連続ブロックの割合が大になるほど、不連続ブロックには、大きな値の量子化オフセット量が設定される。
【０１７２】
したがって、現ピクチャの不連続ブロックの割合が大であるほど、不連続ブロックについては、粗い量子化が行われる。
【０１７３】
ここで、不連続ブロックについて、現ピクチャの不連続ブロックの割合が大であるほど、粗い量子化が行われるということは、逆に言えば、現ピクチャの不連続ブロックの割合が小である場合には、不連続ブロックについて、あまり粗い量子化は行われない（符号量制御部１９で設定される量子化パラメータに従った量子化が行われる）。
【０１７４】
この場合、例えば、自然の風景のシーンのピクチャにおいて、一部の小領域に、動きが不連続な滝が映っており、他の領域の動きが不連続でないときに、復号画像において、滝の部分の画質が、不自然に劣化することを防止することができる。
【０１７５】
すなわち、上述のように、動きが不連続な滝が映っているピクチャについては、その滝が映っている画素ブロックは、不連続ブロックであると判定される。
【０１７６】
そして、小領域に滝が映っている画素ブロックだけが、不連続ブロックであると判定され、その小領域の画素ブロックについてだけ、粗い量子化が行われると、復号画像において、その粗い量子化が行われた小領域の画質の劣化が目立つことになる。
【０１７７】
そこで、不連続ブロックの割合が小である場合には、不連続ブロックについて、あまり粗い量子化を行わないことで、小領域の画素ブロックについてだけ、粗い量子化が行われることにより生じる、復号画像における、その小領域の画質の劣化を防止することができる。
【０１７８】
［符号量制御部１９］
【０１７９】
図８は、図１の符号量制御部１９が行う符号量制御の処理（符号量制御処理）を説明するフローチャートである。
【０１８０】
ステップＳ４１において、符号量制御部１９は、可変長符号化部１８が出力する、現ピクチャの前に符号化したピクチャの符号化データの符号量等に基づいて、現ピクチャの目標符号量を算出し、処理は、ステップＳ４２に進む。
【０１８１】
ステップＳ４２では、符号量制御部１９は、現ピクチャの目標符号量等に応じて、その現ピクチャの各画素ブロックとしての各マクロブロック（の直交変換係数）について、量子化パラメータQを設定し、量子化部１６（の量子化制御部１７）に供給して、現ピクチャの符号量制御処理を終了する。
【０１８２】
［量子化部１６］
【０１８３】
図９は、図１の量子化部１６が行う量子化の処理（量子化処理）を説明するフローチャートである。
【０１８４】
なお、量子化処理には、量子化部１６が内蔵する量子化制御部１７が行う、量子化部１６による量子化を制御する量子化制御処理が含まれる。
【０１８５】
量子化処理では、ステップＳ５１において、量子化部１６は、直交変換部１５から供給される、現ピクチャの画素ブロックとしてのマクロブロックの直交変換係数を取得（受信）し、処理は、ステップＳ５２に進む。
【０１８６】
ステップＳ５２では、量子化部１６の量子化制御部１７が、符号量制御部１９から供給される、現ピクチャの各画素ブロック（マクロブロック）の量子化パラメータQを取得し、処理は、ステップＳ５３に進む。
【０１８７】
ステップＳ５３では、量子化部１６の量子化制御部１７が、量子化オフセット量設定部２７から供給される、現ピクチャの各画素ブロックの量子化オフセット量を取得する。
【０１８８】
量子化制御部１７が、以上のように、符号量制御部１９からの、現ピクチャの各画素ブロックの量子化パラメータQと、量子化オフセット量設定部２７からの、現ピクチャの各画素ブロックの量子化オフセット量とを取得すると、処理は、ステップＳ５４に進み、現ピクチャの各画素ブロックの量子化ステップMQを算出する量子化制御処理が行われる。
【０１８９】
ステップＳ５４の量子化制御処理では、ステップＳ５４−１において、量子化制御部１７は、現ピクチャの各画素ブロックの量子化パラメータQを、現ピクチャの各画素ブロックの量子化オフセット量だけ変更する。
【０１９０】
すなわち、量子化制御部１７は、現ピクチャの各画素ブロックについて、その画素ブロックの量子化パラメータQに、その画素ブロックの量子化オフセット量を加算することで、量子化パラメータQを変更する。
【０１９１】
さらに、量子化制御部１７は、ステップＳ５４−２において、現ピクチャの画素ブロックすべての量子化オフセット量の平均値（以下、平均オフセット量ともいう）Qaveを求める。
【０１９２】
そして、量子化制御部１７は、ステップＳ５４−３において、現ピクチャの各画素ブロックについて、変更後の量子化パラメータQを用い、その変更後の量子化パラメータQに対応する値の量子化ステップMQを求め、現ピクチャの量子化制御処理を終了する。
【０１９３】
すなわち、量子化制御部１７は、変更後の量子化パラメータQ、及び、平均オフセット量Qaveを用いて、例えば、式MQ＝Q-Qaveに従って、現ピクチャの各画素ブロックの量子化ステップMQを求める。
【０１９４】
ステップＳ５４の量子化制御処理において、以上のように、量子化ステップMQが求められた後、処理は、ステップＳ５５に進み、量子化部１６は、現ピクチャの各画素ブロックの直交変換係数を、量子化制御部１７で求められた量子化ステップMQで量子化し、現ピクチャの量子化処理を終了する。
【０１９５】
なお、図９の量子化制御処理（ステップＳ５４）では、（変更後の）量子化パラメータQを用いた式MQ＝Q-Qaveによって、量子化ステップMQを求めることとしたが、量子化パラメータQを用いて量子化ステップMQを求める方法は、これに限定されるものではない。
【０１９６】
すなわち、量子化パラメータQを用いて量子化ステップMQを求める方法としては、量子化パラメータQとして、符号量制御部１９（図１）が現ピクチャの目標符号量等に応じて設定する量子化パラメータ（以下、基準パラメータともいう）をそのまま用いた場合であっても、その基準パラメータを量子化オフセット量によって変更した変更後の量子化パラメータを用いた場合であっても、現ピクチャの符号量が、目標符号量になるような方法（以下、符号量調整法ともいう）を採用することができる。
【０１９７】
符号量調整法によれば、不連続ブロックの量子化パラメータが、量子化オフセット量によって大きな値に変更され、その結果、不連続ブロックについて、基準パラメータを用いた場合よりも粗い量子化が行われる大きな量子化ステップMQが求められる場合には、現ピクチャの符号量を、目標符号量とするために、不連続ブロックでない画素ブロックについては、基準パラメータを用いた場合よりも細かい量子化が行われる小さな量子化ステップMQが求められる。
【０１９８】
したがって、例えば、ピクチャにおいて、前述したように、紙吹雪等の、動きの連続性がない領域を背景として、人物等の、視聴者が比較的注目する前景が映っている場合には、図１の符号化装置によれば、動きの連続性がない背景が映っている画素ブロックに対して、基準パラメータを用いた場合よりも大きな量子化ステップが求められるが、ピクチャの符号量を、目標符号量とするために、動きの連続性がない領域以外の領域である、視聴者が比較的注目する前景が映っている画素ブロックに対しては、基準パラメータを用いた場合よりも小さな量子化ステップが求められる。
【０１９９】
その結果、動きの連続性がない領域以外の領域の画質を改善することができる。
【０２００】
以上のように、図１の符号化装置では、紙吹雪等の、動きの連続性がない領域について、粗い量子化が行われるように、量子化の制御が行われるので、結果として、動きの連続性がない領域以外の領域については、細かい量子化が行われ、復号画像の主観的な画質を改善することができる。
【０２０１】
［本発明を適用したコンピュータの説明］
【０２０２】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【０２０３】
そこで、図１０は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０２０４】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク１０５やROM１０３に予め記録しておくことができる。
【０２０５】
あるいはまた、プログラムは、リムーバブル記録媒体１１１に格納（記録）しておくことができる。このようなリムーバブル記録媒体１１１は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体１１１としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto Optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
【０２０６】
なお、プログラムは、上述したようなリムーバブル記録媒体１１１からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク１０５にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
【０２０７】
コンピュータは、CPU(Central Processing Unit)１０２を内蔵しており、CPU１０２には、バス１０１を介して、入出力インタフェース１１０が接続されている。
【０２０８】
CPU１０２は、入出力インタフェース１１０を介して、ユーザによって、入力部１０７が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)１０３に格納されているプログラムを実行する。あるいは、CPU１０２は、ハードディスク１０５に格納されたプログラムを、RAM(Random Access Memory)１０４にロードして実行する。
【０２０９】
これにより、CPU１０２は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU１０２は、その処理結果を、必要に応じて、例えば、入出力インタフェース１１０を介して、出力部１０６から出力、あるいは、通信部１０８から送信、さらには、ハードディスク１０５に記録等させる。
【０２１０】
なお、入力部１０７は、キーボードや、マウス、マイク等で構成される。また、出力部１０６は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
【０２１１】
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含む。
【０２１２】
また、プログラムは、１のコンピュータ（プロセッサ）により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【０２１３】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０２１４】
１１  動画像並び替え部，  １２  イントラ予測部，  １３  インター予測部，  １４  モード判定部，  １５  直交変換部，  １６  量子化部，  １７  量子化制御部，  １８  可変長符号化部，  １９  符号量制御部，  ２０  逆量子化部，  ２１  逆直交変換部，  ２２  予測復号部，  ２３  参照フレームメモリ，  ２４  動きベクトル検出部，  ２５  不連続性判定部，  ２６  不連続情報並び替え部，  ２７  量子化オフセット量設定部，  ３１  フレームメモリ，  ３２  動きベクトル検出部，  ３３  判定部，  ４１  時間不連続性判定部，  ４２  ベクトルメモリ，  ４３  空間不連続性判定部，  ４４  総合判定部，  １０１  バス，  １０２  CPU，  １０３  ROM，  １０４  RAM，  １０５  ハードディスク，  １０６  出力部，  １０７  入力部，  １０８  通信部，  １０９  ドライブ，  １１０  入出力インタフェース，  １１１  リムーバブル記録媒体
【図１】
2012156573.tif 000003
【図２】
2012156573.tif 000004
【図３】
2012156573.tif 000005
【図４】
2012156573.tif 000006
【図５】
2012156573.tif 000007
【図６】
2012156573.tif 000008
【図７】
2012156573.tif 000009
【図８】
2012156573.tif 000010
【図９】
2012156573.tif 000011
【図１０】
2012156573.tif 000012