(57)【要約】【課題】１パスの処理でも、符号量の制御誤差の発生を抑制して、高精度なレート制御を実現することができるようにする。【解決手段】目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）から量子化ステップサイズΔを算出し、その量子化ステップサイズΔを量子化部１３に与える量子化ステップサイズ算出部２０と、エントロピ符号化部１５から出力バッファ部１７に出力される符号データの符号量Ｂ（ｎ）が目標符号量ＢＴ（ｎ）を上回る場合、エントロピ符号化部１５から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる下位ビット切捨部１６とを設ける。【選択図】図１
2011109385.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象の画像をストライプ単位に分割する画像分割手段と、上記画像分割手段により分割されたストライプの画像信号に対する変換処理を実施し、与えられる量子化ステップサイズで、上記画像信号の変換係数を量子化して、上記変換係数の量子化値を出力する量子化手段と、上記量子化手段から出力された量子化値の予測誤差を算出し、上記予測誤差の絶対値を示す複数のビットのうち、下位ビットについては圧縮せずに出力し、上位ビットについてはハフマン符号化して出力するエントロピ符号化手段と、上記エントロピ符号化手段から出力された符号データを一時的に蓄積し、一定速度で上記符号データを出力する出力バッファ手段と、既に符号化済みのストライプの符号量から目標符号量を算出する目標符号量算出手段と、上記画像分割手段により分割されたストライプの統計量を算出する統計量算出手段と、上記目標符号量算出手段により算出された目標符号量と上記統計量算出手段により算出された統計量から量子化ステップサイズを算出し、上記量子化ステップサイズを上記量子化手段に与える量子化ステップサイズ算出手段と、上記エントロピ符号化手段から上記出力バッファ手段に出力される符号データの符号量が、上記目標符号量算出手段により算出された目標符号量を上回る場合、上記エントロピ符号化手段から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる下位ビット切捨手段とを備えた画像符号化装置。
【請求項２】
下位ビット切捨手段は、エントロピ符号化手段から出力バッファ手段に出力される符号データの符号量が、目標符号量算出手段により算出された目標符号量を上回る場合、上記符号データの符号量が上記目標符号量を下回るまで、最下位のビットから順番に切り捨てることを特徴とする請求項１記載の画像符号化装置。
【請求項３】
下位ビット切捨手段は、ストライプを構成している複数のマクロブロックのうち、特定のマクロブロックに係る下位ビットを切り捨てることを特徴とする請求項２記載の画像符号化装置。
【請求項４】
量子化ステップサイズ算出手段は、下位ビット切捨手段により直前のストライプで切り捨てられた下位ビットのビット数を考慮して、量子化ステップサイズを算出することを特徴とする請求項２記載の画像符号化装置。
【請求項５】
下位ビット切捨手段は、エントロピ符号化手段により予測誤差の正負を表すサインビットが下位ビットに付加される場合、上記予測誤差の絶対値を示す複数のビットのうち、最下位ビットを除く全ての下位ビットが“０”であり、かつ、最下位ビットが“１”であれば、最下位ビットを“０”に変更して、下位ビットに付加されているサインビットを削減することを特徴とする請求項２記載の画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、符号データの符号量が一定値になるように制御して、所望の符号化レートで伝送を実現する画像符号化装置に関するものである。
【背景技術】
【０００２】
高解像度の画像を定レートで伝送するために画像を適当なサイズに分割し、各分割画像が一定の符号量になるように、分割画像毎に、量子化ステップサイズを制御して符号化する技術が一般的に採用されている。
図１３は量子化ステップサイズを制御して符号化する技術が採用されている一般的な画像符号化装置を示す構成図である。
以下、複数ライン×画像幅からなるストライプｎ（ｎ＝１，２，・・・，Ｎ）をレート制御単位として、ストライプｎの量子化ステップを制御する手法について説明する（例えば、特許文献１を参照）。
【０００３】
（１）ストライプｎの目標符号量の算出処理
この算出処理では、既に符号化済みのストライプの符号量から、符号化対象のストライプｎの目標符号量を算出する。
このとき、過去のストライプにおいて、符号量が多く発生しすぎている場合には、次のストライプで目標符号量を小さくし、逆に、符号量が少ない場合には、次のストライプで目標符号量を大きくする。
【０００４】
（２）ストライプｎの統計量の算出処理
この算出処理では、符号化対象のストライプで生成される符号量を予測するために、ストライプｎの情報量を示す統計量を算出する。
例えば、ストライプｎの統計量として、ストライプｎの分散や、隣接画素間の差分電力などを算出する。
【０００５】
（３）ストライプｎに対する量子化ステップサイズの算出処理
この算出処理では、ストライプｎの統計量を参照して、ストライプｎの符号量が目標符号量になると予測される量子化ステップサイズを決定する。
例えば、複雑な絵柄のストライプであれば、量子化ステップサイズを大きめに取り、逆に、単純なストライプであれば、量子化ステップサイズを小さめに取るようにする。
これにより、ストライプ毎に適切な値の量子化ステップサイズが設定されて、各ストリップでの発生符号量が制御される。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】ＥＰ０６３１４４３Ａ１
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来の画像符号化装置は以上のように構成されているので、ストライプｎの符号量が目標符号量になると予測される量子化ステップサイズが決定されるが、ストライプｎの正確な符号量は、実際にハフマン符号化を実施してみないとわからない。このため、１パスの処理では、ある程度の符号量の制御誤差が発生してしまう課題があった。
なお、マルチパスの処理を行うようにすれば、適切な量子化ステップサイズを探すことができるが、何度もハフマン符号化を実施することになるため、処理量の増大を伴うことになる。
【０００８】
この発明は上記のような課題を解決するためになされたもので、１パスの処理でも、符号量の制御誤差の発生を抑制して、高精度なレート制御を実現することができる画像符号化装置を得ることを目的とする。
【課題を解決するための手段】
【０００９】
この発明に係る画像符号化装置は、既に符号化済みのストライプの符号量から目標符号量を算出する目標符号量算出手段と、画像分割手段により分割されたストライプの統計量を算出する統計量算出手段と、目標符号量算出手段により算出された目標符号量と統計量算出手段により算出された統計量から量子化ステップサイズを算出し、その量子化ステップサイズを量子化手段に与える量子化ステップサイズ算出手段と、エントロピ符号化手段から出力バッファ手段に出力される符号データの符号量が、目標符号量算出手段により算出された目標符号量を上回る場合、エントロピ符号化手段から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる下位ビット切捨手段とを設けるようにしたものである。
【発明の効果】
【００１０】
この発明によれば、既に符号化済みのストライプの符号量から目標符号量を算出する目標符号量算出手段と、画像分割手段により分割されたストライプの統計量を算出する統計量算出手段と、目標符号量算出手段により算出された目標符号量と統計量算出手段により算出された統計量から量子化ステップサイズを算出し、その量子化ステップサイズを量子化手段に与える量子化ステップサイズ算出手段と、エントロピ符号化手段から出力バッファ手段に出力される符号データの符号量が、目標符号量算出手段により算出された目標符号量を上回る場合、エントロピ符号化手段から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる下位ビット切捨手段とを設けるように構成したので、１パスの処理でも、符号量の制御誤差の発生を抑制して、高精度なレート制御を実現することができる効果がある。
【図面の簡単な説明】
【００１１】
【図１】この発明の実施の形態１による画像符号化装置を示す構成図である。
【図２】この発明の実施の形態１による画像符号化装置の処理内容を示すフローチャートである。
【図３】この発明の実施の形態１による画像符号化装置の下位ビット切捨部１６の処理内容を示すフローチャートである。
【図４】ストライプ分割部１１により分割されるストライプの一例を示す説明図である。
【図５】ＱＰ＝３，１０，２５，１５０の場合のストライプの統計量と発生符号量の関係を示す説明図である。
【図６】「ＪＰＥＧ  ＸＲ」の変換係数を示す説明図である。
【図７】予測誤差の絶対値を自然２進数で表現した場合のＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）からＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）までのビットプレーンを模式的に表す説明図である。
【図８】下位ビットの削減ビット数と削減符号量の対応関係を示すテーブル図である。
【図９】タイルが６４×２個のマクロブロックで構成されている例を示す説明図である。
【図１０】この発明の実施の形態３による画像符号化装置を示す構成図である。
【図１１】下位ビットの非圧縮伝送を示す説明図である。
【図１２】下位ビットの削減ビット数とサインビットの削減の有無と削減符号量の対応関係を示すテーブル図である。
【図１３】量子化ステップサイズを制御して符号化する技術が採用されている一般的な画像符号化装置を示す構成図である。
【発明を実施するための形態】
【００１２】
実施の形態１．
図１はこの発明の実施の形態１による画像符号化装置を示す構成図である。
図１において、符号化処理部１は、例えば、静止画像の標準符号化方式である「ＪＰＥＧ  ＸＲ（ＩＳＯ／ＩＥＣ  ２９１９９−２）」を使用して、画像データの符号化処理を実施する処理部である。
符号化処理部１のストライプ分割部１１は符号化対象の画像をストライプ（ｎ）（ｎ＝１，２，・・・，Ｎ）単位に分割する処理を実施する。なお、ストライプ分割部１１は画像分割手段を構成している。
【００１３】
例えば、「ＪＰＥＧ  ＸＲ」では、画像をタイルと称する矩形領域に分割し、タイル毎に量子化ステップサイズなどの符号化パラメータを設定して符号化することができる。
ここで、図４はストライプ分割部１１により分割されるストライプの一例を示す説明図である。
図４の例では、符号化対象の画像が３２ラインからなるストライプに分割されており、このストライプが符号量の制御単位とされる。
図４の例では、符号化対象の画像が水平方向に分割されているが、符号化対象の画像が垂直方向に分割されるものであってもよい。
【００１４】
変換処理部１２はストライプ分割部１１により分割されたストライプ（ｎ）の画像信号に対する変換処理を実施し、その画像信号の変換係数を出力する処理を実施する。
量子化部１３は量子化ステップサイズ算出部２０から与えられる量子化ステップサイズΔで、変換処理部１２から出力される変換係数を量子化し、その変換係数の量子化値を出力する処理を実施する。
なお、変換処理部１２及び量子化部１３から量子化手段が構成されている。
【００１５】
予測処理部１４は量子化部１３から出力された量子化値の予測誤差を算出する処理を実施する。
エントロピ符号化部１５は予測処理部１４により算出された予測誤差の絶対値を示す複数のビットのうち、下位ビットについては圧縮せずに出力し、上位ビットについてはハフマン符号化して出力する処理を実施する。予測誤差絶対値が非０の場合には、予測誤差の正負を示す１ビットの情報も伝送する。
なお、予測処理部１４及びエントロピ符号化部１５からエントロピ符号化手段が構成されている。
【００１６】
下位ビット切捨部１６はエントロピ符号化部１５から出力されたストライプ（ｎ）の符号データ（ハフマン符号化された上位ビットの符号データのほか、圧縮されずに出力された下位ビットの非圧縮符号データを含む）の符号量Ｂ（ｎ）が、目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）を上回る場合、エントロピ符号化部１５から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる処理を実施する。なお、下位ビット切捨部１６は下位ビット切捨手段を構成している。
【００１７】
出力バッファ部１７は下位ビット切捨部１６により切り捨て処理が実施された符号データ（ｎ）を一時的に蓄積し、一定速度で符号データ（ｎ）を出力する処理を実施する。なお、出力バッファ部１７は出力バッファ手段を構成している。
目標符号量算出部１８は既に符号化済みのストライプの符号量から目標符号量ＢＴ（ｎ）を算出する処理を実施する。なお、目標符号量算出部１８は目標符号量算出手段を構成している。
【００１８】
統計量算出部１９はストライプ分割部１１により分割されたストライプ（ｎ）の統計量Ｅ（ｎ）を算出する処理を実施する。なお、統計量算出部１９は統計量算出手段を構成している。
量子化ステップサイズ算出部２０は目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）と統計量算出部１９により算出された統計量Ｅ（ｎ）から量子化パラメータＱＰ（１〜２５５の値をとるパラメータ）を算出して、その量子化パラメータＱＰに対応する量子化ステップサイズΔを算出し、その量子化ステップサイズΔを量子化部１３に与える処理を実施する。なお、量子化ステップサイズ算出部２０は量子化ステップサイズ算出手段を構成している。
【００１９】
図１の例では、画像符号化装置の構成要素であるストライプ分割部１１、変換処理部１２、量子化部１３、予測処理部１４、エントロピ符号化部１５、下位ビット切捨部１６、出力バッファ部１７、目標符号量算出部１８、統計量算出部１９及び量子化ステップサイズ算出部２０のそれぞれが専用のハードウェア（例えば、ＣＰＵを実装している半導体集積回路や、ワンチップマイコン）で構成されているものを想定しているが、画像符号化装置がコンピュータで構成される場合、ストライプ分割部１１、変換処理部１２、量子化部１３、予測処理部１４、エントロピ符号化部１５、下位ビット切捨部１６、出力バッファ部１７、目標符号量算出部１８、統計量算出部１９及び量子化ステップサイズ算出部２０の処理内容を記述しているプログラムをコンピュータのメモリに格納し、コンピュータのＣＰＵが当該メモリに格納されているプログラムを実行するようにしてもよい。
【００２０】
図２はこの発明の実施の形態１による画像符号化装置の処理内容を示すフローチャートである。
また、図３はこの発明の実施の形態１による画像符号化装置の下位ビット切捨部１６の処理内容を示すフローチャートである。
【００２１】
次に動作について説明する。
この実施の形態１では、符号化処理部１が、静止画像の標準符号化方式である「ＪＰＥＧ  ＸＲ（ＩＳＯ／ＩＥＣ  ２９１９９−２）」を使用して、画像データの符号化処理を実施する例を説明するが、符号化方式は「ＪＰＥＧ  ＸＲ（ＩＳＯ／ＩＥＣ  ２９１９９−２）」に限るものではなく、他の符号化方式を使用するものであってもよい。
【００２２】
符号化処理部１のストライプ分割部１１は、符号化対象の画像を示す画像データを入力すると、図４に示すように、符号化対象の画像を水平方向に分割することによって、３２ラインからなるＮ個のストライプ（ｎ）（ｎ＝１，２，・・・，Ｎ）に分割する（図２のステップＳＴ１）。
ここでは、符号化対象の画像を水平方向に分割しているが、符号化対象の画像を垂直方向に分割するようにしてもよい。
以後、画像符号化装置では、ストライプが符号量の制御単位となる。
【００２３】
目標符号量算出部１８は、符号化処理部１によって、既に符号化されたストライプ（符号化対象のストライプより前のストライプ）の符号量から目標符号量ＢＴ（ｎ）を算出する（ステップＳＴ２）。
即ち、目標符号量算出部１８は、符号化処理部１がｎ番目のストライプであるストライプ（ｎ）の符号化処理に使用する量子化ステップサイズΔを算出するために、既に符号化されたストライプの符号量から目標符号量ＢＴ（ｎ）を算出する。
【００２４】
目標符号量算出部１８は、過去のストライプにおいて、符号量が多く発生しすぎている場合、ストライプ（ｎ）の目標符号量ＢＴ（ｎ）が小さくなるように算出し、逆に、符号量が少ない場合、ストライプ（ｎ）の目標符号量ＢＴ（ｎ）が大きくなるように算出する。
具体的には、ストライプ（ｎ）の目標符号量を下記の式（１）で算出する。
2011109385.tif 000003
ただし、式（１）において、ＢＳはストライプ当りの目標平均符号量、ストライプ（ｎ）で実際に発生する符号量である。
式（１）によれば、過去の５つのストライプで発生したレート制御の誤差がストライプ（ｎ）で補償されるように、目標符号量ＢＴ（ｎ）が算出される。
【００２５】
統計量算出部１９は、ストライプ分割部１１が符号化対象の画像をＮ個のストライプに分割すると、ストライプ（ｎ）の情報量を示す統計量Ｅ（ｎ）を算出する（ステップＳＴ３）。
ストライプ（ｎ）の統計量Ｅ（ｎ）として、ストライプ（ｎ）の分散や隣接画素間の差分電力などを算出してもよいが、ここでは、ストライプ（ｎ）において、「ＪＰＥＧ  ＸＲ」における変換係数のＬＰ成分（詳細は後述するが、図６のＬＰ係数が該当する）の絶対値の平均値を算出し、その平均値をストライプ（ｎ）の統計量Ｅ（ｎ）として使用するものとする。
【００２６】
量子化ステップサイズ算出部２０は、目標符号量算出部１８が目標符号量ＢＴ（ｎ）を算出し、統計量算出部１９が統計量Ｅ（ｎ）を算出すると、その目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）から量子化パラメータＱＰ（１〜２５５の値をとるパラメータ）を算出する。
具体的には、以下のようにして、量子化パラメータＱＰを算出する。
【００２７】
まず、量子化ステップサイズ算出部２０は、一般的な画像を使用して、「ＪＰＥＧ  ＸＲ」の量子化パラメータＱＰを変更しながら、ストライプの統計量と発生符号量の関係を調査する。
図５はＱＰ＝３，１０，２５，１５０の場合のストライプの統計量と発生符号量の関係を示す説明図である。
量子化ステップサイズ算出部２０は、ストライプの統計量と発生符号量の関係を調査すると、統計量と発生符号量の関係をテーブル化する。
【００２８】
量子化ステップサイズ算出部２０は、統計量と発生符号量の関係をテーブル化すると、そのテーブルを参照して、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰを特定する。
例えば、図５に示す関係がテーブル化されているとき、目標符号量ＢＴ（ｎ）が“ｂｔ１”で、統計量Ｅ（ｎ）が“ｅ１”であれば、ＱＰ＝３，１０，２５，１５０の中で、ＱＰ＝１０が最も近い量子化パラメータとなるため、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰが“１０”であると特定する。
また、目標符号量ＢＴ（ｎ）が“ｂｔ２”で、統計量Ｅ（ｎ）が“ｅ２”であれば、ＱＰ＝３，１０，２５，１５０の中で、ＱＰ＝１５０が最も近い量子化パラメータとなるため、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰが“１５０”であると特定する。
【００２９】
量子化ステップサイズ算出部２０は、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰを特定すると、その量子化パラメータＱＰに対応する量子化ステップサイズΔを算出する（ステップＳＴ４）。
即ち、量子化ステップサイズ算出部２０は、下記の式（２）を用いて、量子化パラメータＱＰに対応する量子化ステップサイズΔを算出する。
2011109385.tif 000004
式（２）において、Ａ％Ｂは、ＡをＢで除算したときの余りを示す演算記号である。
また、Ｃ＜＜Ｄは、ＣをＤビットだけ左にシフトする旨を示す演算記号であり、Ｅ＞＞Ｆは、ＥをＦビットだけ右にシフトする旨を示す演算記号である。
量子化ステップサイズ算出部２０は、量子化パラメータＱＰに対応する量子化ステップサイズΔを算出すると、その量子化ステップサイズΔを量子化部１３に与える。
【００３０】
変換処理部１２は、ストライプ分割部１１が符号化対象の画像をＮ個のストライプに分割すると、ストライプ（ｎ）の画像信号に対する変換処理を実施することで、その画像信号の変換係数を生成し、その変換係数を量子化部１３に出力する。
即ち、変換処理部１２は、ストライプ（ｎ）の画像を１６×１６からなるマクロブロックに分割し、各マクロブロックに対して２段階のＬＢＴ（Ｌａｐｐｅｄ  Ｂｉｏｒｔｈｏｇｏｎａｌ  Ｔｒａｎｓｆｏｒｍ）を実行することにより、図６に示すような３段の階層構造を有する変換係数（ＤＣ係数、ＬＰ係数、ＨＰ係数）を生成する。
【００３１】
具体的には、以下のようにして、画像信号の変換係数（ＤＣ係数、ＬＰ係数、ＨＰ係数）を生成する。
最初に、マクロブロック（１６×１６画素）を４×４画素からなるブロックに分割して、ＬＢＴを実行する。
この第一段階のＬＢＴにより、各ブロックで１５個のＡＣ係数と１個のＤＣ係数が生成される。以下、そのＡＣ係数を「ＨＰ係数」と称し、マクロブロック当り、ＨＰ係数の個数が２４０個（＝１５係数×１６ブロック）となる。
次に、各ブロックから集められた１６個のＤＣ係数に対して再度ＬＢＴを実行する。以下、このＬＢＴにより生成される１５個のＡＣ係数を「ＬＰ係数」と称する。
マクロブロック当り、ＬＰ係数の個数は１５個となり、さらに、１個のＤＣ係数が生成される。
以後、第二段階で生成されたＤＣ成分の係数を「ＤＣ係数」と称し、マクロブロック当りのＤＣ係数の個数は１個となる。
【００３２】
量子化部１３は、変換処理部１２からストライプ（ｎ）の画像信号の変換係数を受けると、量子化ステップサイズ算出部２０から与えられる量子化ステップサイズΔで、その変換係数を量子化し、その変換係数の量子化値を予測処理部１４に出力する。
【００３３】
予測処理部１４は、量子化部１３から変換係数の量子化値を受けると、その量子化値の予測誤差を算出する。
即ち、予測処理部１４は、既に変換処理部１２の変換処理によって、ある程度、画素間の相関が除去されているが、変換係数の量子化値に対して更に予測を適用することで、圧縮の効率化を図るようにしている。
変換係数がＤＣ係数である場合、符号化対象のマクロブロックの周辺に位置している近傍のマクロブロックのＤＣ係数を参照して予測を行う。
例えば、符号化対象のマクロブロックの上側に位置しているマクロブロックのＤＣ係数の値をＴ、左側に位置しているマクロブロックの値をＬ、左上側に位置しているマクロブロックの値をＤとする場合、符号化対象のマクロブロックのＤＣ係数の予測値Ｐは、下記の式（３）から算出される。
2011109385.tif 000005
【００３４】
エントロピ符号化部１５は、予測処理部１４が量子化値の予測誤差を算出すると、エントロピ符号化の簡略化を図るために、その予測誤差の絶対値を示す複数のビットのうち、下位ビットについては圧縮せずに下位ビット切捨部１６に出力し、上位ビットについてはハフマン符号化して下位ビット切捨部１６に出力する（ステップＳＴ５）。
具体的には、以下のようにして、量子化値の予測誤差をエントロピ符号化する。
【００３５】
ＬＰ係数とＨＰ係数は、ブロック（１５係数）を単位として、１５個の係数を所定の順にスキャンし、非０の係数値とゼロ係数の連続数（ゼロラン）を対象として、ハフマン符号化を適用する。ハフマン符号テーブルは、複数の候補を用意しておき、使う符号テーブルを符号化済みの係数から学習して決定する。
ここで、図７は予測誤差の絶対値を自然２進数で表現した場合のＭＳＢ（Ｍｏｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）からＬＳＢ（Ｌｅａｓｔ  Ｓｉｇｎｉｆｉｃａｎｔ  Ｂｉｔ）までのビットプレーンを模式的に表す説明図である。
図７に示すように、上位ビットは、ハフマン符号化によって圧縮するが、下位ビットは、ランダムに近い信号であるため、ハフマン符号化しても効率的な圧縮が期待できないので、信号値を非圧縮でそのまま伝送する。
【００３６】
ただし、予測誤差の絶対値が非０の値の場合には、予測誤差の正負を示す１ビット情報（サインビット）を下位ビットに付加して伝送する。
下位ビットのビット数は、ハフマン符号化対象となる上位ビットのすべての値が“０”をとる係数の割合が全体のほぼ３／４になるように決定される。
また、ＨＰ成分については、非圧縮伝送する下位ビットから指定したビット数だけ削減することができる。削減するビット数は、タイル毎に指定でき、タイル内の全てのＨＰ係数で指定されたビット数が最下位から削減される。
【００３７】
下位ビット切捨部１６は、エントロピ符号化部１５からストライプ（ｎ）の符号データ（ハフマン符号化された上位ビットの符号データのほか、圧縮されずに出力された下位ビットの非圧縮符号データを含む）を受けると、その符号データの符号量Ｂ（ｎ）を目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）と比較する。
下位ビット切捨部１６は、その符号データの符号量Ｂ（ｎ）が目標符号量ＢＴ（ｎ）を上回らなければ、下位ビットの切り捨て処理を実施しないが、その符号データの符号量Ｂ（ｎ）が目標符号量ＢＴ（ｎ）を上回る場合、エントロピ符号化部１５から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる処理を実施する（ステップＳＴ６）。
【００３８】
量子化部１３では、目標符号量ＢＴ（ｎ）に対応する量子化ステップサイズΔを用いて、変換係数を量子化する処理を実施しているが、実際にハフマン符号化を実施しなければ、正確な符号量を把握することができないため、１パスの処理では、ある程度の符号量の制御誤差が発生する。
そこで、各ストライプの発生符号量が目標符号量を超える場合には、ＨＰ係数のうち、非圧縮で伝送する下位ビットの全部、あるいは、一部を切り捨てることで、より正確に符号量を制御することができる。
以下、下位ビット切捨部１６の処理内容を具体的に説明する。
【００３９】
図８は下位ビットの削減ビット数と削減符号量の対応関係を示すテーブル図である。
図８において、削減ビット数ｋは、切り捨て対象となる下位ビットの数（最下位ビットからのビット数）を示し、削減符号量ｂ（ｋ）は、削減ビット数ｋだけ下位ビットを切り捨てたときに、削減される符号量を示している。
まず、下位ビット切捨部１６は、エントロピ符号化部１５からストライプ（ｎ）の符号データを受けると、削減ビット数ｋを表すカウンタを用意し、そのカウンタのカウント値ｋ（削減ビット数ｋ）を“０”に初期化する（図３のステップＳＴ１１）。
【００４０】
次に、下位ビット切捨部１６は、未だ切り捨てていない下位ビットの中で、最も下位のビットを切り捨てる処理を実施する。
このとき、図８のテーブルを参照して、符号データの符号量Ｂ（ｎ）からカウンタのカウント値ｋ（削減ビット数ｋ）に対応する削減符号量ｂ（ｋ）を減算し、減算後の符号量（＝符号量Ｂ（ｎ）−削減符号量ｂ（ｋ））を目標符号量ＢＴ（ｎ）と比較する（ステップＳＴ１２）。
【００４１】
下位ビット切捨部１６は、減算後の符号量（＝符号量Ｂ（ｎ）−削減符号量ｂ（ｋ））が目標符号量ＢＴ（ｎ）以下である場合、あるいは、カウンタのカウント値ｋ（削減ビット数ｋ）が最大値ｋｍａｘに到達していれば、下位ビットの切り捨て処理を終了する。
一方、減算後の符号量（＝符号量Ｂ（ｎ）−削減符号量ｂ（ｋ））が目標符号量ＢＴ（ｎ）を上回っている場合、切捨対象の下位ビットを増やすため、カウンタのカウント値ｋ（削減ビット数ｋ）を１だけインクリメントして（ステップＳＴ１３）、ステップＳＴ１２の処理に戻る。
これにより、出力バッファ部１７に出力される符号データの符号量が目標符号量ＢＴ（ｎ）を下回るまで、最下位のビットから順番に切り捨てられることになる。
【００４２】
なお、静止画像の標準符号化方式である「ＪＰＥＧ  ＸＲ（ＩＳＯ／ＩＥＣ  ２９１９９−２）」を使用して、画像データの符号化処理を実施する場合、タイル内の全ＨＰ係数から、同一の削減ビット数ｋだけ、非圧縮データである下位ビットが削減される。
したがって、あるタイルが、図９に示すように、６４×２個のマクロブロックで構成されている場合において、例えば、削減ビット数がｋ＝３であるとすると、６４×２個のマクロブロックにおいて、全ＨＰ係数から３ビット分の非圧縮データが削減されることになる。
【００４３】
出力バッファ部１７は、下位ビット切捨部１６により切り捨て処理が実施された符号データ（ｎ）を受けると、その符号データ（ｎ）を一時的に蓄積し、一定速度で符号データ（ｎ）を出力する。
ステップＳＴ１〜ＳＴ６の処理は、最後のストライプの符号化処理が終了するまで繰り返し実施される（ステップＳＴ７）。
【００４４】
以上で明らかなように、この実施の形態１によれば、既に符号化済みのストライプの符号量から目標符号量ＢＴ（ｎ）を算出する目標符号量算出部１８と、ストライプ分割部１１により分割されたストライプ（ｎ）の統計量Ｅ（ｎ）を算出する統計量算出部１９と、目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）と統計量算出部１９により算出された統計量Ｅ（ｎ）から量子化ステップサイズΔを算出し、その量子化ステップサイズΔを量子化部１３に与える量子化ステップサイズ算出部２０と、エントロピ符号化部１５から出力バッファ部１７に出力される符号データの符号量Ｂ（ｎ）が、目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）を上回る場合、エントロピ符号化部１５から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる下位ビット切捨部１６とを設けるように構成したので、１パスの処理でも、符号量の制御誤差の発生を抑制して、高精度なレート制御を実現することができる効果を奏する。
即ち、量子化ステップサイズΔのみならず、符号データの非圧縮部分を削減することにより、量子化ステップサイズΔのみによって符号量を制御する場合よりも、高い精度で符号量を制御することが可能になる。
【００４５】
実施の形態２．
上記実施の形態１では、全てのマクロブロックにおいて、全ＨＰ係数から同一の削減ビット数ｋ分の非圧縮データが削減されるものについて示したが、マクロブロック単位で削減ビット数を変えることも可能である（この場合、「ＪＰＥＧ  ＸＲ」の規格からは外れる）。
したがって、全てのマクロブロックではなく、特定のマクロブロックのＨＰ係数から削減ビット数ｋ分の非圧縮データが削減されるものであってもよい。
【００４６】
例えば、あるタイルが、図９に示すように、６４×２個のマクロブロックで構成されている場合において、全てのマクロブロックの中の全ＨＰ係数から最下位２ビットを削減し、その後、マクロブロック（０，０）からラスタスキャン順に、各マクロブロックの最下位から３ビット目を削減する場合を考える。
このとき、マクロブロック（０，０）〜（１，１）の最下位から３ビット目を削減した段階で、符号データの符号量Ｂ（ｎ）が目標符号量ＢＴ（ｎ）を下回ったとする。
この場合、下位ビットの切り捨て処理をこの段階で止めて、削減ブロック数２ビット、最下位から３ビット目で伝送境界となるマクロブロックのインデックス（１，１）をコードストリームのヘッダに記録するようにする。
このように、マクロブロック単位で下位ビットを削減することにより、より高い精度でレート制御が可能になる。
【００４７】
実施の形態３．
図１０はこの発明の実施の形態３による画像符号化装置を示す構成図であり、図において、図１と同一符号は同一又は相当部分を示すので説明を省略する。
下位ビット切捨部２１は図１の下位ビット切捨部１６と同様に、エントロピ符号化部１５から出力されたストライプ（ｎ）の符号データの符号量Ｂ（ｎ）が、目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）を上回る場合、エントロピ符号化部１５から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる処理を実施する。また、切り捨てた下位ビットのビット数を示す削減ビット数ｍを量子化ステップサイズ算出部２２に出力する処理を実施する。なお、下位ビット切捨部２１は下位ビット切捨手段を構成している。
【００４８】
量子化ステップサイズ算出部２２は目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）と統計量算出部１９により算出された統計量Ｅ（ｎ）から量子化パラメータＱＰ（１〜２５５の値をとるパラメータ）を算出するとともに、その量子化パラメータＱＰから下位ビット切捨部２１より出力された削減ビット数ｍを減算し、減算後の量子化パラメータＱＰ−ｍに対応する量子化ステップサイズΔを算出し、その量子化ステップサイズΔを量子化部１３に与える処理を実施する。なお、量子化ステップサイズ算出部２２は量子化ステップサイズ算出手段を構成している。
【００４９】
図１０の例では、画像符号化装置の構成要素であるストライプ分割部１１、変換処理部１２、量子化部１３、予測処理部１４、エントロピ符号化部１５、下位ビット切捨部２１、出力バッファ部１７、目標符号量算出部１８、統計量算出部１９及び量子化ステップサイズ算出部２２のそれぞれが専用のハードウェア（例えば、ＣＰＵを実装している半導体集積回路や、ワンチップマイコン）で構成されているものを想定しているが、画像符号化装置がコンピュータで構成される場合、ストライプ分割部１１、変換処理部１２、量子化部１３、予測処理部１４、エントロピ符号化部１５、下位ビット切捨部２１、出力バッファ部１７、目標符号量算出部１８、統計量算出部１９及び量子化ステップサイズ算出部２２の処理内容を記述しているプログラムをコンピュータのメモリに格納し、コンピュータのＣＰＵが当該メモリに格納されているプログラムを実行するようにしてもよい。
【００５０】
次に動作について説明する。
下位ビット切捨部２１及び量子化ステップサイズ算出部２２以外は、上記実施の形態１と同様であるため、この実施の形態２では、下位ビット切捨部２１及び量子化ステップサイズ算出部２２の処理内容について説明する。
【００５１】
下位ビット切捨部２１は、エントロピ符号化部１５からストライプ（ｎ）の符号データを受けると、図１の下位ビット切捨部１６と同様に、その符号データの符号量Ｂ（ｎ）が、目標符号量算出部１８により算出された目標符号量ＢＴ（ｎ）を上回る場合、エントロピ符号化部１５から圧縮されずに出力された下位ビットの全部又は一部を切り捨てる処理を実施する。
ただし、下位ビット切捨部２１は、図１の下位ビット切捨部１６と異なり、切り捨てた下位ビットのビット数を示す削減ビット数ｍを量子化ステップサイズ算出部２２に出力する。
【００５２】
量子化ステップサイズ算出部２２は、図１の量子化ステップサイズ算出部２０と同様に、ストライプの統計量と発生符号量の関係を調査して、統計量と発生符号量の関係をテーブル化する。
【００５３】
量子化ステップサイズ算出部２２は、統計量と発生符号量の関係をテーブル化すると、そのテーブルを参照して、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰを特定する。
例えば、図５に示す関係がテーブル化されているとき、目標符号量ＢＴ（ｎ）が“ｂｔ１”で、統計量Ｅ（ｎ）が“ｅ１”であれば、ＱＰ＝３，１０，２５，１５０の中で、ＱＰ＝１０が最も近い量子化パラメータとなるため、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰが“１０”であると特定する。
また、目標符号量ＢＴ（ｎ）が“ｂｔ２”で、統計量Ｅ（ｎ）が“ｅ２”であれば、ＱＰ＝３，１０，２５，１５０の中で、ＱＰ＝１５０が最も近い量子化パラメータとなるため、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰが“１５０”であると特定する。
【００５４】
量子化ステップサイズ算出部２２は、目標符号量ＢＴ（ｎ）と統計量Ｅ（ｎ）に対応する量子化パラメータＱＰを特定すると、その量子化パラメータＱＰから下位ビット切捨部２１より出力された削減ビット数ｍを減算する。
そして、量子化ステップサイズ算出部２２は、上述した式（２）を用いて、減算後の量子化パラメータＱＰ−ｍに対応する量子化ステップサイズΔを算出する。
量子化ステップサイズ算出部２２は、減算後の量子化パラメータＱＰ−ｍに対応する量子化ステップサイズΔを算出すると、その量子化ステップサイズΔを量子化部１３に与える。
【００５５】
以上で明らかなように、この実施の形態３によれば、量子化ステップサイズ算出部２２が、下位ビット切捨部２１により直前のストライプで切り捨てられた下位ビットのビット数を考慮して、量子化ステップサイズΔを算出するように構成したので、更に高い精度でレートを制御することができる効果を奏する。
【００５６】
実施の形態４．
上記実施の形態１では、エントロピ符号化部１５が、予測誤差の正負を示すサインビットを下位ビットに付加するものについて示したが（図７を参照）、全ての上位ビットが“０”である場合において、予測誤差の絶対値の最下位ビットを除く全ての下位ビットが“０”であり、最下位ビットが“１”であれば、最下位ビットを“０”に変更して、下位ビットに付加されているサインビットを削減するようにしてもよい。
即ち、この実施の形態４では、サインビットの伝送を回避することで符号量を削減する方法について説明する。
【００５７】
「ＪＰＥＧ  ＸＲ」における下位ビットの非圧縮伝送では、図１１（ａ）に示すように、予測誤差の絶対値のうち、ハフマン符号化を行う全ての上位ビットが“０”である場合、非圧縮伝送する下位ビットに対して、予測誤差の正負を表すサインビットを付加し、そのサインビットを符号としている。
ただし、上位ビットだけでなく、全ての下位ビットが“０”の場合には、サインビットを付加する必要はない。
【００５８】
そこで、この実施の形態４では、図１１（ｂ）に示すように、予測誤差の絶対値の最下位ビットを除く、全てのビットが“０”であり、最下位ビットが“１”である場合には、図１１（ｃ）に示すように、強制的に最下位ビットを“０”に変更して、サインビットの伝送を回避することで、符号量の削減を図るようにする。
このように、最下位ビットを“０”に変更することにより、符号化誤差が発生するが、最下位ビットを全て削減するよりも、符号の削減量を少なくすることができる。
【００５９】
具体的には、下位ビット切捨部１６（または、下位ビット切捨部２１）は、図１２に示すような下位ビット符号量テーブルを用意する。
図８の下位ビット符号量テーブルでは、下位ビットの削減ビット数と削減符号量の対応関係を示しているが、図１２の下位ビット符号量テーブルでは、サインビットを削減した場合の削減符号量と、サインビットを削減しない場合の削減符号量とを載せている。
即ち、削減ビット数とサインビットの削減の有無の組み合わせをパラメータｋで表しており、例えば、パラメータｋ＝３では、最下位２ビットを削減するとともに、最下位のビットで生じたサインビットを削減する場合の削減符号量も載せている。
下位ビット切捨部１６（または、下位ビット切捨部２１）は、図３の下位ビットの切り捨て処理を実施する際、図１２の下位ビット符号量テーブルを適用して、ビット量を削減した時の符号量Ｂ−ｂ（ｋ）が所望の符号量を満たすパラメータｋを算出し、適切な削減ビット数とサインビットの削減の有無を選択するようにする。
【００６０】
以上で明らかなように、この実施の形態４によれば、予測誤差の絶対値の最下位ビットを除く全ての下位ビットが“０”であり、最下位ビットが“１”であれば、最下位ビットを“０”に変更して、下位ビットに付加されているサインビットを削減するように構成したので、非圧縮データのビットプレーン全体を切り捨てるよりも高い精度で符号量を制御することができる効果を奏する。
【００６１】
なお、この実施の形態４では、ストライプ内の全てのＨＰ係数から最下位のサインビットを削減する例を示したが、必ずしもストライプ内の全てのサインビットを削減する必要はなく、任意の変換係数から削減して、より精度の高いレート制御を実現することも可能である。
【符号の説明】
【００６２】
１  符号化処理部、１１  ストライプ分割部（画像分割手段）、１２  変換処理部（量子化手段）、１３  量子化部（量子化手段）、１４  予測処理部（エントロピ符号化手段）、１５  エントロピ符号化部（エントロピ符号化手段）、１６，２１  下位ビット切捨部（下位ビット切捨手段）、１７  出力バッファ部（出力バッファ手段）、１８  目標符号量算出部（目標符号量算出手段）、１９  統計量算出部（統計量算出手段）、２０，２２  量子化ステップサイズ算出部（量子化ステップサイズ算出手段）。
【図１】
2011109385.tif 000006
【図２】
2011109385.tif 000007
【図３】
2011109385.tif 000008
【図４】
2011109385.tif 000009
【図５】
2011109385.tif 000010
【図６】
2011109385.tif 000011
【図７】
2011109385.tif 000012
【図８】
2011109385.tif 000013
【図９】
2011109385.tif 000014
【図１０】
2011109385.tif 000015
【図１１】
2011109385.tif 000016
【図１２】
2011109385.tif 000017
【図１３】
2011109385.tif 000018