(57)【要約】  【課題】符号化難易度の高い絵柄の画質を保持することができる符号化装置および符号化方法を提供する。  【解決手段】符号化装置は、画像データに対してフィルタ処理を行うプリフィルタ部と、プリフィルタ部によりフィルタ処理された画像データを符号化して符号化画像データを生成する符号化部と、複数のビットレート制御から１つのビットレート制御を選択し、該ビットレート制御に基づきプリフィルタ部および符号化部を制御する制御部とを備える。制御部は、可変ビットレート制御、最小固定ビットレート制御および最大固定ビットレート制御のうちから１つのビットレート制御を選択する。【選択図】図１
2009017127.tif 000002
【特許請求の範囲】
【請求項１】
画像データに対してフィルタ処理を行うプリフィルタ部と、
上記プリフィルタ部によりフィルタ処理された画像データを符号化して符号化画像データを生成する符号化部と、
複数のビットレート制御から１つのビットレート制御を選択し、該ビットレート制御に基づき上記プリフィルタ部および上記符号化部を制御する制御部と
を備えることを特徴とする符号化装置。
【請求項２】
上記制御部は、可変ビットレート制御、最小固定ビットレート制御および最大固定ビットレート制御のうちから１つのビットレート制御を選択することを特徴とする請求項１記載の符号化装置。
【請求項３】
上記制御部は、可変ビットレート制御を選択した場合、画像データに対してフィルタ処理を行わないように上記プリフィルタ部を制御することを特徴とする請求項２記載の符号化装置。
【請求項４】
複数の記録モードを有し、
上記制御部は、
選択された上記記録モードおよび上記ビットレート制御に基づき、上記プリフィルタ部を制御することを特徴とする請求項１記載の符号化装置。
【請求項５】
複数のビットレート制御から１つのビットレート制御を選択するステップと、
選択された上記ビットレート制御に基づき、画像データに対してフィルタ処理を行うステップと、
選択された上記ビットレート制御に基づき、フィルタ処理された上記画像データを符号化して符号化画像データを生成するステップと
を備えることを特徴とする符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、符号化装置および符号化方法に関する。詳しくは、画像データを符号化する符号化装置および符号化方法に関する。
【背景技術】
【０００２】
送信側で画像データを圧縮して送信すると共に、受信側では圧縮された画像データを伸張する通信システムや、画像データを圧縮して記録すると共に、再生時には圧縮された画像データを伸張して出力する圧縮画像記録再生装置等において、画像データの圧縮の方法としては、例えばＭＰＥＧ（Moving Picture Experts Group）規格で採用されている予測符号化方式がある。この予測符号化方式では、時間方向の予測を用いることで符号化効率を向上させている。
【０００３】
ところで、上述のＭＰＥＧ規格で採用されている予測符号化方式等を用いて、画像符号化装置で画像データを圧縮符号化すると共に、圧縮符号化された画像データを画像復号化装置で復号化して伸張するシステムでは、符号化し更に復号化した後の画質は、入力される映像素材の絵柄によって大きく左右される。すなわち、映像が高周波成分を多く含んでいる場合や、動きの激しい絵柄の場合には、空間方向および時間方向の冗長度が少ない、すなわち符号化難易度が大きいので、ある一定のビットレートで符号化し更に復号化する場合には、符号化歪みが発生しやすい。
【０００４】
上述のような符号化難易度が大きい映像素材が画像符号化装置に入力された場合の符号化歪みを軽減する目的で、画像符号化装置の入力部分において空間方向もしくは時間方向についてのローパスフィルタを使用して、入力映像素材の空間的な高周波成分もしくは動き成分を、予め低減させる手法が一般に知られている。このような目的のために用いられるローパスフィルタは、プリフィルタと呼ばれている。
【０００５】
ところで、上述のようなプリフィルタを常時使用すると、符号化難易度の大きい絵柄の情報量削減には有効であっても、符号化難易度の小さい絵柄、例えば静止画のようなものにおいてもフィルタで高周波成分を落としてしまうため、復号化後の映像は全体としてぼけた印象を与えてしまうことが多いという問題点がある。
【０００６】
例えば特許文献１では、上記問題点を解決すべく、入力画像の特徴に応じてプリフィルタを適応的に使用することができるようにした符号化装置および符号化方法が公開されている。特許文献１では、入力画像の特徴と符号化後のビット量などから、閾値を用いてあらかじめ用意していたプリフィルタを選択するものである。
【０００７】
図５は、特許文献１に記載された画像符号化装置の概略の構成を示すブロック図である。この図に示したように、この画像符号化装置は、空間方向についてのプリフィルタとしての空間フィルタ１５２と、時間方向についてのプリフィルタとしての時間フィルタ１５３とを備え、入力画像信号Ｓ１１は、空間フィルタ１５２、時間フィルタ１５３を順に通過するようになっている。空間フィルタ１５２は空間方向のローパスフィルタからなり、具体的には例えば、ディジタルフィルタによって実現される。時間フィルタ１５３は、時間方向のローパスフィルタからなり、具体的には例えば、空間フィルタ１５２の出力信号を１フレーム分格納するフレームメモリ１５４と、空間フィルタ１５２の出力信号とフレームメモリ１５４に格納された１フレーム前の信号とを所定の重み付けＫ：（１−Ｋ）で加算して出力する加算器１５５とで実現される。なお、Ｋは重み付け係数であり、０≦Ｋ≦１である。空間フィルタ１５２は、フィルタ係数を変えることによって、通過帯域幅等のフィルタの特性を変えることができるようになっている。同様に、時間フィルタ１５３は、重み付け係数Ｋの値を変えることによって、通過帯域幅等のフィルタの特性を変えることができるようになっている。
【０００８】
エンコーダ制御部１１１は、プリフィルタ部１５０の出力信号を入力し、符号化する順番に従ってピクチャ（Ｉピクチャ、Ｐピクチャ、Ｂピクチャ）の順番を並べ替える画像並べ替え回路１２１と、この画像並べ替え回路１２１の出力データを入力し、フレーム構造かフィールド構造かを判別し、判別結果に応じた走査変換および１６×１６画素のマクロブロック化を行う走査変換・マクロブロック化回路１２２と、この走査変換・マクロブロック化回路１２２の出力データを入力し、ＩピクチャにおけるイントラＡＣを算出し、イントラＡＣデータＳ１３を符号化制御部１１５に送ると共に、走査変換・マクロブロック化回路２２の出力データをＦＩＦＯ（First-In First-Out）メモリ１１２および動き検出回路１１４に送るイントラＡＣ演算回路１２３とを備えている。イントラＡＣとは、Ｉピクチャにおいて、８×８画素のＤＣＴ（Discrete Cosine Transform)ブロック内の各画素の画素値とＤＣＴブロック内の画素値の平均値との差分の絶対値の総和として定義され、絵柄の複雑さを表すものと言える。
【０００９】
エンコーダ１１３は、ＦＩＦＯメモリ１１２の出力データと予測画像データとの差分をとる減算回路１３１と、この減算回路１３１の出力データに対して、ＤＣＴブロック単位でＤＣＴを行い、ＤＣＴ係数を出力するＤＣＴ回路１３２と、このＤＣＴ回路１３２の出力データを量子化する量子化回路１３３と、この量子化回路１３３の出力データを可変長符号化する可変長符号化回路１３４と、この可変長符号化回路１３４の出力データを一旦保持し、一定のビットレートのビットストリームからなる圧縮画像データＳ１２として出力するバッファメモリ１３５と、量子化回路１３３の出力データを逆量子化する逆量子化回路１３６と、この逆量子化回路１３６の出力データに対して逆ＤＣＴを行う逆ＤＣＴ回路１３７と、この逆ＤＣＴ回路１３７の出力データと予測画像データとを加算して出力する加算回路１３８と、この加算回路１３８の出力データを保持し、動き検出回路１１４から送られる動きベクトルに応じて動き補償を行って予測画像データを減算回路１３１および加算回路１３８に出力する動き補償回路１３９とを備えている。バッファメモリ１３５は、可変長符号化回路１３４より発生されるビット量を表す発生ビット量データＳ１５を符号化制御部１１５に送るようになっている。
【００１０】
動き検出回路１１４は、エンコーダ制御部１１１の出力データに基づいて、圧縮符号化の対象となるピクチャの注目マクロブロックと、参照されるピクチャにおいて注目マクロブロックとの間の画素値の差分の絶対値和あるいは自乗和が最小となるマクロブロックを探して、動きベクトルを検出して動き補償回路１３９に送るようになっている。また、動き検出回路１１４は、動きベクトルを求める際に、最小となったマクロブロック間における画素値の差分の絶対値和あるいは自乗和を、ＭＥ残差データＳ１４として符号化制御部１１５に送るようになっている。
【００１１】
符号化制御部１１５は、動き検出回路１１４からのＭＥ残差データＳ１４をピクチャ全体について足し合わせた値であるＭＥ残差を算出するＭＥ残差計算部１４１と、このＭＥ残差計算部１４１によって算出されたＭＥ残差とイントラＡＣ演算回路１２３からのイントラＡＣデータＳ１３とに基づいて、ピクチャの符号化の難易度を表す符号化難易度を算出する符号化難易度計算部１４２と、バッファメモリ１３５からの発生ビット量データＳ１５に基づいて、画像符号化装置によって圧縮符号化された画像データを伸張する画像復号化装置における入力バッファに対応する仮想的なバッファであるＶＢＶ（Video Buffering Verifier）バッファのデータ占有量（以下、単に占有量と言う。）を算出するＶＢＶバッファ占有量計算部１４３とを備えている。なお、ＭＥ残差は、映像の動きの速さおよび絵柄の複雑さを表すものと言える。
【００１２】
符号化制御部１１５は、更に、符号化難易度計算部１４２によって算出された符号化難易度とＶＢＶバッファ占有量計算部１４３によって算出されたＶＢＶバッファの占有量とに基づいて、目標符号量を決定する目標符号量決定部１４４と、エンコーダ１１３における発生符号量が目標符号量決定部１４４によって決定された目標符号量となるように量子化回路１３３における量子化特性値に対応する量子化インデックスを決定し、量子化回路３３に送る量子化インデックス決定部１４５とを備えている。
【００１３】
プリフィルタ制御部１５１は、符号化制御部１１５における符号化難易度計算部１４２によって算出された符号化難易度に基づいてプリフィルタ部１５０を制御するようになっている。
【００１４】
また、通常、画像符号化装置では、固定符号化レート（ＣＢＲ：Constant Bit Rate）または可変符号化レート（ＶＢＲ：Variable Bit Rate）で画像信号を符号化してビットストリームとして出力する。ＣＢＲでは、転送するデータを常に一定のビットレートで圧縮する。ＶＢＲ制御では、符号化難易度の高い絵柄の場合は、符号量を多く与えることよって、画質を保持する。
【００１５】
特許文献２には、複雑な画像の後、易しい画像に急変した場合、あるいはその逆の場合でも、そのような急変する遷移状態における画質の低下が起きない、画像符号化装置および画像符号化方法が提案されている。
【００１６】
【特許文献１】特開２００７−２０２１６号公報
【特許文献２】特開２００６−１５７８５３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１７】
ところが、上述した適応型プリフィルタは画像の複雑さに応じて高周波数成分を落としてしまうため、当該適応型プリフィルタをＶＢＲ制御の画像符号化装置に適用すると、符号化難易度の高い絵柄を符号化した場合、復号化後の映像はぼけた印象を与えてしまうという問題がある。
【００１８】
したがって、この発明の目的は、符号化難易度の高い絵柄の画質を保持することができる符号化装置および符号化方法を提供することにある。
【課題を解決するための手段】
【００１９】
上述の課題を解決するために、本発明の符号化装置は、
画像データに対してフィルタ処理を行うプリフィルタ部と、
プリフィルタ部によりフィルタ処理された画像データを符号化して符号化画像データを生成する符号化部と、
複数のビットレート制御から１つのビットレート制御を選択し、該ビットレート制御に基づきプリフィルタ部および符号化部を制御する制御部と
を備えることを特徴とする。
【００２０】
本発明の符号化方法は、
複数のビットレート制御から１つのビットレート制御を選択するステップと、
選択されたビットレート制御に基づき、画像データに対してフィルタ処理を行うステップと、
選択されたビットレート制御に基づき、プリフィルタ部によりフィルタ処理された画像データを符号化して符号化画像データを生成するステップと
を備えることを特徴とする。
【００２１】
本発明では、符号化難易度の高い絵柄が入力され、符号量を多く与えることができる場合、プリフィルタ処理を行わない、または、その強度を弱めることにより、符号化難易度の高い絵柄の画質を保持することができ、また、符号量を多く与えることができない場合、プリフィルタ処理の強度を強めることで、画質の破綻を防ぐことができる。
【発明の効果】
【００２２】
以上説明したように、この発明によれば、符号化難易度の高い絵柄の画質を保持することができる。
【発明を実施するための最良の形態】
【００２３】
以下、この発明の実施形態について図面を参照しながら説明する。
【００２４】
図１は、本発明の第１の実施の形態に係る画像符号化装置の概略の構成を示すブロック図である。この画像符号化装置は、入力画像信号Ｓ１を入力し、その情報量を削減するためのプリフィルタ部５０と、このプリフィルタ部５０の出力信号を入力し、圧縮符号化のための前処理等を行うエンコーダ制御部１１と、このエンコーダ制御部１１の出力データを所定時間だけ遅延して出力するためのＦＩＦＯ（先入れ先出し）メモリ１２と、このＦＩＦＯメモリ１２の出力データを入力し、ピクチャ毎にピクチャタイプに応じた符号化方法によって圧縮符号化して、圧縮画像データＳ２を出力する符号化部としてのエンコーダ１３と、エンコーダ制御部１１の出力データに基づいて動きベクトルを検出し、エンコーダ１３に送る動き検出回路１４と、エンコーダ制御部１１から出力されるイントラＡＣデータＳ３と動き検出回路１４から出力されるＭＥ残差データＳ４とエンコーダ１３から出力される発生ビット量データＳ５とに基づいてエンコーダ１３を制御する符号化制御部１５と、この符号化制御部１５からのデータに基づいて、プリフィルタ制御信号Ｓ６によってプリフィルタ部５０の特性を制御するプリフィルタ制御部５１とを備えている。図１に示した画像符号化装置は、圧縮符号化する前の画像データの特徴に基づいて発生符号量の制御を行うフィードフォワード型のレート制御を行うように構成されている。
【００２５】
符号化制御部１５およびプリフィルタ制御部５１は、互いにバスを介して接続されたＣＰＵ（中央処理装置）、ＲＯＭ（リード・オンリ・メモリ）およびＲＡＭ（ランダム・アクセス・メモリ）を有するコンピュータによって構成され、ＣＰＵが、ＲＡＭをワーキングエリアとして、ＲＯＭに格納されたプログラムを実行することによって、後述する符号化制御部１５およびプリフィルタ制御部５１における各機能を実現するようになっている。ＲＯＭは、本発明に係る画像符号化制御用プログラムを記憶したものであり、ＩＣ（集積回路）でも良いし、ハードディスク、フロッピィディスク等の磁気ディスクを記録媒体とする記憶装置でも良いし、ＣＤ（コンパクトディスク）−ＲＯＭ等の光ディスクを記録媒体とする記憶装置でも良いし、その他の種類の記録媒体を用いる記憶装置でも良い。いずれの場合にも、ＩＣや種々の記録媒体は、本発明に係る画像符号化制御用プログラムを記録した媒体に相当する。
【００２６】
図２は、図１に示した画像符号化装置の詳細な構成を示すブロック図である。この図に示したように、プリフィルタ部５０は、空間方向についてのプリフィルタとしての空間フィルタ５２と、時間方向についてのプリフィルタとしての時間フィルタ５３とを備え、入力画像信号Ｓ１は、空間フィルタ５２、時間フィルタ５３を順に通過するようになっている。空間フィルタ５２は空間方向のローパスフィルタからなり、具体的には例えば、ディジタルフィルタによって実現される。時間フィルタ５３は、時間方向のローパスフィルタからなり、具体的には例えば、空間フィルタ５２の出力信号を１フレーム分格納するフレームメモリ５４と、空間フィルタ５２の出力信号とフレームメモリ５４に格納された１フレーム前の信号とを所定の重み付けＫ：（１−Ｋ）で加算して出力する加算器５５とで実現される。なお、Ｋは重み付け係数であり、０≦Ｋ≦１である。空間フィルタ５２は、フィルタ係数を変えることによって、通過帯域幅等のフィルタの特性を変えることができるようになっている。同様に、時間フィルタ５３は、重み付け係数Ｋの値を変えることによって、通過帯域幅等のフィルタの特性を変えることができるようになっている。
【００２７】
プリフィルタ部５０のフィルタ強度は、空間フィルタ５２のフィルタ係数と、時間フィルタ５３の重み付け係数Ｋとにより調整される。具体的には、空間フィルタ５２では、通過帯域幅が狭くなるようにフィルタ係数を変えるとフィルタ強度が強くなる。また、時間フィルタ５３では、重み付け係数Ｋを小さくするとフィルタ強度が強くなる。
【００２８】
エンコーダ制御部１１は、プリフィルタ部５０の出力信号を入力し、符号化する順番に従ってピクチャ（Ｉピクチャ、Ｐピクチャ、Ｂピクチャ）の順番を並べ替える画像並べ替え回路２１と、この画像並べ替え回路２１の出力データを入力し、フレーム構造かフィールド構造かを判別し、判別結果に応じた走査変換および１６×１６画素のマクロブロック化を行う走査変換・マクロブロック化回路２２と、この走査変換・マクロブロック化回路２２の出力データを入力し、ＩピクチャにおけるイントラＡＣを算出し、イントラＡＣデータＳ３を符号化制御部１５に送ると共に、走査変換・マクロブロック化回路２２の出力データをＦＩＦＯメモリ１２および動き検出回路１４に送るイントラＡＣ演算回路２３とを備えている。イントラＡＣとは、Ｉピクチャにおいて、８×８画素のＤＣＴブロック内の各画素の画素値とＤＣＴブロック内の画素値の平均値との差分の絶対値の総和として定義され、絵柄の複雑さを表すものと言える。
【００２９】
エンコーダ１３は、ＦＩＦＯメモリ１２の出力データと予測画像データとの差分をとる減算回路３１と、この減算回路３１の出力データに対して、ＤＣＴブロック単位でＤＣＴを行い、ＤＣＴ係数を出力するＤＣＴ回路３２と、このＤＣＴ回路３２の出力データを量子化する量子化回路３３と、この量子化回路３３の出力データを可変長符号化する可変長符号化回路３４と、この可変長符号化回路３４の出力データを一旦保持し、一定のビットレートのビットストリームからなる圧縮画像データＳ２として出力するバッファメモリ３５と、量子化回路３３の出力データを逆量子化する逆量子化回路３６と、この逆量子化回路３６の出力データに対して逆ＤＣＴを行う逆ＤＣＴ回路３７と、この逆ＤＣＴ回路３７の出力データと予測画像データとを加算して出力する加算回路３８と、この加算回路３８の出力データを保持し、動き検出回路１４から送られる動きベクトルに応じて動き補償を行って予測画像データを減算回路３１および加算回路３８に出力する動き補償回路３９とを備えている。バッファメモリ３５は、可変長符号化回路３４より発生されるビット量を表す発生ビット量データＳ５を符号化制御部１５に送るようになっている。
【００３０】
動き検出回路１４は、エンコーダ制御部１１の出力データに基づいて、圧縮符号化の対象となるピクチャの注目マクロブロックと、参照されるピクチャにおいて注目マクロブロックとの間の画素値の差分の絶対値和あるいは自乗和が最小となるマクロブロックを探して、動きベクトルを検出して動き補償回路３９に送るようになっている。また、動き検出回路１４は、動きベクトルを求める際に、最小となったマクロブロック間における画素値の差分の絶対値和あるいは自乗和を、ＭＥ残差データＳ４として符号化制御部１５に送るようになっている。
【００３１】
符号化制御部１５は、動き検出回路１４からのＭＥ残差データＳ４をピクチャ全体について足し合わせた値であるＭＥ残差を算出するＭＥ残差計算部４１と、このＭＥ残差計算部４１によって算出されたＭＥ残差とイントラＡＣ演算回路２３からのイントラＡＣデータＳ３とに基づいて、ピクチャの符号化の難易度を表す符号化難易度を算出する符号化難易度計算部４２と、バッファメモリ３５からの発生ビット量データＳ５に基づいて、本実施の形態に係る画像符号化装置によって圧縮符号化された画像データを伸張する画像復号化装置における入力バッファに対応する仮想的なバッファであるＶＢＶ（Video Buffering Verifier）バッファのデータ占有量（以下、単に占有量と言う。）を算出するＶＢＶバッファ占有量計算部４３とを備えている。なお、ＭＥ残差は、映像の動きの速さおよび絵柄の複雑さを表すものと言える。
【００３２】
符号化制御部１５は、更に、符号化難易度計算部４２によって算出された符号化難易度と、ＶＢＶバッファ占有量計算部４３によって算出されたＶＢＶバッファの占有量とに基づいて、ＶＢＲの量子化スケールＶＢＲq、最大ＣＢＲの量子化スケールＣＢＲmaxq、最小ＣＢＲの量子化スケールＣＢＲmixqを求めて、出力するビットレート制御部４４と、ビットレート制御部４４から出力された量子化スケールから適切なものを選択し、エンコーダ１３に出力するレート制御選択部４８とを備えている。
【００３３】
ここで、符号化難易度について説明する。符号化難易度は、ピクチャの符号化の難易度を表すものであるが、これは、同じ画質を保つために必要なデータ量の比率と言い換えることができる。符号化難易度を数値化する方法は種々考えられるが、本実施の形態では、ＩピクチャについてはイントラＡＣを用いて符号化難易度を求め、ＰピクチャおよびＢピクチャについてはＭＥ残差を用いて符号化難易度を求めることとしている。前述のように、イントラＡＣは絵柄の複雑さを表し、ＭＥ残差は映像の動きの速さおよび絵柄の複雑さを表し、これらは符号化の難易度と強い相関があることから、イントラＡＣやＭＥ残差を変数とする一次関数等により、イントラＡＣやＭＥ残差から符号化難易度を算出することが可能である。
【００３４】
ビットレート制御部４４は、ＶＢＲ制御部４５と、最大ＣＢＲ（ＣＢＲmax）制御部４６と、最小ＣＢＲ（ＣＢＲmin）制御部４７とを備える。
【００３５】
ＶＢＲ制御部４５は、第１画像処理単位、たとえば、複数のピクチャからなるＧＯＰ単位で画像符号化を行うための第１量子化スケールを設定する第１量子化スケール設定部であり、目標ビットレートに対して、第１画像処理単位で入力画像信号Ｓ１の符号化の難易度に応じて、緩やかに変化する第１量子化スケールＱＳ１を設定する。
【００３６】
具体的には、ＶＢＲ制御部４５は、符号化難易度計算部４２から供給された符号化難易度と、ＶＢＶバッファ占有量計算部４３から供給されたＶＢＶバッファの占有量とに基づいて、ＶＢＲの量子化スケールＶＢＲqを求めてレート制御選択部４８に出力する。
【００３７】
ＶＢＲ制御において、符号化難易度の高い絵柄が入力され、符号量を多く与えることができる場合は、プリフィルタ処理を行わない、または、その強度を弱めることにより、符号化難易度の高い絵柄の画質を保持することができ、また、符号量を多く与えることができない場合は、プリフィルタの強度を強めることで、画質の破綻を防ぐことができる。
【００３８】
最大ＣＢＲ制御部４６は、上記第１画像処理単位、たとえば、ＧＯＰ単位より短い第２画像処理単位、たとえば、ピクチャまたはマクロ・ブロック（ＭＢ）単位で、ビットストリームの先頭のシーケンスヘッダによって指定した最大のビットレートに対して当該最大のビットレートを越えないように迅速に変化する第２量子化スケールＱＳ２を設定する第２量子化スケール設定部である。
【００３９】
具体的には、最大ＣＢＲ制御部４６は、符号化難易度計算部４２から供給された符号化難易度と、ＶＢＶバッファ占有量計算部４３から供給されたＶＢＶバッファの占有量とに基づいて、最大ＣＢＲの量子化スケールＣＢＲmaxqを求めてレート制御選択部４８に出力する。
【００４０】
最小ＣＢＲ制御部４７は、上記第１画像処理単位、たとえば、ＧＯＰ単位より短い第２画像処理単位、たとえば、ピクチャまたはマクロ・ブロック（ＭＢ）単位で、ビットストリームの先頭のシーケンスヘッダによって指定した最小のビットレートに対して当該最小のビットレートを越えないように迅速に変化する第３量子化スケールＱＳ３を設定する第３量子化スケール設定部である。
【００４１】
具体的には、最小ＣＢＲ制御部４７は、符号化難易度計算部４２から供給された符号化難易度と、ＶＢＶバッファ占有量計算部４３から供給されたＶＢＶバッファの占有量とに基づいて、最小ＣＢＲの量子化スケールＣＢＲminqを求めてレート制御選択部４８に出力する。
【００４２】
レート制御選択部４８は、ＶＢＲ制御部４５から入力されたＶＢＲの量子化スケールＶＢＲqと、最大ＣＢＲ制御部４６から入力された最大ＣＢＲの量子化スケールＣＢＲmaxqと、最小ＣＢＲ制御部４７から入力された最小ＣＢＲの量子化スケールＣＢＲminqとを比較し、これらの量子化スケールのうち適切な量子化スケールを符号化対象の入力画像信号Ｓ１に対して符号化処理を行うための量子化スケールＱＳＣとし、量子化回路３３に出力する。
【００４３】
レート制御選択部４８は、例えば、以下のようにして量子化スケールＱＳＣを算出する。まず、レート制御選択部４８は、例えば、ＶＢＲ制御部４５から供給されたＶＢＲの量子化スケールＶＢＲqと、最小ＣＢＲ制御部４７から供給された最小ＣＢＲの量子化スケールＣＢＲminqとを比較して小さい方を選ぶ。これにより、量子化スケールが大き過ぎてビットレートが下がり過ぎないように、量子化スケールの最大値が制限される。次に、レート制御選択部４８は、上記比較結果と、最大ＣＢＲ制御部４６から供給された最大ＣＢＲの量子化スケールＣＢＲmaxqを比較して大きい方を選ぶ。これにより、量子化スケールが小さ過ぎてビットレートが上がり過ぎないように量子化スケールの最小値が制限される。
【００４４】
プリフィルタ制御部５１は、レート制御選択部４８において選択されたレート制御方法に基づいてプリフィルタ部５０を制御するようになっている。すなわち、プリフィルタ制御部５１は、レート制御選択部４８で選択された量子化スケール（パラメータ）が、ＶＢＲ制御部４５、最大ＣＢＲ制御部４６、最小ＣＢＲ制御部４７のいずれのものであるかを判断し、それぞれに応じたフィルタ特性を選択する。
【００４５】
具体的には例えば、レート制御選択部４８で選択された量子化スケールが、ＶＢＲ制御部４５で出力した量子化スケールＶＢＲqである場合、プリフィルタ制御部５１はプリフィルタ１を選択し、最大ＣＢＲ制御部４６で出力した最大ＣＢＲの量子化スケールＣＢＲmaxqである場合、プリフィルタ制御部５１はプリフィルタ２を選択し、最小ＣＢＲ制御部４７で出力した最小ＣＢＲの量子化スケールＣＢＲminqである場合、プリフィルタ制御部５１はプリフィルタ３を選択する。
【００４６】
プリフィルタ制御部５１は、例えば、プリフィルタ部５０を制御してフィルタ強度を調整することにより、フィルタ１〜３を設定する。プリフィルタ１〜３の強度の関係は、例えばプリフィルタ３＜プリフィルタ１＜プリフィルタ２となっている。
【００４７】
また、レート制御選択部４８で選択された量子化スケールが、ＶＢＲ制御部４５で決定したＶＢＲの量子化スケールＶＢＲqもしくは最小ＣＢＲ制御部４７で決定した最小ＣＢＲの量子化スケールＣＢＲminqである場合、プリフィルタ制御部５１は入力画像信号Ｓ１に対してプリフィルタ処理を行わないようにプリフィルタ部５０を制御し、レート制御選択部４８で選択された量子化スケールが、最大ＣＢＲ制御部４６で決定した最大ＣＢＲの量子化スケールＣＢＲmaxqである場合、符号化難易度計算部４２において算出された符号化難易度に基づきプリフィルタ部５０を制御するようにしてもよい。このプリフィルタ部５０の制御方法としては、例えば特開２００７−２０２１６号公報に記載された方法が挙げられる。
【００４８】
なお、レート制御選択部４８において、ＶＢＲ制御部４５、最大ＣＢＲ制御部４６、最小ＣＢＲ制御部４７のいずれかの量子化スケールを決定するときに、同時にどのフィルタを選択するかを決定して、その結果をプリフィルタ制御部５１に送ったり、レート制御選択部４８においてフィルタを制御したりするようにしても良い。
【００４９】
また、ＶＢＲ制御部、ＣＢＲ制御部が複数ある場合、その個数に応じたプリフィルタの特性を用意することでプリフィルタを細かく制御することも可能である。
【００５０】
次に、本実施の形態に係る画像符号化装置の動作について説明する。入力画像信号Ｓ１は、プリフィルタ部５０の空間フィルタ５２、時間フィルタ５３を順に通過した後、エンコーダ制御部１１に入力される。エンコーダ制御部１１では、まず、画像並べ替え回路２１によって、符号化する順番に従ってピクチャ（Ｉピクチャ、Ｐピクチャ、Ｂピクチャ）の順番を並べ替え、次に、走査変換・マクロブロック化回路２２によって、フレーム構造かフィールド構造かを判別し、判別結果に応じた走査変換およびマクロブロック化を行い、次に、Ｉピクチャの場合には、イントラＡＣ演算回路２３によってイントラＡＣを算出してイントラＡＣデータＳ３を符号化制御部１５に送る。また、走査変換・マクロブロック化回路２２の出力データは、イントラＡＣ演算回路２３を経て、ＦＩＦＯメモリ１２および動き検出回路１４に送られる。
【００５１】
ＦＩＦＯメモリ１２は、符号化難易度計算部４２において、符号化が終了したピクチャに引き続くＮ枚分のピクチャの符号化難易度を算出するのに必要な時間だけ、入力した画像データを遅延して、エンコーダ１３に出力する。動き検出回路１４は、動きベクトルを検出して動き補償回路３９に送ると共に、ＭＥ残差データＳ４をＭＥ残差計算部４１に送る。
【００５２】
Ｉピクチャの場合には、エンコーダ１３では、減算回路３１において予測画像データとの差分をとることなく、ＦＩＦＯメモリ１２の出力データをそのままＤＣＴ回路３２に入力してＤＣＴを行い、量子化回路３３によってＤＣＴ係数を量子化し、可変長符号化回路３４によって量子化回路３３の出力データを可変長符号化し、バッファメモリ３５によって可変長符号化回路３４の出力データを一旦保持し、一定のビットレートのビットストリームからなる圧縮画像データＳ２として出力する。また、逆量子化回路３６によって量子化回路３３の出力データを逆量子化し、逆ＤＣＴ回路３７によって逆量子化回路３６の出力データに対して逆ＤＣＴを行い、逆ＤＣＴ回路３７の出力画像データを加算回路３８を介して動き補償回路３９に入力して保持させる。
【００５３】
Ｐピクチャの場合には、エンコーダ１３では、動き補償回路３９によって、保持している過去のＩピクチャまたはＰピクチャに対応する画像データと動き検出回路１４からの動きベクトルとに基づいて予測画像データを生成し、予測画像データを減算回路３１および加算回路３８に出力する。また、減算回路３１によって、ＦＩＦＯメモリ１２の出力データと動き補償回路３９からの予測画像データとの差分をとり、ＤＣＴ回路３２によってＤＣＴを行い、量子化回路３３によってＤＣＴ係数を量子化し、可変長符号化回路３４によって量子化回路３３の出力データを可変長符号化し、バッファメモリ３５によって可変長符号化回路３４の出力データを一旦保持し圧縮画像データＳ２として出力する。また、逆量子化回路３６によって量子化回路３３の出力データを逆量子化し、逆ＤＣＴ回路３７によって逆量子化回路３６の出力データに対して逆ＤＣＴを行い、加算回路３８によって逆ＤＣＴ回路３７の出力データと予測画像データとを加算し、動き補償回路３９に入力して保持させる。
【００５４】
Ｂピクチャの場合には、エンコーダ１３では、動き補償回路３９によって、保持している過去および未来のＩピクチャまたはＰピクチャに対応する２つの画像データと動き検出回路１４からの２つの動きベクトルとに基づいて予測画像データを生成し、予測画像データを減算回路３１および加算回路３８に出力する。また、減算回路３１によって、ＦＩＦＯメモリ１２の出力データと動き補償回路３９からの予測画像データとの差分をとり、ＤＣＴ回路３２によってＤＣＴを行い、量子化回路３３によってＤＣＴ係数を量子化し、可変長符号化回路３４によって量子化回路３３の出力データを可変長符号化し、バッファメモリ３５によって可変長符号化回路３４の出力データを一旦保持し圧縮画像データＳ２として出力する。なお、Ｂピクチャは動き補償回路３９に保持させない。
【００５５】
なお、バッファメモリ３５は、可変長符号化回路３４より発生されるビット量を表す発生ビット量データＳ５を符号化制御部１５に送る。
【００５６】
符号化制御部１５では、符号化難易度計算部４２が、イントラＡＣ演算回路２３からのイントラＡＣデータＳ３とＭＥ残差計算部４１で算出したＭＥ残差とより、符号化難易度を計算し、ＶＢＶバッファ占有量計算部４３が、ＶＢＶバッファの占有量を計算する。そして、ＶＢＲ制御部４５、最大ＣＢＲ制御部４６、最小ＣＢＲ制御部４７がそれぞれ、符号化難易度計算部４２から供給された符号化難易度と、ＶＢＶバッファ占有量計算部４３から供給されたＶＢＶバッファの占有量とに基づき、ＶＢＲ、最大ＣＢＲ、最小ＣＢＲに対応する量子化スケールを出力する。レート制御選択部４８が、ＶＢＲ制御部４５、最大ＣＢＲ制御部４６、最小ＣＢＲ制御部４７から供給された量子化スケールから、１つの量子化スケールを選択し、選択した量子化スケールに基づき、量子化回路３３を制御する。
【００５７】
図３は、本発明の第１の実施の形態に係る画像符号化装置の動作の一例を示すフローチャートである。
まず、ステップＳ１１において、プリフィルタ制御部５１が、レート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたか否かを判断する。
【００５８】
ステップＳ１１においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたと判断された場合、ステップＳ１２において、プリフィルタ制御部５１が、プリフィルタ１を選択する。
【００５９】
ステップＳ１１においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されなかったと判断された場合、ステップＳ１３において、プリフィルタ制御部５１が、レート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたか否かを判断する。
【００６０】
ステップＳ１３においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたと判断された場合、ステップＳ１４において、プリフィルタ制御部５１が、プリフィルタ２を選択する。
【００６１】
ステップＳ１３においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されなかったと判断された場合、ステップＳ１５において、プリフィルタ制御部５１が、プリフィルタ３を選択する。
【００６２】
次に、本発明第２の実施の形態について説明する。本発明第２の実施の形態に係る画像符号化装置は、ＨＱ（ハイクオリティ）モード、ＳＰ（スタンダードプレイ）モード、およびＬＰ（ロングプレイ）モードなどの複数の記録モードを有し、プリフィルタ制御部５１が、選択された記録モードとビットレート制御とに基づき、プリフィルタ部５０を制御するものである。
【００６３】
プリフィルタ制御部５１は、例えば、プリフィルタ部５０を制御してフィルタ強度を調整することにより、フィルタ１〜５を設定する。プリフィルタ１〜５の強度の関係は、例えば、プリフィルタ１＜プリフィルタ２＜プリフィルタ３＜プリフィルタ４＜プリフィルタ５となっている。
【００６４】
図４は、本発明の第２の実施の形態に係る画像符号化装置の動作の一例を示すフローチャートである。
【００６５】
まず、ステップＳ２１において、プリフィルタ制御部５１が、記録モードがＨＱモードであるか否かを判断する。ステップＳ２１において記録モードがＨＱモードであると判断された場合、ステップＳ２２において、プリフィルタ制御部５１が、レート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたか否かを判断する。
【００６６】
ステップＳ２２においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたと判断された場合、ステップＳ２３において、プリフィルタ制御部５１が、プリフィルタ部５０を制御してプリフィルタ処理を入力画像信号Ｓ１に対して行わないようにする。
【００６７】
ステップＳ２２においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されなかったと判断された場合、ステップＳ２４において、プリフィルタ制御部５１が、レート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたか否かを判断する。
【００６８】
ステップＳ２４においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたと判断された場合、ステップＳ２５において、プリフィルタ制御部５１が、プリフィルタ１を選択する。
【００６９】
ステップＳ２４においてレート制御選択部４８にて最大ＣＢＲの量子化スケールが選択されなかったと判断された場合、ステップＳ２６において、プリフィルタ制御部５１が、プリフィルタ部５０を制御してプリフィルタ処理を入力画像信号Ｓ１に対して行わないようにする。
【００７０】
ステップＳ２１において記録モードがＨＱモードでないと判断された場合、ステップＳ２７において、プリフィルタ制御部５１が、記録モードがＳＰモードであるか否かを判断する。
【００７１】
ステップＳ２７において記録モードがＳＰモードであると判断された場合、ステップＳ２８において、プリフィルタ制御部５１が、レート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたか否かを判断する。
【００７２】
ステップＳ２８においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたと判断された場合、ステップＳ２９において、プリフィルタ制御部５１が、プリフィルタ２を選択する。
【００７３】
ステップＳ２８においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されなかったと判断された場合、ステップＳ３０において、プリフィルタ制御部５１が、レート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたか否かを判断する。
【００７４】
ステップＳ３０においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたと判断された場合、ステップＳ３１において、プリフィルタ制御部５１が、プリフィルタ３を選択する。
【００７５】
ステップＳ３０においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されなかったと判断された場合、ステップＳ３２において、プリフィルタ制御部５１が、プリフィルタ２を選択する。
【００７６】
ステップＳ２７において記録モードがＳＰモードでないと判断された場合、ステップＳ３３において、プリフィルタ制御部５１が、レート制御選択部４８にてＶＢＲの量子化スケールＶＢＲqが選択されたか否かを判断する。
【００７７】
ステップＳ３３においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲが選択されたと判断された場合、ステップＳ３４において、プリフィルタ制御部５１が、プリフィルタ４を選択する。
【００７８】
ステップＳ３３においてレート制御選択部４８にてＶＢＲの量子化スケールＶＢＲが選択されなかったと判断された場合、ステップＳ３５において、プリフィルタ制御部５１が、レート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたか否かを判断する。
【００７９】
ステップＳ３５においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されたと判断された場合、ステップＳ３６において、プリフィルタ制御部５１が、プリフィルタ５を選択する。
【００８０】
ステップＳ３５においてレート制御選択部４８にて最大ＣＢＲの量子化スケールＣＢＲmaxqが選択されなかったと判断された場合、ステップＳ３７において、プリフィルタ制御部５１が、プリフィルタ４を選択する。
【００８１】
以上、この発明の実施形態について具体的に説明したが、この発明は、上述の実施形態に限定されるものではなく、この発明の技術的思想に基づく各種の変形が可能である。
【００８２】
また、符号化難易度は、実施の形態で挙げたイントラＡＣ、ＭＥ残差、グローバル・コンプレキシティ等を用いたものに限らず、ピクチャの符号化の難易度を表すものであれば、他のパラメータでも良い。
【００８３】
また、実施の形態ではプリフィルタ部５０が空間フィルタ５２と時間フィルタ５３の双方を有する例を挙げたが、本発明は、プリフィルタとして空間フィルタと時間フィルタのいずれか一方をのみを有する画像符号化装置にも適用することができる。
【図面の簡単な説明】
【００８４】
【図１】本発明の第１の実施の形態に係る画像符号化装置の概略の構成を示すブロック図である。
【図２】図１に示した画像符号化装置の詳細な構成を示すブロック図である。
【図３】本発明の第１の実施の形態に係る画像符号化装置の動作の一例を示すフローチャートである。
【図４】本発明の第２の実施の形態に係る画像符号化装置の動作の一例を示すフローチャートである。
【図５】従来の画像符号化装置の概略の構成を示すブロック図である。
【符号の説明】
【００８５】
１１・・・エンコーダ制御部、１２・・・ＦＩＦＯメモリ、１３・・・エンコーダ、１４・・・動き検出回路、１５・・・符号化制御部、２１・・・画像並べ替え回路、２２・・・走査変換マクロブロック回路、２３・・・イントラＡＣ演算回路、３１・・・減算回路、３２・・・ＤＣＴ回路、３３・・・量子化回路、３４・・・可変長符号化回路、３５・・・バッファメモリ、３６・・・逆量子化回路、３７・・・逆ＤＣＴ回路、３８・・・加算回路、３９・・・動き補償回路、４１・・・ＭＥ残差計算部、４２・・・符号化難易度計算部、４３・・・ＶＢＶバッファ占有量計算部、４４・・・ビットレート制御部、４５・・・ＶＢＲ制御部、４６・・・最大ＣＢＲ制御部、４７・・・最小ＣＢＲ制御部、４８・・・レート制御部、５０・・・プリフィルタ、５１・・・プリフィルタ制御部、５２・・・空間フィルタ、５３・・・時間フィルタ、５４・・・フレームメモリ、５５・・・加算器１  フィルタ
【図１】
2009017127.tif 000003
【図２】
2009017127.tif 000004
【図３】
2009017127.tif 000005
【図４】
2009017127.tif 000006
【図５】
2009017127.tif 000007