(57)【特許請求の範囲】
【請求項１】
入力ディジタル画像信号の過去のディジタル画像信号に基づいて符号化を行なう符号化装置において、
上記入力ディジタル画像信号の過去のディジタル画像信号のパターン分布に応じたクラスを形成し、上記クラスに対応した所定の方式で、到来する上記入力ディジタル画像信号の推定値を生成する推定手段と、
上記推定値と上記到来する入力ディジタル画像信号との間の差分値を形成する差分手段と、
上記差分値を少なくとも含む符号化データを生成するデータ符号化手段とを有し、
上記推定手段は、
予め用意されたディジタル画像信号に基づいて上記クラス毎の学習により算出された、上記各クラスに応じた係数を出力する係数出力手段と、
上記係数と上記入力ディジタル画像信号との演算により、上記推定値を生成する生成手段とを有することを特徴とする符号化装置。
【請求項２】
上記学習は、最小二乗法によって上記各クラス応じた係数を算出することを特徴とする請求項１に記載の符号化装置。
【請求項３】
上記データ符号化手段は、
上記係数と上記差分値とを少なくとも含む符号化データを生成することを特徴とする請求項１に記載の符号化装置。
【請求項４】
入力ディジタル画像信号の過去のディジタル画像信号に基づいて符号化を行なう符号化装置において、
上記入力ディジタル画像信号の過去のディジタル画像信号のパターン分布に応じたクラスを形成し、上記クラスに対応した所定の方式で、到来する上記入力ディジタル画像信号の推定値を生成する推定手段と、
上記推定値と上記到来する入力ディジタル画像信号との間の差分値を形成する差分手段と、
上記差分値を少なくとも含む符号化データを生成するデータ符号化手段とを有し、
上記推定手段は、
上記入力ディジタル画像信号に基づいて上記クラス毎の学習により算出された、上記各クラスに応じた係数を出力する係数出力手段と、
上記係数と上記入力画像信号との演算により、上記推定値を生成する生成手段とを有することを特徴とする符号化装置。
【請求項５】
上記データ符号化手段は、
上記係数と上記差分値とを少なくとも含む符号化データを生成することを特徴とする請求項４に記載の符号化装置。
【請求項６】
入力ディジタル画像信号をその特徴に応じて複数のクラスの一つに分類し、上記入力ディジタル画像信号に基づき上記クラスに対応した所定の方式で未来のディジタル画像信号の推定値を生成し、上記推定値と未来の上記入力ディジタル画像信号の値との差分値を生成し、上記差分値と特定の上記ディジタル画像信号を少なくとも用いることで生成された符号化データを復号する復号装置において、
上記特定された入力画像信号と復号化された上記ディジタル画像信号とに基づいて、上記特定された入力画像信号と復号化された上記ディジタル画像信号のパターンに応じたクラスを生成し、上記クラスに応じた、学習により定められた所定の方式により、上記推定値の位置に相当する画像信号の値を生成値として生成する生成手段と、
上記生成値と上記差分値に基づいて、復号画像を生成する復号手段とを有することを特徴とする復号装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ディジタル画像信号の符号化装置およびその復号装置に関する。
【０００２】
【従来の技術】
ディジタル画像信号の高能率符号化の一つである予測符号化（ＤＰＣＭとも称される）が知られている。従来の予測符号化では、水平方向および／または垂直方向の相関性に基づいた予測式によって推定値を形成し、真値と推定値との差分値を量子化している。推定値を得るための予測方法は、種々のものが知られているが、予測式が固定であるのが普通であった。さらに、推定値を形成する時に動き補償予測を行うものも知られている。
【０００３】
【発明が解決しようとする課題】
予測式が固定の場合では、画像の内容によっては、推定誤差が非常に大きくなり、符号化効率の低下、符号化誤差の増大が生じた。また、動き補償を行うためには、動きベクトルを検出する必要があり、そのためのハードウエアの規模が大きくなる問題があった。
【０００４】
従って、この発明の目的は、推定精度を向上させることができ、符号化効率および画質を改善できる符号化装置およびその復号装置を提供することにある。
【０００５】
【課題を解決するための手段】
請求項１の発明は、入力ディジタル画像信号の過去のディジタル画像信号に基づいて符号化を行なう符号化装置において、
入力ディジタル画像信号の過去のディジタル画像信号のパターン分布に応じたクラスを形成し、クラスに対応した所定の方式で、到来する入力ディジタル画像信号の推定値を生成する推定手段と、
推定値と到来する入力ディジタル画像信号との間の差分値を形成する差分手段と、
差分値を少なくとも含む符号化データを生成するデータ符号化手段とを有し、
推定手段は、
予め用意されたディジタル画像信号に基づいてクラス毎の学習により算出された、各クラスに応じた係数を出力する係数出力手段と、
係数と入力ディジタル画像信号との演算により、推定値を生成する生成手段とを有することを特徴とする符号化装置である。
【０００６】
また、請求項６の発明は、上述の符号化装置の符号化出力を受信し、復号する復号装置である。すなわち、請求項６の発明は、入力ディジタル画像信号をその特徴に応じて複数のクラスの一つに分類し、入力ディジタル画像信号に基づきクラスに対応した所定の方式で未来のディジタル画像信号の推定値を生成し、推定値と未来の入力ディジタル画像信号の値との差分値を生成し、差分値と特定のディジタル画像信号を少なくとも用いることで生成された符号化データを復号する復号装置において、
特定された入力画像信号と復号化されたディジタル画像信号とに基づいて、特定された入力画像信号と復号化されたディジタル画像信号のパターンに応じたクラスを生成し、クラスに応じた、学習により定められた所定の方式により、推定値の位置に相当する画像信号の値を生成値として生成する生成手段と、
生成値と差分値に基づいて、復号画像を生成する復号手段とを有することを特徴とする復号装置である。
【０００７】
【作用】
過去の時空間の画素データと係数の線形１次結合によって未来の画素の推定値を形成する。この場合、過去のデータをクラス分類し、クラス毎に最適な係数が最小二乗法により予め学習により決定されるか、入力画像データを常に学習しながら決定される。推定値と真値との差分値が伝送される。復号側では、復号された過去の画像データのクラス分類を行ない、クラスの係数と復号画像データとから推定値を生成し、受信差分値と推定値とを加算する事によって、復号画像が生成される。クラス毎に係数が決められているので、推定値と実際の値との差を小とできる。
【０００８】
【実施例】
以下、この発明による予測符号化装置について説明する。この発明の理解を容易とするために、まず、時空間モデルで画像を記述することについて、図１を参照して説明する。
【０００９】
図１において、Ｔ１、Ｔ２は、時間的に連続する２フレームを示し、Ｔ１が過去のフレーム、Ｔ２が現在のフレームである。これらのフレーム中で、推定値の生成およびクラス分類のために使用する画素が図に示されている。×で示す現在フレーム内の未来の画素を図１に示す画素の値ｘi と係数ｗi （ｉ＝１，２，・・・，ｎ）のｎタップの線形１次結合モデルで表現する。この係数が予測係数である。そして、以下により詳細に説明するように、画素の値ｘi と係数ｗi の線形１次結合で表現される未来の画素の推定値ｙの真値に対する誤差の二乗が最小となるように、係数が最小二乗法で決定される。１フレーム毎およびクラス毎に１組の係数が確定される。
【００１０】
図１に示す時空間モデルの例では、ｎ＝１６である。現在フレームＴ２の未来の画素の予測値ｙは、１６タップの入力画素の線形１次結合ｗ1 ｘ1 ＋ｗ2 ｘ2 ＋・・・＋ｗ16ｘ16によって表される。この線形１次結合モデルにおける係数ｗi については、実際の値と線形１次結合で表される推定値との残差が最小になるものが求められる。
【００１１】
この未定係数ｗi を決定するために、入力画像を空間方向（水平方向および垂直方向）に１画素ずつずらした時の図１に示す各画素の値ｘi （ｉ＝１，・・・，ｎ）と予測対象画素の実際の値ｙj （ｊ＝１，・・・，ｍ）をそれぞれ代入した線形１次結合の式を作成する。例えば１フレームに対して１組の係数を求める時には、入力画像を１画素ずつシフトすることによって、非常に多くの式、すなわち、１フレームの画素数（＝ｍ）の連立方程式（観測方程式と称する）が作成される。１６個の係数を決定するためには、最低で（ｍ＝１６）の連立方程式が必要である。方程式の個数ｍは、精度の問題と処理時間との兼ね合いで適宜選定できる。観測方程式は、
ＸＷ＝Ｙ        （１）
である。ここでＸ、Ｗ、Ｙは、それぞれ下記のような行列である。
【００１２】
【数１】
0003543339.tif 000002
【００１３】
係数ｗとして、実際の値との誤差を最小にするものを最小二乗法により求める。このために、観測方程式の右辺に残差行列Ｅを加えた下記の残差方程式を作成する。すなわち、最小二乗法において、残差方程式における残差行列Ｅの要素の二乗、すなわち二乗誤差が最小になる係数行列Ｗを求める。
【００１４】
【数２】
0003543339.tif 000003
【００１５】
次に、残差方程式（３）から係数行列Ｗの各要素ｗi の最確値を見いだすための条件は、ブロック内の画素に対応するｍ個の残差をそれぞれ二乗してその総和を最小にする条件を満足させればよい。この条件は、下記の式（４）により表される。
【００１６】
【数３】
0003543339.tif 000004
【００１７】
ｎ個の条件を入れてこれを満足する係数行列Ｗの要素である未定係数ｗ1 ，ｗ2 ，・・・，ｗn を見出せばよい。従って、残差方程式（３）より、
【００１８】
【数４】
0003543339.tif 000005
【００１９】
となる。式（４）の条件をｉ＝１，２，・・・，ｎ）について立てれば、それぞれ
【００２０】
【数５】
0003543339.tif 000006
【００２１】
が得られる。式（３）と式（６）から、下記の正規方程式が得られる。
【００２２】
【数６】
0003543339.tif 000007
【００２３】
正規方程式（７）は、丁度、未知数の数がｎ個だけある連立方程式である。これにより、最確値たる各未定係数ｗi を求めることができる。正確には、式（７）における、ｗi にかかるマトリクスが正則であれば、解くことができる。実際には、Gauss-Jordanの消去法（別名、掃き出し法）を用いて未定係数ｗi を求めている。このようにして、未来の画素を表すための係数が１フレームで１組確定する。多数フレームの入力画像を使用して上述と同様の学習を行う時には、各フレームで確定した係数の平均値、あるいは最大出現頻度の係数が係数メモリ５に格納される。
【００２４】
この実施例は、学習によって決定された係数を予測係数として使用し、予測符号化を行う。この場合、推定精度を向上するために、入力画像のクラス分類（クラスタリング）を行う。図１において、○で示す画素が線形１次結合モデルに使用したものを示し、◎が示す画素がモデルおよびクラス分類に使用した画素を示す。つまり、１６画素中の４画素がクラス分類にも使用される。
【００２５】
４画素のそれぞれが８ビットであると、４画素の値の組合せが非常に多くなり、現実的なクラス分類とは言えない。そこで、後述するように、この４画素のそれぞれのビット数を符号化により圧縮している。より具体的には、ＡＤＲＣ（ダイナミックレンジに適応した符号化）によって、各画素を１ビットのコードに圧縮する。その結果、２4 ＝１６通りのクラスを取り扱えば良い。クラスを指示するコードをインデックスと称する。ＡＤＲＣに限らず、ベクトル量子化によって、画素のビット数を減少させることもできる。さらに、各画素の最上位ビットを集めてインデックスとしても良い。このように、予測画素の近傍の４画素をそれぞれ１ビットに正規化した４ビットのコードによってクラス分類することは、画像の時空間における変化の概略のパターン形状に応じてクラス分類を行ったことを意味する。
【００２６】
図２は、学習のための構成の一例を示す。図２において、１で示す入力端子に入力画像データが供給される。入力画像データとしては、異なる絵柄の多数の静止画像データが好ましい。入力画像データが時系列変換回路２および最小二乗法の演算回路３に供給される。時系列変換回路２は、ラスター走査の入力画像データ中の線形１次結合モデルおよびクラス分類に使用される複数の画素データを同時化する。
【００２７】
この時系列変換回路２の出力データが演算回路３およびクラス分類回路４に供給される。クラス分類回路４は、上述のように、画像の３次元の変化に対応するインデックスを発生する。このインデックスが演算回路３に供給される。演算回路３は、図１に示される時空間モデルに関して、上述した最小二乗法のアルゴリズムによって、インデックスで指示されるクラス毎に１組の係数ｗi を決定する。この係数が係数メモリ５に格納される。
【００２８】
図３は、この発明による予測符号化のエンコーダの一例の構成を示す。図３において、１５で示す係数メモリには、上述の学習により獲得された係数がクラス毎に格納されている。入力端子１１からの入力画像データが時系列変換回路１２に供給され、その出力データがクラス分類回路１４および推定値生成回路１６に供給される。時系列変換回路１２は、ラスター走査の順序に従って入力された画素データを図１に示すように、過去において順次伝送されてくる画素と未来に伝送されてくる画素をひとまとめにして同時に出力する。クラス分類回路１４には、クラス分類に使用する４画素のデータが供給される。クラス分類回路１４からのインデックスが係数メモリ１５に供給され、クラスに対応する１組の係数がメモリ１５から読出される。
【００２９】
この読出し係数が推定値生成回路１６に供給され、時系列変換回路１２からの画素データを使用して、推定値が生成される。この推定値が減算回路１８に供給される。減算回路１８の他の入力として、遅延回路１７を介された入力画像データが供給される。時系列変換回路１２、クラス分類回路１４、係数メモリ１５、推定値生成回路１６がローカルデコーダを構成する。減算回路１８によって、真値（実データ）と推定値との差分値が生成される。
【００３０】
この差分値が圧縮符号化のためのエンコーダ１９により符号化され、符号化出力（コード）が出力端子２０に取り出される。圧縮符号化としては、一例として、適応量子化によってビット数を削減した後、生起確立に基づいて予め求められたハフマン符号によってエントロピー符号化を行う。さらに、エンコーダ１９に対してリフレッシュ用に画素値そのものが供給され、所定の伝送データ毎に画素値が挿入される。圧縮符号化としては、他のものを採用できる。例えば差分値をブロック化した後、ＤＣＴ変換のような直交変換を行ない、そしてエントロピー符号化を行っても良い。圧縮符号化出力が伝送、あるいは記録される。
【００３１】
図３の例では、前もってなされる学習により獲得された汎用性のある係数を使用している。図４に示すエンコーダは、係数を入力画像と関連して更新することを可能とした構成である。すなわち、学習のためのものと同様の最小二乗法の演算回路１３を設け、演算回路１３からの係数で係数メモリ１５を更新することを可能としている。より具体的には、クラス分類回路１４からのインデックスが演算回路１３および係数メモリ１５に供給され、入力画像データが演算回路１３に供給され、演算回路１３からの確定係数が係数メモリ１５に対して供給されている。入力画像の１フレーム毎に限らず、かなり多くのフレームを学習した結果に基づいて係数を更新する構成としても良い。また、図４の係数メモリに予め学習で決定された係数を格納し、これを入力画像によって変更するようにしても良い。図４の例では、係数メモリ１５の内容が変化するので、出力端子２１に取り出された係数データをコードと共に伝送する必要がある。図４の構成において、最小二乗法の演算回路１３を選択的に動作させるようにしても良い。
【００３２】
次に、学習時およびエンコーダにおいて使用される各回路のより詳細な構成について説明する。図５は、クラス分類回路４、１４の一例である。入力画像データ（４画素のデータ）が１ビットＡＤＲＣ回路２７に順次供給される。ＡＤＲＣ回路２７では、４画素の値の最大値および最小値が検出され、最大値と最小値の差であるダイナミックレンジＤＲが検出される。このダイナミックレンジＤＲによって各画素の値が割算される。その商が０．５と比較され、商が０．５以上の時に`1' 、０．５より小の時に`0' のコードが形成される。
【００３３】
ＡＤＲＣ回路２７によって、各画素の値が１ビット（`0' または`1' ）に圧縮される。このＡＤＲＣ回路２７の出力がシフトレジスタ２８によって直列並列変換される。シフトレジスタ２８からの各１ビットのＬ１、Ｌ２、Ｌ３、Ｌ４がレジスタ２９に格納される。この４ビット（Ｌ１，Ｌ２，Ｌ３，Ｌ４）がインデックスである。
【００３４】
図６は、最小二乗法の演算回路３、１３のより詳細な構成を示す。入力ディジタル画像信号が供給され、時空間モデルを構成するデータ、すなわち、対象画素の実データｙと線形１次結合に使用するデータｘi を同時化するための時系列変換回路３１が設けられている。時系列変換回路３１からのデータが乗算器アレー３２に供給される。乗算器アレー３２に対して加算メモリ３３が接続される。インデックスがデコーダ３５に供給され、デコーダ３５からのクラス情報が加算メモリ３３に供給される。これらの乗算器アレー３２および加算メモリ３３は、正規方程式生成回路を構成する。
【００３５】
乗算器アレー３２は、各画素同士の乗算を行ない、加算メモリ３３は、乗算器アレー３２からの乗算結果が供給される加算器アレーとメモリアレーとで構成される。図７は、乗算器アレー３２の具体的構成である。図７において、その一つを拡大して示すように、四角のセルが乗算器を表す。乗算器アレー３２において各画素同士の乗算が行われ、その結果が加算メモリ３３に供給される。
【００３６】
加算メモリ３３は、図８に示すように、加算器アレー３３ａとメモリ（またはレジスタ、以下同様）アレー３３ｂとからなる。クラスの個数と等しい個数のメモリアレー３３ｂの並列回路が加算器アレー３３ａに対して接続されている。インデックスデコーダ３５からの出力（クラス）に応答して一つのメモリアレー３３ｂが選択される。また、メモリアレー３３ｂの出力が加算器アレー３３ａに帰還される。これらの乗算器アレー３２、加算器アレー３３ａ、メモリアレー３３ｂによって積和演算がなされる。インデックスによって決定されるクラス毎にメモリアレーが選択されて、積和演算の結果によってメモリアレーの内容が更新される。
【００３７】
なお、前述の正規方程式（７）のｗi にかかる積和演算の項を見ると、右上の項を反転すると、左下と同じものとなる。従って、（７）式を左上から右下に向かう線によって斜めに分割し、上側の三角形部分に含まれる項のみを演算すれば良い。この点から乗算器アレー３２、加算器アレー３３ａ、メモリアレー３３ｂは、図７および図８に示すように、上側の三角形部分に含まれる項を演算するのに必要とされる、乗算セルあるいはメモリセルを備えている。
【００３８】
以上のようにして、入力画像が到来するに従って積和演算が行われ、正規方程式が生成される。クラス毎の正規方程式の各項の結果は、クラスとそれぞれ対応するメモリアレー３３ｂに記憶されており、次に図６に示すように、この正規方程式の各項が掃き出し法のＣＰＵ演算回路３４に計算される。ＣＰＵを用いた演算によって正規方程式（連立方程式）が解かれ、最確値である係数が求まる。この係数が出力される。
【００３９】
図９は、係数メモリ１５および推定値生成回路１６の一例の構成である。係数メモリ１５は、各クラスの係数組を記憶し、インデックスデコーダ３６からのクラス識別信号により選択された係数組を出力する。この係数組ｗ1 〜ｗn がレジスタをそれぞれ介して乗算器３７1 〜３７n にその一方の入力として供給される。乗算器３７1 〜３７n の他方の入力としては、時系列変換回路３８によりまとめられた画素データｘ1 〜ｘn が供給される。乗算器３７1 〜３７n の出力が加算器３９で加算される。加算器３９からは、推定値ｙ（＝ｘ1 ｗ1 ＋ｘ2 ｗ2 ＋・・・・＋ｘn ｗn ）が得られる。
【００４０】
上述のように符号化されたデータを受信あるいは再生し、受信データが図１０に示すデコーダに供給される。４１で示す入力端子からの受信コードが圧縮符号化のデコーダ４３に供給され、４２で示す入力端子からの受信係数が係数メモリ４４に供給される。係数メモリ４４は、クラス分類回路４５からのインデックスに応答してクラスと対応する係数を出力する。学習によって得られた係数を変更しない時には、係数メモリ４４の内容が変更されない。係数メモリ４４の内容は、送信側のものと同一とされることが必要である。係数が推定値生成回路４６に供給される。
【００４１】
デコーダ４３からは、復号差分データが得られ、これが加算器４７に供給される。また、リフレッシュ用に挿入されている画素値は、推定値生成回路４６に供給され、推定値の生成に用いられる。加算器４７は、復号差分値と推定値生成回路４６からの推定値とを加算し、復号値を発生する。この復号値が時系列変換回路４８および４９に供給される。時系列変換回路４８は、推定に必要な複数の復号画素データをまとめる。時系列変換回路４９は、復号データをテレビジョンのラスター走査の順序に復号データの順序を変換する。出力端子５０に復号データが発生する。
【００４２】
時系列変換回路４８からの復号画素データが推定値生成回路４６に供給され、また、クラス分類に必要な復号画素データがクラス分類回路４５に供給される。クラス分類回路４５は、上述したように、１ビットＡＤＲＣ回路の構成であり、そこからのインデックスが係数メモリ４４に供給される。かかる図１０に示すデコーダ中の各回路の構成は、エンコーダについて説明したものと同様であり、その説明は、省略する。
【００４３】
なお、この発明では、時空間モデルとしては、図１に示すものに限られない。線形１次結合のタップ数を増やすことで、空間的な広がりが増し、誤差を減少できる。もっとも、タップ数の増大は、計算時間の増加をもたらす問題がある。
【００４４】
【発明の効果】
以上の説明からも明らかなように、この発明においては、過去のデータのパターンに応じたクラスを形成し、このクラスに対応する係数を算出し、この係数と過去のデータとの線形１次結合によって推定値を作成する。従って、クラス毎に最適な推定値を形成できるので、推定精度が向上し、符号化効率ならびに画質を向上することができる。
【図面の簡単な説明】
【図１】この発明の一実施例における時空間モデルを説明するための略線図である。
【図２】この発明による予測符号化回路の係数を決定するためになされる学習のための構成の一例を示すブロック図である。
【図３】この発明による予測符号化回路の一例のブロック図である。
【図４】この発明による予測符号化回路の他の例のブロック図である。
【図５】クラス分類回路の一例のブロック図である。
【図６】最小二乗法の演算回路の構成を示すブロック図である。
【図７】最小二乗法の演算回路に含まれる乗算器アレーを説明するための略線図である。
【図８】最小二乗法の演算回路に含まれる加算器アレーおよびメモリアレーを説明するための略線図である。
【図９】推定値生成回路の一例のブロック図である。
【図１０】この発明による復号装置の一例のブロック図である。
【符号の説明】
３、１３  最小二乗法の演算回路
４、１４、４５  クラス分類回路
５、１５、４４  係数メモリ
【図１】
0003543339.tif 000008
【図２】
0003543339.tif 000009
【図３】
0003543339.tif 000010
【図４】
0003543339.tif 000011
【図５】
0003543339.tif 000012
【図６】
0003543339.tif 000013
【図７】
0003543339.tif 000014
【図８】
0003543339.tif 000015
【図９】
0003543339.tif 000016
【図１０】
0003543339.tif 000017