(57)【要約】【課題】バッファが不足した際の画質の低下を防止すること。【解決手段】入力された映像信号を複数のデータに分離し、分離した各データを符号化してバッファに格納する際に、複数のデータそれぞれの統計情報量およびバッファの現時点における残容量に基づいて、複数のデータそれぞれの符号化データの容量を決定する。そして、決定した符号化データ容量で各データを符号化し、それぞれの符号化データが各エンコーダ内に存在するバッファに出力されるように制御する。【選択図】図１
2010259025.tif 000002
【特許請求の範囲】
【請求項１】
入力画像を複数の信号に分離する信号分離部と、
前記信号分離部によって分離された前記複数の信号それぞれを符号化する複数の符号化部と、
前記複数の符号化部それぞれによって符号化されたデータをそれぞれ記憶する記憶部と、
前記記憶部によって記憶された符号化データを多重化したデータを出力するデータ出力部と、
前記複数の信号それぞれの統計情報量および前記記憶部の現時点での合計残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化部からそれぞれの記憶部に出力されるように制御する制御部と、
を有したことを特徴とする画像符号化装置。
【請求項２】
前記複数の符号化部のうち所定の符号化部が信号の符号化順序を変更した場合、当該所定の符号化部以外の符号化部は、IIII符号化であれば、自身が符号化する信号の符号化順序を前記所定の符号化部が変更した順序に変更することを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記制御部は、さらに、符号化される信号の重要度に基づいて、前記符号化データの容量を決定することを特徴とする請求項１または２に記載の画像符号化装置。
【請求項４】
入力画像を複数の信号に分離する信号分離ステップと、
前記信号分離ステップによって分離された前記複数の信号それぞれを符号化する複数の符号化ステップと、
前記複数の符号化ステップそれぞれによって符号化されたデータをそれぞれ所定の記憶部に格納する記憶ステップと、
前記所定の記憶部によって記憶された符号化データを多重化したデータを出力するデータ出力ステップと、
前記複数の信号それぞれの統計情報量および前記記憶部の現時点での合計残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化ステップからそれぞれの記憶部に出力されるように制御する制御ステップと、
を含んだことを特徴とする画像符号化方法。
【請求項５】
入力画像を複数の信号に分離する信号分離手順と、
前記信号分離手順によって分離された前記複数の信号それぞれを符号化する複数の符号化手順と、
前記複数の符号化手順それぞれによって符号化されたデータをそれぞれ所定の記憶部に格納する記憶手順と、
前記所定の記憶部によって記憶された複数の符号化データを多重化したデータを出力するデータ出力手順と、
前記複数の信号それぞれの統計情報量および前記記憶部の現時点での合計残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化手順からそれぞれの記憶部に出力されるように制御する制御手順と、
をコンピュータに実行させることを特徴とする画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像符号化装置、画像符号化方法および画像符号化プログラムに関する。
【背景技術】
【０００２】
従来より、テレビ放送などの映像や動画などの画像データ（以下、データと記す）を伝送する際のデータの符号化方式として、階層符号化やサブバンド符号化などが知られている。これらの符号化方式では、データが周波数成分や画像内の領域に基づいて信号分離されたのち、単独で復号できる基本データと、基本データをより高画質で復号するための付加データとに符号化される。そして、基本データと付加データとは、一時的にバッファに格納されたのち、所定の転送レートで送出される。
【０００３】
例えば、上記した符号化方式では、図８の（Ａ）に示すように、ストリームデータである映像信号が信号分離部にて分離されたのち、エンコーダＡにおいて基本データである符号化データＡと、エンコーダＢにおいて付加データである符号化データＢとに符号化される。そして、符号化データＡおよび符号化データＢは、多重送出部にて多重化されたのち、ネットワークを介してデコーダに送出される。なお、図８は、従来技術を説明するための図である。
【０００４】
ここで、図８の（Ｂ）に示すように、エンコーダＡにおいて符号化された符号化データＡは、バッファＡに格納されたのち、転送レート（レートＡ）で多重送出部に出力される。また、エンコーダＢにおいて符号化された符号化データＢは、バッファＢに格納されたのち、転送レート（レートＢ）で多重送出部に出力される。そして、符号化データＡおよび符号化データＢは、多重送出部にて多重化されたのち、転送レート（レートＡ＋Ｂ）でネットワークデコーダに送出される。
【０００５】
ここで、符号化した基本データおよび付加データをネットワークに送出する際の転送レートを決定する方式として、ＣＢＲ（ｃｏｎｓｔａｎｔ  ｂｉｔ  ｒａｔｅ）およびＶＢＲ（ｖａｒｉａｂｌｅ  ｂｉｔ  ｒａｔｅ）の２つの方式が知られている。ＣＢＲ方式は、システム全体の転送レートを固定してネットワークに送出する方式であり、ＶＢＲ方式はシステム全体の帯域と各エンコーダの帯域をそれぞれ可変にして送出する方式である。
【０００６】
具体的には、ＣＢＲ方式は、図８の（Ｂ）に示すレートＡおよびレートＢを固定することで、多重化したデータの転送レートをレート（Ａ+Ｂ）として固定する方式である。
【０００７】
一方、ＶＢＲ方式は、図８の（Ｂ）に示すレートＡ、レートＢおよびレート（Ａ+Ｂ）を可変にし、データ容量に応じて転送レートを変化させる方式である。
【０００８】
また、データが送出されるネットワーク上の帯域使用状態を監視し、使用状態に基づいて、ネットワークにおけるデータの伝送速度を変化させることにより、ＣＢＲ符号化通信における画質を向上させる映像伝送装置が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開平４−２８０１４５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ところで、上記した技術では、バッファが不足した際に画質が低下するという課題があった。具体的には、上記したＣＢＲ方式では、エンコーダごとに、出力する転送レートおよびバッファサイズを設定し、それぞれでバッファを超過・枯渇させないように制御しているため、バッファが不足した際に画質が低下するという課題があった。
【００１１】
ここで、ＣＢＲ方式におけるバッファについて説明する。図９は、従来技術の課題を説明するための図である。図９の（Ａ）の縦軸はバッファ量、横軸は時間を示す。ＣＢＲ方式のバッファは、図９の（Ａ）に示すように、データの符号化が完了すると符号化データが入力され、一定の転送レートで順次デコーダに送出する。例えば、バッファＡおよびバッファＢは、図９の（Ａ）に示す時刻ｔ１において符号化データが入力され、入力された符号化データを時刻ｔ２にかけて一定の転送レートで順次デコーダに送出する。
【００１２】
ここで、送出する転送レートに対して、エンコーダが生成する符号化データが小さく、バッファが枯渇しそうな場合、ＣＢＲ方式のエンコーダは、無効データを詰めることでバッファが枯渇しないように制御している。例えば、ＣＢＲ方式のエンコーダは、バッファが枯渇しそうな場合、無効データを挿入し、バッファが枯渇しないように制御する（図９の（Ａ）の点線の丸参照）。
【００１３】
一方、送出する転送レートに対して、エンコーダが生成する符号化データが大きく、バッファを超過しそうである場合、ＣＢＲ方式のエンコーダは、符号化データを生成する際の量子化値を大きくするなどの方法により、画質を落として符号化データ量を減らし、バッファを超過させないように制御する。
【００１４】
例えば、ＣＢＲ方式のエンコーダは、バッファを超過しそうな場合、すなわち、図９の（Ａ）の実線の円で囲んだように符号化データがバッファ量を超過しそうな場合、画質を落として符号化データを小さくするように制御する。
【００１５】
したがって、ＣＢＲ方式では、上記したようにバッファの管理を行っていることからお互いのバッファの使用量を考慮したデータ伝送が行えなかった。例えば、図９の（Ｂ）に示すように、一方のバッファでは、送出したいデータサイズが小さくバッファに空き容量があるが、他方のバッファでは、送出したいデータサイズが大きく、バッファの空き容量を超過する分の画質を落としてデータサイズを小さくする場合があり、画質が低下するという課題があった。
【００１６】
また、上記したＶＢＲを用いた伝送方式（ＶＢＲ方式）は、エンコーダで最大レートが規定されており、最大レートを超えるデータの場合には、ＣＢＲと同様に、画質を落としてデータサイズを小さくする必要があり、画質が低下するという課題があった。
【００１７】
さらに、ＩＰ回線を利用した可変レート伝送の場合、ＩＰネットワークをバースト的データが流れるため、ルータを経由する際にルータ内バッファがオーバーフローし、パケットロスする可能性がある。パケットロスした場合には、デコーダ側では正常に映像が表示できないといった問題が発生する。
【００１８】
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、バッファが不足した際の画質の低下を防止することが可能となる画像符号化装置、画像符号化方法および画像符号化プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
上述した課題を解決し、目的を達成するため、この装置は、信号分離部が、入力画像を複数の信号に分離し、複数の符号化部が、前記信号分離部によって分離された前記複数の信号それぞれを符号化する。そして、記憶部が、前記複数の符号化部それぞれによって符号化されたデータをそれぞれ記憶し、データ出力部が、前記記憶部によって記憶された符号化データを多重化して出力する。そして、制御部が、前記複数の信号それぞれの統計情報量および前記記憶部の現時点での残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化部からそれぞれの記憶部に出力されるように制御する。
【発明の効果】
【００２０】
開示の装置は、バッファが不足した際の画質の低下を防止することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】図１は、実施例１における画像符号化装置の構成を説明するためのブロック図である。
【図２】図２は、画像符号化順を説明するための図である。
【図３】図３は、画像符号化順の同期を説明するための図である。
【図４】図４は、レート制御部を説明するための図である。
【図５】図５は、バッファ遷移を説明するための図である。
【図６】図６は、実施例１における画像符号化装置の符号化処理および符号化データ送出処理の手順を説明するためのシーケンス図である。
【図７】図７は、実施例１における画像符号化プログラムを実行するコンピュータを説明するための図である。
【図８】図８は、従来技術を説明するための図である。
【図９】図９は、従来技術の課題を説明するための図である。
【発明を実施するための形態】
【００２２】
以下に添付図面を参照して、本願の開示する画像符号化装置、画像符号化方法および画像符号化プログラムの実施例を詳細に説明する。なお、以下では、本願の開示する画像符号化プログラムを実行する画像符号化装置を実施例として説明する。
【実施例１】
【００２３】
［実施例１における画像符号化装置の構成］
まず最初に、図１〜５を用いて、実施例１における画像符号化装置の構成を説明する。図１は、実施例１における画像符号化装置の構成を説明するためのブロック図であり、図２は、画像符号化順を説明するための図であり、図３は、画像符号化順の同期を説明するための図である。また、図４は、レート制御部を説明するための図であり、図５は、バッファ遷移を説明するための図である。
【００２４】
図１に示すように、実施例１における画像符号化装置１０は、入力用Ｉ／Ｆ２０と、出力用Ｉ／Ｆ２１と、信号分離部３０と、第一エンコーダ４０と、第二エンコーダ４１と、レート制御部５０と、各エンコーダ内に存在する第一バッファ６０および第二バッファ６１と、多重送出部７０とを有する。また、実施例１における画像符号化装置１０は、図１に示すように、ネットワーク８０を介して、デコーダ９０と接続される。
【００２５】
入力用Ｉ／Ｆ２０は、図示しないネットワークを介して入力された映像信号を信号分離部３０に出力するインターフェースである。
【００２６】
出力用Ｉ／Ｆ２１は、多重送出部７０が多重化して送出した符号化データを、ネットワーク８０を介してデコーダ９０に出力するインターフェースである。
【００２７】
ネットワーク８０は、画像符号化装置１０からデコーダ９０へ符号化データを送信するための有線または無線の伝送路である。
【００２８】
デコーダ９０は、ネットワーク８０を介して画像符号化装置１０から受信した符号化データを復号する。例えば、デコーダ９０は、符号化データを映像信号に復号する。なお、図１においては、デコーダ９０のみ示しているが、実際には、さらに複数のデコーダがネットワーク８０に接続されている。
【００２９】
信号分離部３０は、入力用Ｉ／Ｆ２０を介して入力された映像信号を周波数成分や画像内の領域に基づいて複数のデータに分離し、分離したデータを後述する第一エンコーダ４０および第二エンコーダ４１に順次送信する。例えば、信号分離部３０は、映像信号を分離データＡと分離データＢとに分離し、分離データＡを後述する第一エンコーダ４０に順次送信する。また、信号分離部３０は、分離した分離データＢを後述する第二エンコーダ４１に順次送信する。なお、分離データＡまたは分離データＢには、例えば、高周波データや低周波データなどがある。
【００３０】
第一エンコーダ４０は、信号分離部３０によって分離されたデータを受信して、符号化を行う。例えば、第一エンコーダ４０は、信号分離部３０によって映像信号から分離された分離データＡを順次受信して、受信した分離データＡを、映像信号が複合できる基本データに符号化する。なお、以下では、第一エンコーダ４０によって符号化されたデータのことを、第一符号化データと記載する場合がある。
【００３１】
まず、第一エンコーダ４０は、時系列に沿って順次受信した分離データＡそれぞれを、Ｉピクチャ、ＢピクチャおよびＰピクチャのいずれかで符号化し、符号化方式に応じた符号化順序で符号化する。
【００３２】
ここで、Ｉピクチャは、時系列に沿って受信した前後の分離データＡとの相関関係に依存せずに単独で符号化されたデータのことである。また、Ｂピクチャは、時系列に沿って受信した前後の分離データＡそれぞれとの相関関係に基づいて符号化されたデータのことである。また、Ｐピクチャは、時系列に沿って受信した前の分離データＡとの相関関係に基づいて符号化されたデータのことである。例えば、第一エンコーダ４０がＩＢＢＰ符号化を行った場合、Bピクチャは前後の参照とする画像が必要なので並び替えが必要になる。
【００３３】
具体的には、第一エンコーダ４０は、図２に示すように、信号分離部３０から分離データＡを「０、１、２、３、４、５」の順で受信すると、符号化方式に応じて並び替えを行う。例えば、第一エンコーダ４０がＩＢＰＰ符号化を行う場合、図２に示すように、前後の参照とする画像が必要なＢピクチャを並べ替え、符号化データ「Ｉ２、Ｂ０、Ｂ１、Ｐ５、Ｂ３、Ｂ４」の順序で順次生成する。なお、ＩはＩピクチャ、ＢはＢピクチャ、ＰはＰピクチャであることを示している。また、分離データＡ「２」をＩピクチャにて符号化し、分離データＡ「０」および「１」をＢピクチャにて符号化することから、第一エンコーダ４０は、図２に示すように、分離データＡ「２」を受信したタイミングで、符号化処理を開始する。
【００３４】
ここで、本実施例における第一エンコーダ４０は、符号化対象となるデータごとの符号化難易度を算出し、後述するレート制御部５０に対し、算出した符号化難易度を送信する。なお、一例として、符号化難易度とは、画面間差分絶対和やベクトル情報など、符号化データの発生情報量に割り振られるパラメータである。具体的には、第一エンコーダ４０は、画面複雑度や発生情報量などの統計情報量を符号化難易度として算出し、後述するレート制御部５０に送信する。なお、画面複雑度を符号化難易度として算出する場合、第一エンコーダ４０は、Ｘ（画面複雑度）＝Ｓ（発生符号化ビット量）×Ｑ（平均量子化スケール）を算出し、後述するレート制御部５０に送信する。
【００３５】
例えば、第一エンコーダ４０は、分離データＡ「２、０、１、５、３、４」のそれぞれについて符号化難易度を算出し、後述するレート制御部５０に送信する。
【００３６】
また、第一エンコーダ４０は、各分離データＡを符号化する際に、符号化データの容量が、後述するレート制御部５０によって決定されたデータ容量となるように符号化率を決定して符号化処理を実行する。例えば、第一エンコーダ４０は、分離データＡ「２」をＩピクチャのデータ構造にて符号化する際に、後述するレート制御部５０によって決定されたデータ容量を超えないように符号化率を決定して「Ｉ２」を生成する。なお、データ容量の決定については、後に詳述する。
【００３７】
第二エンコーダ４１は、信号分離部３０によって分離されたデータを受信して、符号化を行う。例えば、第二エンコーダ４１は、信号分離部３０によって映像信号から分離された分離データＢを順次受信して、受信した分離データＢを、付加データとして符号化する。付加データは、第一エンコーダ４０が分離データＡを符号化した基本データをより高画質で復号するために用いられる符号化データのことである。なお、以下では、第二エンコーダ４１によって符号化されたデータのことを、第二符号化データと記載する場合がある。
【００３８】
ここで、第二エンコーダ４１は、分離データＢを、信号分離部３０から受信した順に、Ｉピクチャのデータ構造にて符号化を行なう。例えば、第二エンコーダ４１は、図２に示すように、信号分離部３０から分離データＢを「０、１、２、３、４、５」の順で受信すると、受信した順序に沿って符号化処理を行なって、「Ｉ０、Ｉ１、Ｉ２、Ｉ３、Ｉ４、Ｉ５」を順次生成する。また、第二エンコーダ４０は、データを受信した順序を符号化順序とすることから、図２に示すように、分離データＢ「０」を受信したタイミングで、符号化処理を開始する。
【００３９】
ところで、第一エンコーダ４０が、ＩＢＢＰ符号化で、データを受信した順序から符号化順序を並べ替えた場合、本実施例における第二エンコーダ４１がIIII符号化であれば、Iピクチャは参照画像を必要としないので、自身の符号化順序を、第一エンコーダ４０が並べ替えた符号化順序に同期させることができる。
【００４０】
例えば、図３に示すように、分離データＡを「０、１、２、３、４、５」の順序で受信した第一エンコーダ４０が、符号化の順序を「２、０、１、５、３、４」に並べ替えた場合、第二エンコーダ４１は、自身の符号化の順序を「２、０、１、５、３、４」とする。さらに、第二エンコーダ４１は、自身の符号化処理の開始時期を、第一エンコーダ４０の符号化処理の開始時期と合わせる。すなわち、第一エンコーダ４０が分離データＡの符号化データ「Ｉ２、Ｂ０、Ｂ１、Ｐ５、Ｂ３、Ｂ４」を順次生成する場合、第二エンコーダ４１は、図３に示すように、分離データＢの符号化データ「Ｉ２、Ｉ０、Ｉ１、Ｉ５、Ｉ３、Ｉ４」を同期して順次生成する。
【００４１】
ここで、本実施例における第二エンコーダ４１は、第一エンコーダ４０と同様に、符号化対象となるデータごとの符号化難易度を算出し、後述するレート制御部５０に対し、算出した符号化難易度を送信する。
【００４２】
また、本実施例における第二エンコーダ４１は、第一エンコーダ４０と同様に、各分離データＢを符号化する際に、符号化データの容量が、後述するレート制御部５０によって決定されたデータ容量となるように符号化率を決定して符号化処理を実行する。例えば、第二エンコーダ４１は、分離データＢ「２」をＩピクチャのデータ構造にて符号化する際に、後述するレート制御部５０によって決定されたデータ容量を超えないように符号化率を決定して「Ｉ２」を生成する。なお、データ容量の決定については、後に詳述する。
【００４３】
第一バッファ６０は、第一エンコーダ４０が符号化したデータを記憶する。
【００４４】
第二バッファ６１は、第二エンコーダ４１が符号化したデータを記憶する。
【００４５】
レート制御部５０は、第一エンコーダ４０および第二エンコーダ４１それぞれにて符号化されるデータの統計情報量（例えば、上述した画面複雑度）、第一バッファ６０の残容量および第二バッファ６１の残容量に基づいて、符号化するデータそれぞれのデータ容量（符号化率）を決定する。
【００４６】
すなわち、レート制御部５０は、図４の（Ａ）に示すように、各エンコーダにて符号化されるデータのデータ容量を決定して割り当てることで、第一バッファ６０および第二バッファ６１に入力される符号化データの量を制御する。これにより、レート制御部５０は、後述する多重送信部７０からデコーダ９０に出力されるデータの転送レートを制御する。
【００４７】
具体的には、レート制御部５０は、第一バッファ６０および第二バッファ６１それぞれから現時点での残容量を取得する。これは、システムの最大容量から現在使用中のバッファとの差で求まる。そして、レート制御部５０は、第一エンコーダ４０および第二エンコーダ４１それぞれが算出した符号化難易度を取得する。そして、レート制御部５０は、第一バッファ６０の残容量と第二バッファ６１の残容量とを合計した現時点での残容量と、各エンコーダの符号化難易度を用いて割り当て容量を算出し、算出した割り当て容量を、第一エンコーダ４０および第二エンコーダ４１にそれぞれ割り当てる。
【００４８】
ここで、レート制御部５０は、図４の（Ｂ）に示すように、「Ｘｎ：第ｎエンコーダの符号化難易度」、「Ｔａｒｇｅｔ  ｎ：第ｎエンコーダへの割り当て容量」、「Ｍａｘ  Ｄａｔａ：最大許容容量」とした場合、以下のように、割り当て容量を算出する。
【００４９】
例えば、レート制御部５０は、図４の（Ｂ）に示すように、第一エンコーダ４０に対する割り当て容量として、「Ｔａｒｇｅｔ  １＝Ｍａｘ  Ｄａｔａ＊Ｘ１／（Ｘ１＋Ｘ２）」を算出し、算出した割り当て容量を第一エンコーダ４０に割り当てる。また、レート制御部５０は、図４の（Ｂ）に示すように、第二エンコーダ４１に対する割り当て容量として、「Ｔａｒｇｅｔ  ２＝Ｍａｘ  Ｄａｔａ＊Ｘ２／（Ｘ１＋Ｘ２）」を算出し、算出した割り当て容量を第二エンコーダ４１に割り当てる。
【００５０】
上述したように、第一エンコーダ４０および第二エンコーダ４１それぞれで順次符号化された第一符号化データおよび第二符号化データは、上記したレート制御部５０による各エンコーダへの容量割り当て処理により、それぞれ第一バッファ６０および第二バッファ６１にて記憶される。そして、順次記憶される第一符号化データおよび第二符号化データの合計容量は、現時点での残容量以下となる。これについて、図５を用いて説明する。なお、図５に示す縦軸は、バッファ量を表し、図５に示す横軸は、時間を表す。
【００５１】
従来では、第一エンコーダ４０および第二エンコーダ４１にてバッファ容量の割り当てを行うレート制御部５０がないため、第一エンコーダ４０および第二エンコーダ４１の間で連携した符号化処理を実行することができない。このため、例えば、第一エンコーダ４０のバッファにおいては、第一符号化データの容量が小さい場合、バッファの枯渇を防止するために、無効データが挿入されていた（図５の（Ａ）に示す点線部分参照）。
【００５２】
また、例えば、第二エンコーダ４１のバッファにおいては、第二符号化データの容量がバッファ量を超過する場合、データの情報量を減らすために、第二符号化データの一部を破棄していた（図５の（Ｂ）に示す丸で囲んだ部分参照）。
【００５３】
しかし、本実施例においては、レート制御部５０による各エンコーダへの容量割り当て処理により、例えば、無効データの容量を、第二符号化データの超過した容量に割り当てることができる（図５の（Ｃ）の（１）〜（４）参照）。これにより、図５の（Ｃ）に示すように、第一符号化データ（点線参照）と第二符号化データ（実線参照）との合計容量は、常に、規定された最大バッファ量を超過することがなくなる。すなわち、本実施例においては、第二符号化データの破棄処理を回避できる。
【００５４】
また、各エンコーダ内に存在するバッファそれぞれが、各エンコーダの合計の記憶容量（最大容量）を有する。これにより、一方の符号化のみだけに全てのデータを割りあてることも可能になる。
【００５５】
多重送出部７０は、第一バッファ６０および第二バッファ６１から出力された複数の符号化データを多重化して、多重化したデータを、ネットワーク８０を介して、一定の転送レートでデコーダ９０に送出する。
【００５６】
［実施例１における画像符号化装置による処理の手順］
次に、図６を用いて、実施例１における画像符号化装置による処理を説明する。図６は、実施例１における画像符号化装置の符号化処理および符号化データ送出処理の手順を説明するためのシーケンス図である。なお、実施例１における画像符号化装置１０は、信号分離部３０から分離されたデータそれぞれが第一エンコーダ４０および第二エンコーダ４１に入力されたことを契機として、以下に説明する処理を開始する。
【００５７】
図６に示すように、まず、実施例１における画像符号化装置１０のレート制御部５０は第一バッファ６０に対して現時点での残容量取得要求を送信し（ステップＳ１０１）、第一バッファ６０は、残容量取得要求を受信（ステップＳ１０２）する。そして、第一バッファ６０は、現時点における残容量（最大許容量）をレート制御部５０に送信する（ステップＳ１０３）。
【００５８】
また、レート制御部５０は第二バッファ６１に対して現時点での残容量取得要求を送信し（ステップＳ１０５）、第二バッファ６１は、残容量取得要求を受信（ステップＳ１０６）する。そして、第二バッファ６１は、現時点における残容量（最大許容量）をレート制御部５０に送信する（ステップＳ１０７）。
【００５９】
なお、レート制御部５０は、上記したステップＳ１０１〜ステップＳ１０３とステップＳ１０５〜ステップＳ１０７とを並行して行う。
【００６０】
続いて、レート制御部５０は、第一バッファ６１および第二バッファ６１から残容量を受信し（ステップＳ１０４、ステップＳ１０８）、合計残容量を算出する（ステップＳ１０９）。
【００６１】
そして、レート制御部５０は、第一エンコーダ４０に対して、符号化難易度取得要求を送信する（ステップＳ１１０）。
【００６２】
そののち、第一エンコーダ４０は、レート制御部５０から符号化難易度取得要求を受信し（ステップＳ１１１）、現時点で符号化を行うデータの符号化難易度を算出し（ステップＳ１１２）、レート制御部５０に対して、符号化難易度を送信する（ステップＳ１１３）。例えば、第一エンコーダ４０は、画面複雑度を符号化難易度として算出する場合、Ｘ（画面複雑度）＝Ｓ（発生符号化ビット量）×Ｑ（平均量子化スケール）を算出し、後述するレート制御部５０に送信する。
【００６３】
また、レート制御部５０は、ステップＳ１０９にて、合計算容量を算出すると、第二エンコーダ４１に対しても、符号化難易度取得要求を送信する（ステップＳ１１５）。
【００６４】
そして、第二エンコーダ４１は、レート制御部５０から符号化難易度取得要求を受信し（ステップＳ１１６）、現時点で符号化を行うデータの符号化難易度を算出し（ステップＳ１１７）、レート制御部５０に対して、符号化難易度を送信する（ステップＳ１１８）。例えば、第二エンコーダ４１は、画面複雑度を符号化難易度として算出する場合、Ｘ（画面複雑度）＝Ｓ（発生符号化ビット量）×Ｑ（平均量子化スケール）を算出し、後述するレート制御部５０に送信する。
【００６５】
なお、レート制御部５０は、上記したステップＳ１１０〜ステップＳ１１３とステップＳ１１５〜ステップＳ１１８とを並行して行う。
【００６６】
そののち、レート制御部５０は、各エンコーダから符号化難易度を受信し（ステップＳ１１４、ステップＳ１１９）、ステップＳ１０９にて算出した合計の残容量と、第一エンコーダ４０から受信した符号化難易度と、第二エンコーダ４１から受信した符号化難易度とを用いて、割り当て容量を算出する（ステップＳ１２０）（図４の（Ｂ）参照）。
【００６７】
そして、レート制御部５０は、算出した割り当て容量を、第一エンコーダ４０に送信し（ステップＳ１２１）、第一エンコーダ４０は、レート制御部５０から割り当て容量を受信する（ステップＳ１２２）。そして、第一エンコーダ４０は、受信した割り当て容量を超えないようにデータの符号化を行い（ステップＳ１２３）、符号化データを第一バッファ６０に送信する（ステップＳ１２４）。
【００６８】
そして、第一バッファ６０は、第一エンコーダ４０から符号化データを受信し（ステップＳ１２５）、受信した符号化データを多重送出部７０に出力する（ステップＳ１２６）。
【００６９】
また、レート制御部５０は、算出した割り当て容量を、第二エンコーダ４１に送信し（ステップＳ１２８）、第二エンコーダ４１は、レート制御部５０から割り当て容量を受信する（ステップＳ１２９）。そして、第二エンコーダ４１は、受信した割り当て容量を超えないようにデータの符号化を行い（ステップＳ１３０）、符号化データを第二バッファ６１に送信する（ステップＳ１３１）。
【００７０】
そして、第二バッファ６１は、第二エンコーダ４１から符号化データを受信し（ステップＳ１３２）、受信した符号化データを多重送出部７０に出力する（ステップＳ１３３）。
【００７１】
なお、上記したステップＳ１２１〜ステップＳ１２６およびステップＳ１２８〜ステップＳ１３３は、並行して行われる。
【００７２】
そののち、多重送出部７０は、符号化データを第一バッファ６０および第二バッファ６１から受信し（ステップＳ１２７、ステップＳ１３４）、受信した符号化データを多重化し（ステップＳ１３５）、一定の転送レートでデコーダ９０に送出する（ステップＳ１３６）。
【００７３】
そして、デコーダ９０は、多重送出部７０から送出された符号化データを受信する（ステップＳ１３７）。なお、デコーダ９０は、受信した符号化データを復号する。
【００７４】
なお、実施例１における画像符号化装置１０は、信号分離部３０から分離されたデータを並び替えた場合、符号化順の同期が行われた後に、上述した処理が開始される。
【００７５】
ここで、符号化順序の同期を行うかどうかの判断は、次のように行う。符号化方式が同じ場合、既に符号化順序の同期が取れているため、並び替えは必要ない。また、符号化方式が異なっても、符号化順序を入れ替える必要のない符号化方式(IIII符号化およびPPPP符号化)の場合、既にピクチャの同期が取れているため、並び替えは必要ない。また、符号化方式が異なりかつ符号化順序に入れ替えが必要な場合、一方のエンコーダがIIII符号化であれば、IIII符号化の符号化順序を他方のエンコーダの符号化順序に合わせて並び替えて、符号化順序を同期させる。
【００７６】
［実施例１の効果］
上記したように、実施例１によれば、信号分離部３０が入力された映像信号を周波数成分や画像内の領域に基づいて分離し、第一エンコーダ４０および第二エンコーダ４１が、信号分離部３０によって分離されたデータそれぞれを符号化する。そして、第一バッファ６０および第二バッファ６１が、それぞれ第一エンコーダ４０および第二エンコーダ４１によって符号化された符号化データそれぞれを記憶する。そして、多重送出部７０が、第一バッファ６０および第二バッファ６１によって記憶されている符号化データを多重化して送出する。ここで、レート制御部５０が、信号分離部３０によって分離されたデータそれぞれの統計情報量と第一バッファ６０および第二バッファ６１の現時点での残容量とに基づいて、データそれぞれの符号化データの容量を決定し、決定した容量の符号化データが第一エンコーダ４０および第二エンコーダ４１から送出されるように制御する。すなわち、本実施例の画像符号化装置１０は、第一エンコーダ４０および第二エンコーダ４１それぞれから第一バッファ６０および第二バッファ６１に送出されるデータの転送レートを可変にしたＶＢＲで行い、第一バッファ６１および第二バッファ６１から多重送出部７０への転送レートを固定にしたＣＢＲで行う。すなわち、多重送出部７０からデコーダ９０への転送レートも固定となる。従って、映像信号を分離した一方のデータの情報量が多い場合であっても、データの情報を減らすことなく符号化して送出することができ、バッファが不足した際の画質の低下を防止することが可能となる。
【００７７】
また、実施例１によれば、第一エンコーダ４０がデータの符号化順を並び替える必要があり、第二エンコーダ４１がIIII符号化であれば、自身が符号化するデータの符号化順を、第一エンコーダ４０が並び替えた符号化順に同期させる。すなわち、信号分離部３０によって同一の入力画像から分離されたデータ間でデータ容量の割り当てを行うこととなる。従って、復号するデータの総データ容量は低下することがなく、復号後の画質の低下をさらに防止することが可能となる。
【実施例２】
【００７８】
さて、これまで実施例１について説明したが、上述した実施例１以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、種々の異なる実施例を（１）〜（４）に区分けして説明する。
【００７９】
（１）割り当て容量
上記した例では、符号化されるデータの符号化難易度およびバッファの残容量に基づいて割り当て容量を決定する場合について説明したが、本実施例はこれに限定するものではなく、例えば、どちらか一方のエンコーダで符号化されるデータの割り当て容量に重み付けをする場合であってもよい。以下に、変形例として割り当て容量の重み付けの一例を記す。
【００８０】
割り当て容量の重み付けは、レート制御部５０が、符号化されるデータの重要度に基づいて、割り当て容量を決定することにより行われる。具体的には、レート制御部５０は、「Ｘｎ：エンコーダｎの符号化難易度」、「Ｔａｒｇｅｔ  ｎ：エンコーダｎへの割り当て容量」、「Ｍａｘ  Ｄａｔａ：最大許容容量」を用いて算出する割り当て容量に、所定の値を積算する。
【００８１】
例えば、第一エンコーダ４０で符号化する分離データＡに重み付けを行う場合、レート制御部５０は、「Ｔａｒｇｅｔ  １＝Ｍａｘ  Ｄａｔａ＊Ｘ１／（Ｘ１＋Ｘ２）」に「２」を積算し、「Ｔａｒｇｅｔ  ２＝Ｍａｘ  Ｄａｔａ＊Ｘ２／（Ｘ１＋Ｘ２）」に「１／２」を積算する。
【００８２】
上記した例によれば、レート制御部５０は、さらに、符号化されるデータの重要度に基づいて、符号化データの容量を決定する。従って、符号化率を任意に決定することが可能となる。
【００８３】
（２）エンコーダ
上記した例では、本願の開示する画像符号化装置が、第一エンコーダおよび第二エンコーダの２つのエンコーダを有し、それぞれに対応する第一バッファ６０および第二バッファ６１に符号化データを格納する場合について説明したが、本実施例はこれに限定されるものではなく、３つ以上のエンコーダを有し、それぞれに対応するバッファに符号化データを格納する場合であってもよい。
【００８４】
（３）システム構成等
また、上記の実施例において説明した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に更新することができる。例えば、実施例１における画像符号化順において、第二エンコーダ４１が決定した符号化順に第一エンコーダ４０が符号化順を同期させる場合であってもよい。
【００８５】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示された構成要素と同一であることを要しない。すなわち、各処理部および各記憶部の分散・統合の具体的形態（例えば、図１の形態）は図示のものとは限られない。例えば、信号分離部３０にレート制御部５０が内蔵される場合であってもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００８６】
（４）画像符号化プログラム
ところで、上記の実施例１では、ハードウェアロジックによって各種の処理を実現する場合を説明したが、本実施例はこれに限定されるものではなく、予め用意されたプログラムをコンピュータで実行するようにしてもよい。そこで、以下では、図７を用いて上記の実施例１に示した画像符号化装置１０と同様の機能を有する画像符号化プログラムを実行するコンピュータの一例を説明する。図７は、実施例１における画像符号化プログラムを実行するコンピュータを説明するための図である。
【００８７】
図７に示すように、情報処理装置としてのコンピュータ１０００は、キーボード１０２０、モニタ１０３０、ＲＡＭ１０４０、ＨＤＤ１０５０、ＣＰＵ１０６０およびＲＯＭ１０７０を有する。そして、キーボード１０２０、モニタ１０３０、ＲＡＭ１０４０、ＨＤＤ１０５０、ＣＰＵ１０６０およびＲＯＭ１０７０は、バス１０１０などで接続される。なお、図示していないが、コンピュータ１０００は、ネットワークを介して、デコーダと接続されている。
【００８８】
ＲＯＭ１０７０には、上記の実施例１に示した画像符号化装置１０と同様の機能を発揮する画像符号化プログラム、つまり、図７に示すように、信号分離プログラム１０７１、第一エンコーダプログラム１０７２、第二エンコーダプログラム１０７３、レート制御プログラム１０７４、多重送出プログラム１０７５が予め記憶されている。なお、これらのプログラム１０７１〜１０７５については、図１に示した画像符号化装置１０の各構成要素と同様、適宜統合または分散してもよい。
【００８９】
そして、ＣＰＵ１０６０が、これらのプログラム１０７１〜１０７５をＲＯＭ１０７０から読み出して実行することで、図７に示すように、各プログラム１０７１〜１０７５は、信号分離プロセス１０６１、第一エンコーダプロセス１０６２、第二エンコーダプロセス１０６３、レート制御プロセス１０６４、多重送出プロセス１０６５として機能するようになる。なお、各プロセス１０６１〜１０６５は、図１に示した、信号分離部３０、第一エンコーダ４０、第二エンコーダ４１、レート制御部５０、多重送出部７０にそれぞれ対応する。
【００９０】
また、ＨＤＤ１０５０には、図７に示すように、第一符号化データ１０５１および第二符号化データ１０５２が設けられる。この第一符号化データ１０５１および第二符号化データ１０５２は、それぞれ図１に用いた第一バッファ６０および第二バッファ６１に対応する。そして、ＣＰＵ１０６０は、第一符号化データ１０４１および第二符号化データ１０４２をそれぞれ第一符号化データ１０５１および第二符号化データ１０５２に対して登録し、この第一符号化データ１０４１および第二符号化データ４２を読み出してＲＡＭ１０４０に格納する。そして、ＣＰＵ１０６０は、ＲＡＭ１０４０に格納された第一符号化データ１０４１および第二符号化データ１０４２に基づいて画像符号化処理を実行する。
【００９１】
なお、上記した各プログラム１０７１〜１０７５については、必ずしも最初からＲＯＭ１０７０に記憶させておく必要は無く、例えばコンピュータ１０００に挿入されるフレキシブルディスク（ＦＤ）、ＣＤ−ＲＯＭ、ＭＯディスク、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」、または、コンピュータ１０００の内外に備えられるＨＤＤなどの「固定用物理媒体」、さらには、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１０００に接続される「他のコンピュータ（またはサーバ）」などに各プログラムを記憶させておき、コンピュータ１０００がこれらから各プログラムを読み出して実行するようにしてもよい。
【００９２】
以上の本実施例を含む実施形態に関し、更に以下の付記を開示する。
【００９３】
（付記１）入力画像を複数の信号に分離する信号分離部と、
前記信号分離部によって分離された前記複数の信号それぞれを符号化する複数の符号化部と、
前記複数の符号化部それぞれによって符号化されたデータそれぞれを記憶する記憶部と、
前記記憶部によって記憶された符号化データを多重化したデータを出力するデータ出力部と、
前記複数の信号それぞれの統計情報量および前記記憶部の現時点での合計残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化部からそれぞれの記憶部に出力されるように制御する制御部と、
を有したことを特徴とする画像符号化装置。
【００９４】
（付記２）前記複数の符号化部のうち所定の符号化部が信号の符号化順序を変更した場合、当該所定の符号化部以外の符号化部は、IIII符号化であれば、自身が符号化する信号の符号化順序を前記所定の符号化部が変更した順序に変更することを特徴とする付記１に記載の画像符号化装置。
【００９５】
（付記３）前記制御部は、さらに、符号化される信号の重要度に基づいて、前記符号化データの容量を決定することを特徴とする付記１または２に記載の画像符号化装置。
【００９６】
（付記４）入力画像を複数の信号に分離する信号分離ステップと、
前記信号分離ステップによって分離された前記複数の信号それぞれを符号化する複数の符号化ステップと、
前記複数の符号化ステップそれぞれによって符号化されたデータをそれぞれ所定の記憶部に格納する記憶ステップと、
前記所定の記憶部によって記憶された符号化データを多重化したデータを出力するデータ出力ステップと、
前記複数の信号それぞれの統計情報量および前記記憶部の現時点での合計残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化ステップからそれぞれの記憶部に出力されるように制御する制御ステップと、
を含んだことを特徴とする画像符号化方法。
【００９７】
（付記５）前記複数の符号化ステップのうち所定の符号化ステップが信号の符号化順序を変更した場合、当該所定の符号化ステップ以外の符号化ステップは、IIII符号化であれば、自身が符号化する信号の符号化順序を前記所定の符号化ステップが変更した順序に変更することを特徴とする付記４に記載の画像符号化方法。
【００９８】
（付記６）前記制御ステップは、さらに、符号化される信号の重要度に基づいて、前記符号化データの容量を決定することを特徴とする付記４または５に記載の画像符号化方法。
【００９９】
（付記７）入力画像を複数の信号に分離する信号分離手順と、
前記信号分離手順によって分離された前記複数の信号それぞれを符号化する複数の符号化手順と、
前記複数の符号化手順それぞれによって符号化されたデータをそれぞれ所定の記憶部に格納する記憶手順と、
前記所定の記憶部によって記憶された符号化データを多重化したデータを出力するデータ出力手順と、
前記複数の信号それぞれの統計情報量および前記記憶部の現時点での合計残容量に基づいて、当該複数の信号それぞれの符号化データの容量を決定し、当該決定した容量の符号化データが、前記複数の符号化手順からそれぞれの記憶部に出力されるように制御する制御手順と、
をコンピュータに実行させることを特徴とする画像符号化プログラム。
【０１００】
（付記８）前記複数の符号化手順のうち所定の符号化手順が信号の符号化順序を変更した場合、当該所定の符号化手順以外の符号化手順は、IIII符号化であれば、自身が符号化する信号の符号化順序を前記所定の符号化手順が変更した順序に変更することを特徴とする付記７に記載の画像符号化プログラム。
【０１０１】
（付記９）前記制御手順は、さらに、符号化される信号の重要度に基づいて、前記符号化データの容量を決定することを特徴とする付記７または８に記載の画像符号化プログラム。
【符号の説明】
【０１０２】
１０  画像符号化装置
２０  入力用Ｉ／Ｆ
２１  出力用Ｉ／Ｆ
３０  信号分離部
４０  第一エンコーダ
４１  第二エンコーダ
５０  レート制御部
６０  第一バッファ
６１  第二バッファ
７０  多重送出部
８０  ネットワーク
９０  デコーダ
【図１】
2010259025.tif 000003
【図２】
2010259025.tif 000004
【図３】
2010259025.tif 000005
【図４】
2010259025.tif 000006
【図５】
2010259025.tif 000007
【図６】
2010259025.tif 000008
【図７】
2010259025.tif 000009
【図８】
2010259025.tif 000010
【図９】
2010259025.tif 000011