(57)【要約】      （修正有）【課題】目標符号量となるように、且つ、１フレームの画像において、領域毎の画質の差が発生しにくい符号化データを生成する技術を提供する。【解決手段】画像符号化装置は、予め設定されたブロックを単位に量子化する量子化部１０３と、量子化データを符号化する符号化部１０４と、画像データの着目領域の符号化データの符号量が着目領域の目標符号量となるように、ブロックを単位に量子化パラメータを更新する制御部１０５とを有する。ここで、制御部１０５は、符号化する着目フレームより前のフレームの各領域の符号量の比率に従ってフレーム目標符号量を分配することで、着目フレームの各領域の初期の目標符号量を設定する設定部１１１と、着目領域の符号化を開始する場合、フレーム目標符号量のうち未消費となっている符号量残量と、着目領域及び着目領域に後続する領域それぞれの初期の目標符号量に基づいて、着目領域の目標符号量を補正する。【選択図】図１
2019114911.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段で撮像された動画像を符号化する画像符号化装置であって、
予め設定されたブロックを単位に、前記動画像におけるフレームが表す画像データを、設定された量子化パラメータを用いて量子化する量子化手段と、
該量子化手段の量子化で得られたデータを符号化する符号化手段と、
前記画像データが複数の領域で構成されるものとし、各領域に対して目標符号量を設定すると共に、前記複数の領域における着目領域の符号化データの符号量が当該着目領域の目標符号量となるように、前記ブロックを単位に前記量子化パラメータを更新する制御手段とを有し、
前記制御手段は、
符号化する着目フレームより前のフレームの各領域の符号量の比率に従ってフレーム目標符号量を分配することで、前記着目フレームの各領域の初期の目標符号量を設定する設定手段と、
前記着目領域の符号化を開始する場合、前記フレーム目標符号量のうち未消費となっている符号量残量と、前記着目領域及び当該着目領域に後続する領域それぞれの前記初期の目標符号量に基づいて、前記着目領域の前記目標符号量を補正する補正手段とを有する
ことを特徴とする画像符号化装置。
【請求項２】
前記補正手段は、前記符号量残量に、前記着目領域以降の各領域の前記初期の目標符号量の総和に対する前記着目領域の前記初期の目標符号量の比を乗じた値を、前記着目領域の目標符号量する
ことを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記制御手段は、
前記着目フレームより前のフレームの前記着目領域に対応する領域以降に分配された、目標符号量と実際の符号量との差の積算量が、前記着目フレームにおける前記着目領域以降にも発生するものと推定して、前記符号量残量を算出する算出手段を更に有する
ことを特徴とする請求項１又は２に記載の画像符号化装置。
【請求項４】
前記動画像におけるフレームが表す画像データを周波数変換し、変換係数を生成する変換手段を更に有し、
前記量子化手段は、前記変換係数を、予め設定されたブロックを単位に量子化することを特徴とする請求項１乃至３のいずれか１項に記載の画像符号化装置。
【請求項５】
前記撮像手段から供給されたベイヤ配列の画像データを複数のプレーンに分離する分離手段を更に有し、
前記変換手段は、各プレーンについて予め設定された分解レベルまでウェーブレット変換を実行し、
前記量子化手段は、各プレーンから得た同じ種類のサブバンド内の同じ位置の変換係数に対しては、共通な量子化パラメータを用いて量子化する
ことを特徴とする請求項４に記載の画像符号化装置。
【請求項６】
前記分離手段は、Ｒ成分のみのプレーン、Ｇ１成分のみのプレーン、Ｇ２成分のみのプレーン、及び、Ｂ成分のみのプレーンに分離することを特徴とする請求項５に記載の画像符号化装置。
【請求項７】
撮像手段で撮像された動画像を符号化する画像符号化装置の制御方法であって、
予め設定されたブロックを単位に、前記動画像におけるフレームが表す画像データを、設定された量子化パラメータを用いて量子化する量子化工程と、
該量子化工程の量子化で得られたデータを符号化する符号化工程と、
前記画像データが複数の領域で構成されるものとし、各領域に対して目標符号量を設定すると共に、前記複数の領域における着目領域の符号化データの符号量が当該着目領域の目標符号量となるように、前記ブロックを単位に前記量子化パラメータを更新する制御工程とを有し、
前記制御工程は、
符号化する着目フレームより前のフレームの各領域の符号量の比率に従ってフレーム目標符号量を分配することで、前記着目フレームの各領域の初期の目標符号量を設定する設定工程と、
前記着目領域の符号化を開始する場合、前記フレーム目標符号量のうち未消費となっている符号量残量と、前記着目領域及び当該着目領域に後続する領域それぞれの前記初期の目標符号量に基づいて、前記着目領域の前記目標符号量を補正する補正工程とを有する
ことを特徴とする画像符号化装置の制御方法。
【請求項８】
コンピュータが読み込み実行することで、前記コンピュータに、請求項７に記載の方法の各工程を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像データの符号化技術に関するものである。
【背景技術】
【０００２】
現在、デジタルビデオカメラ等、動画像を記録するデジタルの撮像装置が普及しており、近年ではRAW画像を記録する方式が、静止画のみならず動画にも適用されている。RAW画像は記録に必要なデータ量が膨大になるものの、オリジナル画像に対する補正や劣化を最低限に抑えることができ、撮影後の画像編集の自由度が高い。そのため、RAW画像記録は、撮像装置を使用する者の中でも上級者によって好んで使われている。
【０００３】
RAW画像の動画記録時は、所定の記録媒体に一定時間の動画像が記録できるよう、データ量を所望の符号量へ圧縮する圧縮符号化が必要となる。RAW画像は、R, G, B 各色がモザイク状に配置されたベイヤー配列で構成される。ベイヤー配列における隣接する画素は、異なる色成分色のため、隣接画素間の相関が低い。故に、そのまま符号化しても高い圧縮効率を得ることは難しい。そこで、RAW画像から同じ色成分の画素のみを抜出して複数のプレーンを生成する。そして、プレーン毎に符号化を行うことで、プレーン内の画素間の相関を高めて圧縮効率を向上させる、プレーン変換技術が圧縮符号化の手法の一つとして一般的に利用される。
【０００４】
また、従来の代表的な圧縮符号化方式として、H.264(H.264/ MPEG-4 Part10 : Advanced Video Coding)が知られている。この圧縮符号化方式では、１フレーム内の所定画素数から成るブロック毎に、動画像が有する時間冗長性と空間冗長性を利用したデータ量の圧縮が行われる。
【０００５】
上記H.264では、時間冗長性に対する動き検出及び動き補償、空間冗長性に対する周波数変換として離散コサイン変換(Descrete Cosine Transform;DCT) 、更に量子化やエントロピー符号化といった技術を組み合わせることで圧縮符号化を実現している。ただし、ある程度以上圧縮率を上げると、DCT変換特有のブロック歪みが顕著になり、主観的に画像劣化が目立つようになる。
【０００６】
そこで、水平及び垂直方向に低域と高域フィルタリングをそれぞれ適用し、サブバンドと呼ばれる周波数帯に分解する離散ウェーブレット変換(Discrete Wavelet Transform; DWT)を用いるサブバンド符号化技術がJPEG2000方式等で採用されている。このサブバンド符号化は、DCTを用いた符号化技術に比べ、ブロック歪みが生じにくく、高圧縮時の圧縮特性が良いといった特徴を有する。
【０００７】
以上のような技術に加えて、所望の符号量へ符号量を圧縮するためには、圧縮符号化において符号量制御を行う。一般的な符号量制御は、符号化が完了しているフレームの情報を元に、次に符号化するフレームの目標符号量を決定する。そして、１フレームあたりの目標符号量へ発生符号量を収束させるため、符号量差分(発生符号量から目標符号量を減じることで算出される値)の絶対値が小さくなるように、量子化に利用する量子化パラメータQpを、画像の所定の単位毎に変更する量子化制御を行うことで符号量の制御を行う。量子化パラメータQpが大きい程、発生する符号量を少なくするできるものの、画質劣化の度合いが大きくなる。そのため、量子化パラメータQpは、可能な限り小さく、且つ、画面内で一定であることが望ましいパラメータと言うことができる。
【０００８】
この量子化パラメータQpの値は、上述の各プレーンや、各サブバンド間で所定の比率にすることで画質を向上させることができる。例えば、プレーン変換により生成されたR, G, B各プレーンは、視覚的重要度が同等であるという観点から、同じQpであることが望ましく、更に、各サブバンド間のQpの関係は、高域サブバンドほど量子化パラメータを大きく設定することが望ましい。上述のサブバンド間のQp設定の関係式は、JPEG2000で暗示的な量子化としても規定されている。
【０００９】
一方で、上述の目標符号量は、画面に対して細かく設定するほどその制御性は高まる。例えば、画面の目標符号量だけでなく、画面を複数の領域の集合体とみなして、領域毎に目標符号量を設定し、各領域の符号化が完了する毎に未符号化領域へ符号化結果をフィードバックすることで、符号量の制御性は向上する。
【００１０】
特許文献１には、符号化対象フレームの未符号化領域の符号量を、近接する符号化済みフレームにおける、該当フレームの符号化済み領域と未符号化領域に対応する領域の符号量の比率に基づいて、未符号化領域の符号量を推定することが開示されている。そして、特許文献１では、その推定量と割り当て可能符号量に基づき未符号化領域の量子化パラメータQpを決定することで、符号量制御性を向上させるとしている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０１２−２５３５１６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１によれば、未符号化領域の符号量を符号化済みフレームの符号化結果により予測して量子化パラメータQpを調整できるため、１フレーム当たりの発生符号量を精度高く目標符号量に近付けることができる。
【００１３】
しかしながら、特許文献１に記載された技術では、符号量制御性は向上するものの、画面内の量子化パラメータQpの関係が大きく乖離することが起こり得る。例えば、ラスタ順に符号化を実施する場合、画面下部の未符号化領域において、割り当て可能符号量が限りなく小さくなっていると、画面上部と比較し、画面下部の量子化パラメータQpは大きくなり、画面下部ほど画質が劣化したバランスの悪い画像になってしまう。
【００１４】
本発明はかかる問題に鑑みなされたものであり、目標符号量となるように、且つ、１フレームの画像において、領域毎の画質の差が発生しにくい符号化データを生成する技術を提供しようとするものである。
【課題を解決するための手段】
【００１５】
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
撮像手段で撮像された動画像を符号化する画像符号化装置であって、
予め設定されたブロックを単位に、前記動画像におけるフレームが表す画像データを、設定された量子化パラメータを用いて量子化する量子化手段と、
該量子化手段の量子化で得られたデータを符号化する符号化手段と、
前記画像データが複数の領域で構成されるものとし、各領域に対して目標符号量を設定すると共に、前記複数の領域における着目領域の符号化データの符号量が当該着目領域の目標符号量となるように、前記ブロックを単位に前記量子化パラメータを更新する制御手段とを有し、
前記制御手段は、
符号化する着目フレームより前のフレームの各領域の符号量の比率に従ってフレーム目標符号量を分配することで、前記着目フレームの各領域の初期の目標符号量を設定する設定手段と、
前記着目領域の符号化を開始する場合、前記フレーム目標符号量のうち未消費となっている符号量残量と、前記着目領域及び当該着目領域に後続する領域それぞれの前記初期の目標符号量に基づいて、前記着目領域の前記目標符号量を補正する補正手段とを有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、目標符号量となるように、且つ、１フレームの画像において、領域毎の画質の差が発生しにくい符号化データを生成することが可能になる。
【図面の簡単な説明】
【００１７】
【図１】第１の実施形態に係る画像符号化装置の構成例を示すブロック図。
【図２】第１の実施形態に係るベイヤー配列をRGBから成る4プレーンへ分離したときのプレーン形成図である。
【図３】第１の実施形態に係る離散ウェーブレット変換(DWT)の垂直、水平フィルタリングをそれぞれ三回施した場合のサブバンド形成図。
【図４】第１の実施形態に係る領域分割方法と、サブブロックにおける対応ブロックラインの関係を示す図。
【図５】第１の実施形態に係るQp固定時の発生符号量に関する概念図。
【図６】第１の実施形態に係る目標符号量算出部の処理フローチャート。
【図７】第１の実施形態における各領域に設定する目標符号量を説明するための図。
【図８】第２の実施形態に係る第１の実施形態を適応した場合の、各領域目標符号量の算出結果を示す図。
【図９】第２の実施形態に係る画像符号化装置の構成例を示すブロック図。
【図１０】第２の実施形態に係る目標符号量算出部の処理フローチャート。
【図１１】第２の実施形態に係る第２の実施形態を適応した場合の、各領域目標符号量の算出結果を示す図
【図１２】第２の実施形態に係る第２の実施形態を適応した場合の、各領域目標符号量の推移を示す図。
【発明を実施するための形態】
【００１８】
以下添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１９】
［第１の実施形態］
図１は、第１の実施形態に係る画像符号化装置の構成例を示すブロック図である。なお、実施形態の画像符号化装置はデジタルビデオカメラ等に代表される撮像装置に搭載されるものとして説明するが符号化対象のＲＡＷ動画像は記憶媒体に格納されていても良く、ネットワークからダウンロードしても構わず、ＲＡＷ画像の発生源は特に問わない。すなわち、撮像装置はあくまで例示であるものと理解されたい。以下、図１における各構成要素について説明する。
【００２０】
［プレーン変換部］
プレーン変換部101は、不図示の撮像部で撮像してベイヤ配列のＲＡＷ画像データを入力し、複数のプレーン分離する。図２は、入力画像データであるベイヤー配列のＲＡＷ画像データにおけるＲＧＢ成分から、４プレーンへ分離したときのプレーン形成図である。ベイヤ配列における隣接する２×２画素に着目すると、１個の赤成分（Ｒ）、１個の青成分（Ｂ）、２個の緑成分（Ｇ１、Ｇ２）で構成される。プレーン変換部101は、ＲＡＷ画像データから、Ｒ成分のみで構成されるＲプレーン、Ｇ１成分のみで構成されるＧ１プレーン、Ｇ２成分のみで構成されるＧ２プレーン、Ｂ成分のみで構成されるＢプレーンを分離する。なお、ＲＡＷ画像データの水平方向画素数をＷ，垂直方向画素数をＨと表すと、これら４つのプレーンは水平Ｗ／２画素、垂直Ｈ／２画素のサイズとなる。上記の結果、１つのプレーンに着目すると、隣接する画素間の相関が高くなり、圧縮効率の向上が容易になる。
【００２１】
［離散ウェーブレット変換(Discrete Wavelet Transform; DWT)部］
離散ウェーブレット変換部102は、プレーン変換部101から順次出力されるプレーンに対して周波数変換を行い、変換係数を生成する。
【００２２】
ＤＷＴは、一般に画像全体に対してフィルタリングを行うが、フィルタタップ数分の画素データがバッファメモリに溜まったタイミングで、垂直方向及び水平方向のフィルタリングを行うことが可能である。そのため、ＤＷＴをプレーンデータの１ライン単位に行い、更に生成された低域サブバンドＬＬに対して再帰的にＤＷＴを適用することで、各サブバンドを並列に処理することが可能である。
【００２３】
図３は、垂直、水平フィルタリング処理を１セットとするＤＷＴを３回実行した場合に得られるサブバンド形成図である。図示において“Ｌ”,“Ｈ”はそれぞれ低域、高域を示し、その順序は、前側が水平フィルタリングを行った結果の帯域、後側が垂直フィルタリングを行った結果の帯域を示す。“Ｌｖ”の後の数字はＤＷＴの分解レベルを示す。ＤＷＴを２回以上行う場合、１つ前の変換で得られた低域周波数帯域であるサブバンドＬＬが変換対象となる。それ故、ＤＷＴの実行回数を重ねるにしたがって、直前の変換のサブバンドの水平、垂直とも１／２のサイズとなっていく。また、この理由で、サブバンドＬＬは最終回のＤＷＴで残るので、図示のように分解レベルを表す表記は行わないのが普通である。
【００２４】
なお、実施形態における離散プレーン変換部101は、符号化対象の着目フレーム（ＲＡＷ画像）から生成された４つのプレーンを順にＤＷＴを実行するが、処理時間短縮のために離散ウェーブレット変換部102を複数設けるようにしても良い。例えば、離散プレーン変換部101を２つ並列に設ける場合には、１つの場合と比較し、ＤＷＴに係る負担は１／２にとなり、変換に係る時間も１／２とすることができる。また、離散プレーン変換部101を並列に４つ設ける場合には、１つの場合と比較してＤＷＴに係る時間を１／４とすることが可能である。
【００２５】
本実施形態では、離散ウェーブレット変換部102は各サブバンドで1ライン分の変換係数が生成される度に、各サブバンドの１ライン分の変換係数を順次量子化部103へ出力するものとして説明する。
【００２６】
［量子化部］
量子化部103は、量子化制御部105で生成した量子化パラメータQpを利用し、変換係数を１係数毎に量子化する。なお、量子化パラメータQpは、その値が大きいほど、量子化後の値が小さくなって符号量の削減が可能になるものの、画質劣化が顕著になるパラメータである。また、４プレーンの変換係数の量子化はプレーン毎に行っても、全プレーンについて並列して行っても良いが、量子化部103は、各プレーンにおける同じサブバンド、同じ位置の変換係数を、共通な量子化パラメータQpで量子化し、その量子化結果を符号化部104に供給するものとする。
【００２７】
［符号化部］
符号化部104は、量子化部103による量子化後の各プレーンの変換係数をエントロピー符号化して符号化データを生成し、出力する。
【００２８】
［初期設定］
初期目標符号量設定部111は、着目フレーム（着目ＲＡＷ画像）を構成する複数の領域の符号化開始時の領域目標符号量を設定する（領域の分割に関しては後述する）。初期量子化値設定部112は、着目フレーム符号化開始時の量子化パラメータQpを設定する。なお、符号化開始時の各種設定値は、前のプレーンの符号化情報を元にフィードバック制御で算出することが一般的である。
【００２９】
［量子化制御部］
次に、実施形態における量子化制御部105について説明する。量子化制御部105は、着目フレームの発生符号量が着目フレームの目標符号量に収束するように、量子化パラメータQpを制御する。
【００３０】
実施形態では、１フレームのＲＡＷ画像から４つのプレーンを分離し、それぞれに対して離散ウェーブレット変換を行い、量子化、符号化が行われる。４つのプレーンについて量子化する際に用いる量子化パラメータQpは、サブバンドの種類が同じであれば共通であり、量子化パラメータQpの更新する位置も同じである。これは、着目フレーム（４プレーン分）の符号量に基づき、共通に用いる量子化パラメータQpを更新するからである。
【００３１】
＜制御単位＞
図４は、量子化制御の量子化制御の単位を示す図である。図４を元に、前述した本実施形態の領域及びQpの制御単位を説明する。
【００３２】
まず、本実施形態では、着目フレームを構成するＲ，Ｇ１、Ｇ２，Ｂプレーンそれぞれを図４（ａ）のように垂直方向を４等分する。なお、この分割数は特に制限はなく、４以外であっても構わない。そして、実施形態では、４領域それぞれに目標符号量を設定する。また、符号化済み領域の符号化結果を用いて後続する未符号化領域の目標符号量を算出する（詳細は後述する）。
【００３３】
次に、量子化パラメータQpの制御単位を説明する。前述のように、入力画像はベイヤー配列のＲＡＷ画像であり、プレーン分離部101で４プレーンに分離する。更に、各プレーンに対してＤＷＴを施す。前述のように符号化単位をサブバンド毎のラインとしているが、量子化制御単位は、同一画素位置の各サブバンドの符号化結果の集合体とする。即ち、図４（ｂ）に示すように、分解レベル３のサブバンド｛Lv3HL,Lv3LH,Lv3HH｝及びサブバンド{LL}の１ライン、分解レベル２のサブバンド｛Lv2HL,Lv2LH,Lv3HH｝の2ライン、分解レベル１のサブバンド｛Lv1HL,Lv1LH,Lv1HH｝の4ラインを、一回Qpによる制御単位とする。そして、この制御単位である各サブバンド内の対応する変換係数の集合を、以降ブロックラインと呼ぶ。
【００３４】
なお、１ブロックラインは、入力フレームであるＲＡＷ画像の１６ライン分に相当するため、上記４つの領域の境界を跨ぐ可能性があるが、本実施形態では領域内全ての符号化が完了したときに領域の更新を行うものとする。
【００３５】
発生符号量保持部106は、符号化部104から通知される各ブロックラインを符号化した際の符号化データの符号量を保持する。
【００３６】
領域判定部109は、予め設定した領域の先頭のブロックラインの量子化パラメータQpを制御するタイミングかどうかを判定する。
【００３７】
目標符号量算出部110は、領域判定部109が領域の先頭ブロックラインのQpを制御するタイミングと判断した場合に、ブロックライン目標符号量を算出する。従って、各領域毎に目標符号量を算出し、同一領域では同一のブロックライン目標符号量を利用する。目標符号量算出方法の詳細は後述する。なお、領域の目標符号量から、その領域に含まれるブロックラインの個数に基づいて、ブロックライン目標符号量を算出しても構わない。
【００３８】
差分算出部107は、ブロックライン毎に発生符号量と目標符号量の差分を算出し、差分の積算値である積算差分量を更に算出する。
【００３９】
また、１つの領域の先頭ブロックラインのQpを制御するタイミングで、積算差分量は0に初期化する。これは、領域毎に生じた積算差分量を、未符号化領域へ分配するためである。分配方法に関しては後述する。
【００４０】
量子化値算出部108は、差分算出部107から通知される積算差分量に基づき、Qpを算出（更新）する。詳細は後述する。以上により符号量を制御する。
【００４１】
［量子化値算出］
量子化パラメータ算出方法の一つに、MPEG2 Test Model 5に示された公知技術がある。Test Model 5によれば、初期量子化パラメータQiniと、着目画素ブロックが第ｉ番目としたとき、先頭画素ブロックから第ｉ−１番目までの各画素ブロックにおける符号量と１画素ブロック当たりの目標符号量の差の積算を表すΣE(i-1)から、次式（１）を用いて、着目画素ブロックの量子化パラメータQp[i]を算出する。
Qp[i]  ＝  Qini ＋  r ×ΣE[i-1]    …（１）
ここで、ｒは量子化パラメータの制御感度を示す。制御感度rは、大きいほど急峻にQpを変動させる一方、符号量の制御性が向上するパラメータである。
【００４２】
本実施形態では、４分割した各領域のブロックラインを符号化単位としているので、着目領域の着目ブロックラインの量子化パラメータQp[i]を、
Qp[i]  ＝  Qp_ref ＋  r ×ΣE[i-1]    …（２）
として算出することができる。
ここで、Qp_refは、領域0では初期量子化値設定部112で設定した初期量子化パラメータQp_iniであり、それ以外の領域では、直前領域の最終ブロックラインのQpである。
【００４３】
実施形態では、ベイヤ配列のＲＡＷ画像をＲ、Ｇ１，Ｇ２，Ｂプレーンに分離している。各プレーンを識別するための値０、１、２、３を各プレーンに割り当て、この値を変数plとして表す。そして、色プレーンｐの第ｉ番目のブロックラインをBL(pl,i)と表す。そして、ブロックラインBL(pl,i)の符号量をC(BL(pl,i))とし、着目領域のブロックライン目標符号量をTCとしたとき、式（２）のΣE[i-1]は次式の意味を持つ。
ΣE[i-1]＝ΣΣ｛TC-C(BL(pl,k))}
ここで、ΣΣは、pl=0,1,2,3、及び、k=0,1,2,…,i-1の合算を表す。
【００４４】
量子化値算出部108は、符号化対象のブロックラインに対する量子化パラメータQpを式（２）に従って算出し、その量子化パラメータQpを、実際の各サブバンドの量子化パラメータQp(Qp[pl][sb])に更に変換した上で量子化部103に通知する。なお、pl,sbはそれぞれ、該当プレーン、該当サブバンドを示す。量子化値算出部108は、式(３)に示すように、予め設定したプレーンやサブバンド毎に有するマトリクスmtxに、式(２)で決定したブロックラインの量子化パラメータQpを適用することで、サブバンドの量子化パラメータQp(Qp[pl][sb])を算出する。
Qp[pl][sb] = Qp[i] × mtx[pl][sb]      …（３）
ここで、sbは、サブバンドの種類と分解レベルを特定する変数とする。
【００４５】
一般的に、高周波域のサブバンドほどQpを大きく、低域のサブバンドほどQpを小さく設定し符号量制御を行うことで、人間の視覚特性上視認しづらい、画像データの高域成分ほど発生符号量を圧縮し、符号化効率を向上させる。そのため、マトリクスは、高域サブバンドほど量子化パラメータQpが大きく、低域サブバンドほど量子化パラメータQpが小さくなるように設定する。
【００４６】
＜初期目標符号量設定＞
前述のように、画質観点では量子化パラメータQpの変動を極力小さくするほど望ましい。実現するためには、符号化難易度の高い領域ほど目標符号量を多く割り当て、符号化難易度の低い領域ほど目標符号量を小さく割り当てることが求められる。
【００４７】
図５に、量子化パラメータQp固定時の発生符号量に関する概念図を示す。図５は、１フレームの画像の下部になるにつれて難易度が大きくなっている例を示している。
【００４８】
量子化パラメータQp固定のときに発生する符号量が図５のような関係にある場合、各領域の目標符号量を図５に示す発生符号量の比率で割り当てることで、量子化パラメータQpの画面内での変動を限りなく小さくすることができる。初期目標符号量設定部111では、上述の概念の下、符号化済みフレームの符号化結果に基づき、各領域の初期目標符号量を設定する。
【００４９】
＜目標符号量算出＞
＜処理フロー＞
図６は、本実施形態における目標符号量算出部110の処理内容を示すフローチャートである。以下、同図を参照して、本実施形態の特徴である、目標符号量算出部110による目標符号量の算出方法について説明する。なお、目標符号量算出部110は、前述の通り、領域の先頭のQpを決定するタイミングでのみ駆動し、その領域のブロックライン目標符号量を算出する。
【００５０】
S601にて、目標符号量算出部110は符号量残量を算出する。符号量残量とは、着目フレーム（ＲＡＷ画像データ）のフレーム目標符号量から、符号化済みブロックラインの発生符号量の総和を減じた値である。フレーム目標符号量における未消費量ということもできる。
【００５１】
S602で、符号量残量が0以下であれば、目標符号量算出部110は符号量残量を0にクリップして以降の処理を実施する。なお、この処理は、目標符号量が負になることを避けるためのものである。
【００５２】
S603で、目標符号量算出部110は領域目標符号量を算出する。領域目標符号量は、着目領域以降の各領域の初期の目標符号量の総和に対する、着目領域の初期の目標符号量の比を符号量残量に乗算した値として求めることができる。
着目領域の目標符号量＝符号量残量×着目領域初期目標符号量／未符号化領域初期目標符号量総和
【００５３】
S604で、目標符号量算出部110はブロックライン目標符号量を算出する。ブロックライン目標符号量は、領域目標符号量を着目領域に含まれるブロックラインの個数で除算して算出する。以上によりブロックライン目標符号量が決定する。
【００５４】
＜効果＞
図７（ａ）乃至（ｃ）を用いて本実施形態における目標符号量算出方法の動作例を説明する。
【００５５】
図７（ａ）乃至（ｃ）では、図５と同様に初期目標符号量の比率が1:1:2:3の割合で設定され、この設定値で直前のフレームを符号化すれば、Qpの変動が限りなく抑え込める設定値であるとする。着目フレームにおいては、直前のフレームとの時間的な相関が高いため、上記の設定により、或る程度Qpの変動は抑えられる。故に、直前のフレームの各領域の符号量の比に基づき、着目フレームの各領域の初期目標符号量を求める。しかし、相関性が100%でない限り、Qpは変動し、各ブロックラインでは発生符号量と目標符号量の間に差分量が発生するため、各領域では積算差分量が生じることになる。
【００５６】
また、図７（ａ）乃至（ｃ）は、領域1符号化開始時の領域目標符号量の一例を示しており、領域0において、領域0の初期領域目標符号量に対して2倍の発生符号量が生じた場合を示している。
【００５７】
図７（ａ）に本実施形態を適応した場合の領域目標符号量の算出例を示しているが、比較のため、簡易的な領域目標符号量の再算出例を図７（ｂ）、（ｃ）に合わせて示す。
【００５８】
図７（ｂ）は、領域0の積算差分量を領域1で回収する方法である。このように処理すると、領域1の目標符号量が十分に与えられないため、領域1のQpが急峻に大きくなり、画質劣化を引き起こす恐れがある。
【００５９】
次に図７（ｃ）は、領域0の積算差分量を未符号化領域に等分配して回収する方法である。このように処理すると、初期目標符号量が小さい領域の目標符号量は当初の設定に対して割合的に大きく減少してしまうため、領域1のQpが急峻に大きくなり、同じく画質劣化を引き起こしてしまう。
【００６０】
一方、本実施形態で実施する目標符号量算出方法を適用すると、図７（ａ）のように領域0の積算差分量を後続の領域に初期目標符号量の割合である、領域1:領域2:領域3=1:2:3で割り当てられるため、領域1の符号化開始時の領域目標符号量は、領域1:領域2:領域3=1:2:3となり、前フレームとの相関性が高い場合にQpの変動を画面内で限りなく抑え込める目標符号量の比率を保つことができる。
【００６１】
なお、図６のフローチャートの通り処理を行えば、領域2以降の符号化開始時においても図７（ａ）で示した領域0の積算差分量の分配と同様に、直前の符号化済み領域の積算差分量を未符号化領域の初期目標符号量の比率で分配する相当の領域目標符号量が算出されるため、未符号化領域の目標符号量は、符号量残量が0にならない限り、常に初期目標符号量の比率を維持することができる。
【００６２】
なお、各領域の積算差分量を未符号化領域に分配しない方法も選択肢の一つに考えられる。この場合、Qpの変化は緩やかになる可能性もあるが、符号量制御性では第１の実施形態で示す方法に対し著しく低下するため、比較対象としていない。
【００６３】
以上のように、領域の符号化が完了する度に、積算差分量を初期目標符号量の比率で未符号化領域に割り振り、領域目標符号量を算出することで、符号量制御性を保ちつつ画質を向上することができる。
【００６４】
なお、プレーン変換やDWTを施さない場合も本実施形態の範疇であり、その場合、プレーン変換部は入力画像をスルーで後段に通し、DWT分解レベルが0とみなすことに相当する。また、実施形態ではDWTの回数（分解数）を３として説明したが、回数に制限は無く、例えば４回もしくはそれ以上であっても構わない。また、入力する画像の領域分割数も特に制限はなく、分割数は２以上の複数であれば適用できる。また、量子化制御単位はこの限りではなく、ラインを更に水平に分割することや、各ブロックラインに含まれるサブバンドが、ブロックライン毎に異なることも、本実施形態の範疇である。
【００６５】
また、プレーン変換は、べイヤーRAW画像の各色要素であるR,G1,G2,Bへ分離せずとも、R,G1,G2,B各色要素を利用して、輝度情報、色差情報などから成る複数プレーンへ変換することも本実施例の範疇である。その場合、輝度プレーンの量子化パラメータは、色差プレーンよりも小さい値となるように式(3)に示すMtxを設定することで、人間の視覚特性上劣化が視認しやすい輝度成分の画質を保護することも本実施例の範疇である。
【００６６】
［第２の実施形態］
次に第２の実施形態を説明する。第１の実施形態と異なる点は、未符号化領域で生じるであろう、発生符号量と目標符号量の間の統計的な差分量を加味し、着目領域の目標符号量を決定する点である。
【００６７】
図８に、第１の実施形態で示した目標符号量算出方法を利用した際の、最終領域符号化時に確定する各領域目標符号量の算出結果の一例を示す。
【００６８】
本第１の実施形態では、先頭領域から順に、積算差分量を未符号化領域に割り振るため、後続の領域ほど積算差分量の分配量が多い。図８の場合、積算差分量が積み上がることで、後続の領域ほど画質が劣化していく可能性が高くなる。
【００６９】
そこで、本第２の実施形態では、後続の領域の積算差分量と前方の領域の積算差分量の積み上がり易さを平準化することで、画質劣化を抑制する。
【００７０】
＜構成＞
本第２の実施形態のブロック構成図を図９に示す。図示において、参照符号100〜112は、第１の実施形態の構成（図１）と同じである。見込み差分量設定部913は、直前フレームにおいて各領域で発生した積算差分量を見込み差分量として目標符号量算出部に設定する。このため、見込み差分量設定部913は、着目フレームの符号化が完了したタイミングで、次に符号化することになるフレームに備えて見込み差分量を決定する。
【００７１】
＜目標符号量算出＞
＜処理フロー＞
図１０は、本第２の実施形態における目標符号量算出部110のフローチャートである。以下、同図を参照して、本第２の実施形態の特徴である、目標符号量の算出方法について説明する。
【００７２】
なお、目標符号量算出部110は、前述の通り、領域の先頭のQpを決定するタイミングでのみ駆動し、その領域の目標符号量を算出する。
【００７３】
S1001にて、目標符号量算出部110は着目フレームの符号量残量を算出する。
【００７４】
S1002にて、目標符号量算出部110は、符号化済み領域の積算差分量積算量と符号化済み領域の積算差分量との差分絶対値と、予め設定した閾値Errthとを比較する。差分絶対値が閾値Errthより小さい場合、目標符号量算出部110は処理をS1003に進め、そうでなければ、S1004に処理を進める。
【００７５】
S1003にて、目標符号量算出部110は、有効残量を、符号量残量−未符号化領域見込み差分量積算量とする。
【００７６】
S1004にて、目標符号量算出部110は、有効残量を符号量残量とする。
【００７７】
S1005にて、目標符号量算出部110は有効残量が0以下であれば、有効残量を0にクリップして以降の処理を実施する。この処理は、目標符号量が負になることを避けるためである。
【００７８】
S1006で、目標符号量算出部110は、着目領域の領域目標符号量を算出する。領域目標符号量は、有効残量×着目領域初期目標符号量/未符号化領域初期目標符号量総和により算出する。
【００７９】
S1007にて、目標符号量算出部110は、着目領域の領域目標符号量を着目領域に含まれるブロックライン数で除算することで、着目領域のブロックライン目標符号量を決定する。
【００８０】
＜効果＞
図１１を参照して、本第２の実施形態における目標符号量算出方法の動作例を説明する。同図では、直前フレームが図９と同様の符号化結果であった場合に、着目フレームがどのように各領域の目標符号量を設定するかを示している。なお、直前フレームでは、初期目標符号量が100:100:200:300（フレーム目標符号量が700）、各領域の積算差分量が、100,100,100,0であったとする。
【００８１】
また、図１１は、符号化済み領域の積算差分量積算量と符号化済み領域の積算差分量との差分絶対値が、予め設定した閾値Errthよりも小さい場合を示している。Errthよりも大きい場合は、第１の実施形態と同様の処理となる。
【００８２】
図１２は、図１１の条件における各領域目標符号量が決定する過程を示している。なお、一般に、時間的に隣接する２フレーム間の相関性は高いため、直前フレームの各領域の積算差分量は、着目フレームの各領域の積算差分量に近似する可能性が高い。そこで、本実施形態では簡単のため直前フレームと着目フレームの領域毎の積算差分量が等しい場合を想定していることに注意されたい。
【００８３】
領域0では初期目標符号量である100が領域目標符号量として設定され、発生符号量が200となっている。領域1以降の見込み差分量積算量は200であるため、有効残量は、300となる。そして、領域目標符号量は、有効残量×領域1初期目標符号量/未符号化領域初期目標符号量総和により、50と確定する。
【００８４】
領域2以降も同様に計算することで、各領域目標符号量は、領域1:領域2:領域3 = 50:100:150と確定し、各領域の目標符号量は、有効残量が0にならない限り、初期目標符号量の比率に近い関係を維持することができる。なお、図１１, 図１２のように直前フレームと着目フレームの初期領域目標符号量及び領域毎の積算差分量が等しい場合は、各領域で積算差分量が発生しても、初期目標符号量の比率に等しい比率で領域1以降の各領域の目標符号量を設定可能である。
【００８５】
以上のように、領域の符号化が完了する度に、符号量見込み差分量を初期目標符号量の比率で未符号化領域に割り振り、領域目標符号量を算出することで、符号量制御性を保ちつつ、特に後続の領域の画質を向上することができる。
【００８６】
なお、設定する見込み差分量は、必ずしも直前の符号化結果を利用する必要はない。符号化済みの複数のフレームで生じた積算差分量の平均を取ることで、画像間の相関度が低い場合でも統計的に目標符号量を補正することが可能である。例えば、直前5フレームの各領域の積算差分量を、領域毎に平均化した値を見込み差分量として設定することも、本実施形態の範疇である。
【００８７】
以上、各実施形態について詳述したが、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された範囲内において、種々の変形及び変更が可能である。また、前述した実施形態の構成要素を全部又は複数を組み合わせることも可能である。
【００８８】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８９】
１０１…プレーン変換部、１０２…離散ウェーブレット変換部、１０３…量子化部、１０４…符号化部、１０５…量子化制御部、１０６…発生符号量保持部、１０７…差分算出部、１０８…量子化値算出部、１０９…領域判定部、１１０…目標符号量算出部、１１１…初期目標符号量設定部、１１２…初期量子化値設定部、９１３…見込み差分量設定部
【図１】
2019114911.tif 000003
【図２】
2019114911.tif 000004
【図３】
2019114911.tif 000005
【図４】
2019114911.tif 000006
【図５】
2019114911.tif 000007
【図６】
2019114911.tif 000008
【図７】
2019114911.tif 000009
【図８】
2019114911.tif 000010
【図９】
2019114911.tif 000011
【図１０】
2019114911.tif 000012
【図１１】
2019114911.tif 000013
【図１２】
2019114911.tif 000014