(57)【要約】【課題】  フレーム内の量子化パラメータ制御において、画質の劣化を抑制しつつ、必要なメモリビット数及び演算コストを抑制する。【解決手段】  画像をブロック単位で符号化する画像符号化装置であって、前記ブロックの評価値を取得する第１の取得手段と、前記第１の取得手段によって取得された前記評価値に基づいて、複数のクラスのうち前記ブロックの属するクラスを決定する決定手段と、前記複数のクラスの一部である所定のクラスに属するブロックの数を示す計数情報を取得する第２の取得手段と、前記第２の取得手段によって取得された前記計数情報に基づいて、前記所定のクラスと異なるクラスに属するブロックを符号化するために用いられる量子化パラメータを設定する設定手段とを有する。【選択図】  図１
2015115735.tif 000002
【特許請求の範囲】
【請求項１】
画像をブロック単位で符号化する画像符号化装置であって、
前記ブロックの評価値を取得する第１の取得手段と、
前記第１の取得手段によって取得された前記評価値に基づいて、複数のクラスのうち前記ブロックの属するクラスを決定する決定手段と、
前記複数のクラスの一部である所定のクラスに属するブロックの数を示す計数情報を取得する第２の取得手段と、
前記第２の取得手段によって取得された前記計数情報に基づいて、前記所定のクラスと異なるクラスに属するブロックを符号化するために用いられる量子化パラメータを設定する設定手段と
を有することを特徴とする画像符号化装置。
【請求項２】
前記第２の取得手段は、視覚特性に基づく前記所定のクラスに属するブロックの数を示す計数情報を取得することを特徴とする、請求項１に記載の画像符号化装置。
【請求項３】
前記第１の取得手段は、前記ブロックの輝度の複雑度に基づく評価値を取得することを特徴とする、請求項１又は請求項２に記載の画像符号化装置。
【請求項４】
前記ブロックの輝度の複雑度は、前記ブロックを分割したサブブロックに属する画素の輝度値と当該サブブロックの輝度の平均値との差分の大きさの合計値である、当該サブブロックの複雑度に基づいて決定された値であることを特徴とする請求項３に記載の画像符号化装置。
【請求項５】
前記ブロックの輝度の複雑度は、前記ブロックに含まれるサブブロックの複雑度のうち、最小値であることを特徴とする請求項４に記載の画像符号化装置。
【請求項６】
前記第１の取得手段は、前記ブロックの輝度の平均値に基づく評価値を取得することを特徴とする、請求項１乃至請求項５の何れか一項に記載の画像符号化装置。
【請求項７】
前記第２の取得手段は、画質の劣化の度合いに基づく前記所定のクラスに属するブロックの数を示す計数情報を取得することを特徴とする、請求項１乃至請求項６の何れか一項に記載の画像符号化装置。
【請求項８】
前記第２の取得手段は、前記ブロックの輝度の平均値が第１の所定値より大きいクラスであって且つ前記ブロックの輝度の複雑度が第２の所定値より大きいクラスである、画質の劣化の目立ち難い前記所定のクラスに属するブロックの数を示す計数情報を取得することを特徴とする請求項１乃至請求項７の何れか一項に記載の画像符号化装置。
【請求項９】
前記設定手段は、前記計数情報に基づいて、前記画質の劣化の目立ち難い所定のクラスに属するブロック数が所定の値より多い場合に、当該所定のクラスに属さないブロックの量子化パラメータを、当該所定のクラスに属する数が当該所定の値より少ない場合の当該所定のクラスに属さないブロックの量子化パラメータよりも小さくなるように設定することを特徴とする請求項８に記載の画像符号化装置。
【請求項１０】
前記設定手段は、前記計数情報に基づいて、前記画質の劣化の目立ち難い所定のクラスに属するブロックの量子化パラメータを、当該所定のクラスに属するブロックの量子化パラメータよりも大きくなるように設定することを特徴とする請求項８又は請求項９に記載の画像符号化装置。
【請求項１１】
前記設定手段は、前記画質の劣化の目立ち難い所定のクラスに属するブロック数が前記所定の数より多い場合に、前記所定のクラスに属さないブロックであって、前記画質の劣化の目立ち易いクラスに属するブロックの量子化パラメータを、前記ブロック数が前記所定の数より少ない場合における前記画質の劣化の目立ち易いクラスに属するブロックの量子化パラメータと等しい値を設定することを特徴とする請求項８乃至請求項１０の何れか一項に記載の画像符号化装置。
【請求項１２】
前記第１の取得手段は、前記ブロックの第１の評価値と第２の評価値とを取得し、
前記第１の評価値及び前記第２の評価値の値が大きいほど前記ブロックを符号化した場合に画質の劣化が目立ち難いことを示し、
前記決定手段は、前記ブロックの前記第１の評価値が第１の閾値より大きい値であって、前記ブロックの前記第２の評価値が第２の閾値より大きい値である場合に、前記ブロックの属するクラスを前記画質の劣化の目立ち難い所定のクラスに決定することを特徴とする請求項８乃至請求項１１の何れか一項に記載の画像符号化装置。
【請求項１３】
前記決定手段は、前記ブロックの前記第１の評価値が前記第１の閾値より小さい値であって、前記ブロックの前記第２の評価値が前記第２の閾値より小さい値である場合に、前記ブロックの属するクラスを前記画質の劣化の目立ち易いクラスに決定することを特徴とるす請求項１２に記載の画像符号化装置。
【請求項１４】
前記第１の取得手段は、前記ブロックの視覚特性に関する評価値を取得することを特徴とする請求項１乃至請求項１３の何れか一項に記載の画像符号化装置。
【請求項１５】
前記設定手段は、前記決定手段によって決定された前記クラスが前記所定のクラスである場合、前記ブロックの量子化パラメータを予め設定された値とすることを特徴とする請求項１乃至請求項１４の何れか一項に記載の画像符号化装置。
【請求項１６】
前記第１の取得手段によって取得される前記評価値は、前記ブロックの複雑度又は平均値の少なくとも何れかに関する情報であることを特徴とする請求項１乃至請求項１５の何れか一項に記載の画像符号化装置。
【請求項１７】
前記第１の取得手段によって取得される前記評価値は、前記ブロックの色相に関する情報又は物体検出に関する情報の少なくとも何れかに関する情報であることを特徴とする請求項１乃至請求項１６の何れか一項に記載の画像符号化装置。
【請求項１８】
前記第１の取得手段によって取得される前記評価値は、前記ブロックを分割したサブブロックの評価値に基づいて算出された値であることを特徴とする、請求項１乃至請求項１７の何れか一項に記載の画像符号化装置。
【請求項１９】
前記第１の取得手段によって取得される前記評価値は、前記ブロックに属するサブブロックの複雑度のうち、最も小さい値を前記ブロックの評価値として用いることを特徴とする請求項１８に記載の画像符号化装置。
【請求項２０】
前記サブブロックは、４×４画素で構成されることを特徴とする、請求項１３乃至請求項１９の何れか一項に記載の画像符号化装置。
【請求項２１】
さらに、前記計数情報を計数する計数手段を有することを特徴とする請求項１乃至請求項２０の何れか一項に記載の画像符号化装置。
【請求項２２】
さらに、前記設定手段によって設定された量子化パラメータを用いて前記ブロックを符号化する符号化手段を有することを特徴とする請求項１乃至請求項２１の何れか一項に記載の画像符号化装置。
【請求項２３】
画像をブロック単位で符号化する画像符号化方法であって、
前記ブロックの評価値を取得する第１の取得工程と、
前記第１の取得工程によって取得された前記評価値に基づいて、複数のクラスのうち前記ブロックの属するクラスを決定する決定工程と、
前記複数のクラスの一部である所定のクラスに属するブロックの数を示す計数情報を取得する第２の取得工程と、
前記第２の取得工程によって取得された前記計数情報に基づいて、前記所定のクラスと異なるクラスに属するブロックを符号化するために用いられる量子化パラメータを設定する設定工程と
を有することを特徴とする画像符号化方法。
【請求項２４】
コンピュータを、請求項１乃至請求項２２の何れか一項に記載の画像符号化装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像符号化装置、画像符号化方法及びプログラムに関し、特にフレーム内の適応的な符号量制御に関する。
【背景技術】
【０００２】
動画像の圧縮記録に用いられる符号化方式として、Ｈ．２６４／ＭＰＥＧ−４  ＡＶＣ（以下、Ｈ．２６４）が知られている。（非特許文献１）Ｈ．２６４を用いて画像をブロック単位で符号化する場合、量子化値はブロック毎に可変である。そして、量子化値をブロック毎に制御することにより、各ブロックに割り当てる符号量を制御し、各ブロックの画質を制御することができる。
【０００３】
従来、上記の符号化方式を用いて画像を符号化する場合、符号量の増加を抑制しつつ画質の劣化を抑制するために、次のような符号量の制御が行われていた。即ち、１フレームの画像を各ブロック毎に人間の視覚特性に基づいてクラス分けをし、人間の視覚特性において画質の劣化が目立ち易いクラスに属するブロックの量子化値として基準の量子化値より小さい値を割り当てることにより、画質の劣化を抑制していた。ここで、基準の量子化値としては、例えばフレームＱＰやスライスＱＰ等がある。
【０００４】
一方、画質の劣化が目立ち難いクラスに属するブロックの量子化値として基準の量子化値より大きい値を割り当てることにより、当該クラスに属するブロックの符号量の増加を抑制していた。しかしながら上述した従来の方法では、１フレームに含まれる画質の劣化が目立ち易いクラスに属するブロックの数が増加すると、基準の量子化値より小さい値の量子化値を割り当てるブロックが増加するため、１フレーム当たりの符号量が増加してしまう。このため、各クラスに属するブロックの数を考慮して、当該各ブロックに割り当てる量子化値を制御する必要があった。
【０００５】
例えば特許文献１の技術では、人の視覚特性に合わせて１フレームを１６×１６画素のブロックに分割し、当該１６×１６画素の符号化ブロックをクラス分けし（クラスＡ）、クラスＡ毎に基準となる量子化値を設けている。さらに、８×８画素のブロックの分散値により８×８画素のブロック（サブブロック）をクラスＢに分類し、クラスＡ及びクラスＢのブロック数のヒストグラムを生成している。そしてヒストグラム及び基準となる量子化値に基づいてフレームあたりの発生ビット量を予測し、予測されたビット量によりクラス毎の基準となる量子化値を調整している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平９−２００７６０
【非特許文献】
【０００７】
【非特許文献１】ＩＴＵ−Ｔ  Ｈ．２６４  （０３／２０１０）  Ａｄｖａｎｃｅｄ  ｖｉｄｅｏ  ｃｏｄｉｎｇ  ｆｏｒ  ｇｅｎｅｒｉｃ  ａｕｄｉｏｖｉｓｕａｌ  ｓｅｒｖｉｃｅｓ
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら特許文献１に示した技術では、フレームあたりの発生ビット量を予測するために、当該フレームにおける全てのクラスのブロック数を考慮して、各クラスに割り当てる量子化値を決定する必要がある。このため、全てのクラスのブロック数を考慮して量子化値を決定するために必要なメモリビット数が大きくなる。このため、フレームあたりの発生ビット量を予測する演算コストも大きくなる。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明の画像符号化装置は、下記の構成を有する。即ち、画像をブロック単位で符号化する画像符号化装置であって、前記ブロックの評価値を取得する第１の取得手段と、前記第１の取得手段によって取得された前記評価値に基づいて、複数のクラスのうち前記ブロックの属するクラスを決定する決定手段と、前記複数のクラスの一部である所定のクラスに属するブロックの数を示す計数情報を取得する第２の取得手段と、前記第２の取得手段によって取得された前記計数情報に基づいて、前記所定のクラスと異なるクラスに属するブロックを符号化するために用いられる量子化パラメータを設定する設定手段とを有することを特徴とする画像符号化装置。
【発明の効果】
【００１０】
人間の視覚特性に基づいて、各ブロックへ適切な符号量を割り当てることにより、符号量の増加を抑制しつつ画質の劣化を抑制することができる。さらに、画質の劣化が目立ち易いクラスのブロック数に応じて各ブロックに割り当てる量子化値を制御することにより、量子化値制御に必要なメモリビット数及び演算コストを、フレーム内の全クラスのブロック数を計数する場合と比較して低減することができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態１における画像符号化装置の構成を示すブロック図
【図２】実施形態１におけるフレーム符号化のフローチャート
【図３】実施形態１におけるクラス情報生成のフローチャート
【図４】実施形態１におけるクラスの判別を示す図
【図５】実施形態１における量子化パラメータの設定方法を示す図
【図６】実施形態２におけるクラスの判別を示す図
【図７】実施形態２におけるクラスと評価値の関係を示す図
【図８】本発明の画像符号化装置に適用可能なコンピュータのハードウェア構成例を示すブロック図
【発明を実施するための形態】
【００１２】
以下、添付の図面を参照して、本願発明をその好適な実施例に基づいて詳細に説明する。尚、以下の実施例において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１３】
＜実施形態１＞
以下、本発明の実施形態１について、図面を用いて説明する。図１は本実施形態の画像符号化装置１００の構成を示すブロック図である。
【００１４】
図１において、１０１はブロック評価値算出部であり、入力画像を分割するブロック毎を評価する評価値（以下、ブロック評価値）を算出する。即ち、ブロック評価値算出部１０１には、画像符号化装置１００からブロック単位に画像が入力され、ブロック評価値算出部１０１はブロック毎のブロック評価値を算出する。尚、ブロック評価値については後述する。１０２はクラス決定部であり、ブロック評価値算出部１０１によって算出されたブロック評価値に基づいて、ブロックが属するクラスを決定する。以下、ブロックが属するクラスを示す情報をクラス情報と呼称する。１０３は計数部であり、クラス決定部１０２から入力されたクラス情報に基づいて、各クラスに属するブロック数を計数する。以下、各クラスに属するブロック数を示す情報を計数情報と呼称する。
【００１５】
１０４は量子化パラメータ制御部であり、符号化対象のブロック（以下、符号化対象ブロック）の量子化パラメータを制御する。量子化パラメータ制御部１０４は、計数部１０３から計数情報を取得し、クラス毎に割り当てられる量子化パラメータであるクラス量子化パラメータを決定する。さらに、量子化パラメータ制御部１０４は、符号化対象ブロックのクラス量子化パラメータと、クラス決定部１０２で決定された当該符号化対象ブロックのクラス情報とに基づいて、当該符号化対象ブロックの量子化パラメータを生成する。以下、ブロックの量子化パラメータをブロック量子化パラメータと呼称する。１０５は符号化部であり、量子化パラメータ制御部１０４から入力されたブロック量子化パラメータに基づいて前記符号化対象ブロックを符号化する。
【００１６】
次に、本実施形態の画像符号化装置１００の動作を、図２のフローチャートを用いて詳細に説明する。本実施形態における画像符号化装置１００は、動画像をフレーム単位で入力し、さらに当該フレームを分割したブロック単位でラスタ順に当該動画像を処理する。
【００１７】
まずステップＳ２０１において、計数部１０３は計数情報を０に初期化する。次に、ステップＳ２０２において、ブロック評価値算出部１０１は、入力されたブロックのブロック評価値を算出する。ここで、ブロック評価値は、処理対象のブロック（以下、処理対象ブロック）を符号化した場合の、当該処理対象ブロックの画質指標に関するものとする。そして、画質指標とは、画像を符号化する場合に生じる量子化誤差が、人間の視覚に影響を与える度合い（視覚特性）に関する値である。本実施形態における計数部１０３は、処理対象ブロックに属する各画素の輝度の平均値及び輝度の複雑度をブロック評価値として算出する。
【００１８】
次に、ブロック評価値算出部１０１が、ブロック評価値として用いられる輝度の複雑度を算出する方法について具体的に説明する。まず、ブロック評価値算出部１０１は、処理対象ブロックを複数の４×４画素単位のサブブロックに分割し、当該サブブロックに属する、各画素の輝度値と輝度の平均値との差分の大きさ（絶対値）の合計値を、当該サブブロックの複雑度として算出する。そして、ブロック評価値算出部１０１は、処理対象ブロック内の全てのサブブロックの複雑度を算出した後、算出された各サブブロックの複雑度のうちの最小値を、ブロック評価値として用いられる輝度の複雑度とする。
【００１９】
尚、本実施形態では複雑度の算出に４×４画素のサブブロックの最小値を用いたが、本発明においてサブブロックのブロックサイズはこれに限定されず、８×８画素のサブブロックを用いてもよいし、１６×１６画素の処理対象ブロックをそのまま用いてもよい。さらに、本実施形態では複雑度の算出にサブブロックの最小値を用いたが、本発明では最小値ではなく平均値や最大値等を用いてもよい。
【００２０】
続いて、図２のステップＳ２０３以降の処理について説明する。ステップＳ２０３において、クラス決定部１０２はステップＳ２０２において算出されたブロック評価値に基づいて、処理対象ブロックに対応するクラス情報を生成する。尚、本実施形態では、処理対象ブロックの輝度の平均値を評価値Ｃ１、輝度の複雑度を評価値Ｃ２として、当該評価値Ｃ１及び評価値Ｃ２の２個のブロック評価値に基づいて、クラス情報を生成する。さらに、評価値Ｃ１及び評価値Ｃ２夫々に対し、閾値配列Ｔ１及び閾値配列Ｔ２を定義する。本実施形態において２個のブロック評価値を用いたが、本発明はこれに限定されず、ｋ個のブロック評価値を用いる場合、ｋ個の評価値Ｃ１，Ｃ２，…，Ｃｋ毎にそれぞれ閾値配列Ｔｋが保持される。
【００２１】
図４に、輝度の平均値及び輝度の複雑度をブロック評価値とした場合の処理対象ブロックの判別の一例を示す。横軸は輝度の複雑度（評価値Ｃ２）、縦軸は輝度の平均値（評価値Ｃ１）であり、計７２個のクラスに分割されている。閾値配列Ｔ１及び閾値配列Ｔ２は、それぞれのクラスを定義する閾値の組で構成される。図４の例では閾値配列Ｔ１＝｛Ｔ１［１］，Ｔ１［２］，Ｔ１［３］，Ｔ１［４］，Ｔ１［５］，Ｔ１［６］，Ｔ１［７］，Ｔ１［８］，Ｔ１［９］｝である。また、閾値配列Ｔ２＝｛Ｔ２［１］，Ｔ２［２］，Ｔ２［３］，Ｔ２［４］，Ｔ２［５］，Ｔ２［６］，Ｔ２［７］，Ｔ２［８］｝である。尚、評価値Ｃｉにおける閾値配列Ｔｉの各要素を、閾値Ｔｉ［ｊ］のように表している。
【００２２】
また、ステップＳ２０３で生成されるクラス情報は、クラス情報Ｐとして、処理対象ブロックが各ブロック評価値に基づいてどのクラスに属するかを、クラスを定義する閾値の組で表す。例えば、処理対象ブロックの評価値Ｃ１がＴ１［５］より大きくＴ１［６］より小さい場合、且つ、処理対象ブロックの評価値Ｃ２がＴ２［４］より大きくＴ２［５］より小さい場合、所定対象ブロックのクラスは図４において斜線で示したクラスＲとなる。そして、図４において斜線で示したクラスＲはクラス情報Ｐ＝｛Ｔ１［６］，Ｔ２［５］｝のように表される。
【００２３】
ここで、クラス決定部１０２がクラス情報を生成する方法に関して、図３のフローチャートを用いて詳細に説明する。まず、クラス決定部１０２は、ステップＳ３０１において変数ｉを１に初期化し、ステップＳ３０２において変数ｊを１に初期化する。次に、ステップＳ３０３においてクラス決定部１０２は、評価値Ｃｉが閾値Ｔｉ［ｊ］で定義されるクラス内に属しているか否かを判定する。ステップＳ３０３において、評価値Ｃｉが閾値Ｔｋ［ｉ］に属しているならば（ステップＳ３０３でＹＥＳ）ステップＳ３０６の処理に進み、そうでないならばステップＳ３０４の処理に進む。次に、ステップＳ３０４においてクラス決定部１０２は、変数ｊに１を加算（ｊ＝ｊ＋１）して、ステップＳ３０５の処理へ進む。
【００２４】
次にステップＳ３０５においてクラス決定部１０２は、評価値Ｃｉを全ての閾値（閾値配列Ｔｉに属するｈ個全ての閾値Ｔｉ［１］〜Ｔｉ［ｈ］）と比較したか否かを判定する。即ち、クラス決定部１０２は変数ｊがｈより大きいかどうかを判定する。ステップＳ３０５において全ての閾値と比較したと判定した場合は（ステップＳ３０５でＹＥＳ）ステップＳ３０６の処理に進み、そうでない場合は（ステップＳ３０５でＹＥＳ）ステップＳ３０３の処理に進む。ステップＳ３０６においてクラス決定部１０２は、評価値Ｃｉにおけるクラス情報Ｐｉ（クラス情報Ｐのｉ番目の要素）に、当該評価値Ｃｉについて属していると判定された閾値を代入し、ステップＳ３０７に進む。ステップＳ３０７において、クラス決定部１０２は変数ｉに１を加算し、ステップＳ３０８に進む。
【００２５】
ステップＳ３０８においてクラス決定部１０２は、ｋ個の評価値全てにおいて閾値との比較がなされたかどうかを判定する。即ち、クラス決定部１０２は変数ｉがｋより大きいかどうかを判定する。ステップＳ３０８にて全ての比較が終わっていると判定された場合（ステップＳ３０８でＹＥＳ）クラス決定部１０２はクラス情報の生成処理を終了し、終わっていないと判定された場合（ステップＳ３０８でＮＯ）クラス決定部１０２はステップＳ３０２に進む。
【００２６】
上述した図３に示す処理フローを実施することにより、クラス決定部１０２は、各評価値について属していると判定された閾値の組が代入された、クラス情報Ｐ＝｛Ｐ１，Ｐ２，…，Ｐｋ｝を生成することができる。評価値が２個の場合、このようにして生成したクラス情報Ｐ＝｛Ｐ１，Ｐ２｝は、処理対象ブロックが図４の格子状に示したクラスのどの部分に属するかを示している。そして、本実施形態では、このクラス情報Ｐに、処理対象ブロックの特性及び当該特性に適した量子化パラメータ（以下、クラス量子化パラメータ）を対応付ける。
【００２７】
上述したように、本実施形態においてクラス決定部１０２は、処理対象ブロックの画質劣化の度合いを判定するためにクラス情報Ｐの生成を行う。そして、本実施形態において、処理対象ブロックの画質劣化の度合いを判定するためのブロック評価値として、輝度の複雑度と輝度の平均値とを用いる。輝度の複雑度及び輝度の平均値は空間周波数と関連し、輝度の複雑度及び輝度の平均値が高い画像は空間周波数が高く、輝度の複雑度及び輝度の平均値が低い画像は空間周波数が低い。ここで、例えば、人間の目は、高い空間周波数の画像よりも低い空間周波数の画像の方が、画質の劣化に対して敏感であるという視覚特性を有する。このため、輝度の複雑度が低いブロックは空間周波数も低く、人間の視覚特性において量子化誤差による画質劣化が目立ち易い。一方、輝度の複雑度が高いブロックは空間周波数が高く、画質劣化が目立ちにくい。輝度の平均値も同様に、輝度の平均値が小さい（暗い）ブロックの方が人間の視覚に対して画質劣化が目立ち易く、輝度の平均値が大きい（明るい）ブロックは画質劣化が目立ちにくいといった特性を持つ。
【００２８】
これらのブロック評価値（輝度の複雑度と輝度の平均値）に基づいて、例えば、図４の左下のクラスは画質劣化の目立ち易いクラスであると判定できる。このため、本実施形態の量子化パラメータ制御部１０４は図４の左下のクラスのクラス量子化パラメータを小さくすることにより、画質劣化を抑えることができる。さらに、図４の右上の画質劣化の目立ち難いクラスのクラス量子化パラメータを大きくして全体の符号量の上昇を抑えることで、ブロック評価値に基づく量子化パラメータ制御をしない場合と同等のビットレートを保ったまま、画質を向上させることが可能となる。
【００２９】
図２のフローチャートに戻り、ステップＳ２０４以降の処理に関して説明する。ステップＳ２０４において計数部１０３は、ステップＳ２０３で生成されたクラス情報に基づいて、処理対象ブロックが画質劣化の目立ち難いクラス（所定のクラス）に属しているか否かを判定する。ステップＳ２０４において処理対象ブロックが画質劣化の目立ち難いクラス（所定のクラス）に属している場合（ステップＳ２０４のＮＯ）、計数部１０３は計数情報に１を足して計数情報を更新する（ステップＳ２０５）。一方、ステップＳ２０４において処理対象ブロックが画質劣化の目立ち易いクラスに属している（所定のクラスに属していない）場合（ステップＳ２０４のＹＥＳ）、計数部１０３はステップＳ２０６の処理に進む。
【００３０】
本実施形態では、図４において、輝度の平均値が閾値Ｔ１［６］（第１の所定値）以上、且つ、輝度の複雑度が閾値Ｔ２［６］（第２の所定値）以上のクラスを、画質劣化の目立ち難いクラスとする。また、画質劣化の目立ち難いクラスのクラス量子化パラメータは、フレームの基準となる量子化パラメータ（以下、基準量子化パラメータ）から＋４となる値が割り当てられているものとする。また、それ以外のクラスのクラス量子化パラメータも全て、基準量子化パラメータからの差分値に基づいて値が割り当てられているものとする。尚、上述したように本実施形態では、画質劣化の目立ち難いクラスのクラス量子化パラメータを基準量子化パラメータから＋４としているが、本発明はこれに限定されるものではなく、正の値（基準量子化パラメータよりも大きい値）であれば良い。また、クラス毎に＋２、＋４、＋６等、個別の値をとっても良い。
【００３１】
次に、ステップＳ２０６において量子化パラメータ制御部１０４は、ブロック量子化パラメータを決定する。量子化パラメータ制御部１０４は、処理対象ブロックのクラス情報から、対応するクラス量子化パラメータを読み出し、処理対象ブロックの量子化パラメータ（ブロック量子化パラメータ）として設定する。尚、クラス量子化パラメータは、後述するステップＳ２０９の処理で更新される。次に、ステップＳ２０７において符号化部１０５は、ステップＳ２０６で決定されたブロック量子化パラメータに基づいて処理対象ブロックを符号化し、符号化ストリームを生成する。
【００３２】
次に、ステップＳ２０８において画像符号化装置１００は、フレーム内の全てのブロックが符号化されたか否かを判定する。ステップＳ２０８において全てのブロックが符号化されていないと判定された場合（ステップＳ２０８のＮＯ）、画像符号化装置１００はステップＳ２０２の処理に戻り後続のブロックを処理する。一方、ステップＳ２０８において全てのブロックが符号化されたと判定された場合（ステップＳ２０８のＹＥＳ）、画像符号化装置１００はステップＳ２０９の処理に進む。ステップＳ２０９において量子化パラメータ制御部１０４は、クラス量子化パラメータを更新する。ステップＳ２０９において更新されたクラス量子化パラメータは、ステップＳ２０５において計数部１０３で生成された１フレーム分の計数情報に基づいて制御され、次に処理するフレームに適用される。
【００３３】
画像に対する人間の視覚特性は、撮影条件及び撮影対象などに応じて大きく異なるため、図４のようなクラス分けに対するブロックの分布は、符号化対象の画像に依存する。また、フレーム全体のビットレートを一定に保つためには、画質劣化の目立ち難いクラス（図４の右上のクラス）に属するブロックの数と、画質劣化の目立ち易いクラス（図４の左下のクラス）に属するブロックの数のバランスがとれていることが望ましい。例えば、画質劣化の目立ち難いクラスに属するブロック数が少なく画質劣化の目立ち易いクラスに属するブロック数が極端に多い場合、画質劣化の目立ち易いクラスに小さすぎるクラス量子化パラメータを適用するとフレーム全体のビットレートが増大してしまう。
【００３４】
このため、本発明を用いて、画質劣化の目立ち難いクラスに属するブロック数を計数情報として計数部１０３で計数し、当該計数情報に応じて適応的にクラス量子化パラメータを制御することにより、ビットレートの増大を抑制することが可能である。具体的には、画質劣化の目立ち難いクラスのブロック数が少ない程、画質劣化の目立ち易いクラスのクラス量子化パラメータを（画質劣化の目立ち難いクラスのクラス量子化パラメータよりは小さい範囲で）大きい値に設定する。このように、画質劣化の目立ち易いクラスのクラス量子化パラメータを制御することでフレーム全体のバランスを取っているため、画質劣化の目立ち難いクラスのクラス量子化パラメータは変更する必要がなくそのままで良い。
【００３５】
クラス量子化パラメータの調整方法の一例を図５に示す。画質劣化の目立ち難いクラスに属するブロック数がフレーム全体の１％未満の場合、画質劣化の目立ち難いクラスのクラス量子化パラメータは＋４であり、画質劣化の目立ち易いクラスのクラス量子化パラメータは±０とする。また、画質劣化の目立ち難いクラスに属するブロック数がフレーム全体の１％以上５％未満の場合は、画質劣化の目立ち難いクラスのクラス量子化パラメータは変わらず＋４であり、画質劣化の目立ち易いクラスのクラス量子化パラメータは０〜−２とする。それ以降も同一で、画質劣化の目立ち難いクラスに属するブロック数が増える程、画質劣化の目立ち易いクラスのクラス量子化パラメータが小さくなるように設定する。尚、画質劣化の目立ち易いクラスのクラス量子化パラメータが０〜−２のように数値幅を持っているのは、画質劣化の目立ち易いクラス内でも目立ち易さに差があるため、より目立ち易いクラスに小さいクラス量子化パラメータを割り当てるためである。
【００３６】
以上説明したように、本実施形態における画像符号化装置１００は、計数情報に基づいて適応的にクラス量子化パラメータを制御することにより、次のような効果を得ることができる。即ち、画質の劣化が目立ち難い及び目立ち易いブロックへ夫々適切な符号量を割り当てることが可能な量子化パラメータの制御において、必要なメモリビット数及び演算コストを、フレーム内の全クラスのブロック数を計数する場合と比べて低減することができる。本実施形態では、計数情報として画質劣化の目立ち難いクラスに属するブロック数のみを計数するだけでよいため、フレーム内の全クラスのブロック数を計測する従来技術から特別なメモリを追加する必要がない。また、本実施形態では、ブロック数に基づいて特別な演算を必要とせずにクラス量子化パラメータを決定することができる。
【００３７】
さらに、本実施形態では、従来のようにフレームあたりの発生ビット数を予測する必要がない。また、従来はマクロブロックをクラス分類すると同時に、当該マクロブロックを分割したサブブロックもクラス分類する必要があったが、本実施形態では符号化ブロックのみをクラス分類すればよく、クラス分類にかかる演算コストも削減可能である。
【００３８】
＜実施形態２＞
本発明の実施形態２における画像符号化装置１００について説明する。本実施形態における画像符号化装置１００の構成は、図１に示した本発明の実施形態１における画像符号化装置１００の構成と同一である。また、本実施形態における画像符号化装置１００の動作に関しても、図２及び図３のフローチャートで表される実施形態１における画像符号化装置１００の動作と同一であるため説明を省略する。
【００３９】
本実施形態において、評価値Ｃ１に対応する閾値配列Ｔ１及び評価値Ｃ２に対応する閾値配列Ｔ２に関しても、上述した実施形態１と同様である。しかし、本実施形態は、図６で示されるように、ブロックの判別結果としてのクラスの数が７２個（図４）でなく１３個｛Ｒ１，Ｒ２，…，Ｒ１３｝になっている点が実施形態１とは異なる。即ち、本実施形態においては、実施形態１におけるクラス（図４において閾値配列Ｔ１、Ｔ２で区切られる各クラス）を複数個まとめ、単に閾値との比較を行うだけでブロックの判別を決定しているため、実施形態１と比較して多くの場合で処理が単純である。
【００４０】
具体的には、実施形態１においては７２個のクラス判定には、最大で７２回の閾値との比較処理が必要になるが、図７で示すように、Ｒ１，Ｒ２，…，Ｒ１３の順に領域を判定することで、最大で１３回の比較処理で１３個のクラス判定が可能となる。尚、本実施形態では１３個のクラスに分割する例を紹介したが、本発明はこれに限定されるものではなく、クラス数をさらに増やしてさらに緻密に画質を制御することも可能である。
【００４１】
＜実施形態３＞
上記実施形態１及び実施形態２において、其々図１に示した各処理部はハードウェアでもって構成しているものとして説明した。しかし、これらの図に示した各処理部で行う処理をコンピュータプログラムで実行してもよい。
【００４２】
図８は、上記実施形態１及び実施形態２に係る画像符号化装置の各処理部が行う処理を実行するコンピュータのハードウェアの構成例を示すブロック図である。
【００４３】
ＣＰＵ８０１は、ＲＡＭ８０２やＲＯＭ８０３に格納されているコンピュータプログラムやデータを用いてコンピュータ全体の制御を行うと共に、上記実施形態１及び実施形態２に係る画像符号化装置が行うものとして上述した各処理を実行する。即ち、ＣＰＵ８０１は、図１に示した各処理部として機能することになる。
【００４４】
ＲＡＭ８０２は、外部記憶装置８０６からロードされたコンピュータプログラムやデータ、Ｉ／Ｆ（インターフェース）８０７を介して、外部から取得したデータ等を一時的に記憶するためのエリアを有する。さらに、ＲＡＭ８０２は、ＣＰＵ８０１が各種の処理を実行する際に用いるワークエリアを有する。即ち、ＲＡＭ８０２は、例えば、フレームメモリとして割り当てたり、その他の各種のエリアを適宜提供したりすることができる。
【００４５】
ＲＯＭ８０３は、本コンピュータの設定データや、ブートプログラム等を格納する。
【００４６】
操作部８０４は、キーボードやマウス等により構成されており、本コンピュータのユーザが操作することで、各種の指示をＣＰＵ８０１に対して入力することができる。
【００４７】
出力部８０５は、ＣＰＵ８０１による処理結果を表示する。また、出力部８０５は、例えば液晶ディスプレイで構成される。
【００４８】
外部記憶装置８０６は、ハードディスクドライブ装置に代表される、大容量情報記憶装置である。外部記憶装置８０６には、ＯＳ（オペレーティングシステム）や、図１に示した各処理部の機能をＣＰＵ８０１に実現させるためのコンピュータプログラムが保存されている。さらには、外部記憶装置８０６には、処理対象としての各画像が保存されていてもよい。
【００４９】
外部記憶装置８０６に保存されているコンピュータプログラムやデータは、ＣＰＵ８０１による制御に従って適宜、ＲＡＭ８０２にロードされ、ＣＰＵ８０１による処理対象となる。
【００５０】
Ｉ／Ｆ８０７には、ＬＡＮやインターネット等のネットワーク、投影装置や表示装置等の他の機部を接続することができ、本コンピュータはこのＩ／Ｆ８０７を介して様々な情報を取得したり、送出したりすることができる。
【００５１】
バス８０８は、上述の各部を繋ぐ。
【００５２】
上述の構成における作動は、前述のフローチャートで説明した作動をＣＰＵ８０１が中心となってその制御を行う。
【００５３】
＜その他の実施形態＞
上述した各実施形態における画像符号化装置１００は、動画像をフレーム単位で入力し、さらに当該フレームを分割したブロック単位でラスタ順に当該動画像の処理を行ったが、本発明はこれに限定されるものではない。即ち、例えばフレームを分割したスライス単位で動画像を入力しても構わない。
【００５４】
また、本発明は符号化方式に限定されるものではなく、Ｈ．２６４以外の符号化方式（例えば、ＨＥＶＣ（Ｈｉｇｈ  Ｅｆｆｉｃｉｅｎｃｙ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ符号化方式））を用いてももちろん構わない。また、上述した各本実施形態における処理対象ブロックのサイズは１６×１６画素とするが、本発明はこれに限定されるものではなく、例えば８×８画素や３２×３２画素でもよく、３２×１６画素のように非対称でもよい。
【００５５】
また、上述した各実施形態において、ブロック評価値算出部１０１によって算出されるブロック評価値として、ブロックの輝度の平均値及び輝度の複雑度を用いていたが、本発明はこれに限定されない。即ち、本発明においてブロック評価値算出部１０１は、ブロック評価値として、人間の視覚に影響を与える度合いを判定できる指標を取得できればよい。例えばブロック評価値算出部１０１は、ブロック評価値として、輝度の分散、色差の平均値、色差の複雑度、色差の分散等を算出してもよいし、動きベクトル及び予測誤差等の符号化結果を表す指標を用いてもよい。また、色相に関する情報（以下、色相情報）に基づいてブロック評価値を算出してもよいし、物体検出や肌色検出等の検出結果等を用いてブロック評価値を算出してもよい。例えば、色相情報や物体検出等により、「木（Ｔｒｅｅ）」の一部（又は全部）であると検出されたブロックは、人間の視角特性において画質劣化が目立ち易いという特徴があるため、ブロック評価値を画質劣化が目立ち易いことを示す値に設定する。このようにして、色相情報や物体検出等の検出結果を用いてブロック評価値を算出することができる。また、他のブロックのブロック評価値を用いて、処理対象ブロックのブロック評価値を算出するようにしてもよい。さらに、上述した、人間の視覚に影響を与える度合いを判定できる指標のうち、少なくとも一つを用いてブロック評価値を算出（取得）する方法であればよく、複数の指標に基づいてブロック評価値を算出する方法であっても構わない。
【００５６】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワークまたは各種記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015115735.tif 000003
【図２】
2015115735.tif 000004
【図３】
2015115735.tif 000005
【図４】
2015115735.tif 000006
【図５】
2015115735.tif 000007
【図６】
2015115735.tif 000008
【図７】
2015115735.tif 000009
【図８】
2015115735.tif 000010