(57)【特許請求の範囲】
【請求項１】
画像とその画像に対応するアルファ・プレーンを８×８画素ブロック毎に分解し、分割した各８×８画素ブロックのアルファ・プレーンによって決められるコンテントの領域に含まれない総てまたは一部の画素に対してサンプル値のパディングを施した各８×８画素ブロックの画像に２次元DCTを適用するコンテント・ベース符号化方法において、
上記８×８画素ブロック内の水平または垂直方向へ一列に並んだ８画素に対する１次元DCT基底上の係数を画素と対応した形で順番に並べ、並べられた係数の１番目と８番目、２番目と７番目、３番目と６番目、４番目と５番目の変換係数の間で絶対値が等しく且つ符号が反対である関係を１／２点対称と定義し、
上記８×８画素ブロックを２つの縦８×横４画素ブロックに分割した内、一方の縦８×横４画素ブロック中の総てまたは一部の画素がコンテントに含まれ、残りのもう一方の縦８×横４画素ブロック内の総ての画素がコンテントに含まれない状態の場合、
コンテントに含まれる画素が存在する縦８×横４画素ブロック中のコンテントに含まれない総ての画素に対してパディングを行い、もう一方のコンテントに含まれる画素が全くない縦８×横４画素ブロック中の総ての画素に対して水平方向の１／２点対称の位置にある画素のサンプル値を用いたパディングを施すことを特徴とする符号化方法。
【請求項２】
画像とその画像に対応するアルファ・プレーンを８×８画素ブロック毎に分解し、分割した各８×８画素ブロックのアルファ・プレーンによって決められるコンテントの領域に含まれない総てまたは一部の画素に対してサンプル値のパディングを施した各８×８画素ブロックの画像に２次元DCTを適用するコンテント・ベース符号化方法において、
上記８×８画素ブロック内の水平または垂直方向へ一列に並んだ８画素に対する１次元DCT基底上の係数を画素と対応した形で順番に並べ、並べられた係数の１番目と８番目、２番目と７番目、３番目と６番目、４番目と５番目の変換係数の間で絶対値が等しく且つ符号が反対である関係を１／２点対称と定義し、
上記８×８画素ブロックを２つの縦４×横８画素ブロックに分割した内、一方の縦４×横８画素ブロック中の総てまたは一部の画素がコンテントに含まれ、残りのもう一方の縦４×横８画素ブロック内の総ての画素がコンテントに含まれない状態の場合、
コンテントに含まれる画素が存在する縦４×横８画素ブロック中のコンテントに含まれない総ての画素に対してパディングを行い、もう一方のコンテントに含まれる画素が全くない縦４×横８画素ブロック中の総ての画素に対して垂直方向の１／２点対称の位置にある画素のサンプル値を用いたパディングを施すことを特徴とする符号化方法。
【請求項３】
画像とその画像に対応するアルファ・プレーンを８×８画素ブロック毎に分解し、分割した各８×８画素ブロックのアルファ・プレーンによって決められるコンテントの領域に含まれない総てまたは一部の画素に対してサンプル値のパディングを施した各８×８画素ブロックの画像に２次元DCTを適用するコンテント・ベース符号化方法において、
上記８×８画素ブロック内の水平または垂直方向へ一列に並んだ８画素に対する１次元DCT基底上の係数を画素と対応した形で順番に並べ、並べられた係数の１番目と８番目、２番目と７番目、３番目と６番目、４番目と５番目の変換係数の間で絶対値が等しく且つ符号が反対である関係を１／２点対称と定義し、上記８×８画素ブロックの画像を４つの４×４画素ブロックに分割した内の対角関係にある２つの４×４画素ブロック中の総てまたは一部の画素がコンテントに含まれ、残りのもう一方の対角関係にある２つの４×４画素ブロック内の総ての画素がコンテントに含まれない状態の場合、コンテントを含む対角関係にある２つの４×４画素ブロック中のコンテントに含まれない総ての画素に対してパディングを行い、もう一方のコンテントに含まれる画素が全くない対角関係にある２つの４×４画素ブロック内の総ての画素に対して水平または垂直方向の１／２点対称の位置にある画素のサンプル値を用いたパディングを施すことを特徴とする符号化方法。
【請求項４】
画像とその画像に対応するアルファ・プレーンを８×８画素ブロック毎に分解し、分割した各８×８画素ブロックのアルファ・プレーンによって決められるコンテントの領域に含まれない総てまたは一部の画素に対してサンプル値のパディングを施した各８×８画素ブロックの画像に２次元DCTを適用するコンテント・ベース符号化方法において、
上記８×８画素ブロック内の水平または垂直方向へ一列に並んだ８画素に対する１次元DCT基底上の係数を画素と対応した形で順番に並べ、並べられた係数の１番目と８番目、２番目と７番目、３番目と６番目、４番目と５番目の変換係数の間で絶対値が等しく且つ符号が反対である関係を１／２点対称と定義し、上記８×８画素ブロックの画像を４つの４×４画素ブロックに分割した内の１つの４×４画素ブロック中の総てまたは一部の画素がコンテントに含まれ、残りの３つの４×４画素ブロック内の総ての画素がコンテントに含まれない状態の場合、コンテントの画素を含む４×４画素ブロック中のコンテントに含まれない総ての画素に対してパディングを行い、パディングを施したコンテント内の画素を含む４×４画素ブロックと水平または垂直方向に隣接する、コンテントに含まれる画素が全くない１つの４×４画素ブロック内の総ての画素に対して、水平または垂直方向の１／２点対称の位置にある画素のサンプル値を用いたパディングを施し、その後、残りの２つの４×４画素ブロックの総ての画素に対し、垂直または水平方向の１／２点対称の位置にある画素のサンプル値を用いたパディングを施すことを特徴とする符号化方法。
【請求項５】
復号化される８×８画素ブロックのアルファ・プレーンを２つの縦８×横４画素ブロックに分割した内、一方の縦８×横４画素ブロック中の総てまたは一部の画素がコンテントに含まれ、残りのもう一方の縦８×横４画素ブロック中の総ての画素がコンテントに含まれない状態の場合、８行８列の重み付け係数ブロックの１列目、３列目、５列目、７列目に存在する係数を逆スキャンされた重み付け係数値、２列目、４列目、６列目、８列目に存在する係数を０として８×８画素ブロックの２次元逆DCTすることを特徴とする請求項１に記載される符号化方法で符号化された画像とその画像に対応するアルファプレーンの復号化方法。
【請求項６】
復号化される８×８画素ブロックのアルファ・プレーンを２つの縦４×横８画素ブロックに分割した内、一方の縦４×横８画素ブロック中の総てまたは一部の画素がコンテントに含まれ、残りのもう一方の縦４×横８画素ブロック中の総ての画素がコンテントに含まれない状態の場合、８行８列の重み付け係数ブロックの１行目、３行目、５行目、７行目に存在する係数を逆スキャンされた重み付け係数値、２行目、４行目、６行目、８行目に存在する係数を０として８×８画素ブロックの２次元逆DCTすることを特徴とする請求項２に記載される符号化方法で符号化された画像とその画像に対応するアルファプレーンの復号化方法。
【請求項７】
復号化される８×８画素ブロックのアルファ・プレーンを４つの４×４画素ブロックに分割した内、対角関係にある２つの４×４画素ブロック内の総てまたは一部の画素がコンテントに含まれ、残りの対角関係にある２つの４×４画素ブロック内の総ての画素がコンテントに含まれない状態の場合、８行８列の重み付け係数ブロックの１列目、３列目、５列目、７列目に存在する係数を逆スキャンされた重み付け係数値、２列目、４列目、６列目、８列目に存在する係数を０の重み付け係数値として２次元逆DCTすることを、または８行８列の重み付け係数ブロックの１行目、３行目、５行目、７行目に存在する係数を逆スキャンされた重み付け係数値、２行目、４行目、６行目、８行目に存在する係数を０として８×８画素ブロックの２次元逆DCTすることを特徴とする請求項３に記載される符号化方法で符号化された画像とその画像に対応するアルファプレーンの復号化方法。
【請求項８】
復号化される８×８画素ブロックのアルファ・プレーンを４つの４×４画素ブロックに分割した内、１つの４×４画素ブロック内の総てまたは一部の画素がコンテントに含まれ、残りの３つの４×４画素ブロック内の総ての画素がコンテントに含まれない状態の場合、８行８列の重み付け係数ブロックの１列目の１行目、３行目、５行目、７行目、３列目の１行目、３行目、５行目、７行目、５列目の１行目、３行目、５行目、７行目、７列目の１行目、３行目、５行目、７行目に存在する係数を逆スキャンされた重み付け係数値、残りの２列目、４列目、６列目、８列目、２行目、４行目、６行目、８行目に存在する係数を０の重み付け係数値として２次元逆DCTすることを特徴とする請求項４に記載される符号化方法で符号化された画像とその画像に対応するアルファプレーンの復号化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画面中の人物やその他の物体毎、つまりコンテント毎に符号化及び復号化を行う方法に関するものである。
【０００２】
【従来の技術】
画像のコンテント・ベース符号化及び復号化方法とは、MPEG（Moving Picture Experts Group）-1やMPEG-2で採用されているような長方形の画像全体を符号化及び復号化する方法ではなく、予め生成されたアルファ・プレーンによって切り出された画像の中の人物やその他の物体毎、つまりコンテント毎に符号化を行う方法である（例えば、栄藤、”画像符号化装置、画像復号化装置及び動きベクトル検出装置”、特開平08 - 1165424、1996.05.07）。
【０００３】
アルファ・プレーンとは、画像と全く同じ縦横の画素数を持ち、符号化対象となるコンテントの形状を表す、一種の画像を指す。アルファ・プレーンには各画素が１bitのバイナリ・アルファ・プレーンと、各画素が２bit以上のグレイスケール・アルファ・プレーンが存在している。バイナリ・アルファ・プレーンは通常、画素の値が１の領域はコンテントを表す画素の領域、０の領域はコンテントの外側を表す画素の領域であることが多い。以下、本明細書ではバイナリ・アルファ・プレーンを用いた場合に関して説明するが、この議論はほぼそのままグレイスケール・アルファ・プレーンを用いた場合にも適用することが出来る。
【０００４】
図２は符号化するコンテントに含まれる画素のサンプル値を説明する図である。図３には画像の一例１、アルファ・プレーンの一例２、画素のサンプル値が０である領域３、画素のサンプル値が１以上である領域４、コンテントに含まれる画素の領域５を示した。画像の一例１の各画素とアルファ・プレーンの一例２の各画素は、時間的にも空間的にも対応している。コンテント・ベース符号化は、画素のサンプル値が１以上の領域４と対応する、コンテントに含まれる画素の領域５の中の画素のサンプル値を符号化することに相当する。本明細書ではコンテントに含まれる画素の領域５の中の画素のサンプル値を８×８画素ブロックの２次元DCT（例えば、安田、”画像符号化技術 - DCTとその国際標準 -”、オーム社、1992）によって変換符号化する場合のみを扱う。しかし、DCTはブロック変換処理なので、コンテントのような任意の形状の領域を２次元DCTで変換符号化することは出来ない。そこでコンテントを表す画素を含む８×８画素ブロックの画像に対して８×８画素ブロックの２次元DCTを適用する為に、コンテントに含まれない画素に対して疑似的なサンプル値を与えて、８×８画素ブロックの画像を作成する必要がある。このように、コンテントに含まれない画素に疑似的なサンプル値を与える操作をパディングと呼ぶ。
【０００５】
図３は、符号化される８×８画素ブロックの例を説明する図である。図３（A）には８×８画素ブロック毎に分割されたアルファ・プレーンの例６、画素のサンプル値が１以上である領域７、画素のサンプル値が０である領域８、図３（B）には８×８画素ブロック毎に分割されたコンテントの画素を含む画像の例９、コンテントに含まれる画素の領域１０、パディングが施された画素の領域１１を示した。画素のサンプル値が１以上である領域７内の各画素とコンテントに含まれる画素の領域１０内の各画素は、時間的にも空間的にも対応している。従って、パディングが施された画素の領域１１は、画素のサンプル値が０である領域８と対応するように作られ、疑似的な８×８画素ブロックの画像を完成する。
【０００６】
またコンテント・ベース符号化方法にはイントラ符号化とインター符号化が用いられる。イントラ符号化は、入力画像を静止画像として符号化する方法である。一方、インター符号化は、入力画像と前に入力された画像との差分画像を符号化する方法である。
【０００７】
図４はコンテント・ベース符号化方法を実現する従来の符号化器の構成図である。図４には符号化器１２、イントラ・インター符号化切替信号１３、イントラ・インター符号化切替スイッチ１４、入力画像１５、入力アルファ・プレーン１６、パディング器１７、３２、８×８画素２次元DCT器１８、スキャニング器１９、量子化器２０、可変長符号化器２１、画像のビットストリーム２２、逆量子化器２３、逆スキャニング器２４、８×８画素２次元逆DCT器２５、加算器２６、遅延器２７、動き検出器２８、動きベクトル２９、パディング器及び動き報償器３０、差分器３１、差分画像３３、形状符号化器３４、アルファプレーンのビットストリーム３５、マルチプレクサー３６、伝送ビットストリーム３７を示した。以下に図４について説明する。
【０００８】
先ずイントラ符号化を選択するようにイントラ・インター符号化切替信号１３でイントラ・インター符号化切替スイッチ１４を切り替える。
【０００９】
図４のパディング器１７では入力画像１５と入力アルファ・プレーン１６を８×８画素ブロックに分解し、分解された８×８画素ブロックの画像の中のコンテントに含まれない画素に対してパディングが施される。一般的に、コンテントに含まれる画素のサンプル値と相関の無いサンプル値を用いてパディングを施した場合、コンテントの境界部には大きな不連続が生じる。この不連続が原因で、２次元DCTを適用した際に高周波成分のエネルギーが増加し、符号量が増加するという問題が生じる。この問題を解決するパディング方法としては、ミーンリプレースメントパディング方法（例えば、鹿喰、”領域サポートDCTを用いた任意形状符号化の検討”、TECHNICAL REPORT OF IEICE、IE95-109、pp.61~66、1995-12、または宮森、粕谷、富永、”構造化ビデオによる映像内容操作とその符号化フォーマットの検討”、TECHNICAL REPORT OF IEICE、IE95-148、pp.1~8、1996-03、等）が従来から考案されている。各８×８画素ブロック毎にミーンリプレースメントパディング方法を使用した場合、パディングに用いられるサンプル値は、８×８画素ブロックの画像の中のコンテントに含まれる全画素のサンプル値の平均値である。つまり図３（B）のパディングが施された画素の領域１１内の各画素のサンプル値は上記平均値である。
【００１０】
図４の８×８画素２次元DCT器１８では、図４のパディング器１７から出力された画像のサンプル値を８×８画素２次元DCTにより各８×８重み付け係数ブロックに変換する。
【００１１】
図４のスキャニング器１９では、８×８画素２次元DCT器１８から出力された８×８重み付け係数ブロック中の重み付け係数値をスキャンする。図５は、８×８重み付け係数ブロックのスキャン方法を説明する図である。図５（A）には８×８重み付け係数ブロックの例３８、水平方向３９、垂直方向４０、重み付け係数４１〜４２、領域４３を示した。図５（B）にはzigzagスキャン順序４４を示した。図５（A）の８×８重み付け係数ブロック３８の中の各重み付け係数と図５の（B）のzigzagスキャン順序４４の各枡目は一対一で対応する。また、図５（A）の重み付け係数４１を表す枡目はzigzagスキャン順序４４で０番目（最初）、図５（A）の重み付け係数４２の枡目はzigzagスキャン順序４４の６３番目（最後）の枡目に相当する。ここで図５（A）の水平方向３９及び垂直方向４０の矢印方向に行くに伴い高周波成分を表すと定義すると、図５（A）の重み付け係数４１はDC（直流）成分、重み付け係数４２は最も高い周波数成分を表すことになる。８×８重み付け係数ブロック３８の中の重み付け係数のエネルギーは、DC成分に集中し易く、水平成分及び垂直成分の高周波領域へ向かう方向に従ってエネルギーが低下していく傾向にある。故に、領域４３には重み付け係数値が０となる確率が高い領域が現われる。図４のスキャニング器１９では、図５（B）のzigzagスキャン順序４４に記述の数字の小さい方から順に、８×８重み付け係数ブロック毎の重み付け係数値をスキャンする。画像の空間方向の情報圧縮は、zigzagスキャン順序４４で一次元系列となった０の値の重み付け係数値群の符号化を省略することで可能となる。
【００１２】
図４の量子化器２０では、図４のスキャニング器１９でスキャンされた８×８重み付け係数内の重み付け係数値の量子化を行う。
【００１３】
図４の可変長符号化器２１では、図４の量子化器２０で量子化された８×８重み付け係数内の重み付け係数値の可変長符号化を行い、画像のビットストリーム２１を生成する。
【００１４】
図４の逆量子化器２３では、図４の量子化器２０で量子化された８×８重み付け係数内の重み付け係数値の逆量子化を行う。
【００１５】
図４の逆スキャニング器２４では図４の逆量子化器２３で逆量子化された８×８重み付け係数内の重み付け係数値を逆スキャンする。逆スキャンとは、図４のスキャニング器１９で図５（B）に記載のzigzagスキャン順序４４に従ってスキャンされた重み付け係数値を、スキャニング器１９に入力される以前の順番に並び直すことを指す。
【００１６】
図４の８×８画素２次元逆DCT器２５では、図４の逆スキャニング器２４で逆スキャンされた各８×８重み付け係数ブロック内の重み付け係数値に対して８×８画素２次元逆DCTを施し、復号画像を得る。
【００１７】
図４の遅延器２７では、図４の８×８画素２次元逆DCT器２５で得られた復号画像を直接、記録する。
【００１８】
以上でイントラ符号化が終了し、次にインター符号化が開始される。図４のイントラ・インター符号化切替信号１３でイントラ・インター符号化切替スイッチ１４を切り替え、インター符号化を選択する。本発明では、イントラ符号化時のパディング方法とスキャニング方法と逆スキャニング方法のみについて言及すれば十分なので、本明細書では図４に記載の加算器２６、動き検出器２８、動きベクトル２９、パディング器及び動き補償器３０、差分器３１、パディング器３２、差分画像３３の説明を省略する。
【００１９】
図４の形状符号化器３４では、図４の入力アルファ・プレーン１６を符号化し、アルファ・プレーンのビットストリーム３５を生成する。本発明の符号化方法では入力画像１５のイントラ符号化のみについて言及すれば十分なので、本明細書では形状符号化器３４の説明を省略する。
【００２０】
図４のマルチプレクサー３６では、イントラ・インター符号化切替信号１３と画像のビットストリーム２２と動きベクトル２９とアルファ・プレーンのビットストリーム３５を混合し、伝送ビットストリーム３７を生成する。
【００２１】
以上の符号化方法により、図４の符号化器１２から伝送ビットストリーム３７が出力される。
【００２２】
図６はコンテント・ベース復号化方法を実現する従来の復号化器の構成図である。図７には復号化器４５、伝送ビットストリーム４６、デマルチプレクサー４７、イントラ・インター復号化切替信号４８、イントラ・インター復号化切替スイッチ４９〜５０、画像のビットストリーム５１、可変長復号器５２、逆量子化器５３、逆スキャニング器５４、８×８画素逆DCT器５５、イントラ復号化が施された画像５６、遅延器５７、動きベクトル５８、パディング器及び動き補償器５９、パディング及び動き補償が施された画像６０、インター復号化が施された画像６１、加算器６２、加算画像６３、アルファ・プレーンのビットストリーム６４、形状復号化器６５、アルファプレーン６６、合成器６７、合成画像６８を示した。以下に図６について説明する。
【００２３】
先ず、インター復号化よりも先にイントラ復号化を行う。イントラ復号化は、イントラ符号化された画像のビットストリームを静止画像に復号化する方法である。一方、インター復号化は、インター符号化された画像のビットストリームを符号化される以前の入力画像と前に符号化器に入力された画像との差分画像に復号化する方法である。
【００２４】
図６のデマルチプレクサー４７では、伝送ビットストリーム４６をイントラ・インター復号化切替信号４８、画像のビットストリーム５１、動きベクトル５８、アルファ・プレーンのビットストリーム６４に分解する。
【００２５】
図６のイントラ・インター復号化切替スイッチ４９〜５０では、イントラ・インター復号化切替信号４８でイントラ・インター復号化切替スイッチ４９〜５０を切り替え、イントラ復号化を選択する。
【００２６】
図６の可変長復号器５２では、画像のビットストリーム５１を可変長復号化する。
【００２７】
図６の逆量子化器５３では、可変長復号化されたを各８×８重み付け係数ブロック内の係数値を逆量子化する。
【００２８】
図６の逆スキャニング器５４では、上述の図４の逆スキャニング器２４で用いられたzigzagスキャン順序４４で８×８重み付け係数ブロック内の重み付け係数値を逆スキャンする。但し、図４の符号化器１２で符号化を省略された、一次元系列に並べられた０の値の重み付け係数値群は、図５のzigzagスキャン順序４４に従って０の重み付け係数値を８×８重み付け係数ブロック内に配置され、残りの符号化された重み付け係数値はzigzagスキャン順序４４に従って逆スキャンされる。
【００２９】
図６の８×８画素逆DCT器５５では、図６の逆スキャニング器５４で逆スキャンされた各８×８重み付け係数ブロック内の重み付け係数値に対して８×８画素２次元逆DCTを施し、イントラ復号化された画像５６を得る。イントラ復号化された画像５６はコンテントに含まれない画素にパディングが施されたままとなっている。
【００３０】
図６の遅延器５７では、図６の８×８画素２次元逆DCT器５５で得られたイントラ復号化された画像５６を直接、記録する。
【００３１】
以上でイントラ復号化が終了し、次にインター復号化が開始される。図６のイントラ・インター復号化切替信号４８でイントラ・インター復号化切替スイッチ４９〜５０を切り替え、インター復号化を選択する。本発明の復号化方法ではイントラ復号化時の逆スキャン方法のみについて言及すれば十分なので、本明細書では図６に記載の動きベクトル５８、パディング器及び動き補償器５９、パディング及び動き報償が施された画像６０、インター復号化が施された画像６１、加算器６２、加算画像６３の説明を省略する。
【００３２】
図６の形状復号化器６５では、アルファ・プレーンのビットストリーム６４からアルファプレーン６６を復号化する。本発明の復号化方法では図６の画像のビットストリーム５１のイントラ復号化のみについて言及すれば十分なので、本明細書では形状復号化器６５の説明を省略する。
【００３３】
図６の合成器６７では、復号化されたアルファプレーン６６のサンプル値が１以上である画素に対応する画素をイントラ復号された画像５６から抜き出す。抜き出された画素の集まりが合成画像６８である。
【００３４】
以上の復号化処理により、図６の復号化器４５から合成画像６８が出力される。
【００３５】
ところで上でミーンリプレースメントパディング方法を説明したが、ここではその他のパディング方法としてシンメトリックパディング方法（三坂、”DCT基底が持つ対称性を利用したパディング方式”、1997年電子情報通信学会総合大会、D-11-34、pp.34）を用いることを考える。
【００３６】
８×８画素ブロックの２次元DCTを施すことは、先ず８×８画素ブロック中の水平方向に並んだ８画素に対して１次元DCTを施し、求まった８×８個の重み付け係数に対し垂直方向に更に１次元DCTを施すことに相当する。反対に８×８画素ブロック中の垂直方向に並んだ８画素に対して１次元DCTを施し、求まった８×８個の重み付け係に対し水平方向に更に１次元DCTを施しても全く同じ変換処理を実現することが可能である。
【００３７】
図７は８画素の１次元DCTの変換基底を説明する図である。図７中の６９〜７６は８画素の１次元DCTの第１〜８変換基底、７７〜８４は８画素の１次元DCTの第１〜８変換基底上の個々の係数を表す。変換基底とは、信号を特定の周波数成分の重み付け係数に変換する為に用いる係数群のことをいう。図７に示した８画素の１次元DCTの第１変換基底はDC（直流）成分を表し、第２〜８変換基底に行くに従って高周波成分を表している。各周波数成分の重み付け係数は、各変換基底上に存在する係数とその係数に対応する画素のサンプル値との積和演算で求まる。ここで注目すべきことは、各変換基底上の係数の間に対称性が存在することである。
【００３８】
図８はシンメトリックパディング方法で用いる点対称の概念を説明する図である。図８には８×８画素ブロックの画像８５、パディングが施される画素８６、水平方向に１／２、１／４、１／８点対称の係数対を持つ８画素１次元DCTの変換基底の例８７〜８９、垂直方向に１／２、１／４、１／８点対称の係数対を持つ８画素１次元DCTの変換基底の例９０〜９２、パディングが施される画素８６に対して水平方向の１／２、１／４、１／８点対称の位置に存在する画素９３〜９５、パディングが施される画素８６に対して垂直方向の１／２、１／４、１／８点対称の位置に存在する画素９６〜９８を示す。ここで定義する点対称とは、８画素の１次元DCTの着目する変換基底上に存在する、絶対値が等しく且つ符号が反対である２個の係数の関係を言う。また、水平及び垂直方向に並んだ８画素と対応する１次元DCTの変換基底上の係数を８画素のサンプル値の並びに対応した形で順番に並べ、並べられた係数の１番目と８番目、２番目と７番目、３番目と６番目及び４番目と５番目の間で点対称となっている関係を１／２点対称、１番目と４番目、２番目と３番目、５番目と８番目及び６番目と７番目の間で点対称となっている関係を１／４点対称、そして１番目と２番目、３番目と４番目、５番目と６番目及び７番目と８番目の間で点対称となっている関係を１／８点対称と定義する。以上の定義に基づくと図７の８画素の１次元DCTの各変換基底において、変換基底７０と７２と７４と７６が１／２点対称、変換基底７９と７５が１／４点対称、変換基底８１が１／８点対称の変換基底である。
【００３９】
図９はシンメトリックパディング方法を説明する図である。図９には８×８画素ブロックの画像の例９９、コンテントに含まれる画素１００、コンテントに含まれない画素１０１、パディングが施される画素１０２、パディングされる画素１０２に対し水平方向に１／２点対称の画素のサンプル値を用いるシンメトリックパディング１０３、垂直方向に１／２点対称の画素のサンプル値を用いるシンメトリックパディング１０４を示す。これらのパディング操作を行うことにより等しくされた２個のサンプル値は互いに８画素の１次元DCTによる変換過程で相殺され、周波数領域に変換された重み付け係数を積極的に小さくすることが可能となる。
【００４０】
上で定義した８画素１次元DCTの変換基底の１／２点対称の概念を用い、例えば、８画素１次元DCTの変換基底上の１番目と８番目の係数、２番目と７番目の係数、３番目と６番目の係数、４番目と５番目の係数と対応する２つの画素のサンプル値が同値である一列の８画素のサンプル値を考慮した場合、８画素１次元DCTして得られた８個の重み付け係数ブロックの内、１／２点対称の８画素１次元DCTの変換基底に対する重み付け係数値は必ず０となる。
【００４１】
【発明が解決しようとする課題】
そこで本発明は、水平及び垂直方向に１／２点対称の画素のサンプル値を用いるシンメトリックパディングを施すことにより、値が０となる重み付け係数の数を増加させ、増加した０の重み付け係数を符号化しないことによって高い符号化効率を達成する、画像のコンテント・ベース符号化方法及び復号化方式を提供することを目的とする。
【００４２】
【課題を解決するための手段】
上記の目的を達成する為、符号化器では、アルファプレーンを８×８画素ブロック毎に分解し、分解された８×８画素ブロック毎にアルファプレーンの８×８画素ブロック内のサンプル値が表す形状を判別し、判別された形状の特徴に応じてパディング方法を決定し、決定したパディング方法に応じてスキャン方法と逆スキャン方法を決定する、また復号化器では、復号したアルファプレーンを８×８画素ブロック毎に分解し、分解された８×８画素ブロック毎にアルファプレーンの８×８画素ブロック内のサンプル値が表す形状を判別し、判別された形状の特徴に応じて逆スキャン方法を決定する、という手段を採用する。
【００４３】
【発明の実施の形態】
以下では、パディングが施される画素に対して水平または垂直方向に１／２点対称のの位置の画素のサンプル値を用いるシンメトリックパディングを、水平または垂直方向の１／２点対称のシンメトリックパディングと呼ぶ。
【００４４】
図１０は、コンテントの画素が含まれる縦８×横４画素ブロックとコンテントの画素が含まれない縦８×横４画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、水平方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図である。図１０（A）には８×８画素ブロックの画像の例１０５、コンテントに含まれる画素が存在する縦８×横４画素ブロック１０６、コンテントに含まれる画素が存在しない縦８×横４画素ブロック１０７、図１０（B）には８×８画素ブロックの画像の例１０８、コンテントに含まれる画素が存在する縦８×横４画素ブロック１０９、コンテントに含まれる画素が存在しない縦８×横４画素ブロック１１０、図１０（C）には８×８重み付け係数ブロックの例１１１、重み付け係数１１２〜１１３を示す。但し、コンテントに含まれる画素が存在する縦８×横４画素ブロック１０６及び１０９内のコンテントに含まれない画素に対しては予め、適当なサンプル値でパディングを施してあるものとする。８×８画素ブロックの画像の例１０５及び１０８に対して水平方向の１／２点対称のシンメトリックパディング及び２次元DCTを施すと、８×８重み付け係数ブロックの例１１１が得られる。８×８重み付け係数ブロックの例１１１に存在する重み付け係数１１３は、確実に値が０になる重み付け係数を表す。従って図１０（C）より、８×８重み付け係数ブロックの例１１１には値が０の重み付け係数が必ず３２個存在することになる。３２個の重み付け係数１１３以外の３２個の重み付け係数１１２の値のみを符号化することで符号化効率を高くすることができる。
【００４５】
図１１は、コンテントに含まれる画素が存在する縦４×横８画素ブロックとコンテントに含まれる画素が存在しない縦４×横８画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、垂直方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図である。図１１（A）には８×８画素ブロックの画像の例１１４、コンテントに含まれる画素が存在する縦４×横８画素ブロック１１５、コンテントに含まれる画素が存在しない縦４×横８画素ブロック１１６、図１１（B）には８×８画素ブロックの画像の例１１７、コンテントに含まれる画素が存在する縦４×横８画素ブロック１１８、コンテントに含まれる画素が存在しない縦４×横８画素ブロック１１９、図１１（C）には８×８重み付け係数ブロックの例１２０、重み付け係数１２１〜１２２を示した。但し、コンテントに含まれる画素が存在する縦４×横８画素ブロック１１５及び１１８内のコンテントに含まれない画素に対しては予め、適当なサンプル値でパディングを施してあるものとする。８×８画素ブロックの画像の例１１４及び１１７に対して垂直方向の１／２点対称のシンメトリックパディング及び２次元DCTを施すと、８×８重み付け係数ブロックの例１２０が得られる。８×８重み付け係数ブロックの例１２０に存在する重み付け係数１２２は、確実に値が０になる重み付け係数を表す。従って図１１（C）より、８×８重み付け係数ブロックの例１２０には値が０の重み付け係数が必ず３２個存在することになる。３２個の重み付け係数１２２以外の３２個の重み付け係数１２１の値のみを符号化することで符号化効率を高くすることができる。
【００４６】
図１２は、コンテントに含まれる画素が存在する対角位置の２つの４×４画素ブロックとコンテントに含まれる画素が存在しない対角位置の２つの４×４画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、水平または垂直方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図である。図１２（A）には８×８画素ブロックの画像の例１２３、コンテントに含まれる画素が存在する対角位置の２つの４×４画素ブロック１２４、コンテントに含まれる画素が存在しない対角位置の２つの４×４画素ブロック１２５、図１２（B）には８×８画素ブロックの画像の例１２６、コンテントに含まれる画素が存在する対角位置の２つの４×４画素ブロック１２７、コンテントに含まれる画素が存在しない対角位置の２つの４×４画素ブロック１２８、図１２（C）には８×８重み付け係数ブロックの例１２９、重み付け係数１３０〜１３１、図１２（D）には８×８重み付け係数ブロックの例１３２、重み付け係数１３３〜１３４を示した。但し、コンテントに含まれる画素が存在する対角位置の２つの４×４画素ブロック１２４及び１２７内のコンテントに含まれない画素に対しては予め、適当なサンプル値でパディングを施してあるものとする。８×８画素ブロックの画像の例１２３及び１２６に対して水平方向の１／２点対称のシンメトリックパディング及び２次元DCTを施すと、８×８重み付け係数ブロックの例１２９が得られる。８×８重み付け係数ブロックの例１２９に存在する重み付け係数１３１は、確実に値が０になる重み付け係数を表す。従って図１２（C）より、８×８重み付け係数ブロックの例１２９には値が０の重み付け係数が必ず３２個存在することになる。３２個の重み付け係数１３１以外の３２個の重み付け係数１３０の値のみを符号化することで符号化効率を高くすることができる。また、８×８画素ブロックの画像の例１２３及び１２６に対して垂直方向の１／２点対称のシンメトリックパディング及び２次元DCTを施すと、８×８重み付け係数ブロックの例１３２が得られる。８×８重み付け係数ブロックの例１３２に存在する重み付け係数１３４は、確実に値が０になる重み付け係数を表す。従って図１２（D）より、８×８重み付け係数ブロックの例１３２には値が０の重み付け係数が必ず３２個存在することになる。３２個の重み付け係数１３４以外の３２個の重み付け係数１３３の値のみを符号化することで符号化効率を高くすることができる。
【００４７】
図１３は、コンテントに含まれる画素が存在する１つの４×４画素ブロックとコンテントに含まれる画素が存在しない３つの４×４画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、水平及び垂直方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図である。図１３（A）には８×８画素ブロックの画像の例１３５、コンテントに含まれる画素が存在する１つの４×４画素ブロック１３６、コンテントに含まれる画素が存在しない３つの４×４画素ブロック１３７、図１３（B）には８×８画素ブロックの画像の例１３８、コンテントに含まれる画素が存在する１つの４×４画素ブロック１３９、コンテントに含まれる画素が存在しない３つの４×４画素ブロック１４０、図１３（C）には８×８画素ブロックの画像の例１４１、コンテントに含まれる画素が存在する１つの４×４画素ブロック１４２、コンテントに含まれる画素がない３つの４×４画素ブロック１４３、図１３（D）には８×８画素ブロックの画像の例１４４、コンテントに含まれる画素が存在する１つの４×４画素ブロック１４５、コンテントに含まれる画素が存在しない３つの４×４画素ブロック１４６、図１３（E）には８×８重み付け係数ブロックの例１４７、重み付け係数１４８〜１４９を示した。但し、コンテントに含まれる画素が存在する１つの４×４画素ブロック１３６、１３９、１４２、１４５内のコンテントに含まれない画素に対しては予め、適当なサンプル値でパディングを施してあるものとする。８×８画素ブロックの画像の例１３５、１３８、１４１、１４４に対して水平または垂直方向の１／２点対称のシンメトリックパディングを施し、更に垂直または水平方向の１／２点対称のシンメトリックパディングを施し、２次元DCTを施すと、８×８重み付け係数ブロックの例１４７が得られる。８×８重み付け係数ブロックの例１４７に存在する重み付け係数１４９は、確実に値が０になる重み付け係数を表す。従って図１３（E）より、８×８重み付け係数ブロックの例１４７には値が０の重み付け係数が必ず４８個存在することになる。４８個の重み付け係数１４９以外の１６個の重み付け係数１４８の値のみを符号化することで符号化効率を高くすることができる。
【００４８】
そこで、図１０〜１３で挙げた１０種類の８×８画素ブロックの画像の状態の判別結果から１／２点対称のシンメトリックパディング、スキャン方法、逆スキャン方法を切り替えることが可能な符号化方法及び逆スキャン方法を切り替えることが可能な復号化方法が要求される。以下に本発明による符号化方法及び復号化方法を説明する。
【００４９】
図１は本発明によるコンテント・ベース符号化方法を実現する符号化器の構成図である。図１には符号器１５０、イントラ・インター符号化切替信号１５１、イントラ・インター符号化切替スイッチ１５２、入力画像１５３、入力アルファ・プレーン１５４、形状判別器１５５、パディング選択線１５６、スキャニング選択線１５７、パディング器１５８、１７３、８×８画素２次元DCT器１５９、スキャニング器１６０、量子化器１６１、可変長符号化器１６２、画像のビットストリーム１６３、逆量子化器１６４、逆スキャニング器１６５、８×８画素２次元逆DCT器１６６、加算器１６７、遅延器１６８、動き検出器１６９、動きベクトル１７０、パディング器及び動き補償器１７１、差分器１７２、差分画像１７４、形状符号化器１７５、アルファ・プレーンのビットストリーム１７６、マルチプレクサー１７７、伝送ビットストリーム１７８を示す。以下に図１の符号化器１５０について説明する。図１の符号化器１５０の処理順序は図２の符号化器１２と殆ど同じである。異なる点は、形状判別器１５５が入力アルファプレーン１５４で示される形状を逐次判別しながら、パディング方法、スキャニング方法及び逆スキャニング方法を切り替える点である。
【００５０】
先ずイントラ符号化を選択するように図１のイントラ・インター符号化切替信号１５１で図１のイントラ・インター符号化切替スイッチ１５２を切り替える。
【００５１】
次に図１の入力アルファ・プレーン１５４の形状を図１の形状判別器１５５で判別し、図１のパディング器１５８、スキャニング器１６０、逆スキャニング器１６５に信号を送信する。図１４は形状判別器の処理の実施例を表すフローチャートである。図１４には処理１７９〜１９４を示す。処理は処理開始から処理終了まで矢印の順に従って行われる。
【００５２】
先ず図１４の処理１７９では入力アルファプレーン１５４を８×８画素ブロック毎に分解する。
【００５３】
次に図１４の処理１８０を行う。図１５は図１４の処理１８０を説明する図である。図１５には４×４画素ブロックのアルファプレーン１９５〜１９８を示した。図１４の処理１７９で分解された８×８画素ブロックのアルファプレーンを縦横に２等分割し、４つの４×４画素ブロックアルファプレーン１９５〜１９８を作る。４×４画素ブロックアルファプレーン１９５の位置は、分解される以前の８×８画素ブロックのアルファプレーンの左上、４×４画素ブロックのアルファプレーン１９６の位置は、分解される以前の８×８画素ブロックのアルファプレーンの右上、４×４画素ブロックアルファプレーン１９７の位置は、分解される以前の８×８画素ブロックのアルファプレーンの左下、４×４画素ブロックのアルファプレーン１９８の位置は、分解される以前の８×８画素ブロックのアルファプレーンの右下である。４×４画素ブロックのアルファプレーン１９５〜１９８の各枡目の内、斜線部はサンプル値が０以上の画素１９９、白抜き部はサンプル値が０の画素２００である。
【００５４】
図１４の処理１８１では、図１４の処理１８０で分解した各４×４画素ブロックアルファプレーンの内の全画素に対して論理和を求め、求めた４つの論理和の合計を計算する。図１６は図１４の処理１８１を説明する図である。図１６には論理和２０１〜２０４を示した。求められた論理和の合計は図１４に示すcountとして記録される。図１６の４つの論理和２０１〜２０４が示すそれぞれの数字は、図１５に記載の４つのそれぞれの４×４画素ブロックのアルファプレーン１９５〜１９８内の全画素に対する論理和を表している。従って図１６の場合、countは２となる。
【００５５】
図１４の処理１８２ではcountを判別する。もしcountが０ならば図１４の処理１８３、countが１ならば処理１８４、countが２ならば処理１８５、countが３ならば処理１８９、countが４ならば処理１９０を行う。
【００５６】
countが０の場合、図１４の処理１８１で求めた４つの論理和が総て０であることを表す。つまり８×８画素ブロックの画像にはコンテントに含まれる画素が全くないと判断される。図１４の処理１８３では、図１のパディング選択線１５６でパディング器１５８にTransparent信号を、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にTransparent信号を送信する。
【００５７】
countが１の場合、図１４の処理１８１で求めた４つの論理和の内、一つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、１つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１８４では、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.1信号を送信する。更に図１のパディング選択線１５６で、図１６の４つの論理和の内、右下に位置する論理和のみが１の場合にはBound.1_1信号、図１６の４つの論理和の内、左下に位置する論理和のみが１の場合にはBound.1_2信号、図１６の４つの論理和の内、右上に位置する論理和のみが１の場合にはBound.1_3信号、図１６の４つの論理和の内、左上に位置する論理和のみが１の場合にはBound.1_4信号を図１のパディング器１５８に送信する。
【００５８】
countが３の場合、図１４の処理１８１で求めた４つの論理和の内、一つのみが０であることを表す。つまり４つの４×４画素ブロックの画像の内、３つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１８９では、図１のパディング選択線１５６でパディング器１５８にBound.4信号を、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.4信号を送信する。
【００５９】
countが２の場合、図１４の処理１８１で求めた４つの論理和の内、２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、２つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。しかし、どの位置の２つの４×４画素ブロックの画像にコンテントの画素が含まれるのかはわからない。そこで図１４の処理１８５を説明する図を施す。図１７は図１４の処理１８５を説明する図である。図１７には論理和２０５〜２０８を示す。処理１８５では、図１４の処理１８１で求めた４つの論理和の内、図１６の水平方向に位置する２つの論理和同士の排他的論理和を計算し、計算した値をcnt_aとして記録する。図１７に記載の論理和２０５〜２０８は図１６の論理和２０１〜２０４と同一である。図１７の場合、排他的論理和cnt_aは１である。
【００６０】
図１４の処理１８６は処理１８５で求めたcnt_aを判別する。もし、cnt_aが１ならば図１４の処理１８７、cnt_aが０ならば図１４の処理１８８に進む。
【００６１】
cnt_aが１の場合、図１４の処理１８１で求めた４つの論理和の内、垂直方向または対角方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、垂直方向または対角方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１８７では、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.2信号を送信する。更に図１のパディング選択線１５６で、図１６の４つの論理和の内、左側に位置する２つの論理和のみが１の場合にはBound.2_1信号、図１６の４つの論理和の内、右側に位置する２つの論理和のみが１の場合にはBound.2_2信号、図１６の４つの論理和の内、左上と右下に位置する２つの論理和のみが１の場合にはBound.2_3信号、図１６の４つの論理和の内、左下と右上に位置する２つの論理和のみが１の場合にはBound.2_4信号を図１のパディング器１５８に送信する。
【００６２】
cnt_aが０の場合、図１４の処理１８１で求めた４つの論理和の内、水平方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、水平方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１８８では、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.3信号を送信する。更に図１のパディング選択線１５６で、図１６の４つの論理和の内、上側に位置する２つの論理和のみが１の場合にはBound.3_1信号、図１６の４つの論理和の内、下側に位置する２つの論理和のみが１の場合にはBound.3_2信号を図１のパディング器１５８に送信する。
【００６３】
また図１４の処理１８５では図１７で説明した処理とは異なるの見方ができる。図１８は図１７と別の処理１８５を説明する図である。図１８には論理和２０９〜２１２を示す。上述の処理１８５では、図１４の処理１８１で求めた４つの論理和の内、図１６の水平方向に位置する２つの論理和同士の排他的論理和を計算したが、ここでは垂直方向に位置する２つの論理和同士の排他的論理和を計算し、計算した値をcnt_aとして記録する。図１８に記載の論理和２０９〜２１２は図１６の論理和２０１〜２０４と同一である。図１８の場合、排他的論理和cnt_aは０である。
【００６４】
図１８の方法で図１４の処理１８１を施した結果、cnt_aが１の場合、図１４の処理１８１で求めた４つの論理和の内、水平方向または対角方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、水平方向または対角方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１８７では、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.2信号を送信する。更に図１のパディング選択線１５６で、図１６の４つの論理和の内、上側に位置する２つの論理和のみが１の場合にはBound.2_1信号、図１６の４つの論理和の内、下側に位置する２つの論理和のみが１の場合にはBound.2_2信号、図１６の４つの論理和の内、左上と右下に位置する２つの論理和のみが１の場合にはBound.2_3信号、図１６の４つの論理和の内、左下と右上に位置する２つの論理和のみが１の場合にはBound.2_4信号を図１のパディング器１５８に送信する。
【００６５】
図１８の方法で図１４の処理１８１を施した結果、cnt_aが０の場合、図１４の処理１８１で求めた４つの論理和の内、垂直方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、垂直方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１８８では、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.3信号を送信する。更に図１のパディング選択線１５６で、図１６の４つの論理和の内、左側に位置する２つの論理和のみが１の場合にはBound.3_1信号、図１６の４つの論理和の内、右側に位置する２つの論理和のみが１の場合にはBound.3_2信号を図１のパディング器１５８に送信する。
【００６６】
図１４の処理１８１で求めた４つの論理和の内、図１６の水平方向に位置する２つの論理和同士の排他的論理和に着目するか、垂直方向に位置する２つの論理和同士の排他的論理和に着目するかは、処理１８５を行う以前に事前に決めておく。以下では図１６の水平方向に位置する２つの論理和同士の排他的論理和を使用する。
【００６７】
図１４の処理１８１でcountが４となった場合、処理１９０を行う。図１９は図１４の処理１９０を説明する図である。図１９には８×８画像ブロックのアルファ・プレーンの例２１３、２１６、サンプル値が０以上の画素２１４、２１７、サンプル値が０の画素２１５を示す。処理１９０では処理１８０で４つに分解された４×４画素ブロックのアルファ・プレーンを元の８×８画素ブロックのアルファプレーンの状態に戻す。図１９（A）は、コンテントに含まれない画素が１つの４×４画素ブロックのアルファ・プレーンのみに存在する８×８画素ブロックのアルファ・プレーン、図１９（B）は全画素がコンテントに含まれる画素である８×８画素ブロックのアルファ・プレーンを表している。
【００６８】
図１４の処理１９１では、処理１９０で元通りになった８×８画素ブロックのアルファ・プレーンの内の全画素の論理積を求め、求めた値をcnt_bとして記録する。図２０は図１４の処理１９１を説明する図である。図２０には論理積２１８〜２１９を示す。図２０（A）の論理積２１８、図２０（B）に示した論理積２１９はそれぞれ図１９（A）の８×８画素ブロックのアルファ・プレーン、図１９（B）の８×８画素ブロックのアルファ・プレーンに対する論理積を表している。
【００６９】
図１４の処理１９２は処理１９０で得られた論理積cnt_bを判別する。もし、cnt_bが０ならば処理１９３、cnt_bが１ならば処理１９４を行う。
【００７０】
cnt_bが０の場合、図１４の処理１９１で求めた論理積が０であることを表す。つまり分解された４つの４×４画素ブロックの画像の内、３つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図１４の処理１９３では、図１のパディング選択線１５６でパディング器１５８にBound.5信号を、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にBound.5信号を送信する。
【００７１】
cnt_bが１の場合、図１４の処理１９１で求めた論理積が１であることを表す。つまり８×８画素ブロックの画像の内の全画素がコンテントに含まれると判断される。図１４の処理１９４では、図１のパディング選択線１５６でパディング器１５８にOpaque信号を、図１のスキャニング選択線１５７でスキャニング器１６０と逆スキャニング器１６５にOpaque信号を送信する。
【００７２】
以上で図１４の符号化器の形状判別器の処理例のフローチャートが終了する。上述より、図１の符号化器１５０の形状判別器１５５からはTransparent信号、またはBound.1_1信号、またはBound.1_2信号、またはBound.1_3信号、またはBound.1_4信号、またはBound.2_1信号、またはBound.2_2信号、またはBound.2_3信号、またはBound.2_4信号、またはBound.3_1信号、またはBound.3_2信号、またはBound.4信号、またはBound.5信号、またはOpaque信号がパディング選択線１５６を通ってパディング器１５８に送信される。Transparent信号、Bound.1_1信号、Bound.1_2信号、Bound.1_3信号、Bound.1_4信号、Bound.2_1信号、Bound.2_2信号、Bound.2_3信号、Bound.2_4信号、Bound.3_1信号、Bound.3_2信号、Bound.4信号、Bound.5信号及びOpaque信号には例えば０〜１３までの番号を割り当て、それぞれの信号を区別する。図１のパディング器１５８では以上の１４通りの番号を判別し、パディング方法を決める。
【００７３】
同じく、図１の符号化器１５０の形状判別器１５５からはTransparent信号、またはBound.1信号、またはBound.2信号、またはBound.3信号、またはBound.4信号、またはBound.5信号、またはOpaque信号がスキャニング選択線１５７を通ってスキャン器１６０及び逆スキャン器１６５に送信される。Transparent信号、Bound.1信号、Bound.2信号、Bound.3信号、Bound.4信号、Bound.5信号及びOpaque信号には例えば０〜６までの番号を割り当て、それぞれの信号を区別する。図１のスキャニング器１６０及び逆スキャニング器１６５では以上の７通りの番号を判別し、スキャン方法及び逆スキャン方法を決める。以上で図１の符号化器１５０の形状判別器１５５の処理例の説明を終了する。
【００７４】
図１のパディング器１５８では図１の入力画像１５３と図１の入力アルファ・プレーン１５４を８×８画素ブロックに分解し、分解された８×８画素ブロックの画像の中のコンテントに含まれない画素に対してパディングが施される。以下に図１のパディング器１５８を説明する。
【００７５】
図２１は、図１の符号化器のパディング器１５８の構成図である。図２１にはパディング器２２０、パディング選択線２２１、パディング選択器２２２、パディング選択スイッチ２２３、２６１、８×８画素ブロックの画像２２４、２６２、経路２２５〜２３７、８×８画素ブロックのアルファ・プレーン２３８、ゼロ・パディング器２３９、パディング器２２０内のパディング器２４０〜２６０を示す。図１のパディング器１５８では、図１の形状判別器１５５から図２１のパディング選択線２２１を通って送信された信号をパディング選択器２２２で受信し、受信した信号によってパディング選択スイッチ２２３、２６１を適宜切り替え、経路２２５〜２３７の中から一つの経路を選択する。但し、図２１パディング選択線２２１は図１のパディング選択線１５６と同一である。
【００７６】
ここで以下のように設定する。もし図２１のパディング選択器２２２で受信した信号がOpaque信号ならば図２１のパディング選択スイッチ２２３、２６１を切り替え、経路２２５を選ぶ。同じように、もしTransparent信号ならば経路２２６、Bound.1_1信号ならば経路２２７、Bound.1_2信号ならば経路２２８、Bound.1_3信号ならば経路２２９、Bound.1_4信号ならば経路２３０、Bound.2_1信号ならば経路２３１、Bound.2_2信号ならば経路２３２、Bound.2_3信号ならば経路２３３、Bound.2_4信号ならば経路２３４、Bound.3_1信号ならば経路２３５、Bound.3_2信号ならば２３６、Bound.4信号ならば経路２３７、Bound.5信号ならば経路２３７を選ぶ。
【００７７】
図２１のゼロ・パディング器２３９は入力された８×８画素ブロックの画像２２４の総ての画素のサンプル値を０にする。
【００７８】
図２１のパディング器２２０内のパディング器２４０〜２５０は、入力された８×８画素ブロックの画像２２４内のコンテントに含まれない総てまたが一部の画素に対し、例えばミーンリプレイスメントパディング等のパディング方法で適切なサンプル値のパディングを施す。
【００７９】
図２１のパディング器２２０内のパディング器２５１〜２６０では、シンメトリックパディング１、シンメトリックパディング２、シンメトリックパディング３、シンメトリックパディング４のパディング方法を用いる。図２２〜２５を用いて以下にシンメトリックパディング１、シンメトリックパディング２、シンメトリックパディング３、シンメトリックパディング４の説明をする。
【００８０】
図２２は、シンメトリックパディング１のアルゴリズムのフローチャートである。図２２には処理２６３〜２６８を示す。シンメトリックパディング１は、８×８画素ブロックの画像の水平ライン上でコンテントに含まれない画素に対し、水平座標の大きい方の、、１／２点対称の位置に存在するコンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値を用いてパディングを行う。図２２のフローチャート中にはi、j、Row、Col.、Pstn_C_1、Pstn_R_1、Pstn_R_2、Pstn_C_2を示す。iは８×８画素ブロックの画像の水平ライン上を水平方向に、jは８×８画素ブロックの画像の垂直ライン上を垂直方向にパディング操作を移動させる為に用いるパラメータである。Rowは水平ライン上のパディング操作の移動範囲、Col.は垂直ライン上のパディング操作の移動範囲のパラメータである。Pstn_R_1とPstn_R_2は８×８画素の画像ブロック上の水平座標、Pstn_C_1、Pstn_C2は８×８画素の画像ブロック上の垂直座標を表す。図２２のフローチャート中のimg_blk(Pstn_R_1+i,Pstn_C_1+j)は８×８画素ブロックの画像上のコンテントに含まれない画素のサンプル値、img_blk(Pstn_R_2-i,Pstn_C_2+j)は８×８画素ブロックの画像上のimg_blk(Pstn_R_1+i,Pstn_C_1+j)よりも水平座標の大きい方に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値である。img_blk(Pstn_R_1+i,Pstn_C_1+j)とimg_blk(Pstn_R_2-i,Pstn_C_2+j)は水平ライン上で１／２点対称の位置関係にある。先ず処理２６３で、iとjを０に、Row、Col.、Pstn_R_1、Pstn_C_1、Pstn_R_2及びPstn_C_2をそれぞれ適当な値に初期化する。次に処理２６４に進んでjがCol.より小さいかを判定する。もし小さいならば処理２６５に進み、iがRowより小さいかを判定する。もし小さいならば処理２６６に進む。処理２６６はimg_blk(Pstn_R_2-i,Pstn_C_2+j)を用いて水平座標Pstn_R_1+i、垂直座標Pstn_C_1+jの位置の画素に対し、パディングを行う。処理２６６の終了後、処理２６７でパラメータiに1を足し、処理２６５に戻る。処理２６５〜２６７までの処理過程は、一つの水平ライン上のパディング操作が終了するまで、パディングが施される画素とパディングを施す画素との間で水平方向に１画素づつ近付けながらパディング操作を行うことに相当する。処理２６５でiがRow以上となった、つまり一つの水平ラインのパディング操作が終了したら処理２６８に進み、パラメータjに1を足して処理２６４に戻る。処理２６４〜２６８までの処理過程は、水平ラインのパディング操作を垂直方向に１画素づつ移動させることに相当する。処理２６４でjがCol.以上となるとシンメトリックパディング１のパディング操作は終了となる。
【００８１】
図２３はシンメトリックパディング２のアルゴリズムのフローチャートである。図２３には処理２６９〜２７４を示す。シンメトリックパディング２は、８×８画素ブロックの画像の水平ライン上でコンテントに含まれない画素に対し、水平座標の小さい方の１／２点対称の位置に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値を用いてパディングを行う。図２３のフローチャート中にはi、j、Row、Col.、Pstn_C_1、Pstn_R_1、Pstn_R_2、Pstn_C_2を示した。iは８×８画素ブロックの画像の水平ライン上を水平方向に、jは８×８画素ブロックの画像の垂直ライン上を垂直方向にパディング操作を移動させる為に用いるパラメータである。Rowは水平ライン上のパディング操作の移動範囲、Col.は垂直ライン上のパディング操作の移動範囲のパラメータを表す。Pstn_R_1とPstn_R_2は８×８画素の画像ブロック上の水平座標、Pstn_C_1、Pstn_C2は８×８画素の画像ブロック上の垂直座標を表す。図２３のフローチャート中のimg_blk(Pstn_R_1-i,Pstn_C_1+j)は８×８画素ブロックの画像上のコンテントに含まれない画素のサンプル値、img_blk(Pstn_R_2+i,Pstn_C_2+j)は８×８画素ブロックの画像上のimg_blk(Pstn_R_1+i,Pstn_C_1+j)よりも水平座標の小さい方に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値である。img_blk(Pstn_R_1-i,Pstn_C_1+j)とimg_blk(Pstn_R_2+i,Pstn_C_2+j)は水平ライン上の１／２点対称の位置関係にある。先ず処理２６９で、iとjを０に、Row、Col.、Pstn_R_1、Pstn_C_1、Pstn_R_2及びPstn_C_2をそれぞれ適当な値に初期化する。次に処理２７０に進んでjがCol.より小さいかを判定する。もし小さいならば処理２７１に進み、iがRowより小さいかを判定する。もし小さいならば処理２７２に進む。処理２７２はimg_blk(Pstn_R_2+i,Pstn_C_2+j)を用いて水平座標Pstn_R_1-i、垂直座標Pstn_C_1+jの画素に対し、パディングを行う。処理２７２の終了後、処理２７３でパラメータiに1を足し、処理２７１に戻る。処理２７１〜２７３までの処理過程は一つの水平ラインのパディング操作が終了するまで、パディングが施される画素とパディングを施す画素との間で水平方向に１画素づつ近付けながらパディング操作を行うことに相当する。処理２７１でiがRow以上となった、つまり一つの水平ラインのパディング操作が終了したら、処理２７４に進み、パラメータjに1を足して処理２７０に戻る。処理２７０〜２７４までの処理過程は水平ラインのパディング操作を垂直方向に１画素づつ移動させることに相当する。処理２７４でjがCol.以上となるとシンメトリックパディング２のパディング操作は終了となる。
【００８２】
図２４はシンメトリックパディング３のアルゴリズムのフローチャートである。図２４には処理２７５〜２８０を示す。シンメトリックパディング３は、８×８画素ブロックの画像の垂直ライン上でコンテントに含まれない画素に対し、垂直座標の大きい方の１／２点対称の位置に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値を用いてパディングを行う。図２４のフローチャート中にはi、j、Row、Col.、Pstn_C_1、Pstn_R_1、Pstn_R_2、Pstn_C_2を示した。iは８×８画素ブロックの画像の水平ライン上を水平方向に、jは８×８画素ブロックの画像の垂直ライン上を垂直方向にパディング操作を移動させる為に用いるパラメータである。Rowは水平ライン上のパディング操作の移動範囲、Col.は垂直ライン上のパディング操作の移動範囲のパラメータである。Pstn_R_1とPstn_R_2は８×８画素の画像ブロック上の水平座標、Pstn_C_1、Pstn_C2は８×８画素の画像ブロック上の垂直座標である。図２４のフローチャート中のimg_blk(Pstn_R_1+i,Pstn_C_1+j)は８×８画素ブロックの画像上のコンテントに含まれない画素のサンプル値、img_blk(Pstn_R_2+i,Pstn_C_2-j)は８×８画素ブロックの画像上のimg_blk(Pstn_R_1+i,Pstn_C_1+j)よりも垂直座標の大きい方に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値である。img_blk(Pstn_R_1-i,Pstn_C_1+j)とimg_blk(Pstn_R_2+i,Pstn_C_2-j)は垂直ライン上の１／２点対称の位置関係にある。先ず処理２７５で、iとjを０に、Row、Col.、Pstn_R_1、Pstn_C_1、Pstn_R_2及びPstn_C_2をそれぞれ適当な値に初期化する。次に処理２７６に進んでiがRowより小さいかを判定する。もし小さいならば処理２７７に進み、jがCol.より小さいかを判定する。もし小さいならば処理２７８に進む。処理２７８はimg_blk(Pstn_R_2+i,Pstn_C_2-j)を用いて水平座標Pstn_R_1+i、垂直座標Pstn_C_1+jの画素に対し、パディングを行う。処理２７８の終了後、処理２７９でパラメータjに1を足し、処理２７７に戻る。処理２７７〜２７９までの処理過程は一つの垂直ラインのパディング操作が終了するまで、パディングが施される画素とパディングを施す画素との間で垂直方向に１画素づつ近付けながらパディング操作を行うことに相当する。処理２７７でjがCol.以上となった、つまり一つの垂直ラインのパディング操作が終了したら、処理２８０に進み、パラメータiに1を足して処理２７６に戻る。処理２７６〜２８０までの処理過程は垂直ラインのパディング操作を水平方向に１画素づつ移動させることに相当する。処理２７６でiがRow以上となるとシンメトリックパディング３のパディング操作は終了となる。
【００８３】
図２５はシンメトリックパディング４のアルゴリズムのフローチャートである。図２５には処理２８１〜２８６を示す。シンメトリックパディング４は、８×８画素ブロックの画像の垂直ライン上でコンテントに含まれない画素に対し、垂直座標の小さい方の１／２点対称の位置に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値を用いてパディングを行う。図２５のフローチャート中にはi、j、Row、Col.、Pstn_C_1、Pstn_R_1、Pstn_R_2、Pstn_C_2を示した。iは８×８画素ブロックの画像の水平ライン上を水平方向に、jは８×８画素ブロックの画像の垂直ライン上を垂直方向にパディング操作を移動させる為に用いるパラメータである。Rowは水平ライン上のパディング操作の移動範囲、Col.は垂直ライン上のパディング操作の移動範囲のパラメータである。Pstn_R_1とPstn_R_2は８×８画素の画像ブロック上の水平座標、Pstn_C_1、Pstn_C2は８×８画素の画像ブロック上の垂直座標である。図２５のフローチャート中のimg_blk(Pstn_R_1+i,Pstn_C_1-j)は８×８画素ブロックの画像上のコンテントに含まれない画素のサンプル値、img_blk(Pstn_R_2+i,Pstn_C_2+j)は８×８画素ブロックの画像上のimg_blk(Pstn_R_1+i,Pstn_C_1-j)よりも垂直座標の小さい方に存在する、コンテントに含まれる画素及びコンテントに含まれず既にパディングが施された画素のサンプル値である。img_blk(Pstn_R_1-i,Pstn_C_1-j)とimg_blk(Pstn_R_2+i,Pstn_C_2+j)は垂直ライン上の１／２点対称の位置関係にある。先ず処理２８１で、iとjを０に、Row、Col.、Pstn_R_1、Pstn_C_1、Pstn_R_2及びPstn_C_2をそれぞれ適当な値に初期化する。次に処理２８２に進んでiがRowより小さいかを判定する。もし小さいならば処理２８３に進み、jがCol.より小さいかを判定する。もし小さいならば処理２８４に進む。処理２８４はimg_blk(Pstn_R_2+i,Pstn_C_2+j)を用いて水平座標Pstn_R_1+i、垂直座標Pstn_C_1-jの画素に対し、パディングを行う。処理２８４の終了後、処理２８５でパラメータjに1を足し、処理２８３に戻る。処理２８３〜２８６までの処理過程は一つの垂直ラインのパディング操作が終了するまで、パディングが施される画素とパディングを施す画素との間で垂直方向に１画素づつ近付けながらパディング操作を行うことに相当する。処理２８３でjがCol.以上となった、つまり一つの垂直ラインのパディング操作が終了したら、処理２８６に進み、パラメータiに1を足して処理２８２に戻る。処理２８２〜２８６までの処理過程は垂直ラインのパディング操作を水平方向に１画素づつ移動させることに相当する。処理２８２でiがRow以上となるとシンメトリックパディング４のパディング操作は終了となる。
【００８４】
表１は、図２１のパディング器２２０内のパディング器２５１〜２６０を説明する表である。
【００８５】
【表１】
0003675135.tif 000002
【００８６】
表１に示した最も左側の１列は図１の形状判別器１５５からパディング器１５８に送信された信号を指す。表１に示したパディング器は図２１のパディング選択器２２２で選択された経路上のパディング器を指す。表１に示した方式は図２２〜図２５で示したシンメトリックパディングの種類を指す。表１に示したPstn_R_1、Pstn_C_1、Pstn_R_2、Pstn_C_2、Row、Col.はシンメトリックパディング１〜４で使用される初期値のパラメータを指す。表１に示した矢印はシンメトリックパディングの処理順を指す。表１に従い、以下に図２１のパディング器２２０内のパディング器２５１〜２６０での処理を示す
もし図２１のパディング選択器２２２で受信した信号がBound.1_1信号ならば、図２１のパディング器２５１で先ず初期値としてPstn_R_1が０、Pstn_C_1が４、Pstn_R_2が７、Pstn_C_2が４、Rowが４、Col.が４のシンメトリックパディング１を行った後、初期値としてPstn_R_1が０、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が７、Rowが８、Col.が４のシンメトリックパディング３の処理を行う。同じように、もしBound.1_2信号ならば、図２１のパディング器２５２で先ず初期値としてPstn_R_1が７、Pstn_C_1が４、Pstn_R_2が０、Pstn_C_2が４、Rowが４、Col.が４のシンメトリックパディング２を行った後、初期値としてPstn_R_1が０、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が７、Rowが８、Col.が４のシンメトリックパディング３の処理を行う。もしBound.1_3信号ならば、図２１のパディング器２５３で先ず初期値としてPstn_R_1が０、Pstn_C_1が０、Pstn_R_2が７、Pstn_C_2が０、Rowが４、Col.が４のシンメトリックパディング１を行った後、初期値としてPstn_R_1が０、Pstn_C_1が７、Pstn_R_2が０、Pstn_C_2が０、Rowが８、Col.が４のシンメトリックパディング４の処理を行う。もしBound.1_4信号ならば、図２１のパディング器２５４で先ず初期値としてPstn_R_1が７、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が０、Rowが４、Col.が４のシンメトリックパディング２を行った後、初期値としてPstn_R_1が０、Pstn_C_1が７、Pstn_R_2が０、Pstn_C_2が０、Rowが８、Col.が４のシンメトリックパディング４の処理を行う。もしBound.2_1信号ならば、図２１のパディング器２５５で先ず初期値としてPstn_R_1が７、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が０、Rowが４、Col.が８のシンメトリックパディング２の処理を行う。もしBound.2_2信号ならば、図２１のパディング器２５６で先ず初期値としてPstn_R_1が０、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が７、Rowが４、Col.が８のシンメトリックパディング１の処理を行う。もしBound.2_3信号ならば、図２１のパディング器２５７で先ず初期値としてPstn_R_1が７、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が０、Rowが４、Col.が４のシンメトリックパディング２を行った後、初期値としてPstn_R_1が０、Pstn_C_1が３、Pstn_R_2が７、Pstn_C_2が３、Rowが４、Col.が４のシンメトリックパディング１の処理を行う。もしBound.2_4信号ならば、図２１のパディング器２５８で先ず初期値としてPstn_R_1が０、Pstn_C_1が０、Pstn_R_2が７、Pstn_C_2が０、Rowが４、Col.が４のシンメトリックパディング１を行った後、初期値としてPstn_R_1が７、Pstn_C_1が３、Pstn_R_2が０、Pstn_C_2が３、Rowが４、Col.が４のシンメトリックパディング２の処理を行う。もしBound.3_2信号ならば、図２１のパディング器２６０で先ず初期値としてPstn_R_1が０、Pstn_C_1が０、Pstn_R_2が０、Pstn_C_2が７、Rowが８、Col.が４のシンメトリックパディング３の処理を行う。
【００８７】
図１の８×８画素２次元DCT器１５９では、図１のパディング器１５８から出力された画像のサンプル値を８×８画素２次元DCTにより各８×８重み付け係数ブロックに変換する。変換された各８×８重み付け係数ブロックは図１のスキャニング器１６０に入力される。
【００８８】
図２６は、図１の符号化器のスキャニング器の構成図である。図２６にはスキャニング器２８７、スキャニング選択線２８８、スキャニング選択器２８９、スキャニング選択スイッチ２９０、２９６、８×８重み付け係数ブロック２９１、２９７、スキャニング器２８７内のスキャニング器２９２〜２９５を示す。図２６のスキャニング器２８７では、図１の符号化器１５０の形状判別器１５５からスキャニング選択線２８８を通って送信された信号をスキャニング選択器２８９で受信し、受信した信号によってスキャニング選択スイッチ２９０、２９６を適宜切り替え、スキャニング器２９２〜２９５の中から一つのスキャニング器を選択する。但し、パディング選択線２８８は図１のパディング選択線１５７と同一である。
【００８９】
ここで以下のように設定する。もし図２１のパディング選択器２２２で受信した信号がOpaque信号、Transparent信号、Bound.4信号、Bound.5信号ならば、図２６のスキャニング選択スイッチ２９０、２９６を切り替え、スキャニング器２８７内のスキャニング器２９２を選ぶ。同じように、Bound.1信号ならばスキャニング器２８７内のスキャニング器２９３、Bound.2信号ならばスキャニング器２８７内のスキャニング器２９４、Bound.3信号ならばスキャニング器２８７内のスキャニング器２９５を選ぶ。
【００９０】
図２７は、本発明によるスキャン順序を説明する図である。図２７にはスキャン順序２９８〜３０１を示す。図２６のスキャニング器２９２ではスキャン順序２９８、図２６のスキャニング器２９３ではスキャン順序２９９、図２６のスキャニング器２９４ではスキャン順序３００、図２６のスキャニング器２９４ではスキャン順序３０１を用いる。従って図２６のスキャニング器２８７内のスキャニング器２９２では、図１の８×８画素２次元DCT器１５９から出力された８×８重み付け係数ブロック中の重み付け係数値を図２７のスキャン順序２９８でスキャンする。同じように、スキャニング器２９３では８×８重み付け係数ブロック中の重み付け係数値をスキャン順序２９９で、スキャニング器２９４では８×８重み付け係数ブロック中の重み付け係数値をスキャン順序３００で、スキャニング器２９５では８×８重み付け係数ブロック中の重み付け係数ちを図２７のスキャン順序３０１でスキャンする。但し、８×８重み付け係数ブロックの中の各重み付け係数と図２７のスキャン順序２９８〜３０１の各枡目は一対一で対応している。
【００９１】
図１の量子化器１６１では、図１のスキャニング器１６０でスキャンされた８×８重み付け係数内の重み付け係数値を量子化する。
【００９２】
図１の可変長符号化器１６２では、図１の量子化器１６１で量子化された８×８重み付け係数内の重み付け係数値の可変長符号化を行い、画像のビットストリーム１６３を生成する。
【００９３】
図１の逆量子化器１６４では、図１の量子化器１６１で量子化された８×８重み付け係数内の重み付け係数値を逆量子化する。
【００９４】
図１の逆スキャニング器１６５では図１の形状判別器から送信された信号に従って選択した逆スキャニング方法により、図１の逆量子化器１６４で逆量子化された８×８重み付け係数内の重み付け係数値に対し、逆スキャンを行う。逆スキャニング器１６５で用いるスキャン順序は図１のスキャニング器１６０で用いられたスキャン順序を用いる。
【００９５】
図１の８×８画素２次元逆DCT器１６６では、図１の逆スキャニング器１６５で逆スキャンされた各８×８重み付け係数内の係数値に対して８×８画素２次元逆DCTを施し、復号画像を得る。
【００９６】
図１の遅延器１６８では、図１の８×８画素２次元逆DCT器１６６で得られた復号画像を直接、記録する。
【００９７】
以上でイントラ符号化が終了し、次にインター符号化が開始される。図１のイントラ・インター符号化切替信号１５１でイントラ・インター符号化切替スイッチ１５２を切り替え、インター符号化を選択する。本発明の符号化方法ではイントラ符号化時のパディング方法とスキャン方法と逆スキャン方法のみについて言及すれば十分なので、本明細書では図１に記載の加算器１６７、動き検出器１６９、動きベクトル１７０、パディング器及び動き補償器１７１、差分器１７２、パディング器１７３、差分画像１７４の説明を省略する。
【００９８】
図１の形状符号化器１７５では、図１の入力アルファ・プレーン１５４を符号化し、アルファ・プレーンのビットストリーム１７６を生成する。本発明の符号化方法では入力画像１５３のイントラ符号化のみについて言及すれば十分なので、本明細書では形状符号化器１７５の説明を省略する。
【００９９】
図１のマルチプレクサー１７７では、イントラ・インター符号化切替信号１５１と画像のビットストリーム１６３と動きベクトル１７０とアルファ・プレーンのビットストリーム１７６を混合し、伝送ビットストリーム１７８を生成する。
【０１００】
以上の符号化処理により、図１の符号化器１２から伝送ビットストリーム１７８が出力される。
【０１０１】
図２８は本発明によるコンテント・ベース復号化方法を実現する復号化器の構成図である。図２８には復号化器３０２、伝送ビットストリーム３０３、デマルチプレクサー３０４、イントラ・インター復号化切替信号３０５、イントラ・インター復号化切替スイッチ３０６〜３０７、アルファ・プレーンのビットストリーム３０８、形状復号化器３０９、アルファプレーン３１０、形状判別器３１１、逆スキャニング選択線３１２、逆スキャニング器３１３、画像のビットストリーム３１４、可変長復号化器３１５、逆量子化器３１６、８×８画素逆DCT器３１７、イントラ復号化が施された画像３１８、遅延器３１９、動きベクトル３２０、パディング器及び動き補償器３２１、パディング及び動き補償が施された画像３２２、インター復号化が施された画像３２３、加算器３２４、加算画像３２５、合成器３２６、合成画像３２７が示されている。以下に図２８について説明する。
【０１０２】
先ず、インター復号化よりも先にイントラ復号化を行う。イントラ復号化は、イントラ符号化された画像のビットストリームを静止画像に復号化する方法である。一方、インター復号化は、インター符号化された画像のビットストリームを符号化される以前の入力画像と前に符号化器に入力された画像との差分画像に復号化する方法である。
【０１０３】
図２８のデマルチプレクサー３０４では、伝送ビットストリーム３０３をイントラ・インター復号化切替信号３０５、画像のビットストリーム３１４、動きベクトル３２０、アルファ・プレーンのビットストリーム３０８に分解する。
【０１０４】
図２８のイントラ・インター復号化切替スイッチ３０６〜３０７では、イントラ・インター復号化切替信号３０５でイントラ・インター復号化切替スイッチ３０６〜３０７を切り替え、イントラ復号化を選択する。
【０１０５】
図２８の形状復号化器３０９では、アルファ・プレーンのビットストリーム３０８からアルファプレーン３１０を復号化する。本発明の復号化方法では図２８の画像のビットストリーム３１４のイントラ復号化のみについて言及すれば十分なので、本明細書では形状復号化器３０９の説明を省略する。
【０１０６】
次に図２８のアルファ・プレーン３１０の形状を図２８の形状判別器３１１で判別し、逆スキャニング器３１３に信号を送信する。図２９は復号器の形状判別器の処理の実施例を表すフローチャートである。図２９には処理３２８〜３３９を示す。処理は処理開始から処理終了まで矢印の順に従って行われる。
【０１０７】
先ず図２９の処理３２８ではアルファプレーン３１０を８×８画素ブロック毎に分解する。
【０１０８】
次に図２９の処理３２９を行う。図３０は図２９の処理３２９を説明する図である。図３０には４×４画素ブロックのアルファプレーン３４０〜３４３を示した。図２９の処理３２８で分解された８×８画素ブロックのアルファプレーンを縦横に２等分割し、４つの４×４画素ブロックのアルファプレーン３４０〜３４３を作る。４×４画素ブロックのアルファプレーン３４０の位置は、分解される以前の８×８画素ブロックのアルファプレーンの左上、４×４画素ブロックのアルファプレーン３４１の位置は、分解される以前の８×８画素ブロック右上、４×４画素ブロック３４２の位置は、分解される以前の８×８画素ブロックのアルファプレーンの左下、４×４画素ブロックのアルファプレーン３４３の位置は、分解される以前の８×８画素ブロックのアルファプレーンの右下である。４×４画素ブロックのアルファプレーン３４０〜３４３の各枡目の内、斜線部はサンプル値が０以上の画素３４４、白抜き部はサンプル値が０の画素３４５である。
【０１０９】
図２９の処理３３０では、図２９の処理３２９で分解した各４×４画素ブロックのアルファプレーン内の全画素に対して論理和を求め、求めた４つの論理和の合計を計算する。図３１は図２９の処理３３０を説明する図である。図３１には論理和３４６〜３４９を示す。求められた論理和の合計は図２９に示したcountとして記録される。図３１の４つの論理和３４６〜３４９が示すそれぞれの数字は、図３０に記載の４つのそれぞれの４×４画素ブロックのアルファプレーン３４０〜３４３内の全画素に対する論理和を表している。従って図３１の場合、countは２となる。
【０１１０】
図２９の処理３３１ではcountを判別する。もしcountが０ならば図２９の処理３３２、countが１ならば処理３３３、countが２ならば処理３３４、countが３ならば処理３３８、countが４ならば処理３３９を行う。
【０１１１】
countが０の場合、図２９の処理３３０で求めた４つの論理和が総て０であることを表す。つまり８×８画素ブロックの画像にはコンテントに含まれる画素が全くないと判断される。図２９の処理３３２では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にTransparent信号を送信する。
【０１１２】
countが１の場合、図２９の処理３３０で求めた４つの論理和の内、一つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、１つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図２９の処理３３３では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.1信号を送信する。
【０１１３】
countが３の場合、図２９の処理３３０で求めた４つの論理和の内、一つのみが０であることを表す。つまり４つの４×４画素ブロックの画像の内、３つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図２９の処理３３８では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.4信号を送信する。
【０１１４】
countが２の場合、図２９の処理３３０で求めた４つの論理和の内、２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、２つの４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。しかし、どの位置の２つの４×４画素ブロックの画像にコンテントの画素が含まれるのかはわからない。
【０１１５】
そこで図２９の処理３３４を施す。図３２は図２９の処理３３４を説明する図である。図１７には論理和２０５〜２０８を示す。処理３３４では、図２９の処理３３０で求めた４つの論理和の内、図３１の水平方向に位置する２つの論理和同士の排他的論理和を計算し、計算した値をcnt_aとして記録する。図３２に記載の論理和３５０〜３５３は図３１の論理和３４６〜３４９と同一である。図３２の場合、排他的論理和cnt_aは１である。
【０１１６】
図２９の処理３３５は処理３３４で求めたcnt_aを判別する。もし、cnt_aが１ならば図２９の処理３３６、cnt_aが０ならば図２９の処理３３７に進む。
【０１１７】
cnt_aが１の場合、図２９の処理３３０で求めた４つの論理和の内、垂直方向または対角方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、垂直方向または対角方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図２９の処理３３６では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.2信号を送信する。
【０１１８】
cnt_aが０の場合、図２９の処理３３７で求めた４つの論理和の内、水平方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、水平方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図２９の処理３３７では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.3信号を送信する。
【０１１９】
また図２９の処理３３４は図３２で説明した処理とは異なるの見方ができる。図３３は図３２と別の処理３３４を説明する図である。図３３には論理和３５４〜３５７を示す。上述の処理３３４では、図２９の処理３３０で求めた４つの論理和の内、図３２の水平方向に位置する２つの論理和同士の排他的論理和を計算したが、ここでは垂直方向に位置する２つの論理和同士の排他的論理和を計算し、計算した値をcnt_aとして記録する。図３３に記載の論理和３５４〜３５７は図３１の論理和３４６〜３４９と同一である。図３３の場合、排他的論理和cnt_aは０である。
【０１２０】
図３３の方法で図２９の処理３３４を施した結果、cnt_aが１の場合、図２９の処理３３０で求めた４つの論理和の内、垂直方向または対角方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、水平方向または対角方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図２９の処理３３６では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.2信号を送信する。
【０１２１】
図３３の方法で図２９の処理３３４を施した結果、cnt_aが０の場合、図２９の処理３３０で求めた４つの論理和の内、垂直方向の２つのみが１であることを表す。つまり４つの４×４画素ブロックの画像の内、垂直方向の２つ４×４画素ブロックの画像のみにコンテントに含まれる画素が存在すると判断される。図２９の処理３３７では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.3信号を送信する。
【０１２２】
図２９の処理３３０で求めた４つの論理和の内、図３２の水平方向に位置する２つの論理和同士の排他的論理和に着目するか、図３３の垂直方向に位置する２つの論理和同士の排他的論理和に着目するかは、図１の符号化器１５０内の形状判別器１５５で用いた方向に位置する２つの論理和同士の排他的論理和で決まる。つまり、図１の符号化器１５０内の形状判別器１５５で用いた処理と同じ処理を行う。以下では図３２の水平方向に位置する２つの論理和同士の排他的論理和を使用する。
【０１２３】
図２９の処理１８２でcountが４となった場合、処理３３９を行う。
【０１２４】
cnt_bが０の場合、図２９の処理３３０で求めた総ての論理和が１であることを表す。つまり図２９の処理３２９で分解された４つの４×４画素ブロックの画像の内、少なくとも３つの４×４画素ブロックの画像にコンテントに含まれる画素が存在すると判断される。図２９の処理３３９では、図２８の逆スキャニング選択線３１２で逆スキャニング器３１３にBound.5信号を送信する。
【０１２５】
以上で図２９の符号化器の形状判別器の処理例のフローチャートが終了する。上述より、図２８の符号化器３０２の形状判別器３１１からはTransparent信号、またはBound.1信号、またはBound.2信号、またはBound.3信号、またはBound.4信号及びBound.5信号、またはOpaque信号が逆スキャニング選択線３１２を通って逆スキャニング器３１３に送信される。Transparent信号、Bound.1信号、Bound.2信号、Bound.3信号、Bound.4信号及びBound.5信号には例えば０〜５までの番号を割り当て、それぞれの信号を区別する。以上で図２８の符号化器３０２の形状判別器３１１の処理例の説明を終了する。
【０１２６】
図２８の可変長復号器３１５では、画像のビットストリーム３１４を可変長復号化する。
【０１２７】
図２８の逆量子化器３１６では、可変長復号化されたを各８×８重み付け係数の係数値を逆量子化する。
【０１２８】
図２８の逆スキャニング器３１３では、逆量子化された８×８重み付け係数ブロック内の重み付け係数値を逆スキャンする。図３４は逆スキャニング器の構成図である。図３４には逆スキャニング器３５８、逆スキャニング選択線３５９、逆スキャニング選択器３６０、逆スキャニング選択スイッチ３６１、３６７、８×８重み付け係数ブロック３６２、３６８、逆スキャニング器３５８内のスキャニング器３６３〜３６６を示す。図３４の逆スキャニング器３５８では、図２８の復号化器３０２の形状判別器３１１から逆スキャニング選択線３５９を通って送信された信号を逆スキャニング選択器３６０で受信し、受信した信号によって逆スキャニング選択スイッチ３６１、３６７を適宜切り替え、逆スキャニング器３６３〜３６６の中から一つの逆スキャニング器を選択する。但し、図３４の逆スキャニング選択線３５９は図２８の逆スキャニング選択線３１２と同一である。
【０１２９】
ここで以下のように設定する。もし図３４の逆スキャニング選択器３６０で受信した信号がTransparent信号、Bound.4信号、Bound.5信号ならば、図３４のスキャニング選択スイッチ３６１、３６８を切り替え、スキャニング器３５８内のスキャニング器３６３を選ぶ。同じように、Bound.1信号ならばスキャニング器３５８内のスキャニング器３６４、Bound.2信号ならばスキャニング器３５８内のスキャニング器３６５、Bound.3信号ならばスキャニング器３５８内のスキャニング器３６６を選ぶ。
【０１３０】
図３５は、本発明による逆スキャン順序を説明する図である。図３５には逆スキャン順序３６９〜３７２を示す。図３４の逆スキャニング器３６３では逆スキャン順序３６９、図３４の逆スキャニング器３６４では逆スキャン順序３７０、図３４の逆スキャニング器３６５では逆スキャン順序３７１、図３４の逆スキャニング器３６６では逆スキャン順序３７２が用いられる。従って図３４の逆スキャニング器３５８内の逆スキャニング器３６３では、図２８の逆量子化器３１６から出力された８×８重み付け係数ブロック中の重み付け係数値を図３５の逆スキャン順序３６９で逆スキャンする。同じように、逆スキャニング器３６４では８×８重み付け係数ブロック中の重み付け係数値を逆スキャン順序３７０で、逆スキャニング器３６５では８×８重み付け係数ブロック中の重み付け係数値を逆スキャン順序３７１で、逆スキャニング器３６６では８×８重み付け係数ブロック中の重み付け係数値を逆スキャン順序３７２で逆スキャンする。但し、８×８重み付け係数ブロックの中の各重み付け係数と図３５の逆スキャン順序３６９〜３７２の各枡目は一対一で対応している。但し、図１の符号化器１５０で符号化を省略され、一次元系列に並べられた０の重み付け係数群値は、図３５の逆スキャン順序３６９〜３７２に従って０の重み付け係数値を８×８重み付け係数ブロック内に配置され、残りの符号化された重み付け係数値は同じ逆スキャン順序３６９〜３７２に従って８×８重み付け係数ブロック内に逆スキャンされる。
【０１３１】
図２８の８×８画素逆DCT器３１７では、図２８の逆スキャニング器３１３で逆スキャンされた各８×８重み付け係数ブロック内の重み付け係数値に対して８×８画素２次元逆DCTを施し、イントラ復号化された画像３１８を得る。イントラ復号化された画像３１８はコンテントに含まれない画素にパディングが施されたままとなっている。
【０１３２】
図２８の遅延器３１９では、図２８の８×８画素２次元逆DCT器３１７で得たイントラ復号化された画像３１８を直接、記録する。
【０１３３】
以上でイントラ復号化が終了し、次にインター復号化が開始される。図２８のイントラ・インター復号化切替信号３０５でイントラ・インター復号化切替スイッチ３０６〜３０７を切り替え、インター復号化を選択する。本発明の復号化方法ではイントラ復号化時の逆スキャン方法のみについて言及すれば十分なので、本明細書では図２８に記載の動きベクトル３２０、パディング器及び動き補償器３２１、パディング及び動き補償が施された画像３２２、インター復号化が施された画像３２３、加算器３２４、加算画像３２５の説明を省略する。
【０１３４】
図２８の合成器３２６では、復号化されたアルファプレーン３１０のサンプル値が１以上である画素に対応する画素をイントラ復号された画像３１８から抜き出す。抜き出された画素の集まりが合成画像３２７である。
【０１３５】
【発明の効果】
本発明によれば、値が０となるDCTの重み付け係数の数を従来方法よりも増加させ、増加させた０のDCTの重み付け係数を符号化しないことにより、高い情報圧縮率の達成が可能となる。
【図面の簡単な説明】
【図１】本発明によるコンテント・ベース符号化方法を実現する符号化器の構成図。
【図２】符号化するコンテント内の画素のサンプル値を説明する図。
【図３】符号化される８×８画素ブロックの例を説明する図。
【図４】コンテント・ベース符号化方法を実現する従来の符号化器の構成図。
【図５】８×８重み付け係数ブロックのスキャン方法を説明する図。
【図６】コンテント・ベース符号化方法を実現する従来の復号化器の構成図。
【図７】８画素の１次元DCTの変換基底を説明する図。
【図８】シンメトリックパディング方法で用いる点対称の概念を説明する図。
【図９】シンメトリックパディング方法を説明する図。
【図１０】コンテントに含まれる画素が存在する縦８×横４画素ブロックとコンテントに含まれる画素が存在しない縦８×横４画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、水平方向の１／２点対称のシンメトリックパディングと２次元DCTを施した状態を説明する図。
【図１１】コンテントに含まれる画素が存在する縦４×横８画素ブロックとコンテントに含まれる画素が存在しない縦４×横８画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、垂直方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図。
【図１２】コンテントに含まれる画素が存在する対角位置の２つの４×４画素ブロックとコンテントに含まれる画素が存在しない対角位置の２つの４×４画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、水平または垂直方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図。
【図１３】コンテントに含まれる画素が存在する１つの４×４画素ブロックとコンテントに含まれる画素が存在しない３つの４×４画素ブロックで構成された８×８画素ブロックの画像のサンプル値に対し、水平及び垂直方向の１／２点対称のシンメトリックパディングと２次元DCTを施した例を説明する図。
【図１４】形状判別器の処理の実施例を表すフローチャート。
【図１５】図１４の処理１８０を説明する図。
【図１６】図１４の処理１８１を説明する図。
【図１７】図１４の処理１８５を説明する図。
【図１８】図１７と別の処理１８５を説明する図。
【図１９】図１４の処理１９０を説明する図。
【図２０】図１４の処理１９１を説明する図。
【図２１】図１の符号化器のパディング器１５８の構成図。
【図２２】シンメトリックパディング１のアルゴリズムのフローチャート。
【図２３】シンメトリックパディング２のアルゴリズムのフローチャート。
【図２４】シンメトリックパディング３のアルゴリズムのフローチャート。
【図２５】シンメトリックパディング４のアルゴリズムのフローチャート。
【図２６】図１の符号化器のスキャニング器の構成図。
【図２７】本発明によるスキャン順序を説明する図。
【図２８】本発明によるコンテント・ベース符号化方法を実現する符号化器の構成図。
【図２９】復号化器の形状判別器の処理の実施例を表すフローチャート。
【図３０】図２９の処理３２９を説明する図。
【図３１】図２９の処理３３０を説明する図。
【図３２】図２９の処理３３４を説明する図。
【図３３】図３２と別の処理３３４を説明する図。
【図３４】逆スキャニング器の構成図。
【図３５】本発明による逆スキャン順序を説明する図。
【符号の説明】
１…画像の一例、２…アルファ・プレーンの一例、３，８…画素のサンプル値が０である領域、４，７…画素のサンプル値が１以上である領域、５，１０，１３…コンテントに含まれる画素の領域、６…８×８画素ブロック毎に分割されたアルファ・プレーンの例、９…８×８画素ブロック毎に分割された、コンテントの画素を含む画像の例、１１…パディングが施された画素の領域、１２，１５０…符号化器、１３，１５１…イントラ・インター符号化切替信号、１４，１５２…イントラ・インター符号化切替スイッチ、１５，１５３…入力画像、１６，１５４…入力アルファプレーン、１７，３２，１５８，１７３，２２０…パディング器、１８，１５９…８×８画素２次元DCT器、１９，１６０，２８７…スキャニング器、２０，１６１…量子化器、２１，１６２…可変長符号化器、２２，５１，１６３，３１４…画像のビットストリーム、２３，５３，１６４，３１６…逆量子化器、２４，５４，１６５，３１３，３５８…逆スキャニング器、２５，５５，１６６，３１７…８×８画素２次元逆DCT器、２６，６２，１６７，３２４…加算器、２７，５７，１６８，３１９…遅延器、２８，１６９…動き検出器、２９，５８，１７０，３２０…動きベクトル、３０，５９，１７１，３２１…パディング器及び動き報償器、３１，１７２…差分器、３３，１７４…差分画像、３４，１７５…形状符号化器、３５，６４，１７６，３０８…アルファプレーンのビットストリーム、３６，１７７…マルチプレクサー、３７，４６，１７８，３０３…伝送ビットストリーム、３８…８×８重み付け係数ブロックの例、３９…水平方向、４０…垂直方向、４１〜４２…重み付け係数、４３…領域、４４，２９８…zigzagスキャン順序、４５，３０２…復号器、４７，３０４…デマルチプレクサー、４８，３０５…イントラ・インター復号化切替信号、４９〜５０，３０６〜３０７…イントラ・インター復号化切替スイッチ、５２，３１５…可変長復号器、５６，３１８…イントラ復号化が施された画像、６０，３２２…パディング及び動き報償が施された画像、６１，３２３…インター復号化が施された画像、６３，３２５…加算画像、６５，３０９…形状復号器、６６，３１０…アルファ・プレーン、６７，３２６…合成器、６８，３２７…合成画像、６９…８画素の１次元DCTの第１変換基底、７０…８画素の１次元DCTの第２変換基底、７１…８画素の１次元DCTの第３変換基底、７２…８画素の１次元DCTの第４変換基底、７３…８画素の１次元DCTの第５変換基底、７４…８画素の１次元DCTの第６変換基底、７５…８画素の１次元DCTの第７変換基底、７６…８画素の１次元DCTの第８変換基底、７７…８画素の１次元DCTの第１変換基底上の係数、７８…８画素の１次元DCTの第２変換基底上の係数、７９…８画素の１次元DCTの第３変換基底上の係数、８０…８画素の１次元DCTの第４変換基底上の係数、８１…８画素の１次元DCTの第５変換基底上の係数、８２…８画素の１次元DCTの第６変換基底上の係数、８３…８画素の１次元DCTの第７変換基底上の係数、８４…８画素の１次元DCTの第８変換基底上の係数、８５，９９…８×８画素ブロックの画像の例、８６，１０２…パディングが施される画素、８７…水平方向に１／２点対称の係数対を持つ８画素１次元DCTの変換基底の例、８８…水平方向に１／４点対称の係数対を持つ８画素１次元DCTの変換基底の例、８９…水平方向に１／８点対称の係数対を持つ８画素１次元DCTの変換基底の例、９０…垂直方向に１／２点対称の係数対を持つ８画素１次元DCTの変換基底の例、９１…垂直方向に１／４点対称の係数対を持つ８画素１次元DCTの変換基底の例、９２…垂直方向に１／８点対称の係数対を持つ８画素１次元DCTの変換基底の例、９３…画素８６に対して水平方向の１／２点対称の位置に存在する画素、９４…画素８６に対して水平方向の１／４点対称の位置に存在する画素、９５…画素８６に対して水平方向の１／８点対称の位置に存在する画素、９６…画素８６に対して垂直方向の１／２点対称の位置に存在する画素、９７…画素８６に対して垂直方向の１／４点対称の位置に存在する画素、９８…画素８６に対して垂直方向の１／８点対称の位置に存在する画素、１００…コンテントに含まれる画素、１０１…コンテントに含まれない画素、１０３…画素１０２に対し、水平方向に１／２点対称の画素のサンプル値を用いるシンメトリックパディング、１０４…画素１０２に対し、垂直方向に１／２点対称の画素のサンプル値を用いるシンメトリックパディング、１０５，１０８，１１４，１１７，１２３，１２６，１３５，１３８，１４１，１４４…８×８画素ブロックの画像の例、１０６，１０９…コンテントの画素が含まれる縦８×横４画素ブロック、１０７，１１０…コンテントの画素が含まれない縦８×横４画素ブロック、１１１，１２０，１２９，１３２，１４７…８×８重み付け係数ブロックの例、１１２〜１１３，１２１〜１２２，１３０〜１３１，１３３〜１３４，１４８〜１４９…重み付け係数、１１５，１１８…コンテントの画素が含まれる縦４×横８画素ブロック、１１６，１１９…コンテントの画素が含まれない縦４×横８画素ブロック、１２４，１２７…コンテントの画素が含まれる対角位置の２つの４×４画素ブロック、１２５，１２８…コンテントの画素が含まれない対角位置の２つの４×４画素ブロック、１３６，１３９，１４２，１４５…コンテントの画素が含まれる１つの４×４画素ブロック、１３７，１４０，１４３，１４６…コンテントの画素が含まれないの３つの４×４画素ブロック、１５５，３１１…形状判別器、１５６，２２１…パディング選択線、１５７，２８８…スキャニング選択線、１７９〜１９４…処理、１９５〜１９８，３４０〜３４３…４×４画素ブロックのアルファ・プレーン、１９９，２１４，２１７…サンプル値が０以上の画素、２００，２１５…サンプル値が０の画素、２０１〜２１２，３４６〜３５７…論理和、２１３，２１６…８×８画像ブロックのアルファ・プレーンの例、２１８〜２１９…論理積、２２２…パディング選択器、２２４，２６２…８×８画素ブロックの画像、２２３，２６１…パディング選択スイッチ、２２５〜２３７…経路、２３８…８×８画素ブロックのアルファ・プレーン、２３９…ゼロ・パディング器、２４０〜２６０…パディング器２２０内のパディング器、２６３〜２８６，３２８〜３３９…処理、２８９…スキャニング選択器、２９０，２９６…スキャニング選択スイッチ、２９１，２９７，３６２，３６８…８×８重み付け係数ブロック、２９２〜２９５…スキャニング器２２０内のスキャニング器、２９９〜３０１…スキャン順序、３１２，３５９…逆スキャニング選択線、３６０…逆スキャニング選択器、３６１，３６７…逆スキャニング選択スイッチ、３６３〜３６６…逆スキャニング器３５８内のスキャニング器、３６９〜３７２…逆スキャン順序。
【図１】
0003675135.tif 000003
【図２】
0003675135.tif 000004
【図３】
0003675135.tif 000005
【図４】
0003675135.tif 000006
【図５】
0003675135.tif 000007
【図６】
0003675135.tif 000008
【図７】
0003675135.tif 000009
【図８】
0003675135.tif 000010
【図９】
0003675135.tif 000011
【図１０】
0003675135.tif 000012
【図１１】
0003675135.tif 000013
【図１２】
0003675135.tif 000014
【図１３】
0003675135.tif 000015
【図１４】
0003675135.tif 000016
【図１５】
0003675135.tif 000017
【図１６】
0003675135.tif 000018
【図１７】
0003675135.tif 000019
【図１８】
0003675135.tif 000020
【図１９】
0003675135.tif 000021
【図２０】
0003675135.tif 000022
【図２１】
0003675135.tif 000023
【図２２】
0003675135.tif 000024
【図２３】
0003675135.tif 000025
【図２４】
0003675135.tif 000026
【図２５】
0003675135.tif 000027
【図２６】
0003675135.tif 000028
【図２７】
0003675135.tif 000029
【図２８】
0003675135.tif 000030
【図２９】
0003675135.tif 000031
【図３０】
0003675135.tif 000032
【図３１】
0003675135.tif 000033
【図３２】
0003675135.tif 000034
【図３３】
0003675135.tif 000035
【図３４】
0003675135.tif 000036
【図３５】
0003675135.tif 000037