(57)【要約】【課題】  サブバンド係数を符号化する符号化方式において、任意形状に対応した高効率の形状符号化、及び符号化データの復号を実現する。【解決手段】  画像データを複数の周波数帯域に分割してサブバンド係数を生成することにより周波数帯域分割を行う周波数帯域分割手段と、  前記画像データの形状を表す形状情報と、前記形状の領域内の前記サブバンド係数とを利用して前記形状の領域外のサブバンド係数を補填するサブバンド係数補填手段と、補填された前記サブバンド係数を符号化して符号化データを生成する符号化手段と、前記形状情報を符号化して形状情報符号化データを生成する形状情報符号化手段とを有する。【選択図】図１
2006050558.tif 000002
【特許請求の範囲】
【請求項１】
画像データを複数の周波数帯域に分割してサブバンド係数を生成することにより周波数帯域分割を行う周波数帯域分割手段と、
前記画像データの形状を表す形状情報と、前記形状の領域内の前記サブバンド係数とを利用して前記形状の領域外のサブバンド係数を補填するサブバンド係数補填手段と、
補填された前記サブバンド係数を符号化して符号化データを生成する符号化手段と、
前記形状情報を符号化して形状情報符号化データを生成する形状情報符号化手段と
を有することを特徴とする画像符号化装置。
【請求項２】
前記周波数帯域分割は離散ウェーブレット変換であることを特徴とする請求項１に記載の画像符号化装置。
【請求項３】
前記周波数帯域分割手段は、
参照される前記領域外の画素について、前記形状情報に基づき、前記領域内の画素データを補填する補填手段
を備えることを特徴とする請求項１又は２に記載の画像符号化装置。
【請求項４】
前記サブバンド係数補填手段は、前記領域内の境界に属するサブバンド係数を繰り返し補填することを特徴とする請求項１乃至３のいずれかに記載の画像符号化装置。
【請求項５】
前記サブバンド係数補填手段は、前記領域内の境界に属する最近傍のサブバンド係数を繰り返し補填することを特徴とする請求項１乃至３のいずれかに記載の画像符号化装置。
【請求項６】
前記サブバンド係数補填手段は、前記領域内の境界に属するサブバンド係数の平均値で補填することを特徴とする請求項１乃至３のいずれかに記載の画像符号化装置。
【請求項７】
画像データを符号化した符号化データと前記画像データの形状を表す形状情報を符号化した形状情報符号化データとを復号する画像復号装置であって、
前記形状情報符号化データを復号して形状情報を生成する形状情報復号手段と、
前記符号化データを復号して、前記画像データを複数の周波数帯域に分割して得られたサブバンド係数を生成する復号手段と、
前記形状情報を参照して、前記形状の領域外の参照されるサブバンド係数にデータを補填して合成することで前記画像データを生成することにより周波数帯域合成を行う周波数帯域合成手段と、
前記形状情報と前記画像データを出力する出力手段と
を有することを特徴とする画像復号装置。
【請求項８】
前記周波数帯域合成は逆離散ウェーブレット変換であることを特徴とする請求項７に記載の画像復号装置。
【請求項９】
前記復号手段が、前記復号された前記符号化データを逆量子化する逆量子化手段を有することを特徴とする請求項７又は８記載の画像復号装置。
【請求項１０】
画像データを複数の周波数帯域に分割してサブバンド係数を生成することにより周波数帯域分割を行う周波数帯域分割工程と、
前記画像データの形状を表す形状情報と、前記形状の領域内の前記サブバンド係数とを利用して前記形状の領域外のサブバンド係数を補填するサブバンド係数補填工程と、
補填された前記サブバンド係数を符号化して符号化データを生成する符号化工程と、
前記形状情報を符号化して形状情報符号化データを生成する形状情報符号化工程と、
を有することを特徴とする画像符号化方法。
【請求項１１】
前記周波数帯域分割が離散ウェーブレット変換であることを特徴とする請求項１０に記載の画像符号化方法。
【請求項１２】
周波数帯域分割工程は、参照される前記領域外の画素について、前記形状情報に基づき、前記領域内の画素データを補填する補填工程を備えることを特徴とする請求項１０又は１１に記載の画像符号化方法。
【請求項１３】
前記サブバンド係数補填工程では、前記領域内の境界に属するサブバンド係数が繰り返し補填されることを特徴とする請求項１０乃至１２のいずれかに記載の画像符号化方法。
【請求項１４】
前記サブバンド係数補填工程では、前記領域内の境界に属する最近傍のサブバンド係数が繰り返し補填されることを特徴とする請求項１０乃至１２のいずれかに記載の画像符号化方法。
【請求項１５】
前記サブバンド係数補填工程では、前記領域内の境界に属するサブバンド係数の平均値で補填されることを特徴とする請求項１０乃至１２のいずれかに記載の画像符号化方法。
【請求項１６】
画像データを符号化した符号化データと前記画像データの形状を表す形状情報を符号化した形状情報符号化データを復号する画像復号方法であって、
前記形状情報符号化データを復号して形状情報を生成する形状情報復号工程と、
前記符号化データを復号して画像データを複数の周波数帯域に分割して得られたサブバンド係数を生成する復号工程と、
前記形状情報を参照して、前記形状の領域外の参照されるサブバンド係数にデータを補填して合成することで前記画像データを生成することにより周波数帯域合成を行う周波数帯域合成工程と、
前記形状情報と前記画像データとを出力する出力工程と
を有することを特徴とする画像復号方法。
【請求項１７】
前記周波数帯域合成が、逆離散ウェーブレット変換であることを特徴とする請求項１６に記載の画像復号方法。
【請求項１８】
前記復号工程では、復号された前記符号化データを逆量子化する逆量子化工程を有することを特徴とする請求項１６又は１７記載の画像復号方法。
【請求項１９】
請求項１０乃至１５のいずれかに記載の画像符号化方法をコンピュータに実行させるための画像符号化プログラム。
【請求項２０】
請求項１６乃至１８のいずれかに記載の画像復号方法をコンピュータに実行させるための画像復号プログラム。
【請求項２１】
請求項１９又は２０に記載のプログラムを記録したコンピュータで読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像符号化装置及び復号装置、画像符号化方法及び復号方法、画像符号化プログラム及び復号プログラム及び記録媒体に関連する。
【背景技術】
【０００２】
近年、ネットワークを介して流れるコンテンツは文字情報から静止画像情報、さらには動画像情報と大容量化、多様化している。これに合わせて、情報量を圧縮する符号化技術の開発も進み、開発された符号化技術は国際標準化によって広く普及するようになった。
【０００３】
一方で、ネットワーク自体も大容量化、多様化が進んでおり、１つのコンテンツが送信側から受信側に届くまでに様々な環境を通過することになった。また、送信／受信側機器の処理性能も多様化している。送受信機器の主として用いられるPCではCPU性能、グラフィクス性能など、大幅な性能向上が進む一方、PDA、携帯電話機、ＴＶ，ハードディスクレコーダなど、処理性能の異なる様々な機器がネットワーク接続機能を持つようになってきている。このため、１つのデータで、変化する通信回線容量や受信側機器の処理性能に対応できるスケーラビリティという機能が注目されている。
【０００４】
このスケーラビリティ機能を持つ静止画像符号化方式としてＪＰＥＧ２０００符号化方式が広く知られている。この方式は国際標準化され、ＩＳＯ／ＩＥＣ１５４４４−１（Information technology -- JPEG ２０００ image coding system -- Part １: Core coding system）に詳細が記述されている。その特徴は入力された画像データに対して離散ウェーブレット変換（ＤＷＴ：Ｄｉｓｃｒｅａｔｅ Ｗａｖｅｌｅｔ Ｔｒａｎｓｆｏｒｍａｔｉｏｎ）を施し、複数周波数帯に分離する。それらの係数を量子化し、その値をビットプレーン毎に算術符号化するというものである。ビットプレーンを必要な数だけ符号化したり、復号したりすることで、きめの細かい階層の制御を可能にしている。
【０００５】
また、ＪＰＥＧ２０００符号化方式では、従来の符号化技術には無い、画像の中で興味がある領域の画質を相対的に向上させるＲＯＩ（Ｒｅｇｉｏｎ  Ｏｆ  Ｉｎｔｅｒｅｓｔ）といった技術も実現している。
【０００６】
図２４にＪＰＥＧ２０００符号化方式の符号化手順を示す。タイル分割部９００１は入力画像を複数の領域（タイル）に分割する。この機能はオプションである。ＤＷＴ部９００２は離散ウェーブレット変換を行い、周波数帯に分離する。量子化部９００３で、各係数を量子化する。ただし、この機能はオプションである。ＲＯＩ部９００７はオプションであり、興味のある領域を設定し、量子化部９００３でシフトアップを行う。エントロピー符号化部９００４でＥＢＣＯＴ（Ｅｍｂｅｄｅｄ Ｂｌｏｃｋ Ｃｏｄｉｎｇ  ｗｉｔｈ  Ｏｐｔｉｍｉｚｅｄ  Ｔｒｕｎｃａｔｉｏｎ）方式でエントロピー符号化を行い、符号化されたデータはビット切り捨て部９００５で必要に応じて下位ビットを切り捨ててレート制御を行う。符号形成部９００６でヘッダ情報を付加し、種々のスケーラビリティの機能を選択して符号化データを出力する。
【０００７】
図２５にＪＰＥＧ２０００符号化方式の復号手順を示す。符号解析部９０２０はヘッダを解析し、階層を構成するための情報を得る。ビット切り捨て部９０２１は入力される符号化データを内部バッファの容量、復号処理能力に対応して、下位のビットを切り捨てる。エントロピー復号部９０２２はＥＢＣＯＴ符号化方式の符号化データを復号し、量子化されたウェーブレット変換係数を得る。逆量子化部９０２３はこれに逆量子化を施し、逆ＤＷＴ部９０２４は逆離散ウェーブレット変換を施して画像データを再生する。タイル合成部９０２５は複数のタイルを合成して画像データ再生する。
【０００８】
このＪＰＥＧ２０００符号化方式を動画像の各フレームに対応させることで動画像符号化を行うＭｏｔｉｏｎ  ＪＰＥＧ２０００方式（ＩＳＯ／ＩＥＣ１５４４４−３（Information technology -- JPEG ２０００ image coding system Part ３: Motion JPEG ２０００））も勧告されている。
【０００９】
一方で、ＭＰＥＧ−４符号化方式ではオブジェクト符号化を行っている（非特許文献１又は非特許文献２参照。）。図２６にその符号化の手順を示す。ブロック分割部９０３１で８ｘ８のブロックに分割し補填部９０３２でパディングを行い、差分部９０３３で動き補償による予測データを引き、ＤＣＴ部９０３４で離散コサイン変換を行い、量子化９０３５で量子化を行う。その結果はエントロピー符号化部９０３６で符号化される。
【００１０】
形状に関する情報はブロック分割部９０４３で符号化単位のブロックに分割され、参照のためにフレームメモリ９０４４に格納されると同時に、動き補償部９０４２で求められた動きベクトルに従って、フレームメモリ９０４４を参照して差分部９０４５でその差異を求め、エントロピー符号化部９０４６で符号化される。
【００１１】
符号形成部９０３７でヘッダ情報を付加して、動きベクトルを符号化して、形状情報の符号化データ、量子化された係数の符号化データと共に出力する。
【００１２】
同時の逆量子化部９０３８で逆量子化し、逆ＤＣＴ部９０３９で離散コサイン変換の逆変換を施し、加算部９０４０で予測データを加算してフレームメモリ９０４１に格納する。動き補償部９０４２は入力画像とフレームメモリ９０４１に格納されている参照フレームを参照して動きベクトルを求め、予測データを生成する。
【非特許文献１】藤原  洋 監修  「画像＆音声圧縮技術のすべて」ＣＱ出版社  ２０００年４月１日発行  ページ１０７〜１１０
【非特許文献２】「ＩＳＯ／ＩＥＣ１４４９６−２」
【発明の開示】
【発明が解決しようとする課題】
【００１３】
前述のＪＰＥＧ２０００のような離散ウェーブレット変換を行う方式に形状符号化を適用するためには、画素単位で補填を行うと変換係数全体に影響が及ぶため、量子化等での劣化を助長してしまう。また、画素単位での補填では周波数空間上で近傍のサブバンド係数との相関が低いため、算術符号化で効率が上がらないといった問題が生ずる。
【００１４】
本発明は上記の問題を考慮して、サブバンド係数を符号化する符号化方式において、任意形状に対応した高効率の形状符号化、及び符号化データの復号を実現することを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するために本発明は、画像データを複数の周波数帯域に分割してサブバンド係数を生成することにより周波数帯域分割を行う周波数帯域分割手段と、  前記画像データの形状を表す形状情報と、前記形状の領域内の前記サブバンド係数とを利用して前記形状の領域外のサブバンド係数を補填するサブバンド係数補填手段と、補填された前記サブバンド係数を符号化して符号化データを生成する符号化手段と、前記形状情報を符号化して形状情報符号化データを生成する形状情報符号化手段とを有することを特徴とする。
【００１６】
また、上記課題を解決するための本発明は更に、画像データを符号化した符号化データと前記画像データの形状を表す形状情報を符号化した形状情報符号化データとを復号する画像復号装置であって、前記形状情報符号化データを復号して形状情報を生成する形状情報復号手段と、前記符号化データを復号して、前記画像データを複数の周波数帯域に分割して得られたサブバンド係数を生成する復号手段と、前記形状情報を参照して、前記形状の領域外の参照されるサブバンド係数にデータを補填して合成することで前記画像データを生成することにより周波数帯域合成を行う周波数帯域合成手段と、前記形状情報と前記画像データを出力する出力手段とを有することを特徴とする。
【発明の効果】
【００１７】
本発明によれば、任意形状に対応した高効率の形状符号化及び符号化データの復号を行うことができる。
【発明を実施するための最良の形態】
【００１８】
以下、添付する図面を参照して本発明の実施形態を説明する。
【００１９】
[第１の実施形態]
以下、本発明の第１の実施形態を、図面を用いて詳細に説明する。図１は本実施形態に係る動画像符号化装置を示すブロック図である。
【００２０】
本実施形態では、動画像符号化装置が使用する画像の符号化方式として、ＭｏｔｉｏｎＪＰＥＧ２０００符号化方式を例にとって説明するが、これに限定されない。また、形状符号化方式として、ＭＰＥＧ−４符号化方式を例にとって説明するがこれに限定されない。
【００２１】
図１において、１は入力された画像データをブロック単位に分割するブロック分割部であり、２は分割されたブロックに対して離散ウェーブレット変換を施すＤＷＴ部である。３は離散ウェーブレット変換で得られたサブバンド係数を量子化する量子化部である。４は量子化結果で領域外のサブバンド係数を補填する係数補填部である。５はＪＰＥＧ２０００符号化方式のＥＢＣＯＴ符号化をビットプレーン毎に行うエントロピー符号化部であり、６はビットレートを調整するビット切り捨て部である。７は入力された形状情報をブロック単位に分割するブロック分割部であり、８はブロック分割された形状情報をＤＷＴ部２の周波数帯に合わせて縮小を行う縮小部である。９はＭＰＥＧ−４符号化方式の形状符号化方式で符号化するエントロピー符号化部である。１０は必要なヘッダを生成し、ビット切り捨て部６とエントロピー符号化部９の出力から符号化データを形成する符号形成部である。
【００２２】
上記のように構成された動画像符号化装置における動画像符号化動作を以下で説明する。
【００２３】
本実施形態では、動画像データをフレーム単位に入力する。同時に別途抽出された形状情報を入力するものとするが、内部で形状情報の抽出を行ってももちろん構わない。ここで、形状情報は、画像データが示す物体内部に含まれるか物体外部であるかを示す識別データであり２値で表される。図２２（ａ）に入力される動画像データを図２２（ｂ）にその形状情報を示す。
【００２４】
ブロック分割部１には動画像データが入力され、ブロック分割部７には形状情報が入力され、それぞれ１フレーム分を保持してブロックに分割し、後段にブロック単位で出力する。ブロック分割部１でブロック分割された動画像データはＤＷＴ部２に入力される。ＤＷＴ部２で行う離散ウェーブレット変換は適用回数を２回とし７分割する場合を例にとって説明するが、これに限定されない。
【００２５】
ブロック分割された形状情報はエントロピー符号化部９と縮小部８に入力される。エントロピー符号化部９ではＭＰＥＧ−４符号化方式の形状符号化方式で符号化され、符号形成部１０に出力される。
【００２６】
縮小部８では入力された形状情報を、ＤＷＴ部２での適用回数に従って、縮小する。本実施形態で説明する適用回数が２回であれば、１／２、１／４の縮小を行った形状情報を生成する。すなわち適用回数をＴとすると（１／２）Ｎ（但し、Ｎ＝１・・・Ｔ）の縮小画像を生成する。縮小された形状符号化はそれぞれの周波数帯に対応しており、これを並べた状態を図２２（ｃ）に示す。
【００２７】
図２にＤＷＴ部２の詳細なブロック図を示す。図２において、５０、６９は水平方向のローパスフィルタ処理を行うＨＬＰＦ部、５３、７２は水平方向のハイパスフィルタ処理を行うＨＨＰＦ部、５７、６３、７６、８２は垂直方向のローパスフィルタ処理を行うＶＬＰＦ部、６０、６６、７９、８５は垂直方向のハイパスフィルタ処理を行うＶＨＰＦ部である。５６、７５は形状情報の水平方向の１／２サブサンプリングを行うサブサンプリング部、５１、５４、７０、７３はフィルタの出力を水平方向に１／２サブサンプリングするサブサンプリング部、５８、６１、６４、６７、７７、８０、８３、８６は垂直方向に１／２サブサンプリングするサブサンプリング部、５２、５５、５９、６２、６５、６８、７１、７４、７８、８１、８４、８７はフィルタ処理結果を格納するメモリである。
【００２８】
ＤＷＴ部２には、ブロック分割部１から画像データが、ブロック分割部７から縮小されていない形状情報が、縮小部８から（１／２）に縮小された形状情報が入力される。画像データはＨＬＰＦ部５０とＨＨＰＦ部５３に入力され、水平方向にフィルタ処理が施される。例えば、ＪＰＥＧ２０００で使用される９−７フィルタを使用する例を取って説明する。すなわち、領域外の部分に関しては仮想的に画素値を補い、水平方向に７タップのローパスフィルタと９タップのハイパスフィルタを施す。但し、これに限定されない。
【００２９】
図３に各フィルタ部の詳細なブロック図を示す。図３において、タップ数はそれぞれのフィルタに依存するがここでは９タップの場合を例にとって説明する。
【００３０】
１００は形状情報の９画素分のデータを蓄積するラッチ群であり、１０１は画像データの９画素分のデータを蓄積するラッチ群である。１０２は入力された形状情報から境界を判定する境界判定器であり、１０３は境界判定器１０２の結果とラッチ群１０１の画像データからフィルタ処理を行うためのデータを生成する補填器であり、１０４は補填器１０３からの出力を係数ごとに格納するラッチ群である。１０５はフィルタ演算を行うフィルタ演算部である。
【００３１】
形状情報とフィルタ処理を行う画素値はラッチ群１００とラッチ群１０１に入力される。境界判定器１０２は形状情報から領域内外を分ける境界を検出し、その状況を補填器１０３に入力する。補填器１０３はフィルタの中央の画素とそれに隣接する領域内画素値に関してはそのままとして、それ以外の画素値を補填する。それ以外の画素について領域内の画素値を用いて境界を境に点対称で補填を行う。
【００３２】
ここで、形状情報に基づく領域内外の判定と、画素値の補填について図５乃至図８を参照して説明する。図５は、入力される画像のデータ例を示す。水平方向に９画素がある状態を示しており、太枠で囲まれた画素が中央であり、その画素値をＡとする。灰色の部分が領域外を表わす。中央から左方向に画素値をＢ、Ｃ、Ｄ、Ｅ、とし、中央から左方向に画素値をＦ、Ｇ、Ｈ、Ｉとする。第１列では中央の画素Ａの左右から領域外となっており、これより境界は中央画素の両脇にあると考えられる。第２列は画素Ｂの左側と画素Ａの右側にあると考えられ、以下、同様に境界を検出することができる。
【００３３】
この境界を境に点対称に拡張・補填を行う。その様子を図６に示す。図６では小文字は複写された結果を表し、ａはＡを複写した値を表し、以下、ｂとＢ、ｃとＣ、ｄとＤ、ｅとＥ、ｆとＦ、ｇとＧ、ｈとＨ、ｉとＩはそれぞれを複写した値を表している。第１列では両方向に向かってＡの画素値を複写する。第２列では画素Ａの右側に画素Ｂの値を複写する。Ｂの左側に対しては画素Ａの値を複写する。画素Ａの２つ右側には画素Ａを画素Ｂの左側に複写した画素ａを複写する。以下同様にして９タップの全てに画素を補填する。以下、第３列以降も同様にして補填を行う。
【００３４】
また、境界の形状によっては複数の領域が存在する場合が生じる。図７にその一例を表す。第１列では画素Ａの領域のほかに画素Ｇ、Ｈ、Ｉからなる領域も存在する。これらに関しても中央の両隣の境界を検出して補填を行う。その結果を図８に示す。第１列では画素Ａを含む領域と画素Ｇ、Ｈ、Ｉを含む領域は離れているため、中央の画素Ａの左右から領域外として補填が行われ、全て画素Ａを複写した画素ａとなる。第２列以下でも同様に中央の画素を含む領域の両側に境界があるものとして補填が行われている。
【００３５】
図３に戻って、補填器１０３で上記のように補填した結果がラッチ群１０４に格納されている。フィルタ演算器１０５はそれぞれの重みを積算し、それらの値を加算して出力することで、図６や図８の画素Ａに対する変換値が出力される。
【００３６】
図２に戻って、変換の結果はサブサンプリング部５１、５４で水平方向に１／２にサブサンプリングされ、メモリ５２、５５に格納される。
【００３７】
入力された形状情報はサブサンプリング部５６で水平方向に１／２にサブサンプリングされ、ＶＬＰＦ部５７、６３とＶＨＰＦ部６０、６６に入力される。各フィルタ部は上記のＨＬＰＦ部５０、ＨＨＰＦ部５３と同様に領域外の値を補填・拡張しながらフィルタ処理を行い、それぞれサブサンプリング部５８、６１、６４、６７に入力され、垂直方向に１／２サブサンプリングされてメモリ５９、６２、６５、６８に格納される。メモリ５９、６２、６５、６８は周波数帯１ＬＬ、１ＬＨ、１ＨＬ、１ＨＨの内容が格納される。
【００３８】
適用回数を２回としたので、１ＬＬに対して同様の変換を施す。ＨＬＰＦ部６９、ＨＨＰＦ部７２に入力されるサイズは入力に対して縦横１／２に縮小されたものであり、それに合わせて縮小部８から縦横１／２に縮小した形状情報を入力することが異なるが処理は同じである。その結果、メモリ７８、８１、８４、８７に周波数帯２ＬＬ、２ＨＬ、２ＬＨ、２ＨＨの内容が格納される。それぞれの周波数帯の関係を図２３に示す。
【００３９】
図１に戻って、ＤＷＴ部２で生成された各周波数帯のサブバンド係数は量子化部３で量子化され、係数補填部４に入力される。係数補填部４は縮小部８から縮小された形状情報を入力し、領域外のサブバンド係数を領域内のサブバンド係数で補填する。
【００４０】
図４は係数補填部４の詳細なブロック図である。同図において、１２１は形状情報を格納するラッチであり、１２２はサブバンド係数を格納するラッチであり、１２４はラッチ１２１の内容に従って入力を切換えるセレクタである。１２３はセレクタ１２４の出力を格納するラッチである。１２５は係数の置換を検出する形状情報更新器である。１２１〜１２５までの各ブロックは、周波数帯の垂直方向のサイズに対応した数（Ａ〜Ｚ）を用意するものとする。１２６はメモリであり、水平方向に対して補間処理を行った結果を格納する。１２７はメモリであり、形状情報更新器１２５の出力を１ブロック分格納する。
【００４１】
また、ラッチ１２１−ａ〜ｚ、ラッチ１２２−ａ〜ｚ、ラッチ１２３−ａ〜ｚ、セレクタ１２４−ａ〜ｚは水平方向のサイズに対応した数に対応している。ラッチ１２３−Ａ〜Ｚ、ラッチ１２３−ａ〜ｚは処理に先立って０にリセットされている。
【００４２】
上記の構成で、周波数帯１ＬＬを対象として説明を行うが他の周波数帯についても処理は同様である。量子化部３から周波数帯毎にサブバンド係数の量子化結果がライン毎に画素単位でラスター順に入力される。図３０に入力される量子化結果を示す。Ａ〜Ｉの文字が入っている部分は領域内の量子化結果であり、空白の部分は領域外の量子化結果である。入力された量子化結果はラッチ１２２−Ａ〜Ｚに格納される。それに対応する縮小された形状情報が同様にライン毎に画素単位でラスター順にラッチ１２１−Ａ〜Ｚに格納される。セレクタ１２４−Ａ〜Ｚはラッチ１２１−Ａ〜Ｚの値が領域内であることを示していれば、ラッチ１２２−Ａ〜Ｚの値を出力し、領域外であることを示していれば、ラッチ１２３Ａ〜Ｚの値を出力する。その結果はメモリ１２５に格納される。
【００４３】
すなわち、水平方向で左側に領域内のサブバンド係数があればその値を次の領域内のサブバンド係数またはブロックの右端まで繰り返し、左側に領域内のサブバンド係数がなければ０を次の領域内のサブバンド係数またはブロックの右端まで繰り返す。メモリ１２５にはこのようにして水平方向に補填を行った結果が格納される。図３１に図３０に入力される量子化結果に対するメモリ１２５に格納された結果を示す。
【００４４】
一方、形状情報更新器１２５（−Ａ〜Ｚ）には、ラッチ１２１、ラッチ１２２、セレクタ１２４の出力が入力される。形状情報更新器１２５は、ラッチ１２１からの入力が領域内であればそのまま領域内を表す値を、領域外であればラッチ１２２の内容とセレクタ１２４の出力を比較し、値が同じであれば領域外を表す値を、値が異なれば領域内を表す値を出力する。メモリ１２７にはこのようにして水平方向に補填を行って修正された形状情報が格納される。
【００４５】
また、メモリ１２６以下のブロックでは垂直方向に補填を行う。メモリ１２６からラインの画素毎に上から下に向けてサブバンド係数が入力される。ラッチ１２１−ａ〜ｚについても縮小部８から１／２に縮小された形状情報をラインの画素毎に上から下に向けて入力され格納される。セレクタ１２４−ａ〜ｚはメモリ１２７から読み出された修正された形状情報に従って、ラッチ１２１−ａ〜ｚの値が領域内であればラッチ１２２−ａ〜ｚの値を出力し、領域外であればラッチ１２３ａ〜ｚの値を出力する。
【００４６】
すなわち、垂直方向で上側に領域内のサブバンド係数があればその値を次の領域内のサブバンド係数またはブロックの下端まで繰り返し、上側に領域内のサブバンド係数がなければ０を次の領域内のサブバンド係数またはブロックの下端まで繰り返す。その結果はエントロピー符号化部５に入力される。図３２に図３０に入力される量子化結果に対するエントロピー符号化部５に出力された結果を示す。
【００４７】
図２に戻って、エントロピー符号化部５は入力された量子化結果をビットプレーン毎にＥＢＣＯＴ符号化し、ビット切り捨て部６に入力する。ビット切り捨て部６は不図示のバッファ等の容量からレート制御を行うため、出力するビットプレーンの数を決定して、当該のビットプレーンの符号化データを符号形成部１０へ出力する。符号形成部１０は必要なヘッダとエントロピー符号化部９から出力された形状情報の符号化データと、ビット切り捨て部６から出力された符号化データを多重化して出力する。
【００４８】
このような一連の選択動作により、形状に対応した画像データを符号化することが可能になり、離散ウェーブレット変換部で形状を考慮した拡張を行い、係数補填部でサブバンド係数を領域外に繰り返しで補填することで、補填による影響を抑制し、高速に処理するといった効果が得られる。
【００４９】
なお、本実施形態においては画像の符号化方式をＪＰＥＧ２０００符号化方式としたが他の符号化方式、たとえば、ＭＰＥＧ−４のＳｔｉｌｌ  Ｔｅｘｔｕｒｅ  Ｏｂｊｅｃｔ符号化などの静止画像符号化方式を採用してもかまわない。また、形状情報の符号化をＭＰＥＧ−４符号化方式としたが、ＪＢＩＧやＭＭＲなどの符号化方式であってもよい。
【００５０】
また、本実施形態の各部または全部の機能をソフトウェアで記述し、ＣＰＵ等の演算装置によって実行させてもよい。
【００５１】
[第２の実施形態]
図９は、本発明の第２の実施に係る動画像復号装置の構成を示すブロック図である。本実施形態では第１の実施形態で生成された符号化データを復号する場合を例にとって説明するが、これに限定されない。
【００５２】
４００はヘッダを解析し、解析結果に基づいて、後段を制御し、入力された符号化データをビット切り捨て部４０４とエントロピー復号部４０１に入力する符号解析部である。４０１はＭＰＥＧ−４符号化方式の形状符号化方式で復号するエントロピー復号部である。４０２は復号して得られた形状情報を格納するフレームメモリである。４０３は復号された形状情報を逆ＤＷＴ部４０７の周波数帯に合わせて縮小を行う縮小部である。４０４は復号するビット数を調整するビット切り捨て部である。４０５はＪＰＥＧ２０００符号化方式のＥＢＣＯＴ符号化によってビットプレーン毎に復号を行うエントロピー復号部である。４０６は量子化されたサブバンド係数を逆量子化する逆量子化部である。４０７は逆量子化したブロックに対して形状情報に基づいて逆離散ウェーブレット変換を施す逆ＤＷＴ部である。４０８は復号して得られた画像データを格納するフレームメモリである。
【００５３】
上記のように構成された動画像復号装置における動画像復号動作を以下で説明する。
【００５４】
本実施形態では、動画像データの符号化データがフレーム単位に入力される。入力された符号化データは符号解析部４００に入力される。付加されたヘッダを解析し、符号化の特性を把握し、後段の各部の初期化等を行う。また符号解析部４００は入力された符号化データから形状情報に関する符号化データと画像データに関する符号化データとを分離し、前者をエントロピー復号部４０１に、後者をビット切り捨て部４０４に出力する。
【００５５】
エントロピー復号部４０１は、ＭＰＥＧ−４符号化方式の形状符号化方式に従って復号し、形状情報を生成し、フレームメモリ４０２に格納する。同時に縮小部４０３に入力する。縮小部４０３は符号解析部４００で解析されて得られた離散ウェーブレット変換の適用回数に従って、形状情報の縮小画像を生成して保持する。本実施形態では第１の実施形態で生成された符号化データを復号するので、適用回数は２回である。縮小された形状情報は逆ＤＷＴ部４０７に入力される。
【００５６】
一方、画像データに関する符号化データはビット切り捨て部４０４に入力される。ビット切り捨て部４０４はエントロピー復号部４０５やその他の状況から復号するビット数を調整する。エントロピー復号部４０５はビットプレーン毎にＥＢＣＯＴ符号化に従って復号し、逆量子化部４０６に入力する。逆量子化部４０６は入力された値に対して所定の逆量子化を行い、サブバンド係数を再生し、逆ＤＷＴ部４０７に入力される。
【００５７】
図１０に逆ＤＷＴ部４０７の詳細なブロック図を示す。図１０において、４５０、４５１、４５２、４５３、４７２、４７３、４７４、４７５は垂直方向に２倍のアップサンプリングするアップサンプリング部、４５４、４５６、４７６、４７８は垂直方向のローパスフィルタを行うＶＬＰＦ部、４５５、４５７、４７７、４７９は垂直方向のハイパスフィルタを行うＶＨＰＦ部、４５８、４５９、４６０、４６１、４６９、４７０、４８０、４８１、４８２、４８３、４９２、４９３はフィルタ処理結果を格納するメモリ、４６２、４６３、４７１、４８４、４８５、４９４は周波数合成を行う合成部である。４６４、４６５、４８６、４８７はフィルタの出力を水平方向に２倍のアップサンプリングするアップサンプリング部、４６７、４９０は水平方向のローパスフィルタを行うＨＬＰＦ部、４６８、４９１は水平方向のハイパスフィルタを行うＨＨＰＦ部、である。４６６、４８９は形状情報の垂直方向の２倍のアップサンプリングを行うアップサンプリング部である。
【００５８】
逆ＤＷＴ部４０７へは、図９の逆量子化部４０６からサブバンド係数が、縮小部４０３から（１／４）に縮小された形状情報と（１／２）に縮小された形状情報が入力される。またブロックの周波数帯２ＬＬ、２ＬＨ、２ＨＬ、２ＨＨのサブバンド係数がアップサンプリング部４５０、４５１、４５２、４５３にそれぞれ入力される。アップサンプリング部４５０、４５１、４５２、４５３は垂直方向に２倍のアップサンプリングするために各係数の間に０値を挿入する。アップサンプリングされたそれぞれのサブバンド係数は（１／４）に縮小された形状情報と共にＶＬＰＦ部４５４、ＶＨＰＦ部４５５、ＶＬＰＦ部４５６、ＶＨＰＦ部４５７に入力される。
【００５９】
各部のフィルタは第１の実施形態で図３に表したような構成のフィルタで構成されており、逆離散ウェーブレット変換の係数に従って、補填を行いながらフィルタ処理を行う。求められた結果はメモリ４５８、４５９，４６０、４６１にそれぞれ格納される。合成部４６２はメモリ４５８、４５９からそれぞれの係数値を読み出し、逆離散ウェーブレット変換で規定されている周波数での合成を行う。同様に、合成部４６３はメモリ４６０、４６１からそれぞれの係数値を読み出し、逆離散ウェーブレット変換で規定されている周波数での合成を行う。
【００６０】
アップサンプリング部４６４、４６５は水平方向に２倍のアップサンプリングするために間に各係数間に０値を挿入する。一方、入力された（１／４）に縮小された形状情報はアップサンプリング部４６６に入力され、形状情報の係数単位での繰り返しによって垂直方向に２倍にアップサンプリングする。アップサンプリング部４６４、４６５でアップサンプリングされたそれぞれのサブバンド係数は、アップサンプリング部４６６で拡大された形状情報と共にＨＬＰＦ部４６７、ＨＨＰＦ部４６８に入力される。ＨＬＰＦ部４６７、ＨＨＰＦ部４６８も図３のフィルタ部の構成をとっており、求められた結果はメモリ４６９、４７０にそれぞれ格納される。合成部４７１はメモリ４６９、４７０からそれぞれの係数値を読み出し、逆離散ウェーブレット変換で規定されている周波数での合成を行う。これにより、周波数帯１ＬＬを算出する。
【００６１】
同様に周波数帯１ＬＨ．１ＨＬ、１ＨＨを図９の逆量子化部４０６から入力してフィルタ処理を行い、最終的に合成部４９４で画素値を得る。図９に戻って、求められた画素値はフレームメモリ４０８に格納され、フレームメモリ４０２に格納された形状情報と共に外部に出力される。
【００６２】
このような一連の選択動作により、離散ウェーブレット変換部で形状を考慮した拡張を行って符号化された符号化データを復号することが可能になり、符号化データを劣化なく復号することが可能となる。さらにビット切り捨てを行うことで、適宜情報量を減らして高速な処理を行うことも可能となる。
【００６３】
[第３の実施形態]
図１１は、本発明の第３の実施に係る動画像符号化装置の構成を示すブロック図である。図１１において第１の実施形態の図１と同様の機能を果たす部分に関しては同じ番号を付与し、説明を省略する。
【００６４】
２００は形状情報を格納するフレームメモリであり、２０１は動き補償部２０７で求められた動きベクトルで求められる形状情報の予測データとの差分を求める差分部である。２０２は動き補償部２０７で求められた動きベクトルで求められる画像データの予測データとの差分を求める差分部である。２０３は量子化部３の逆量子化を行う逆量子化部であり、２０４はＤＷＴ部２の逆変換を行う逆ＤＷＴ部である。２０５は予測データとの加算を行う加算部である。
【００６５】
２０６は動き補償の参照のために復号画像を格納しておくフレームメモリである。２０７はフレームメモリ２０６に格納された復号画像と入力画像とから動き予測を行い、動きベクトルと予測データを算出する動き補償部である。２０８は量子化結果で領域外のサブバンド係数を補填する係数補填部である。２０９は必要なヘッダを生成し、動きベクトルを符号化し、エントロピー符号化部５とエントロピー符号化部９の出力から符号化データを形成する符号形成部である。
【００６６】
上記のように構成された動画像符号化装置における動画像符号化動作を以下で説明する。
【００６７】
本実施形態では、動画像データがフレーム単位に入力される。同時に別途抽出された形状情報が入力されるものであるが、形状情報は装置内部において動画像データから抽出してもよい。
【００６８】
第１の実施形態と同様にブロック分割部１は動画像データを、ブロック分割部７は形状情報を入力し、１フレーム分を保持してブロックに分割し、後段にブロック単位で出力する。ブロック分割部１でブロック分割された動画像データは動き補償部２０７と差分部２０２に入力される。
【００６９】
動き補償部２０７は入力された画像データとフレームメモリ２０６に格納された１枚以上の復号画像のデータとを比較し、予測誤差を最小とする動きベクトルとその予測データを生成する。生成された動きベクトルは符号形成部２０９に入力される。
【００７０】
一方、ブロック分割部７でブロック分割された形状情報は差分部２０１、縮小部８、フレームメモリ２００に入力される。フレームメモリ２００に格納される形状情報は他のフレームの形状情報を動き補償するために使用される。差分部２０１では動き補償部５０７で算出された動きベクトルに基づいてフレームメモリ５００に格納された符号化済みの形状情報から形状情報の予測データを求め、差分を求める。
【００７１】
エントロピー符号化部９では差分部５０１から出力された差分をＭＰＥＧ−４符号化方式の形状符号化方式で符号化され、符号形成部２０９に出力される。
【００７２】
縮小部８では入力された形状情報を、ＤＷＴ部２での適用回数に従って、縮小する。
【００７３】
差分部２０２で動き補償部２０７で算出された予測データを引く。第１の実施形態と同様にＤＷＴ部２ではブロック分割部７から形状情報を、縮小部８から縮小された形状情報を、差分部２０２からイントラ符号化時には画素値を、動き補償時は予測誤差を入力し、形状情報を参照して補填・拡張を行いつつ、離散ウェーブレット変換を行う。量子化部３で量子化を行い、係数補填部２０８と逆量子化部２０３に入力される。
【００７４】
図１２に係数補填部２０８の詳細なブロック図を示す。同図において、２５０は形状情報を格納するラッチ群であり、２５１はサブバンド係数を格納するラッチ群である。各ラッチ群は各ブロックの周波数帯の水平方向のサイズに対応した数のラッチを用意するものとする。２５２は水平方向の境界を判定する境界判定器であり、２５３は境界判定器２５２の指示に従って入力を加算する加算器である。２５４は加算器２５３の出力を２で除算する除算器である。２５５はラッチ群２５１または除算器２５４の出力を境界判定器２５２の出力によって選択するセレクタである。２５６はメモリであり、水平方向に対して補間処理を行った結果を格納する。２５７は係数の置換を検出する形状情報更新器である。
【００７５】
２５８はメモリであり、形状情報更新器２５７の出力を１ブロック分格納する。２５９は形状情報を格納するラッチ群であり、２６０はサブバンド係数を格納するラッチ群である。各ラッチ群は各ブロックの周波数帯の垂直方向のサイズに対応した数のラッチを用意するものとする。２６１は垂直方向の境界を判定する境界判定器であり、２６２は境界判定器２６１の指示に従って入力を加算する加算器である。２６３は加算器２６２の出力を２で除算する除算器である。２６２はラッチ群２６０または除算器２６３の出力を境界判定器２６１の出力によって選択するセレクタである。
【００７６】
上記の構成で、周波数帯１ＬＬを対象として説明を行うが他の周波数帯についても処理は同様である。量子化部３から周波数帯毎にサブバンド係数の量子化結果がライン毎に画素単位でラスター順に入力される。入力された量子化結果はラッチ群２５１に格納される。それに対応する縮小された形状情報が同様にライン毎に画素単位でラスター順にラッチ群２５０に格納される。境界判定器２５２はラッチ群２５０を参照して領域内外の境界を判定する。図３３に入力される量子化結果を示す。Ａ〜Ｉの文字が入っている部分は領域内の量子化結果であり、空白の部分は領域外の量子化結果である。
【００７７】
続いて、ラッチ群２５０、２５１の両方から左から右方向へ画素単位で加算器２５３とセレクタ２５５にそれぞれの値が入力される。加算器２５３は、境界判定器２５２からの入力に応じて画像の左端または領域の右側の境界である場合に動作し、ラッチ２５１から画像の左端または領域の右側の境界の値と次の領域または画像の右端の値とを加算する。除算器２５４は加算器２５３の出力を２で割り、セレクタ２５５に入力する。セレクタ２５５はラッチ群２５０からの出力に基づいて領域内であればラッチ群２５１からの出力を選択して出力し、そうでなければ除算器２５４の出力を選択して出力する。その結果はメモリ２５６に格納される。メモリ２５６にはこのようにして水平方向に補填を行った結果が格納される。図３４に図３３に入力される量子化結果に対するメモリ２５６に格納された結果を示す。ここで、ｂはＡとＣの平均であり、ｃはＤとＡの平均である。また、ｆはＡとＧの平均であり、ｇはＡとＨの平均であり、ｐはＣとＡの平均である。空白の部分は不定である。
読み出された形状情報は同時に形状情報更新器２５７に入力される。形状情報更新器２５７は読み出された形状情報が領域内であればそのまま領域内を表す値を出力する。領域外であれば、境界判定器２５２から入力されたサブバンド係数に対して両端に領域の境界があるのであれば領域内を表す値を出力し、片方または両方の方向に領域の境界がなければ、領域外を表す値を出力する。形状情報更新器２５７の出力はメモリ２５８に格納される。
【００７８】
メモリ２５６及びメモリ２５８に１ブロック分のデータが格納されたら、続いて、後段で垂直方向の補填を行う。メモリ２５６からラインの画素毎に上から下に向けてサブバンド係数がラッチ群２６０に垂直方向の１ライン分が上から下の順で格納される。同様にラッチ群２５９にメモリ２５８から形状情報がラインの画素毎に上から下に向けて入力され、格納される。境界判定器２６１はラッチ群２５９を参照して領域内外の境界を判定する。
【００７９】
続いて、ラッチ群２６０から左から右方向へ画素単位で加算器２５３とセレクタ２５５にそれぞれの値が入力される。加算器２６２は画像の上端または領域の下側の境界である時に加算器２６２を動作させ、加算器２６２にラッチ２６０から画像の上端または領域の下側の境界の値と次の領域または画像の下端の値を入力して加算する。除算器２６３は加算器２６２の出力を２で割り、セレクタ２６４に入力する。セレクタ２６４はラッチ群２５９からの出力に基づいて領域内であればラッチ群２６０からの出力を選択して出力し、そうでなければ除算器２６３の出力を選択して出力する。その結果はエントロピー符号化部５に入力される。図３５に図３３に入力される量子化結果に対するエントロピー符号化部５に出力された結果を示す。ｎはＣとＣの平均であり、ｍはＢとｐの平均である。
図１１に戻って、エントロピー符号化部５で符号化されて得られた符号化データは符号形成部２０９に入力される。
【００８０】
符号形成部２０９でヘッダ情報を付加し、動きベクトルを符号化して、形状情報の符号化データ、量子化された係数の符号化データと共に出力する。
【００８１】
同時に量子化部３の出力は逆量子化部２０３で逆量子化され、逆ＤＷＴ部２０４で離散ウェーブレット変換の逆変換を施し、加算部２０５で予測データを加算してフレームメモリ２０６に格納する。
【００８２】
このような一連の選択動作により、形状に対応した画像データを符号化することが可能になり、離散ウェーブレット変換部で形状を考慮した拡張を行い、係数補填部でサブバンド係数を領域外に平均値で補填することで、補填による影響を抑制し、高速に処理するといった効果がある。また、動き補償符号化を行うことで符号化効率を向上させることもできる。
【００８３】
なお、本実施形態においては画像の符号化方式をＪＰＥＧ２０００符号化方式としたが他の符号化方式、たとえば、ＭＰＥＧ−４のＳｔｉｌｌ  Ｔｅｘｔｕｒｅ  Ｏｂｊｅｃｔ符号化などの静止画像符号化方式やでももちろんかまわない。また、形状情報の符号化をＭＰＥＧ−４符号化方式としたが、ＪＢＩＧやＭＭＲなどの符号化方式であってももちろん構わない。
【００８４】
また、本実施形態の各部または全部の機能をソフトウェアで記述し、ＣＰＵ等の演算装置によって処理をさせてももちろんかまわない。
【００８５】
[第４の実施形態]
図１３は、本発明の第４の実施に係る動画像符号化装置の構成を示すブロック図である。図１３において、３００は装置全体の制御、及び種々の処理を行う中央演算装置（ＣＰＵ）、３０１は本装置の制御に必要なオペレーティングシステム（ＯＳ）、ソフトウェア、演算に必要な記憶領域を提供するメモリである。３０２は種々の装置をつなぎ、データ、制御信号をやり取りするバスである。３０３は装置の起動、各種条件の設定、再生の指示を行うための端末である。３０４はソフトウェアを蓄積する記憶装置である。
【００８６】
３０５はストリームを蓄積する記憶装置である。記憶装置３０４および、３０５はシステムから切り離して移動できるメディアで構成することもできる。３０６は動画像を撮像するカメラである。３０７は画像を表示するモニタであり、３０９は通信回路であり、ＬＡＮ、公衆回線、無線回線、放送電波等で構成されている。３０８は通信回路３０９を介してストリームを送受信する通信インターフェースである。
【００８７】
メモリ３０１には装置全体を制御し、各種ソフトウェアを動作させるためのＯＳ５０１や動作させるソフトウェア（５０２〜５０５）を格納し、画像データを格納する画像エリア５０６、生成した符号化データを格納する符号エリア５０７、各種演算や符号化の際のパラメータ等や透かしに関するデータ等を格納しておくワーキングエリア５０８が存在する。
【００８８】
このような構成において動画像符号化処理について説明する。カメラ３０６から入力された画像データを符号化し、通信回路３０９に出力する場合を例にとって説明する。
【００８９】
メモリ３０１のメモリの使用、格納状況を図１４に示す。メモリ３０１には装置全体を制御し、各種ソフトウェアを動作させるためのＯＳ５０１、動画像符号化する動画像符号化ソフトウェア５０２、動画像からオブジェクトを抽出するオブジェクト抽出ソフトウェア５０３、通信する通信ソフトウェア５０４、カメラ３０６から動画像をフレーム単位で入力する画像入力ソフトウェア５０５が格納されている。ここで、動画像符号化ソフトウェアはＭｏｔｉｏｎ  ＪＰＥＧ２０００符号化方式を例にとって説明するが、これに限定されない。
【００９０】
処理に先立ち、端末３０３から装置全体に対して起動が指示され、各部が初期化される。すると記憶装置３０４に格納されているソフトウェアがバス３０２を介してメモリ３０１に展開され、起動される。このような構成において、処理に先立ち、メモリ３０１上の符号エリア５０７、ワーキングエリア５０８は０でクリアする。
【００９１】
画像入力ソフトウェア５０５はカメラ３０６で撮像された画像データを１フレームずつ、メモリ３０１上の画像エリア５０６に格納する。その後、オブジェクト抽出ソフトウェア５０３は画像エリア５０６の画像からオブジェクトを抽出し、その形状情報を画像エリア５０６に格納する。以後、特に、画像エリア５０６の画像データと形状情報の格納については言及しない。
【００９２】
次に、ＣＰＵ３００による動画像符号化ソフトウェア５０２が画像データを符号化する処理動作について図１５に示すフローチャートに従って説明する。
【００９３】
まずステップＳ１にて、ＭｏｔｉｏｎＪＰＥＧ２０００符号化方式で必要なヘッダを生成して、メモリ３０１上の符号エリア５０７に格納する。通信ソフトウェア５０４は、符号エリア５０７に符号化データが格納されたら、通信インターフェース３０８を介して通信回線３０９に送出し、送出後、符号エリア５０７の該当する領域をクリアする。以後、特に、符号エリア５０７の符号化データの送信については言及しない。
【００９４】
ステップＳ２にて、符号化処理の終了判定を行う。端末３０３から符号化処理の終了が入力されれば全ての処理を終了する。そうでなければステップＳ３に進む。ステップＳ３にて、画像入力ソフトウェア５０５に同期して、メモリ３０１上の画像エリア５０６から画像データを読み込む。ステップＳ４にて、オブジェクト抽出ソフトウェア５０３に同期して、メモリ３０１上の画像エリア５０６から形状情報を読み込む。
【００９５】
ステップＳ５にて、１フレームに含まれる全てのブロックについて処理が終了したか否かを判定し、終了していればステップＳ２に戻り、次のフレームの処理を行う。そうでなければステップＳ６に進む。ステップＳ６にて、入力された形状情報から１つのブロックを選択し、をＭＰＥＧ−４符号化方式の形状符号化方式で符号化し、符号化データをメモリ３０１上の符号エリア５０７に格納する。ステップＳ７にて、入力された画像データから１つのブロックを選択し、形状に適応した離散ウェーブレット変換を施し、その変換係数をメモリ３０１上のワーキングエリア５０８に格納する。
【００９６】
ステップＳ７における形状適応離散ウェーブレット変換の処理について、図１６に示すフローチャートを参照して説明する。
【００９７】
ステップＳ５１にて、画像エリア５０６の画像データから符号化するブロックを切り出す。ステップＳ５２にて、画像エリア５０６の形状情報から符号化する形状情報のブロックを入力する。ステップＳ５３にて、形状適応離散ウェーブレット変換処理の終了判定を行う。所定の適用回数が終了したかを判定し、所定の適用回数になったらこの処理を終了して図１５のステップＳ８に進む。終了していなければステップＳ５５へ移行する。
【００９８】
ステップＳ５５にて、ステップＳ５１で切り出されたブロックまたは画像エリア５０６に格納された周波数帯のデータに対して、ステップＳ５２で画像エリア５０６に格納された形状情報画像エリア５０６に格納された形状情報、または縮小されてステップＳ６８で画像エリア５０６に格納された形状情報を参照して水平方向のローパスフィルタ処理を行う。
【００９９】
図１７にステップＳ５５の形状適応離散ウェーブレット変換のフィルタ処理についてフローチャートを用いて説明する。図１７では係数やその方向が各種のフィルタで異なるだけで基本的な手順は同じである。
【０１００】
ステップＳ８０にて、全ての係数について処理が終了したか判定し、終了していなければステップＳ８１に進み、終了していれば図１６のサブサンプリングの処理に進む。ステップＳ８１にて、中央の値が領域外か否かを判定し、領域外であれば、フィルタ演算を行わないため、ステップＳ８０に戻る。そうでなければステップＳ８２に進む。ステップＳ８２にて、中央の値が境界を含むか否かを判定し、境界を含まないのであれば、補填・拡張処理を行わないため、ステップＳ８４に進む。
【０１０１】
ステップＳ８３にて、領域外の値を第１の実施形態と同様に点対称で補填を行う。ステップＳ８４にて、各値に重みを乗じ、加算して、その値をメモリ３０１上のワーキングエリア５０８に格納し、ステップＳ８０に戻り、次の係数の処理を行う。
【０１０２】
図１６に戻って、ステップＳ５６にて、ステップＳ５５でワーキングエリア５０８に格納されたデータに対して、水平方向のサブサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。
【０１０３】
ステップＳ５７にて、ステップＳ５１で切り出されたブロックまたは画像エリア５０６に格納された周波数帯のデータに対して、ステップＳ５２で画像エリア５０６に格納された形状情報、または縮小されてステップＳ６８で画像エリア５０６に格納された形状情報を参照して水平方向のハイパスフィルタ処理を行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。
【０１０４】
ステップＳ５８にて、ステップＳ５７でワーキングエリア５０８に格納されたデータに対して、水平方向のサブサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ５９にて、ステップＳ５２で切り出されたりまたは縮小されて画像エリア５０６に格納されたりした形状情報から水平方向にサブサンプリングして縮小された形状情報を作成し、これをメモリ３０１上のワーキングエリア５０８に格納する。
【０１０５】
ステップＳ６０にて、ステップＳ５６でサブサンプリング処理され、ワーキングエリア５０８に格納された周波数帯のデータに対して、ステップＳ５９で縮小されてワーキングエリア５０８に格納された形状情報を参照して垂直方向のローパスフィルタ処理を行い、その結果をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ６１にて、ステップＳ６０にてフィルタ処理されワーキングエリア５０８に格納されたデータに対して、垂直方向のサブサンプリングを行い、その値をメモリ３０１上の画像エリア５０６に格納する。これはＬＬに該当する。
【０１０６】
ステップＳ６２にて、ステップＳ５６でサブサンプリング処理され、ワーキングエリア５０８に格納された周波数帯のデータに対して、ステップＳ５９で縮小されてワーキングエリア５０８に格納された形状情報を参照して垂直方向のハイパスフィルタ処理を行い、その結果をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ６３にて、ステップＳ６２にてフィルタ処理されワーキングエリア５０８に格納されたデータに対して、垂直方向のサブサンプリングを行い、その値をメモリ３０１上の画像エリア５０６に格納する。これはＬＨに該当する。
【０１０７】
ステップＳ６４にて、ステップＳ５８でサブサンプリング処理され、ワーキングエリア５０８に格納された周波数帯のデータに対して、ステップＳ５９で縮小されてワーキングエリア５０８に格納された形状情報を参照して垂直方向のローパスフィルタ処理を行い、その結果をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ６５にて、ステップＳ６４にてフィルタ処理されワーキングエリア５０８に格納されたデータに対して、垂直方向のサブサンプリングを行い、その値をメモリ３０１上の画像エリア５０６に格納する。これはＨＬに該当する。
【０１０８】
ステップＳ６６にて、ステップＳ５８でサブサンプリング処理され、ワーキングエリア５０８に格納された周波数帯のデータに対して、ステップＳ５９で縮小されてワーキングエリア５０８に格納された形状情報を参照して垂直方向のハイパスフィルタ処理を行い、その結果をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ６７にて、ステップＳ６６にてフィルタ処理されワーキングエリア５０８に格納されたデータに対して、垂直方向のサブサンプリングを行い、その値をメモリ３０１上の画像エリア５０６に格納する。これはＨＨに該当する。
【０１０９】
ステップＳ６８にて、ステップＳ５９で切り出されてワーキングエリア５０８に格納された形状情報から垂直方向にサブサンプリングして縮小された形状情報を作成し、これをメモリ３０１上の画像エリア５０６に格納する。ステップＳ５５からステップＳ６８を行うことによって離散ウェーブレット変換を１回適用した周波数帯とそれに適応する形状情報をメモリ３０１上の画像エリア５０６に得ることができる。ステップＳ５３にて所望する適用回数に至らない場合は、入力する画像データ及び、形状情報を直前で求め、画像エリア５０６に格納されているＬＬに対して行うことで所望する周波数帯の全てを得ることができる。ステップＳ５３で所望する適用回数に達した場合は図１５のステップＳ８に進む。
【０１１０】
図１５に戻って、ステップＳ８にて、メモリ３０１上の画像に格納された各周波数帯のサブバンド係数に対して量子化を行い、その結果をワーキングエリア５０８に格納する。
【０１１１】
ステップＳ９にて、ステップＳ７で画像エリア５０６に格納した形状情報を参照して、ステップＳ９でワーキングエリア５０８に格納された量子化値で領域外の値を補填する。図３６に入力される量子化結果を示す。Ａ〜Ｉの文字が入っている部分は領域内の量子化結果であり、空白の部分は領域外の量子化結果である。図１８に係数補填の処理について詳細なフローチャートを示して説明する。ステップＳ１００にて、ブロック内の全ての水平ラインについて補填処理が終了したか否かを判定し、処理が終了していなければステップＳ１０１に進み、終了していればステップＳ１０８に進む。
【０１１２】
ステップＳ１０１にて、画像エリア５０６に格納された形状情報を用いて、処理する周波数帯の水平のラインで全てのサブバンド係数が領域外か否かを判定し、全てが領域外であればステップＳ１００に進み、次の水平ラインの処理を行う。ステップＳ１０２にて、処理する水平のラインで全てのサブバンド係数の処理を終了したか否かを判定し、水平ラインの全てのサブバンド係数を処理したのであれば、ステップＳ１００に進み、次の水平ラインの処理を行う。そうでなければステップＳ１０３に進む。
【０１１３】
ステップＳ１０３にて、注目している量子化値が同一周波数帯の同一位置に該当する形状情報を参照して領域外か否かを判定する。領域内と判定された場合はステップＳ１０４に進み、そうでなければステップＳ１０５に進む。
【０１１４】
ステップＳ１０４にて、同一位置の形状情報をメモリ３０１上のワーキングエリア５０８に格納して、次のサブバンド係数の処理を行うためにステップＳ１０２に進む。ステップＳ１０５にて、ワーキングエリア５０８に格納されている形状情報を参照して、注目サブバンド係数より左側に領域が存在するか否かを判定し、存在すればステップＳ１０６に進み、存在しなければステップＳ１０７に進む。
【０１１５】
ステップＳ１０６にて、左方向で領域内の最も近い量子化値でワーキングエリア５０８内の量子化値で当該位置の量子化値を置換し、ワーキングエリア５０８の同一位置の形状情報に領域内を表す値を格納して、次のサブバンド係数の処理を行うためにステップＳ１０２に進む。
【０１１６】
ステップＳ１０７にて、右方向で領域内の最も近い量子化値でワーキングエリア５０８内の量子化値で当該位置の量子化値を置換し、ワーキングエリア５０８の同一位置の形状情報に領域内を表す値を格納して、次のサブバンド係数の処理を行うためにステップＳ１０２に進む。図３７に図３６に入力される量子化結果に対するワーキングエリア５０８に格納された結果を示す。小文字は大文字の値を複写することを示している。
【０１１７】
ステップＳ１０８以下で、垂直方向の補填処理を行う。ステップＳ１０８にて、ブロック内の全ての垂直ラインについて補填処理が終了したか否かを判定し、処理が終了していなければステップＳ１０９に進み、終了していれば図１５のステップＳ１０に進む。
【０１１８】
ステップＳ１０９にて、画像エリア５０６に格納された形状情報を用いて、処理する垂直のラインで全てのサブバンド係数が領域外か否かを判定し、全てが領域外であればステップＳ１０８に進み、次の垂直ラインの処理を行う。そうでなければ、ステップＳ１１０にて、処理する垂直のラインで全てのサブバンド係数の処理を終了したか否かを判定し、垂直ラインの全てのサブバンド係数を処理したのであれば、ステップＳ１０８に進み、次の垂直ラインの処理を行う。そうでなければステップＳ１１１に進む。
【０１１９】
ステップＳ１１１にて、注目している量子化値がステップＳ１０４、ステップＳ１０６、ステップＳ１０７でワーキングエリア５０８に格納した形状情報での同一位置に該当する形状情報を参照して領域外か否かを判定する。領域内と判定された場合はステップＳ１１０に進み、次のサブバンド係数の処理を行う。そうでなければステップＳ１１２に進む。
【０１２０】
ステップＳ１１２にて、ステップＳ１０４、ステップＳ１０６、ステップＳ１０７でワーキングエリア５０８に格納した形状情報を参照して、注目サブバンド係数より上側に領域が存在するか否かを判定し、存在すればステップＳ１１３に進み、存在しなければステップＳ１１４に進む。
【０１２１】
ステップＳ１１３にて、上方向で領域内の最も近い量子化値でワーキングエリア５０８内の量子化値で当該位置の量子化値を置換し、次のサブバンド係数の処理を行うためにステップＳ１１０に進む。ステップＳ１１４にて、下方向で領域内の最も近い量子化値でワーキングエリア５０８内の量子化値で当該位置の量子化値を置換し、次のサブバンド係数の処理を行うためにステップＳ１１０に進む。図３８に図３６に入力される量子化結果に対するワーキングエリア５０８に格納された結果を示す。
図１５に戻り、ステップＳ１０にて、ステップＳ９で補填され、ワーキングエリア５０８に格納されている量子化値を符号化し、メモリ３０１上の符号エリア５０７に格納する。ステップＳ１１にて、メモリ３０１上に格納されたステップＳ１のヘッダ、ステップＳ６で格納された形状情報の符号化データ、ステップＳ１０で符号化された量子化値の符号化データを多重化し、メモリ３０１上の符号エリア５０７に格納しておく。その後、ワーキングエリア５０８、画像エリア５０６のデータをクリアし、次のブロックの処理を行うためにステップＳ５に進む。端末３０３で処理の終了が指示されたら、全てのソフトウェアを停止する。
【０１２２】
このような一連の選択動作により、形状に対応した画像データを符号化することが可能になり、離散ウェーブレット変換部で形状を考慮した拡張を行い、係数補填部でサブバンド係数を領域外に近傍の値で補填することで、補填による影響を抑制し、領域外の値（例えば０）で補填を行わないため、符号化効率の向上が行えるといった効果がある。なお、本実施形態においては画像の符号化方式をＪＰＥＧ２０００符号化方式としたが他の符号化方式、たとえば、ＭＰＥＧ−４のＳｔｉｌｌ  Ｔｅｘｔｕｒｅ  Ｏｂｊｅｃｔ符号化などの静止画像符号化方式などでももちろんかまわない。また、動き補償符号化を行うことで符号化効率を向上させることもできる。
【０１２３】
また、形状情報の符号化をＭＰＥＧ−４符号化方式としたが、ＪＢＩＧやＭＭＲなどの符号化方式であってももちろん構わない。
【０１２４】
本実施形態では通信ソフトウェア５０４を起動し、符号エリア５０７内の符号化データを通信インターフェース３０８を介して通信回線３０９に送信する例について説明したが、記憶装置３０５に格納してももちろんかまわない。
【０１２５】
また、本実施形態の各部または全部の機能をハードウェアで構成してももちろんかまわない。
【０１２６】
また、図１８の係数補填処理で水平方向の補填を行った後に垂直方向の補填を行ったが、これに限定されず、垂直方向の補填を行った後に水平方向の補填を行ってももちろんかまわない。
【０１２７】
[第５の実施形態]
本実施形態では、図１３の構成を用いて、第４の実施形態で生成された符号化データの復号動作について説明する。記憶装置３０５に格納されている符号化データを復号してモニタ３０７に表示する場合を例にとって説明する。
【０１２８】
本実施形態では、動画像データの符号化データをフレーム単位に入力する。メモリ３０１のメモリの使用、格納状況を図１９に示す。第４の実施形態と同様にメモリ３０１にはＯＳ５０１、画像エリア５０６、符号エリア５０７、ワーキングエリア５０８が存在する。その他に、動画像を復号する動画像復号ソフトウェア６０１、通信する通信ソフトウェア５０４、モニタ３０７に動画像を表示する画像表示ソフトウェア６０２が格納されている。
【０１２９】
第４の実施形態と同様に各部の初期化が行われ、記憶装置３０４に格納されているソフトウェアが起動される。ＣＰＵ３００による動画像復号ソフトウェア６０１が復号する動作について図２０に示すフローチャートに従って説明する。
【０１３０】
動画像復号ソフトウェア６０１は、ステップＳ２０１にて、記憶装置３０５から動画像データの符号化データのヘッダに入力し、メモリ３０１上の符号エリア５０７に格納した後、符号化の特性を把握し、メモリ３０１上のワーキングエリア５０８に各初期値等を格納する。
【０１３１】
ステップＳ２０２にて、終了判定を行なう。記憶装置３０５の符号化データの全てを復号するか、端末３０３から中断の指示が合った場合、全てのメモリ領域をクリアし、ソフトウェアの動作を終了する。そうでなければステップＳ２０３に進み、次のフレームの処理を行う。ステップＳ２０３にて、動画像データの符号化データを記憶装置３０５からフレーム単位に入力し、メモリ３０１上の符号エリア５０７に格納する。ステップＳ２０４にて、フレーム内の全ブロックに対して復号が終了したか否かを判定し、終了していればステップＳ２１０に進み、そうでなければステップＳ２０５に進む。
【０１３２】
ステップＳ２０５にて、符号エリア５０７から形状情報に関する符号化データを読み出し、復号する。本実施形態ではＭＰＥＧ−４符号化方式の形状符号化方式に従って復号し、形状情報を生成し、画像エリア５０６に格納する。生成された形状情報は領域内外を表す画素あたり１ビットの情報である。
【０１３３】
ステップＳ２０６にて、画像エリア５０６の形状情報に対して、ステップＳ２０１で解析した結果から離散ウェーブレット変換の適用回数ｎを読み出し、ｎ段階の縮小画像を生成して、画像エリア５０６に格納しておく。ステップＳ２０７にて、符号エリア５０７から画像データに関する符号化データを読み出し、復号して、量子化されたサブバンド係数を求めて、ワーキングエリア５０８に格納する。
【０１３４】
ステップＳ２０８にて、ワーキングエリア５０８の量子化されたサブバンド係数を読み込み、逆量子化を施し、サブバンド係数を再生して、ワーキングエリア５０８の同じ領域に戻す。ステップＳ２０９にて、ワーキングエリア５０８の再生されたサブバンド係数を読み込み、画像エリアの形状情報に適応した逆離散ウェーブレット変換を施し、その変換係数をメモリ３０１上のワーキングエリア５０８に格納する。
【０１３５】
ステップＳ２０９における逆形状適応離散ウェーブレット変換の処理について、図２１に示すフローチャートを参照して説明する。ステップＳ２５１にて、ワーキングエリア５０８のサブバンド係数を読み込む。ステップＳ２５２にて、画像エリア５０６の形状情報から復号したブロックに対応する縮小された形状情報を入力する。
【０１３６】
ステップＳ２５３にて、形状適応逆離散ウェーブレット変換処理の終了判定を行う。所定の適用回数が終了したかを判定し、所定の適用回数になったらこの処理を終了して図２０のステップＳ２０４に進む。ステップＳ２５４にて、逆量子化されてワーキングエリア５０８に格納された周波数帯ＬＬのデータに対して、垂直方向のアップサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。
【０１３７】
ステップＳ２５５にて、ステップＳ２５４でアップサンプリングされたＬＬの周波数帯のデータに対して、ステップＳ２５２で画像エリア５０６に格納された形状情報を参照して垂直方向のローパスフィルタ処理を行い、結果をワーキングエリア５０８に格納する。本フィルタ処理は第４の実施形態の図１７に示したフローチャートに従って処理される。以後の各フィルタ処理も同様である。
【０１３８】
ステップＳ２５６にて、逆量子化されてワーキングエリア５０８に格納された周波数帯ＬＨのデータに対して、垂直方向のアップサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。
【０１３９】
ステップＳ２５７にて、ステップＳ２５６でアップサンプリングされたＬＨの周波数帯のデータに対して、ステップＳ２５２で画像エリアに格納された形状情報を参照して垂直方向のハイパスフィルタ処理を行い、結果をワーキングエリア５０８に格納する。ステップＳ２５８にて、逆離散ウェーブレット変換で規定されている周波数での合成を行い、ワーキングエリア５０８に格納する。
【０１４０】
ステップＳ２５９にて、逆量子化されてワーキングエリア５０８に格納された周波数帯ＨＬのデータに対して、垂直方向のアップサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ２６０にて、ステップＳ２５９でアップサンプリングされたＨＬの周波数帯のデータに対して、ステップＳ２５２で画像エリア５０６に格納された形状情報を参照して垂直方向のローパスフィルタ処理を行い、結果をワーキングエリア５０８に格納する。
【０１４１】
ステップＳ２６１にて、逆量子化されてワーキングエリア５０８に格納された周波数帯ＨＨのデータに対して、垂直方向のアップサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ２６２にて、ステップＳ２６１でアップサンプリングされたＨＨの周波数帯のデータに対して、ステップＳ２５２で画像エリア５０６に格納された形状情報を参照して垂直方向のハイパスフィルタ処理を行い、結果をワーキングエリア５０８に格納する。
【０１４２】
ステップＳ２６３にて、逆離散ウェーブレット変換で規定されている周波数での合成を行い、ワーキングエリア５０８に格納する。ステップＳ２６４にて、ワーキングエリア５０８に格納された縮小された形状情報は形状情報の係数単位での繰り返しによって水平方向に２倍にアップサンプリングされてワーキングエリア５０８に格納される。
【０１４３】
ステップＳ２６５にて、ステップＳ２５８でワーキングエリア５０８に格納された周波数帯ＬＬのデータと周波数帯ＬＨを合成したデータに対して、水平方向のアップサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ２６６にて、ステップＳ２６５でアップサンプリングされたデータに対して、ステップＳ２６４でワーキングエリア５０８に格納された垂直方向にアップサンプリングされた形状情報を参照して水平方向のローパスフィルタ処理を行い、結果をワーキングエリア５０８に格納する。
【０１４４】
ステップＳ２６７にて、ステップＳ２６３でワーキングエリア５０８に格納された周波数帯ＬＨのデータと周波数帯ＨＨを合成したデータに対して、水平方向のアップサンプリングを行い、その値をメモリ３０１上のワーキングエリア５０８に格納する。ステップＳ２６８にて、ステップＳ２６７でアップサンプリングされたデータに対して、ステップＳ２６４でワーキングエリア５０８に格納された水平方向にアップサンプリングされた形状情報を参照して水平方向のハイパスフィルタ処理を行い、結果をワーキングエリア５０８に格納する。
【０１４５】
ステップＳ２６９にて、逆離散ウェーブレット変換で規定されている周波数での合成を行い、画像エリア５０６に格納して、次の周波数帯の処理に進むため、ステップＳ２５３に進む。ステップＳ２５３にて、所定の適用回数が終了していたらこの処理を終了して図２０のステップＳ２０４に進む。
【０１４６】
図２０に戻って、ステップＳ２０４にて、フレーム内の全ブロックについて処理が終了した場合、ステップＳ２１０に進む。ステップＳ２１０にて、形状情報を参照しながら、対象となる画像データを切り出し、画像エリア５０６に格納する。ステップＳ２１１にて、ステップＳ２１０で画像エリア５０６に格納された画像データを出力する。ステップＳ２１１にて、出力された画像データは画像表示ソフトウェア６０２によってモニタ３０７上に表示される。
【０１４７】
このような一連の選択動作により、ソフトウェアにて離散ウェーブレット変換部で形状を考慮した拡張を行って符号化された符号化データを復号することが可能になり、符号化データを劣化なく復号することが可能になった。
【０１４８】
なお、本実施形態では形状情報の符号化をＭＰＥＧ−４符号化方式とし、画像の符号化方式をＪＰＥＧ２０００符号化方式としたが、他の符号化方式、例えば形状情報はＪＢＩＧやＭＭＲなどの符号化方式、画像データはＭＰＥＧ−４のＳｔｉｌｌ  Ｔｅｘｔｕｒｅ  Ｏｂｊｅｃｔ符号化などの静止画像符号化方式などでももちろんかまわない。
【０１４９】
本実施形態では蓄積装置から符号化データを読み出す例について説明したが、通信ソフトウェア５０４を起動し、符号エリア５０７内の符号化データを通信インターフェース３０８を介して通信回線３０９から受信してももちろんかまわない。
【０１５０】
また、本実施形態の各部または全部の機能をハードウェアで構成してももちろんかまわない。
【０１５１】
［第６の実施形態］
上記の実施形態においては、画像データのうち、動画像データの符号化・復号化処理について説明した。本発明の適用対象は動画像データに限定されるものではなく、静止画像についても同様にして適用可能である。そこで、本実施形態では、本発明に対応する静止画像符号化装置の実施形態について説明する。
【０１５２】
図２７は本発明をファクシミリ通信装置に適用した例である。１０００１は原稿を読み取るスキャナであり、カラー原稿、グレースケール原稿等を読み込み、光電変換とデジタル化によって入力画像を生成する。１０００２はフレームメモリであり、生成された入力画像を蓄積する。１０００３はディスプレイ部であり、フレームメモリ１０００２に蓄積された画像データを表示する。
【０１５３】
１０００４はデジタイザ部であり、不図示のユーザがディスプレイ部１０００３に表示された画像を見ながら必要とする部分を指示する。１０００５は境界処理部であり、デジタイザ部１０００４で指示された領域の内部を符号化対象領域として決定し、その領域を形状情報メモリ１０００６に格納する。形状情報メモリ１０００６は領域内を１、領域外を０としてそれぞれの画素値を形状情報として格納する。
【０１５４】
１０００７は本発明を適用した静止画符号化装置である。１０００８は通信インターフェースであり、通信回路１０００９に送信するためのパケット化などを行い、通信回路１０００９に送信する。通信回路１０００９はLAN、公衆回線などで構成される通信回路である。
【０１５５】
スキャナ部１０００１で読み込まれた画像データはフレームメモリ１０００２に格納される。フレームメモリ１０００２に格納された画像データは、ディスプレイ部１０００３に表示され、不図示のユーザがデジタイザ部１０００４を用いて、必要とする部分の輪郭がなぞられる。また、境界処理部１０００５は対象領域を決定し、対象領域の内部の画素を１、そうでない画素を０とした２値画像情報を生成し、形状情報として形状情報メモリ１０００６に格納する。形状情報メモリ１０００６に格納された形状情報と、フレームメモリ１０００２に格納された画像データとが、静止画像符号化装置１０００７に入力される。静止画像符号化装置１０００７では、画像データの符号化が行われ、符号化データが通信インターフェース１０００８に入力される。ここでパケット化等が行われて、通信回線１０００９を介して宛先装置に送信される。
【０１５６】
図２８は本実施形態に対応する、図２７の静止画像符号化装置１０００７の構成の一例を示すブロック図である。ここで静止画像符号化装置１０００７が使用する画像の符号化方式として、例えばＪＰＥＧ２０００符号化方式を採用することができるが、これに限定されない。また、形状情報の符号化方式として、例えばＭＭＲ符号化方式を採用することができるが、同様にこれに限定されない。
【０１５７】
図２８においては、図１に記載した動画像符号化装置と基本的な構成は同一である。しかし、図２８においては、図１におけるブロック分割部７を備えていないので、縮小部８は、形状情報メモリ１０００６から入力される形状情報を、ＤＷＴ部２の周波数帯に合わせて縮小を行う。また、エントロピー符号化部９では、ＭＭＲ符号化方式により符号化を行う。
【０１５８】
他の処理については、フレームについての処理として基本的に第１の実施形態において記載した動画像符号化装置における処理と同様であるので、ここでの記載は省略する。
【０１５９】
［第７の実施形態］
第６の実施形態においては、本発明の実施形態のうち、静止画像データの符号化処理について説明した。本実施形態では、更に静止画データを復号する静止画像復号化装置の実施形態について説明する。
【０１６０】
図２９は本発明をファクシミリ通信装置に適用した例である。通信回路１００１０はLAN、公衆回線などで構成される通信回路である。１００１１は通信インターフェースであり、通信回路１００１０から受信されたパケットデータ等を解析し、符号化データを再構成する。１００１２は本実施形態に対応する静止画復号装置である。１００１３は復号された形状情報を格納する形状情報メモリである。１００１４は描画部であり、形状情報メモリ１００１３に格納された形状情報を参照して、静止画復号装置で復号された静止画像を描画する。１００１５は描画された画像データを格納するフレームメモリである。１００１６はフレームメモリ１００１５の内容を印字するプリンタ部である。
【０１６１】
通信回線１００１０から受信されたパケット化されたデータは通信インターフェース１００１１に入力され、符号化データを再構成する。再構成された符号化データは静止画像復号装置１０００１２に入力される。なお、図２９の静止画像復号装置１００１２の構成の一例に対応するブロック図は図９に示したものと同様であり、静止画像復号装置１００１２における処理も図９に関連して記載した第２の実施形態における説明と同様であるので、ここでの説明は省略する。
【０１６２】
なお、図９において、フレームメモリ４０２に格納された形状情報は、図２９の形状情報メモリ１００１３に格納される。また、描画部１００１４は形状情報メモリ１００１３に格納された形状情報に従って、フレームメモリ４０８から画像データを読み出し、印刷フォーマットに描画する。描画された画像データはフレームメモリ１００１５に格納される。フレームメモリ１００１５に格納された画像データはプリンタ部１００１６で印字されて出力される。
【０１６３】
［その他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【０１６４】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１６５】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１６６】
【図１】本発明の第１の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図２】本発明の第１及び第３の実施形態に対応する離散ウェーブレット部の構成を示すブロック図である。
【図３】本発明の第１及び第３の実施形態に対応する離散ウェーブレット部のフィルタ部の構成を示すブロック図である。
【図４】本発明の第１の実施形態に対応する係数補填部の構成を示すブロック図である。
【図５】本発明の実施形態に対応する係数を補填する係数値の様子を表す図である。
【図６】本発明の実施形態に対応する係数を補填された係数値の様子を表す図である。
【図７】本発明の実施形態に対応する係数を補填する係数値の様子を表す図である。
【図８】本発明の実施形態に対応する係数を補填された係数値の様子を表す図である。
【図９】本発明の第２の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図１０】本発明の第２の実施形態に対応する逆離散ウェーブレット部の構成を示すブロック図である。
【図１１】本発明の第３の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図１２】本発明の第３の実施形態に対応する係数補填部の構成を示すブロック図である。
【図１３】本発明の第４の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図１４】本発明の第４の実施形態に対応するメモリ３０１のメモリの使用、格納状況を表す図である。
【図１５】本発明の第４の実施形態に対応する動画像符号化動作を示すフローチャート図である。
【図１６】本発明の第４の実施形態に対応する形状適応離散ウェーブレット変換の処理動作を示すフローチャート図である。
【図１７】本発明の第４及び第５の実施形態に対応する形状適応離散ウェーブレット変換のフィルタ処理動作を示すフローチャート図である。
【図１８】本発明の第４の実施形態に対応する係数補填処理動作を示すフローチャート図である。
【図１９】本発明の第５の実施形態に対応するメモリ３０１のメモリの使用、格納状況を表す図である。
【図２０】本発明の第５の実施形態に対応する動画像符号化動作を示すフローチャート図である。
【図２１】本発明の第５の実施形態に対応する形状適応離散ウェーブレット変換の処理動作を示すフローチャート図である。
【図２２】本発明の入力画像例と形状情報の様子を表す図である。
【図２３】本発明の離散ウェーブレット変換の様子を表す図である。
【図２４】従来の動画像符号化装置の構成例を表す図である。
【図２５】従来の動画像復号装置の構成例を表す図である。
【図２６】従来の動画像符号化装置の構成例を表す図である。
【図２７】本発明の第６の実施形態に対応するファクシミリ装置の構成の一例を示す図である。
【図２８】本発明の第６の実施形態に対応する静止画像符号化装置の構成の一例を示す図である。
【図２９】本発明の第７の実施形態に対応するファクシミリ装置の構成の一例を示す図である。
【図３０】本発明の第１の実施形態に対応する、入力される量子化結果の一例を示す図である。
【図３１】本発明の第１の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３２】本発明の第１の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３３】本発明の第３の実施形態に対応する、入力される量子化結果の一例を示す図である。
【図３４】本発明の第２の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３５】本発明の第２の実施形態に対応する量子化結果の補填の一例を示す図である。
【図１】
2006050558.tif 000003
【図２】
2006050558.tif 000004
【図３】
2006050558.tif 000005
【図４】
2006050558.tif 000006
【図５】
2006050558.tif 000007
【図６】
2006050558.tif 000008
【図７】
2006050558.tif 000009
【図８】
2006050558.tif 000010
【図９】
2006050558.tif 000011
【図１０】
2006050558.tif 000012
【図１１】
2006050558.tif 000013
【図１２】
2006050558.tif 000014
【図１３】
2006050558.tif 000015
【図１４】
2006050558.tif 000016
【図１５】
2006050558.tif 000017
【図１６】
2006050558.tif 000018
【図１７】
2006050558.tif 000019
【図１８】
2006050558.tif 000020
【図１９】
2006050558.tif 000021
【図２０】
2006050558.tif 000022
【図２１】
2006050558.tif 000023
【図２２】
2006050558.tif 000024
【図２３】
2006050558.tif 000025
【図２４】
2006050558.tif 000026
【図２５】
2006050558.tif 000027
【図２６】
2006050558.tif 000028
【図２７】
2006050558.tif 000029
【図２８】
2006050558.tif 000030
【図２９】
2006050558.tif 000031
【図３０】
2006050558.tif 000032
【図３１】
2006050558.tif 000033
【図３２】
2006050558.tif 000034
【図３３】
2006050558.tif 000035
【図３４】
2006050558.tif 000036
【図３５】
2006050558.tif 000037
【図３６】
2006050558.tif 000038
【図３７】
2006050558.tif 000039
【図３８】
2006050558.tif 000040
【手続補正書】
【提出日】平成17年7月22日(2005.7.22)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０１６６
【補正方法】変更
【補正の内容】
【０１６６】
【図１】本発明の第１の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図２】本発明の第１及び第３の実施形態に対応する離散ウェーブレット部の構成を示すブロック図である。
【図３】本発明の第１及び第３の実施形態に対応する離散ウェーブレット部のフィルタ部の構成を示すブロック図である。
【図４】本発明の第１の実施形態に対応する係数補填部の構成を示すブロック図である。
【図５】本発明の実施形態に対応する係数を補填する係数値の様子を表す図である。
【図６】本発明の実施形態に対応する係数を補填された係数値の様子を表す図である。
【図７】本発明の実施形態に対応する係数を補填する係数値の様子を表す図である。
【図８】本発明の実施形態に対応する係数を補填された係数値の様子を表す図である。
【図９】本発明の第２の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図１０】本発明の第２の実施形態に対応する逆離散ウェーブレット部の構成を示すブロック図である。
【図１１】本発明の第３の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図１２】本発明の第３の実施形態に対応する係数補填部の構成を示すブロック図である。
【図１３】本発明の第４の実施形態に対応する動画像符号化装置の構成を示すブロック図である。
【図１４】本発明の第４の実施形態に対応するメモリ３０１のメモリの使用、格納状況を表す図である。
【図１５】本発明の第４の実施形態に対応する動画像符号化動作を示すフローチャート図である。
【図１６】本発明の第４の実施形態に対応する形状適応離散ウェーブレット変換の処理動作を示すフローチャート図である。
【図１７】本発明の第４及び第５の実施形態に対応する形状適応離散ウェーブレット変換のフィルタ処理動作を示すフローチャート図である。
【図１８】本発明の第４の実施形態に対応する係数補填処理動作を示すフローチャート図である。
【図１９】本発明の第５の実施形態に対応するメモリ３０１のメモリの使用、格納状況を表す図である。
【図２０】本発明の第５の実施形態に対応する動画像符号化動作を示すフローチャート図である。
【図２１】本発明の第５の実施形態に対応する形状適応離散ウェーブレット変換の処理動作を示すフローチャート図である。
【図２２】本発明の入力画像例と形状情報の様子を表す図である。
【図２３】本発明の離散ウェーブレット変換の様子を表す図である。
【図２４】従来の動画像符号化装置の構成例を表す図である。
【図２５】従来の動画像復号装置の構成例を表す図である。
【図２６】従来の動画像符号化装置の構成例を表す図である。
【図２７】本発明の第６の実施形態に対応するファクシミリ装置の構成の一例を示す図である。
【図２８】本発明の第６の実施形態に対応する静止画像符号化装置の構成の一例を示す図である。
【図２９】本発明の第７の実施形態に対応するファクシミリ装置の構成の一例を示す図である。
【図３０】本発明の第１の実施形態に対応する、入力される量子化結果の一例を示す図である。
【図３１】本発明の第１の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３２】本発明の第１の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３３】本発明の第３の実施形態に対応する、入力される量子化結果の一例を示す図である。
【図３４】本発明の第２の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３５】本発明の第２の実施形態に対応する量子化結果の補填の一例を示す図である。
【図３６】  本発明の第４の実施形態に対応する、入力される量子化結果の一例を示す図である。
【図３７】  図３６に示す量子化結果に対するワーキングエリア５０８に格納された結果を一例として示す図である。
【図３８】  図３６に示す量子化結果に対するワーキングエリア５０８に格納された結果を一例として示す図である。