(57)【要約】【課題】  量子化パラメータの変動を抑えて画質を保ちつつ、符号量の制御を行う。【解決手段】  動画像データにおける着目フレームの画像データを、予め設定されたブロック単位に、目標符号量に応じて決定される量子化パラメータに従って量子化する量子化部と、この量子化部で得られた量子化後のデータを、ブロック単位に符号化する符号化部と、符号化部により発生する符号量が、設定されたブロック目標符号量になるように符号化部を制御する符号量制御部とを有する。ここで、符号量制御部は、着目フレームの画像と直前のフレームの画像の相関度を求め、当該相関度に基づいてブロック目標符号量を設定する。【選択図】  図１
2018101907.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段で撮像した動画像データを符号化する画像符号化装置であって、
前記動画像データにおける着目フレームの画像データを、予め設定されたブロック単位に、目標符号量に応じて決定される量子化パラメータに従って量子化する量子化手段と、
該量子化手段で得られた量子化後のデータを、前記ブロック単位に符号化する符号化手段と、
前記符号化手段により発生する符号量が、設定されたブロック目標符号量になるように前記符号化手段を制御する符号量制御手段とを有し、
前記符号量制御手段は、前記着目フレームの画像と直前のフレームの画像の相関度を求め、当該相関度に基づいて前記ブロック目標符号量を設定する
ことを特徴とする画像符号化装置。
【請求項２】
前記符号量制御手段は、
１フレームにおける先頭のブロックから最後のブロックに至る軸を水平軸、符号化データの積算量を合わす軸を垂直軸とする座標空間において、予め設定されたフレーム目標符号量が示す位置が表す座標を通る符号量上限値を表す線分の傾きを、前記相関度に基づいて決定する第１の決定手段と、
予め設定された基準目標符号量と、着目ブロックの直前の符号化済みのブロックの複雑度とに基づき、前記着目ブロックの前記ブロック目標符号量を決定する第２の決定手段と、
前記着目フレームの先頭のブロックから前記直前のブロックまでの合計の符号量が、前記第１の決定手段で決定した前記線分が示す符号量を超えた場合、前記着目ブロックの前記ブロック目標符号量を、前記線分に沿うように変更する変更手段と、
を有することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記第１の決定手段は、
前記着目フレームと直前のフレームの輝度合計値との差、ヒストグラムの差、或いは、着目ブロックまでの符号量の差のいずれかに基づき、前記傾きを決定する
ことを特徴とする請求項２に記載の画像符号化装置。
【請求項４】
前記第２の決定手段は、
前記着目ブロックを第ｉのブロックとし、直前の第ｉ−１のブロックの符号化データの符号量をＳ[i-1]、前記第ｉのブロックを符号化する際に用いた量子化パラメータをＱｐ[i-1]と定義したとき、前記複雑度を表すＸ[i-1]を次式により求める
Ｘ[i-1]＝Ｑｐ[i-1]×Ｓ[i-1］
ことを特徴とする請求項２又は３に記載の画像符号化装置。
【請求項５】
前記第２の決定手段は、
前記着目ブロックまでの発生符号量の積算量が、当該着目ブロックの位置の符号量上限値に達したら、複雑度を小さなるように修正することで、前記ブロック目標符号量を決定する
ことを特徴とする請求項２又は３に記載の画像符号化装置。
【請求項６】
更に、前記動画像データにおける着目フレームの画像データを離散ウェーブレット変換する変換手段を有し、
前記量子化手段は、前記変換手段で得られた各サブバンドに対して量子化する
ことを特徴とする請求項３に記載の画像符号化装置。
【請求項７】
前記符号量制御手段は画像相関度変更手段を有し、
当該画像相関度変更手段は、複数のサブバンドの内、符号量差分閾値を超えたサブバンドの数が多いほど画像相関度を小さく、少ないほど大きく変更する
ことを特徴とする請求項６に記載の画像符号化装置。
【請求項８】
前記第２の決定手段は、予め設定されたブロック数の符号化を終えるたびに、前記ブロック目標符号量を決定する
ことを特徴とする請求項５に記載の画像符号化装置。
【請求項９】
前記符号化手段は、全てのサブバンドにおける、画像が表す空間の同じ位置のブロックを並列に符号化し、
前記符号量制御手段は、１以上のサブバンドに対して量子化制御を行い、前記１以上のサブバンドごとにブロック目標符号量を決定すると共に、前記１以上のサブバンドにおける着目ブロックまでに発生した符号量の合計符号量に基づいて、各サブバンドにおける前記ブロック目標符号量を決定する
ことを特徴とする請求項６に記載の画像符号化装置。
【請求項１０】
撮像手段で撮像した動画像データを符号化する画像符号化装置の制御方法であって、
前記動画像データにおける着目フレームの画像データを、予め設定されたブロック単位に、目標符号量に応じて決定される量子化パラメータに従って量子化する量子化工程と、
該量子化工程で得られた量子化後のデータを、前記ブロック単位に符号化する符号化工程と、
前記符号化工程により発生する符号量が、設定されたブロック目標符号量になるように前記符号化工程を制御する符号量制御工程とを有し、
前記符号量制御工程は、前記着目フレームの画像と直前のフレームの画像の相関度を求め、当該相関度に基づいて前記ブロック目標符号量を設定する
ことを特徴とする画像符号化装置の制御方法。
【請求項１１】
コンピュータが読み込み実行することで、前記コンピュータに請求項１０に記載の方法の各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動画像データの符号化技術に関するものである。
【背景技術】
【０００２】
現在、デジタルビデオカメラ等、動画像を記録するデジタル機器が普及している。このようなデジタル機器では、所定の記録媒体に一定時間の動画像が記録できるよう、動画像データの圧縮符号化を行っている。
【０００３】
従来の代表的な圧縮符号化方式として、H.264(H.264/ MPEG-4 Part10 : Advanced Video Coding)が知られている。このような圧縮符号化方式は、１フレーム内にて、所定画素数で構成されるブロック毎に、その動画像が有する時間冗長性と空間冗長性を利用してデータ量を圧縮するものである。
【０００４】
上記のH.264では、時間冗長性に対する動き検出及び動き補償、空間冗長性に対する周波数変換として離散コサイン変換(Descrete Cosine Transform;DCT) 、更に量子化やエントロピー符号化といった技術を組み合わせることで圧縮符号化を実現している。
【０００５】
ただし、ある程度以上にまで圧縮率を上げると、DCT変換特有のブロック歪みが顕著になり画像劣化が目立つようになる。そこで、JPEG2000方式等では、周波数変換として、水平方向と垂直方向に低域フィルタリングと高域フィルタリングをそれぞれ適用することで、複数のサブバンドと呼ばれる周波数帯に分解する離散ウェーブレット変換(Discrete Wavelet Transform; DWT)を採用している。DWTを用いたサブバンド符号化は、DCTを用いた符号化技術に比べ、ブロック歪みが生じにくく、高圧縮時の圧縮特性が良いといった特徴を有する。
【０００６】
一般的な符号量制御は、符号化が完了しているフレームの発生符号量を元に、次に符号化するフレームの目標符号量を決定する。そして、１フレームあたりの目標符号量へ発生符号量を収束させるために、量子化に利用する量子化パラメータＱｐを画像の所定の領域毎に変更する量子化制御を行うことで符号量の制御を行う。なお、Ｑｐは、その値が大きい程符号量を削減することができるパラメータである一方、画質劣化の原因になるため、出来るだけ小さく、かつ画面内で一定であることが望ましい。量子化制御により、所望の符号量へ画像データを圧縮することが可能である。
【０００７】
上述のように、Ｑｐは画質の観点から画面内で一定であることが望ましい。実現するためには、画像の所定の領域毎にＱｐが画面内で一定になるような目標符号量を設定する必要がある。Ｑｐが大きいほど発生符号量が小さくなる関係から、画像の中でも難しく発生符号量が出る領域の目標符号量は大きく、易しく発生符号量が出ない領域の目標符号量は小さく割り当てることで、画面内でＱｐを一定にすることが可能である。ただし、動画の圧縮符号化にリアルタイム性が求められるため、画像内の難易度は、１フレーム前の画像からフィードバックする必要がある。
【０００８】
しかし、動画の圧縮符号化は、リアルタイムに行う必要がある。このため、例えば動画記録中にフラッシュが炊かれるようなシーンチェンジが起きると、シーンが変わっていない前提の設定値で符号量制御を行うことになるので、１フレーム当たりの目標符号量を大きく超えた発生符号量が出てしまう可能性がある。それ故、場合によっては記録メディアに書き込めなくなってしまう。
【０００９】
そこで、所定の領域毎に発生符号量を積算し、発生符号量が上限値よりも大きい場合、符号量を抑制するように次の領域の量子化パラメータを変更することで、符号量制御性を向上する技術が特許文献１に記載されている。
【００１０】
特許文献１によれば、発生符号量を所定の値以上にしないことが可能であるため、記録メディアに書き込めないような破たんを回避することができる。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特許第５４５１４８７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、特許文献１に記載された技術は、発生符号量の上限値を画像によらず一意に定めていることで、発生符号量を抑制しなくても良い画像でも、量子化パラメータを変更してしまう場合がある。
【００１３】
例えば、画像の上部は極端に難しく符号量が発生し、下部は極端に易しく符号量が発生しない画像の場合を考察する。通常、符号化は画像の上部から下部に向かうラスタースキャン順に圧縮符号化を行う際ので、上記のような画像の場合、発生符号量の上限値を一意に定める場合、量子化パラメータが画像中盤から変化してしまい、画質劣化を引き起こす可能性がある。
【００１４】
本発明は上記の問題点に鑑み、量子化パラメータの変動を抑えて画質を保ちつつ、符号量の制御を行う技術を提供するものである。
【課題を解決するための手段】
【００１５】
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
撮像手段で撮像した動画像データを符号化する画像符号化装置であって、
前記動画像データにおける着目フレームの画像データを、予め設定されたブロック単位に、目標符号量に応じて決定される量子化パラメータに従って量子化する量子化手段と、
該量子化手段で得られた量子化後のデータを、前記ブロック単位に符号化する符号化手段と、
前記符号化手段により発生する符号量が、設定されたブロック目標符号量になるように前記符号化手段を制御する符号量制御手段とを有し、
前記符号量制御手段は、前記着目フレームの画像と直前のフレームの画像の相関度を求め、当該相関度に基づいて前記ブロック目標符号量を設定することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、量子化パラメータの変動を抑えて画質を保ちつつ、符号量の制御を行うことが可能となる。
【図面の簡単な説明】
【００１７】
【図１】第１の実施形態に係る画像符号化装置のブロック構成図。
【図２】第１の実施形態に係る画素データの入力順を示す図。
【図３】第１の実施形態に係るシーンチェンジの動画像パターンＡ，Ｂを示す図。
【図４】第１の実施形態に係るシーンチェンジ前後のライン単位目標符号量の推移の説明するための図。
【図５】第１の実施形態に係る符号量上限値を設定した場合のパターンＡにおけるライン単位の目標符号量の推移及びＱｐの推移の説明するための図。
【図６】第１の実施形態に係るパターンＢにおける、符号量上限値を設定しない場合のライン単位の目標符号量の推移及びＱｐの推移の説明するための図。
【図７】第１の実施形態に係るパターンＢにおける、符号量上限値を設定した場合のライン単位の目標符号量の推移及びＱｐの推移の説明するための図。
【図８】第１の実施形態に係るブロック目標符号量変更部の処理フローチャート。
【図９】第１の実施形態に係る画像相関度に応じた符号量上限値の傾きの違いを説明するための図。
【図１０】第１の実施形態に係る効果を説明する動画パターンを示す図。
【図１１】第１の実施形態に係る図１０の動画パターンにおけるフレーム毎のライン単位の目標符号量の推移及びＱｐの推移の説明するための図。
【図１２】第２の実施形態に係る画像符号化装置のブロック構成図。
【図１３】第２の実施形態に係る離散ウェーブレット変換を水平、垂直それぞれ三回施したサブバンド形成の説明するための図。
【図１４】第３の実施形態に係る画像符号化装置のブロック構成図。
【図１５】第５の実施形態に係る画像符号化装置のブロック構成図。
【図１６】離散ウェーブレット変換を３回施した場合の各サブバンドの離散ウェーブレット変換前の画像に対する同一画素位置の関係を示す図。
【発明を実施するための形態】
【００１８】
以下図面を参照しながら本発明の好適な実施の形態を説明する。なお、実施形態で説明する画像符号化装置は、デジタルビデオカメラに代表される撮像装置に搭載されるものとして説明する。従って、符号化対象は、撮像部が所定のフレームレートで撮像して得た画像データとなる。
【００１９】
［第１の実施形態］
図１は、第１の実施形態に係る画像符号化装置のブロック構成図である。図２は、図１の画像符号化部100に入力される画像データがラスタースキャン順であることを示す図である。図２のように、画像データは画素ライン単位で、ラスタ順に画像符号化部100へ供給され、圧縮符号化される。本実施形態では、１画素ライン単位で量子化パラメータを変更（更新）し、符号量制御を行う例を説明する。なお、画像データは撮像装置へ入力される画素値そのものでも、その画素値に何らかの処理を施したデータでも良い。
【００２０】
以下、図１を参照して本実施形態に係る画像符号化装置における符号化処理の概要について説明する。
【００２１】
画像符号化部100は、符号量制御部101により符号量制御を行う。符号量制御部101は、量子化設定部102で設定される画像の基準となる量子化パラメータ、目標符号量設定部103で設定される当該画像の画像目標符号量、及び、複雑度設定部111で設定される画像複雑度に従って画像データを圧縮符号化する。なお、量子化設定部102が設定する、画像の基準となる量子化パラメータを単に基準量子化パラメータと言う。
【００２２】
量子化部104は、量子化制御部105で出力される量子化パラメータＱｐを利用し、入力される画像データを１画素毎に量子化する。Ｑｐは、その値が大きいほど符号量を削減できる一方、その値が大きいほど画質劣化が顕著になる。故に、Ｑｐは画像劣化度を表す指標値とも言うことができる。
【００２３】
符号化部106は、量子化部104で量子化された画像データを符号化し、生成された符号化データを出力する。この際、生成された符号化データの量（符号量）が発生符号量保持部107に保持される。
【００２４】
量子化パラメータ保持部108は、基準量子化パラメータＱｐbase及び量子化制御部105で決定した、次に符号化するラインに用いる量子化パラメータＱｐ[i]を保持する。なお、以降、変数ｉは当該符号化対象ライン番号を示し、Ｑｐ[i]は、当該フレームの第ｉラインのＱｐを意味する。
【００２５】
複雑度算出部109は、次に符号化する第ｉラインに対し、１ライン前のラインの複雑度Ｘ[i-1]を算出する（詳細後述）。
【００２６】
目標符号量算出部110は、目標符号量設定部103で設定される画像の基準目標符号量Ｔn、複雑度設定部111で設定される画像複雑度Ｘn-1、及び、複雑度Ｘ[i-1]に従って、次に符号化する第ｉラインの目標符号量Ｔ[i]を算出する。ここで示すｎは、符号化対象画像番号を示し、例えばＴnは、第ｎフレームの画像目標符号量を表し、画像複雑度Ｘn-1は符号化対象の着目画像の１つ前の画像の複雑度を表す。
【００２７】
目標符号量変更部112は、符号化が完了したラインまでの発生符号量と、相関度判定部115の画像相関度からある一定条件を満たした場合、目標符号量算出部110で算出した目標符号量を変更する（詳細後述）。
【００２８】
差分算出部113は、画素ライン毎に、発生符号量保持部107で保持されたライン発生符号量Ｓ[i-1]と、目標符号量変更部113から出力される目標符号量Ｔ’[i]の差分Ｅ[i-1]を算出し、算出結果を差分保持部114に出力する。差分保持部114は、画像の先頭ラインからの積算差分値ΣE[i-1]を保持する。
【００２９】
量子化制御部105は、差分保持部114で保持された積算差分値ΣE[i-1]と、量子化パラメータ保持部108で保持された基準量子化パラメータＱｐbaseを用いて、次のラインの量子化パラメータＱｐ[i]を決定する。量子化パラメータは、当該画像の当該ラインまでの発生符号量積算量が、同目標符号量積算量へ近付くように制御される。
【００３０】
量子化制御部105は、積算差分値ΣＥ[i-1]の絶対値が小さくなるように、次に符号化するラインの量子化パラメータＱｐ[i]を算出する。その詳細な算出方法は後述する。
以上により符号量を制御する。
【００３１】
＜複雑度の算出＞
複雑度は、難易度を示す指標であり、画像が複雑であるほど大きく、平坦であるほど小さくなる値である。
【００３２】
複雑度算出部109は、着目ラインの目標符号量を算出するために、１つ前に符号化したラインの複雑度を算出する。
【００３３】
１ライン前の符号化に利用した量子化パラメータＱｐ[i-1]と、その際の発生符号量Ｓ[i-1]を用いて、１ライン前の複雑度Ｘ[i-1]を次式（１）により算出する。
Ｘ[i-1] ＝ Ｑｐ[i-1] × Ｓ[i-1]  … (1)
【００３４】
＜目標符号量の算出＞
画像の難しいラインほど目標符号量を多く割り当て、易しいラインほど目標符号量を小さく割り当てることで、画質劣化度を意味するＱｐの変動を画面内で極力小さくすることができる。そこで、実施形態における目標符号量算出部110は、目標符号量設定部103で設定される画像の基準目標符号量Ｔn、複雑度設定部111で設定される画像複雑度Ｘn-1[i]及び、複雑度Ｘ[i-1]に従い、次に符号化する着目ラインの目標符号量Ｔ[i]を算出する。目標符号量の算出式は次式（２）の通りである。
Ｔ[i] = Ｔn × Ｘ[i-1] / Ｘn-1[i]  …(2)
式（１）のように、複雑度は符号化しなければ算出できないフィードバック量であるため、次に符号化するラインの目標符号量は、１ライン前の複雑度、１フレーム前の第ｉラインの複雑度をフィードバック算出する。
【００３５】
＜量子化制御＞
量子化パラメータ算出方法の一つに、MPEG2 Test Model 5に示された公知技術がある。このTest Model 5を参照し、実施形態では、差分保持部114で保持された積算差分値ΣＥ[i-1]と量子化パラメータ保持部108で保持された基準量子化パラメータＱｐbaseを用いて、次のラインの量子化パラメータＱｐ[i]を次式（３）として算出する。
Ｑｐ[i]＝Ｑｐbase + r ×ΣＥ[i-1]  …(3)
なお、式中、ｒは制御感度を示し、大きいほど積算差分値に応じて急峻にＱｐ[i]を変動させて符号量の制御性が良くなるパラメータである。
【００３６】
Test Model5を利用することで、目標符号量に対して発生符号量が大きければ量子化パラメータを大きく、小さければ量子化パラメータを小さく設定し、符号量を制御することが可能である。
【００３７】
＜シーンチェンジ時の動作＞
本実施形態におけるシーンチェンジは、１フレーム前の画像に対して着目フレームの画像難易度が乖離しているフレーム間の関係を指す。例えば、暗闇の中で動画像を撮影してＮ番目のフレームでフラッシュが炊かれた場合である。直前のＮ−１フレームでは暗闇で物体が視認できないような画像であったのに対し、Ｎフレームではフラッシュにより物体が視認できる画像になり、Ｎフレームの画像難易度はＮ−１フレームに対して十分に高くなる。
【００３８】
以上のような動画像におけるシーンチェンジは通常の撮影時に頻繁に起こる。このため、シーンチェンジ時における実施形態の符号量制御部101の動作を以下に説明する。
【００３９】
符号量制御部101は、上述のように量子化設定部102、目標符号量設定部103、複雑度設定部111の設定値に従い符号量制御を行う。動画像の圧縮符号化においては、一般的に、上記の設定値はリアルタイム処理のためフィードバック量を利用する。また、符号量制御部101内部でも、式（２）に示すように、符号化対象の着目ラインの目標符号量の算出には、フィードバック量を利用する。以上から、シーンチェンジが発生した場合、符号量制御性が悪くなる問題がある。
【００４０】
ここで、シーンチェンジ時の問題を説明する。図３（ａ），（ｂ）は、シーンチェンジ時の動作説明に用いる２種の動画像パターンＡ，Ｂを示している。図４は動画像パターンＡにおけるシーンチェンジ前後のライン単位の目標符号量の推移を示している。
【００４１】
図４を見てわかるように、図３（ａ）のパターンＡのように突然映像に物体が入った場合、式（２）に示すＸn-1は、シーンチェンジ前の画像の値を設定されているため、目標符号量積算量は画面目標符号量以上になり、上記目標符号量に追従して発生符号量は大きく発生してしまう。なお、簡単のためライン発生符号量はライン目標符号量と一致しているものとする。そこで、符号量を収束させるためには、符号量の上限値を設定しておくことが有効である。
【００４２】
図５（ａ）は、符号量上限値を設定した場合の図３（ａ）のパターンＡにおけるライン単位の目標符号量の推移を、同図（ｂ）はＱｐの推移を示している。図５（ａ），（ｂ）に示すように、符号量上限値に到達した以降のライン単位の目標符号量を、符号量上限値になるように設定することで、発生符号量は画面目標符号量に収束させることができる。ただし、Ｑｐは発生符号量を抑えるために増加する。
【００４３】
次に、符号量上限値を設定することによる問題を説明する。図６（ａ），（ｂ）、図７（ａ，（ｂ）に、図３（ｂ）のパターンＢにおけるライン単位の目標符号量の推移及びＱｐの推移を示す。図６（ａ），（ｂ）は、符号量上限値を設定しない場合、図７（ａ）、（ｂ）は符号量上限値を設定する場合の推移をそれぞれ示している。
【００４４】
図６（ａ），（ｂ）に示すように、符号量上限値を設定しなければ、パターンＢはシーンチェンジが起きておらず符号量制御に利用するフィードバック量が正しいため、画面目標符号量に収束する。
【００４５】
一方、パターンＡのときと同様に符号量上限値を設定する場合、図７（ａ），（ｂ）に示すように、シーンチェンジが起きていないにも関わらず、Ｑｐが変動する可能性がある。
【００４６】
図３（ｂ）のパターンＢを見ると、画面の上部に物体が集中しているため、図６（ａ）、（ｂ）に示すように、ライン目標符号量は、前半のラインで大きく設定することが望ましい。しかし、前半のラインに目標符号量を多く割り当てるが故、発生符号量が符号量上限値を超えてしまい、以降のラインでＱｐを余計に増加させてしまうことで、Ｑｐの増加により画質劣化を引き起こす。以上から画像に依らず固定的に符号量上限値を設定することは好ましくないのは理解できよう。
【００４７】
＜目標符号量変更部＞
上記の理由で、実施形態における目標符号量変更部112は、符号量上限値を画像相関度に応じて適応的に変更することで、符号量制御性と画質劣化の抑制を両立させる。具体的には、目標符号量変更部112は、シーンチェンジの度合いに応じて、先に示した式（２）における１ライン当たりの基準となる目標符号量Ｔnを変更する。
【００４８】
相関度判定部115は、符号化対象の着目フレームの輝度成分の合計値を求める。そして、相関度判定部115は、着目フレームの輝度合計値と、直前のフレームの輝度合計値とを、着目フレームの符号化前に比較し、画像相関度を決定する。実施形態における画像相関度は、着目フレームと直前のフレームの輝度合計値の差が小さいほど１に近づき、差が大きいほど０に近づく値とする。このため、画像符号化部100は、符号化対象の動画像を１フレーム分だけ遅延させるためのバッファ116を有し、相関度判定部115は撮像部からのフレームを遅延無しで入力し、着目フレームの符号化に先立って、その着目フレームの輝度合計値を算出する。なお、上記説明から、相関度判定部115は、直前のフレームの輝度合計値を保持する記憶部（メモリ又はレジスタ）を有する。
【００４９】
図８に、目標符号量変更部112の１フレーム当たりの処理フローを示す。以下、同図を参照して、実施形態の目標符号量変更部112の処理を説明する。
【００５０】
S801にて、目標符号量変更部112は、符号化しようとする着目フレームと符号化が完了した直前のフレームとの画像相関度を相関度判定部115から取得する。
【００５１】
S802で、目標符号量変更部112は、先に説明した符号量上限値を表す線分の傾きを、画像相関度が大きければ小さく、画像相関度が小さければ大きくなるように、着目フレームに対して設定する。
【００５２】
符号量上限値は、符号化終了間際のラインほど符号量制御可能なライン数が減っていくため、先頭ラインほど小さく、最終ラインに近づくほど大きくする。なお、本実施形態では最終ラインの符号量上限値を画像目標符号量と一致させているが、画質の観点から、画像目標符号量よりも大きい値に設定してもよい。
【００５３】
S803にて、目標符号量変更部112は、最終ラインでなければS804に分岐する。S804で、目標符号量変更部112は、発生符号量積算量が符号量上限値よりも大きければS805に、そうでなければS803に分岐する。S805で、目標符号量変更部112は、目標符号量積算量が符号量上限値になるように着目ラインの目標符号量を変更する。以上の処理により、シーンチェンジ等でフィードバック量が適切でない場合も、発生符号量を画面目標符号量に近付けることができる。
【００５４】
＜効果＞
図９に画像相関度に応じた符号量上限値の傾きの違いを示す。図９に示す座標空間において水平軸はラインの位置を示し、垂直軸は総符号量を示している。図９のように画像相関度が小さいほどライン単位の目標符号量を速い段階から変更し易く、画像相関度が大きいほど変更されづらいように符号量上限値を設定する。
【００５５】
図示において、符号量上限値が表す各線分は、最後のライン位置でのフレームの目標符号量と一致するものであり、異なるのはその傾きである。なお、最後のライン位置との目標符号量が、各線分毎に異なるようにしても構わない。この場合、傾きと切片を、予め設定できるようにしても構わない。
【００５６】
目標符号量変更部112は、着目フレームと直前のフレームの輝度合計値の差が小さいほど（シーンチェンジの度合いが小さいほど）“１”に近づき、その差が大きいほど（シーンチェンジの度合いが大きいほど）“０”に近づく相関度を求めるとして説明した。目標符号量変更部112は、この相関度を図９の符号量上限値の傾きとして用いるものである。
【００５７】
そして実施形態における目標符号量変更部１１２は、先に説明した式（２）に従って次に符号化する第ｉラインの目標符号量を決定していくが、先頭から直前の第ｉ−１ラインまでの実際の符号量の合計が、そのシーンに対して設定した符号量上限値の線分を超えた場合には、Ｔ[i]を、設定された符号量上限値に沿うように変更する。
【００５８】
図１０に、本実施形態を実施することによる効果を説明する動画パターンＣを示す。図１１に、動画像パターンＣにおけるフレーム毎のライン単位の目標符号量の推移及びＱｐの推移を示す。
【００５９】
Nフレーム、N+1フレームでは、シーンチェンジ等が起こっておらず、安定しているため、符号量上限値を高く設定し、発生符号量が画像目標符号量に収束し、かつＱｐも一定で推移する。
【００６０】
N+2フレームでは、それ以前のＮ+1フレームには存在しなかった物体が画像上部に出現するため、符号量上限値を設定しない場合、発生符号量積算量が画像目標符号量より多く発生する。
【００６１】
一方で、符号量上限値を、N+1フレームに対して相関が小さいため、N+1フレームより小さく設定した場合、発生符号量積算量が符号量上限値を超える時点で目標符号量積算量を符号量上限値に変更するため、画像目標符号量に発生符号量積算量は収束する。
【００６２】
N+3フレームでは、N+2フレーム目に対して下部の物体が消失し、画像相関度が更に低くなる。このため、符号量上限値をN+2フレーム目よりに小さく設定する。N+3フレームでは上部が複雑な画像のため、前半ラインで発生符号量が多く発生し、符号量上限値に達することで、目標符号量積算量が符号用上限値に変更され、画像目標符号量に発生符号量は収束するものの、発生符号量を抑え込もうとＱｐが増加する。
【００６３】
N+4フレームでは、N+3フレームと画像相関度が非常に高い画像のため、符号量上限値は高く設定する。符号量上限値が高いため、N+3フレームのように目標符号量積算量は変更されず、Ｑｐが一定のまま画像目標符号量に発生符号量積算量は収束する。
【００６４】
符号量上限値が画像に依らず一定の場合、N+4フレームは画像が変化していないにも関わらずＱｐが増加し画像劣化の原因になる一方で、符号量上限値を画像相関度に応じて変更することで、シーンチェンジ直後のフレームを除いて、Ｑｐの変化を小さく、画質劣化を抑制することができる。
【００６５】
以上のようにすることで、Ｑｐの変化を小さくして画質劣化を抑制し、かつ符号量制御性の高い画像符号化装置を提供することができる。
【００６６】
なお、相関度判定部は、当該フレームと１つ前のフレームの画像相関度を他のパラメータを利用し判定してもよい。例えば、画像の特徴を示すパラメータであるヒストグラムを比較することで、画像相関度を判定することも、本発明の範疇である。
【００６７】
また、上記実施例では、ライン単位に量子化、符号化を行うものとして説明した。しかし、量子化、符号化単位は、ｍ×ｎ画素で構成されるブロック単位として良い。この場合、目標符号量算出部１１０は、符号化対象の着目ブロックのブロック目標符号量算出し、目標符号量変更部１１２は着目ブロックに対するブロック目標符号量を変更することになる。例えば、８×８画素等のブロック単位に量子化し、その量子化後のブロックに符号化しても良い。上記実施形態での符号化単位のラインは、高さが１画素、水平方向が画像の水平方向の画素数とするブロックであると言える。かかる点は、以下に説明する各実施形態でも同じである。
【００６８】
［第２の実施形態］
図１２は、第２の実施形態に係る画像符号化装置のブロック構成図である。本第２の実施形態は、符号量制御部で制御する対象が、画像データに対する離散ウェーブレット変換して得られた変換係数データであり、符号量制御部101は離散ウェーブレット変換により生成されるサブバンド毎に符号量制御を行う場合を想定したものである。なお、参照符号100〜115は、第１の実施形態における構成と同じとし、その説明は省略する。
【００６９】
図１２において、離散ウェーブレット変換部1216は、画像データを周波数領域の信号へ変換し、その変換係数をサブバンド毎に符号量制御部101の量子化部104へ出力する。
【００７０】
＜離散ウェーブレット変換＞
図１３は、離散ウェーブレット変換（ＤＷＴ）に係る垂直、水平フィルタリングをそれぞれ３回実行した場合に得られるサブバンドを示している。
【００７１】
離散ウェーブレット変換は、垂直、水平にそれぞれフィルタをかけることで画像データの周波数帯域を複数のサブバンドに分解する。そして、この変換により生成された低域サブバンドＬＬに対して再帰的にＤＷＴを施すことで分解レベルを増加させ、図３に示すように、周波数分解の粒度を細かくすることができる。なお、図３における“Ｌ”,“Ｈ”はそれぞれ低域、高域を示し、その順序は、前側が水平フィルタリングを行った結果の帯域、後側が垂直フィルタリングを行った結果の帯域を示し、“Ｌｖ”の後の数字はＤＷＴの分解レベルを示す。なお、図示のサブバンドＬＬに“Ｌｖ”が付かないのは、ＤＷＴを複数回行う場合には直前のＤＷＴで得たサブバンドＬＬが変換対象となって、サブバンドＬＬは常に１つとなり、分解レベルで区別する必要がないためである。
【００７２】
符号量制御部101では、高域のサブバンドほど量子化パラメータを大きく、低域のサブバンドほど量子化パラメータを小さく設定し符号量制御を行うことで、人間の視覚特性上視認しづらい画像データの高域ほど発生符号量を圧縮し、符号化効率を向上させることが一般的である。
【００７３】
＜符号量制御部の動作＞
本第２の実施形態における符号量制御部101は、上記離散ウェーブレット変換により生成されるサブバンド毎に、符号量制御を行う。つまり、量子化設定部102は各サブバンドの基準量子化パラメータを設定する。また、目標符号量設定部103ではサブバンド目標符号量を設定する。そして、複雑度設定部111ではサブバンド毎に画像複雑度を設定する。そして、符号量制御部101はサブバンド毎に上記設定値に基づき、ライン（又はブロック）ごとの符号量制御を行う。
【００７４】
以上のようにすることで、各サブバンドの符号量制御を独立して行うことができ、Ｑｐの変化を小さくして画質劣化を抑制し、かつ符号量制御性の高い画像符号化装置を提供することができる。
【００７５】
［第３の実施形態］
図１４は、第３の実施形態に係る画像符号化装置のブロック構成図である。同図における参照符号100〜115は、第１の実施形態における構成と同じとし、その説明は省略する。
【００７６】
本第３の実施形態は、着目フレームの着目サブバンドの符号化処理を以下のように行う。
【００７７】
着目サブバンドの第ｉラインを符号化する際、その先頭ラインから第ｉ−１ラインまでの符号量と、１つ前のフレーム（符号化済み）の同じ分解レベル、同じ種類のサブバンドの先頭ラインから第ｉ−１ラインまでの符号量との差を求める。そして、その差が符号量差分閾値を超えた場合、符号化する着目ライン（第ｉライン）の目標符号量を変更する。更に、符号量差分閾値を超えたサブバンド数に応じて、他のサブバンドの閾値を小さくすることで、画像相関度に応じた目標符号量の修正を行う。
【００７８】
＜目標符号量変更部＞
発生符号量保持部107は、直前のフレームのサブバンド毎の発生符号量積算量を保持する。或る１つのサブバンドに着目したとき、そのサブバンドの発生符号量積算量は所定のライン間隔で積算符号量を意味する。例えば、ライン間隔（ブロック数）を“８”とし、先頭ラインを第１ラインと定義する。この場合、発生符号量保持部107は、着目サブバンドの第１乃至８ラインの符号化データの合計量である積算符号量、第１乃至１６ラインの積算符号量、第１乃至２４ラインの積算符号量、…を保持する。以降、積算符号量として保持されるラインを符号量比較ラインと言う。
【００７９】
以下は、１つのサブバンドに着目した場合のものであり、単にラインと表現した場合には、そのラインは着目サブバンド内のラインを意味することに注意されたい。
【００８０】
目標符号量変更部112は、符号化対象の着目ラインが符号量比較ライン＋１（＝１、９、１７…のいずれか）となるとき、先頭から直前ラインまでに発生した符号量（以下、単に現符号量という）と直前フレームの該当サブバンド内の対応するラインまでの符号量積算量（以下、単に前符号量という）とを比較する。そして、現符号量が前符号量より大きい場合、目標符号量変更部112は、着目ライン以降のラインの目標符号量Ｔ’[i]を、サブバンドの目標符号量Ｔnに対する発生符号量積算量ΣＳ[i]の差に対して、まだ符号化が完了していない残りのライン数で除した値に変更する。変更後のライン目標符号量は次式（４）で与えられる。
Ｔ’ [i] ＝ (Ｔn-ΣＳ[i]) / (ｉtotal-ｉcheck)  …(4)
ここで、ｉcheckは、ライン目標符号量を変更し始めるラインまでのライン数である。
【００８１】
＜画像相関度変更部＞
画像相関度変更部1417は、相関度判定部115で設定された画像相関度を、目標符号量が変更されたサブバンドの数に応じて変更する。本第３の実施形態では、画像相関度は符号量差分閾値を示す。
【００８２】
符号量制御部101は、サブバンド毎に独立に符号量制御を行うため、他のサブバンドの目標符号量が変更されて、着目サブバンドの目標符号量は変更されない可能性がある。符号化終了間際のラインで目標符号量を変更しようとするほど、発生符号量を抑え込むためにＱｐを大きくする変化量は増加する。
【００８３】
そこで、他のサブバンドで１フレーム前と着目フレームの発生符号量積算量が異なるのであれば、画像相関度は高くないと判断できるため、画像相関度変更部1417は、目標符号量が変更されたサブバンドの数に応じて各サブバンドの符号量差分閾値を小さく設定する。これにより符号化開始後早い段階で、ライン単位の目標符号量を変更することで符号量制御性を向上させる。
【００８４】
以上のように、サブバンド毎の符号量制御において、各サブバンドの画像の相関度に応じて符号量差分閾値を変更することで、Ｑｐの変化を小さくして画質劣化を抑制し、かつ符号量制御性の高い画像符号化装置を提供することができる。
【００８５】
なお、本実施形態ではサブバンドを８等分してサブバンド発生符号量積算量を比較したが、その限りではなく、保持する容量に制限がなければ更に細かく分割することも、本実施形態の範疇である。
【００８６】
また、等分割するだけでなく、符号化開始直後のラインのみ細かく比較するような構成も、本実施形態の範疇である。
【００８７】
更に、符号量制御部が複数コア構成の画像符号化装置も本実施形態の範疇であり、他コアのサブバンドが目標符号量を変更した数も含めて当該コアの相関度を変更することも可能である。
【００８８】
［第４の実施形態］
本第４の実施形態は、フィードバックパラメータである複雑度を変更することでラインの目標符号量の変更を行う。本第４の実施形態における装置構成は、第１の実施形態（図１）と同じである。
【００８９】
式(２)に示すように、複雑度は符号化が完了しなければ取得できないパラメータであることから、目標符号量算出部110では、１つ前のフレームの複雑度Ｘn-1を利用してライン目標符号量を算出するため、符号量制御対象の目標符号量に目標符号量積算量が収束しない場合がある。
【００９０】
＜目標符号量変更部＞
そこで、目標符号量変更部112では、着目ラインの目標符号量を変更する場合には、Ｘn-1に重みづけをすることでその目標符号量を変更する。変更後の目標符号量Ｔ’[i]を、次式（５）に示す。なお、α(≧1)は上記重み付けを行うための重み付け係数である。
Ｔ’[i] ＝ Ｔn × Ｘ[i-1] ／ (Ｘn-1×α) … (5)
上記の式（５）を用いることにより、画面目標符号量に必ずしも収束はしないものの、ラインの目標符号量を変更することで発生符号量積算量は、変更しない場合よりも抑制され、かつ、複雑度は、式（１）で示されることから、αの値に応じて、Ｑｐの大きさを調整可能である。Ｑｐの大きさを調整できるため、より画質優先の符号量制御を行うことができる。
【００９１】
以上のようにすることで、Ｑｐの調整を任意に行い、画質劣化を抑制しつつ、かつ符号量制御性の高い画像符号化装置を提供することができる。
【００９２】
［第５の実施形態］
図１５は、第５の実施形態に係る画像符号化装置のブロック構成図である。図示において、参照符号100〜115,1216は、第２の実施形態と同じであるので、その説明は省略する。
【００９３】
サブバンド発生符号量積算部1518は、各サブバンドの発生符号量を同一画素位置に相当するライン毎に積算する。本実施形態は、ラインごとの目標符号量の変更を、全サブバンド同時に行い、全サブバンドの符号化が並列に行われるものとする。
【００９４】
＜サブバンドの同一画素位置＞
図１６は、離散ウェーブレット変換（ＤＷＴ）の垂直、水平フィルタリングをそれぞれ３回施した場合の各サブバンドの離散ウェーブレット変換前の画像が表す空間での同一画素位置の関係を示している。
【００９５】
ＤＷＴは、変換前の画像の２画素ラインに対して１画素ライン分の変換係数が生成される。また、ＤＷＴはサブバンドＬＬに対して再帰的に行われるため、分解レベル２の１ライン分の変換係数は、分解レベル１の２画素ラインの変換係数から生成される。以降分解レベルを増やしても同様の関係である。
【００９６】
上記の関係から、最高域であるLv1のＮラインに対して、Lv2のＮ／２ライン、Lv3のＮ／４ラインが同一画素位置に相当する。ＤＷＴを３回実行する場合、図１６のように、同一画素位置と見なせるラインは、Lv1の４ラインに対して、Lv2の２ライン、Lv3の１ラインである。
【００９７】
＜目標符号量変更部＞
目標符号量変更部112は、符号量上限値を、サブバンド合計符号量上限値として全サブバンドの発生符号量積算量に対して設定し、サブバンド発生符号量積算部1518で積算したサブバンド発生符号量積算量と比較する。サブバンド発生符号量積算量がサブバンド合計符号量上限値よりも大きければ各サブバンドの着目ラインの目標符号量Ｔ’[i]を、式(5)を用いて変更する。
【００９８】
このように、全サブバンド一斉に目標符号量を変更することで、Ｑｐも同様に全サブバンド一斉に変更される。Ｑｐは一般に画像データの高域成分ほど大きく、低域成分ほど小さく設定するが、サブバンド独立で目標符号量を変更すると、上記の関係が崩れる場合がある。例えば、サブバンドＨＬのＱｐがサブバンドＬＨのＱｐより非常に大きい値であった場合、画像の縦エッジのみ極端に劣化し、主観画質の劣化が目立つ。
【００９９】
一方で、本実施形態を適応すれば、一斉に式（５）のαを所定の値に変更できるため、画質の極端な劣化を抑制することができる。
【０１００】
以上のようにすることで、各サブバンドの目標符号量の変更を同一画素位置から行うことで、Ｑｐの変更も同様に同一画素位置から行い、画質劣化を抑制しつつ、かつ符号量制御性の高い画像符号化装置を提供することができる。
【０１０１】
なお、必ずしも全サブバンドで目標符号量を変更する必要は無く、例えば最も低域成分であるサブバンドＬＬは画質を優先し、目標符号量を変更しない構成も、本発明の範疇である。
【０１０２】
以上、各実施形態について詳述したが、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施形態の構成要素を全部又は複数を組み合わせることも可能である。
【０１０３】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０４】
１００…画像符号化部、１０１…符号量制御部、１０２…量子化設定部、１０３…目標符号量設定部、１０４…量子化部、１０５…量子化制御部、１０６…符号化部、１０７…発生符号量保持部、１０８…量子化パラメータ保持部、１０９…複雑度算出部、１１０…目標符号量算出部、１１１…複雑度設定部、１１２…目標符号量変更部、１１３…差分算出部、１１４…差分保持部、１１５…相関度判定部、１１６…バッファ、１２１６…離散ウェーブレット変換部、１４１７…画像相関度変更部、１５１８…サブバンド発生符号量積算部
【図１】
2018101907.tif 000003
【図２】
2018101907.tif 000004
【図３】
2018101907.tif 000005
【図４】
2018101907.tif 000006
【図５】
2018101907.tif 000007
【図６】
2018101907.tif 000008
【図７】
2018101907.tif 000009
【図８】
2018101907.tif 000010
【図９】
2018101907.tif 000011
【図１０】
2018101907.tif 000012
【図１１】
2018101907.tif 000013
【図１２】
2018101907.tif 000014
【図１３】
2018101907.tif 000015
【図１４】
2018101907.tif 000016
【図１５】
2018101907.tif 000017
【図１６】
2018101907.tif 000018