(57)【要約】【課題】符号化位置または発生符号量に応じて符号化ブロックの上限サイズを決定して符号量誤差を抑制し、最適な量子化制御を行うこと。【解決手段】複数のフレームを含む画像データを符号化する画像符号化装置は、取得した画像データに基づいて、当該画像データの符号化対象のフレームの符号化ブロックサイズを決定し、決定した符号化ブロックサイズに従って、取得した画像データを符号化ブロック単位で符号化し、サイズが決定された現在の符号化ブロックおよび当該現在の符号化ブロックの前に符号化した符号化ブロックに係わる符号化情報に基づいて、サイズが決定された符号化ブロックの符号量を制御するとともに、符号化情報に基づいて符号化対象のフレームの所定の符号化情報を演算し、当該演算された所定の符号化情報に従って前記予測手段が決定する符号化ブロックサイズを制限する。【選択図】図１
2014003523.tif 000002
【特許請求の範囲】
【請求項１】
複数のフレームを含む画像データを符号化する画像符号化装置において、
前記画像データを取得する取得手段と、
前記取得した画像データに基づいて、符号化対象のフレームの符号化ブロックサイズを決定する予測手段と、
前記決定された符号化ブロックサイズに従って、前記取得した画像データを符号化ブロック単位で符号化する符号化手段と、
前記予測手段でサイズが決定された現在の符号化ブロックおよび当該現在の符号化ブロックの前に前記符号化手段で符号化された符号化ブロックに係わる符号化情報に基づいて、前記予測手段でサイズが決定された符号化ブロックの符号量を制御する符号量制御手段を備え、
前記符号量制御手段は、前記符号化情報に基づいて前記符号化対象のフレームの所定の符号化情報を演算し、当該演算された所定の符号化情報に従って前記予測手段が決定する符号化ブロックサイズを制限することを特徴とする画像符号化装置。
【請求項２】
前記符号量制御手段は、前記所定の符号化情報として前記符号化対象のフレームの符号化率を算出し、当該符号化率が所定の閾値より大きい場合に、前記予測手段が決定する符号化ブロックサイズの上限を変更し、前記予測手段による当該変更された上限以上のブロックサイズの決定を禁止することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記符号量制御手段は、前記符号化率を前記現在の符号化ブロックに係わる符号化情報から得られる未符号化ブロックの情報と所定のブロックサイズとに基づいて算出することを特徴とする請求項２に記載の画像符号化装置。
【請求項４】
前記符号量制御手段は、前記符号化対象のフレームの発生符号量と目標符号量とから符号量誤差率を算出し、前記算出した符号量誤差率に従って前記予測手段が決定する符号化ブロックサイズの上限を変更することを特徴とする請求項１に記載の画像符号化装置。
【請求項５】
前記符号量制御手段は、前記算出した符号量誤差率が所定の誤差率を超えている場合、前記予測手段が決定する符号化ブロックサイズの上限を小さくすることを特徴とする請求項４に記載の画像符号化装置。
【請求項６】
前記符号量制御手段は、前記算出した符号量誤差率が前記所定の誤差率を超えて大きくなるに従って、前記予測手段が決定する符号化ブロックのサイズの上限を段階的に小さくすることを特徴とする請求項５に記載の画像符号化装置。
【請求項７】
前記符号量制御は、前記符号化手段により符号化された符号化ブロックにおける発生符号量を積算し、前記符号化対象のフレームの目標符号量と前記積算された発生符号量とから残符号量を算出し、当該残符号量に基づいてブロック目標符号量および量子化係数を決定することを特徴とする請求項１乃至６のいずれか一項に記載の画像符号化装置。
【請求項８】
前記予測手段は、イントラ予測およびインター予測のいずれかに従った画素の差分値に基づいて、符号化ブロックサイズを決定することを特徴とする請求項１乃至７のいずれか一項に記載の画像符号化装置。
【請求項９】
前記符号化手段は、イントラ符号化およびインター符号化のいずれかに従って、前記画像データの符号化対象のフレームを前記符号化ブロック単位で符号化することを特徴とする請求項１乃至８のいずれか一項に記載の画像符号化装置。
【請求項１０】
複数のフレームを含む画像データを取得する手段と、前記取得した画像データに基づいて、当該画像データの符号化対象のフレームの符号化ブロックサイズを決定する予測手段と、前記決定された符号化ブロックサイズに従って、前記取得した画像データを符号化ブロック単位で符号化する符号化手段とを備える画像符号化装置の制御方法において、
前記予測手段でサイズが決定された現在の符号化ブロックおよび当該現在の符号化ブロックの前に前記符号化手段で符号化された符号化ブロックに係わる符号化情報に基づいて、前記予測手段でサイズが決定された符号化ブロックの符号量を制御する符号量制御ステップを備え、
前記符号量制御ステップは、前記符号化情報に基づいて前記符号化対象のフレームの所定の符号化情報を演算し、当該演算された所定の符号化情報に従って前記予測手段が決定する符号化ブロックサイズを制限するステップを含むことを特徴とする画像符号化装置の制御方法。
【請求項１１】
複数のフレームを含む画像データを符号化する画像符号化装置の制御プログラムにおいて、
コンピュータを、
前記画像データを取得する取得手段、
前記取得した画像データに基づいて、当該画像データの符号化対象のフレームの符号化ブロックサイズを決定する予測手段、
前記決定された符号化ブロックサイズに従って、前記取得した画像データを符号化ブロック単位で符号化する符号化手段、
前記予測手段でサイズが決定された現在の符号化ブロックおよび当該現在の符号化ブロックの前に前記符号化手段で符号化された符号化ブロックに係わる符号化情報に基づいて、前記予測手段でサイズが決定された符号化ブロックの符号量を制御するとともに、前記符号化情報に基づいて前記符号化対象のフレームの所定の符号化情報を演算し、当該演算された所定の符号化情報に従って前記予測手段が決定する符号化ブロックサイズを制限する符号量制御手段として機能させるプログラム。
【請求項１２】
請求項１１のプログラムを記録したコンピュータが読み取り可能な記録媒体。
【請求項１３】
コンピュータを、請求項１乃至９のいずれか一項に記載された画像符号化装置の各手段として機能させるプログラム。
【請求項１４】
コンピュータを、請求項１乃至９のいずれか一項に記載された画像符号化装置の各手段として機能させるプログラムを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像符号化装置に関し、特に画像を分割したブロック単位で符号化する画像符号化装置およびその制御方法に関する。
【背景技術】
【０００２】
従来、被写体を撮影して得られた動画像データを圧縮符号化して記録するカメラ一体型動画像記録装置として、デジタルビデオカメラがよく知られている。近年では、動画像データを記録する記録媒体は、従来の磁気テープからランダムアクセス性などの利便性が高いディスク媒体や半導体メモリなどに移り変わってきている。また、圧縮方式としては、フレーム間で動き予測を用いて高い圧縮率で圧縮可能なＭＰＥＧ２方式が一般的に用いられており、さらに近年では、より高圧縮に圧縮可能なＨ．２６４方式が用いられている。Ｈ．２６４方式などでは、マクロブロックをサブマクロブロックに細分化して動き補償を行なえることが規格で定義されている。
【０００３】
そこで画像の特徴等に応じて使用するブロックサイズを適応的に決定する方法が下記特許文献１に、また、カメラ情報に応じてブロックサイズを適応的に決定する方法が下記特許文献２に記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平０９−１３０８０１号公報
【特許文献２】特開２００６−２５４３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、最近規格化作業が行われている次世代の符号化方式では、画像の量子化係数を決定できる符号化ブロックのサイズを適応的に変更できるようにすることが検討されている。
符号化ブロックのサイズを適応的に変更することは、画像の特徴等によりブロック分けが可能となり、符号化効率および画質を向上させることが可能となる。 
ところが、符号化ブロックのサイズ毎に量子化係数を決定できることにより、ブロック毎の目標符号量と発生符号量の差である符号量誤差が大きくなり、それによって画質劣化を引き起こすこととなってしまう。
【０００６】
本発明は上記従来の問題に鑑み、符号化位置または発生符号量に応じて符号化ブロックの上限サイズを決定して符号量誤差を抑制することにより、最適な量子化制御を行い、良好な画像を得られる画像符号化装置の提供を目的とする。
【課題を解決するための手段】
【０００７】
本発明によれば、複数のフレームを含む画像データを符号化する画像符号化装置は、取得した画像データに基づいて、当該画像データの符号化対象のフレームの符号化ブロックサイズを決定し、決定した符号化ブロックサイズに従って、取得した画像データを符号化ブロック単位で符号化し、サイズが決定された現在の符号化ブロックおよび当該現在の符号化ブロックの前に符号化した符号化ブロックに係わる符号化情報に基づいて、サイズが決定された符号化ブロックの符号量を制御するとともに、符号化情報に基づいて符号化対象のフレームの所定の符号化情報を演算し、当該演算された所定の符号化情報に従って前記予測手段が決定する符号化ブロックサイズを制限する。
【発明の効果】
【０００８】
本発明によれば、符号化位置または発生符号量に応じて符号化ブロックの上限サイズを変更して符号量誤差を抑制することが可能となり、最適な量子化制御を行い、良好な画像を提供できる画像符号化装置を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明の実施形態に係る画像符号化装置の構成例を示すブロック図である。
【図２】図２は、画像を最大符号化単位となるブロックで符号化単位にブロック分割した一例を示す図である。
【図３】図３は、符号量制御における目標符号量、量子化係数及び発生符号量の関係を概念的に表した図である。
【図４】図４は、図３に示す符号化制御に対して、符号化ブロックサイズを変更したときの目標符号量、量子化係数及び発生符号量の関係を概念的に表した図である。
【図５】図５は、図１の符号化装置の量子化制御回路が行う、本発明の第１の実施例に係わる制御動作のフローチャートを示す図である。
【図６】図６は、量子化制御回路が行なう、本発明の第２の実施形態に係る制御動作のフローチャートを示す図である。
【図７】図７は、図６の動作におけるピクチャ目標符号量と符号量誤差率との関係を表すグラフである。
【発明を実施するための形態】
【００１０】
以下、本発明の好適な実施形態を添付の図面を用いて詳細に説明する。
【００１１】
（第１の実施形態）
図１は、本実施例に係る画像符号化装置１００の構成例を示すブロック図である。
図１において、画像符号化装置１００は、レンズや撮像センサ等のカメラ部を含む撮像部１０１と、撮像部から出力された動画像データを記憶するフレームメモリ１０２を備える。また、ピクチャ間の差分により動きベクトルを探索するインター予測回路１０３と、インター予測とイントラ予測とのどちらかの予測方法を選択する予測方法選択回路１０４と、イントラ予測方法を選択するイントラ予測回路１０５とを備えている。さらに、選択された予測方法により符号化ブロック単位で予測符号化を行なうために、予測画像生成回路１０６、減算器１０７、整数変換回路１０８、量子化回路１０９、エントロピー符号化回路１１５、量子化制御回路１１６、符号量制御回路１１７を備えている。さらに、インター予測方法で使用する参照画像を生成するために、逆量子化回路１１０、逆整数変換回路１１１、加算器１１２、ループ内フィルタ１１３を備えている。また、画像符号化装置１００は記録回路１１８を備えるとともに、記録媒体１１９を装着可能に構成されており、フレームメモリ１０２は、インター予測に用いる参照画像を記憶する参照画像メモリ１１４を備えている。
【００１２】
撮像部１０１から出力される動画像データは、第１フレーム、第２フレーム、第３フレーム、・・・の順（表示順）で、フレームメモリ１０２に順次格納される。フレームメモリ１０２からは、例えば、第３フレーム、第１フレーム、第２フレーム、・・・と、符号化を行う順序（符号化順）にフレーム単位で動画像データは読み出されていく。読み出されたフレームは、符号化方法に従って、Ｉピクチャ、Ｐピクチャ、またはＢピクチャと呼ばれる。
【００１３】
ここで、符号化方法には、フレーム内の画像データのみで符号化するイントラ符号化と、フレーム間での予測も含めて符号化するインター符号化とがある。インター符号化を行うピクチャは、動き補償のブロック単位（ＭＣブロックと称す）に対して１枚の参照フレームとの間で動き予測を行うＰピクチャと、ＭＣブロックに対して２枚までの参照フレームとの間で動き予測を行うＢピクチャとがある。一方、イントラ符号化を行うピクチャは、Ｉピクチャである。なお、符号化するフレームの順番が入力されたフレームの順番と異なるのは、過去のフレームだけではなく、時間的に未来のフレームとの予測（後方予測）を可能にするためである。
【００１４】
イントラ符号化を行う場合、最大符号化単位となる符号化対象ブロックの画像データがフレームメモリ１０２から読み出されて、イントラ予測回路１０５へ入力される。また、読み出された符号化対象ブロックに隣接する画素のデータもフレームメモリ１０２から読み出されて、イントラ予測回路１０５へ入力される。
【００１５】
イントラ予測回路１０５は、符号化対象ブロックと、その符号化対象ブロックに隣接する画素のデータから生成される複数のイントラ予測画像データのそれぞれとのブロックマッチングを行う。そして、最も相関の高いイントラ予測画像データを選択して予測方法選択回路１０４へ出力する。なお、イントラ予測画像データの生成時には、イントラ予測回路１０５が加算器１１２からの再構成画像データを用いてイントラ予測符号化を行なう。
【００１６】
イントラ符号化を行うフレームの場合は、予測方法選択回路１０４は常にイントラ予測を選択し、予測画像生成回路１０６へ選択結果を通知する。予測画像生成回路１０６は予測方法選択回路１０４が選択した予測方法に従って、後述する加算器１１２から出力される再構成画像データからイントラ予測画像データを生成する。
【００１７】
減算器１０７には、前述のイントラ予測画像データとフレームメモリ１０２から読み出される符号化対象ブロックの画像データとが入力され、符号化対象ブロックの画像とイントラ予測画像との画素値の差分画像データを整数変換回路１０８へ出力する。整数変換回路１０８は、入力された画素値の差分画像データに整数変換を施し、量子化回路１０９は、整数変換回路１０８により整数変換された信号に対して量子化処理を行う。
【００１８】
一方、インター符号化を行うフレームの場合、最大符号化単位となる符号化対象ブロックの画像データがフレームメモリ１０２より読み出されて、インター予測回路１０３に入力される。また、インター予測回路１０３は、参照画像データを参照画像メモリ１１４から読み出し、符号化対象の画像データと参照画像データとから動きベクトルを検出して、予測方法選択回路１０４へ通知する。
【００１９】
なお、フレームによっては、符号化対象ブロックごとにインター予測かイントラ予測かを選択することができる。この場合も、イントラ予測回路１０５は前述のように動作し、イントラ予測の結果を予測方法選択回路１０４へ通知する。予測方法選択回路１０４は、インター予測回路１０３の結果とイントラ予測回路１０５の結果とを入力し、例えば、差分値が小さい方の予測方法を選択して、予測画像生成回路１０６へ通知する。減算器１０７では、符号化対象の画像と予測画像との画素値の差分を計算し、差分画像データが生成される。差分画像データは整数変換回路１０８に出力される。
【００２０】
図２は、最大符号化単位となるブロックで符号化単位にブロック分割された一例である。図２のブロックの外周（太線部）で囲まれたブロックが符号化ブロックの最大サイズ（最大符号化単位のブロック）である。一方、当該最大サイズの符号化ブロック内を細分化したものが、適応的に決定される符号化ブロックの例であり、１乃至２２番の各ブロックがそれぞれ量子化の対象となる。なお、最大サイズの符号化ブロックが量子化対象の符号化ブロックとなることもあり得る。このような１つ以上の符号化ブロックを含む最大符号化単位の符号化ブロックが、フレーム内に複数個配置される。図２は、ある一つの最大符号化単位のブロックに着目した例であって、各番号が符号化ブロック番号となっている。イントラ予測及びインター予測では最大符号化単位のブロックにおいて差分値が最小となるようブロックサイズを決定する。ただし、ブロック数が多くなればブロック判別情報が付加されるため、ヘッダ情報量を加味して判定を行う。例えば、ブロック分割した任意のブロックAにおいて、差分値をD、量子化係数をQ、ヘッダ情報量をIとするとき、ブロックAの評価値Hを、
H ＝ D/Q ＋ I
とし、各ブロック評価値Hの合計値が最小となるように判定を行う。
ただし、本実施例は図２に示すブロックの分割方法に限らず、別の分割方法であっても構わない。
【００２１】
図１に戻り、本実施例に係わる画像符号化装置の動作を説明する。
エントロピー符号化回路１１５は、量子化回路１０９により量子化された整数変換係数をエントロピー符号化し、ストリームとして記録回路１１８に出力する。ここで、量子化回路１０９における量子化係数は、量子化制御回路１１６が以下の係数、符号量などのデータを用いて算出する。即ち、初期量子化係数または前ブロックで用いた量子化係数、予測方法選択回路１０４で決定した符号化ブロックサイズ、エントロピー符号化回路１１５で発生した符号量、符号量制御回路１１７から設定される目標符号量などである。
【００２２】
図３（Ａ）は、各ブロック符号量制御における目標符号量、量子化係数及び発生符号量の関係を表した図である。
【００２３】
図において、黒丸（●）が前ブロックアドレスにおける積算符号量であり、黒丸の位置における発生符号量が四角（□）で表されている。斜線は積算符号量と目標ピクチャ符号量との間にひかれる。CUとはコーディングユニット（符号化単位）を意味している。
【００２４】
ブロック目標符号量は、
｛（目標ピクチャ符号量）−（積算符号量）｝／（残ブロック相当サイズ）
より求めることができる。
ただし、残ブロック相当サイズは、未符号化ブロックを現在のブロックのブロックサイズで換算した値である。未符号化ブロック（の範囲）は、現在の符号化位置（例えば後述する図７のｐｏｓＡ）から求めることが可能であり、符号化ブロックに係わる符号化情報である。このような情報は、量子化制御回路１１６の図示しないメモリ又は符号化装置全体を制御する図示しない制御部のメモリなどに適宜保持され、必要に応じて読み出され得る情報である。
【００２５】
ブロック単位に符号化を行い、ブロック目標符号量とブロック発生符号量の差分がブロック符号量誤差errとなる。
このとき、量子化係数Qpは、
［式１］
Qp ＝ Q ＋ Σerr ＊ α  
として求められる。αは任意の値である。
【００２６】
量子化係数は、制御感度を強めて細かく変更することも可能であるが、量子化歪を起こすため、感度を弱めることも必要となる。これをαで調整する。αは大きくなれば制御感度が強くなる。
【００２７】
図３（Ａ）は、上記のようにブロック毎に量子化係数を決定して符号化したCU7からCU10までの目標符号量、量子化係数および発生符号量の関係を図示している。
【００２８】
図３（Ｂ）は、図３（Ａ）の次符号化ブロックCU11における目標符号量、量子化係数及び発生符号量の関係を表した図である。CU10の量子化係数を引き継ぎ、CU11を符号化したときの上記関係を示す図である。図に示すように、ブロックサイズが違うため、符号量誤差が増大してしまう。
【００２９】
図４は、図３（Ｂ）に対し符号化ブロックサイズを変更したときの発生符号量（□）を示した図である。大きなブロックでは量子化係数によってブロックの目標符号量と発生符号量が大きく離れてしまうが、ブロックサイズを小さくすることで、次ブロックCU11で量子化係数をＱ［ＣＵ１２］に変更でき、符号量誤差を抑制することが出来る。
【００３０】
図５は、量子化制御回路１１６による本実施例に係わる量子化制御動作のフローチャートである。なお、当該フローチャートに係わる処理は、量子化制御回路１１６のＣＰＵ、又は図１の画像符号化装置全体を制御する図示しない制御部のＣＰＵが制御プログラムを実行することによって実現される。
【００３１】
以下、図５に示すフローチャートを用いて、量子化制御回路１１６の動作を説明する。なお、初めに、現在の符号化ブロックに係わる符号化情報を設定する（Ｓ５０１）。本実施例では、初期値である初期量子化係数または同じピクチャタイプで前に符号化されたピクチャの最後の量子化係数、前ブロックの発生符号量、現在のブロックサイズと符号量誤差を取得して設定する。これらのデータは、量子化制御回路１１６の図示しないメモリ又は符号化装置全体を制御する図示しない制御部のメモリなどに適宜保持され、必要に応じて読み出される。
【００３２】
設定された符号化情報およびそれ以外の現在の符号化ブロックの（位置情報などの）符号化情報に基づいて符号量制御に必要な情報を算出する（Ｓ５０２）。本実施例では、前ブロックまでの発生符号量を積算することで、ピクチャ積算符号量を算出する。更に、ピクチャ目標符号量からピクチャ積算符号量を引き、ピクチャ残符号量を算出する。また、ピクチャ内を全て最小ブロックサイズの符号化ブロックにした場合のピクチャ残最小ブロック数（定義は後述する）を算出する。そして、このピクチャ残最小ブロック数をピクチャ全最小ブロック数（定義は後述する）で割り、ピクチャ符号化率（現在の符号化対象のフレームの符号化率）も算出する（Ｓ５０２）。これらの演算に必要なデータであり、Ｓ５０１で設定されていないデータおよび演算の結果も、ステップＳ５０１の場合と同様に、符号化装置の制御構成において適宜保持さると供に必要に応じて読み出される。即ち、「最小ブロックサイズ」は、複数の選択可能なブロックサイズのうち最小のブロックサイズを意味し、「ピクチャ残最小ブロック数」は、ピクチャ内を全て最小ブロックサイズの符号化ブロックにした場合のピクチャ内の未符号化ブロックの数を意味する。また、「ピクチャ全最小ブロック数」は、ピクチャ内を全て最小ブロックサイズの符号化ブロックにした場合の全符号化ブロックの数を意味する。従って、これらの情報は、符号化ブロックのサイズ、ピクチャのサイズおよび現在の符号化位置（符号化ブロックに係わる符号化情報）から求めることが可能である。
【００３３】
上記ピクチャ残符号量とピクチャ残最小ブロック数及びブロックサイズからブロック目標符号量を算出し（Ｓ５０３）、量子化係数Ｑ値を算出する（Ｓ５０４）。
【００３４】
次に、ピクチャ符号化率が所定の閾値（Thres1）より大きいか否かを判定する（Ｓ５０５）。
【００３５】
ピクチャ符号化率が閾値Thres1より大きい場合、次のブロックのサイズの上限を新たに定めて変更し、インター予測回路１０３及びイントラ予測回路１０５に上限以上のブロックサイズを選択することを禁止する（Ｓ５０６）。例えば、１６ｘ１６より大きなブロックを発生させないように制御する。
【００３６】
以上のように、ピクチャ符号化率が閾値より大きい（ピクチャ残最小ブロック数が大きい）場合、大きなブロックで符号化誤差が大きくなると、その符号量誤差を抑制するために量子化係数を大きく振って符号量を抑制することとなる。このため、本実施例ではブロックサイズの上限を変更し、大きなブロックを発生させず、符号量誤差を抑制する制御を行う。
【００３７】
ただし、本説明ではブロックサイズの上限は、１６ｘ１６以外の別のサイズであってもよい。
【００３８】
ここで図１に戻り、本実施例に係わる画像符号化装置の動作をさらに説明する。
量子化回路１０９により量子化された整数変換係数は、逆量子化回路１１０にも入力される。逆量子化回路１１０は、入力された整数変換係数を逆量子化し、逆整数変換回路１１１は、逆量子化された整数変換係数に対して逆整数変換処理を施す。
【００３９】
加算器１１２には、逆整数変換されたデータと、予測画像生成回路１０６により生成されたイントラ予測画像データとが入力されて加算される。加算後のデータは復号された再構成画像データとなり、前述した予測画像生成回路１０６に入力されてイントラ予測画像データの生成に用いられる。また、再構成画像データは、ループ内フィルタ１１３によって符号化歪の軽減処理が施され、後述するインター符号化の際に用いる参照画像データとして参照画像メモリ１１４に記憶される。
【００４０】
記録回路１１８は、エントロピー符号化回路１１５から出力されたストリームを記録媒体１１９に記録する。
【００４１】
上記のように、本実施例によれば、符号化ブロックの上限サイズを設けることで符号量誤差を抑制することが可能となり、最適な量子化制御を行う画像符号化装置を提供することが可能となる。
【００４２】
（第２の実施形態）
次に、本発明の第２の実施例を図６および７を参照して説明する。
【００４３】
図６は、本実施例に係る量子化制御回路１１６の制御動作のフローチャートを示す。図中、第１の実施例と同一処理は同一の番号を付して示し、特に必要がない限り、ここでの説明は省略する。なお、本実施例の画像符号化装置の主な構成は第１の実施形態と同様であるので、これについてもここでの説明は省略する。
【００４４】
以下、本実施例の制御動作で第１の実施例と異なる部分について説明する。
【００４５】
第１の実施例と同様に、量子化制御に必要な情報の設定および演算を行なった後、ステップＳ６０７で、ピクチャ符号化率、ピクチャ目標符号量、ピクチャ残符号量からピクチャ単位の符号量誤差率を算出し、符号量誤差率に基づいて上限ブロックサイズを決定する。
【００４６】
図７は、ピクチャ目標符号量及び符号量誤差率を表すグラフである。図において、点Ａは符号化の現在位置であり、その横軸座標座ｐｏｓＡは原点ＯからＰｉｃ  Ｅｎｄを内分する点としてピクチャ符号化率を与え、縦軸座標はピクチャ積算符号量（Ｐｉｃ目標符号量−ピクチャ残符号量）を与える。従って、フレームの現在の内符号化率と内残符号量から点Ａの位置を特定することができる。点Ａの位置が分かれば（符号化ブロックに係わる符号化情報から）、後述するようにフレームの符号量誤差率を算出することができる。
【００４７】
同図において、符号化されるピクチャの最後の位置でのピクチャ目標符号量と原点０を結んだ太い実線が各最小ブロックサイズの符号化ブロックに均一に符号量を与えたときの目標積算符号量線となる。この目標積算符号量線と実積算符号量（折れ線）との差が符号量誤差となる。また、目標符号量、目標積算符号量、符号量誤差を用いて符号量誤差率が算出できる。
（符号量誤差） ＝  （実積算符号量） −（目標積算符号量）
（符号量誤差率） ＝ （符号量誤差）／（目標符号量）
なお、図において、実積算符号量を表わす折れ線の横へのスライドの長さが違うのは符号化ブロックサイズが異なるためであり、縦の変移は発生符号量によるものである。
【００４８】
図中の点Ａでの実積算符号量は、符号量誤差率が所定の誤差率（＋12.5％の破線）を超えており、ピクチャ目標符号量から大きく外れていく可能性がある。そのため、符号化ブロックの上限サイズを小さくして量子化制御を細かく行って、符号量制御を細かく行うようにする。
【００４９】
また、符号量誤差率が＋25％（＋25％の細い実線）を超えた場合は、更に符号化ブロックの上限サイズを小さくする。
【００５０】
例えば、制限のないときは、ブロックサイズを６４ｘ６４画素ブロックとし、＋12.5％では３２ｘ３２画素ブロックとし、＋25％では１６ｘ１６画素ブロックとするように、符号量誤差率が大きくなるに従って、符号化ブロックのサイズの上限を段階的に小さくする。
【００５１】
逆に、符号量誤差率がマイナスの値を示した場合も、符号化ブロックの上限サイズを変更して実積算符号量が目標積算符号量に近づくように制御することができる。
【００５２】
なお、本実施例は、符号量誤差率と変更する上限サイズの関係を上述した値に限るものではない。他の数値により変更条件およびブロックサイズ上限を適宜設定しても構わない。
【００５３】
以上説明したように、本実施例では、量子化係数Ｑを算出に応じてステップＳ６０７において符号量誤差率を算出し、その結果に応じて次の符号化でのブロックサイズの上限を決定する。これによっても、符号量誤差を抑制することが可能となる。
【００５４】
上記のように、本実施例によれば、量子化ブロックのサイズの上限を符号量誤差率に応じて段階的に変更することにより符号量誤差を抑制するが可能となり、最適な量子化制御を行うことが可能な画像符号化装置を提供することができる。
【００５５】
図５および６に示した各処理は、上述のように各処理の機能を実現する為のプログラムを不図示のメモリから読み出して量子化制御回路のＣＰＵなどが実行することによりその機能を実現させるものである。しかし、本発明はこれに限定されるものではなく、図５及び６に示した各処理の全部または一部の機能を専用のハードウェアにより実現してもよい。また、上述したメモリは、コンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。例えば、光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体、ＲＡＭ以外の揮発性のメモリ、あるいはこれらの組合せにより構成された記録媒体である。
【００５６】
また、図５および６に示した各処理の機能を実現する為のプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理を行っても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。具体的には、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた場合も含む。この場合、書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される。
【００５７】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発メモリ（ＲＡＭ）も含む。このように、一定時間プログラムを保持しているものも「コンピュータ読み取り可能な記録媒体」に含むものとする。
【００５８】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【００５９】
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００６０】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
【００６１】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【図１】
2014003523.tif 000003
【図２】
2014003523.tif 000004
【図３】
2014003523.tif 000005
【図４】
2014003523.tif 000006
【図５】
2014003523.tif 000007
【図６】
2014003523.tif 000008
【図７】
2014003523.tif 000009