(57)【要約】      （修正有）【課題】符号量制御における算術符号量の取得までの期間を短くし、画質の向上を可能とする算術符号化を用いた画像符号化装置及び方法を提供する。【解決手段】装置内部の算術符号化部１０６が算術符号化する二値データが所定の符号量を超えた場合に、ネットワークを介して該二値データを外部の算術符号化部１１０へ送信して算術符号化させる。そして、内部の算術符号化部又は外部の算術符号化部のいずれかから得られた算術符号量を用いて二値データ量と算術符号量との比率を算出し、該比率を用いて量子化パラメータを算出する符号量制御を行う。【選択図】図１
2015226172.tif 000002
【特許請求の範囲】
【請求項１】
画像データを所定の画素数からなるブロック単位に直交変換して量子化し、符号化を行う画像符号化装置であって、
前記量子化された信号から二値データを生成する二値化手段と、
前記二値化手段によって生成された二値データを算術符号化して算術符号データと第１の算術符号量を生成する第１の算術符号化手段と、
前記二値化手段によって生成された二値データが所定の符号量を超えた場合にネットワークを介して外部に送出する送信手段と、
前記ネットワークを介して取得した前記送信手段により送出された二値データを算術符号化して第２の算術符号量を生成する第２の算術符号化手段と、
前記ネットワークを介して前記第２の算術符号化手段による前記第２の算術符号量を受信する受信手段と、
前記第１の算術符号化手段又は前記受信手段のいずれかから得られた算術符号量を用いて二値データ量と算術符号量との比率を算出し、該比率を用いて量子化パラメータを算出する符号量制御手段とを有することを特徴とする画像符号化装置。
【請求項２】
前記送信手段は、符号化の対象となる画像データのピクチャタイプがＩピクチャのときに送信することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記送信手段は、該送信手段が有する送信バッファの占有量に応じて送信することを特徴とする請求項１に記載の画像符号化装置。
【請求項４】
前記符号量制御手段は、前記二値化手段の出力である二値データから算術符号化後の算術符号量を推測し、目標符号量及び量子化パラメータを設定することを特徴とする請求項１乃至請求項３の何れか一項に記載の画像符号化装置。
【請求項５】
画像データを所定の画素数からなるブロック単位に直交変換して量子化し、符号化を行う画像符号化方法であって、
前記量子化された信号から二値データを生成する二値化工程と、
前記二値化工程によって生成された二値データを算術符号化して算術符号データと第１の算術符号量を生成する第１の算術符号化工程と、
前記二値化工程によって生成された二値データが所定の符号量を超えた場合にネットワークを介して外部に送出する送信工程と、
前記ネットワークを介して取得した前記送信工程により送出された二値データを算術符号化して第２の算術符号量を生成する第２の算術符号化工程と、
前記ネットワークを介して前記第２の算術符号化工程による前記第２の算術符号量を受信する受信工程と、
前記第１の算術符号化工程又は前記受信工程のいずれかから得られた算術符号量を用いて二値データ量と算術符号量との比率を算出し、該比率を用いて量子化パラメータを算出する符号量制御工程とを有することを特徴とする画像符号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エントロピー符号化にＣＡＢＡＣを用いた符号化を行う画像符号化装置及び方法に関する。
【背景技術】
【０００２】
近年、高能率な符号化方式としてＨ．２６４方式が採用されている。Ｈ．２６４方式ではエントロピー符号化に二値算術符号化を用いたＣＡＢＡＣ（Ｃｏｎｔｅｘｔ−Ａｄａｐｔｉｖｅ  Ｂｉｎａｒｙ  Ａｒｉｔｈｍｅｔｉｃ  Ｃｏｄｉｎｇ）と呼ばれる方式を採用している。ＣＡＢＡＣは、予測画像信号を直交変換し、量子化し、二値化手段により符号化された二値データに対し、符号化対象のカレントマクロブロックの周辺情報など符号化状態に関わるコンテキストを導出しながら、算術符号化を行うものである。
【０００３】
前記二値データは入力画像の絵柄によって符号量が変動する。複雑な絵柄や動き大きい画像の場合、符号量は多くなり、平坦な絵柄や動きの少ない画像の場合、符号量は少なくなる。
【０００４】
前記ＣＡＢＡＣの算術符号化は、前記二値データを１ビット単位で符号化するため、二値データの符号量に比例して処理サイクルを必要とする。また、二値データを１ビットずつ順番に符号化する必要があるため、処理の並列化が困難という特徴がある。
【０００５】
このような特徴をもつＣＡＢＡＣを適用した画像符号化装置においては、１ピクチャの算術符号化が１ピクチャ期間内に終了できない場合がある。この場合、ピクチャ毎の符号量が次のピクチャの符号化開始時に取得できないので、適切な目標符号量を決定できない。目標符号量が適切ではないと、符号化画質を十分に満たせないという課題がある。そこで、二値符号量に対して二値符号量と算術符号量の比率を乗じ、推測した算術符号量を用いて符号量制御を行う提案がなされている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−０７７１７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記従来技術の構成では、二値データが非常に多く発生し、算術符号化処理に数ピクチャの期間を要する場合、その期間は算術符号量を取得できず、精度の高い推測算術符号量を得られないため、十分な符号化画質とならないといった問題がある。
【０００８】
本発明は、上記の問題点に鑑み、算術符号化を用いた画像符号化装置及び方法において、符号量制御における算術符号量の取得までの期間を短くし、画質の向上を可能とすることを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明に係る画像符号化装置の構成は、画像データを所定の画素数からなるブロック単位に直交変換して量子化し、符号化を行う画像符号化装置であって、前記量子化された信号から二値データを生成する二値化手段と、前記二値化手段によって生成された二値データを算術符号化して算術符号データと第１の算術符号量を生成する第１の算術符号化手段と、前記二値化手段によって生成された二値データが所定の符号量を超えた場合にネットワークを介して外部に送出する送信手段と、前記ネットワークを介して取得した前記送信手段により送出された二値データを算術符号化して第２の算術符号量を生成する第２の算術符号化手段と、前記ネットワークを介して前記第２の算術符号化手段による前記第２の算術符号量を受信する受信手段と、前記第１の算術符号化手段又は前記受信手段のいずれかから得られた算術符号量を用いて二値データ量と算術符号量との比率を算出し、該比率を用いて量子化パラメータを算出する符号量制御手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、算術符号量を従来の構成よりも早く取得可能であるので、二値符号量から推測する予測算術符号量の精度を従来の構成よりも早く上げることが可能となる。その結果、画質の向上を実現することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施形態に係る画像符号化装置の構成例を示すブロック図である。
【図２】第１の実施形態に係る画像符号化装置の動作例を示すタイミング図である。
【図３】第１の実施形態に係る画像符号化装置の動作例を示すフローチャートである。
【図４】本発明の第２の実施形態に係る画像符号化装置の構成例を示すブロック図である。
【図５】第２の実施形態に係る画像符号化装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら本発明の好適な実施の形態を説明する。
【実施例１】
【００１３】
図１は本実施形態に係る画像符号化装置１００の構成例を示すブロック図である。以下本実施形態の画像符号化装置１００の構成例において、各ブロックの動作について説明する。なお、本実施形態の画像符号化装置１００は、撮像装置や携帯可能な電子機器（携帯電話、スマートフォンなど）に組み込んで利用することができる。
【００１４】
予測処理部１０１は、符号化対象となる画像信号を入力し、１６画素×１６画素の画素数からなるマクロブロック毎に符号化モードの決定及び動き検出を行う。そして、符号化モードに応じてイントラ予測またはインター予測処理を行って、予測残差信号を直交変換部１０２に出力する。また、動きベクトル、マクロブロックタイプ、ＤＣＴサイズ、スキップフラグ、パーティションタイプ、参照ピクチャ番号などのマクロブロック毎に算出される情報（以下マクロブロック情報）も合わせて直交変換部１０２に出力する。
【００１５】
直交変換部１０２は、予測残差信号をＤＣＴ係数に変換し、量子化部１０３に出力する。入力したマクロブロック情報は、そのまま量子化部１０３に出力する。
【００１６】
量子化部１０３は、ＤＣＴ係数を量子化し、二値化部１０４に出力する。この時、量子化に用いられる量子化パラメータは後述する符号量制御部１１３から入力される。入力したマクロブロック情報は、そのまま二値化部１０４に出力する。
【００１７】
二値化部１０４は、量子化されたＤＣＴ係数、及びマクロブロック情報を入力し、ＣＡＢＡＣにおける所定の二値変換方法によりＤＣＴ係数、及びマクロブロック情報を二値化して、二値データを出力する。また、二値化部１０４は同時に、マクロブロック毎の二値符号量を符号量制御部１１３及び二値符号量計測部１１４に出力する。
【００１８】
選択部１０５は、二値データと後述する二値符号量計測部１１４からの制御信号を入力する。選択部１０５は、二値符号量計測部１１４からの制御信号に従い二値データの出力先を画像符号化装置内部の算術符号化部１０６か送信部１０８のいずれかを選択する。また二値データと共にピクチャ番号も合わせて出力する。
【００１９】
算術符号化部１０６は、入力した二値データをＣＡＢＡＣ方式で算術符号化する。算術符号化データは記録媒体１０７に出力し、算術符号量を選択部１１２に出力する。
【００２０】
記録媒体１０７は、画像符号化装置１００において符号化されたストリームを格納する記憶装置である。
【００２１】
送信部１０８は、選択部１０５より二値データが出力された場合、通信網１０９を介して二値データ及びピクチャ番号を外部算術符号化部１１０に送信する。
【００２２】
通信網１０９は、送信部１０８から二値データ及びピクチャ番号を入力し、外部算術符号化部１１０に出力する。通信網１０９は、ＴＣＰ／ＩＰ等、所定の通信プロトコルを用いて双方向に通信可能な通信媒体であり、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどである。すなわち、画像符号化装置１００は、通信網によるネットワークを介して外部に存在する算術符号化装置と通信する。
【００２３】
外部算術符号化部１１０は、通信網１０９に接続された算術符号化部であり、二値データを受信して、ＣＡＢＡＣにおける所定の方法により算術符号化処理を行う。生成した算術符号化データの算術符号量を、通信網１０９を介して受信部１１１に出力する。算術符号量と共にピクチャ番号も合わせて出力する。なお、外部算術符号化部１１０は前記機能をプログラム実行可能なコンピュータであってもよい。また、外部算術符号化部１１０は前記算術符号化部１０６よりも高速に算術符号化処理を実行できる演算能力を有している。
【００２４】
受信部１１１は、外部算術符号化部１１０で生成された算術符号量とピクチャ番号を、通信網１０９を介して入力し、選択部１１２に出力する。
【００２５】
選択部１１２は、算術符号化部１０６と外部算術符号化部１１０から算術符号量とピクチャ番号をそれぞれ入力する。選択部１１２は、二値符号量計測部１１４から入力される選択制御信号に従い該当するピクチャ番号を有する算術符号量を選択して符号量制御部１１３に出力する。
【００２６】
符号量制御部１１３は、二値化部１０４から二値符号量を入力し、選択部１１２から算術符号量を入力する。符号量制御部１１３は、設定された画質になるようにピクチャ単位の目標符号量を計算する。またマクロブロック毎に前記量子化部１０３に与える量子化パラメータを計算する。量子化パラメータは、ピクチャ及びＧＯＰなどの単位で目標符号量に近づくように計算される。量子化パラメータを算出する。
【００２７】
量子化パラメータを算出する際に必要な値は、目標符号量と発生した算術符号量である。目標に対してどれだけの符号が発生したのかを監視して目標に近づく量子化パラメータを計算し、出力している。課題として述べたとおり、算術符号化の処理が長く、実際の発生符号量値が取得できないので、二値符号量から発生する算術符号量を推測する必要がある。
【００２８】
算術符号量を推測する際には、以下の式を用いる。
推測算術符号量  ＝  発生した二値符号量  ＊  α      （式１）
比率αは、算術符号の圧縮率を示す値であり、符号化開始時は、経験則で得た値が予め設定されている。しかし、画像の性質によって二値符号量と算術符号量の比率は変化するので、画質を保つためには、適応的に比率αの値は更新していく必要がある。
【００２９】
符号化制御部１１３は、選択部１１２において、より早く算出されたほうの算術符号量を選択するので、従来の構成よりも比率α値を速やかに更新可能である。結果、現在の入力画像の性質にあった量子化パラメータを早く算出できる。
【００３０】
二値符号量計測部１１４は、前記二値化部１０４から入力した二値符号量と内部に保持している閾値を比較し、内部の算術符号化部１０６で符号化を行うか、外部の算術符号化部１１０で符号化を行うかを判断し、選択部１０５及び選択部１１２に選択のための制御信号を出力する。
【００３１】
次に図２を用いて画像符号化装置の動作タイミングを説明する。図は、二値化処理、算術符号化処理、二値データ送信処理、外部算術符号化処理、算術符号量受信処理、比率更新処理のそれぞれのタイミングを示した図である。
【００３２】
Ｐｎ−１、Ｐｎ、Ｐｎ＋１、・・・Ｐｎ＋７はピクチャを識別するピクチャ番号である。ピクチャＰｎ−１はピクチャＰｎの一つ前のピクチャであり、ピクチャＰｎ＋１はピクチャＰｎの一つ後のピクチャを示している。
【００３３】
Ｔｎ−１、Ｔｎ、Ｔｎ＋１、・・・Ｔｎ＋８は入力されるそれぞれのピクチャの開始時刻である。
【００３４】
ピクチャ番号Ｐｎ−１、Ｐｎ、Ｐｎ＋１、・・・Ｐｎ＋７で示される矩形はそれぞれのピクチャ毎の処理動作期間を表している。
【００３５】
二値化処理は、ピクチャＰｎ−１の開始時間Ｔｎ−１でピクチャＰｎ−１の二値化が実行され、ピクチャＰｎの開始時間ＴｎでピクチャＰｎの二値化が実行され、以降同様に二値化処理が実行されている。
【００３６】
算術符号化処理は、図２に示すように各ピクチャの算術符号化の処理期間が変動する。処理期間が長い場合、次のピクチャの処理開始がその分遅延する。すなわち、算術符号化処理を開始する条件としては、直前のピクチャの算術符号化が完了していて、かつ符号化対象ピクチャの二値化が完了した後ということになる。
【００３７】
例えば、算術符号化処理Ｐｎの処理時間が長いため、算術符号化処理Ｐｎ＋１の開始時間がＴｎ＋３付近まで遅れている。前述したようにこの算術符号化処理時間が変動するのは二値データの二値符号量によって決まる。
【００３８】
二値データ送信は、ピクチャ毎に二値化が完了した後に実行が開始される。すなわち、ピクチャＰｎ−１の二値データの送信は時刻Ｔｎで実行され、ピクチャＰｎの二値データ送信は時刻Ｔｎ＋１で実行される。以降同様に二値データ送信が実行されている。
【００３９】
外部算術符号化処理は、ピクチャ毎に二値データを受信した後に処理が開始される。動作期間については前述したように図１の外部算術符号化部１１０は算術符号化部１０６よりも高速に算術符号化処理を実行できる能力を有しているため、算術符号化部１０６よりも短期間で完了する。そして、算術符号化が完了すると、算術符号量を受信部１１１に対して送信する。
【００４０】
算術符号量受信は、図１の受信部１１１が外部算術符号化部からの算術符号量を受信している期間である。
【００４１】
比率更新処理は、算術符号量受信処理によって受信された算術符号量もしくは、算術符号化部１０６で生成された算術符号量を用いて前記比率αの値を更新する。前記符号量制御部１１３は、更新した比率α値を用いて発生する算術符号量を推測し、量子化パラメータを決定する。
【００４２】
２０１、２０２は、前記符号量制御部１１３が算術符号化部１０６と外部算術符号化部１１０のいずれの算術符号量を用いるのかを示している。
【００４３】
２０１は、算術符号化部１０６でも外部算術符号化部１１０でも得られる符号量のタイミングが変わらないので、画像符号化装置内部にある算術符号化部１０６で出力された算術符号量を用いて比率αを更新している。
【００４４】
２０２は、外部算術符号化部１１０からの算術符号量を用いた方が早く比率αを更新できるため、受信部１１１からの算術符号量を用いて比率αを更新している。
【００４５】
図２のように画像符号化装置内部の算術符号化からの算術符号量と外部算術符号化部からの算術符号量を動的に切り替えて符号量制御に使用するので、従来の構成よりも比率α値の精度が向上する。結果、現在の入力画像の性質にあった量子化パラメータを早く算出できる。
【００４６】
次に図３を用いて画像符号化装置の動作を説明する。ステップ３０１は、二値化処理が終了したか否かを判断するステップである。二値化終了まで待機し、二値化処理の終了を検知するとステップ３０２に進む。
【００４７】
ステップ３０２は、二値化処理後の二値符号量と閾値を比較するステップである。該閾値は、画像符号化装置１００内部の算術符号化部１０６の動作周波数に依存する。算術符号化は前述したように前記二値データを１ビット単位で符号化するためである。動作周波数の値によって所定の時間単位（例えば１／６０秒など）で処理できる二値データ量が決まる。それ以上の二値データを画像符号化装置１００の内部の算術符号化部１０６に入力しても所定の時間で算術符号化が終わるか否かが分かる。よって二値符号量が設定した閾値よりも多い場合は、外部算術符号化部１１０で算術符号量を得るように制御する。具体的には図１の選択部１０５の二値データの出力先を送信部１０８にするような制御信号を生成する。逆に二値符号量が設定した閾値よりも少ない場合は、画像符号化装置１００内部の算術符号化部１０６で算術符号量を得るように制御する。
【００４８】
ステップ３０３は、外部の算術符号化部を用いて算術符号量を得るステップである。生成した算術符号量を、通信網１０９を介して画像符号化装置１００の受信部１１１に返す。
【００４９】
ステップ３０４は、画像符号化装置１００内部の算術符号化部１０６を用いて算術符号量を得るステップである。
【００５０】
ステップ３０５は、算術符号量を得たか否かを判断するステップである。所定の時間経過すると判断を行い、新たな算術符号量が得られていればステップ３０６に進み、算術符号量が得られていなければステップ３０７に進む。
【００５１】
ステップ３０６は、得た算術符号量を符号量制御部１１３に入力し、比率αの値を更新するステップである。
【００５２】
ステップ３０７は、ステップ３０６で得られた比率αを用いて量子化パラメータを算出するステップである。
【００５３】
このように動作させることで、算術符号量を従来の構成よりも早く取得可能であるので、二値符号量から推測する予測算術符号量の精度を従来の構成よりも早く上げることが可能となり、その結果画質の向上を図ることができる。
【実施例２】
【００５４】
図４は第２の実施形態に係る画像符号化装置４００の構成例を示すブロック図である。以下、本実施形態の画像符号化装置４００の構成例において、各ブロックの動作について説明する。なお、本実施形態の画像符号化装置４００は、撮像装置や携帯可能な電子機器（携帯電話、スマートフォンなど）に組み込んで利用することができる。
【００５５】
図４の画像符号化装置における４０１〜４１３の符号を付した各ブロックは、図１の１０１〜１１３の符号を付した各ブロックに対応するので、説明は省略する。
【００５６】
本実施形態では、送信部４０８に送信バッファ監視部４１４が接続されている。送信バッファ監視部４１４は、送信部４０８が通信網４０９に出力する二値データをバッファリングしているバッファサイズを監視している。
【００５７】
通信網４０９になんらかのトラブルや、通信遅延が発生した場合、送信部４０８は二値データを送信せずに内部のバッファに二値データを溜めておく。通信網４０９が使用可能になるまで待機しているが、次のマクロブロック、もしくはピクチャの二値データが入力されると現在バッファに保持されている二値データが上書きされてしまう。
【００５８】
送信バッファ監視部４１４は、送信バッファの空き容量を監視し、バッファ内の二値データが上書きされてしまう恐れがある時は、選択部４０５に対して出力禁止信号等の制御信号を出力する。
【００５９】
次にこの時の動作を図５のフローチャートを用いて説明する。ステップ５０１は、二値化処理が終了したか否かを判断するステップである。二値化終了まで待機し、二値化処理の終了を検知するとステップ５０２に進む。
【００６０】
ステップ５０２は、送信部４０８内の送信バッファと閾値を比較するステップである。該閾値は、送信部４０８内の送信バッファサイズに依存する。例えば送信部４０８にマクロブロック単位で二値データが入力される場合、閾値は１マクロブロックの平均二値データ量近傍の値である。空き容量が少なく次の二値データの入力でバッファのオーバーフローが起きそうな場合は、送信部４０８に二値データを入力しないように制御する。
【００６１】
送信バッファ空き容量が閾値よりも大きい場合は、外部算術符号化部４１０で符号化を行うためステップ５０３に進む。
【００６２】
送信バッファ空き容量が閾値よりも小さい場合は、画像符号化装置４００内の算術符号化部４０６で符号化を行うためステップ５０４に進む。
【００６３】
ステップ５０３は、外部算術符号化部４１０を用いて算術符号量を得るステップである。生成した算術符号量を、通信網を介して画像符号化装置４００内部の受信部４１１に返す。
【００６４】
ステップ５０４は、画像符号化装置４００内部の算術符号化部４０６を用いて算術符号量を得るステップである。
【００６５】
ステップ５０５は、算術符号量を得たか否かを判断するステップである。所定の時間経過すると判断を行い、新たな算術符号量が得られていればステップ５０６に進み、算術符号量が得られていなければステップ５０７に進む。
【００６６】
ステップ５０６は、得た算術符号量を符号量制御部４１３に入力し、比率αの値を更新するステップである。
【００６７】
ステップ５０７は、ステップ５０６で得られた比率αを用いて量子化パラメータを算出するステップである。
【００６８】
このように動作させることで、算術符号量を従来の構成よりも早く取得可能であるので、二値符号量から推測する予測算術符号量の精度を従来の構成よりも早く上げることが可能となり、結果画質の向上を図ることができる。
【符号の説明】
【００６９】
１００  画像符号化装置、１０１  予測処理部、１０２  直交変換部、
１０３  量子化部、１０４  二値化部、１０５  選択部、１０６  算術符号化部、
１０７  記録媒体、１０８  送信部、１０９  通信網、１１０  外部算術符号化部、
１１１  受信部、１１２  選択部、１１３  符号量制御部、１１４  二値符号量計測部
【図１】
2015226172.tif 000003
【図２】
2015226172.tif 000004
【図３】
2015226172.tif 000005
【図４】
2015226172.tif 000006
【図５】
2015226172.tif 000007