(57)【特許請求の範囲】
【請求項１】
複数のフレームを含む入力動画データを、フレーム内符号化とフレーム間符号化とを用いて符号化する符号化手段と、
所定数のフレームからなる符号化単位の符号量が目標符号量となるように、前記符号化単位に含まれるフレームのうち、まだ符号化されていないフレームについて、フレーム内符号化を行うフレーム内符号化ピクチャとフレーム間符号化を行うフレーム間符号化ピクチャとを含む複数のピクチャタイプ毎に目標符号量を設定する設定処理を前記符号化単位内のフレームの順に繰り返し、前記ピクチャタイプ毎に設定した目標符号量に従って、前記符号化手段により符号化される前記動画データの符号量をフレーム毎に制御する符号量制御手段と、
前記符号化手段により符号化された動画データを復号し、局所復号データを出力する局所復号手段と、
前記入力画像データに含まれる複数のフレームの複雑度をそれぞれ検出する特徴検出手段と、
前記入力動画データにおけるフレーム間の動き量を複数の前記フレームについてそれぞれ検出する動き検出手段と、
前記入力動画データと前記局所復号データとを用いて、複数の前記フレームそれぞれの符号化歪み量を算出する符号化歪み算出手段と、
前記特徴検出手段の出力と、前記動き検出手段の出力と、前記符号化歪み量算出手段の出力とに従い、前記入力動画データにおけるフレーム毎に、前記符号化手段により符号化された動画データにフリッカが発生することを検出するフリッカ検出手段
とを備え、
前記フリッカ検出手段は、前記フリッカが発生することを検出した場合、前記フレーム内符号化ピクチャと前記フレーム間符号化ピクチャの目標符号量をそれぞれ前記設定処理により設定された目標符号量から変更することを特徴とする符号化装置。
【請求項２】
前記フリッカ検出手段は、前記特徴検出手段で検出される複雑度がその基準値より多く、前記動き検出手段で検出される前記フレーム間の動き量がその基準値より少なく、且つ、前記歪み量算出手段で算出される前記符号化歪み量がその基準値より大きい場合に、前記符号化画像にフリッカが発生すると判定することを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記フリッカ検出手段は、前記フリッカが発生することを検出した場合、前記フレーム内符号化ピクチャの目標符号量を少なくし、前記フレーム間符号化ピクチャの目標符号量を増加させることを特徴とする請求項１又は２に記載の符号化装置。
【請求項４】
前記特徴検出手段は、前記入力動画データを直交変換することにより得られる交流成分量を前記複雑度とすることを特徴とする請求項１乃至３の何れか１項に記載の符号化装置。
【請求項５】
前記特徴検出手段は、前記入力動画データを所定サイズに分割したブロックを直交変換することにより交流成分を算出し、全ブロックの前記交流成分の総和を前記複雑度として算出することを特徴とする請求項１乃至３の何れか１項に記載の符号化装置。
【請求項６】
前記動き検出手段は、前記入力動画データの隣接するフレーム間で一方のフレームの画像の座標をずらしながら相関を算出し、前記相関が最も高くなる座標ずれ量を前記動き量として算出することを特徴とする請求項１乃至５の何れか１項に記載の符号化装置。
【請求項７】
前記動き検出手段は、前記入力動画データを画面内で分割したブロック毎に、隣接するフレーム間で一方の画像の座標をずらしながら相関が最も高くなる座標ずれ量を算出し、算出した座標ずれ量の全ブロックの総和を前記動き量として算出することを特徴とする請求項１乃至５の何れか１項に記載の符号化装置。
【請求項８】
前記符号化歪み量算出手段は、前記入力動画データと前記局所復号画像から前記局所復号画像のＰＳＮＲ（Peak Signal to Noise Ratio）を算出する手段であることを特徴とする請求項１乃至７の何れか１項に記載の符号化装置。
【請求項９】
前記フレーム内符号化ピクチャはＩピクチャであり、前記フレーム間符号化ピクチャはＰピクチャまたはＢピクチャであることを特徴とする請求項１乃至８の何れか１項に記載の符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像を圧縮符号化する符号化装置に関する。
【背景技術】
【０００２】
近年のマルティメディアの発展に伴い、様々な動画像圧縮符号化方式が提案されている。代表的なものに、ＭＰＥＧ−１，２，４及びＨ．２６Ｌがある。これらの符号化方式は、フレーム内符号化とフレーム間予測符号化を併用することで、高い圧縮率を実現する。フレーム間予測符号化では、動き補償と動き予測を加えることで、フレーム間の差分値を符号化する単なるフレーム間符号化よりも高い圧縮率を実現できる。エラーの伝搬を避けるために、所定間隔のフレームをフレーム内符号化のピクチャタイプで圧縮符号化し、その間の複数のフレームを、フレーム間予測符号化のピクチャタイプで圧縮符号化する。フレーム内符号化されるフレームはＩピクチャと呼ばれる。フレーム間予測符号化されるフレームの内、片方向の予測を使用するフレームは、Ｐピクチャと呼ばれ、両方向の予測を使用するフレームはＢピクチャと呼ばれる。勿論、フィールド単位の符号化もあるが、ここでは、フレーム単位の符号化で説明する。
【０００３】
動画像を圧縮符号化する場合、その発生符号量は、各ピクチャの空間周波数特性、量子化スケール値、及びシーン間の変化の程度により、大きく異なる。通常、発生符号量を抑制しつつ、一定以上の画質を維持する符号量制御技術が採用されている。例えば、符号量制御アルゴリズムの１つとして、ＴＭ５（Ｔｅｓｔ  Ｍｏｄｅｌ  ５）が知られている(特許文献１)。
【０００４】
ＴＭ５による符号量制御アルゴリズムは、ＧＯＰ（Group Of Picture）毎にビットレートが一定になるように、以下に挙げる３ステップで符号量を制御する。ＧＯＰは例えば、１６個のピクチャからなる。
【０００５】
（ステップ１）
今から符号化を行うピクチャの目標符号量を決定する。現在のＧＯＰにおいて利用可能な符号量であるＲgopが以下の式（１）により演算される。即ち、
Ｒgop = (ni+np+nb)*(bits_rate/picture_rate) ・・・（１）
ここで、ni,np,nbはそれぞれ、現ＧＯＰにおけるＩピクチャ、Ｐピクチャ及びＢピクチャの残りピクチャ数である。bits_rateは目標ビットレートを示す。picture_rateはピクチャレートを示す。
【０００６】
更に、Ｉピクチャ、Ｐピクチャ及びＢピクチャ毎に符号化結果からピクチャの複雑度Ｘｉ，Ｘｐ，Ｘｂを、以下の式（２）に従い算出する。即ち、
Ｘi=Ｒi*Ｑi 
Ｘp=Ｒp*Ｑp        （２）
Ｘb=Ｒb*Ｑb
ここで、複雑度Ｘi，Ｘｐ，Ｘｂは、コンプレキシティ（Complexity）とも呼ばれる。Ｒi、Ｒp及びＲbはそれぞれ、Ｉピクチャ、Ｐピクチャ及びＢピクチャを符号化した結果得られる符号量である。Ｑi、Ｑp及びＱbはそれぞれ、Ｉピクチャ、Ｐピクチャ及びＢピクチャ内のすべてのマクロブロックにおけるＱスケール（量子化スケール）の平均値である。
【０００７】
式（１）及び（２）から、Ｉピクチャ、Ｐピクチャ及びＢピクチャそれぞれについての目標符号量Ｔｉ，Ｔｐ，Ｔｂは、式（３）で求めることができる。即ち、
Ｔi=max{(Ｒgop/(1+((Ｎp*Ｘp)/(Ｘi*Ｋp))+((Ｎb*Ｘb)/(Ｘi*Ｋb)))),(bit_rate/(8*picture_rate))}
Ｔp=max{(Ｒgop/(Ｎp+(Ｎb*Ｋp*Ｘb)/(Ｋb*Ｘp))),(bit_rate/(8*picture_rate))}      （３）
Ｔb=max{(Ｒgop/(Ｎb+(Ｎp*Ｋb*Ｘp)/(Ｋp*Ｘb))),(bit_rate/(8*picture_rate))}
ただし、Ｎｐ及びＮｂは、現GOP内のそれぞれPピクチャ及びBピクチャの残りの枚数を示す。定数Ｋｐ＝１．０、Ｋｂ＝１．４である。
【０００８】
（ステップ２）
Ｉピクチャ、Ｐピクチャ及びＢピクチャ毎に仮想バッファを使用し、式（３）で求めた目標符号量と発生符号量との差分を管理する。各仮想バッファのデータ蓄積量に基づき、実際の発生符号量が目標符号量に近づくように、次にエンコードするマクロブロックについて、Ｑスケールの参照値が設定される。例えば、現在のピクチャタイプがPピクチャの場合には、目標符号量と発生符号量との差分は、次の（４）式に従う演算処理により求めることができる。即ち、
ｄp,j=ｄp,0+Ｂp,j-1-((Ｔp*(j-1))/ＭＢ_cnt)      （４）
ここで、添字ｊはピクチャ内のマクロブロックの番号を示す。ｄp,0は仮想バッファの初期フルネスを示す。Ｂp，jはj番目のマクロブロックまでの総符号量を示す。ＭＢ_cntはピクチャ内のマクロブロック数を示す。
【０００９】
次に、dp,j(以後、「dj」と記載する)を用いて、j番目のマクロブロックにおけるＱスケールの参照値を求める。その結果は、下記式（５）に示すように、
Ｑj=(dj*31)/r            （５）
となり、ここで、
r = 2*bits_rate/picture_rate        （６）
である。
【００１０】
（ステップ３）
復号画像の画質が視覚的に良好になるように、エンコード対象のマクロブロックの空間アクティビティに基づいて、量子化スケールを最終的に決定する。具体的には、
ACTj =1+min(vblk1,vblk2,……,vblk8)          （７）
vblk1〜vblk4は、フレーム構造のマクロブロックにおける8×8のサブブロックにおける空間アクティビティを示す。vblk5〜vblk8は、フィールド構造のマクロブロックにおける８×８のサブブロックの空間アクティビティを示す。空間アクティビチィ自体は、以下の式（８），（９）により求めることができる。即ち、
vblk=Σ(ＰI-Ｐbar)2            （８）
Pbar=(1/64)*ΣＰi              （９）
ここで、Ｐｉはｉ番目のマクロブロックにおける画素値である。式（８），（９）中のΣはi=1〜64の累積加算を示す。
【００１１】
式（７）で求めたACTjを以下の式（１０）により正規化する。即ち、
N_ACTj=(2*ACTj+AVG_ACT)/(ACTj+2*AVG_ACT)    （１０）
ここで、AVG_ACTは、以前に符号化したピクチャにおけるACTjの参照値である。最終的に量子化スケール（Ｑスケール値）MQUANTjは、以下の式（１１）により求められる。即ち、
MQUANTj=Qj *N_ACTj      （１１）
とする。
【００１２】
以上のＴＭ５のアルゴリズムによれば、ステップ１の処理によりIピクチャに対して多くの符号量を割り当てている。更に、ピクチャ内においては視覚的に劣化の目立ちやすい平坦部(空間アクティビティが低い部分)に符号量が多く配分されるようになる。このような符号量制御及び量子化制御により、予め定めたビットレート内で、画質の劣化を抑えることができる。
【００１３】
この符号量制御アルゴリズムは、フレーム内符号化ピクチャとフレーム間符号化ピクチャに対する符号量のバランスをとることで、高画質化を実現する。しかし、難易度の高い画像に対しては、符号化後の輝度ピークがピクチャタイプ毎に変動し、それが、「フリッカ」とよばれる視覚劣化を発生することが知られている。このフリッカは、動画として再生した場合にちらつきとして観測され、視覚的な妨害となる。
【００１４】
この種のフリッカを低減させる方法が特許文献１に記載されている。ブロック単位に入力画像を分析し、その分析結果に基づき重み係数を決定し、重み係数とウェーブレット変換係数とを乗算することで、ブロックごとの画質を制御する。
【００１５】
特許文献２には、ゲインアップ時に多くのフリッカが発生しやすいとの考えの下、ゲインアップに連動してフィルタ特性をアップすることにより、ゲインアップに由来するランダムノイズを除去してフリッカを抑制することが記載されている。特許文献３には、カメラにおけるゲインに従い、符号量と平滑化処理の強度を制御する技術が記載されている。
【特許文献１】特開２００１−３２６９３６号公報
【特許文献２】国際公開ＷＯ９７／０５７４５号公報
【特許文献３】特開２００７−１３４８８０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
図２は、フレーム内符号化とフレーム間符号化を併用する符号化方式におけるフリッカ発生のメカニズムを示す。図２（Ａ）は、Ｉピクチャからの再生信号のレベルの時間変化を示す。横軸は時間（又はフレーム）を示し、縦軸は、再生映像信号レベルを示す。フラットな映像信号に重畳するノイズ成分のピーク輝度は、フレーム内符号化によりある程度、再構成可能である。これは、上述した符号量制御アルゴリズムで、Ｉピクチャに対する符号量割り当てが、他のピクチャタイプに比べて多いことに起因する。
【００１７】
図２（Ｂ）は、Ｐピクチャ及びＢピクチャのようなフレーム間符号化されたピクチャの再生信号のレベルの時間変化を示す。横軸は時間（又はフレーム）を示し、縦軸は、再生映像信号レベルを示す。複雑度の高い画像はフレーム間の相関が低くなるので、通常の符号化ではＰピクチャ及びＢピクチャのフレーム間差分情報量が増加する。その結果、符号化による映像信号の劣化が生じ、輝度のピークを再構成できなくなる。図２（Ｂ）では、図２（Ａ）に示すＩピクチャに比べ、ピーク輝度に差が生じている。これにより、図２（Ｃ）に示すように、動画再生時に輝度フリッカが発生する。横軸は時間（又はフレーム）を示し、縦軸は、再生映像信号レベルを示す。
【００１８】
ただし、ピーク輝度差が大きいもの全てが、フリッカとして感じられるわけではない。人間の視覚特性は、動きの大きい画像の劣化よりも動きの小さい画像の劣化を検知しやすい。静止画で平坦部がざわざわしているのが気になるのはそのためである。そのため、動きの大きい画像ではピーク輝度差は検知できず、フリッカとして感じることが少ない。動きのある画像よりも動きの小さい画像でピーク輝度差が生じると、フリッカとして目立ってしまう。
【００１９】
このようなフリッカに対して特許文献１に記載の技術を適用すると、マクロブロックといった細かい単位でのフリッカ低減は可能となる。しかし、画像全体として見たときに、上述したピーク輝度差を抑えることは難しい。
【００２０】
また、特許文献２に記載されるようなフィルタ特性を変更する技術は、一般的な低Ｓ／Ｎ時の符号化歪低減手法のひとつであり、部分的な効果は期待できる。しかし、フィルタのみによって上述したような輝度フリッカを除去するためには、フィルタ強度を十分に上げなければならない。フィルタ強度を上げると、解像度低下が大きくなり、残像が発生してしまい、却って画質の劣化を起こしてしまう。
【００２１】
本発明は、このような従来の問題点を解決するものであり、フリッカが抑制された高画質の符号化信号を出力する符号化装置を提示することを目的とする。
【課題を解決するための手段】
【００２２】
本発明に係る符号化装置は、複数のフレームを含む入力動画データを、フレーム内符号化とフレーム間符号化とを用いて符号化する符号化手段と、所定数のフレームからなる符号化単位の符号量が目標符号量となるように、前記符号化単位に含まれるフレームのうち、まだ符号化されていないフレームについて、フレーム内符号化を行うフレーム内符号化ピクチャとフレーム間符号化を行うフレーム間符号化ピクチャとを含む複数のピクチャタイプ毎に目標符号量を設定する設定処理を前記符号化単位内のフレームの順に繰り返し、前記ピクチャタイプ毎に設定した目標符号量に従って、前記符号化手段により符号化される前記動画データの符号量をフレーム毎に制御する符号量制御手段と、前記符号化手段により符号化された動画データを復号し、局所復号データを出力する局所復号手段と、前記入力画像データに含まれる複数のフレームの複雑度をそれぞれ検出する特徴検出手段と、前記入力動画データにおけるフレーム間の動き量を複数の前記フレームについてそれぞれ検出する動き検出手段と、前記入力動画データと前記局所復号データとを用いて、複数の前記フレームそれぞれの符号化歪み量を算出する符号化歪み算出手段と、前記特徴検出手段の出力と、前記動き検出手段の出力と、前記符号化歪み量算出手段の出力とに従い、前記入力動画データにおけるフレーム毎に、前記符号化手段により符号化された動画データにフリッカが発生することを検出するフリッカ検出手段とを備え、前記フリッカ検出手段は、前記フリッカが発生することを検出した場合、前記フレーム内符号化ピクチャと前記フレーム間符号化ピクチャの目標符号量をそれぞれ前記設定処理により設定された目標符号量から変更することを特徴とする。
【発明の効果】
【００２３】
本発明では、符号化に先立ち再生時にフリッカが発生しそうな画像を検出し、そのような画像に対してフレーム内符号化ピクチャとフレーム間符号化ピクチャに与える符号量比率を変更する。これにより、フリッカが抑制された符号化画像データを生成できる。
【発明を実施するための最良の形態】
【００２４】
以下、図面を参照して、本発明の実施例を詳細に説明する。
【実施例１】
【００２５】
図１は、本発明の一実施例の概略構成ブロック図を示す。図３は、本実施例における目標符号量を説明する模式図である。
【００２６】
入力端子１０には、動画像を構成する画像データが画面順、すなわちフレーム順で外部から入力する。その画像データは、符号化方式に応じたサイズでブロック化されている。ＭＰＥＧでは、ブロックサイズは、１６画素×１６ライン又は８画素×８ラインである。本実施例では、ＭＰＥＧ方式を想定しており、最小サイズの基本的なブロックのサイズは、８画素×８ラインからなり、マクロブロックが１６画素×１６ラインからなる。
【００２７】
フレーム並べ替え装置１２は、入力端子１０から入力する画像データを、符号化タイプに応じたピクチャタイプ順にフレーム単位で並び替える。フレーム並べ替え装置１２は、並び替えた各フレームの画像データをブロック順に加減算器１４、動き予測動き補償装置３４及びＰＳＮＲ（Peak Signal to Noise Ratio）算出装置４６に出力する。
【００２８】
加減算器１４は、画面内符号化、すなわちフレーム内符号化（イントラ符号化）のときには、フレーム並べ替え装置１２からの画像データをそのまま直交変換器１６に出力する。加減算器１４は、画面間予測符号化、すなわちフレーム間予測符号化（インター符号化）のときには、フレーム並べ替え装置１２からの画像データから後述する動き補償された予測値を減算し、差分値を直交変換器１６に出力する。
【００２９】
直交変換器１６は、加減算器１４からの画像データを、マクロブロック単位で例えば離散コサイン変換等の直交変換方式で直交変換し、変換係数データを量子化器１８に出力する。量子化器１８は、直交変換器１６からの変換係数データを指定された量子化スケールで量子化する。可変長符号化装置２０は、量子化器１８からの量子化された変換係数データをハフマン符号化等の可変長符号化方式で符号化する。可変長符号化装置２０から出力される符号データは、バッファ２２に一時蓄積された後、出力端子２４から外部に出力される。後述するように、バッファ２２に記憶されている符号データ量は、符号量制御のために参照される。
【００３０】
量子化器１８の出力データは、動き予測及び動き補償を使ったフレーム間予測符号化のために、ローカルで復号化される。即ち、逆量子化器２６は、量子化器１８の出力データを逆量子化する。逆直交変換器２８は、逆量子化器２６の出力データを逆直交変換する。逆直交変換器２８の出力データは、復号化された画像データ（イントラ符号化の場合）又は差分画像データ（インター符号化の場合）である。加算器３０は、イントラ符号化の場合には、逆直交変換器２８の出力データをそのまま出力する。加算器３０は、インター符号化の場合には、逆直交変換器２８の出力データに予測値を加算して出力する。この加算により、差分値から画像値に戻される。
【００３１】
ビデオバッファ３２は、加算器３０から出力される局所復号画像データを複数フレーム分、動き予測及び動き補償のために一時記憶する。ビデオバッファ３２は数フレーム分の記憶容量を具備する。動き予測動き補償装置３４は、フレーム並び替え装置１２からの現フレームの画像データをビデオバッファ３２のフレーム間予測のための参照フレームと対比して、動きベクトルを算出する。そして、動き予測動き補償装置３４は、算出された動きベクトルから、動きを補償した予測値を算出する。算出された予測値が、加減算器１４に供給され、インター符号化の際に閉成されるスイッチ３６を介して加算器３０に印加される。
【００３２】
図示を省略してあるが、動き予測動き補償装置３４が算出した動きベクトル値は、復号化に必要である。そこで、動き予測動き補償装置３４が算出した動きベクトル値はバッファ２２に供給され、符号データに多重されて出力端子２４に出力される。
【００３３】
ここまでで説明した部分は、フレーム内符号化と動き補償のフレーム間符号化を併用する動画圧縮符号化装置で良く知られた構成からなる。
【００３４】
本実施例の特徴的な部分、即ち符号量制御及び量子化制御に関する部分を説明する。
【００３５】
符号量制御装置３８は、バッファ２２に蓄積される符号データ量を参照して、ピクチャ毎の目標符号量を設定する。具体的には、ＧＯＰ内の各ピクチャに対する割り当てビット量を、割り当て対象ピクチャを含めＧＯＰ内でまだ符号化されていないピクチャに対するビット量を基に配分する。この配分をＧＯＰ内の符号化ピクチャ順に繰り返し、ピクチャごとにピクチャ目標符号量を設定する。
【００３６】
量子化制御装置４０は、各ピクチャの目標符号量と実際の発生符号量とを一致させるため、仮想バッファの容量を基に量子化スケールの参照値を決定する。そのために、可変長符号化装置２０から出力されるマクロブロック単位の発生符号量が、バッファ２２から量子化制御装置４０にフィードバックされる。
【００３７】
量子化器１８で使用する量子化パラメータは、量子化スケールの参照値に対して図示しないブロック特徴検出で算出するアクティビティを基に、式（１１）を用いて決定される。このアクティビティが小さい値であれば量子化パラメータを小さくして、多くの符号量が割り当てられるようにする。ここまでの動作は、背景技術で述べたステップ１〜３に相当する。
【００３８】
本実施例では、フリッカ低減のために、フレーム特徴検出装置４２、フレーム動き検出装置４４、ＰＳＮＲ算出装置４６及びフリッカ検出装置４８を設けた。これらの作用を説明する。
【００３９】
フレーム特徴検出装置４２は、フレームアクティビティとして、入力端子１０からの画像データから今から符号化する画像の複雑度を算出する。この実施例では、複雑度として、画像データの交流成分量、好ましくは高周波成分量を採用する。具体的には、１画面の画像データを所定サイズのブロックに分割し、各ブロックに対して分散を算出する。そして、各ブロックで算出した分散を画像の全ブロック数分加算した結果を、高周波成分量とする。なお、分散でなく、ＤＣＴ（離散コサイン変換）やアダマール変換といった周波数変換を行い、その周波数成分で代用しても良い。
【００４０】
フレーム動き検出装置４４は、入力端子１０からの画像データを隣接するフレーム間で相関をとり、今から符号化する画像全体がどれだけ動いたかを算出する。具体的には、１画面の画像を所定サイズのブロックに分割し、そのブロック毎に、隣接する画面間で一方の画像の座標をずらしながら相関が最も高くなる座標ずれ量を算出する。そして、各ブロックで算出した動きベクトル量の画面内の総和をフレーム間動き量とする。なお、このフレーム間動き量は、大局的な動き（グローバルベクトル）を示すものであり、ここで示す方法以外の方法でも算出できる。
【００４１】
本実施例では、入力画像と局所復号画像とから符号化歪み量を算出する符号化歪み量算出手段として、ＰＳＮＲ算出装置４６を設ける。ＰＳＮＲ算出装置４６は、先ず、入力端子１０からの画像データと局所復号画像データ（加算器３０の出力画像データ）とから、マクロブロック単位のＰＳＮＲを算出する。そして、ＰＳＮＲ算出装置４６は、マクロブロック毎のＰＳＮＲの画面内の総和を、最終的なＰＳＮＲとして出力する。ここで算出するＰＳＮＲは、符号化済みの画像に対するもの、即ち、今から符号化する画像に対して少なくとも１つ以上前に入力された画像に対するものである。
【００４２】
フリッカ検出装置４８には、フレーム特徴検出装置４２からのフレームアクティビティ、フレーム動き検出装置４４からのフレーム間動き量、及びＰＳＮＲ算出装置４６からのＰＳＮＲが入力する。フリッカ検出装置４８は、これらの３つのパラメータ値に従い、今から符号化する画像にフリッカが発生しそうかどうかを検出する。
【００４３】
フリッカが発生する条件として、符号化後の輝度ピーク値がピクチャタイプ毎に異なること、動きの少ない画像であることは、上述した。符号化後の輝度ピーク値が生じる画像の条件は、１）画像の複雑さが高いこと、及び、２）符号化画像が劣化していることの二つの条件を満たしていることである。一つ目の条件は、フレーム特徴検出装置４２で算出した高周波成分量が高いことを意味する。二つ目の条件は、ＰＳＮＲ算出装置４６で算出したＰＳＮＲが低いことを意味する。なお、どちらか一方の条件を満たしていなければ、輝度ピーク差が生じるとは言えない。例えば、高周波を多く含んだ画像は画像の複雑さが高く、一つ目の条件は満たす。しかし、ビットレートが高い場合には、符号化画像は劣化していないので、輝度ピーク差は生じない。一方、符号化画像が劣化していると、二つ目の条件は満たす。しかし、ビットレートが低い場合、画像の複雑さが低くても、符号化画像が劣化する。この場合、輝度ピーク差は生じない。動きの少ない画像の条件は、画像全体の動き量が小さいことであり、フレーム動き検出装置４４で算出したフレーム間動き量が少ないことを意味する。
【００４４】
フリッカ検出装置４８は、高周波成分量がその基準値より高く、ＰＳＮＲがその基準値より低く、フレーム動き量がその基準値より少ない場合、今から符号化しようとする画像でフリッカが発生する可能性が高いと判断する。フリッカ発生の可能性が高い場合、フリッカ検出装置４８は、符号化による輝度ピーク差を生じさせないように、符号量制御装置３８にピクチャタイプ毎の符号量配分の変更、たとえば、比率の変更を指示する。
【００４５】
図３（Ａ）は、フリッカ発生可能性を検出しない場合の符号量配分例を示す。図３（Ｂ）は、本実施例によるフリッカ発生可能性を検出した場合の符号量配分例を示す。図３（Ａ）はいわば、従来のＴＭ５方式の符号量制御アルゴリズムによる符号量配分例を示す。
【００４６】
図３（Ａ）に示すように、フリッカ発生可能性が無い又は低い場合には、イントラ符号化であるＩピクチャに対する目標符号量が多く、インター符号化であるＰピクチャとＢピクチャの目標符号量が低く設定される。この符号量配分により、上述したように、インター符号化ピクチャではイントラ符号化ピクチャよりも劣化が大きくなり、輝度のピークが再構成できない。その結果、インター符号化ピクチャとイントラ符号化ピクチャの間で輝度ピーク差が生じてフリッカのように見えてしまう。
【００４７】
本実施例では、フリッカ発生可能性を検出すると、フリッカ検出装置４８は、符号量制御装置３８に、図３（Ａ）に示すような符号量配分を、図３（Ｂ）に示すような符号量配分に変更するように指示する。具体的には、全体の発生符号量を一定に維持しつつ、Ｉピクチャの符号量を少なくし、Ｐピクチャ及びＢピクチャの発生符号量を増加させる。この符号量配分の変更は、式（３）における係数Ｋｐ，Ｋｂを変更することで実現できる。
【００４８】
フレームアクティビティ、フレーム間動き量及びＰＳＮＲの各値に従い、係数Ｋｐ，Ｋｂを段階的に又は連続的に変更してもよい。ピクチャタイプ毎の符号量配分を決定するパラメータＫｐは、通常、１．０であり、Ｋｂは１．４である。これに対し、フリッカが発生しそうな画像に対して、係数Ｋｐ，Ｋｂの値を小さくすれば、インター符号化ピクチャの目標符号量が高くなり、イントラ符号化ピクチャに対する目標符号量が低く変更される。
【００４９】
このような目標符号量の変更により、ピクチャタイプ間の輝度ピーク差を生じにくくなり、再生時にフリッカとして発生することを低減できる。
【実施例２】
【００５０】
アクティビティ、フレーム間動き量及びＰＳＮＲによるフリッカ発生可能性の検出エリア単位を小さくし、その検出エリア単位毎に目標符号量を変化させる。
【００５１】
図４を参照して、本実施例の動作を説明する。図４に示すように、１画面（例えば、１フレーム）の画像を複数のエリアに分割し、エリア毎にフレームアクティビティ、フレーム間動き量及びＰＳＮＲを算出する。その後、フレーム単位で行った処理と同様の判定を行い、フリッカが起こりそうであるエリアを判定する。
【００５２】
図４（Ａ），（Ｂ）では、斜線を付したエリアが、フリッカが発生しそうと判断したエリアである。イントラ符号化ピクチャでは、図４（Ａ）に示すように、フリッカが起こりそうなエリアに対する目標符号量を少なくする。また、インター符号化ピクチャでは、図４（Ｂ）に示すように、フリッカが起こりそうなエリアに対する目標符号量を多くする。一方、フリッカが起こりにくいと判定されたエリアに対しては通常の目標符号量を設定する。このようなエリア毎の判定と目標符号量の調整を行うことで、フリッカが発生しそうなエリアに限定した処理を行うことが可能になる。
【００５３】
上述した各実施例における各処理は、各処理の機能を実現する為のプログラムをメモリから読み出してコンピュータのＣＰＵ（中央演算装置）が実行することによりその機能を実現させるものであってもよい。
【００５４】
また、ＣＰＵがアクセスする上記メモリには、ＨＤＤ、光ディスク、フラッシュメモリ等の不揮発性メモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体、ＲＡＭ以外の揮発性のメモリなどがある。または、これらの組合せによるコンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。
【００５５】
また、上述した各実施例における各処理の機能を実現する為のプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理を行っても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含む。記録媒体から読み出されたプログラムが、コンピュータの機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどで実行されることで、上述した実施例の機能の一部または全部が実現される場合も含む。
【００５６】
また、「コンピュータ読み取り可能な記録媒体」とは、ＣＤ−ＲＯＭやＤＶＤ等の光ディスクや半導体メモリカードといった可搬媒体、或いはコンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントの揮発メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものを含む。
【００５７】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００５８】
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００５９】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
【００６０】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施例の概略構成ブロック図である。
【図２】フリッカ発生のメカニズムを説明する模式図である。
【図３】フリッカ発生可能性の有無に対する符号量配分の模式図であり、（Ａ）は、フリッカ発生可能性の無い場合の符号量配分を示し、（Ｂ）はフリッカ発生可能性のある場合の符号量配分を示す。
【図４】１画面を分割するエリア単位でフリッカ発生時の目標符号量を決定する場合の説明図である。
【符号の説明】
【００６２】
１０・・・入力端子
１２・・・フレーム並べ替え装置
１４・・・加減算器
１６・・・直交変換器
１８・・・量子化器
２０・・・可変長符号化装置
２２・・・バッファ
２４・・・出力端子
２６・・・逆量子化器
２８・・・逆直交変換器
３０・・・加算器
３２・・・ビデオバッファ（フレームメモリ）
３４・・・動き予測動き補償装置
３６・・・スイッチ
３８・・・符号量制御装置
４０・・・量子化制御装置
４２・・・フレーム特徴検出装置
４４・・・フレーム動き検出装置
４６・・・ＰＳＮＲ算出装置
４８・・・フリッカ検出装置
【図１】
0004936557.tif 000002
【図２】
0004936557.tif 000003
【図３】
0004936557.tif 000004
【図４】
0004936557.tif 000005