(57)【要約】      （修正有）【課題】ビットプレーン毎の符号化データの取捨選択により、ＰピクチャやＢピクチャのような予測フレーム画像に、徐々にビットプレーンの切り捨てによる誤差が累積されていくことを抑制して画像の劣化を防いだ動画像符号化装置を提供する。【解決手段】入力したフレームを複数のブロックに分割するブロック分割部３１と、フレーム内符号化モードの場合にはそのままＤＷＴ部３３に出力し、フレーム間符号化モードの場合には、動き補償部４２からの予測データとの差分を演算する差分演算部３２と、ビットプレーンを符号化するＤＷＴ演算部３３と、量子化部３４と、エントロピー符号化部３５と、目標とする符号量以下になるよう、最下位ビット位置から上位に向かうビットプレーンの符号化データを切り捨てるビット切り捨て部３６とを備え、フレーム内符号化モードを行った場合にのみ、逆量子化部３９、逆ＤＷＴ部４０を実行させ、フレームメモリ４１を更新する。【選択図】図１
2005295505.tif 000002
【特許請求の範囲】
【請求項１】
動画像を構成するフレームの画像データを順次入力し、符号化する動画像符号化装置であって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択手段と、
入力したフレームの画像データを複数のブロックに分割する分割手段と、
前記モード選択手段の出力に応じて符号化された画像データをローカルデコードする復号手段と、
前記第１の符号化モードでは、前記分割手段で分割して得られたブロック画像に基づき従前のローカルデコードされたフレームから予測データを抽出し、前記分割したブロック画像と前記予測データとを差分したブロックを出力し、第２の符号化モードでは前記分割手段で分割したブロックを出力する演算手段と、
前記演算手段で得られたブロックを空間周波数成分データに変換する変換手段と、
変換して得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に中間的な符号化データを生成する符号化データ生成手段と、
生成された符号化データ中の最下位ビット位置から上位ビット位置に向かう所望とするビットプレーンの符号化データまでを切り捨てることで、符号化データ量を調整する調整手段と、
前記調整手段により調整された符号化データを出力する出力手段と
を備えることを特徴とする動画像符号化装置。
【請求項２】
前記復号手段は、前記第２の符号化モードにより符号化された画像データに対してのみローカルデコードすることを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記演算手段で参照するローカルデコードされたフレームとは、前記第２の符号化モードで演算された画像データのローカルデコード画像であることを特徴とする請求項１または２に記載の動画像符号化装置。
【請求項４】
前記変換手段は、離散ウェーブレット変換であることを特徴とする請求項１乃至３のいずれか１項に記載の動画像符号化装置。
【請求項５】
更に、前記調整手段によるビットプレーンの符号化データの切り捨てを行う／行わないを指示する指示手段を備えることを特徴とする請求項１乃至４のいずれか１項に記載の動画像符号化装置。
【請求項６】
前記モード選択手段は、入力するフレーム数が所定数になった後の最初に入力するフレームについて前記第２の符号化モードを選択することを特徴とする請求項１乃至５のいずれか１項に記載の動画像符号化装置。
【請求項７】
前記復号手段は、前記調整手段により調整された符号化データをローカルデコードすることを特徴とする請求項１乃至６のいずれか１項に記載の動画像符号化装置。
【請求項８】
動画像を構成するフレームの画像データを順次入力し、符号化する動画像符号化装置の制御方法であって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択工程と、
入力したフレームの画像データを複数のブロックに分割する分割工程と、
前記モード選択手段の出力に応じて符号化された画像データをローカルデコードする復号工程と、
前記第１の符号化モードでは、前記分割工程で分割して得られたブロック画像に基づき従前のローカルデコードされたフレームから予測データを抽出し、前記分割したブロック画像と前記予測データとを差分したブロックを出力し、前記第２の符号化モードでは前記分割工程で分割したブロックを出力する演算工程と、
前記演算工程で得られたブロックを空間周波数成分データに変換する変換工程と、
前記変換して得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に中間的な符号化データを生成する符号化データ生成工程と、
前記生成された符号化データ中の最下位ビット位置から上位ビット位置に向かう所望とするビットプレーンの符号化データまでを切り捨てることで、符号化データ量を調整する調整工程と、
前記調整工程で調整された符号化データを出力する出力工程と
を備えることを特徴とする動画像符号化装置の制御方法。
【請求項９】
コンピュータが読み込み実行することで、動画像を構成するフレームを順次入力し、符号化する動画像符号化装置として機能するコンピュータプログラムであって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択手段と、
入力したフレームの画像データを複数のブロックに分割する分割手段と、
前記モード選択手段の出力に応じて符号化された画像データをローカルデコードする復号手段と、
前記第１の符号化モードでは、前記分割手段で分割して得られたブロック画像に基づき従前のローカルデコードされたフレームから予測データを抽出し、前記分割したブロック画像と前記予測データとを差分したブロックを出力し、前記第２の符号化モードでは前記分割手段で分割したブロックを出力する演算手段と、
前記演算手段で得られたブロックを空間周波数成分データに変換する変換手段と、
前記変換して得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に中間的な符号化データを生成する符号化データ生成手段と、
前記生成された符号化データ中の最下位ビット位置から上位ビット位置に向かう所望とするビットプレーンの符号化データまでを切り捨てることで、符号化データ量を調整する調整手段と、
前記調整手段により調整された符号化データを出力する出力手段
として機能することを特徴とするコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【請求項１１】
動画像を構成するフレームの画像データを順次入力し、符号化する動画像符号化装置であって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択手段と、
入力したフレームの画像データを複数のブロックに分割する分割手段と、
少なくとも１フレーム分の画像データを記憶する記憶手段と、
前記モード選択手段で前記第１の符号化モードが選択された場合には、前記分割手段で分割して得られたブロック画像に基づき、前記記憶手段に記憶された画像データから予測データを抽出し、抽出した予測データと前記ブロック画像との差分を出力し、前記記モード選択手段で前記第２の符号化モードが選択された場合には、前記分割手段で分割されたブロック画像を出力する演算手段と、
該演算手段より出力されたブロックを空間周波数成分データに変換する変換手段と、
該変換手段で得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に符号化する符号化手段と、
前記モード選択手段によって前記第２の符号化モードを選択した場合、前記符号化手段で生成された符号化データをローカルデコードし、デコードして得られた画像データで前記記憶手段を更新する更新手段と
を備えることを特徴とする動画像符号化装置。
【請求項１２】
前記符号化手段は、
最上位のビットプレーンのビット位置をＮmax、ｎ（０≦ｎ≦Ｎmax）目のビットプレーンの符号化データをＣ（ｉ）、その符号化データ量をＬ（Ｃ（ｉ））、１フレームの許容符号量を示す閾値をＴとしたとき、
ΣＬ（Ｃ（Ｎmax−ｋ））≦Ｔ
を満たす最大ｋまでの符号化データＣ（Ｎmax）,Ｃ（Ｎmax−１）、…、Ｃ（Ｎmax−ｋ）を有効な符号化データとして出力し、符号化データＣ（０）、…、Ｃ（Ｎmax−ｋ−１）まで破棄することを特徴とする請求項１１に記載の動画像符号化装置。
【請求項１３】
前記閾値Ｔは、前記第１、第２の符号化モードで異なることを特徴とする請求項１２に記載の動画像符号化装置。
【請求項１４】
少なくとも１フレーム分の画像データを記憶する記憶手段を備え、動画像を構成するフレームの画像データを順次入力し、符号化する動画像符号化装置の制御方法であって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択工程と、
入力したフレームの画像データを複数のブロックに分割する分割工程と、
前記モード選択工程で前記第１の符号化モードが選択された場合には、前記分割工程で分割して得られたブロック画像に基づき、前記記憶手段に記憶された画像データから予測データを抽出し、抽出した予測データと前記ブロック画像との差分を出力すると共に、前記記モード選択工程で前記第２の符号化モードが選択された場合には、前記分割工程で分割されたブロック画像を出力する演算工程と、
該演算工程より出力されたブロックを空間周波数成分データに変換する変換工程と、
該変換工程で得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に符号化する符号化工程と、
前記モード選択工程によって前記第２の符号化モードを選択した場合、前記符号化工程で生成された符号化データをローカルデコードし、デコードして得られた画像データで前記記憶手段を更新する更新工程と
を備えることを特徴とする動画像符号化装置の制御方法。
【請求項１５】
少なくとも１フレーム分の画像データを記憶する記憶手段を備え、動画像を構成するフレームの画像データを順次入力し、符号化する動画像符号化装置用のコンピュータプログラムであって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択手段と、
入力したフレームの画像データを複数のブロックに分割する分割手段と、
前記モード選択手段で前記第１の符号化モードが選択された場合には、前記分割手段で分割して得られたブロック画像に基づき、前記記憶手段に記憶された画像データから予測データを抽出し、抽出した予測データと前記ブロック画像との差分を出力すると共に、前記記モード選択手段で前記第２の符号化モードが選択された場合には、前記分割手段で分割されたブロック画像を出力する演算手段と、
該演算手段より出力されたブロックを空間周波数成分データに変換する変換手段と、
該変換手段で得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に符号化する符号化手段と、
前記モード選択手段によって前記第２の符号化モードを選択した場合、前記符号化手段で生成された符号化データをローカルデコードし、デコードして得られた画像データで前記記憶手段を更新する更新手段
として機能することを特徴とするコンピュータプログラム。
【請求項１６】
請求項１５に記載のコンピュータプログラムを格納したことを特徴とするコピー可読記憶媒体。
【請求項１７】
符号化された動画像データを復号する動画像復号装置であって、
少なくとも１フレーム分の画像データを記憶する記憶手段と、
入力した符号化データに基づき、注目フレームがフレーム間の相関を利用した第１の符号化モードによる符号化データであるか、フレーム単独で符号化する第２の符号化モードによる符号化データであるのかを判定する判定手段と、
注目フレームの符号化データを復号する復号手段と、
前記判定手段で注目フレームが前記第１の符号化モードによる符号化データであると判定された場合、前記復号手段による復号結果は差分画像データであるものとし、前記記憶手段に記憶された画像データと前記差分画像データとを加算することでフレーム画像を生成すると共に、前記判定手段で注目フレームが前記第２の符号化モードによる符号化データであると判定された場合には、復号結果をフレーム画像として出力する加算手段と、
前記判定手段で注目フレームが前記第２の符号化モードによる符号化データであると判定された場合、前記加算手段より出力されたフレーム画像で前記記憶手段を更新する更新手段と
を備えることを特徴とする動画像復号装置。
【請求項１８】
少なくとも１フレーム分の画像データを記憶する記憶手段を有し、符号化された動画像データを復号する動画像復号装置の制御方法であって、
入力した符号化データに基づき、注目フレームがフレーム間の相関を利用した第１の符号化モードによる符号化データであるか、フレーム単独で符号化する第２の符号化モードによる符号化データであるのかを判定する判定工程と、
注目フレームの符号化データを復号する復号工程と、
前記判定工程で注目フレームが前記第１の符号化モードによる符号化データであると判定された場合、前記復号工程による復号結果は差分画像データであるものとし、前記記憶手段に記憶された画像データと前記差分画像データとを加算することでフレーム画像を生成すると共に、前記判定工程で注目フレームが前記第２の符号化モードによる符号化データであると判定された場合には、復号結果をフレーム画像として出力する加算工程と、
前記判定工程で注目フレームが前記第２の符号化モードによる符号化データであると判定された場合、前記加算工程より出力されたフレーム画像で前記記憶手段を更新する更新工程と
を備えることを特徴とする動画像復号装置の制御方法。
【請求項１９】
少なくとも１フレーム分の画像データを記憶する記憶手段を有し、符号化された動画像データを復号する動画像復号装置を制御するためのコンピュータプログラムであって、
入力した符号化データに基づき、注目フレームがフレーム間の相関を利用した第１の符号化モードによる符号化データであるか、フレーム単独で符号化する第２の符号化モードによる符号化データであるのかを判定する判定手段と、
注目フレームの符号化データを復号する復号手段と、
前記判定手段で注目フレームが前記第１の符号化モードによる符号化データであると判定された場合、前記復号手段による復号結果は差分画像データであるものとし、前記記憶手段に記憶された画像データと前記差分画像データとを加算することでフレーム画像を生成すると共に、前記判定手段で注目フレームが前記第２の符号化モードによる符号化データであると判定された場合には、復号結果をフレーム画像として出力する加算手段と、
前記判定手段で注目フレームが前記第２の符号化モードによる符号化データであると判定された場合、前記加算手段より出力されたフレーム画像で前記記憶手段を更新する更新手段
として機能することを特徴とするコンピュータプログラム。
【請求項２０】
請求項１９に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は動画像データの符号化技術に関するものである。
【背景技術】
【０００２】
近年、ネットワーク、とりわけインターネット上に流れるコンテンツは文字情報から静止画像情報、さらには動画像情報へと大容量化、多様化している。これに合わせて、情報量を圧縮する符号化技術の開発も進み、開発された符号化技術は国際標準化によって広く普及するようになった。
【０００３】
一方で、ネットワーク自体も大容量化、多様化が進んでおり、１つのコンテンツが送信側から受信側に届くまでに様々な環境を通過することになった。また、送信／受信側機器の処理性能も多様化している。送受信機器の主として用いられるパーソナルコンピュータ等の汎用情報処理装置（以下、ＰＣという）はＣＰＵ性能、グラフィクス性能など、大幅な性能向上が進む一方、ＰＤＡ、携帯電話機、ＴＶ，ハードディスクレコーダなど、処理性能の異なる様々な機器がネットワーク接続機能を持つようになってきている。このため、１つのデータで、変化する通信回線容量や受信側機器の処理性能に対応できるスケーラビリティという機能が注目されている。
【０００４】
このスケーラビリティ機能を持つ静止画像符号化方式としてＪＰＥＧ２０００符号化方式が広く知られている。この方式は国際標準化され、ＩＳＯ／ＩＥＣ１５４４４−１（Information technology -- JPEG 2000 image coding system -- Part 1: Core coding system）に詳細が記述されている。その特徴は入力された画像データに対して離散ウェーブレット変換（ＤＷＴ：Ｄｉｓｃｒｅａｔｅ Ｗａｖｅｌｅｔ Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）を施し、複数周波数帯に分離する。それらの係数を量子化し、その値をビットプレーン毎に算術符号化するというものである。ビットプレーンを必要な数だけ符号化したり、復号したりすることで、きめの細かい階層の制御を可能にしている。
【０００５】
また、ＪＰＥＧ２０００符号化方式では、従来の符号化技術には無い、画像の中で興味がある領域の画質を相対的に向上させるＲＯＩ（Ｒｅｇｉｏｎ  Ｏｆ  Ｉｎｔｅｒｅｓｔ）といった技術も実現している。
【０００６】
図８にＪＰＥＧ２０００符号化方式の符号化手順を示す。タイル分割部９００１は入力画像を複数の領域（タイル）に分割する。この機能はオプションである。ＤＷＴ部９００２は離散ウェーブレット変換を行い、周波数帯に分離する。量子化部９００３で、各係数を量子化する。ただし、この機能はオプションである。ＲＯＩ部９００７はオプションであり、興味のある領域を設定し、量子化部９００３でシフトアップを行う。エントロピー符号化部９００４でＥＢＣＯＴ（Ｅｍｂｅｄｅｄ Ｂｌｏｃｋ Ｃｏｄｉｎｇ ｗｉｔｈ Ｏｐｔｉｍｉｚｅｄ Ｔｒｕｎｃａｔｉｏｎ）方式でエントロピー符号化を行い、符号化されたデータはビットプレーン切り捨て部９００５で必要に応じて下位ビットプレーンを切り捨ててレート制御を行う。符号形成部９００６でヘッダ情報を付加し、種々のスケーラビリティの機能を選択して符号化データを出力する。
【０００７】
図９にＪＰＥＧ２０００符号化方式の復号手順を示す。符号解析部９０２０はヘッダを解析し、階層を構成するための情報を得る。ビットプレーン切り捨て部９０２１は入力される符号化データを内部バッファの容量、復号処理能力に対応して、下位のビットプレーンを切り捨てる。エントロピー復号部９０２２はＥＢＣＯＴ符号化方式の符号化データを復号し、量子化されたウェーブレット変換係数を得る。逆量子化部９０２３はこれに逆量子化を施し、逆ＤＷＴ部９０２４は逆離散ウェーブレット変換を施して画像データを再生する。タイル合成部９０２５は複数のタイルを合成して画像データ再生する。
【０００８】
このＪＰＥＧ２０００符号化方式を動画像の各フレームに対応させることで動画像符号化を行うＭｏｔｉｏｎ  ＪＰＥＧ２０００方式（ＩＳＯ／ＩＥＣ１５４４４−３（Information technology -- JPEG 2000 image coding system Part 3: Motion JPEG 2000））も勧告されている。この方式ではフレーム単位に独立に符号化処理が行われており、時間相関を用いて符号化を行わないため、フレーム間に冗長性が残る。このため、時間相関を用いた動画像符号化方式に比べて符号量を効果的に削減することは難しいという問題がある。
【０００９】
一方で、ＭＰＥＧ符号化方式では動き補償を行い、符号化効率の改善を図っている（非特許文献１）。図１０にその符号化の手順を示す。ブロック分割部９０３１で８×８の画素ブロックに分割し、差分部９０３２で動き補償による予測データを引き、ＤＣＴ部９０３３で離散コサイン変換を行い、量子化部９０３４で量子化を行う。その結果はエントロピー符号化部９０３５で符号化され、符号形成部９０３６でヘッダ情報を付加して、符号化データを出力する。
【００１０】
同時に、逆量子化部９０３７で逆量子化し、逆ＤＣＴ部９０３８で離散コサイン変換の逆変換を施し、加算部９０３９で予測データを加算してフレームメモリ９０４０に格納する。動き補償部９０４１は入力画像とフレームメモリ９０４０に格納されている参照フレームを参照して動きベクトルを求め、予測データを生成する。
【特許文献１】「最新ＭＰＥＧ教科書」76ページ他  アスキー出版局1994年
【発明の開示】
【発明が解決しようとする課題】
【００１１】
前述のＭＰＥＧ符号化方式において、ＪＰＥＧ２０００のようなスケーラビリティを実現するようにビットプレーン符号化を行う方式に適用するためには、ビットプレーン符号化の打ち切りによって動き補償での誤差が累積し、画像の劣化を招くといった問題が生じる。すなわち、図１０のＤＣＴ部９０３３と逆ＤＣＴ部９０３８を離散ウェーブレット変換と逆離散ウェーブレット変換に置き換え、エントロピー符号化部９０３５でビットプレーン符号化を行い、符号形成９０３６でビットプレーン切り捨て部９００５を付加してビットプレーン切捨てを行なうと、図９のビットプレーン切り捨て部９０２１で行われたビットプレーンの切捨てによって各フレームで再生されるビットプレーン数が異なる。また、切り捨てられた下位ビットプレーンを０で補填すると本来の誤差と異なる値になるため、ＭＰＥＧで言うＰピクチャから、更なるＰピクチャやＢピクチャを生成すると、誤差が累積されることになってしまい、動画像として画質が悪くなってしまう。
【００１２】
本発明は、前記課題に鑑みなされたものであり、ビットプレーン符号化の打ち切りによって発生する誤差が、ＰピクチャやＢピクチャのような予測フレーム画像に、徐々に累積されていくことを抑制し、画像の劣化を防ぐことを可能ならしめる技術を提供しようとするものである。
【課題を解決するための手段】
【００１３】
この課題を解決するため、例えば本発明の画像符号化装置は以下の構成を備える。すなわち、
動画像を構成するフレームの画像データを順次入力し、符号化する動画像符号化装置であって、
フレーム間の相関を利用した第１の符号化モード、フレーム単独で符号化する第２の符号化モードをフレーム単位に適応的に選択するモード選択手段と、
入力したフレームの画像データを複数のブロックに分割する分割手段と、
前記モード選択手段の出力に応じて符号化された画像データをローカルデコードする復号手段と、
前記第１の符号化モードでは、前記分割手段で分割して得られたブロック画像に基づき従前のローカルデコードされたフレームから予測データを抽出し、前記分割したブロック画像と前記予測データとを差分したブロックを出力し、第２の符号化モードでは前記分割手段で分割したブロックを出力する演算手段と、
前記演算手段で得られたブロックを空間周波数成分データに変換する変換手段と、
変換して得られた各周波数成分値を表わす各ビット位置のビット情報で構成されるビットプレーン単位に中間的な符号化データを生成する符号化データ生成手段と、
生成された符号化データ中の最下位ビット位置から上位ビット位置に向かう所望とするビットプレーンの符号化データまでを切り捨てることで、符号化データ量を調整する調整手段と、
前記調整手段により調整された符号化データを出力する出力手段とを備える。
【発明の効果】
【００１４】
本発明によれば、ビットプレーン毎の符号化データの取捨選択により最終的な符号化データを生成する場合にあっても、ＰピクチャやＢピクチャのような予測フレーム画像に、徐々にビットプレーンの切り捨てによる誤差が累積されていくことを抑制し、画像の劣化を防ぐことが可能になる。
【発明を実施するための最良の形態】
【００１５】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１６】
＜第１実施形態＞
図１は第１の実施形態における動画像符号化装置のブロック構成図である。本第１実施形態においては、動画像符号化装置が使用する画像の符号化方式として、ＭｏｔｉｏｎＪＰＥＧ２０００符号化方式を例にとって説明するが、これに限定されない。
【００１７】
図１において、３１は入力された画像データをブロック単位に分割するブロック分割部であり、３２は画像データの後述する動き補償によって得られる予測データとの差分を求める差分演算部である。３３は分割されたブロックに対して離散ウェーブレット変換を施すＤＷＴ部である。３４は離散ウェーブレット変換で得られた変換係数を量子化する量子化部であり、３５はＪＰＥＧ２０００符号化方式のＥＢＣＯＴ符号化をビットプレーン毎に行なうエントロピー符号化部であり、３６は符号化データから有効な上位ビットプレーンの符号化データを選択し、下位ビットプレーンの符号化データを切り捨てるビットプレーン切り捨て部であり、３７は必要なヘッダを生成し、ビットプレーン切捨て部３６の出力から符号化データを形成する符号形成部である。
【００１８】
４３はフレーム単位で符号化モードを決定するモード判定部であり、フレーム内符号化（イントラフレーム符号化）モードと、フレーム間符号化（インターフレーム符号化）モードのいずれかを使用するかを判定する。３９は量子化部３４の逆量子化を行う逆量子化部であり、４０はＤＷＴ部３３の逆変換を行う逆ＤＷＴ部である。逆量子化部３９及び逆ＤＷＴ部４０は、モード判定部４３でフレーム内符号化モードで符号化することを決定した場合にのみ実行する。それ故、モード判定部４３による判定結果を受けて、これら逆量子化部３９、逆ＤＷＴ部４０を実行許可を与えるためのスイッチ３８を設けた。
【００１９】
４１は動き補償の参照のために復号画像（逆量子化部３９、逆ＤＷＴ部０４によりローカルデコードされた画像）を格納しておくフレームメモリである。先に説明したように、逆量子化部３９及び逆ＤＷＴ部４０は、フレーム内符号化モード時のみ実行されるので、フレームメモリ４１には、フレーム内符号化した画像の、復号画像結果のみが格納されることになる。４２はフレームメモリ４１と入力画像から動き予測を行い、動きベクトルと予測データを算出する動き補償である。
【００２０】
上記のように構成された動画像符号化装置における動作を以下で説明する。本実施形態においてはフレーム内符号化を行うＩピクチャと、前方予測によるフレーム間符号化を行うＰピクチャだけでＧＯＰ（Group Of Pictures）を構成する場合を説明する。１ＧＯＰは１５フレームで構成されるものとする。通常、再生時には３０フレーム／秒のフレームレートで再生するから、１ＧＯＰは約０．５秒分の動画像データとなる。また、実施形態では、１ＧＯＰには、Ｉピクチャ（フレーム内符号化データ）は１つ、残りの１４フレームはＰピクチャ（フレーム間符号化データ）とし、Ｉピクチャを生成するタイミングは固定とする。なお、Ｉピクチャの数は２以上でも良い。１ＧＯＰ内のＩピクチャの数が増えると、動画像としての画質が良くなるが、代わりに符号化データ量が増えることになる。３０フレーム／秒で再生し、１ＧＯＰが１５フレームで構成されるとした場合、１ＧＯＰ内のＩピクチャは２つ程度で十分であろう。
【００２１】
ブロック分割部３１では入力された動画像の１フレームをＮ×Ｎ（Ｎは自然数）のブロックに分割し（各ブロックは３２×３２画素サイズとする）、各ブロック画像を差分演算部３２と、動き補償部４２へ送る。動き補償部４２は入力されたブロック画像に対するフレームメモリ４１から動きベクトルを算出してその予測データであるブロック画像データを得る。差分演算部３２は、モード判定部４３がフレーム間符号化モード（インターフレーム符号化モード）を選択した場合には、現フレームから予測データを減算する。また、モード判定部４３がフレーム内符号化（イントラフレーム符号化）モードを選択した場合には、差分を取らず（予測データの係数をすべて０にしても良い）、入力フレームの情報をそのままＤＷＴ部３３へ出力する。
【００２２】
ＤＷＴ部３３では、離散ウェーブレット変換を行い、量子化部３４へ出力する。量子化部３４では、離散ウェーブレット変換後の係数を量子化し、エントロピー符号化部３５と逆量子化部３９へ出力する。エントロピー符号化部３５は、量子化された係数をビットプレーン毎に符号化し、ビットプレーン切り捨て部３６へ出力する。ビットプレーン切り捨て部３６では、１ＧＯＰの符号量が所定の符号量に収まるようビットプレーンの切り捨てを行い、符号形成部３７へ出力する。
【００２３】
Ｉピクチャ（フレーム内符号化データ）の符号化データ量の閾値をＴｉ、Ｐピクチャ（フレーム間符号化データ）の符号量の閾値をＴｐと定義したとき、１ＧＯＰのデータ量の許容量はＴｉ×ｎ＋Ｔｐ×ｍで表現できる（実施形態では、ｎ＝１、ｍ＝１４）。ビットプレーン切り捨て部３６がエントロピー符号化部３５より受信する１フレームのデータ量Ｄと定義する。
【００２４】
今、フレーム内符号化モードが選択されている場合において、Ｄ≦Ｔｉなる関係にある場合には、ビットプレーン切り捨て部３６は切り捨てを行わない。Ｄ＞Ｔｉの関係にある場合、ビットプレーン切り捨て部３６は、Ｄ≦Ｔｉなる関係になるまで、エントロピー符号化部３５より入力した最下位ビットプレーンから上位に向かうビットプレーンの符号化データを切り捨てていく。
【００２５】
例えば、ｎビット目のビットプレーンの符号化データをＣ（ｎ）、その符号化データ量をＬ（(Ｃｎ）)とし、最上位ビットをＮmaxとした場合、
Ｌ（Ｃ（Ｎmax））＋Ｌ（Ｃ（Ｎmax−１））＋…＋Ｌ（Ｃ（Ｎmax−ｋ））≦Ｔｉ
を満足するｋの最大値を見つけ出し、Ｃ（Ｎmax）、Ｃ（Ｎmax−１）、…、Ｃ（Ｎmax−ｋ）を有効な符号化データとして出力し、符号化データＣ（Ｎmax−ｋ−１）、Ｃ（Ｎmax−ｋ−２）、…、Ｃ（０）を破棄する。
【００２６】
上記はＰピクチャの場合にも同様である。ただし、Ｐピクチャの場合の閾値はＴｐとなる点で異なる。ＩピクチャはＰピクチャを生成する際の基準となるものであり、その画質が高いことが望まれる。また、Ｉピクチャはフレーム内符号化するピクチャであるので、閾値ＴｉとＴｐの関係はＴｉ＞Ｔｐである。以上の結果、１ＧＯＰのデータ量は、許容データ量以下に維持することが可能となる。なお、閾値Ｔｉ、Ｔｐは適宜決定すればよい。
【００２７】
符号化部３７は符号形成部３７では符号にヘッダ情報を付加して、符号化データを出力する。
【００２８】
逆量子化部３９及び逆ＤＣＴ部４０は、先に説明したように、モード判定部４３からフレーム内符号化モードを示す情報に基づいてスイッチ３８がＯＮになった場合にのみ機能する。それ故、逆量子化部３９、逆ＤＷＴ部４０を経たデータは復元された画像データとなる（差分データではないという意味）。この復元画像データは、フレームメモリに４１に格納されることになる。実施形態の場合、１ＧＯＰにＩピクチャが１つとしているので、フレームメモリ４１が更新されるのは１５フレーム間隔となる。勿論、１ＧＯＰ内にＩピクチャが２つとか、３つにする場合には、それぞれのインターバルでフレームメモリ４１が更新されることになる。
【００２９】
動き補償部４２は、現在符号化対象のフレームをフレーム間符号化する場合にのみ、入力画像とフレームメモリ４１に格納されている参照フレームを参照して動きベクトルを求め、予測データを生成する。
【００３０】
以上の動画像符号化処理の簡単な流れを、図２のフローチャートに従って説明する。同図は、第１実施形態に係る動画像符号化装置における処理手順を示すフローチャートである。
【００３１】
先ず、ステップＳ１００にて、符号化が開始すると符号化モードを表すピクチャタイプフラグPicTypeを０、カウンタcntを０初期化する。このピクチャタイプフラグPicTypeが０である場合には、フレーム間符号化モード、１である場合にはフレーム内符号化モードを示す。カウンタｃｎｔは、フレームを入力するたびにカウントアップするものであり、値１４を越えた場合に再び“０”にリセットされるものである。つまり、０〜１４の範囲を繰り返しカウントする。これは、実施形態では、１ＧＯＰ＝１５フレーム、１ＧＯＰにＩピクチャは１つの例を説明していることに起因する。
【００３２】
次に、ステップＳ１１６にて、フレーム入力が終了したか否かを判定し、否の場合には、ステップＳ１０１以降の処理を繰り返す。なお、フレームの入力終了の判定は、例えば、実施形態の装置がビデオカメラであれば、不図示の録画ボタンがＯＦＦになったか否かで判定する。また、設定されたフレーム数（もしくは時間）になったか否かで判定してもよい。
【００３３】
ステップＳ１０１に進むと、１フレーム分の画像を入力し、ウェーブレット変換するために、ブロックに分割する。このとき、カウンタｃｎｔを“１”だけ増加させる。次いで、ステップＳ１０２にて、入力するフレームをＩピクチャとして符号化するタイミングか否かを判定する。この判定は、カウンタｃｎｔ＝１であるか否かで判断する。
【００３４】
カウンタｃｎｔ＝１であると判断した場合には、ステップＳ１０４に進んで、フラグPicTypeを“１”に設定して、入力したフレームについてはフレーム内符号化モードの符号化処理を設定する。また、カウンタｃｎｔが“１”以外であれば、入力したフレームはフレーム間符号化モードを行うため、ステップＳ１０３にて、フラグPicTypeを“０”に設定する。
【００３５】
ステップＳ１０３、Ｓ１０４のいずれかの処理を行うと、フラグPicTypeが“０”、“１”のいずてかに設定されるが、この判定を行うのが図１のモード判定部４３である。モード判定部４３は、フラグPicTypeに設定された値を信号として、図１の差分演算部３２、逆量子化部３９、逆ＤＷＴ部４０、ビットプレーン切り捨て部３６それぞれに供給されることになる。差分演算部３２は、供給された信号が“１”の場合には、動き補償部４２からの信号を使用せず、入力した各画素ブロックをそのままＤＷＴ部３２に供給し、“０”の場合には動き補償部４２からの画素ブロックと入力ブロックとの差分を演算し、その結果をＤＷＴ部３３に供給する。
【００３６】
ビットプレーン切り捨て部３６では、モード判定部４３からの信号に応じて、閾値Ｔｉ，Ｔｐのいずれかを選択し、選択閾値以下の符号量になるよう、最下位から上位に向かうビットプレーンの符号データの切り捨て処理を行うことになる。
【００３７】
次に、ステップＳ１０５に進み、差分演算部３２からの各ブロックについてＤＷＴ部３２にてＤＷＴ変換を行い、ステップＳ１０６にて、量子化部３４での量子化処理を行わせる。
【００３８】
次のステップＳ１０７では、フラグPicTypeが“１”であるか否か、すなわち、フレーム内符号化モードか否かを判定する。フラグPicTypeが“１”であると判定した場合には、ステップＳ１０８にてスイッチ３８をＯＮにし、逆量子化部３９、逆ＤＷＴ部４０を機能させるように設定する。また、フラグPicTypeが“０”の場合には、スイッチ３８をＯＦＦにし、ステップＳ１０９乃至Ｓ１１１の処理は行わない。
【００３９】
ステップＳ１０９に処理が進むと、逆量子化部３９にて逆量子化処理を行わせ、ステップＳ１１０にて逆ＤＷＴ変換を行い、ステップＳ１１１にて変換結果の画像データをフレームメモリ４１に格納することで、フレームメモリ４１を更新する。
【００４０】
ステップＳ１１３では、エントロピー符号化部３５にてエントロピー符号化を行わせる。このエントロピー符号化はビットプレーン毎の符号化データを生成する処理でもある。
【００４１】
次いで、ステップＳ１１４にて、ビットプレーン切り捨て部３６にて、設定された閾値以内に符号化データが収まるよう、最下位ビットプレーンから上位に向かうビットプレーンの符号化データの切り捨て処理を行わせる。そして、ステップＳ１１５にて１フレーム分の符号化データに所定のヘッダ（この中には、Ｉ、Ｐピクチャのいずれであるのかを示す情報も含まれる）を附加して符号化データを生成し、出力する。このあと、処理はステップＳ１１６に戻り、上記処理を繰り返すことになる。
【００４２】
以上説明したように本実施形態によれば、ビットプレーン符号化を行い、ビットプレーン切り捨てで符号量制御を行う動画像符号化において、フレーム間符号化を行うフレームはフレーム内符号化を行ったフレーム画像のみを参照して動き補償を行うことで、復号側で動き補償による累積誤差、すなわち、ＰピクチャからＰピクチャを生成する場合のような誤差累積されることがないので、画像劣化を抑制させた動画像符号化データを生成することが可能となる。
【００４３】
なお、実施形態では１ＧＯＰを１５フレームで構成し、１ＧＯＰにＩピクチャを１つ、残りの１４フレームをＰピクチャで生成するものとして説明したが、その終わりに近いＰピクチャは、Ｉピクチャから時間的に離れており、動き補償の精度が悪くなる可能性が高い。そのような場合には、Ｉピクチャの個数を２個、乃至３個程度にし、それらの間に挿入するＰピクチャ数を平均的に割り当てることで、比較的動き大きなオブジェクトがある場合にも対処できよう。
【００４４】
また、実施形態では、Ｉピクチャを生成するか否かを、フレーム数をカウントして、そのカウント値に応じて判定するものとしたが、所定時間単位（もしくは所定ＧＯＰ数）の符号化データ量のサイズに応じてＩピクチャを生成するか否かを判定するようにしてもよい。この場合には、Ｉピクチャは固まって生成することは避けるべきであるので、Ｉピクチャを生成した後は、少なくとも１つはＰピクチャを生成するという条件で符号化データを生成することが望ましい。
【００４５】
なお、本実施形態ではＩピクチャとＰピクチャについてのみ説明を行ったが、これに限定されず、双方向予測のＢピクチャを導入しても良い。Ｂピクチャの場合には、２フレームを参照することになるので、フレームメモリの容量を増やし、参照する２フレームの画像をフレームメモリに格納することで実現が可能である。
【００４６】
また、実施形態における図１における各処理は、パーソナルコンピュータ等で実行されるソフトウェアによって実現しても構わない。この場合、動画像データの入力は、ビデオキャプチャカード等を搭載する等で対処できよう。また、通常、コンピュータプログラムは、それを格納したＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体をコンピュータにセットし、システムにコピーもしくはインストールすることで実行可能となるので、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇に含まれる。
【００４７】
また、符号化方式もＪＰＥＧ２０００符号化方式に限定されず、ＭＰＥＧ―４符号化方式のＦＧＳ符号化における拡張レイヤの符号化方式を採用しても構わない。
【００４８】
さらに、双方向予測を行うＢピクチャを導入してもかまわない。この場合、前後のＩピクチャを参照して動き補償を行う事で実現できる。
【００４９】
また、本実施形態では、量子化後の係数に対して逆量子化を行い、復号画像を得たが、これに限定されない。図１１はビット切捨て後の係数に逆量子化をおこない、復号画像を得る場合の構成図である。同図において、エントロピー復号部６１で復号した結果を受けた逆量子化部６０は、切り捨てられたビットの分のシフトを行って、逆量子化を行う機能を有する。これにより、ビット切捨てを考慮した動画像符号化装置を実現できる。
【００５０】
＜第２の実施形態＞
図３は、本発明の第２の実施に係る動画像符号化装置の構成を示すブロック図である。図３において第１実施形態の図１と同様の機能を果たす部分に関しては同じ番号を付与し、その説明については省略する。
【００５１】
図中、１４１４は、入力画像データを格納するフレームメモリであり、１４２はフレームメモリ１４１４と入力画像から動き予測を行い、動きベクトルと予測データを算出する動き補償部である。１４３はモード判定部４３の出力で出力を制御するスイッチであり、フレーム内符号化モードを示す信号を受けた場合には、入力した各ブロックをフレームメモリ１４１４に上書きしていく。そして、フレーム間符号化モードの場合には、スイッチがＯＦＦとなり、フレームメモリ１４１４には書き込まない。このようにすることで、フレームメモリ１４１４には、入力した現フレームより前の、フレーム内符号化を行ったフレームの画像が記憶保持されることになり、第１の実施形態と同様となる。
【００５２】
１３５はＤＷＴ部３３で生成された変換係数をビットプレーン毎に符号化するエントロピー符号化部である。１４４、１４５は外部の指示部１５０から与えられるロスレス選択信号で入出力を選択するセレクタである。
【００５３】
上記のように構成された動画像符号化装置におけるロスレス符号化動作を以下で説明する。第１実施形態と同様にＩピクチャとＰピクチャだけでＧＯＰを構成している例を説明する。また、実施形態では、ＪＰＥＧ２０００を例に説明をするものとするが、これに限定されない。
【００５４】
第１の実施形態と同様に、ブロック分割部３１では入力フレームをブロックに分割し、差分演算部３２と、動き補償部１４２、スイッチ１４３へ送る。モード選択４３は、入力フレームの符号化モードとしてフレーム内符号化モードとフレーム間符号化モードのいずれかを示す信号を生成し、差分演算部３２、動き補償部１４２、スイッチ１４３に出力する。
【００５５】
差分演算部３２は、モード判定部４３が現在のフレームをフレーム間符号化モードを示す信号を受信した場合には、ブロック分割部３１で分割された各ブロックから動き補償による予測データを減算する。フレーム内符号化モードを示す信号を受けた場合には、差分演算は行わず、入力フレームの情報をそのままＤＷＴ部３３へ出力する。ＤＷＴ部３３で離散ウェーブレット変換を行い、エントロピー符号化部１３５へ出力する離散ウェーブレット変換後の係数をビットプレーン単位で符号化し、符号形成部３７へ出力する。エントロピー符号化部１３５は、量子化された係数を符号化し、セレクタ１４４に出力する。セレクタ１４４は外部からロスレス符号化を行うように指示された場合は、ビットプレーン切り捨て部３６を介在させないで、エントロピー符号化部１３５で符号化されたデータを符号形成部３７にダイレクトに出力する。また、ロッシー符号化を行うよう指示された場合には、エントロピー符号化部１３５で生成された符号化データをビットプレーン切り捨て部３６に供給し、その結果を符号形成部３７に供給する。
【００５６】
ビットプレーン切り捨て部３６では、第１の実施形態と同様の処理を行うことになる。すなわち、符号データ量が所定の符号量に収まるようビットプレーンの符号化データの切り捨てを行う。符号形成部３７では符号にヘッダ情報を付加して、符号化データを出力する。
【００５７】
一方、スイッチ１４３は、モード判定部４３からフレーム内符号化モードを示す信号を受信すると、ＯＮになり、フレームメモリ１４１４へ入力フレームを送り書き込む。このとき、動き補償部１４２は動作せず、予測データとして０を差分部３２に出力する。一方、フレーム間符号化モードを示す信号を受信した場合、スイッチ１４３はオフになり、入力フレームはフレームメモリ１４１４へは送らない（フレームメモリ１４１４を更新しない）。動き補償１４２は、現在符号化対象のフレームを入力画像とフレームメモリ１４１４に格納されている参照フレームを参照して動きベクトルを求め、予測データを生成する。すなわち、フレームメモリ１４１は、情報が上書きされるまで、その情報を保持する。
【００５８】
以上、本第２の実施形態における動画像符号化処理の簡単な流れを、図４のフローチャートに従って説明する。
【００５９】
先ず、ステップＳ２００にて、各パラメータを初期化する。そして、ステップＳ２１２にて、符号化処理が終了したと判断するまで、以下のステップＳ２０１以降の処理を繰り返す。ステップＳ２００、Ｓ２１２の処理は第１の実施形態のステップＳ１００、Ｓ１１６と同様である。
【００６０】
ステップＳ２０１に進むと、１フレーム分の画像を入力し、ウェーブレット変換するために、ブロックに分割する。このとき、カウンタｃｎｔを“１”だけ増加させる。次いで、ステップＳ２０２にて、入力するフレームをＩピクチャとして符号化するタイミングか否かを判定する。この判定は、カウンタｃｎｔ＝１であるか否かで判断する。
【００６１】
Ｉピクチャ用の符号化データを作成すると判断した場合には、ステップＳ２０３にて、スイッチ１４３をＯＮにする。そして、ステップＳ２０４にて入力したフレーム画像をフレームメモリ１４１４に格納させることで更新すると共に、フラグPicTypeを“１”に設定する。
【００６２】
一方、入力したフレームをＰピクチャとして符号化する場合には、ステップＳ２０５にて、スイッチ１４３をＯＦＦにして、フレームメモリ１４１４の更新を行わないようにする。次いで、ステップＳ２０６にて、フレームメモリ１４１４に蓄積されている画像と入力された画像データとの間で動き補償を行い、その結果を差分演算部３２に出力させると共に、フラグPicTypeを“０”に設定する。
【００６３】
ステップＳ２０７では、入力画像データあるいは、差分画像データをＤＷＴ部３３にて離散ウェーブレット変換を行わせる。そして、ステップＳ２０８にて、ビットプレーン毎にエントロピー符号化を行なわせる。
【００６４】
次に、ステップＳ２０９にて、ロスレス符号化が指示されているか否かを判定し、ロッシー符号化が指示されていれば、ステップＳ２１０にてビットプレーン切り捨て処理を行わせ、ロスレス符号化が指示されていれば、ステップＳ２１０の処理は行わないようにする。
【００６５】
ステップＳ２１１では、符号化データを入力し、それに必要なヘッダ等を付加して符号形成し、出力する。このあと、処理はステップＳ２１２に戻り、最終フレームであると判断するまで、ステップＳ２０１以下の処理を繰り返す。
【００６６】
以上説明したように本第２の実施形態によれば、ビットプレーン符号化を行なう動画像ロスレス符号化において、フレーム間符号化を行なう際には、過去にフレーム内符号化を行なう対象となったフレーム画像のみを参照して動き補償を行なうことで、第１の実施形態と同様の作用効果を得ることができる。しかも、本第２の実施形態では、第１の実施形態で示した逆量子化部、逆ＤＷＴ部が不要となり、ハードウェアで実現する場合には回路規模を小さなものにでき、ソフトウェアで実現する場合には、ＣＰＵのかかる負担を軽減させることが可能となる。また、第２の実施形態によれば、ビットプレーン切り捨て処理を行うか否かを適宜選択できるので、非可逆な符号化にも対応できる。
【００６７】
なお、本実施形態ではＩピクチャとＰピクチャについてのみ説明を行ったが、これに限定されず、双方向予測のＢピクチャを導入してもフレームメモリを増やし、同様にＩピクチャを参照することで実現が可能である。
【００６８】
また、実施形態における図３における各処理は、パーソナルコンピュータ等で実行されるソフトウェアによって実現しても構わない。この場合、動画像データの入力は、ビデオキャプチャカード等を搭載する等で対処できよう。また、通常、コンピュータプログラムは、それを格納したＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体をコンピュータにセットし、システムにコピーもしくはインストールすることで実行可能となるので、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇に含まれる。
【００６９】
また、符号化方式もＪＰＥＧ２０００符号化方式に限定されず、ＭＰＥＧ―４符号化方式のＦＧＳ符号化における拡張レイヤの符号化方式を採用しても構わない。
【００７０】
＜第３の実施形態＞
次に、第３の実施形態を説明する。図５は、第３の実施形態における動画像符号化装置を示すブロック構成図である。
【００７１】
同図において、３００は装置全体の制御、及び種々の処理を行なう中央演算装置（ＣＰＵ）、３０１は本装置の制御に必要なオペレーティングシステム（ＯＳ）、画像圧縮処理にかかるコンピュータプログラム、並びに、演算に必要な記憶領域を提供するメモリである。３０２は種々の装置をつなぎ、データ、制御信号をやり取りするバスである。
【００７２】
３０３は装置の起動、各種条件の設定、再生の指示を行なうためのスイッチやキーボード、マウス（登録商標）等のポインティングデバイスで構成される入力部である。３０４は上記ＯＳや各種ソフトウェアを蓄積する記憶装置（例えばハードディスク）である。３０５はストリームを記憶媒体に蓄積する記憶装置であり、記憶媒体としては書き込み可能なＣＤディスク、ＤＶＤディスク、磁気テープ等である。３０６は動画像を撮像するカメラである。３０７は画像を表示するモニタであり、３０９は通信回路であり、ＬＡＮ、公衆回線、無線回線、放送電波等で構成されている。３０８は通信回路３０９を介してストリームを送受信する通信インターフェースである。
【００７３】
メモリ３０１には装置全体を制御し、各種ソフトウェアを動作させるためのＯＳや動作させるソフトウェアを格納し、画像データを格納する画像エリア、生成した符号化データを格納する符号エリア、各種演算や符号化の際のパラメータ等や透かしに関するデータ等を格納しておくワーキングエリアが存在する。
【００７４】
このような構成において動画像符号化処理について説明する。カメラ３０６から入力された画像データを符号化し、通信回路３０９に出力する場合を例にとって説明する。
【００７５】
メモリ３０１のメモリの使用、格納状況は図７に示す通りである。メモリ３０１には装置全体を制御し、各種ソフトウェアを動作させるためのＯＳ、動画像符号化する動画像符号化ソフトウェア、動画像からオブジェクトを抽出するオブジェクト抽出ソフトウェア、通信する通信ソフトウェア、カメラ３０５から動画像をフレーム単位で入力する画像入力ソフトウェアが格納されている。動画像符号化ソフトウェアはＭｏｔｉｏｎ  ＪＰＥＧ２０００符号化方式をベースとしたものを例にとって説明するが、これに限定されない。
【００７６】
処理に先立ち、入力部３０３から装置全体に対して起動が指示され、各部が初期化される。入力部３０３からはＭｏｔｉｏｎ ＪＰＥＧ２０００符号化方式との互換性を保つか否かの指示が入力され、記憶装置３０４に格納されているソフトウェアがバス３０２を介してメモリ３０１に展開され、ソフトウェアが起動される。
【００７７】
このような構成において、処理に先立ち、メモリ３０１上の符号エリア、ワーキングエリアを０クリアする。ＪＰＥＧ２０００符号化と互換を保つ場合は、画像エリア２は使用しないため、開放されている。
【００７８】
画像入力ソフトウェアはカメラ３０５で撮像された画像データを1フレームずつ、メモリ３０１上の画像エリアに格納する。その後、オブジェクト抽出ソフトウェアは画像エリアの画像からオブジェクトを抽出し、その形状情報を画像エリアに格納する。
【００７９】
次に、ＣＰＵ３００による動画像符号化ソフトウェアが符号化する動作について図６に示すフローチャートに従って説明する。
【００８０】
まずステップＳ３０１にて、ＭｏｔｉｏｎＪＰＥＧ２０００符号化方式で必要なヘッダを生成して、メモリ３０１上に確保した符号エリアに格納する。通信ソフトウェアは、符号エリアに符号化データが格納されたら、通信インターフェース３０８を介して通信回線３０９に送出し、送出後、符号エリアの該当する領域をクリアする。以後、特に、符号エリアの符号化データの送信については言及しない。
【００８１】
ステップＳ３０２にて、符号化処理の終了判定を行なう。入力部３０３から符号化処理の終了が入力されれば全ての処理を終了する。そうでなければステップＳ３０３に進む。
【００８２】
ステップＳ３０３に処理が進むと、メモリ３０１上の画像エリアから画像データを読み込む。ステップＳ３０４にて、符号化するフレームをフレーム内符号化するか、フレーム間相関符号化するかを決定する。入力部３０３からＭｏｔｉｏｎ  ＪＰＥＧ２０００との互換性を保つことが指示された場合、符号化モードはフレーム内符号化を行なうように決定される。決定された結果はメモリ３０１上のワーキングエリアに格納される。また、Ｍｏｔｉｏｎ  ＪＰＥＧ２０００との互換を保つか否かの情報もワーキングエリアに格納される。
【００８３】
ステップＳ３０５にて、全ブロックの処理が終了したか否かの判定を行なう。全てのブロックの符号化処理を終了したらステップＳ３０２に戻り、次のフレームの符号化処理を行なう。そうでなければステップＳ３０６に進む。
【００８４】
ステップＳ３０６では、メモリ３０１上の画像エリアから符号化するブロックを抽出し、ワーキングエリアに格納する。そして、ステップＳ３０７にて、メモリ３０１上のワーキングエリアの符号化モードを参照し、フレーム内符号化（Ｉピクチャ）であれば、ステップＳ３０８に進む。そうでなければステップＳ３１４に進む。
【００８５】
ステップＳ３０８では、ワーキングエリアに格納されたブロックデータに対して離散ウェーブレット変換を施し、得られた変換係数をワーキングエリアのブロックデータが格納されていた部分に再格納する。そして、ステップＳ３０９にて、ワーキングエリアに格納された変換係数に対して量子化を行い、得られた量子化結果をワーキングエリアの従前の処理で変換係数が格納されていたエリアに格納する。
【００８６】
ステップＳ３１０にて、メモリ３０１上のワーキングエリアのＭｏｔｉｏｎ  ＪＰＥＧ２０００との互換性の情報を参照し、互換性を保つ場合はステップＳ３１７に進み、そうでない場合はステップＳ３１１に進む。
【００８７】
ステップＳ３１１では、メモリ３０１上のワーキングエリアに格納された量子化結果に対して逆量子化を行い、得られた変換係数をワーキングエリアの量子化結果が格納されていた部分に格納する。そして、ステップＳ３１２にて、ワーキングエリアに格納された変換係数に対して逆離散ウェーブレット変換を施し、ステップＳ３１３にて、得られた画像データを画像エリア２に格納する。この画像エリア２に格納された画像が、第１の実施形態におけるフレームメモリ４１に相当するものとなる。
【００８８】
一方、ステップＳ３０７にて、Ｉピクチャ以外であると判断した場合には、ステップＳ３１４にて、画像エリア２に格納された復号画像と、入力された画像データから抽出したブロックとの間で動き補償を行い、動きベクトルと予測誤差データを算出する。そして、動きベクトルデータはＭＰＥＧ−４符号化での動きベクトル符号化と同様に符号化され、メモリ３０１上の符号エリアに格納される。予測誤差データはメモリ３０１上のワーキングエリアに格納される。
【００８９】
次いで、ステップＳ３１５にて、メモリ３０１上のワーキングエリアに格納された予測誤差データに対して、離散ウェーブレット変換を施し、得られた変換係数をワーキングエリアのブロックデータが格納されていた部分に格納する。ステップＳ３１６にて、ワーキングエリアに格納された変換係数に対して量子化を行い、得られた量子化結果をワーキングエリアの変換係数が格納されていた部分に格納する。
【００９０】
ステップＳ３１７では、ステップＳ３０９またはステップＳ３１６で得られた量子化結果をビットプレーン単位で符号化し、メモリ３０１上のワーキングエリアに格納する。そして、ステップＳ３１８にて、ワーキングエリアに格納された符号化データでレート制御で送信できる符号化データを選択して、フレームメモリ３０１上の符号エリアに格納する。次いで、ステップＳ３１９にて、符号エリア上の符号化データを多重化し、送信する。その後、ワーキングエリア、符号エリアをクリアする。その後、処理はステップＳ３０５に戻る。
【００９１】
このような一連の動作により従来の静止画符号化方式と互換性が高い符号化が可能な方式と、フレーム間符号化方式を選択可能になる。
【００９２】
なお、第１実施形態、第２の実施形態の動画像符号化の処理をソフトウェアに実現するようにしても構わないし、第３実施形態の動画像符号化装置をハードウェアでもって実現さても構わない。
【００９３】
＜第４の実施形態＞
図１２は第４の実施形態における動画像復号化装置のブロック構成図である。
【００９４】
本第４実施形態においては、動画像復号化装置が使用する画像の符号化方式として、ＭｏｔｉｏｎＪＰＥＧ２０００符号化方式を例にとって説明するが、これに限定されない。
【００９５】
図１２において、７１は符号列をヘッダ情報と画像符号データ列に分離する符号分離部であり、７２は上記符号列をＪＰＥＧ２０００符号化方式のＥＢＣＯＴ復号処理をビットプレーン毎に行なうエントロピー復号部であり、７３は復号された量子化後係数を逆量子化する逆量子化部であり、７４はＤＷＴ係数に逆ＤＷＴ変換を施す逆ＤＷＴ部である。
【００９６】
７７はフレーム単位で符号化モードを判定するモード判定部であり、フレーム内符号化（イントラフレーム符号化）モードと、フレーム間符号化（インターフレーム符号化）モードのいずれかを判定する。７５は画像データの後述する動き補償によって得られる予測データとの加算を求める加算部である。７９は動き補償の参照のために復号画像を格納しておくフレームメモリである。なお、このフレームメモリ７９には、モード判定部７７でフレーム内符号化モードで復号化することを決定した場合にのみ、復号した画像を格納する。このため、加算演算部７５の出力をフレームメモリ７９に蓄積するための切り替え器８０を設けた。
【００９７】
７８はフレームメモリ７９と入力画像から動き予測を行い、動きベクトルと予測データを算出する動き補償である。
【００９８】
符号分離部７１では、ＧＯＰ単位に符号化データを入力し、符号化データをヘッダ、ＤＣＴ係数に関する符号、動きベクトルの符号などに分離する。エントロピー復号化部７２では分離した符号化をエントロピー復号化し、逆量子化部７３へ出力する。逆量子化部７３ではＤＣ係数に関する情報を逆量子化し、逆ＤＷＴへ出力する。逆ＤＷＴ７４では、逆ＤＷＴを施し、加算部７５へ出力する。
【００９９】
モード判定部７７は、符号分離部７１より得られた情報中の入力符号化データ中のピクチャレイヤのヘッダに基づき、復号化している画像がＩピクチャ、それ以外のいずれかを検出し、その判定結果の情報を加算部７５、動き補償部７８、切り替え器８０へ送る。切り替え器８０はモード判定の結果がＩピクチャの時、加算部７５からの出力がフレーム７９に書き込みを行なう。つまり、フレームメモリ７９は、Ｉピクチャをデコードする場合にのみ、その内容が更新されることになる。
【０１００】
動き補償部７８はエントロピー復号化部７２から出力される動きベクトルの情報とフレームメモリ７９の情報を利用して動き補償し、加算部７５へ補償画像を送る。加算部７５はモード判定の結果がＩピクチャの場合、逆ＤＷＴ７４の結果をそのままブロック結合７６へ結果を送り、Ｉピクチャ以外の場合は動き補償７８から出力された画像と逆ＤＷＴ７４の画像（差分画像となる）を対応するピクセル同士加算しブロック結合７６へ送る。
【０１０１】
以上の動画像復号化処理の簡単な流れを、図１３のフローチャートに従って説明する。同図は、第４実施形態に係る動画像復号化装置における復号処理手順を示すフローチャートである。概要を簡単に説明すると、ステップＳ５００〜ステップＳ５１１までの処理は画像を小領域に分ける小領域単位で行われ、ステップＳ５１２で小領域が結合しビデオフレームを生成し出力するものである。
【０１０２】
先ず、復号化が開始されると（ステップＳ５００）、入力符号の有無を検出し（ステップＳ５０１）、全フレームの復号が終了した場合、復号を終了する（ステップＳ５０２）。全復号が終了していない場合、符号をヘッダ、画像信号符号、動きベクトル符号などに分離する（ステップＳ５０３）。
【０１０３】
次に、エントロピー復号処理を行なう（ステップＳ５０４）。そして、ヘッダ情報から復号しようとしている画像のピクチャタイプを検出する（ステップＳ５０５）。Ｉピクチャの場合、エントロピー復号された結果に対して逆量子化、逆ＤＷＴを施す（ステップＳ５０９〜Ｓ５１０）。その後、復号画像をフレームメモリに格納し（ステップＳ５１１）、その結果をビデオフレームとして出力する（ステップＳ５１２）。
【０１０４】
ステップＳ５０５でピクチャタイプがＩピクチャでない場合、逆量子化、逆ＤＷＴを施し（ステップＳ５０６〜Ｓ５０７）、ステップＳ５１１で格納した復号画像を用いて動き補償を行い（ステップＳ５０８）、その補償画像と逆ＤＷＴ（ステップＳ５０７）の結果と加算して、ビデオフレームとして出力する（ステップＳ５１２）。
【０１０５】
以上説明したように本第４の実施形態によれば、ビットプレーン符号化を行い、ビットプレーン切り捨てで符号量制御が施された動画像符号化データを入力した場合であっても、ＰピクチャからＰピクチャを生成するような誤差累積する復号処理がなくなり、良好な動画像を再生することが可能となる。
【０１０６】
なお、本第４の実施形態でもＩピクチャとＰピクチャについてのみ説明を行ったが、これに限定されず、双方向予測のＢピクチャを導入した符号データでもフレームメモリを増やし、同様にＩピクチャを参照することで実現が可能である。
【０１０７】
また、実施形態における図１２における各処理は、パーソナルコンピュータ等で実行されるソフトウェアによって実現しても構わない。この場合、動画像データの入力は、ビデオキャプチャカード等を搭載する等で対処できよう。また、通常、コンピュータプログラムは、それを格納したＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体をコンピュータにセットし、システムにコピーもしくはインストールすることで実行可能となるので、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇に含まれる。
【０１０８】
また、符号化方式もＪＰＥＧ２０００符号化方式に限定されず、ＭＰＥＧ―４符号化方式のＦＧＳ符号化における拡張レイヤの符号化方式を採用しても構わない。
【０１０９】
以上第１乃至第４の実施形態を説明したが、各処理部に相当する機能はコンピュータプログラムでもって実現できるのは明らかであるから、本発明はコンピュータプログラムをもその範疇とする。また、通常、コンピュータプログラムは、ＣＤ−ＲＯＭ等のコンピュータ可読記憶媒体に記憶されていて、それをコンピュータにセットしてシステムにコピーもしくはインストールすることで実行可能となるわけであるから、当然、そのようなコンピュータ可読記憶媒体も本発明の範疇に入る。
【図面の簡単な説明】
【０１１０】
【図１】第１の実施形態における動画像符号化装置のブロック構成図である。
【図２】第１の実施形態における動画像符号化処理手順を示すフローチャートである。
【図３】第２の実施形態における動画像符号化装置のブロック構成図である。
【図４】第２の実施形態における動画像符号化処理手順を示すフローチャートである。
【図５】第３の実施形態における動画像符号化装置のブロック構成図である。
【図６】第３の実施形態における動画像符号化処理手順を示すフローチャートである。
【図７】第３の実施形態における処理中のメモリマップを示す図である。
【図８】ＪＰＥＧ２０００の画像符号化装置のブロック構成図である。
【図９】ＪＰＥＧ２０００の復号装置のブロック構成図である。
【図１０】従来の動画像符号化装置のブロック構成図である。
【図１１】第１の実施形態における動画像符号化装置の別なブロック構成図である。
【図１２】第４の実施形態における動画像復号装置のブロック構成図である。
【図１３】第４の実施形態における処理手順を示すフローチャートである。
【図１】
2005295505.tif 000003
【図２】
2005295505.tif 000004
【図３】
2005295505.tif 000005
【図４】
2005295505.tif 000006
【図５】
2005295505.tif 000007
【図６】
2005295505.tif 000008
【図７】
2005295505.tif 000009
【図８】
2005295505.tif 000010
【図９】
2005295505.tif 000011
【図１０】
2005295505.tif 000012
【図１１】
2005295505.tif 000013
【図１２】
2005295505.tif 000014
【図１３】
2005295505.tif 000015