(57)【要約】【課題】視覚特性上の歪の少ない優れた高能率符号化を行うことができるようにする。【解決手段】画像を入力し、入力した画像の情報量を削減して出力する前処理部１０１と、前記前処理部１０１の出力を入力し、符号化データを出力する符号化部（ＤＣＴ部１０２、量子化部１０３、可変長符号化部１０４）を備える。前記前処理部１０１は、フレーム内の画像を複数の領域に分割する領域分割部１１２と、適応的にフィルタ強度を設定するフィルタ選択部１１４と、フィルタ強度に応じて中間領域を生成する中間領域設定部１１３と、設定されたフィルタ強度でフィルタ処理を行うフィルタ処理部１１５とを備える。符号量の情報に応じて、フィルタの設定領域の生成とフィルタの強度の指定を行うことができるようにする。【選択図】図１
2006180470.tif 000002
【特許請求の範囲】
【請求項１】
画像の情報量を削減して出力する前処理手段と、前記前処理手段により情報量が削減された画像から符号化データを生成する符号化データ生成手段とを有する画像処理装置であって、
前記前処理手段は、画像を複数の領域に分割する領域分割手段と、
前記領域分割手段により分割した領域ごとにフィルタ強度の優先度を設定するフィルタ設定手段と、
前記フィルタ設定手段により設定されたフィルタ強度に応じて中間領域を生成する中間領域設定手段と、
前記フィルタ設定手段により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記領域分割手段は、特定色を検出する色検出手段を備え、
前記色検出手段により特定色を検出した領域を弱フィルタ領域、特定色を検出しなかった領域を強フィルタ領域とすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記領域分割手段は、類似色を統合する領域統合手段を備え、
前記領域統合手段の収束結果から、オブジェクトを判定するオブジェクト領域判定手段と、
前記オブジェクト領域判定手段により、オブジェクトと判定された領域を弱フィルタ領域、オブジェクトと判定されなかった領域を強フィルタ領域とすることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記領域分割手段は、入力画像と背景画像とを比較する画像比較手段を備え、入力画像と背景画像の差分の小さい領域を強フィルタ領域、差分の大きい領域を弱フィルタ領域とすることを特徴とする請求項１に記載の画像処理装置。
【請求項５】
前記フィルタ設定手段は、前記符号化データ生成手段からの符号化情報と、前記領域分割手段からの領域分割情報と、前記中間領域設定手段からの中間領域の生成情報とにより、各領域のフィルタ強度を設定することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記フィルタ設定手段は、強フィルタ領域のフィルタ強度と弱フィルタ領域のフィルタ強度の差があらかじめ設定した閾値を超えた場合に、中間領域のフィルタ強度を設定し、前記中間領域設定手段に中間領域の生成を促すことを特徴とする請求項２に記載の画像処理装置。
【請求項７】
前記フィルタ設定手段は、中間領域のフィルタ強度と弱フィルタ領域のフィルタ強度の差があらかじめ設定した閾値を超えた場合に、新たな中間領域のフィルタ強度を設定し、前記中間領域設定手段に新たな中間領域の生成を促すことを特徴とする請求項３に記載の画像処理装置。
【請求項８】
前記中間領域設定手段は、前記フィルタ設定手段によって設定されたフィルタ強度に応じて、フィルタの強度差のある境界領域に、新たな領域を設定することを特徴とする請求項１に記載の画像処理装置。
【請求項９】
前記前処理手段は、フレーム間の動きを求める動き検出手段と、前記動き検出手段の検出結果と前記領域分割手段の結果からフレーム間の対応領域を求める対応領域判定手段とを備えることを特徴とする請求項１に記載の画像処理装置。
【請求項１０】
画像の情報量を削減して出力する前処理工程と、前記前処理工程により情報量が削減された画像から符号化データを生成する符号化データ生成工程とを有する画像処理方法であって、
前記前処理工程は、フレーム内の画像を複数の領域に分割する領域分割工程と、
前記領域分割工程により分割した領域ごとにフィルタ強度の優先度を設定するフィルタ設定工程と、
前記フィルタ設定工程により設定されたフィルタ強度に応じて中間領域を生成する中間領域設定工程と、
前記フィルタ設定工程により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理工程とを備えることを特徴とする画像処理方法。
【請求項１１】
複数のフレームから構成される動画像の情報量を削減して出力する前処理手段と、前記前処理手段により情報量が削減された動画像から符号化データを生成する符号化データ生成手段とを有する画像処理装置であって、
前記前処理手段は、連続したフレームの中からフラッシュの当たったフレームを検出するフラッシュ検出手段と、
前記フラッシュ検出手段の検出結果に基いて、適応的にフィルタ強度を設定するフィルタ設定手段と、
前記フィルタ設定手段により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理手段とを有することを特徴とする画像処理装置。
【請求項１２】
さらに、前記フィルタ設定手段により設定されたフィルタ強度に応じて中間領域を生成する中間領域設定手段を有することを特徴とする請求項１１に記載の画像処理装置。
【請求項１３】
前記フィルタ設定手段は、前記符号化データ生成手段からの符号化情報と、フラッシュ検出手段からのフラッシュ検出情報とにより前記フィルタ強度を設定することを特徴とする請求項１１に記載の画像処理装置。
【請求項１４】
前記フィルタ設定手段は、前記フラッシュ検出手段がフラッシュを検出したフレームに強いフィルタを設定し、そうでないフレームに弱いフィルタを設定することを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記フラッシュ検出手段は、前後のフレームとの相関を検出するフレーム相関検出手段を有し、
前記フレーム相関検出手段により、前フレームと現フレームとの相関が低く、後フレームと現フレームとの相関も低く、かつ前フレームと後フレームとの相関が高い場合に、フラッシュと判定することを特徴とする請求項１１に記載の画像処理装置。
【請求項１６】
前記前処理手段は、フレーム内の画像をフラッシュの当たった領域とそうでない領域に分割し、フラッシュの当たった領域を強フィルタ領域、そうでない領域を弱フィルタ領域と設定する領域分割手段を有することを特徴とする請求項１１に記載の画像処理装置。
【請求項１７】
複数のフレームから構成される動画像の情報量を削減して出力する前処理工程と、前記前処理工程により情報量が削減された動画像から符号化データを生成する符号化データ生成工程とを有する画像処理方法であって、
前記前処理工程は、連続したフレームの中からフラッシュの当たったフレームを検出するフラッシュ検出工程と、
前記フラッシュ検出工程の検出結果に基いて、適応的にフィルタ強度を設定するフィルタ設定工程と、
前記フィルタ設定工程により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理工程とを有することを特徴とする画像処理方法。
【請求項１８】
請求項１０又は１７に記載の画像処理方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１９】
請求項１８に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置及び画像処理方法に関し、例えば、静止画データや動画像データを高能率に符号化するために用いて好適な技術に関する。
【背景技術】
【０００２】
近年、ＭＰＥＧ−２（ＩＳＯ／ＩＥＣ１３８１８）などの動画像符号化方式が蓄積、通信、放送の分野で広く用いられている。これらの符号化方式では、各フレームを符号化ブロックに分割し、フレーム内もしくはフレーム間の画像の直交変換を行い、変換係数を量子化することにより、情報量を削減し、それを可変長符号化して符号を生成している。量子化の係数を大きくすると情報量が大きく削減できるが、量子化誤差も大きくなるため、ブロック歪やモスキートノイズといった歪が発生し、画質が著しく劣化する。
【０００３】
また、静止画においては、ＪＰＥＧ符号化方式が広く用いられている。静止画においても、小さなファイルサイズに画像を圧縮しようとすると、量子化誤差が大きくなり、ブロック歪やモスキートノイズが発生することがよく知られている。
【０００４】
量子化誤差を小さくするための手段として、プリフィルタがある。プリフィルタは、入力画像にローパスフィルタなどの処理を行い、符号化器に入力される画像の情報量をあらかじめ削減しておく処理である。
【０００５】
画面内には、情報量の多い部分と少ない部分が偏在しているため、精度よくフィルタ処理するには、局所的にフィルタの特性を変えたほうが効率的である。特許文献１に記載の「動画像符号化方法及び動画像符号化装置」では、局所的な予測誤差の相違に従ってローパスフィルタの特性を変更して、主観画質を改善する方法を開示している。また、特許文献２では、局所的な予測誤差の相違にしたがってローパスフィルタの特性を変更して、主観画質を改善する方法を開示している。
【０００６】
【特許文献１】特開平９−２９８７５３号公報
【特許文献２】特開平８−１８９７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、前記特許文献１に記載の方式では、入力画像の解析によってのみ、ブロック毎のフィルタ特性を変えているので、必ずしも目標符号量に対する最適な画質にはなり得ない。
【０００８】
何故ならば、目標符号量が高く設定してあれば、プリフィルタは不要、もしくは弱い強度のものでよく、目標符号量が低く設定してある場合には、強いプリフィルタが必要となる。したがって、入力画像の特徴のみでは、十分なフィルタ制御は行うことができない問題があった。
【０００９】
また、前記特許文献１に記載の方式では、隣接ブロック間でフィルタ特性が極端に異なることによる主観画質の劣化を防ぐ処理を行っている。しかし、これも目標符号量によって、隣接ブロック間のフィルタ特性の差をどう設定するかは変わってくるので、固定的な値を与えても最適な画質にはならない問題があった。
【００１０】
さらに、前記特許文献２に記載の「動画像符号化／復号化装置」では、動き補償予測の当たらない領域に対して、強いフィルタをかける処理を行っている。このため、シーンチェンジの場合は、シーンチェンジ直後の画像に強いフィルタがかかり、以降のフレームには弱いフィルタがかかることになる。
【００１１】
しかしながら、前記特許文献２に記載の符号化方式では、フラッシュの当たったフレームがあった場合、フラッシュの当たった画像に強いフィルタがかかり、直後の元に戻った画像に対しても強いフィルタがかかることになる。
【００１２】
その結果、フラッシュの当たる直前のフレームと直後のフレームには、強い相関があるため、両者の画質に大きな差をつけることは、以降の符号化処理による符号化効率を大きく下げることになる問題があった。
本発明は前述の問題点にかんがみ、視覚特性上の歪の少ない優れた高能率符号化を行うことができるようにすることを目的としている。
【課題を解決するための手段】
【００１３】
本発明の画像処理装置は、画像の情報量を削減して出力する前処理手段と、前記前処理手段により情報量が削減された画像から符号化データを生成する符号化データ生成手段とを有する画像処理装置であって、前記前処理手段は、画像を複数の領域に分割する領域分割手段と、前記領域分割手段により分割した領域ごとにフィルタ強度の優先度を設定するフィルタ設定手段と、前記フィルタ設定手段により設定されたフィルタ強度に応じて中間領域を生成する中間領域設定手段と、前記フィルタ設定手段により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理手段とを備えることを特徴としている。
また、本発明の画像処理装置の他の特徴とするところは、複数のフレームから構成される動画像の情報量を削減して出力する前処理手段と、前記前処理手段により情報量が削減された動画像から符号化データを生成する符号化データ生成手段とを有する画像処理装置であって、前記前処理手段は、連続したフレームの中からフラッシュの当たったフレームを検出するフラッシュ検出手段と、前記フラッシュ検出手段の検出結果に基いて、適応的にフィルタ強度を設定するフィルタ設定手段と、前記フィルタ設定手段により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理手段とを有することを特徴とする。
【００１４】
本発明の画像処理方法は、画像の情報量を削減して出力する前処理工程と、前記前処理工程により情報量が削減された画像から符号化データを生成する符号化データ生成工程とを有する画像処理方法であって、前記前処理工程は、フレーム内の画像を複数の領域に分割する領域分割工程と、前記領域分割工程により分割した領域ごとにフィルタ強度の優先度を設定するフィルタ設定工程と、前記フィルタ設定工程により設定されたフィルタ強度に応じて中間領域を生成する中間領域設定工程と、前記フィルタ設定工程により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理工程とを備えることを特徴としている。
また、本発明の画像処理方法の他の特徴とするところは、複数のフレームから構成される動画像の情報量を削減して出力する前処理工程と、前記前処理工程により情報量が削減された動画像から符号化データを生成する符号化データ生成工程とを有する画像処理方法であって、前記前処理工程は、連続したフレームの中からフラッシュの当たったフレームを検出するフラッシュ検出工程と、前記フラッシュ検出工程の検出結果に基いて、適応的にフィルタ強度を設定するフィルタ設定工程と、前記フィルタ設定工程により設定されたフィルタ強度でフィルタ処理を行うフィルタ処理工程とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、符号量の情報に応じて、フィルタの設定領域の生成とフィルタの強度の指定を行うようにしたので、視覚特性上の歪の少ない優れた高能率符号化を行うことができる。
本発明の他の特徴によれば、フラッシュの当たった画像のフレームは、その前後のフレームとの相関が低下することに着目して、フラッシュの当たったフレームを検出し、この検出情報を元にフィルタ強度を設定するようにした。そのため、視覚特性上の歪の少ない優れた高能率符号化を行うことができる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照して、本発明の好適な実施形態について詳細に説明する。
＜第１の実施形態＞
先ず、本発明の第１の実施形態について説明する。
図１（Ａ）は、符号化を行う画像処理装置の全体構成を示すブロック図である。入力画像は前処理部１０１でプリフィルタなどの処理が行われ、ＤＣＴ部１０２〜可変長符号化部１０４の符号化部に送られる。可変長符号化はマクロブロック単位で行われる。
【００１７】
まず、ＤＣＴ部１０２で画像ブロックのＤＣＴ変換を行い、量子化部１０３でＤＣＴ係数の量子化を行う。量子化部１０３で量子化された係数は、可変長符号化部１０４で２次元ハフマンコードに変換される。
【００１８】
符号化されたデータはバッファ部１０５に蓄えられる。符号量制御部１１１では発生符号量を監視し、前処理部１０１や量子化部１０３に対し、フィードバックを行う。本実施形態では、前処理部１０１の出力を符号量制御部１１１からの情報を元に制御することを特徴としている。以下に、図１（Ｂ）を用いて前処理部１０１の詳細を説明する。
【００１９】
入力画像は、まず領域分割部１１２によって、複数の領域に分割される。フィルタ選択部１１４では、符号量制御部１１１からの情報を元に、領域分割した各領域にフィルタ特性を設定する。このとき設定したフィルタ特性によって、中間領域が必要と判定したら、中間領域のフィルタ特性を設定すると共に、中間領域設定部１１３で新たな領域を生成する。フィルタ処理部１１５では、各領域に領域ごとに設定されたフィルタを適応し、結果の画像を出力する。
【００２０】
まず、静止画における領域分割部の処理の流れを説明する。
図２は、色を識別することにより、領域分けを行う処理の例を示すフローチャートである。処理は画素単位としている。
ステップＳ５０１で、画像の入力を行い、次にステップＳ５０２で、入力画素が特定色かどうかの判定を行う。特定色の判定は、対象画素の値がある範囲内にあるか否かで判定するのがもっとも簡便な方法である。
【００２１】
ステップＳ５０２の判定の結果、特定色と判定したら、ステップＳ５０４に進み、この領域はフィルタ強度を弱める領域とする。これにより、特定色を含む領域を保護し、他の領域よりも解像度を下げないように調整することが可能となる。
【００２２】
また、ステップＳ５０２の判定の結果、特定色でないと判定したら、ステップＳ５０３に進み、強フィルタ領域に指定する。このようにして、特定色でない領域に強いフィルタをかけることで画面全体の情報量を下げ、相対的に特定色の領域に符号を多く割り当てることが可能となる。
【００２３】
ステップＳ５０４またはステップＳ５０３の処理が終了したら、ステップＳ５０５に進み、フレーム内の全画素の処理が終了したか判定する。この判定の結果、フレーム内の全画素の処理が終了していない場合にはステップＳ５０２に戻り、ステップＳ５０５にてフレーム内の全画素の処理が終了したと判定するまで、ステップＳ５０２からの処理を繰り返す。そして、全画素終了した時点で、処理が終わる。
【００２４】
図３は、画面イメージを示しており、入力画像５１０１に対し、特定色として肌色の領域を検出した結果が５１０２である。図３中の白い部分が肌色と判定した領域であり、黒い部分がそれ以外の領域である。肌色領域にかけるフィルタの強度を弱くすることで、顔の部分の解像度の低下を防ぐことが可能となる。
【００２５】
図４は、色の識別により領域をブロック単位に分割する処理の例を示すフローチャートである。
まず、ステップＳ６０１で画像を入力し、次に、ステップＳ６０２にて、画像のブロック化を行う。以下、ブロック単位で判定を行う処理である。まず、ステップＳ６０３にて、初期設定として、ブロック内のカウンタを「０」にリセットしておく。
【００２６】
次に、ステップＳ６０４にて、ブロック内の特定色の画素がいくつ存在するか、その数をカウントする。ブロック内の画素すべての判定が終わった時点で、ステップＳ６０５に進み、カウントした数があらかじめ設定しておいた閾値よりも多いか否かを判定する。
【００２７】
ステップＳ６０５の判定の結果、閾値よりも多い場合は、特定色を多く含むブロックとして、ステップＳ６０７に進み、弱フィルタブロックに指定する。また、ステップＳ６０５の判定の結果、閾値よりも少ない場合は、特定色をあまり含まないブロックとして、ステップＳ６０６に進み、強フィルタブロックに指定する。
【００２８】
次に、ステップＳ６０８に進み、全ブロックの処理が終了したか判定する。この判定の結果、全ブロックの処理が終了していない場合にはステップＳ６０３に戻り、前述した処理を繰り返し行う。そして、ステップＳ６０８にて、全ブロックの処理が終了したと判定したら、色の識別により領域をブロック単位に分割する処理を終了する。
【００２９】
次に、中間領域設定部１１３における処理の流れを、図５を用いて説明する。この処理は、フィルタ選択部１１４の処理において、中間領域の設定が必要と判定した際に行われる。まず、ステップＳ１３０１にて、現在設定されている中間領域の数を確認する。中間領域数ｉ＝０ならば、ステップＳ１３０２にて、弱フィルタ領域の検出を行う。
【００３０】
次に、ステップＳ１３０５にて、近傍に強フィルタ領域があるか否かを判定する。強フィルタ領域に隣接していれば、ステップＳ１３０６にて、近傍の強フィルタ領域を中フィルタ領域Ｒ（０）に設定する。これを画面全体に対して行うことにより、弱フィルタ領域に隣接している強フィルタ領域に中間フィルタ領域を設定することができる。
【００３１】
次に、中間領域を既に設定しているが、更に領域を増やさなければならない場合について説明する。まずステップＳ１３０１にて、現在設定している領域数を確認する。中間領域数ｉ＝１ならば、ステップＳ１３０３にて、中間フィルタ領域の領域番号を変更する。Ｒ（０）はＲ（１）となる。次にステップＳ１３０４にて、中間フィルタ領域Ｒ（１）を検出する。この領域は現在設定している中間フィルタ領域のうち、もっとも強度の強いものである。
【００３２】
次に、ステップＳ１３０５にて、この領域の近傍に強フィルタ領域があるか否か判定する。強フィルタ領域に隣接していれば、ステップＳ１３０６にて、近傍の強フィルタ領域を中フィルタ領域Ｒ（０）に設定する。これを画面全体に対して行うことにより、中間フィルタ領域に隣接している強フィルタ領域に新たな中間フィルタ領域を設定することができる。
【００３３】
次に、ステップＳ１３０７に進み全ての領域について処理を終了したか判定する。この判定の結果、終了している場合には終了処理を行う。また、終了していない場合にはステップＳ１３０１に戻って前述した処理を繰り返し行う。なお、ステップＳ１３０５の判定の結果、強フィルタ領域に隣接していない場合にはステップＳ１３０６の処理をジャンプしてステップＳ１３０７に進む。
【００３４】
図３の５１０３は、特定色検出による領域分割結果５１０２に対し、１つの中間領域を設定した例であり、５１０４は、３つの中間領域を設定した例である。中間領域のフィルタ強度を適当に変化させることで、弱フィルタ領域と、強フィルタ領域の境界の解像度の急激な変化を防ぐことができる。
【００３５】
次に、フィルタ選択部１１４の処理の流れを、図６のフローチャートを用いて説明する。
まず、ステップＳ１６０１にて、フィルタを強化する必要があるか否かを判定する。つまり、この判定は、発生符号量が目標符号量を超えていれば、フィルタを強化する必要があると判定し、発生符号量が目標符号量に達していなければ、フィルタを強化する必要がないと判定する。
【００３６】
また、フィルタを強化することが必要である場合にはステップＳ１６０２に進み、ステップＳ１６０２で、まず強フィルタ領域のフィルタ強度をアップする。次に、ステップＳ１６０３において、これで十分かどうか判定する。ステップＳ１６０３の判定の結果、これ以上フィルタを強化する必要がなければ、これで処理は終了する。
【００３７】
また、更にフィルタ強化が必要な場合は、ステップＳ１６０４に進み、強フィルタと弱フィルタの強度差を算出する。次に、ステップＳ１６０５において、強度差が閾値以上であるか判定する。
【００３８】
この判定の結果、強度差が閾値以上でないと判定したら、再度ステップＳ１６０２に戻って前述した処理を繰り返し行い、強フィルタ領域のフィルタ強度をアップする処理を更に行う。この処理を行うことにより、強フィルタ領域のフィルタ強度が大きくなり、ステップＳ１６０５の判定の結果、弱フィルタ領域のフィルタ強度の差が閾値を超えた場合は、以下に説明する中間領域の生成と対応するフィルタ強度の設定を行う。
【００３９】
まず、ステップＳ１６０６にて、初期設定として中間領域数「ｉ＝０」をセットする。次に、ステップＳ１６０７に進み、中フィルタ領域Ｒ（ｉ）（この場合Ｒ（０））の設定を行う。中間領域設定方法は、先に説明したとおりである。次に、ステップＳ１６０８に進み、強フィルタ領域のフィルタ強度をアップする処理を行う。次に、ステップＳ１６０９で、中フィルタ領域のフィルタ強度をアップする処理を行う。
【００４０】
次に、ステップＳ１６１０において、フィルタ強化が必要か判定する。この判定の結果、これ以上フィルタを強化する必要がなければ、これで処理は終了する。また、更にフィルタ強化が必要であると判定した場合は、ステップＳ１６１１に進み、中フィルタ領域Ｒ（ｉ）（この場合Ｒ（０））と弱フィルタ領域のフィルタ強度差を算出する。
【００４１】
次に、ステップＳ１６１２において、強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でないと判定したら、ステップＳ１６０８に戻り、強フィルタと中フィルタの強度をアップする。強度差が閾値以上になった場合は、ステップＳ１６１３にて、領域数ｉをひとつ増やし、ステップＳ１６０７にて新たな中フィルタ領域Ｒ（ｉ）（この場合Ｒ（１））の設定を行う。
【００４２】
このようにして、強フィルタと中フィルタの強度をアップする処理を行い、ステップＳ１６１０の判定の結果、フィルタ強化が不要となるまで、中間領域を次々と生成する。そのため、弱フィルタ領域の解像度を保持したまま、段階的にその外側の領域の解像度を下げていくことができる。
【００４３】
図７は、このフィルタ強度を段階的に強める方法をグラフ化した特性図である。図７において、横軸は目標値との差を示しており、右に行くほど強いフィルタを必要とする。また、縦軸はフィルタの強度を示しており、上に行くほど強いフィルタとなる。図７において、第１の区間ａでは、画像データ削減のためのフィルタは必要でない。場合によっては、画面全域にノイズ除去用の弱いフィルタをかけてもよい。
【００４４】
また、第２の区間ｂでは、強フィルタ領域のフィルタ強度をアップしている。この第２の区間ｂでは、まだフィルタの強度差が小さいため、中間フィルタ領域を生成する必要はない。弱フィルタの強度との差が閾値を超えたら、新たな中間領域を設定する。このときの強度差がｈである。
【００４５】
第３の区間ｃでは、強フィルタ領域と中間フィルタ領域のフィルタ強度をアップしていく。中間フィルタ領域と弱フィルタ領域のフィルタ強度差が閾値を超えたら、更に新たな中間領域を設定する。このときの強度差がｉである。同様に、第４の区間ｄに示すように、中間フィルタ領域と弱フィルタ領域の強度差が閾値を超える毎に、新たな中間フィルタ領域の設定を繰り返す。
【００４６】
第１の実施形態によれば、画面内にフィルタをかける領域を符号化情報を元に生成し、フィルタ強度を設定することで、符号化歪を目立たなくすることが可能となる。特に解像度を落としたくない領域に対しては、中間領域を適宜設定することにより、解像度を落とした領域との差が不連続にならず、視覚的な不自然さをなくすことが可能となる。
【００４７】
また、第１の実施形態によれば、設定したフィルタ特性によって、中間領域が必要と判定したら、中間領域のフィルタ特性を設定するとともに、中間領域設定手段により新たな領域を生成し、各領域に領域ごとに設定されたフィルタを適応するようにした。そのため、隣接ブロック間のフィルタ特性の差による不都合を無くして、最適な画質の画像を出力することができる。
【００４８】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第１の実施形態では、特定色の検出により領域分割を行っていたが、本実施形態では、近傍領域を統合する方法を用いた例を説明する。
【００４９】
全体構成は、第１の実施形態の説明で示した図１（Ａ）と同様であるので構成を説明するブロック図を省略する。第１の実施形態との違いは、領域分割部１１２における処理の流れである。この処理手順を、図８のフローチャートを参照しながら詳しく説明する。
【００５０】
まず、ステップＳ５５０１にて、初期値の画素設定を行う。これは、画面上の適当な位置に領域を成長させる中心となる初期値を設定する処理である。次に、ステップＳ５５０２の領域統合では、中心画素と隣接する画素の類似度を求め、近い値の場合は統合する、といった処理を行う。これをステップＳ５５０３の終了条件を満たすまで続ける。
【００５１】
この処理を繰り返すことにより、近傍の似た色を持つ画像は統合されていき、色の異なる境界部分まで拡張が続く。終了条件を満たすと、統合処理の結果、いくつかのまとまった領域が生成されるので、これをオブジェクト領域とする。ステップＳ５５０４にて、オブジェクト領域と判定された領域は、ステップＳ５５０５にて、弱フィルタ領域とし、オブジェクト領域でないと判定された領域は、ステップＳ５５０６にて、強フィルタ領域として処理を終える。
【００５２】
領域設定後の処理の流れは、第１の実施形態の説明と同様であるので省略する。
図９は、この処理を視覚的に説明する図である。
図９において、５４０１は、領域分割前の入力画像を示している。５４０２は、この画像に対し、初期値の画素設定を行い、領域成長させていった様子を示している。色の近い画素同士が統合されて小さな塊となり、小さな塊同士が近い色であれば、統合されて大きな塊となる。
【００５３】
これを繰り返すと色の違いによる領域分けが行えることになる。５４０３は、こうして領域分割を行った結果を２値化して示したものである。ここでは、白い部分がオブジェクトで、弱フィルタ領域となり、黒い部分が強フィルタ領域となる。したがって、中間領域を設定した際には、５４０４で示す斜線部が中間フィルタ領域となる。
【００５４】
＜第３の実施形態＞
本発明の第３の実施形態について説明する。本実施形態では、動画像に適用する例を説明する。
図１０は、符号化を行う画像処理装置の全体構成を示すブロック図である。入力画像は前処理部３００１でプリフィルタなどの処理が行われ、ＤＣＴ部３００２〜可変長符号化部３００４の符号化部に送られる。
【００５５】
可変長符号化はマクロブロック単位で行われ、フレーム内処理を行うイントラモードと、フレーム間処理を行うインターモードに分かれる。
まず、イントラモードでは、ＤＣＴ部３００２で画像ブロックのＤＣＴ変換を行い、量子化部３００３でＤＣＴ係数の量子化を行う。量子化部３００３で量子化された係数は、可変長符号化部３００４で２次元ハフマンコードに変換される。
【００５６】
インターモードでは、量子化された係数を逆量子化部３００６で元に戻し、更に逆ＤＣＴ部３００７で、画像データに戻す処理が行われる。この画像は一般に局部復号画像と呼ばれる。この画像は、現フレームの画像との参照画像としてメモリ部３００８に保存される。
【００５７】
動き検出部３０１０では、現入力画像の動きを参照画像を元に検出し、動き補償部３００９により位置合わせを行う。これによりインターモードにおけるＤＣＴ部３００２の入力はフレーム間で位置合わせを行ったのちの差分信号となる。量子化部３００３では、差分のＤＣＴ係数を量子化し、可変長符号化部３００４では、差分の量子化係数をハフマンコードに変換する。
【００５８】
このとき、逆量子化部３００６と逆ＤＣＴ部３００７によって復号される画像は差分データなので、動き補償部３００９の出力と合成することで、局部復号画像を生成する。量子化は、バッファ部３００５のバッファ容量を、符号量制御部３０１１で監視しながら制御される。
【００５９】
本実施形態では、前処理部３００１の出力を符号量制御部３０１１からの情報を元に制御することを特徴としている。前処理部１０１の詳細は、第１の実施形態の図１（Ｂ）による説明と同様である。
【００６０】
まず、領域分割部の処理の流れを説明する。
図１１に、背景差分法を用いた領域分割の例を説明するフローチャートを示す。背景差分法は、あらかじめ背景画像が得られる時に有効な領域分割手法である。
まず、ステップＳ７０１にて、背景画像を入力する。次に、ステップＳ７０２にて、現画像の入力を行う。以下は、画素単位の処理である。
【００６１】
まず、ステップＳ７０３にて、背景画像と現画像の画素の差分絶対値を算出する。次に、ステップＳ７０４に進み、差分絶対値が閾値以下か否かの判定を行う。この判定の結果、差分絶対値が閾値以下の場合は背景とみなせるので、ステップＳ７０６に進んで強フィルタ領域に指定する。
【００６２】
一方、ステップＳ７０４の判定の結果、差分絶対値が閾値より大きい場合は、オブジェクト（背景ではない）とみなせるので、保護すべき領域としてステップＳ７０５に進み、弱フィルタ領域に指定する。
【００６３】
ステップＳ７０６またはステップＳ７０５の処理を終了したらステップＳ７０７に進み、全画素の処理が終了したか判定する。この判定の結果、全画素の処理が終了していない場合にはステップＳ７０３に戻り前述した処理を繰り返し行う。そして、ステップＳ７０７において、全画素の処理が終了したと判定したら、１フレーム分の処理を終了する。
【００６４】
図１２は、画面イメージを示しており、入力画像３０５に対して、背景画像３０６との差分を求め、差分の大きい領域をオブジェクトとして検出した結果が３０７である。図１２中の白い部分がオブジェクトと判定した領域であり、黒い部分が背景と判定した領域である。オブジェクト領域にかけるフィルタを弱くすることで、人物の解像度の低下を防ぐことが可能となる。
【００６５】
図１３に、背景差分による分割をブロック単位で行う例を説明するフローチャートを示す。
まず、ステップＳ８０１にて、背景画像を入力し、次に、ステップ８０２にて、現画像の入力を行う。次に、ステップＳ８０３で、入力画像のブロック化を行う。以下は、ブロック単位の処理となる。
【００６６】
まず、ステップＳ８０４にて、初期設定としてブロック内のカウンタを「０」にリセットしておく。次に、ステップＳ８０５にて、背景画像と現画像の画素の差分絶対値を算出する。次に、ステップＳ８０６において、差分絶対値があらかじめ設定しておいた閾値以下か否か判定する。
【００６７】
この判定の結果、差分絶対値が閾値より大きければ、オブジェクトの画素として、ステップＳ８０７に進み、カウンタをカウントアップする。また、ステップＳ８０６の判定の結果、差分絶対値が閾値以下ならば、背景の画素としてカウントは行わないでステップＳ８０８に進む。
【００６８】
ステップＳ８０８においては、ブロック内のすべての画素の処理をしたか判定する。この判定の結果、ブロック内のすべての画素の処理が終了していない場合にはステップＳ８０５に戻り前述した処理を繰り返し行う。そして、ステップＳ８０８にて、ブロック内すべての画素の処理が終了したと判定したら、１ブロック分の処理が終わったので、次にステップＳ８０９に進む。
【００６９】
ステップＳ８０９においては、カウントアップしたカウント数が、あらかじめ設定した閾値以上か否か判定する。この判定の結果、閾値以上ならばオブジェクトの画素を多く含むブロックとして、ステップＳ８１１に進み、弱フィルタブロックに指定する。
【００７０】
また、ステップＳ８０９の判定の結果、カウント数が閾値以上でなければ、背景の画素を多く含むブロックとしてステップＳ８１０に進む。ステップＳ８１０においては、強フィルタブロックに指定する。ステップＳ８１１またはステップＳ８１０の処理が終了したらステップＳ８１２に進む。
【００７１】
次に、ステップＳ８１２においては、全ブロックの処理が終了したか判定する。この判定の結果、全ブロックの処理が終了していない場合には８０４に戻り前述した処理を繰り返し行う。そして、ステップＳ８１２にて、全ブロックの処理が終了したと判定した時点で、１フレーム分の処理が終了となる。中間領域設定部１１３における処理の流れは、第１の実施形態の説明と同様であるので省略する。
図１２の３０８は、先に図１１で説明した、背景差分法による領域分割結果３０７に対し、１つの中間領域を設定した例であり、３０９は、３つの中間領域を設定した例である。中間領域のフィルタ強度を適当に変化させることで、弱フィルタ領域と、強フィルタ領域の境界の解像度の急激な変化を防ぐことができる。
【００７２】
フィルタ選択部１１４以降の処理の流れは、第１の実施形態、第２の実施形態と同様である。ただし、動画の処理の場合は、必ずしも１フレーム単位で目標符号量に収めなければならない訳ではない。したがって、複数のフレームにまたがり徐々に目標値に収束させることも可能である。
【００７３】
第３の実施形態によれば、動画像においても、画面内にフィルタをかける領域を符号化情報を元に生成し、フィルタ強度を設定することで、符号化歪を目立たなくすることが可能となる。特に解像度を落としたくない領域に対しては、中間領域を適宜設定することにより、解像度を落とした領域との差が不連続にならず、視覚的な不自然さをなくすことが可能となる。
【００７４】
＜第４の実施形態＞
本発明の第４の実施形態について説明する。第１から第３の実施形態では、中間領域の生成数に制限を設けずに、弱フィルタ領域のフィルタ強度は一定としていた。本実施形態では、中間領域の生成数に制限を設け、制限数を超えた場合は、弱領域のフィルタ強度もアップするものである。
【００７５】
全体構成は、静止画像を対象とする場合は、第１の実施形態の説明で示した図１（Ａ）と同様である。また、動画像を対象とする場合は、第３の実施形態の説明で示した図１０と同様である。よって、全体構成の説明は省略する。第１、２及び３の実施形態との違いは、フィルタ選択部１１４における処理の流れである。この処理手順を、図１４のフローチャートを参照しながら詳しく説明する。
【００７６】
まず、ステップＳ１７０１にて、フィルタを強化する必要があるか否かを判定する。つまり、この判定は、発生符号量が目標符号量を超えていれば、フィルタを強化する必要があると判定し、発生符号量が目標符号量に達していなければ、フィルタを強化する必要がないと判定する。また、フィルタを強化する必要があると判定した場合にはステップＳ１７０２に進み、強フィルタ領域のフィルタ強度をアップする処理を行う。
【００７７】
次に、ステップＳ１７０３において、フィルタ強度がこれで十分かどうか判定する。この判定の結果、フィルタ強度をこれ以上強化する必要がなければ、これで処理は終了する。また、フィルタ強度を更に強化する必要がある場合はステップＳ１７０４に進み、強フィルタと弱フィルタの強度差を算出する。
【００７８】
次に、ステップＳ１７０５に進み、ステップＳ１７０４で算出した強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でないと判定したら、ステップＳ１７０２に戻り、前述した処理を繰り返し行い、強フィルタ領域のフィルタ強度を再度アップする。これにより、強フィルタ領域のフィルタ強度が大きくなり、弱フィルタ領域のフィルタ強度の差が閾値を超えたとステップＳ１７０５で判定した場合は、以下に説明する中間領域の生成と対応するフィルタ強度の設定を行う。
【００７９】
まず、ステップＳ１７０６にて、初期設定として中間領域数「ｉ＝０」をセットする。次に、ステップＳ１７０７で、中フィルタ領域Ｒ（ｉ）（この場合Ｒ（０））の設定を行う。中間領域設定方法は、先に説明したとおりである。
【００８０】
次に、ステップＳ１７０８で強フィルタ領域のフィルタ強度をアップする処理を行う。その後、Ｓ１７０９において、中フィルタ領域のフィルタ強度をアップする処理を行う。その後、ステップＳ１７１０に進んで、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が十分であり、これ以上フィルタを強化する必要がないと判定した場合には処理は終了する。
【００８１】
また、ステップＳ１７１０の判定の結果、フィルタ強化が更に必要な場合は、ステップＳ１７１１に進み、中フィルタ領域Ｒ（ｉ）（この場合Ｒ（０））と弱フィルタ領域のフィルタ強度差を算出する。次に、ステップＳ１７１２にて、強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でないと判定したら、ステップＳ１７０８に戻って前述処理を繰り返し行い、強フィルタと中フィルタの強度をアップする。
【００８２】
ステップＳ１７１２の判定の結果、強度差が閾値以上になったと判定した場合は、ステップＳ１７１３に進み、領域数「ｉ」をひとつ増やし、その後、ステップＳ１７０７にて新たな中フィルタ領域Ｒ（ｉ）（この場合Ｒ（１））の設定を行う。このようにして、中間領域を次々に生成する。
【００８３】
次に、ステップＳ１７１４において、中間領域数があらかじめ設定した最大値「ｉ＿ｍａｘ」になったか判定する。この判定の結果、なっていない場合には、ステップＳ１７０７に戻り、前述した処理を繰り返し行い、中間領域数があらかじめ設定した最大値「ｉ＿ｍａｘ」になるようにする。
【００８４】
ステップＳ１７１４の判定の結果、中間領域数があらかじめ設定した最大値「ｉ＿ｍａｘ」になった場合には、ステップＳ１７１５〜Ｓ１７１７の処理を行い、強、中、弱それぞれのフィルタ強度をアップするようにする。
【００８５】
すなわち、まずステップＳ１７１５において、強フィルタ領域のフィルタ強度をアップする処理を行う。次に、ステップＳ１７１６において、中フィルタ領域のフィルタ強度をアップする処理を行い、その後、ステップＳ１７１７において、弱フィルタ領域のフィルタ強度をアップする処理を行う。
【００８６】
次に、ステップＳ１７１８において、フィルタ強化が更に必要か判定する。この判定の結果、必要である場合にはステップＳ１７１５に戻って前述した処理を繰り返し行う。そして、ステップＳ１７１８の判定の結果、フィルタ強化が必要でなくなったら処理を終了する。このようにして、中間領域数を制限すると、強フィルタと弱フィルタ領域の最大強度差を保持したまま、段階的に全体の解像度を下げていくことができる。
【００８７】
図１５は、このフィルタ強度を段階的に強める方法をグラフ化した特性図である。中間領域数は「１」としている。第１の区間ａでは、画像データ削減のためのフィルタは必要でない。場合によっては、画面全域にノイズ除去用の弱いフィルタをかけてもよい。
【００８８】
第２の区間ｂでは、強フィルタ領域のフィルタ強度をアップしている。弱フィルタの強度との差ｈが閾値を超えたら、新たに中間領域を設定し、強フィルタ領域と中間フィルタ領域のフィルタ強度をアップしていく。
【００８９】
この区間では、まだフィルタの強度差が小さいため、中間フィルタ領域を生成する必要はない。弱フィルタの強度との差が閾値を超えたら、新たに中間領域を設定する。このときの強度差がｈである。
【００９０】
第３の区間ｃでは、強フィルタ領域と中間フィルタ領域のフィルタ強度をアップしていく。中間フィルタ領域と弱フィルタ領域のフィルタ強度差ｉが閾値を超えたら、以降の区間では、強、中、弱のフィルタ強度をアップしていく。
【００９１】
図１４や図１５では、強度差が閾値を超えた場合に、各フィルタ強度の差は一定として説明した。この部分を図示したのが、図１６（Ａ）である。この図１６（Ａ）では、中間領域数は「１」となっている。強フィルタ、中フィルタ、弱フィルタの強度差が一定のまま、同時に推移している。しかし、更に細かな制御として、２つの例を図１７及び図１８のフローチャートを参照しながら説明する。
【００９２】
図１７は、弱フィルタ領域のフィルタ強度からアップしていく処理を説明するフローチャートである。図１６（Ｂ）に示したように、強フィルタとの強度差ｈが大きくならない特徴がある。
【００９３】
まず、ステップＳ１９０１にて、フィルタ強化が必要か否かを判定する。この判定の結果、フィルタ強化が必要でないと判定したら処理を終了する。また、ステップＳ１９０１の判定の結果、フィルタ強化が必要と判定したら、ステップＳ１９０２に進み、弱フィルタ領域のフィルタ強度をアップする。
【００９４】
次に、ステップＳ１９０３に進み、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でないと判定したら処理を終了する。また、フィルタ強化が必要であると判定したらステップＳ１９０４に進み、弱フィルタと中フィルタの強度差を算出する。
【００９５】
次に、ステップＳ１９０５において、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下でなければ、ステップＳ１９０２に戻って前述した処理を繰り返し行い、弱フィルタ領域のフィルタ強度を更にアップする。このときの強度差の閾値は、弱フィルタ領域のフィルタ強度が中フィルタの強度にどこまで近づいたときに中フィルタの強度アップを開始するかにより決定する。図１６（Ｂ）の第１の区間ａは、ここまでの処理を示している。
【００９６】
ステップＳ１９０５の判定の結果、強度差が閾値以下になったら、ステップＳ１９０６に進み、中フィルタ領域のフィルタ強度をアップする。次に、ステップＳ１９０７において、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が更に必要でない場合には処理を終了する。また、ステップＳ１９０７の判定の結果、フィルタ強化が更に必要と判定すると、ステップＳ１９０８に進み、中フィルタと強フィルタの強度差を算出する。
【００９７】
次に、ステップＳ１９０９に進み、ステップＳ１９０８で算出した強度差が閾値以下か判定する。この判定の結果、前記強度差が閾値以下でなければ、ステップＳ１９０６に戻り、中フィルタの強度を更にアップする処理を行う。このときの強度差の閾値は、中フィルタの強度が強フィルタの強度にどこまで近づいたときに強フィルタの強度アップを開始するかにより決定する。
【００９８】
図１６（Ｂ）の第２の区間ｂは、ここまでの処理を示している。
ステップＳ１９０９の判定の結果、強度差が閾値以下になったら、ステップＳ１９１０に進み、強フィルタ領域のフィルタ強度をアップする処理を行う。次に、ステップＳ１９１１において、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でない場合には処理を終了する。
【００９９】
また、ステップＳ１９１１の判定の結果、フィルタ強化が必要である場合にはステップＳ１９１２に進み、強フィルタと弱フィルタの強度差を算出する。次に、ステップＳ１９１３において、前記ステップＳ１９１２で算出した強度差が閾値以上か判定する。この判定の結果、前記算出した強度差が閾値以上でなければ、ステップＳ１９１０に戻り、更に強フィルタ領域のフィルタ強度をアップする処理を行う。
【０１００】
このときの強度差の閾値は、強フィルタの強度が弱フィルタの強度からどこまで離れたときに弱フィルタ領域のフィルタ強度アップを開始するかにより決定する。図１６（Ｂ）の第３の区間ｃは、ここまでの処理を示しており、このときの強度差がｈである。強度差が閾値以上になったら、ステップＳ１９０２に戻り、フィルタ強化が不要となるまで、先ほど説明した処理を繰り返す。図１６（Ｂ）の第４の区間ｄ、第５の区間ｅ、第６の区間ｆは、前述した第１の区間ａ、第２の区間ｂ、第３の区間ｃと同じ処理の繰り返しである。
【０１０１】
もうひとつの詳細制御の例を、図１８のフローチャートと、図１６（Ｃ）の特性図を用いて説明する。
図１８のフローチャートは、強フィルタ領域のフィルタ強度からアップしていくもので、図１６（Ｃ）に示すように、隣接するフィルタの強度差が一定値より小さくならない特徴がある。
【０１０２】
まず、ステップＳ２００１において、フィルタ強化が必要か否かを判定する。この判定の結果、フィルタ強化が必要でないと判定したら処理を終了する。また、フィルタ強化が必要と判定したら、ステップＳ２００２に進み、強フィルタ領域のフィルタ強度をアップする。
【０１０３】
次に、ステップＳ２００３において、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でないと判定した場合には処理を終了する。また、フィルタ強化が更に必要と判定すると、ステップＳ２００４にて、強フィルタと中フィルタの強度差を算出し、ステップＳ２００５にて、強度差が閾値以上でなければ、ステップＳ２００２に戻り、更に強フィルタ領域のフィルタ強度をアップする。
【０１０４】
このときの強度差の閾値は、強フィルタの強度が中フィルタの強度からどれだけ離れたときに中フィルタの強度アップを開始するかにより決定する。図１６（Ｃ）の第１の区間ａは、ここまでの処理を示しており、このときの強度差がｈである。
【０１０５】
ステップＳ２００５の判定の結果、強度差が閾値以上になったら、ステップＳ２００６に進み、中フィルタ領域のフィルタ強度をアップする。次に、ステップＳ２００７において、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でないと判定した場合には処理を終了する。また、フィルタ強化が更に必要と判定すると、ステップＳ２００８に進み、中フィルタと弱フィルタの強度差を算出する。
【０１０６】
次に、ステップＳ２００９において、ステップＳ２００８において算出した強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でなければ、ステップＳ２００６に戻り、前述した処理を行い、中フィルタの強度を更にアップする処理を行う。
【０１０７】
このときの強度差の閾値は、中フィルタの強度が弱フィルタの強度からどれだけ離れたときに弱フィルタ領域のフィルタ強度アップを開始するかにより決定する。図１６（Ｃ）の第２の区間ｂは、ここまでの処理を示しており、このときの強度差がｉである。
【０１０８】
ステップＳ２００９の判定の結果、強度差が閾値以上になったら、ステップＳ２０１０に進み、弱フィルタ領域のフィルタ強度をアップする。次に、ステップＳ２０１１において、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が更に必要でない場合には処理を終了する。また、フィルタ強化が更に必要であると判定すると、ステップＳ２０１２に進み、弱フィルタと強フィルタの強度差を算出する。
【０１０９】
次に、ステップＳ２０１３において、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下でなければ、ステップＳ２０１０に戻り、弱フィルタ領域のフィルタ強度を更にアップする処理を行う。このときの強度差の閾値は、弱フィルタの強度が強フィルタの強度にどれだけ近づいたときに強フィルタの強度アップを開始するかにより決定する。図１６（Ｃ）の第３の区間ｃは、ここまでの処理を示しており、このときの強度差がｊである。
【０１１０】
ステップＳ２０１３の判定の結果、強度差が閾値以下になったら、ステップＳ２００２に戻り、フィルタ強化が不要となるまで、先ほど説明した処理を繰り返し行う。図１６（Ｃ）の第４の区間ｄ、第５の区間ｅ、第６の区間ｆは、前述した第１の区間ａ、第２の区間ｂ、第３の区間ｃと同じ処理の繰り返しである。
【０１１１】
第４の実施形態によれば、画面内にフィルタをかける領域を符号化情報を元に生成し、フィルタ強度を設定することで、符号化歪を目立たなくすることが可能となる。特に解像度の差が極端にならないよう中間領域を設定し、解像度を落としたくない領域と解像度を落とした領域の差のバランスを保ち、視覚的な不自然さをなくすことが可能となる。
【０１１２】
＜第５の実施形態＞
次に、本発明の第５の実施形態について説明する。第５の実施形態における全体構成は、第３の実施形態の説明で示した図１０と同様であるので、全体構成の説明は省略する。
第５の実施形態における前処理部の構成を説明するブロック図を図１９に示す。
【０１１３】
第５の実施形態と第３の実施形態との違いは、動き情報を用いて、フレーム間の対応領域を判定し、その連続性からフィルタ領域及びフィルタ強度を制御するようにしたものである。
【０１１４】
動き検出部３５１６では、フレーム間での動きを検出する。対応領域判定部３５１７では、領域分割部３５１２で分割されたフレーム間の領域を動き検出部３５１６の結果を用いて対応付けを行う。対応付けを行った結果は、フィルタ選択部３５１４に入力され、中間領域設定部３５１３で領域設定する際の制御情報として用いる。フィルタ処理部３５１５では、各領域に領域ごとに設定されたフィルタを適応し、結果の画像を出力する。領域分割部３５１２の処理や中間領域設定部３５１３の処理は、図１０と同様である。
【０１１５】
次に、図２０のフローチャートを用いて、フレーム内で分割されている領域をフレーム間で対応付けする処理を説明する。
まず、ステップＳ１２０１にて、前画像を入力する。次に、ステップＳ１２０２にて、現画像を入力する。その後、ステップＳ１２０３に進み、現画像が前画像からどれだけ移動しているか、動きベクトルを算出する。
【０１１６】
次にステップＳ１２０４において、ステップＳ１２０３で算出した動きベクトルを当てはめて、対応する領域の位置合わせを行う。次に、ステップＳ１２０５において、対応領域の一致度を判定する。
【０１１７】
この判定の結果、一致度が高い場合は、対応領域があるとして、ステップＳ１２０７に進み、この領域を連続領域に指定する。一方、ステップＳ１２０５の判定の結果、一致度が低い場合は、対応領域がないとして、ステップＳ１２０６に進み、新規領域に指定する処理を行う。
【０１１８】
図２１の３６１０は、前フレームの画像である。また、フレーム画像３６１１はその領域分割結果を示し、フレーム画像３６１２は現フレームの画像である。また、フレーム画像３６１３はその領域分割結果を示している。
【０１１９】
図２０の処理によれば、人物部分の領域は、対応が取れるため、連続領域に指定する。しかし、ボールの部分は対応が取れないため、新規領域に指定する。フレーム画像３６１４は、連続領域に対し、１つの中間領域を設定した例である。
【０１２０】
本実施形態では、弱フィルタ領域となる部分について、更に領域の連続性を考慮することによって、重み付けを変え、フィルタ強度に優先順位をつけることが可能となる。
次に、図２２を用いて、弱フィルタ領域のうち、連続領域を保護する場合の、フィルタ選択部の処理を説明する。
【０１２１】
まず、ステップＳ２１０１にて、フィルタ強化が必要か否かを判定する。この判定の結果、フィルタ強化が必要でないと判定したら、処理を終了する。また、フィルタ強化が必要と判定したらステップＳ２１０２に進み、新規領域のフィルタの強度をアップする処理を行う。
【０１２２】
次に、ステップＳ２１０３にて、更にフィルタ強化が必要か判定する。この判定の結果、フィルタ強化が必要ではない場合には処理を終了する。また、フィルタ強化が必要であると判定したらステップＳ２１０４に進み、新規領域のフィルタと連続領域のフィルタの強度差を算出する。
【０１２３】
次に、ステップＳ２１０５にて、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下の場合にはステップＳ２１０２に戻り、更に新規領域のフィルタ強度をアップする処理を行う。このときの強度差の閾値は、新規領域のフィルタ強度が連続領域のフィルタの強度からどれだけ離れたときに連続領域のフィルタの強度アップを開始するかにより決定する。
【０１２４】
強度差がアップして閾値以上になったことがステップＳ２１０５で判定されたら、ステップＳ２１０６に進み、新規領域のフィルタ強度をアップする処理を行う。次に、ステップＳ２１０７に進み、連続領域のフィルタ強度をアップする処理を行う。
【０１２５】
次に、ステップＳ２１０８にて、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でないと判定されたら処理を終了する。また、ステップＳ２１０８の判定の結果、フィルタ強化が更に必要と判定されたら、ステップＳ２１０９に進み、連続領域のフィルタと中フィルタの強度差を算出する。このときの強度差の閾値は、連続領域のフィルタ強度が中フィルタの強度にどれだけ近づいたときに、中フィルタの強度アップを開始するかにより決定する。
【０１２６】
次に、ステップＳ２１１０にて、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下でなければ、ステップＳ２１０６に戻り、前述した処理を繰り返し行い、連続領域と新規領域のフィルタ強度を更にアップする処理を行う。また、ステップＳ２１１０の判定の結果、強度差が閾値より小さい場合は、中間領域のフィルタを強化する必要があるため、この処理を一旦終える。
【０１２７】
また、図２２の場合とは逆に、弱フィルタ領域のうち、新規領域を保護する場合の、フィルタ選択部の処理内容は、図２３のフローチャートに示すようになる。すなわち、まず、ステップＳ２２０１にて、フィルタ強化が必要か否かを判定する。
【０１２８】
この判定の結果、フィルタ強化が必要でないと判定したら、処理を終了する。また、フィルタ強化が必要と判定したらステップＳ２２０２に進み、連続領域のフィルタの強度をアップする処理を行う。
【０１２９】
次に、ステップＳ２２０３にて、更にフィルタ強化が必要か判定する。この判定の結果、フィルタ強化が必要ではない場合には処理を終了する。また、フィルタ強化が必要であると判定したらステップＳ２２０４に進み、連続領域のフィルタと新規領域のフィルタの強度差を算出する。
【０１３０】
次に、ステップＳ２２０５にて、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下の場合にはステップＳ２２０２に戻り、更に連続領域のフィルタ強度をアップする処理を行う。このときの強度差の閾値は、連続領域のフィルタ強度が新規領域のフィルタの強度からどれだけ離れたときに連続領域のフィルタの強度アップを開始するかにより決定する。
【０１３１】
強度差がアップして閾値以上になったことがステップＳ２２０５で判定されたら、ステップＳ２２０６に進み、連続領域のフィルタ強度をアップする処理を行う。次に、ステップＳ２２０７に進み、新規領域のフィルタ強度をアップする処理を行う。
【０１３２】
次に、ステップＳ２２０８にて、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でないと判定されたら処理を終了する。また、ステップＳ２２０８の判定の結果、フィルタ強化が更に必要と判定されたら、ステップＳ２２０９に進み、新規領域のフィルタと中フィルタの強度差を算出する。このときの強度差の閾値は、連続領域のフィルタ強度が中フィルタの強度にどれだけ近づいたときに、中フィルタの強度アップを開始するかにより決定する。
【０１３３】
次に、ステップＳ２２１０にて、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下でなければ、ステップＳ２２０６に戻り、前述した処理を繰り返し行い、連続領域と連続領域のフィルタ強度を更にアップする処理を行う。また、ステップＳ２２１０の判定の結果、強度差が閾値より小さい場合は、中間領域のフィルタを強化する必要があるため、この処理を一旦終える。
【０１３４】
第５の実施形態によれば、画面内にフィルタをかける領域を符号化情報を元に生成し、フィルタ強度を設定することで、符号化歪の目立たない符号化システムを実現することができる。特に、フィルタの強度設定に、動きの情報も付加した中間領域を設定することで、視覚的な不自然さをなくすことが可能となる。
【０１３５】
＜第６の実施形態＞
本発明の第６の実施形態について説明する。なお、以下に説明する第６の実施形態〜第８の実施形態では、フラッシュの当たったフレームがあった場合でも視覚特性上の歪を少なくしながら高能率に符号化できる実施形態について、説明する。第６の実施形態〜第８の実施形態における全体構成は、図１０と同様であるので、説明を省略する。
【０１３６】
第６の実施形態では、前処理部３００１の出力を符号量制御部３０１１からの情報を元に制御することを特徴としている。第６の実施形態における詳細な構成を図２４を用いて説明する。
まず、フラッシュ検出部３１１８では、入力画像がフラッシュの当たった画像か否かの判定を行う。判定結果はフィルタ選択部３１１４に送られる。
【０１３７】
フィルタ選択部３１１４では、符号量制御部３０１１からの情報とフラッシュ判定の情報を元に、フィルタ特性を設定する。フィルタ処理部３１１５では、設定されたフィルタを適応し、結果の画像を出力する。
【０１３８】
次に、図２５を用いて、フィルタ選択の基本的な処理を説明する。
まず、ステップＳ９０１で画像の入力を行い、次に、ステップＳ９０２に進み、入力画像がフラッシュの当たった画像であるか判定する。
【０１３９】
この判定の結果、入力画像がフラッシュの当たっていると判定されれば、ステップＳ９０４に進み、このフレームを強フィルタフレームに指定する。また、ステップＳ９０２の判定の結果、フラッシュの当たった画像ではないと判定された場合は、ステップＳ９０３に進み、弱フィルタフレームに指定する。
【０１４０】
次に、図２６と図２７を用いて、フラッシュ画像の検出処理を説明する。
フラッシュの当たった画像の特徴は、そのフレームのみが前後のフレームとの相関が低下するので、これを検出するようにしている。すなわち、図２６のフローチャートに示したように、まず、ステップＳ１００１において、現フレームと前フレームとの間の相関を判定する。
【０１４１】
ステップＳ１００１の判定の結果、相関が小さい場合は、フラッシュが当たった画像とは判定してステップＳ１００２に進み、現フレームと後フレームとの相関を判定する。また、相関が大きい場合は、シーンチェンジの可能性が高く、フラッシュが当たった画像とは判定しないで処理を終了する。
【０１４２】
ステップＳ１００２の判定の結果、現フレームと後フレームとの相関が大きい場合には処理を終了する。また、相関が小さい場合は、ステップＳ１００３に進み、前フレームと後フレームとの相関を判定する。
【０１４３】
ステップＳ１００３の判定において、相関が大きい場合は、ステップＳ１００４に進み、フラッシュの当たった画像と判定する。また、ステップＳ１００３の判定の結果、相関が大きくない場合は、シーン全体に連続性がないと考えられるので処理を終了する。
【０１４４】
次に、相関の判定処理の詳細について、図２７を用いて説明する。
まず、ステップＳ１１０１において、フレーム間の差分値を算出する。次に、ステップＳ１１０２に進み、差分値の絶対値和を算出する。その後、ステップＳ１１０３に進み、算出した差分絶対値和があらかじめ設定した閾値Ｔｆよりも大きいか判定する。
【０１４５】
ステップＳ１１０３の判定の結果、算出した差分絶対値和が閾値Ｔｆよりも大きければ、ステップＳ１１０５に進み、相関小と判定する。また、ステップＳ１１０３の判定の結果、閾値Ｔｆよりも小さい場合は、ステップＳ１１０４に進み、相関大と判定する。なお、フレーム間で動きを検出できる場合は、動き量に応じた位置合わせを行ってから、差分値算出を行うようにすると、より高い精度が得られる。
【０１４６】
次に、図２８を用いて、フラッシュ検出フレームに対するフィルタの強度設定の処理を説明する。
まず、ステップＳ１６０１において、フィルタを強化する必要があるか判定する。つまり、この判定は、発生符号量が目標符号量を超えていれば、フィルタを強化する必要があると判定し、発生符号量が目標符号量に達していなければ、フィルタを強化する必要がないと判定する。
【０１４７】
ステップＳ１６０１の判定の結果、フィルタを強化する必要がないと判定した場合には処理を終了する。また、フィルタを強化する必要があると判定した場合にはステップS１６０２に進み、強フィルタ領域のフィルタ強度をアップする。
【０１４８】
次に、ステップＳ１６０３において、これで十分かどうか判定する。この判定の結果、これ以上フィルタを強化する必要がなければ、これで処理は終了する。また、フィルタ強化が更に必要な場合は、ステップＳ１６０２に戻り前述処理を繰り返す。
【０１４９】
本実施形態では、強フィルタ領域はフラッシュの当たっているフレームであり、弱フィルタ領域はそれ以外のフレームである。したがって、弱フィルタ領域の解像度を一定に保ったまま、強フィルタ領域、すなわちフラッシュの当たっているフレームの解像度のみを下げることができる。
【０１５０】
図２９は、画面イメージを示している。フレーム４０１〜フレーム４０５は、連続したシーケンスであり、フレーム４０３は、フラッシュの当たっているフレームである。先に説明したフラッシュ検出部３１１８により、フラッシュの当たっているフレームを検出すると、フレーム４０３が強フィルタフレームに設定され、それ以外のフレームが弱フィルタフレームに設定される。
【０１５１】
フレーム４０３の前後のフレーム、すなわち、フレーム４０２とフレーム４０４は同様の強度のフィルタがかかることになるので、符号化時に大きな差分データが発生することがない。また、フレーム４０３には、強いフィルタがかかるので、画像の解像度が低下し、このフレーム４０３内での発生符号量を抑えることができる。したがって、全体として、視覚特性の優れた符号化システムを実現できることとなる。
【０１５２】
第６の実施形態によれば、フラッシュの当たったフレームを検出することにより、この情報を元にフィルタ強度を設定することで、符号化歪を目立たなくすることが可能となる。
【０１５３】
＜第７の実施形態＞
次に、本発明の第７の実施形態について説明する。第６の実施形態では、フラッシュが当たっているか否かをフレーム単位で検出していたが、本実施形態では、フレーム内でフラッシュの当たっている部分とそうでない部分に領域分けを行い、領域ごとのフィルタ制御を行うようにしている。
【０１５４】
図３０に、第７の実施形態における前処理部の構成を説明するブロック図を示す。第６の実施形態との違いは、フラッシュ検出部３１１８とフィルタ処理部３１１５との間に領域分割部３１１２を設け、フィルタ選択部３１１４の制御に領域分割情報を利用する点にある。
【０１５５】
まず、フラッシュ検出部３１１８が、フラッシュの当たったフレームを検出すると、領域分割部３１１２において、このフレーム画像をフラッシュの当たった領域とそうでない領域に分割を行う。分割情報はフィルタ選択部３１１４に送られる。
【０１５６】
フィルタ選択部３１１４では、前述した図１０の符号量制御部３０１１からの情報と、フラッシュ検出部３１１８のフラッシュ判定の情報、及び領域分割部３１１２からの領域分割情報を元に、フィルタ特性を設定する。フィルタ処理部３１１５では、フィルタ選択部３１１４で設定されたフィルタを適応し、結果の画像を出力する。
【０１５７】
ここで、図３１のフローチャートを用いて、領域分割部３１１２で行う領域分割処理の詳細を説明する。この領域分割処理は、フラッシュが当たったと判定されたフレームに対して行う。以下では、画素単位の処理として説明する。
【０１５８】
まず、ステップＳ３２０１において、前フレームとの間の差分値を検出する。この差分計算は、フラッシュの当たっていないフレームであれば、前フレームでも後フレームでも構わない。
【０１５９】
次に、ステップＳ３２０２に進み、ステップＳ３２０１で検出した差分値が閾値以下か否かの判定を行う。この判定の結果、差分値が閾値以下であれば、この部分には、フラッシュが当たっていないとみなせるので、ステップＳ３２０３に進み、弱フィルタ領域と判定する。一方、ステップＳ３２０２の判定の結果、差分値が閾値より大きい場合は、フラッシュが当たっているとみなせるので、ステップＳ３２０４に進み強フィルタ領域と判定する。
【０１６０】
ステップＳ３２０３の処理、またはステップＳ３２０４の処理を終了したら、次に、ステップＳ３２０５に進み、全画素の処理が終了したか判定する。この判定の結果、全画素の処理が終了していない場合にはステップＳ３２０１に戻り前述した処理を繰り返し行う。また、ステップＳ３２０５の判定の結果、全画素の処理が終了した場合には領域分割処理を終了する。
【０１６１】
次に、図３２を用いて、フラッシュ検出フレームに対するフィルタの強度設定の処理を説明する。
まず、ステップＳ３７０１において、フィルタを強化する必要があるか判定する。つまり、この判定は、発生符号量が目標符号量を超えていれば、フィルタを強化する必要があると判定し、発生符号量が目標符号量に達していなければ、フィルタを強化する必要がないと判定する。
【０１６２】
ステップＳ３７０１の判定の結果、フィルタを強化する必要がない場合には処理を終了する。またフィルタを強化する必要がある場合にはステップＳ３７０２に進む。ステップＳ３７０２では、強フィルタ領域のフィルタ強度をアップする処理を行う。
【０１６３】
次に、ステップＳ３７０３において、これで十分かどうか判定する。この判定の結果、これ以上フィルタを強化する必要がなければ、これで処理は終了する。また、フィルタ強化が更に必要な場合は、ステップＳ３７０４に進み、強フィルタと弱フィルタの強度差を算出する。
【０１６４】
次に、ステップＳ３７０５において、強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でないと判定したら、再度ステップＳ３７０２に戻り、強フィルタ領域のフィルタ強度をアップする処理を行う。これにより、強フィルタ領域のフィルタ強度が大きくなる。
【０１６５】
ステップＳ３７０５の判定の結果、弱フィルタ領域のフィルタ強度の差が閾値を超えた場合は、ステップＳ３７０６に進み、強フィルタ領域のフィルタ強度をアップする処理を行う。次に、ステップＳ３７０７に進み、弱フィルタ領域のフィルタ強度をアップする処理を行う。
【０１６６】
以降、ステップＳ３７０８に進みフィルタ強化が不要となるまで、ステップＳ３７０６からの処理を繰り返す。本実施形態では、フレーム内で分割した領域ごとにフィルタ強度を設定している。フィルタの強度差に閾値を設定すると、フレーム内の領域間で解像度の差によって生じる視覚的な劣化を抑えることができる。
【０１６７】
図３３（Ａ）は、このフィルタ強度を段階的に強める方法をグラフ化した特性図である。この特性図において、横軸は目標値との差を示しており、右に行くほど強いフィルタを必要とする。また、縦軸はフィルタの強度を示しており、上に行くほど強いフィルタとなる。
【０１６８】
図３３（Ａ）に示したように、第１の区間ａでは、画像データ削減のためのフィルタは必要ない。場合によっては、画面全域にノイズ除去用の弱いフィルタをかけてもよい。
【０１６９】
それに対して、第２の区間ｂでは、強フィルタ領域のフィルタ強度をアップしている。この第２の区間ｂでは、まだフィルタの強度差が小さいため、弱フィルタ領域のフィルタ強度をアップする必要はない。
【０１７０】
そして、強フィルタと弱フィルタの強度差が所定の閾値を超えたら、弱フィルタの強度をアップする。このときの強度差がｈである。以後の区間では、強フィルタ領域と弱フィルタ領域のフィルタ強度をアップしていく。このとき、フィルタの強度差ｈは一定となる。
【０１７１】
前記の説明では、強度差が所定の閾値を超えた場合に、各フィルタ強度の差は一定とするとして説明した。しかし、強フィルタと弱フィルタとを更に細かく制御する処理としてもよい。
【０１７２】
以下に、２つの例を図３４、図３５のフローチャートを用いて説明する。
図３４は、弱フィルタ領域のフィルタ強度からアップしていくようにした例で、この例の場合には、図３３（Ｂ）に示すように、強フィルタとの強度差が大きくならない特徴がある。
【０１７３】
まず、ステップＳ３９０１において、フィルタ強化が必要か判定する。この判定の結果、フィルタ強化が必要ではないと判定したら処理を終了する。また、フィルタ強化が必要である必要と判定したら、ステップＳ３９０２に進み、弱フィルタの強度をアップする。
【０１７４】
次に、ステップＳ３９０３に進み、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が更に必要でないと判定した場合には処理を終了する。また、フィルタ強化が更に必要と判定すると、ステップＳ３９０４に進み、弱フィルタと強フィルタの強度差を算出する。
【０１７５】
その後、ステップＳ３９０５に進み、強度差が閾値以下でなければ、ステップＳ３９０２に戻り、更に弱フィルタの強度をアップする。このときの強度差の閾値は、弱フィルタの強度が強フィルタの強度にどこまで近づいたときに強フィルタの強度アップを開始するかにより決定する。
【０１７６】
図３３（Ｂ）の第１の区間ａは、ここまでの処理を示している。強度差が閾値以下になったら、ステップＳ３９０６に進み、強フィルタ領域のフィルタ強度をアップする。次に、ステップＳ３９０７に進み、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要でない場合には処理を終了する。また、フィルタ強化が更に必要と判定すると、ステップＳ３９０８に進み、強フィルタと弱フィルタの強度差を算出する。
【０１７７】
その後、ステップＳ３９０９に進み、ステップＳ３９０８で算出した強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でなければ、ステップＳ３９０６に戻り、強フィルタの強度を更にアップする処理を行う。このときの強度差の閾値は、強フィルタの強度が弱フィルタの強度からどこまで離れたときに弱フィルタの強度アップを開始するかにより決定する。図３３（Ｂ）の第２の区間ｂは、ここまでの処理を示しており、このときの強度差がｈである。
【０１７８】
ステップＳ３９０９の判定の結果、強度差が閾値以上になったと判定したら、ステップＳ３９０２に戻り、フィルタ強化が不要となるまで、前述した処理をステップＳ３９０２〜ステップＳ３９０９の処理を繰り返す。
【０１７９】
次に、もうひとつの詳細制御例を、図３５と図３３（Ｃ）とを用いて説明する。
図３５のフローチャートは、強フィルタ領域のフィルタ強度からアップしていく処理手順を説明するもので、図３３（Ｃ）に示すように、隣接するフィルタの強度差が一定値より小さくならない特徴がある。
【０１８０】
まず、ステップＳ４００１において、フィルタ強化が必要か判定する。この判定の結果、フィルタ強化が必要ない場合には処理を終了する。また、ステップＳ４００１の判定の結果、フィルタ強化が更に必要と判定したら、ステップＳ４００２に進み、強フィルタの強度をアップする。
次に、ステップＳ４００３に進み、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要ない場合には処理を終了する。また、フィルタ強化が更に必要であると判定したらステップＳ４００４に進み、強フィルタと弱フィルタの強度差を算出する。
【０１８１】
その後、ステップＳ４００５に進み、強度差が閾値以上か判定する。この判定の結果、強度差が閾値以上でなければ、ステップＳ４００２に戻り、強フィルタの強度を更にアップする。このときの強度差の閾値は、強フィルタの強度が弱フィルタの強度からどれだけ離れたときに弱フィルタの強度アップを開始するかにより決定する。
【０１８２】
図３３（Ｃ）において、第１の区間ａは、ここまでの処理を示しており、このときの強度差がｈである。この強度差が閾値以上になったら、ステップＳ４００６に進み、弱フィルタ領域のフィルタ強度をアップする処理を行う。
【０１８３】
次に、ステップＳ４００７に進み、フィルタ強化が更に必要か判定する。この判定の結果、フィルタ強化が必要ない場合には処理を終了する。また、フィルタ強化が更に必要と判定すると、ステップＳ４００８に進み、弱フィルタと強フィルタの強度差を算出する。
【０１８４】
次に、ステップＳ４００９に進み、強度差が閾値以下か判定する。この判定の結果、強度差が閾値以下でなければ、ステップＳ４００６に戻り、弱フィルタの強度を更にアップする処理を行う。このときの強度差の閾値は、弱フィルタの強度が強フィルタの強度にどれだけ近づいたときに強フィルタの強度アップを開始するかにより決定する。
【０１８５】
図３３（Ｃ）第２の区間ｂは、ここまでの処理を示しており、このときの強度差がｉである。強度差が所定の閾値以下になったら、ステップＳ４００２に戻り、フィルタ強化が不要となるまで、前述したステップＳ４００２〜ステップＳ４００９の処理を繰り返し行う。
【０１８６】
図３６は、画面イメージを示している。図３６において、フレーム４１０１〜フレーム４１０５は、連続したシーケンスであり、フレーム４１０３は、フラッシュの当たっているフレームである。
【０１８７】
このフレーム４１０３に対し、領域分割を行った結果がフレーム４２０３である。図３６において、白い部分がフラッシュの当たった領域、黒い部分がフラッシュの当たっていない領域を示している。フラッシュの当たっていない領域に対しては、フレーム間でフィルタ強度の連続性が保たれるので、符号化時に大きな差分データが発生することがない。
【０１８８】
また、フレーム４１０３のフラッシュの当たっている領域には、強いフィルタがかかるので、画像の解像度が低下し、このフレーム４１０３内での発生符号量を抑えることができる。したがって、全体として、視覚特性の優れた符号化システムを実現できることとなる。
【０１８９】
第７の実施形態によれば、フラッシュの当たったフレーム４１０３を検出し、さらにそのフレーム４１０３内でフラッシュの当たっている領域とそうでない領域とを分割し、この情報を元にフィルタ強度を設定する。そのため、符号化歪を更に目立たなくすることが可能な優れた高能率符号化を行うことができる。
【０１９０】
＜第８の実施形態＞
次に、本発明の第８の実施形態について説明する。
第８の実施形態における前処理部の構成を説明するブロック図を図３７に示す。
第６、及び第７の実施形態との違いは、フラッシュ検出を用いて、領域分割を行い、その結果に対し中間のフィルタ領域設定およびフィルタ強度を制御するようにしたものである。
【０１９１】
まず、フラッシュ検出部６１１８が、フラッシュの当たったフレームを検出すると、領域分割部６１１２において、このフレーム画像をフラッシュの当たった領域とそうでない領域に分割を行う。分割情報はフィルタ選択部６１１４に送られる。
【０１９２】
フィルタ選択部６１１４では、符号量制御部（図示せず：図１０の符号量制御部３０１１に相当する）からの情報と、フラッシュ検出部６１１８のフラッシュ判定の情報、及び領域分割部６１１２からの領域分割情報を元に、フィルタ特性を設定する。このとき設定したフィルタ特性によって、中間領域が必要と判定したら、中間領域のフィルタ特性を設定すると共に、中間領域設定部６１１３で新たな領域を生成する。フィルタ処理部６１１５では、各領域に領域ごとに設定されたフィルタを適応し、結果の画像を出力する。
【０１９３】
図３８の６２０１は、動画像の中からフラッシュの当たった画像を２値化して表示したものである。図の白い部分がフラッシュの当たった領域であり、強フィルタ領域となる。黒い部分は、弱フィルタ領域である。中間領域は、強フィルタ領域で、弱フィルタ領域に隣接部分に設定する。したがって、６２０２の網線領域が中間フィルタ領域となる。
【０１９４】
第８の実施形態によれば、中間領域を設定することにより、フラッシュの当たった領域とそうでない領域との差が不連続にならず、視覚的な不自然さをなくすことが可能となる。
【０１９５】
（本発明に係る他の実施形態）
また、上記実施形態では、ネットワークを構成するハードウェア等が含まれるものの、各処理部は実際はソフトウェアで実現できるものである。即ち、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または、記録媒体）を、システムあるいは装置に供給する。
【０１９６】
そして、そのシステムあるいは装置のコンピュータ（または、ＣＰＵやＭＰＵ）が、記憶媒体に格納されたプログラムコードを読み出し、実行することによっても達成されることは言うまでもない。
【０１９７】
この場合、記憶媒体から読み出されたプログラムコード自体が、前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体が本発明を構成することになる。
【０１９８】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される場合に限られない。例えば、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１９９】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、前述した実施形態の機能が実現される場合も含まれる。
【０２００】
つまり、プログラムコードがメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって実現される場合も含まれる。
【図面の簡単な説明】
【０２０１】
【図１】本発明の第１の実施形態を示し、画像処理装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態を示し、画素単位の特定色検出による領域検出方法を説明するためのフローチャートである。
【図３】本発明の第１の実施形態を示し、画像データと領域分割結果及び中間領域生成について説明するための図である。
【図４】本発明の第１の実施形態を示し、ブロック単位の特定色検出による領域検出方法を説明するためのフローチャートである。
【図５】本発明の第１の実施形態を示し、画素単位の中間領域生成を説明するためのフローチャートである。
【図６】本発明の第１の実施形態を示し、フィルタ選択を説明するためのフローチャートである。
【図７】本発明の第１の実施形態を示し、フィルタ強度を段階的に強める方法を説明する特性図である。
【図８】本発明の第２の実施形態を示し、類似色の領域統合による領域検出方法を説明するためのフローチャートである。
【図９】本発明の第２の実施形態を示し、画像データと領域分割結果及び中間領域生成について説明するための図である。
【図１０】本発明の第３の実施形態を示し、画像処理装置の構成を示すブロック図である。
【図１１】本発明の第３の実施形態を示し、画素単位の背景差分法による領域検出方法を説明するためのフローチャートである。
【図１２】本発明の第３の実施形態を示し、画像データと領域分割結果及び中間領域生成について説明するための図である。
【図１３】本発明の第３の実施形態を示し、ブロック単位の背景差分法による領域検出方法を説明するためのフローチャートである。
【図１４】本発明の第４の実施形態を示し、フィルタ選択を説明するためのフローチャートである。
【図１５】本発明の第４の実施形態を示し、フィルタ強度を段階的に強める方法を説明する特性図である。
【図１６】本発明の第４の実施形態を示し、詳細なフィルタ強度の設定を説明するためのグラフである。
【図１７】本発明の第４の実施形態を示し、詳細なフィルタ選択を説明するためのフローチャートである。
【図１８】本発明の第４の実施形態を示し、詳細なフィルタ選択を説明するためのフローチャートである。
【図１９】本発明の第５の実施形態を示し、画像処理装置の構成を示すブロック図である。
【図２０】本発明の第５の実施形態を示し、フレーム間の対応領域判定を説明するためのフローチャートである。
【図２１】本発明の第５の実施形態を示し、画像データと領域分割結果及び中間領域生成について説明するための図である。
【図２２】本発明の第５の実施形態を示し、連続領域優先のフィルタ選択を説明するためのフローチャートである。
【図２３】本発明の第５の実施形態を示し、新規領域優先のフィルタ選択を説明するためのフローチャートである。
【図２４】本発明の第６の実施形態を示し、画像処理装置の構成を示すブロック図である。
【図２５】本発明の第６の実施形態を示し、フレーム設定を説明するためのフローチャートである。
【図２６】本発明の第６の実施形態を示し、フラッシュフレーム検出を説明するためのフローチャートである。
【図２７】本発明の第６の実施形態を示し、フラッシュ検出の詳細を説明するためのフローチャートである。
【図２８】本発明の第６の実施形態を示し、フィルタ選択を説明するためのフローチャートである。
【図２９】本発明の第６の実施形態を示し、画面イメージとフィルタ強度の関係について説明するための図である。
【図３０】本発明の第７の実施形態を示し、画像処理装置の構成を示すブロック図である。
【図３１】本発明の第７の実施形態を示し、領域設定を説明するためのフローチャートである。
【図３２】本発明の第７の実施形態を示し、フィルタ選択を説明するためのフローチャートである。
【図３３】本発明の第７の実施形態を示し、詳細なフィルタ強度の設定を説明するためのグラフである。
【図３４】本発明の第７の実施形態を示し、詳細なフィルタ選択を説明するためのフローチャートである。
【図３５】本発明の第７の実施形態を示し、詳細なフィルタ選択を説明するためのフローチャートである。
【図３６】本発明の第７の実施形態を示し、画面イメージとフィルタ強度の関係について説明するための図である。
【図３７】本発明の第８の実施形態を示し、画像処理装置の構成を示すブロック図である。
【図３８】本発明の第８の実施形態を示し、領域分割結果及び中間領域生成について説明するための図である。
【符号の説明】
【０２０２】
１０１  前処理部
１０２  ＤＣＴ部
１０３  量子化部
１０４  可変長符号化部
１０５  バッファ部
１１１  符号量制御部
１１２  領域分割部
１１３  中間領域設定部
１１４  フィルタ選択部
１１５  フィルタ処理部
【図１】
2006180470.tif 000003
【図２】
2006180470.tif 000004
【図３】
2006180470.tif 000005
【図４】
2006180470.tif 000006
【図５】
2006180470.tif 000007
【図６】
2006180470.tif 000008
【図７】
2006180470.tif 000009
【図８】
2006180470.tif 000010
【図９】
2006180470.tif 000011
【図１０】
2006180470.tif 000012
【図１１】
2006180470.tif 000013
【図１２】
2006180470.tif 000014
【図１３】
2006180470.tif 000015
【図１４】
2006180470.tif 000016
【図１５】
2006180470.tif 000017
【図１６】
2006180470.tif 000018
【図１７】
2006180470.tif 000019
【図１８】
2006180470.tif 000020
【図１９】
2006180470.tif 000021
【図２０】
2006180470.tif 000022
【図２１】
2006180470.tif 000023
【図２２】
2006180470.tif 000024
【図２３】
2006180470.tif 000025
【図２４】
2006180470.tif 000026
【図２５】
2006180470.tif 000027
【図２６】
2006180470.tif 000028
【図２７】
2006180470.tif 000029
【図２８】
2006180470.tif 000030
【図２９】
2006180470.tif 000031
【図３０】
2006180470.tif 000032
【図３１】
2006180470.tif 000033
【図３２】
2006180470.tif 000034
【図３３】
2006180470.tif 000035
【図３４】
2006180470.tif 000036
【図３５】
2006180470.tif 000037
【図３６】
2006180470.tif 000038
【図３７】
2006180470.tif 000039
【図３８】
2006180470.tif 000040