(57)【要約】【課題】ベクトル量子化の結果得られるインデックスエラーが発生した場合に、エラーリカバリー処理を実行し、データを復号する。【解決手段】代表ベクトル検出部2703は、エラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスに対応する代表ベクトルを検出し、ユークリッド空間距離演算部2705は、代表ベクトルの特徴を検出する。ROM2707は、予め学習することにより決定されている係数の中から、所定の係数を、代表ベクトルの特徴に基づいて取得し、フィルタ2704は、その所定の係数と、代表ベクトルに基づいて、エラーが存在するブロックのデータを復元する。本発明は、例えば、ベクトル量子化の結果得られるインデックスを復号する場合に適用できる。【選択図】図２７
2010016908.tif 000002
【特許請求の範囲】
【請求項１】
ブロック単位で符号化され、ブロックに対応付けられたインデックスに基づいて復号処理を実行する画像処理装置において、
エラーが存在する前記ブロックを検出するエラーブロック検出手段と、
前記エラーブロック検出手段により検出されたエラーが存在する前記ブロックの近傍の近傍ブロックに対応付けられた前記インデックスを検出するインデックス検出手段と、
前記インデックス検出手段により検出された前記インデックスに対応する代表ベクトルを検出する代表ベクトル検出手段と、
前記代表ベクトル検出手段により検出された前記代表ベクトルの特徴を検出する特徴検出手段と、
予め学習することにより決定されている係数の中から、所定のものを、前記特徴検出手段により検出された前記特徴に基づいて取得する取得手段と、
前記取得手段により取得された係数と、前記代表ベクトル検出手段により検出された前記代表ベクトルに基づいて、前記エラーブロック検出手段により検出されたエラーが存在する前記ブロックのデータを復元する復元手段と
を備える画像処理装置。
【請求項２】
前記復元手段は、前記取得手段により取得された係数と、前記代表ベクトル検出手段により検出された前記代表ベクトルを構成するデータを用いて、線形１次予測演算を行う
請求項１に記載の画像処理装置。
【請求項３】
前記係数を記憶する記憶手段をさらに備え、
前記取得手段は、前記記憶手段に記憶されている前記係数の中から、前記特徴検出手段により検出された前記特徴に対応するものを取得する
請求項１に記載の画像処理装置。
【請求項４】
前記特徴検出手段は、前記代表ベクトルの特徴として、ユークリッド空間距離を検出する
請求項１に記載の画像処理装置。
【請求項５】
前記特徴検出手段は、
前記近傍ブロックの代表ベクトルの平均値を演算する平均値演算手段と、
前記近傍ブロックの代表ベクトルと、前記近傍ブロックの代表ベクトルの前記平均値との差の最大値を演算する最大値演算手段と、
前記近傍ブロックの代表ベクトルと、前記近傍ブロックの代表ベクトルの前記平均値との差の最小値を演算する最小値演算手段と、
前記最大値と最小値との差を、前記ユークリッド空間距離として演算するユークリッド空間距離演算手段と
を含む請求項４に記載の画像処理装置。
【請求項６】
前記特徴検出手段は、前記代表ベクトルの特徴として、前記ユークリッド空間距離の最大値を検出する
請求項４に記載の画像処理装置。
【請求項７】
前記特徴検出手段は、前記代表ベクトルの特徴として、前記ユークリッド空間距離の分散を検出する
請求項４に記載の画像処理装置。
【請求項８】
前記インデックス検出手段により検出された前記近傍インデックスの数を削減する削減手段をさらに備え、
前記取得手段は、前記特徴検出手段により検出された前記特徴と、前記削減手段により削減された前記近傍インデックスに基づいて、前記係数を取得する
請求項１に記載の画像処理装置。
【請求項９】
ブロック単位で符号化され、ブロックに対応付けられたインデックスに基づいて復号処理を実行する画像処理装置の画像処理方法において、
エラーが存在する前記ブロックを検出するエラーブロック検出ステップと、
前記エラーブロック検出ステップの処理により検出されたエラーが存在する前記ブロックの近傍のブロックに対応付けられた前記インデックスを検出するインデックス検出ステップと、
前記インデックス検出ステップの処理により検出された前記インデックスに対応する代表ベクトルを検出する代表ベクトル検出ステップと、
前記代表ベクトル検出ステップの処理により検出された前記代表ベクトルの特徴を検出する特徴検出ステップと、
予め学習することにより決定されている係数の中から、所定のものを、前記特徴検出ステップにより検出された前記特徴に基づいて取得する取得ステップと、
前記取得ステップの処理により取得された係数と、前記代表ベクトル検出ステップの処理により検出された前記代表ベクトルに基づいて、前記エラーブロック検出ステップの処理により検出されたエラーが存在する前記ブロックのデータを復元する復元ステップと
を含む画像処理方法。
【請求項１０】
ブロック単位で符号化され、ブロックに対応付けられたインデックスに基づいて復号処理を行うための予測演算に用いられる係数を学習する学習装置において、
前記インデックスの中から対象インデックスを検出する対象インデックス検出手段と、
前記対象インデックス検出手段により検出された前記対象インデックスに対応する代表ベクトルを教師データとして検出する教師データ検出手段と、
前記対象インデックスの近傍のインデックスを近傍インデックスとして検出する近傍インデックス検出手段と、
前記近傍インデックス検出手段により検出された前記近傍インデックスに対応する代表ベクトルを生徒データとして検出する生徒データ検出手段と、
前記係数と前記生徒データを用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことで前記係数を演算する学習手段と
を備える学習装置。
【請求項１１】
前記学習手段は、前記係数と前記生徒データを用いて線形１次予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行う
請求項１０に記載の学習装置。
【請求項１２】
前記教師データのうちの、注目している注目教師データを予測するのに前記係数とともに用いる前記生徒データを、予測タップとして抽出する予測タップ抽出手段をさらに備え、
前記学習手段は、前記予測タップと係数を用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行う
請求項１０に記載の学習装置。
【請求項１３】
前記注目教師データを、いくつかのクラスのうちのいずれかにクラス分類するのに用いられる生徒データを、クラスタップとして抽出するクラスタップ抽出手段と、
前記クラスタップに基づいて、前記注目教師データのクラスを決定するクラス分類手段と  をさらに備え、
前記学習手段は、前記予測タップと前記注目教師データのクラスに対応する係数を用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、クラス毎の前記係数を演算する
請求項１２に記載の学習装置。
【請求項１４】
前記クラスタップ抽出手段は、前記生徒データを構成する前記代表ベクトルの特徴に基づいて、前記クラスタップを抽出する
請求項１３に記載の学習装置。
【請求項１５】
前記クラスタップ抽出手段は、前記代表ベクトルの特徴として、ユークリッド空間距離を検出する
請求項１４に記載の学習装置。
【請求項１６】
前記クラスタップ抽出手段は、前記代表ベクトルの特徴として、前記ユークリッド空間距離の最大値を検出する
請求項１５に記載の学習装置。
【請求項１７】
前記クラスタップ抽出手段は、前記代表ベクトルの特徴として、前記ユークリッド空間距離の分散を検出する
請求項１５に記載の学習装置。
【請求項１８】
前記クラスタップ抽出手段は、前記近傍インデックス検出手段により検出された前記近傍インデックスの数を削減して、前記クラスタップを抽出する
請求項１３に記載の学習装置。
【請求項１９】
前記近傍インデックス検出手段により検出された前記近傍インデックスの数を削減する削減手段をさらに備え、
前記クラスタップ抽出手段は、前記特徴検出手段により検出された前記特徴と、前記削減手段により削減された前記近傍インデックスに基づいて、前記クラスタップを抽出する
請求項１３に記載の学習装置。
【請求項２０】
ブロック単位で符号化され、ブロックに対応付けられたインデックスに基づいて復号処理を行うための予測演算に用いられる係数を学習する学習装置の学習方法において、
前記インデックスの中から対象インデックスを検出する対象インデックス検出ステップと、
前記対象インデックス検出ステップの処理により検出された前記対象インデックスに対応する代表ベクトルを教師データとして検出する教師データ検出ステップと、
前記対象インデックスの近傍の近傍インデックスを検出する近傍インデックス検出ステップと、
前記近傍インデックス検出ステップの処理により検出された前記近傍インデックスに対応する代表ベクトルを生徒データとして検出する生徒データ検出ステップと、
前記係数と前記生徒データを用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことで前記係数を演算する学習ステップと
を含む学習方法。
【請求項２１】
ブロック単位で符号化され、ブロックに対応付けられたインデックスに基づいて復号処理を実行する画像処理装置において、
エラーが存在する前記ブロックを検出するエラーブロック検出手段と、
前記エラーブロック検出手段により検出されたエラーが存在する前記ブロックの近傍の近傍ブロックに対応付けられた前記インデックスを検出するインデックス検出手段と、
前記インデックス検出手段により検出された前記インデックスに対応する代表ベクトルを検出する代表ベクトル検出手段と、
前記インデックス検出手段により検出された前記インデックスを削減する削減手段と、
予め学習することにより決定されている係数の中から、所定のものを、前記削減手段により削減された前記インデックスに基づいて取得する取得手段と、
前記取得手段により取得された係数と、前記代表ベクトル検出手段により検出された前記代表ベクトルに基づいて、前記エラーブロック検出手段により検出されたエラーが存在する前記ブロックのデータを復元する復元手段と
を備える画像処理装置。
【請求項２２】
前記復元手段は、前記取得手段により取得された係数と、前記代表ベクトル検出手段により検出された前記代表ベクトルを構成するデータを用いて、線形１次予測演算を行う
請求項２１に記載の画像処理装置。
【請求項２３】
前記係数を記憶する記憶手段をさらに備え、
前記取得手段は、前記記憶手段に記憶されている前記係数の中から、前記特徴検出手段により検出された前記特徴に対応するものを取得する
請求項２１に記載の画像処理装置。
【請求項２４】
前記削減手段は、LBG法に基づいて生成されたテーブルに基づいて、前記インデックスを削減する
請求項２１に記載の画像処理装置。
【請求項２５】
ブロック単位で符号化され、ブロックに対応付けられたインデックスに基づいて復号処理を実行する画像処理装置の画像処理方法において、
エラーが存在する前記ブロックを検出するエラーブロック検出ステップと、
前記エラーブロック検出ステップの処理により検出されたエラーが存在する前記ブロックの近傍の近傍ブロックに対応付けられた前記インデックスを検出するインデックス検出ステップと、
前記インデックス検出ステップの処理により検出された前記インデックスに対応する代表ベクトルを検出する代表ベクトル検出ステップと、
前記インデックス検出ステップの処理により検出された前記インデックスを削減する削減ステップと、
予め学習することにより決定されている係数の中から、所定のものを、前記削減ステップにより削減された前記インデックスに基づいて取得する取得ステップと、
前記取得ステップの処理により取得された係数と、前記代表ベクトル検出ステップの処理により検出された前記代表ベクトルに基づいて、前記エラーブロック検出ステップの処理により検出されたエラーが存在する前記ブロックのデータを復元する復元ステップと
を含む画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および画像処理方法、並びに、学習装置および学習方法に関し、特に、静止画ブロックと動画ブロックとで異なるコードブックを使用して、各部ブロックのデータがベクトル量子化により符号化されている場合において、いずれのコードブックを用いて符号化が行われているのかが、復号時に、簡単かつ確実に、判定できるようにした画像処理装置および画像処理方法、並びに、学習装置および学習方法に関する。
【背景技術】
【０００２】
静止画、動画等の画像をインターネット等の様々な通信媒体を介して伝送する場合、データの圧縮が行なわれる。その圧縮手法の１つとしてベクトル量子化（ＶＱ：Vector Quantization）がある。ベクトル量子化（ＶＱ）は、複数の画素または画素に対応するデータ（標本値）をまとめてベクトルとして量子化する。
【０００３】
例えば符号化対象となる入力波形を標本化した後、連続した複数の標本値を要素とするベクトル系列を生成し、これを入力ベクトルとする。データの送信側（符号化側）と受信側（復号側）は、複数の代表ベクトルからなるコードブックを保有し、データの送信側は、入力ベクトルに最も近い代表ベクトルをコードブックの中から選択し、その代表ベクトルを識別する（特定する）識別値としてのインデックスを２進符号化して送信する。すなわち、入力ベクトルは、代表ベクトルに量子化され、インデックスとして送信される。
【０００４】
データ受信側は、コードブックを参照して、伝送されてきたインデックスを対応する代表ベクトルに変換し、代表ベクトルに基づいて復号処理を実行する。
【０００５】
図１に一般的なベクトル量子化（ＶＱ）による画像符号化と、復号処理を実行する構成のブロック図を示す。
【０００６】
データ送信側は、静止画コードブック１０３と、動画コードブック１０４という２つの種類のコードブックを有する。入力データのベクトル生成処理においては、入力画像が静止画であると判定された場合、静ベクトルが生成され、動画であると判定された場合、動ベクトルが生成される。生成されたベクトルが静ベクトルである場合、生成された静ベクトルに最も近い代表ベクトルが静止画コードブック１０３から選択され、その代表ベクトルに対応づけられたインデックスが出力される。生成されたベクトルが動ベクトルである場合、生成された動ベクトルに最も近い代表ベクトルが、動画コードブック１０４から選択され、その代表ベクトルに対応づけられたインデックスが出力される。
【０００７】
まず、動き判定部１０１は、入力データの連続フレームを取り込み、入力データが動画であるのか静止画であるのかを判定する。この動き判定は、各フレームの所定の数の画素からなる各ブロック毎に、下記の式によって表される差分値Ｅを求め、その差分値Ｅを予め定めた閾値と比較することによって実行される。
【０００８】
【数１】
2010016908.tif 000003
【０００９】
上記式（１）においてｆ０（ｘ＋ｉ，ｙ＋ｊ）は、フレーム０における画素値を示し、ｆ１（ｘ＋ｉ，ｙ＋ｊ）は、フレーム０に続くフレーム１における画素値を示す。動き判定部１０１は、上記式（１）によって求められた差分値Ｅを閾値ＴＨと比較し、Ｅ≧ＴＨである場合、入力画像を動画であると判定し、Ｅ＜ＴＨである場合、入力画像を静止画であると判定する。
【００１０】
動き判定部１０１の判定結果に基づいて選択部１０２の切り替えが実行され、静止画コードブック１０３または動画コードブック１０４のいずれかが選択される。すなわち、ＶＱエンコーダ１０５は、生成したベクトルが、静止画に基づく静ベクトルである場合、静止画コードブック１０３の代表ベクトルから最も近い代表ベクトルを選択し、その代表ベクトルに対応付けられたインデックスを出力する。さらに、ＶＱエンコーダ１０５は、生成したベクトルが、動画に基づく動ベクトルである場合、動画コードブック１０４の代表ベクトルから最も近い代表ベクトルを選択し、その代表ベクトルに対応付けられたインデックスを出力する。
【００１１】
さらに、ＶＱエンコーダ１０５は、出力したインデックスが、静止画コードブック１０３と、動画コードブック１０４のいずれのインデックスであるのかを受信側において区別可能とするために、その識別のためのフラグである動きフラグを付加して出力する。
【００１２】
データ受信側では、インデックスと動きフラグを受信したＶＱデコーダ１０６が、受信データ中の動きフラグに基づいて静動判定を実行し、判定結果に基づいて選択部１０７を制御して、静止画コードブック１０８、または動画コードブック１０９を選択する。ＶＱデコーダ１０６は選択されたコードブックを参照し、受信したインデックスを対応する代表ベクトルに変換し、復号処理を実行する。
【先行技術文献】
【非特許文献】
【００１３】
【非特許文献１】Y.Linde A. Buzo and R.M.Gray:'An Algorithm for Vector Quantizer Design',IEEE Trans. Commun.,COM-28,1,pp.84-95（Jan. 1980）
【発明の概要】
【発明が解決しようとする課題】
【００１４】
ところで、送信側から受信側に送信されたベクトル量子化インデックスを、受信側において受信することができないような場合がある。この場合、そのままでは、データを復号することができない。
【００１５】
本発明は、このような状況に鑑みてなされたものであり、インデックスエラーが発生した場合、エラーリカバリー処理を実行し、データを復号することができるようにするものである。
【課題を解決するための手段】
【００１６】
本発明の第１の側面の画像処理装置は、エラーが存在するブロックを検出するエラーブロック検出手段と、エラーブロック検出手段により検出されたエラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスを検出するインデックス検出手段と、インデックス検出手段により検出されたインデックスに対応する代表ベクトルを検出する代表ベクトル検出手段と、代表ベクトル検出手段により検出された代表ベクトルの特徴を検出する特徴検出手段と、予め学習することにより決定されている係数の中から、所定のものを、特徴検出手段により検出された特徴に基づいて取得する取得手段と、取得手段により取得された係数と、代表ベクトル検出手段により検出された代表ベクトルに基づいて、エラーブロック検出手段により検出されたエラーが存在するブロックのデータを復元する復元手段とを備える画像処理装置である。
【００１７】
本発明の第１の側面の画像処理方法は、エラーが存在するブロックを検出するエラーブロック検出ステップと、エラーブロック検出ステップの処理により検出されたエラーが存在するブロックの近傍のブロックに対応付けられたインデックスを検出するインデックス検出ステップと、インデックス検出ステップの処理により検出されたインデックスに対応する代表ベクトルを検出する代表ベクトル検出ステップと、代表ベクトル検出ステップの処理により検出された代表ベクトルの特徴を検出する特徴検出ステップと、予め学習することにより決定されている係数の中から、所定のものを、特徴検出ステップにより検出された特徴に基づいて取得する取得ステップと、取得ステップの処理により取得された係数と、代表ベクトル検出ステップの処理により検出された代表ベクトルに基づいて、エラーブロック検出ステップの処理により検出されたエラーが存在するブロックのデータを復元する復元ステップとを含む画像処理方法である。
【００１８】
本発明の第２の側面の学習装置は、インデックスの中から対象インデックスを検出する対象インデックス検出手段と、対象インデックス検出手段により検出された対象インデックスに対応する代表ベクトルを教師データとして検出する教師データ検出手段と、対象インデックスの近傍のインデックスを近傍インデックスとして検出する近傍インデックス検出手段と、近傍インデックス検出手段により検出された近傍インデックスに対応する代表ベクトルを生徒データとして検出する生徒データ検出手段と、係数と生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことで係数を演算する学習手段とを備える学習装置である。
【００１９】
本発明の第２の側面の学習方法は、インデックスの中から対象インデックスを検出する対象インデックス検出ステップと、対象インデックス検出ステップの処理により検出された対象インデックスに対応する代表ベクトルを教師データとして検出する教師データ検出ステップと、対象インデックスの近傍の近傍インデックスを検出する近傍インデックス検出ステップと、近傍インデックス検出ステップの処理により検出された近傍インデックスに対応する代表ベクトルを生徒データとして検出する生徒データ検出ステップと、係数と生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことで係数を演算する学習ステップとを含む学習方法である。
【００２０】
本発明の第３の側面の画像処理装置は、エラーが存在するブロックを検出するエラーブロック検出手段と、エラーブロック検出手段により検出されたエラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスを検出するインデックス検出手段と、インデックス検出手段により検出されたインデックスに対応する代表ベクトルを検出する代表ベクトル検出手段と、インデックス検出手段により検出されたインデックスを削減する削減手段と、予め学習することにより決定されている係数の中から、所定のものを、削減手段により削減されたインデックスに基づいて取得する取得手段と、取得手段により取得された係数と、代表ベクトル検出手段により検出された代表ベクトルに基づいて、エラーブロック検出手段により検出されたエラーが存在するブロックのデータを復元する復元手段とを備える画像処理装置である。
【００２１】
本発明の第３の側面の画像処理方法は、エラーが存在するブロックを検出するエラーブロック検出ステップと、エラーブロック検出ステップの処理により検出されたエラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスを検出するインデックス検出ステップと、インデックス検出ステップの処理により検出されたインデックスに対応する代表ベクトルを検出する代表ベクトル検出ステップと、インデックス検出ステップの処理により検出されたインデックスを削減する削減ステップと、予め学習することにより決定されている係数の中から、所定のものを、削減ステップにより削減されたインデックスに基づいて取得する取得ステップと、取得ステップの処理により取得された係数と、代表ベクトル検出ステップの処理により検出された代表ベクトルに基づいて、エラーブロック検出ステップの処理により検出されたエラーが存在するブロックのデータを復元する復元ステップとを含む画像処理方法である。
【００２２】
本発明の第１の側面においては、エラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスが検出され、そのインデックスに対応する代表ベクトルが検出され、その代表ベクトルの特徴が検出される。特徴に対応する係数と代表ベクトルに基づいて、エラーが存在するブロックのデータが復元される。
【００２３】
本発明の第２の側面においては、対象インデックスに対応する代表ベクトルが教師データとして検出され、対象インデックスの近傍のインデックスが近傍インデックスとして検出される。近傍インデックスに対応する代表ベクトルが生徒データとして検出され、係数と生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことで係数が演算される。
【００２４】
本発明の第３の側面においては、エラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスが検出され、そのインデックスに対応する代表ベクトルが検出される。検出されたインデックスは削減され、削減されたインデックスに基づいて係数が取得される。取得された係数と代表ベクトルに基づいて、エラーが存在するブロックのデータが復元される。
【００２５】
本発明のさらに他の目的、特徴、利点などは、後述する本発明の実施の形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
【発明の効果】
【００２６】
本発明の第１の側面によれば、エラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスを検出し、そのインデックスに対応する代表ベクトルを検出し、その代表ベクトルの特徴をさらに検出する。そして、特徴に対応する係数と代表ベクトルに基づいて、エラーが存在するブロックのデータを復元する。従って、インデックスにエラーが存在する場合においても、復号処理が可能になる。
【００２７】
本発明の第２の側面によれば、対象インデックスに対応する代表ベクトルを教師データとして検出し、対象インデックスの近傍のインデックスを近傍インデックスとして検出する。また、近傍インデックスに対応する代表ベクトルを生徒データとして検出し、係数と生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行うことで係数を演算する。従って、インデックスにエラーが存在する場合においても、復号処理を可能にする係数を、確実に得ることができる。そして、正しいインデックスを求め、高精度のデータ復号処理が実現される。
【００２８】
本発明の第３の側面によれば、エラーが存在するブロックの近傍の近傍ブロックに対応付けられたインデックスを検出し、そのインデックスに対応する代表ベクトルを検出する。さらに検出したインデックスを削減し、削減したインデックスに基づいて係数を取得し、取得した係数と代表ベクトルに基づいて、エラーが存在するブロックのデータを復元する。従って、上述した場合と同様に、インデックスにエラーが存在する場合においても、復号処理を可能にする係数を、確実に得ることができる。そして、正しいインデックスを求め、高精度のデータ復号処理が実現される。
【図面の簡単な説明】
【００２９】
【図１】一般的なベクトル量子化に基づく画像符号化および復号処理を行う画像処理装置の構成を示すブロック図である。
【図２】本発明を適用した画像処理装置の構成を示すブロック図である。
【図３】ベクトル量子化に基づく静止画ブロックの静ベクトル生成処理について説明する図である。
【図４】ベクトル量子化に基づく動画ブロックの動ベクトル生成処理について説明する図である。
【図５】ベクトル量子化に基づく画像符号化および復号処理に適用されるコードブックの構成例について説明する図である。
【図６】図２の復号処理部の動画／静止画評価判定部の構成を示すブロック図である。
【図７】図６の静動判定テーブル格納部が有する静動判定テーブルの構成を説明する図である。
【図８】図６の静動判定テーブル格納部が有する静動判定テーブルの他の構成を説明する図である。
【図９】図７の静動判定テーブルの生成処理を説明するフローチャートである。
【図１０】静動判定テーブルの作成時における対象ブロックの静動カウント処理について説明する図である。
【図１１】図２の画像処理装置の静動判定テーブルを適用した復号処理を説明するフローチャートである。
【図１２】本発明を適用した画像処理装置の他の構成を示すブロック図である。
【図１３】本発明を適用した画像処理装置のさらに他の構成を示すブロック図である。
【図１４】図１３の動画／静止画評価判定およびエラーリカバリ部の構成を示すブロック図である。
【図１５】図１４の静動判定およびエラーリカバリテーブル格納部が有する静動判定およびエラーリカバリテーブルの構成を説明する図である。
【図１６】図１３の画像処理装置における静動判定およびエラーリカバリテーブルを適用した復号処理を説明するフローチャートである。
【図１７】高精度な静動データ構成を持つ静動判定テーブルの構成例について説明する図である。
【図１８】静動判定テーブルの生成処理の際に実行されるコードブック並び替え処理について説明する図である。
【図１９】コードブック並び替え処理を含む静動判定テーブル生成処理を説明するフローチャートである。
【図２０】ユークリッド空間距離に基づく静動判定処理を説明するフローチャートである。
【図２１】インデックスを説明する図である。
【図２２】図２１のインデックスに対応する代表ベクトルを説明する図である。
【図２３】ベクトルに基づく空間を説明する図である。
【図２４】ハイブリッド方式の静動判定処理を説明するフローチャートである。
【図２５】本発明を適用した画像処理装置の他の構成例を示すブロック図である。
【図２６】インデックス、代表ベクトル、および要素の関係を示す図である。
【図２７】図２５のエラー処理部の構成例を示すブロック図である。
【図２８】図２７のエラー処理部の動作を説明するフローチャートである。
【図２９】図２７のクラス生成処理の詳細を説明するフローチャートである。
【図３０】図２７のROMに記憶させる係数を学習する学習装置の構成例を示すブロック図である。
【図３１】図３０の学習装置の動作を説明するフローチャートである。
【図３２】図２７のクラス生成処理の他の処理例を説明するフローチャートである。
【図３３】図２７のクラス生成処理のさらに他の処理例を説明するフローチャートである。
【図３４】図２５のエラー処理部の他の構成例を示すブロック図である。
【図３５】図３４のエラー処理部の動作を説明するフローチャートである。
【図３６】図３４のインデックス削減部に記憶されるテーブルの例を示す図である。
【図３７】図３６のテーブルを生成する処理を説明するフローチャートである。
【図３８】図３７のテーブル生成処理を説明する図である。
【図３９】図３４のROMに記憶される係数を学習する学習装置の構成例を示すブロック図である。
【図４０】図３９の学習装置の動作を説明するフローチャートである。
【図４１】図２５のエラー処理部のさらに他の構成例を示すブロック図である。
【図４２】図４１のエラー処理部の動作を説明するフローチャートである。
【図４３】図４１のROMに記憶される係数を学習させる学習装置の構成例を示すブロック図である。
【図４４】図４３の学習装置の動作を説明するフローチャートである。
【図４５】本発明を適用した画像処理装置の他の構成例を示すブロック図である。
【発明を実施するための形態】
【００３０】
以下、本発明の画像処理装置および画像処理方法の実施の形態について、図面を参照して説明する。
【００３１】
まず、図２を参照して、本発明が適用される画像処理装置の基本的な構成と動作について説明する。
【００３２】
この画像処理装置は、画像符号化部２１１と、画像復号部２２１により構成されている。圧縮画像を生成し送信する画像符号化部２１１は、ベクトル量子化による符号化処理を実行するＶＱエンコーダ２０１、入力データの動き判定を実行する動き判定部２０２、静ベクトルに対応する代表ベクトルをインデックスに対応付けて格納した静止画コードブック２０３、動ベクトルに対応する代表ベクトルをインデックスに対応付けて格納した動画コードブック２０４、動き判定部２０２の判定結果に基づいて静止画コードブック２０３、動画コードブック２０４のいずれかをＶＱエンコーダ２０１において選択参照可能とする選択部２０５とを有する。
【００３３】
圧縮画像を受信し復号を実行する画像復号部２２１は、受信した圧縮データ（インデックス）を、インデックスに対応する代表ベクトルに変換して復号処理を実行するＶＱデコーダ２０６、受信されたインデックスが動画コードブックのインデックスであるのか、静止画コードブックのインデックスであるのかを判定する動画／静止画評価判定部２０７、静ベクトルに対応する代表ベクトルをインデックスに対応付けて格納した静止画コードブック２０８、動ベクトルに対応する代表ベクトルをインデックスに対応付けて格納した動画コードブック２０９、動画／静止画評価判定部２０７の判定結果に基づいて静止画コードブック２０８と動画コードブック２０９のいずれかをＶＱデコーダ２０６において選択参照可能とする選択部２１０とを有する。
【００３４】
なお、図２には、符号化部２１１より出力されたデータが、復号部２２１で受信、復号されるように示されているが、基本的には、符号化部２１１により符号化されたデータが、他の画像処理装置に送信され、他の画像処理装置から送信されてきた符号化データが、復号部２２１で復号されるものである。
【００３５】
ＶＱエンコーダ２０１は、符号化対象となる入力画像から得られる波形を標本化した後、連続した複数の標本値を要素とするベクトル系列を生成し、この入力ベクトルと、コードブック２０３，２０４に格納された複数の量子化代表ベクトルとを比較して、最も誤差の小さい量子化代表ベクトルを選択し、その選択された代表ベクトルに識別値として付加されているインデックスを２進符号化し、受信側に転送する。
【００３６】
動き判定部２０２は、入力データのベクトル生成処理において、入力画像が静止画であるのか、または動画であるのかを判定する。この判定処理は、前述したと同様に、各フレームの所定の数の画素からなる各ブロック毎に、下記の式によって表される差分値Ｅを求め、その差分値Ｅを予め定めた閾値と比較することによって実行される。
【００３７】
【数２】
2010016908.tif 000004
【００３８】
上記式（２）は、式（１）と同一の式であり、式（２）において、ｆ０（ｘ＋ｉ，ｙ＋ｊ）は、フレーム０における画素値を示し、ｆ１（ｘ＋ｉ，ｙ＋ｊ）は、フレーム０に続くフレーム１における画素値を示す。動き判定部２０２は、上記式（２）によって求められた差分値Ｅを閾値ＴＨと比較し、Ｅ≧ＴＨである場合、入力画像を動画であると判定し、Ｅ＜ＴＨである場合、入力画像を静止画であると判定する。
【００３９】
動き判定部２０２は、その判定結果に基づいて、選択部２０５の切り替えを実行する。入力された画像が静止画である場合、静止画コードブック２０３が選択され、入力された画像が動画である場合、動画コードブック２０４が選択され、ＶＱエンコーダ２０１に接続される。ＶＱエンコーダ２０１は、入力された画像が静止画である場合、静止画に基づく静ベクトルを生成し、静止画コードブック２０３の代表ベクトルの中から、その静ベクトルに最も近い代表ベクトルを選択し、その選択した代表ベクトルに対応付けられたインデックスを選択し、出力する。また、ＶＱエンコーダ２０１は、入力された画像が動画である場合、動画に基づく動ベクトルを生成し、動画コードブック２０４の代表ベクトルの中から、その動ベクトルに最も近い代表ベクトルを選択し、その選択した代表ベクトルに対応付けられたインデックスを選択し、出力する。
【００４０】
ＶＱエンコーダ２０１は、入力画像が動画である場合と、静止画である場合とで、異なる処理により、それぞれ静ベクトルまたは動ベクトルを生成する。静ベクトル生成処理および動ベクトル生成処理について図３および図４を用いて説明する。
【００４１】
図３は、静ベクトル生成処理を説明する図である。ブロック化した画像領域の時間軸方向の連続フレームとして、フレーム＃ｋと、フレーム＃ｋ＋１が示されている。各フレームを構成する９個（＝３×３）のブロックは、前述のベクトル量子化インデックスが各々対応付けられる領域として設定されるブロックである。
【００４２】
前述の式（２）に基づき演算した差分値Ｅと閾値との比較に基づいて、ブロックが静止画であることが動き判定部２０２で判定されると、ＶＱエンコーダ２０１は、静止画に対する静ベクトルとして、フレームｋとフレームｋ＋１の対応するブロックの標本値に基づいて、静ベクトルを生成する。例えば図３に示されるように、フレーム＃ｋの注目ブロックＩ０の１×２個の標本値（画素値）ｄ０，ｄ１と、連続フレーム＃ｋ＋１の対応ブロックＩ０の１×２個の標本値ｄ２，ｄ３に基づいて、静ベクトル（ｄ０，ｄ１，ｄ２，ｄ３）が生成される。
【００４３】
一方、動ベクトルの生成処理について図４を用いて説明する。前述の式（２）に基づき演算した差分値Ｅと閾値との比較に基づいて、ブロックが動画であることが動き判定部２０２で判定されると、動画に対する動ベクトルとして、単一のフレームのブロック、例えばフレーム＃ｋのみの標本値から動ベクトルが生成される。
【００４４】
図４に示す例では、フレーム＃ｋの注目ブロックＩ０について、ブロックＩ０の持つ２×２個の標本値ｄ０，ｄ１，ｄ２，ｄ３に基づいて動ベクトル（ｄ０，ｄ１，ｄ２，ｄ３）が生成される。
【００４５】
なお、静ベクトルまたは動ベクトルは、それを構成する要素（画素値）の垂直方向の数ｖ、水平方向の数ｈ、およびフレームの数ｔにより、ｖ×ｈ×ｔと表される。
【００４６】
このように生成するベクトルは、画像が静止画であるのか、または動画であるのかに応じて、処理が異なり、生成されたベクトルの持つ意味が異なってくる。従って、コードブックもまた、動画コードブック２０４，２０９と、静止画コードブック２０３，２０８と、異なるものが用意される。なお、動画コードブック２０９は、動画コードブック２０４と同一の内容のものであり、静止画コードブック２０８は、静止画コードブック２０３と同一の内容のものである。
【００４７】
コードブックの構成例を図５に示す。図５Ａは動画コードブックの例を表す。この例では、前述した１つのフレームのブロックに基づく動ベクトル（ｄ０，ｄ１，ｄ２，ｄ３）に対応する様々なパターンの代表値としての複数の異なる代表ベクトルが格納されている。さらに、各代表ベクトルに対応して、識別値としてインデックス１乃至Ｎ−１が付与されている。例えば、インデックス１に対応する代表ベクトルは、（８０，４０，５０，７０）とされ、インデックス２に対応する代表ベクトルは、（３０，２０，５０，８０）とされている。
【００４８】
また、図５Ｂは静止画コードブックの例を表す。この例では、前述した連続する２つのフレームのブロックに基づく静ベクトル（ｄ０，ｄ１，ｄ２，ｄ３）に対応する様々なパターンの代表値としての複数の異なる代表ベクトルが格納され、各代表ベクトルに対応して識別値としてのインデックス１乃至Ｎ−１が付与されている。例えば、インデックス１に対応する代表ベクトルは、（３０，４０，３０，４０）とされ、インデックス２に対応する代表ベクトルは、（３０，２０，２０，２０）とされている。
【００４９】
図２に戻り、符号化部２１１の処理の説明を続ける。ＶＱエンコーダ２０１は、符号化対象となる画像データの静動判定に基づいて、上述した動ベクトルまたは静ベクトルいずれかのベクトル生成処理を実行し、生成したベクトルが静ベクトルである場合、静止画コードブック２０３に記憶されている代表ベクトル中から、動ベクトルである場合、動画コードブック２０４に記憶されている代表ベクトル中から、それぞれ、生成ベクトルに最も近い、すなわち誤差が最小となる代表ベクトルを選択し、選択した代表ベクトルに対応して設定されているインデックスを、そのブロックのベクトル量子化インデックスとする。
【００５０】
本発明の画像処理装置は、符号化部２１１で符号化された、これらのインデックスのみを受信側に送信する。すなわち、画像処理装置は、従来のように、静動を判定する動きフラグを各ブロックに付加せずに、インデックスだけを送信する。従って、送信データ量が削減され、またＶＱエンコーダ２０１における処理も軽減される。
【００５１】
つまり、処理対象ブロックの静動判定に基づいて、異なるコードブックを適用して符号化と復号を実行する場合、データ受信側において、いずれのコードブックを適用すべきかを判定するための動きフラグを必要とする。
【００５２】
動きフラグは符号化単位として設定されるブロック毎に付加することが必要となる。データ量の削減を目的として行われる圧縮伝送において、各ブロックに新たなビットとして動きフラグを付加するということは伝送データの増加をもたらし、データ量削減の目的に反することになる。また、データ送信側での動きフラグ付加処理、データ受信側でのフラグに基づく静動判定処理も、処理の効率化の点で妨げになる。
【００５３】
本発明の画像処理装置では、動き判定フラグの付加処理、伝送処理を不要とし、インデックスのみをデータ送信側からデータ受信側に送信する構成とし、データ受信側において、受信インデックスのみに基づいて、受信インデックスが動画コードブックのインデックスであるか、静止画コードブックのインデックスであるかを判定し、判定結果に基づいて、いずれかのコードブックを選択して復号処理を実行する。
【００５４】
次に、データ受信側、すなわち復号処理を実行する復号部２２１の処理について説明する。復号部２２１の動画／静止画評価判定部２０７は、受信したベクトル量子化インデックスが、動画コードブックに基づくインデックスであるのか、静止画コードブックに基づくインデックスであるのかを判定する。
【００５５】
動画／静止画評価判定部２０７の詳細な構成を図６に示す。動画／静止画評価判定部２０７は、データ送信側から画像圧縮データとしてのベクトル量子化インデックスを受信するデータ入力部６０１の他、比較判定部６０２、静動判定テーブル格納部６０３、および判定結果出力部６０４を有する。
【００５６】
静動判定テーブル格納部６０３は、図７Ｂに示される静動判定テーブルを有する。静動判定テーブルは、図７Ａに示される、時間軸において連続する複数のフレーム（図７Ｂの例の場合、フレーム＃ｋとフレーム＃ｋ＋１の２フレーム）のインデックスであって、所定のインデックスが付与された注目ブロック（例えば、フレーム＃ｋではＩ０、フレーム＃ｋ＋１ではＩ１）の近傍の近傍ブロックのインデックス（図７Ｂの例では、フレーム＃ｋの注目ブロックを囲繞する周囲のブロックのインデックスｉ００，ｉ０１，・・・，ｉ０７、またはフレーム＃ｋ＋１の注目ブロックを囲繞する周囲のブロックのインデックスｉ１０，ｉ１１，・・・，ｉ１７）の、複数の異なるパターンについて格納したテーブルであり、各インデックスのデータパターンの各々に、静または動を示す静動データが対応付けられている。
【００５７】
図７Ｂの例では、インデックスｉ００，ｉ０１，・・・，ｉ０７，ｉ１０，ｉ１１，・・・，ｉ１７の値として、３，４，２，・・・，４，５，７のデータパターンに対して動（１）の静動データが付加されており、３，２，５，・・・，２，５，８のデータパターンに対して静（０）の静動データが付加されている。
【００５８】
静動データは、復号処理対象ブロックとしての注目ブロックが動画、すなわち動ベクトル適用ブロックであるのか、静止画、すなわち静止ベクトル適用ブロックであるのかを示している。すなわち、静動データは、フレーム＃ｋ，フレーム＃ｋ＋１のそれぞれの注目ブロックに設定されたインデックスＩ０，Ｉ１が、動画コードブック２０４に基づいて設定されたベクトル量子化インデックスであるのか、静止画コードブック２０３に基づいて設定されたベクトル量子化インデックスであるのかを示す。このテーブルは、画像に基づく実際の処理、すなわち学習により生成される。
【００５９】
図７Ａに示されるように、テーブルに格納される近傍ブロックのインデックスは、静止画、すなわち静止ベクトル適用ブロックと、動画、すなわち動ベクトル適用ブロックとでは、異なる態様であるため、それぞれのブロックに応じてインデックスをテーブルに格納することが必要となる。図７Ａでは、左側の２フレームは、すべて動ベクトル適用ブロックによって構成され、右側の２フレームは、すべて静ベクトル適用ブロックによって構成された例を示しているが、例えば図８に示されるように、フレーム内に静ベクトル適用ブロックと動ベクトル適用ブロックが混在する場合であっても、各フレームから、ベクトル量子化インデックスを取得して静動判定テーブルを構成することができる。
【００６０】
図６に示す比較判定部６０２は、入力部６０１を介して取り込んだ受信データの、復号処理対象ブロック（注目ブロック）の近傍ブロックのインデックスのパターンを検出し、静動判定テーブル格納部６０３に格納されている静動判定テーブルに格納されているインデックスパターンと比較する。そして、比較判定部６０２は、検出されたインデックスパターンと同一または最小誤差のインデックスパターン列を静動判定テーブルから選択し、選択したインデックスパターンに対応付けられた静動データを、判定結果出力部６０４を介して図２の選択部２１０に出力する。選択部２１０は、判定結果としての静動データが、動を示す場合、動画コードブック２０９を選択し、静動データが、静を示す場合、静止画コードブック２０８を選択し、ＶＱデコーダ２０６に参照可能に接続する。ＶＱデコーダ２０６は、復号処理対象ブロック（注目ブロック）に対応付けられたインデックスに対応する代表ベクトル（ｄ０，ｄ１，ｄ２，ｄ３）を、それが静止画ブロックである場合、静止画コードブック２０８（図５Ｂ）から選択し、それが動画ブロックである場合、動画コードブック２０９（図５Ａ）から選択することで、復号処理を実行する。
【００６１】
次に、図７に示した静動判定テーブルの生成処理について、図９のフローチャートに基づいて説明する。この処理は、所定のタイミングにおいて、動画／静止画評価判定部２０７により実行される。この静動判定テーブルは、画像のブロック単位での静動判定処理と、ＶＱエンコーダで付与されるインデックスの抽出処理とを実行することによって生成される。
【００６２】
まず、動画／静止画評価判定部２０７は、ステップＳ９０１で画像データを入力し、ステップＳ９０２において、時間軸において連続するフレームに基づいて、フレーム間の対応するブロックに関して、前述の式（２）を適用して差分値Ｅを求め、予め定めた閾値ＴＨと比較して、処理ブロックが動画、すなわち動ベクトルを生成するブロックであるのか、静止画、すなわち静ベクトルを生成するブロックであるのかを判定する。
【００６３】
ステップＳ９０３で、処理ブロックが動ベクトル生成ブロックであると判定された場合、ステップＳ９０４に進み、動画／静止画評価判定部２０７は、前述した動画コードブック２０９から、生成ベクトルに最も近い代表ベクトルを選択し、選択した代表ベクトルに設定されたインデックスを処理ブロックのインデックスとして設定する。
【００６４】
一方、ステップＳ９０３で、処理ブロックが動ベクトル生成ブロックではないと判定した場合、ステップＳ９０５に進み、動画／静止画評価判定部２０７は、前述した静止画コードブック２０８から、生成ベクトルに最も近い代表ベクトルを選択し、選択した代表ベクトルに設定されたインデックスを、処理ブロックのインデックスとして設定する。
【００６５】
次に、ステップＳ９０６において、動画／静止画評価判定部２０７は、１フレームあたり、処理ブロックの近傍の８つの近傍ブロックのインデックス（近傍インデックス）を検出する。これらの近傍インデックスについては、動画コードブック２０９のインデックスであるのか、静止画コードブック２０８のインデックスであるのかについては検討を要しない。インデックスとして設定された値のみが取得される。このとき、時間軸において連続するフレーム＃ｋ，＃ｋ＋１の２フレームを１つの処理単位として、各フレームにおける近傍ブロックのインデックスが求められる。そのため、いまの場合、１処理単位あたり、１６ブロックのインデックスが求められる。なお、近傍ブロックのインデックスが未算出である場合、ステップＳ９０２乃至Ｓ９０５と同様の処理が、近傍ブロックに対して実行され、各ブロックのインデックスが求められる。
【００６６】
ステップＳ９０７において、動画／静止画評価判定部２０７は、ステップＳ９０４またはステップＳ９０５で求めた各近傍ブロックのインデックスと、ステップＳ９０１の静動判定処理で求めた注目ブロックである処理ブロックの静動判定データを、テーブルに格納して１つのテーブルエントリデータとする。
【００６７】
以上の処理が、入力画像の各ブロックから得られるベクトルについて順次実行され、テーブルエントリを順次増加させてテーブルが生成され、ステップＳ９０８で、入力画像の処理が終了したと判定されるまで、ステップＳ９０１乃至Ｓ９０７の処理が繰り返され、入力画像の処理が終了したと判定されたとき、テーブル生成処理が終了する。
【００６８】
なお、同一のインデックスパターンに対しても、対象ブロックが動画である場合と、静止画である場合とが発生する可能性がある。そこで、各ブロックのインデックスパターン毎に、対象ブロックが静止画と判定された回数、および動画と判定された回数をカウントし、その度数分布を作成することで、テーブルを作成することができる。
【００６９】
図１０に、このようにして、テーブル作成過程における対象ブロックが静止画であると判定された回数と、動画であると判定された回数とを測定したテーブルの例を示す。例えば図１０Ｂの最下段に示すように、インデックスパターンに対して対象ブロックがすべて動画である（静止画カウントの値が０であり、動画カウントの値が３０である）と判定された場合、そのインデックスパターンに対しての静動データは動として設定される。図１０Ｂの最上段に示すように、インデックスパターンに対して対象ブロックが静止画であると判定された回数が多い（静止画カウントの値が２１であり、動画カウントの値が３である）場合、そのインデックスパターンに対しての静動データは静として設定される。図１０Ｂの第２列段に示すように、インデックスパターンに対して対象ブロックが静止画であると判定された回数と、動画であると判定された回数が均衡している（静止画カウントの値が１０であり、動画カウントの値が１０である）場合の処理については、静動判定テーブルの生成処理における精度向上手法として、その詳細は後述する。
【００７０】
なお、静動判定テーブルは、予め何らかのサンプル画像データを用いて図９に示すフローチャートの処理を実行して生成し、生成したテーブルを適用して様々な入力画像の静動判定に適用したり、あるいは、画像の種類に応じたテーブルを複数生成し、入力画像に応じてテーブルを選択し、最適なテーブルを用いた静動判定を実行するように構成してもよい。
【００７１】
また、図７Ｂに示す静動判定テーブルは、注目ブロックのインデックス、すなわち、図７Ａの注目ブロックのインデックスＩ０，Ｉ１を、テーブル内データとして含まない構成であるが、これらのデータについても静動判定テーブル内に格納してテーブルデータを構成してもよい。
【００７２】
さらに、実際の処理画像の一部について図９のフローチャートの処理を実行して、処理画像専用の静動判定テーブルを生成し、生成した専用テーブルに基づいて処理画像の静動判定を実行する構成とし、処理画像毎に判定テーブルを生成するようにしてもよい。
【００７３】
動画／静止画評価判定部２０７は、インデックスデータ列を受信したとき、上述した図９のフローチャートに従って生成された図７に示す静動判定テーブルの格納データを参照し、受信インデックスデータ列に最も近い、すなわち誤差が最小となるインデックスデータ列を選択し、その選択されたインデックスデータ列に対応してテーブルに設定されている静動データに基づいて、受信インデックスデータ列が動画コードブックのインデックスであるのか、または静止画コードブックのインデックスであるのかを判定する。
【００７４】
動画／静止画評価判定部２０７は、その判定に基づいて選択部２１０を制御し、受信インデックスが静ベクトルに対応するインデックスであると判定した場合、静ベクトルに対応する代表ベクトルを格納した静止画コードブック２０８を、また、受信インデックスが動ベクトルに対応するインデックスであると判定した場合、動ベクトルに対応する代表ベクトルを格納した動画コードブック２０９を、それぞれＶＱデコーダ２０６において選択参照可能とする。
【００７５】
ＶＱデコーダ２０６は、静止画コードブック２０８と動画コードブック２０９のうち、いずれか選択された方を参照して、入力インデックスに対応するインデックスの代表ベクトルを取得して、取得した代表ベクトルに基づく復号処理を実行する。
【００７６】
次に、データ送信側からインデックスのみを受信して、コードブックを使用した動き適応ベクトル量子化データの復号処理を実行する復号部２２１の処理について、図１１のフローチャートを用いて説明する。
【００７７】
まず、ステップＳ１１０１において、動画／静止画評価判定部２０７が受信ベクトル量子化インデックスデータ列のパターンを検出する。検出するパターンは、時間軸に連続する各フレームにおける、復号対象となる注目ブロックの近傍の近傍ブロックのインデックスパターン（図７Ａ参照）である。
【００７８】
次に、ステップＳ１１０２において、動画／静止画評価判定部２０７は、静動判定テーブル（図７Ｂ）を参照して、受信インデックスパターンと一致するインデックスデータ列を検索し、ステップＳ１１０３において、検索結果として、一致するインデックスデータ列が、静動判定テーブル中にあったか否かを判定する。
【００７９】
動画／静止画評価判定部２０７は、静動判定テーブルに受信インデックスパターンと一致するデータ列があった場合、ステップＳ１１０４で、一致するインデックスデータ列を選択し、一致データがなかった場合、ステップＳ１１０５で、受信インデックスパターンに最も近い、誤差が最小のインデックスデータ列を選択する。
【００８０】
次に、動画／静止画評価判定部２０７は、ステップＳ１１０６において、選択インデックスデータ列に設定された静動データを取得し、ステップＳ１１０７において、取得された静動データが動または静のいずれであるのかを判定する。取得された静動データが動である場合、ＶＱデコーダ２０６は、ステップＳ１１０８において、動画コードブック２０９から、復号対象となる注目ブロックのインデックスに対応する代表ベクトルを選択し、復号処理を実行する。
【００８１】
一方、ステップＳ１１０７において、取得された静動データが静であると判定された場合、ＶＱデコーダ２０６は、ステップＳ１１０９において、静止画コードブック２０８から、復号対象となる注目ブロックのインデックスに対応する代表ベクトルを選択し、復号処理を実行する。
【００８２】
ステップＳ１１０１において、全ての入力インデックスに基づく復号処理が実行されたか否かが判定され、まだ実行されていなければ、ステップＳ１１０１乃至Ｓ１１０９の処理が繰り返され、全ての受信データの復号が終了したと判定されたとき、処理が終了される。
【００８３】
上述したように、本発明の構成に係る復号部２２１は、各ブロックについての静動判定を行なうための動きフラグを受信することなく、ベクトル量子化インデックスのみを受信し、受信したベクトル量子化インデックスのみに基づいて、受信インデックスが動画コードブックのインデックスであるのか、静止画コードブックのインデックスであるのかを判定する。従って、各ブロック毎の動きフラグの受信が不要となり、送信データ量の削減が実現できる。
【００８４】
なお、図３と図４を用いて説明したように、動ベクトルと静ベクトルでは、ベクトル生成のための要素配列が異なり、ベクトル生成処理では、ブロックが静止画であるのか、または動画であるのかによって、要素配列を並び替えてベクトルを生成することが必要となる。図２に示す構成においては、符号化部２１１のＶＱエンコーダ２０１が、ブロックの静動に基づいて、ブロック化された画像信号に基づくベクトル生成のための要素の並び替え処理を実行し、並び替え処理による要素配列に基づいて、動ベクトルまたは静ベクトルの生成を実行するようにし、また、復号部２２１においては、ＶＱデコーダ２０６が、動ベクトルまたは静ベクトルに対応する代表ベクトルの復号を実行し、ベクトルの静動に基づいて、要素の並び替え（符号化時と逆の処理）を行なって出力するよに構成したが、ＶＱエンコーダ２０１またはＶＱデコーダ２０６において、これらの要素並び替え処理を実行するのではなく、図１２に示されるように、符号化部２１１のＶＱエンコーダ２０１の前段に、ブロック化された画像信号に基づくベクトル生成のための要素並び替え処理を実行する要素変換部２５１を設け、要素変換部２５１において、動き判定部の判定したブロックの静動に基づいて、要素並び替えを実行する構成としてもよい。同様に、復号部２２１においては、ＶＱデコーダ２０６の後段に要素逆変換部２５２を設け、要素逆変換部２５２により、動画／静止画評価判定部２０７の判定結果に基づいて、要素の並び替え（符号化時と逆の処理）を行なう構成としてもよい。
【００８５】
ところで、送信側から受信側に送信されたベクトル量子化インデックスを、受信側において受信することができないような場合がある。この場合、そのままでは、データを復号することができない。そこで、このようなインデックスエラーが発生した場合、静動判定テーブルに基づいて、エラーリカバリー処理を実行し、データを復号することができるようにすることができる。
【００８６】
図１３に、この場合の画像処理装置の構成を示す。符号化部２１１は図２に示した場合と同様の構成であるので、その説明は省略する。データ受信側、すなわち復号処理を実行する画像復号部２２１は、動画／静止画評価判定およびエラーリカバリ部１１０１が設けられている点が図２の場合と異なっている。
【００８７】
動画／静止画評価判定およびエラーリカバリ部１１０１の詳細構成を図１４に示す。動画／静止画評価判定およびエラーリカバリ部１１０１は、データ送信側から画像圧縮データとしてのベクトル量子化インデックスを受信するデータ入力部１２０１の他、比較判定部１２０２、静動判定およびエラーリカバリテーブル格納部１２０３、インデックスエラーリカバリ部１２０４、判定結果出力部１２０５を有する。
【００８８】
静動判定およびエラーリカバリテーブル格納部１２０３は静動判定およびエラーリカバリテーブルを有しており、図１５にその例が示されている。図１５Ｂに示す静動判定およびエラーリカバリテーブルは、時間軸における連続する２つのフレーム（図１５Ｂの例の場合、＃ｋフレームと＃ｋ＋１フレーム）の注目ブロックの近傍ブロックに付与されたインデックスを、複数の異なるパターンについて格納したテーブルであり、近傍ブロックインデックスについては、先に説明した図７の静動判定テーブルの構成と同様である。
【００８９】
図１５の静動判定およびエラーリカバリテーブルには、静動判定を行なうための静動データのみではなく、インデックスデータの受信に失敗したときの、すなわちエラーインデックスを注目ブロックとして設定したときの、注目ブロックのインデックスが記録されている。これにより、時間軸において連続する２つのフレームの注目ブロックの近傍ブロックに付与されたインデックスから、エラーとなった注目ブロックのインデックスを求めることが可能となっている。
【００９０】
動画ブロック、すなわち動ベクトルを適用したブロックと、静止画ブロック、すなわち静ベクトルを適用したブロックとでは、先のベクトル生成処理の説明から理解されるように、異なるベクトル生成処理が実行され、それぞれのインデックスの持つ意味が異なる。従って、静動判定およびエラーリカバリテーブルのエラーインデックスＩ０，Ｉ１は、注目ブロックが、動ベクトルを適用したブロックである場合と、静ベクトルを適用したブロックである場合とで、異なる意味を持つ。
【００９１】
注目ブロックが動ベクトルを適用したブロックである場合、静動判定およびエラーリカバリテーブルに格納されたＩ０は、フレーム＃ｋの注目ブロックである中央ブロックのベクトル量子化インデックスを表すものとなり、Ｉ１は、フレーム＃ｋと時間軸において連続するフレーム＃ｋ＋１の中央ブロックのベクトル量子化インデックスを表すものとなる。
【００９２】
一方、注目ブロックが静ベクトルを適用したブロックである場合、静動判定およびエラーリカバリテーブルに格納されたＩ０は、フレーム＃ｋおよびフレーム＃ｋと時間軸において連続するフレーム＃ｋ＋１の注目ブロックである中央ブロックの、一方の分割領域に割り当てられたベクトル量子化インデックスとなり、Ｉ１は、他方の分割領域に割り当てられたベクトル量子化インデックスとなる。
【００９３】
なお、静動判定およびエラーリカバリテーブルは、予め何らかのサンプル画像データを用いて、先に説明した図９に示すフローチャートと同様の処理によって生成される。このテーブルが様々な入力画像の静動判定およびエラーリカバリに適用される。あるいは、画像の種類に応じたテーブルを複数生成し、入力画像に応じて適宜テーブルを選択し、最適なテーブルを用いて静動判定を実行するように構成してもよい。また、実際の処理画像の一部について、図９のフローチャートに示す処理を実行して、処理画像専用の静動判定およびエラーリカバリテーブルを生成し、生成した専用テーブルに基づいて、処理画像の静動判定を実行する構成、すなわち、処理画像毎に静動判定およびエラーリカバリテーブルを生成するようにしてもよい。
【００９４】
図１４に示す比較判定部１２０２は、入力部１２０１を介して入力された、復号処理対象ブロックの近傍ブロックのベクトル量子化インデックスパターンと、静動判定およびエラーリカバリテーブル格納部１２０３の静動判定およびエラーリカバリテーブルに格納されたインデックスパターン列とを比較し、同一または最小誤差のインデックスパターン列を静動判定およびエラーリカバリテーブルから選択し、選択したインデックスパターン列に対応付けられた静動判定結果データを、判定結果出力部１２０５を介して図１３の選択部２１０に出力する。選択部２１０は、その判定結果に従って、代表ベクトルを格納した動画コードブック２０９または静止画コードブック２０８のいずれかを選択し、ＶＱデコーダ２０６において参照可能にする。
【００９５】
また、インデックスエラーリカバリ部１２０４は、受信インデックスにエラーがある場合、上述したようにして比較判定部１２０２において、静動判定の基礎とされたインデックスパターン列に対応付けられたエラーインデックス（図１５のＩ０またはＩ１）を、静動判定およびエラーリカバリテーブル格納部１２０３の静動判定およびエラーリカバリテーブルから取得し、これをＶＱデコーダ２０６に出力する。
【００９６】
ＶＱデコーダ２０６は、復号処理対象ブロックに対応付けられたベクトル量子化インデックスを、受信データ、あるいは、インデックスエラーリカバリ部１２０４から取得し、取得したインデックスに対応する代表ベクトルを、その復号処理対象ブロックの静動判定結果に基づくコードブック（図５の動画コードブックまたは静止画コードブック）から選択して、復号処理を実行する。
【００９７】
以上の、静動判定およびエラーリカバリテーブルを用いたエラーリカバリ処理を含む復号処理の詳細について、図１６のフローチャートを用いて説明する。
【００９８】
まず、ステップＳ１６０１において、動画／静止画評価判定およびエラーリカバリ部１１０１の比較判定部１２０２が、受信ベクトル量子化インデックスデータ列のパターンを検出する。検出するパターンは、時間軸に連続するフレームにおける、復号対象となる注目ブロックに対する近傍ブロックのインデックスパターン（図１５Ａ参照）である。
【００９９】
次に、ステップＳ１６０２において、比較判定部１２０２は、受信したインデックスパターン列に対応するインデックスパターン列を、静動判定およびエラーリカバリテーブルから検索し、ステップＳ１６０３において、検索結果として、一致するインデックスデータ列がテーブル中にあったか否かを判定する。
【０１００】
比較判定部１２０２は、静動判定およびエラーリカバリテーブルに受信インデックスパターンと一致するデータ列があった場合、ステップＳ１６０４において、一致するインデックスデータ列を選択し、一致データがなかった場合、ステップＳ１６０５において、受信インデックスパターン列に最も近い、誤差が最小のインデックスデータ列を選択する。
【０１０１】
次にステップＳ１６０６において、インデックスエラーリカバリ部１２０４は、注目ブロックのインデックスエラーが発生しているか否かを判定し、エラーがない場合、ステップＳ１６０８において、選択インデックスデータ列に設定された静動データを、静動判定およびエラーリカバリテーブル（図１５）から取得する。注目ブロックにエラーがある場合、インデックスエラーリカバリ部１２０４は、ステップＳ１６０７において、静動判定およびエラーリカバリテーブルの選択インデックスデータ列に設定された静動データに加えて、エラーとなった注目ブロックのエラーインデックス（図１５ＢのＩ０またはＩ１）を取得する。
【０１０２】
次にステップＳ１６０９において、インデックスエラーリカバリ部１２０４は、取得された静動データが動であると判定した場合、ステップＳ１６１０において、動画コードブック２０９（図５Ａ）から、復号対象となる注目ブロックのインデックスに対応する代表ベクトルを決定して、復号処理を実行する。
【０１０３】
一方、ステップＳ１６０９において、取得された静動データが静であると判定した場合、インデックスエラーリカバリ部１２０４は、ステップＳ１６１１において、静止画コードブック２０８（図５Ｂ）から、復号対象となる注目ブロックのインデックスに対応する代表ベクトルを決定して、復号処理を実行する。
【０１０４】
ステップＳ１６１２において、インデックスエラーリカバリ部１２０４は、全ての受信データの復号が終了したか否かを判定する。すべての処理がまだ終了していなければ、ステップＳ１６０１乃至Ｓ１６１１の処理が繰り返される。全ての受信データの復号処理が終了したとき処理は終了される。
【０１０５】
上述したように、本実施の形態の構成に係る復号部２２１は、受信するベクトル量子化インデックスにエラーが発生した場合においても、近傍ブロックのインデックスパターンに基づいて、静動判定およびエラーリカバリテーブルを参照して、欠落したエラーインデックスを求めることが可能となる。従って、高精度のデータ復号処理が可能となる。
【０１０６】
次に、静動判定テーブルの生成処理における精度向上手法について説明する。先に注目ブロックの近傍ブロックのベクトル量子化インデックスに基づいて、注目ブロックのベクトル量子化インデックスの静動を判定するテーブルとして、図７に示すテーブルを示し、またそのテーブル生成処理フローチャートを図９を用いて説明した。
【０１０７】
図９を用いて説明した静動判定テーブル生成処理では、先に述べたように、ある特定の画像を入力して、実際に各フレームに含まれる注目ブロックとしての中央ブロックの静動判定を実行し、さらに注目ブロックに対する近傍ブロックのインデックスを取得して、テーブルデータとして構成するようにした。この場合、処理データを多くして、様々なインデックスパターンをテーブル登録することにより、テーブルのヒット率、すなわち、処理対象データとしての受信インデックスパターンと、テーブル格納インデックスパターンの一致する確率を高めることが可能となる。
【０１０８】
しかしながら、静動テーブル生成処理において、ある注目ブロックの近傍ブロックのインデックスパターンが同一であるにもかかわらず、注目ブロックが動画、すなわち動ベクトル適用ブロックである場合と、静止画、すなわち静ベクトル適用ブロックである場合が、発生し得る。
【０１０９】
このような場合、図７に示す静動判定テーブルにおいて、同一のインデックスパターンに対して、異なる静動データを重複して登録することはできないので、何らかの手当てが必要となる。１つの手法は、同一インデックスパターンについて、注目ブロックが動ベクトル適用と判定された場合の出現度数と、静ベクトル適用と判定された場合の出現度数をカウントして、多い方を静動判定テーブルにおける当該インデックスパターンの静動データとする方法である。
【０１１０】
しかしながら、注目ブロックが動ベクトル適用の場合と、静ベクトル適用の場合とで、ほぼ同率で、同じ近傍ブロックのインデックスパターンが発生した場合、やはり、静動データを決定することができない。以下、この場合の処理について説明する。
【０１１１】
いま、静動判定テーブルは、図１７に示されるように、時間軸において連続する２つのフレームの各フレームの３×３＝９個のインデックスを含み、２フレームで、合計１８個のインデックスを含むものとする。
【０１１２】
例えば、テーブル生成処理において、連続する２フレームの、注目ブロックの近傍ブロックの、１フレーム９個で、合計１８個のインデックスパターン列として、［１，４，２，…３，Ｎ−１，７］が複数回出現し、その注目ブロックが動ベクトル適用と判定された場合と、静ベクトル適用と判定された場合が、ほぼ同数であったとする。
【０１１３】
これは、例えば、インデックスパターン列［１，４，２，…３，Ｎ−１，７］に対して、注目ブロックが動ベクトル適用ブロックであった回数が５回であり、また注目ブロックが静ベクトル適用ブロックであった回数も５回であったような場合である。このように、同一インデックスパターンについて、静動データの動と静のいずれをも対応付けることが困難な場合、動画コードブック、または静止画コードブックのいずれかのインデックス入れ替え処理が実行される。
【０１１４】
動画コードブック、または静止画コードブックにおいては、図５を用いて説明したように、インデックス１乃至Ｎ−１に対してそれぞれ異なる代表ベクトルが対応付けられている。上述のインデックスパターン列［１，４，２，…３，Ｎ−１，７］中の数値は、図５Ａの動画コードブック、または、図５Ｂの静止画コードブックの、インデックス１乃至Ｎ−１のいずれかを示している。
【０１１５】
静動判定テーブルの生成処理において、同一のインデックスパターン列の出現回数が、注目ブロックが動ベクトル適用の場合と、静ベクトル適用の場合とで、ほぼ同数であったとき、図１８に示されるように、コードブックのインデックスの並び替えを実行するようにする。図１８は、動画コードブックにおけるインデックス並び替えの例を示しているが、動画コードブックではなく、静止画コードブックにおいて並び替えを行なってもよい。
【０１１６】
図１８に示される例では、オリジナル動画コードブック（図１８Ａ）において、インデックス１の代表ベクトル（８０，４０，５０，７０）は、インデックス２に変更されている（図１８Ｂ）。すなわち、代表ベクトル（８０，４０，５０，７０）は、オリジナルコードブック（図１８Ａ）ではインデックス［１］として表されているが、インデックス並び替えにより、同じ代表ベクトル（８０，４０，５０，７０）が、インデックス［２］に対応されている（図１８Ｂ）。
【０１１７】
図１８の例では、インデックス１→２、インデックス２→３、…インデックスＮ−１→１として、インデックスを１つづつ、ずらした並び替え処理が行なわれている。並び替えのルールはこのような規則に限らない。他の規則に従って、あるいはランダムに並び替えを行なってもよい。
【０１１８】
このような並び替えにより設定されたコードブックに基づいて、再度、静動判定テーブルの生成実行するようにする。この場合、静止画コードブックのインデックスは変更されておらず、動画コードブックのインデックスのみが変更されているので、並び替え処理前のインデックスパターン列［１，４，２，…３，Ｎ−１，７］の発生率は変化する。
【０１１９】
注目ブロック、および近傍ブロックのインデックスとして受信するインデックスパターン列は、動画コードブックまたは静止画コードブックのインデックスの混在したインデックスパターンである。例えば、動画コードインデックスのみを（ｎ）として示すと、前述のインデックスパターン列［１，４，２，…３，Ｎ−１，７］は、［（１），４，（２），…３，Ｎ−１，（７）］と示すことができる。このインデックスパターンは、前述の動画コードブックの並び替え処理により、［２，４，３，…３，Ｎ−１，８］のインデクッスパターン列として出現する。
【０１２０】
この場合、テーブルに格納するインデックスパターンでは、動画ブロック、すなわち動ベクトル適用ブロックであれば、インデックスは、前述の並び替え処理により変更される。しかし、注目ブロックのインデックスが静止画ブロック、すなわち静ベクトル適用ブロックであれば、インデックスは変更されない。従って、注目ブロックの静動に応じて、前述のインデックスパターン列［１，４，２，…３，Ｎ−１，７］は、異なるパターン列として識別されることになる。その結果、並び替え処理前に、注目ブロックの動ベクトル適用の場合と、静ベクトル適用の場合とで、ほぼ同率で発生したパターンの発生頻度の均衡が解消されることになる。
【０１２１】
このような処理を、静動判定テーブル生成処理工程において実行することで、精度の高い静動判定テーブルを作り上げることが可能となる。上述のコードブック並び替え処理を含めた静動判定テーブル生成処理のフローチャートを図１９に示す。この処理は、例えば、動画／静止画評価判定部２０７により実行される。
【０１２２】
まず、ステップＳ１９０１において、静動判定テーブルの生成処理が実行される。この処理は、具体的には、図９のフローチャートを用いて説明した処理と同様の処理であり、その説明は省略する。ステップＳ１９０２において、注目ブロックが動ベクトル適用の場合と、静ベクトル適用の場合とで、発生頻度がほぼ均等な同一インデックスパターン列が存在するか否かが判定される。注目ブロックが動ベクトル適用の場合と、静ベクトル適用の場合とで、発生頻度がほぼ均等な同一インデックスパターン列が存在すると判定された場合、ステップＳ１９０５に進み、前述した動画コードブックまたは静止画コードブックのうちのいずれか一方のインデックス並び替え処理が実行された後、ステップＳ１９０１に戻り、静動判定テーブル生成処理が再度実行される。
【０１２３】
一方、ステップＳ１９０２において、注目ブロックが動ベクトル適用の場合と、静ベクトル適用の場合とで、発生頻度がほぼ均等な同一インデックスパターン列が存在しないと判定された場合、ステップＳ１９０３に進み、静動判定テーブルに注目ブロックの静動データと、近傍ブロックのインデックスパターンとが対応づけて格納される。
【０１２４】
すべての入力画像の処理が終了したか否かが、ステップＳ１９０４で判定され、まだ、すべての入力が層の処理が終了していない場合、ステップＳ１９０１に戻り、それ以降の処理が繰り返される。すべての入力画像の処理が完了したと、ステップＳ１９０４で判定された場合、静動判定テーブルの生成処理が終了する。
【０１２５】
以上、説明した静動判定テーブル生成処理に従えば、注目ブロックが動ベクトル適用の場合と、静ベクトル適用の場合とで、発生頻度がほぼ均等な同一インデックスパターン列が解消され、個々のインデックスパターン列について、より高精度な静動判定データを格納した静動判定テーブルを生成することが可能となる。
【０１２６】
次に、図２０のフローチャートを参照して、静動判定処理の他の例について説明する。この処理は、例えば、図１１におけるステップＳ１１０２乃至ステップＳ１１０７に替えて、図２の動画／静止画評価判定部２０７により実行される。
【０１２７】
最初に、ステップＳ２００１において、動画／静止画評価判定部２０７は、＃ｋフレームと＃ｋ＋１フレームの連続する２フレームの注目ブロックと、その近傍ブロックのインデックスデータを取り込む処理を実行する。すなわち、図２１に示されるように、＃ｋフレームの注目ブロックのインデックスＩ０と、その周囲の８個の近傍ブロックのインデックスｉ００乃至ｉ０７が取り込まれるとともに、次のｋ＋１フレームの中心のブロックのインデックスＩ１と、その近傍ブロックのインデックスｉ１０乃至ｉ１７が取り込まれる。
【０１２８】
次に、ステップＳ２００２において、動画／静止画評価判定部２０７は、静止画コードブック２０８（図５Ｂ）から、各インデックスに対応する代表ベクトルを取得する。
【０１２９】
すなわち、図２２に示されるように、＃ｋフレームの注目ブロックのインデックスＩ０に対応する代表ベクトルＶ０が取得され、さらに、その近傍ブロックのインデックスｉ００乃至ｉ０７に対応する代表ベクトルｖ００乃至ｖ０７が取得される（図２２Ａ）。同様に、＃ｋ＋１フレームの中心のブロックのインデックスＩ１に対応する代表ベクトルＶ１と、その近傍ブロックのインデックスｉ１０乃至ｉ１７に対応する代表ベクトルｖ１０乃至ｖ１７が取得される（図２２Ｂ）。
【０１３０】
次に、ステップＳ２００３において、動画／静止画評価判定部２０７は、次の式（３）に従って、ステップＳ２００２において取得した代表ベクトルのユークリッド空間距離Ｎｓを演算する。
【０１３１】
【数３】
2010016908.tif 000005
【０１３２】
さらに、ステップＳ２００４において、動画／静止画評価判定部２０７は、動画コードブック２０９（図５Ａ）から、ステップＳ２００１において取り込んだインデックスに対応する代表ベクトルを取得する。そして、ステップＳ２００５において、動画／静止画評価判定部２０７は、式（４）に従って、ステップＳ２００４で取得した代表ベクトルのユークリッド空間距離Ｎｍを演算する。
【０１３３】
【数４】
2010016908.tif 000006
【０１３４】
ステップＳ２００６において、動画／静止画評価判定部２０７は、ステップＳ２００３において演算したユークリッド空間距離Ｎｓと、ステップＳ２００５において演算したユークリッド空間距離Ｎｍの大きさを比較し、前者の方が後者より小さい場合には、ステップＳ２００８において、注目ブロックは静止画ブロックであると判定し、前者が後者と等しいか、それより大きい場合には、ステップＳ２００７において、注目ブロックは動画ブロックであると判定する。
【０１３５】
図２３に模式的に示されているように、代表ベクトルは、ｘ０乃至ｘ７（図２３には、ｘ０乃至ｘ３のみが示されている）で表される座標軸で規定される空間の所定の座標上に位置する。これらの代表ベクトルに関し、上記した式（３）と式（４）に基づいて演算された距離Ｎｓ，Ｎｍは、その代表ベクトルで表されるブロックの特徴を表している。すなわち、ベクトルを構成する各要素のベクトル空間内の存在領域を調べると、それらは、ベクトル空間内に一様に分布するのではなく、存在領域が特徴的に偏っている。その特徴は、画像の局所的相関によって規定される。従って、これらの距離Ｎｓ，Ｎｍにより、そのブロックの特徴を検出することができる。
【０１３６】
図２０に示したユークリッド空間距離を利用した静動判定処理は、図１１のステップＳ１１０２乃至ステップＳ１１０７に示される静動判定処理（以下、この静動判定処理をＶＱインデックスパターン判定処理と称する）と併用することも可能である。図２４のフローチャートは、この場合の処理例を表している。この処理も、動画／静止画評価判定部２０７により実行される。
【０１３７】
すなわち、この例においては、ステップＳ２４０１において、ユークリッド空間距離に基づく、静動判定処理が実行される。この判定処理は、図２０のフローチャートに示した判定処理である。
【０１３８】
次に、ステップＳ２４０２において、動画／静止画評価判定部２０７は、図２０のステップＳ２００３で演算した距離Ｎｓと、ステップＳ２００５において演算した距離Ｎｍの差の絶対値Δを次の式（５）に従って演算する。
【０１３９】
【数５】
2010016908.tif 000007
【０１４０】
そして、ステップＳ２４０３において、動画／静止画評価判定部２０７は、ステップＳ２４０２において演算した値Δが、予め設定されている所定の閾値ＴＨより大きいか否かを判定する。値Δが閾値ＴＨより大きい場合には、ステップＳ２４０４に進み、動画／静止画評価判定部２０７は、ステップＳ２４０１において実行した結果得られたユークリッド空間距離判定処理が適切な判定処理であるとして、その判定結果を保持する処理を実行する。
【０１４１】
一方、値Δが、閾値ＴＨと等しいか、それより小さいと判定された場合、ステップＳ２４０５に進み、動画／静止画評価判定部２０７は、ＶＱインデックスパターン判定処理を実行する。このＶＱインデックスパターン判定処理は、上述した、図１１のステップＳ１１０２乃至ステップＳ１１０７の処理である。
【０１４２】
このように、この例においては、ユークリッド空間距離に基づく静動判定と、ＶＱインデックスパターンに基づく静動判定のいずれか一方が、必要に応じて選択されるため、より正確な静動判定を実行することが可能となる。
【０１４３】
次に、インデックスにエラーが生じた場合におけるリカバリ処理の他の例について説明する。
【０１４４】
図２５は、インデックスにエラーがあった場合に、これをリカバリする機能を有する画像処理装置の構成例を表している。この画像処理装置も、基本的に、符号化部２１１と復号部２２１を有している。符号化部２１１は、ＶＱエンコーダ２０１とコードブック２５０１を有している。ＶＱエンコーダ２０１は、コードブック２５０１を参照して、入力された画素データをブロック毎に最も近い代表ベクトルで表し、その代表ベクトルに対応するインデックスを、他の画像処理装置に送信する。
【０１４５】
復号部２２１は、ＶＱデコーダ２０６、コードブック２５１１、エラー検出部２５１２、エラー処理部２５１３、および選択部２５１４により構成されている。
【０１４６】
ＶＱデコーダ２０６は、他の画像処理装置から送信されてきたインデックスを受信すると、コードブック２５１１を参照して、これを対応する代表ベクトルに変換し、選択部２５１４を介して出力する。
【０１４７】
エラー処理部２５１３は、入力されたインデックスにエラーが存在する場合、エラーリカバリ処理を実行し、リカバリされたインデックスに対応する代表ベクトルを、選択部２５１４を介して出力する。
【０１４８】
エラー検出部２５１２は、受信されたインデックスにエラーが存在するか否かを判定し、その判定結果に基づいて、選択部２５１４を制御する。選択部２５１４は、エラーが存在する場合、エラー処理部２５１３の出力を選択するように切り換えられ、エラーが存在しない場合、ＶＱデコーダ２０６の出力が選択されるように切り換えられる。
【０１４９】
すなわち、図２６に示されるように、この例においては、注目ブロックのインデックスＩ０にエラーが存在すると判定された場合、詳細は後述するが、その近傍ブロックのインデックスｉ００乃至ｉ０７を利用して、注目ブロックに対応する代表ベクトルｘ０乃至ｘ３（インデックスＩ０に対応する代表ベクトル）をリカバリし、それを出力する。
【０１５０】
なお、図２６において、ｄ００乃至ｄ０３は、インデックスｉ００（代表ベクトルｖ００）に対応する要素（画素）を表しており、ｄ１０乃至ｄ１３は、インデックスｉ０１（代表ベクトルｖ０１）に対応する要素（画素）を表している。以下同様に、ｄ２０乃至ｄ７３は、それぞれインデックスｉ０２乃至ｉ０７に対応する代表ベクトルｖ０２乃至ｖ０７を構成する要素を表している。
【０１５１】
図２７は、エラー処理部２５１３の構成例を表している。このエラー処理部２５１３は、受信されたインデックスデータの中から、エラーブロック（エラーが存在する注目ブロック）を検出するエラーブロック検出部２７０１を有している。近傍インデックスパターン検出部２７０２は、エラーブロック検出部２７０１が、エラーが存在する注目ブロックを検出すると、その注目ブロックに対する近傍ブロックのインデックスを近傍インデックスパターンとして検出する。図２６の例の場合、注目ブロックのインデックスＩ０にエラーがあった場合、近傍インデックスパターンとして、インデックスｉ００乃至ｉ０７が検出される。
【０１５２】
代表ベクトル検出部２７０３は、近傍インデックスパターン検出部２７０２により検出された近傍インデックスパターンに対応する代表ベクトルを検出する。図２６の例の場合、要素ｄ００乃至ｄ７３で構成される代表ベクトルｖ００乃至ｖ０７が検出される。
【０１５３】
代表ベクトル検出部２７０３は、検出された代表ベクトルをフィルタ２７０４に供給するとともに、ユークリッド空間距離演算部２７０５に出力する。ユークリッド空間距離演算部２７０５は、代表ベクトル検出部２７０３より入力された代表ベクトルのユークリッド空間距離を演算する。ここにおけるユークリッド空間距離Ｎは、式（３）または式（４）と異なり、次式により演算される。
【０１５４】
【数６】
2010016908.tif 000008
【０１５５】
すなわち、ここでは、例えば、図２６の例では、インデックスｉ００乃至ｉ０７に対応するする代表ベクトルｖ００乃至ｖ０７の平均値ｖAVが、式（９）に従ってｖAVとして求められる。さらに、式（７）に従って、８個の近傍ブロックの代表ベクトルと、平均値ｖAVとの差の最大値がMax（ｖｉ）として演算される。同様に、式（８）に従って、８個の各代表ベクトルと平均値ｖAVとの差の最小値が、Min（ｖｉ）として演算される。そして、式（６）に従って、最大値と最小値の差がユークリッド空間距離Ｎとして求められる。
【０１５６】
クラス生成部２７０６は、ユークリッド空間距離演算部２７０５により演算された距離Ｎに基づいて、対応するクラスを生成する。ROM（Read Only Memory）２７０７には、クラス毎に所定の係数が予め記憶されており、クラス生成部２７０からクラスが入力されると、そのクラスに対応する係数をフィルタ２７０４に出力する。フィルタ２７０４は、代表ベクトル検出部２７０３より供給された代表ベクトルと、ROM２７０７より供給された係数に基づいて、エラーシーリング処理を実行し、得られた代表ベクトルを選択部２５１４に出力する。
【０１５７】
次に、図２８のフローチャートを参照して、図２７に示したエラー処理部２５１３におけるエラー処理について説明する。
【０１５８】
ステップＳ２８０１において、エラーブロック検出部２７０１は、受信されたインデックスのデータ列から、注目ブロックのエラーが誤っている場合、そのエラーブロックを検出し、検出した結果を近傍インデックスパターン検出部２７０２に出力する。近傍インデックスパターン検出部２７０２は、ステップＳ２８０２において、エラーブロック検出部２７０１により検出されたエラーを有する注目ブロックに対する近傍ブロックのインデックスを、近傍インデックスパターンとして検出する。
【０１５９】
次に、ステップＳ２８０３において、代表ベクトル検出部２７０３は、ステップＳ２８０２において検出された近傍インデックスパターンに対応する代表ベクトルを検出する。上述したように、図２６の例においては、以上の処理により、インデックスＩ０にエラーが存在する場合、近傍インデックスｉ００乃至ｉ０７に対応する代表ベクトルｖ００乃至ｖ０７が取得される。図２６に示されるように、代表ベクトルｖ００は、要素（ｄ００，ｄ０１，ｄ０２，ｄ０３）で構成され、代表ベクトルｖ０１は、要素（ｄ１０，ｄ１１，ｄ１２，ｄ１３）で構成される。以下同様に、代表ベクトルｖ０２乃至ｖ０７は、それぞれ（ｄ２０，ｄ２１，ｄ２２，ｄ２３），（ｄ３０，ｄ３１，ｄ３２，ｄ３３），（ｄ４０，ｄ４１，ｄ４２，ｄ４３），（ｄ５０，ｄ５１，ｄ５２，ｄ５３），（ｄ６０，ｄ６１，ｄ６２，ｄ６３），（ｄ７０，ｄ７１，ｄ７２，ｄ７３）で構成される。
【０１６０】
代表ベクトル検出部２７０３は、検出した代表ベクトルｖ００乃至ｖ０８７をユークリッド空間距離演算部２７０５とフィルタ２７０４に出力する。
【０１６１】
ユークリッド空間距離演算部２７０５は、ステップＳ２８０４において、上述したようにして、式（６）乃至式（９）に基づいて、ユークリッド空間距離Ｎを演算する。
【０１６２】
クラス生成部２７０６は、ステップＳ２８０５において、ユークリッド空間距離Ｎに基づいて、クラス生成処理を実行する。
【０１６３】
具体的には、図２９のフローチャートに示されるように、クラス生成部２７０６は、ステップＳ２９０１において、ユークリッド空間距離演算部２７０５より供給されたユークリッド空間距離Ｎの値を、予め設定されている所定の閾値と比較してクラスコードを生成する。これにより、例えば、距離Ｎの値が０乃至９である場合、クラス０とされ、距離Ｎの値が１０乃至１９である場合、クラス１とされ、距離Ｎの値が２０乃至２９である場合、クラス２とされる。以下同様にして、ユークリッド空間距離Ｎの値に対応してクラスコードが生成される。
【０１６４】
ROM２７０７は、ステップＳ２８０６において、クラス生成部２７０６からクラスコードがアドレスとして入力されると、そのアドレスに対応して記憶されているクラスタップ係数を、記憶されている係数テーブルから読み出し、フィルタ２７０４に出力する。
【０１６５】
フィルタ２７０４は、内部に予測タップ抽出回路を内蔵しており、ステップＳ２８０６において、その予測タップ抽出回路が代表ベクトル検出部２７０３から供給された代表ベクトルから予測タップを抽出する。すなわち、いまの例の場合、８個の代表ベクトルから、予め設定されている所定の数の、所定の位置の代表ベクトルが、予測タップとして抽出される。フィルタ２７０４は、内部に積和演算回路を内蔵しており、この積和演算回路は、ROM２７０７より供給されたクラスタップ係数と、ステップＳ２８０７の処理で抽出された予測タップとしての代表ベクトルに基づいて、線形１次結合モデルにより積和演算を行い、注目ブロックの代表ベクトルの復号値を得る。
【０１６６】
次に、ステップＳ２８０９に進み、予測タップ抽出回路は、全てのブロックについての処理を完了したか否かを判定し、まだ処理していないブロックが残っている場合には、ステップＳ２８０７に戻り、それ以降の処理を繰り返し実行する。全てのブロックの処理が完了したと判定された場合、エラー処理は終了される。
【０１６７】
このように、入力をクラスに分類し、適応的に処理する方法は、クラス分類適応処理と称される。以下に、このクラス分類適応処理の原理について説明する。
【０１６８】
クラス分類適応処理は、クラス分類処理と適応処理とからなり、クラス分類処理によって、データを、その性質に基づいてクラス分けし、各クラスごとに適応処理を施すものであり、適応処理は、以下のような手法のものである。なお、ここでは、説明を簡単にするために、適応処理について、エラーを有するインデックスに対応する代表ベクトル（以下、注目代表ベクトルと称する）を、復号する場合を例に説明する。
【０１６９】
この場合、適応処理では、例えば、近傍インデックスに対応する代表ベクトル（以下、近傍代表ベクトルと称す）と、所定のタップ係数との線形結合により、注目代表ベクトルが復号される。
【０１７０】
具体的には、例えば、いま、ある画像を、ブロック単位でベクトル量子化して得られる代表ベクトルのうちの、注目代表ベクトルを教師データとし、近傍代表ベクトルを生徒データとして、教師データである注目代表ベクトルの要素Xの予測値Ｅ［X］を、幾つかの近傍代表ベクトルの要素（画素）ｄ1，ｄ2，・・・の集合と、所定のタップ係数ｗ1，ｗ2，・・・の線形結合により規定される線形１次結合モデルにより求めることを考える。この場合、予測値Ｅ［X］は、次式で表すことができる。
【０１７１】
Ｅ［X］＝ｗ1ｄ1＋ｗ2ｄ2＋・・・
・・・（１０）
【０１７２】
より、具体的には、図２６の例において、式（１０）は、次のように表される。
【０１７３】
【数７】
2010016908.tif 000009
【０１７４】
なお、以下においては、説明を簡略化するため、ｍの値が１つの所定の値であるとする。
【０１７５】
式（１０）を一般化するために、タップ係数ｗjの集合でなる行列Ｗ、生徒データｄijの集合でなる行列Ｄ、および予測値Ｅ［ｘ］の集合でなる行列Ｘ’を、
【数８】
2010016908.tif 000010
で定義すると、次のような観測方程式が成立する。
【０１７６】
ＤＷ＝Ｘ’
・・・（１２）
ここで、行列Ｄの成分ｄijは、ｉ件目の生徒データの集合（ｉ件目の教師データｘiの予測に用いる生徒データの集合）の中のｊ番目の生徒データを意味し、行列Ｗの成分ｗjは、生徒データの集合の中のｊ番目の生徒データとの積が演算されるタップ係数を表す。また、ｘiは、ｉ件目の教師データを表し、従って、Ｅ［ｘi］は、ｉ件目の教師データの予測値を表す。なお、式（１０）の左辺におけるｘは、行列Ｘの成分ｘiのサフィックスｉを省略したものであり、また、式（１）の右辺におけるｄ1，ｄ2，・・・も、行列Ｄの成分ｄijのサフィックスｉを省略したものである。
【０１７７】
そして、この観測方程式に最小自乗法を適用して、元の画素値ｘに近い予測値Ｅ［ｘ］を求めることを考える。この場合、教師データとなる真の画素値ｘの集合でなる行列Ｘ、および画素値ｘに対する予測値Ｅ［ｘ］の残差ｅの集合でなる行列Ｅを、
【数９】
2010016908.tif 000011
で定義すると、式（２）から、次のような残差方程式が成立する。
【０１７８】
ＤＷ＝Ｘ＋Ｅ
・・・（１３）
【０１７９】
この場合、元の画素値ｘ近い予測値Ｅ［ｘ］を求めるためのタップ係数ｗjは、自乗誤差
【数１０】
2010016908.tif 000012
を最小にすることで求めることができる。
【０１８０】
従って、上述の自乗誤差をタップ係数ｗjで微分したものが０になる場合、即ち、次式を満たすタップ係数ｗjが、元の画素値ｘに近い予測値Ｅ［ｘ］を求めるため最適値ということになる。
【０１８１】
【数１１】
2010016908.tif 000013
【０１８２】
そこで、まず、式（１３）を、タップ係数ｗjで微分することにより、次式が成立する。
【０１８３】
【数１２】
2010016908.tif 000014
【０１８４】
式（１４）および（１５）より、式（１６）が得られる。
【０１８５】
【数１３】
2010016908.tif 000015
【０１８６】
さらに、式（１３）の残差方程式における生徒データｄij、タップ係数ｗj、教師データｘi、および残差ｅiの関係を考慮すると、式（１６）から、次のような正規方程式を得ることができる。
【０１８７】
【数１４】
2010016908.tif 000016
【０１８８】
なお、式（１７）に示した正規方程式は、行列（共分散行列）Ａおよびベクトルｖを、
【数１５】
2010016908.tif 000017
で定義するとともに、ベクトルＷを、数８で示したように定義すると、式
ＡＷ＝ｖ
・・・（１８）
で表すことができる。
【０１８９】
式（１７）における各正規方程式は、生徒データｄijおよび教師データｘiのセットを、ある程度の数だけ用意することで、求めるべきタップ係数ｗjの数Ｊと同じ数だけたてることができ、従って、式（１８）を、ベクトルＷについて解くことで（但し、式（１８）を解くには、式（１８）における行列Ａが正則である必要がある）、最適なタップ係数（ここでは、自乗誤差を最小にするタップ係数）ｗjを求めることができる。なお、式（１８）を解くにあたっては、例えば、掃き出し法（Gauss-Jordanの消去法）などを用いることが可能である。
【０１９０】
以上のようにして、最適なタップ係数ｗjを求めておき、さらに、そのタップ係数ｗjを用い、式（１０）により、元の画素値ｘに近い予測値Ｅ［ｘ］を求めるのが適応処理である。
【０１９１】
以上の処理は、ｍ＝０，１，２，３の各画素毎におこなわれる。
【０１９２】
図３０は、図２７のROM２７０７に記憶させる係数を学習させる学習装置の構成例を表している。この学習装置３０００においては、検出インデックスパターン検出部３００１が、入力画像データから、対象ブロック（注目ブロック）に対する近傍ブロックのインデックス、すなわち近傍インデックスのパターンを検出する。対応代表ベクトル検出部３００２は、近傍インデックスパターン検出部３００１により検出された近傍インデックスに対応する代表ベクトルを検出する。ユークリッド空間距離演算部３００３は、対応代表ベクトル検出部３００２より供給された代表ベクトルのユークリッド空間距離演算処理を実行する。この処理は、図２７のユークリッド空間距離演算部２７０５において行われる演算と実質的に同一の演算である。クラス生成部３００４は、ユークリッド空間距離演算部３００３により演算されたユークリッド空間距離に基づいて、クラス分類処理を行い、生成されたクラスコードを正規化行列生成部３００８に供給する。なお、このクラス生成部３００４において行われるクラス生成処理は、図２７のクラス生成部２７０６において行われるクラス生成処理と実質的に同様の処理である。
【０１９３】
予測タップ抽出部３００５は、対応代表ベクトル検出部３００２が出力する対応代表ベクトルの中から予測タップを抽出し、正規化行列生成部３００８に供給する。
【０１９４】
対象インデックス検出部３００６は、入力されたデータから対象ブロックのインデックスを対象インデックスとして検出する。対応代表ベクトル検出部３００７は、対象インデックス検出部３００６により検出された対象インデックスに対応する代表ベクトルを検出し、正規化行列生成部３００８に出力する。
【０１９５】
正規化行列生成部３００８は、対応代表ベクトル検出部３００７より供給される教師データとしての代表ベクトルの値と、予測タップ抽出部３００５より供給される生徒データとしての予測タップを対象とした足し込み処理を行う。すなわち、正規化行列生成部３００８は、クラス生成部３００４より供給されるクラスコードに対応するクラス毎に、予測タップ（生徒データ）を用い、式（１７）の行列Ａにおける各コンポーネントとなっている生徒データ同士の乗算（ｄinｄim）と、サメーション（Σ）に相当する演算を行う。
【０１９６】
さらに、正規化行列生成部３００８は、クラス生成部３００４より供給されるクラスコードに対応するクラス毎に、予測タップ（生徒データ）および対応代表ベクトル検出部３００７より供給される代表ベクトル（教師データ）を用い、式（１７）のベクトルｖにおける各コンポーネントとなっている生徒データと教師データの乗算（ｄinｘi）と、サメーション（Σ）に相当する演算を行う。
【０１９７】
正規化行列生成部３００８における上述のような足し込みは、各クラスについて行われる。
【０１９８】
正規化行列生成部３００８は、以上の足し込みを、そこに供給される教師データとしての全ての注目代表ベクトルに対して行い、これにより、各クラスについて式（１７）に示した正規方程式を立てる。逆行列演算部３００９は、正規化行列生成部３００８においてクラス毎に生成された正規方程式を解くことにより、クラス毎に、タップ係数を求める演算を行う。このようにして求められた係数が、上述した図２７のROM２７０７に記憶される。
【０１９９】
次に、図３１のフローチャートを参照して、図３０の学習装置３０００の動作について説明する。
【０２００】
最初に、ステップＳ３１０１において、近傍インデックスパターン検出部３００１は、処理の対象とする対象ブロックを選択する。そして、近傍インデックスパターン検出部３００１は、ステップＳ３１０１で選択した対象ブロックに対する近傍ブロックの近傍インデックスパターンを検出する。ステップＳ３１０３において、対応代表ベクトル検出部３００２は、ステップＳ３１０２において、近傍インデックスパターン検出部３００１により検出された近傍インデックスパターンに対応する代表ベクトルを検出する。
【０２０１】
ユークリッド空間距離演算部３００３は、ステップＳ３１０４において、ステップＳ３１０３において、対応代表ベクトル検出部３００２により検出された代表ベクトルのユークリッド空間距離を演算する。上述したように、この処理は、図２８のステップＳ２８０４における場合と同様の処理である。
【０２０２】
ステップＳ３１０５において、クラス生成部３００４は、ステップＳ３１０４において、ユークリッド空間距離演算部３００３により演算されたユークリッド空間距離を、所定の閾値と比較することによりクラス分類し、対応するクラスコードを正規化行列生成部３００８に出力する。このクラス生成処理も、図２８のステップＳ２８０５（図２９のステップＳ２９０１）における場合と同様の処理である。
【０２０３】
次に、ステップＳ３１０６において、予測タップ抽出部３００５は、対応代表ベクトル検出部３００２より供給される代表ベクトルの中から、所定のものを予測タップとして抽出し、正規化行列生成部３００８に出力する。
【０２０４】
正規化行列生成部３００８は、ステップＳ３１０７において、足し込み処理を実行する。
【０２０５】
すなわち、対象インデックス検出部３００６が、ステップＳ３１０１で選択された対象ブロックのインデックスを検出すると、対応代表ベクトル検出部３００７が、その対象インデックスに対応する代表ベクトルを検出し、正規化行列生成部３００８に供給する。正規化行列生成部３００８は、クラス毎に上述したようにして、教師データとしての代表ベクトルと、生徒データとしての予測タップを対象として、式（１７）の行列Ａとベクトルｖの足し込み処理をクラス毎に行う。
【０２０６】
ステップＳ３１０８において、正規化行列生成部３００８は、ブロック内の全ての代表ベクトルに対する処理が完了したか否かを判定し、まだ処理していない代表ベクトルが残っている場合には、ステップＳ３１０６に戻り、それ以降の処理を繰り返し実行する。
【０２０７】
ステップＳ３１０８において、ブロック内の全ての対応代表ベクトルの処理が完了したと判定された場合、ステップＳ３１０９に進み、正規化行列生成部３００８は、全てのブロックの処理が完了したか否かを判定する。全てのブロックの処理がまだ完了していない場合には、ステップＳ３１０５に戻り、それ以降の処理が繰り返し実行される。ステップＳ３１０９において、全てのブロックの処理が完了したと判定された場合、ステップＳ３１１０に進み、逆行列演算部３００９は、各クラス毎に生成された正規方程式を解くことにより、各クラス毎にタップ係数を求める。
【０２０８】
なお、以上の処理においては、図２８のステップＳ２８０４において、ユークリッド空間距離演算部２７０５により、また図３１のステップＳ３１０４において、ユークリッド空間距離演算部３００３により、それぞれユークリッド空間距離を演算するようにしたが、ユークリッド空間距離の最大値を演算したり、分散を演算したりするようにすることもできる。この場合、図２７のユークリッド空間距離演算部２７０５と、図３０のユークリッド空間距離演算部３００３は、図２８のステップＳ２８０４または図３１のステップＳ３１０４において、それぞれユークリッド空間距離の最大値または分散を演算することになる。
【０２０９】
そして、この場合、図２７のクラス生成部２７０６または図３０のクラス生成部３００４は、図２８のステップＳ２８０５または図３１のステップＳ３１０５のクラス生成処理において、図３２または図３３のようなクラス生成処理を実行する。
【０２１０】
すなわち、図３２のステップＳ３２０１においては、ユークリッド空間距離の最大値を閾値と比較することでクラスコードが生成される。また、図３３のステップＳ３３０１においては、ユークリッド空間距離の分散を所定の閾値と比較することでクラスコードが生成される。
【０２１１】
図３４は、エラー処理部２５１３の他の構成例を表している。図３４において、図２７における場合と対応する部分には同一の符号を付してある。図３４のエラー処理部２５１３においては、近傍インデックスパターン検出部２７０２により検出された近傍インデックスパターンが、インデックス削減部３４０１に供給され、インデックスの数が削減されるようになされている。そして、インデックス削減部３４０１により削減されたインデックスが、クラス生成部２７０６に供給され、クラス生成部２７０６は、インデックス削減部３４０１より供給されたインデックスに基づいて、クラスコードを生成するようになされている。
【０２１２】
その他の構成は、図２７における場合と同様である。
【０２１３】
次に、図３４のエラー処理部２５１３の処理について、図３５のフローチャートを参照して説明する。この図３５のステップＳ３５０１乃至ステップＳ３５０８の処理は、図２８におけるステップＳ２８０１乃至ステップＳ２８０９の処理と基本的に同様の処理である。ただし、図２８のフローチャートにおいては、ステップＳ２８０３において代表ベクトルが検出され、ステップＳ２８０４においてユークリッド空間距離が演算されるようになされているが、図３５のフローチャートの処理においては、ステップＳ３５０２において、近傍インデックスパターン検出部２７０２が検出した近傍インデックスの数を、インデックス削減部３４０１が、ステップＳ３５０３において、内蔵するルックアップテーブル（LUT）を参照して削減する処理を実行する。この削減されたインデックスが、クラス生成部２７０６に供給され、クラス生成部２７０６は、ステップＳ３５０４において、クラス生成処理を実行する。
【０２１４】
その他の処理は、図２８における場合と同様の処理であるので、その説明は省略する。
【０２１５】
すなわち、この図３５の処理においては、図３６に示されるように、例えば、近傍インデックスパターン検出部２７０２により、０乃至２５５で示される２５６種類の値を有する近傍インデックスが出力されると、インデックス削減部３４０１は、２５６種類の値のインデックスを、０乃至７で示される８種類の値の削減インデックスに変換する。その結果、クラス生成部２７０６の処理が軽減され、ROM２７０７において記憶される係数の数が削減され、ROM２７０７の容量を小さくすることが可能となる。
【０２１６】
図３６に示されるようなインデックスを削減するためのテーブルは、例えば、図３７のフローチャートに示すような処理を実行することで、生成することができる。この処理は、例えば、インデックス削減部３４０１により、所定のタイミングで、予め実行される。
【０２１７】
最初に、ステップＳ３７０１において、インデックス削減部３４０１は、ベクトル量子化のためのコードブックを入力する。ステップＳ３７０２において、インデックス削減部３４０１は、全ての代表ベクトルを検出し、ステップＳ３７０３において、全ての代表ベクトルの重心を検出する。
【０２１８】
次に、ステップＳ３７０４において、インデックス削減部３４０１は、全ての代表ベクトルにより構成される領域のベクトル空間を２分割する。そして、ステップＳ３７０５において、ステップＳ３７０４で２分割された領域のそれぞれの重心を検出する処理が実行される。
【０２１９】
以上の処理が、図３８Ａと図３８Ｂに模式的に示されている。図３８Ａは、ステップＳ３７０３において、全代表ベクトルの重心が求められた状態を示しており、図３８Ｂは、２分割された各領域の重心が求められた状態を表している。なお、図３８において、×印は重心の位置を表している。
【０２２０】
次に、ステップＳ３７０６において、インデックス削減部３４０１は、全てのベクトル空間を近傍重心で分類する。これにより、図３８Ｃに示されるように、空間を分割する数は変化しないが、分割の境界が変化する。
【０２２１】
ステップＳ３７０７において、インデックス削減部３４０１は、エラーの分布が充分小さくなったか否か判定し、小さくなっていない場合には、ステップＳ３７０５に戻り、それ以降の処理を繰り返し実行する。
【０２２２】
以上の処理が繰り返されると、エラー分布は次第に小さな値に収束する。ステップＳ３７０７において、エラー分布が充分小さくなったと判定された場合、ステップＳ３７０８に進み、インデックス削減部３４０１は、分割数が仕様を満足するか否かを判定する。分割数が仕様を満足しない場合には、ステップＳ３７０９に進み、分割数を表す変数Ｎを１だけインクリメントし、ステップＳ３７０４に戻り、それ以降の処理を繰り返し実行する。
【０２２３】
以上のようにして、例えば、図３８Ｄに示されるように、分割領域が４個に増やされ、さらに、図３８Ｅに示されるように、近傍重心点分類する処理を行うことで、空間の境界が変更される。そして、エラー分布が充分小さくなるまで、同様の処理が再び繰り返される。
【０２２４】
そして、ステップＳ３７０８において、分割数が仕様を満足すると判定された場合、処理は終了される。
【０２２５】
以上の処理は、一般的にLBG法として知られている。LBG法については、「Y.Linde A. Buzo and R.M.Gray:'An Algorithm for Vector Quantizer Design',IEEE Trans. Commun.,COM-28,1,pp.84-95（Jan. 1980）」に記載されている。
【０２２６】
図３９は、図３４のROM２７０７に記憶される係数を学習するための学習装置の構成例を表している。図３９において、図３０と対応する部分には同一の符号を付してある。図３９の学習装置３９００においては、図３０のユークリッド空間距離演算部３００３に替えて、インデックス削減部３９０１が設けられている。そして、インデックス削減部３９０１は、近傍インデックスパターン検出部３００１より供給された近傍インデックスの数を削減し、クラス生成部３００４に出力するようになされている。クラス生成部３００４は、インデックス削減部３９０１より供給された、削減されたインデックスに基づいてクラスコードを生成し、正規化行列生成部３００８に出力するようになされている。
【０２２７】
その他の構成は、図３０における場合と同様である。
【０２２８】
次に、図４０のフローチャートを参照して、図３９の学習装置３９００の学習処理について説明する。
【０２２９】
図４０のステップＳ４００１乃至ステップＳ４００９の処理は、基本的に図３１のステップＳ３１０１乃至ステップＳ３１１０の処理と同様の処理である。ただし、図３１のステップＳ３１０３の対応する代表ベクトルを検出する処理と、ステップＳ３１０４のユークリッド空間距離を演算する処理に替えて、図４０の処理においては、ステップＳ４００２において、近傍インデックスパターンが検出されると、ステップＳ４００３において、インデックス削減部３９０１が、内蔵するルックアップテーブルを参照して、近傍インデックスの数を削減して、クラス生成部３００４に出力する。
【０２３０】
その他の処理は、図３１における場合と同様である。
【０２３１】
図４１は、エラー処理部２５１３のさらに他の構成例を表している。図４１において、図２７と図３４における場合と対応する部分には、同一の符号を付してある。すなわち、図４１の構成は、図２７と図３４における構成を併合した構成とされている。インデックスクラス生成部４１０１は、図３４のクラス生成部２７０６に対応しており、空間距離クラス生成部４１０２は、図２７のクラス生成部２７０６に対応している。
【０２３２】
すなわち、インデックスクラス生成部４１０１は、インデックス削減部３４０１より出力された、削減されたインデックスからクラスコードを生成し、ROM２７０７に供給する。また、空間距離クラス生成部４１０２は、ユークリッド空間距離演算部２７０５より出力されたユークリッド空間距離に基づいてクラスコードを生成し、ROM２７０７に出力する。ROM２７０７は、インデックスクラス生成部４１０１より供給されたクラスコードと、空間距離クラス生成部４１０２より供給されたクラスコードに対応して、最終的に決定されるクラスに対応する係数を読み出し、フィルタ２７０４に出力する。
【０２３３】
次に、図４２のフローチャートを参照して、図４１のエラー処理部２５１３の処理について説明する。図４２のステップＳ４２０１乃至ステップＳ４２１１の処理は、図２８のステップＳ２８０１乃至ステップＳ２８０９の処理と、図３５のステップＳ３５０１乃至ステップＳ３５０８の処理を組み合わせた処理となっている。
【０２３４】
すなわち、ステップＳ４２０１乃至ステップＳ４２０４の処理は、図３５におけるステップＳ３５０１乃至ステップＳ３５０４の処理と同様の処理であり、ここまでの処理により、図４１のエラーブロック検出部２７０１、近傍インデックスパターン検出部２７０２、インデックス削減部３４０１、およびインデックスクラス生成部４１０１により、近傍インデックスパターンを削減した削減インデックスに基づくインデックスクラスコードが生成される。
【０２３５】
ステップＳ４２０５乃至ステップＳ４２０７の処理は、図２８のステップＳ２８０３乃至ステップＳ２８０５の処理と同様の処理である。
【０２３６】
すなわち、この処理が、図４１における近傍代表ベクトル検出部２７０３、ユークリッド空間距離演算部２７０５、および空間距離クラス生成部４１０２により実行されると、近傍代表ベクトルのユークリッド空間距離に基づく空間距離クラスコードが生成される。
【０２３７】
ステップＳ４２０８において、ROM２７０７は、インデックスクラス生成部４１０１と空間距離クラス生成部４１０２の両方から、クラスコードが供給されてくるので、各インデックスクラス毎の空間距離クラスコードに対応するクラスタップ係数を、内蔵する係数テーブルから読み出す処理を実行する。
【０２３８】
その後のステップＳ４２０９乃至ステップＳ４２１１の処理は、図２８のステップＳ２８０７乃至ステップＳ２８０９、または図３５のステップＳ３５０６乃至ステップＳ３５０８の処理と同様の処理である。
【０２３９】
図４３は、図４１のROM２７０７に記憶させる係数を学習する学習装置の構成例を表している。この図４３において、図３０と図３９における場合と対応する部分には、同一の符号を付してある。すなわち、図４３の学習装置４３００は、図３０の学習装置と図３９の学習装置を組み合わせた構成となっている。
【０２４０】
図４３における空間距離クラス生成部４３０２は、図３０のクラス生成部３００４に対応しており、インデックスクラス生成部４３０１は、図３９のクラス生成部３００４に対応している。正規化行列生成部３００８には、空間距離クラス生成部４３０２により生成された空間距離クラスコードと、インデックスクラス生成部４３０１により生成されたインデックスクラスコードとが供給されるようになされている。その他の構成は、図３０または図３９における場合と同様である。
【０２４１】
次に、図４４のフローチャートを参照して、図４３の学習装置４３００の処理について説明する。図４４のステップＳ４４０１乃至ステップＳ４４１２の処理は、図３１のステップＳ３１０１乃至ステップＳ３１１０の処理と、図４０のステップＳ４００１乃至ステップＳ４００９の処理を組み合わせた処理となっている。
【０２４２】
すなわち、ステップＳ４４０１乃至ステップＳ４４０４の処理は、図４０のステップＳ４００１乃至ステップＳ４００４の処理と同様の処理である。これらの処理が、図４３の近傍インデックスパターン検出部３００１、インデックス削減部３９０１、およびインデックスクラス生成部４３０１により実行されることにより、近傍インデックスの数を削減したインデックスに対応するインデックスクラスコードが生成され、正規化行列生成部３００８に供給される。
【０２４３】
図４４のステップＳ４４０５乃至ステップＳ４４０７の処理は、図３１のステップＳ３１０３乃至ステップＳ３１０５の処理と同様の処理である。すなわち、この処理が、図４３の対応代表ベクトル検出部３００２、ユークリッド空間距離演算部３００３、および空間距離クラス生成部４３０２により実行されることで、近傍インデックスパターンの代表ベクトルのユークリッド空間距離に基づく空間距離クラスに対応する空間距離クラスコードが生成され、正規化行列生成部３００８に供給される。
【０２４４】
以下、ステップＳ４４０８乃至ステップＳ４４１２の処理は、図３１におけるステップＳ３１０６乃至ステップＳ３１１０、または図４０のステップＳ４００５乃至ステップＳ４００９の処理と同様の処理である。
【０２４５】
以上のエラーリカバリ処理は、注目ブロックが動画ブロックである場合でも、静止画ブロックである場合でも、その種類に関わりなく適用可能である。従って、上述した図２に示されるような静止画コードブック２０３，２０８と、動画コードブック２０４，２０９の２種類のコードブックを利用する画像処理装置においても適用することが可能である。図４５は、この場合の構成例を表している。
【０２４６】
すなわち、この画像処理装置の符号化部２１１は、図２における場合と同様の構成であるが、その復号部２２１が、エラー検出部２５１２、エラー処理部２５１３、および選択部２５１４を有している。そして、受信されたインデックスは、ＶＱデコーダ２０６に供給されるとともに、エラー検出部２５１２とエラー処理部２５１３にも供給されるようになされている。選択部２５１４には、ＶＱデコーダ２０６の出力と、エラー処理部２５１３の出力が供給され、いずれか一方がエラー検出部２５１２の出力に基づいて選択出力されるようになされている。
【０２４７】
その他の構成は、図２または図２５における場合と同様である。
【０２４８】
なお、上述した実施の形態においては、ベクトル量子化（ＶＱ）による画像符号化処理の例における静動判定処理について説明したが、ベクトル量子化（ＶＱ）に限らず、ＤＣＴ、ＡＤＲＣなど、他の符号化処理においても同様の静動判定処理が可能である。
【０２４９】
以上、特定の実施の形態を参照しながら、本発明について説明してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が上述した実施の形態の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。また、上述の実施の形態を適宜組み合わせて構成したものも、本発明の範囲に含まれるものであり、本発明の要旨を判断するためには、特許請求の範囲を参酌すべきである。
【符号の説明】
【０２５０】
１０１  動き判定部、  １０２  選択部，  １０３  静止画コードブック，  １０４  動画コードブック，  １０５  ＶＱエンコーダ，  １０６  ＶＱデコーダ，  １０７  選択部，  １０８  静止画コードブック，  １０９  動画コードブック，  ２０１  動き判定部，  ２０２  選択部，  ２０３  静止画コードブック，  ２０４  動画コードブック，  ２０５  ＶＱエンコーダ，  ２０６  ＶＱデコーダ，  ２０７  動画／静止画評価判定部，  ２０８  静止画コードブック，  ２０９  動画コードブック，  ２１０  選択部，  ２５１  要素変換部，  ２５２  要素逆変更部，  ６０１  入力部，  ６０２  比較判定部，  ６０３  静動判定テーブル格納部，  ６０４  判定結果出力部，１１０１  動画／静止画評価判定およびエラーリカバリ部，１２０１  入力部，１２０２  比較判定部，１２０３  静動判定テーブル格納部，１２０４  インデックスエラーリカバリ部，１２０５  判定結果出力部，  ２５０１，２５１１  コードブック，  ２５１２  エラー検出部，  ２５１３  エラー処理部，  ２５１４  選択部，  ２７０１  エラーブロック検出部，  ２７０２  近傍インデックスパターン検出部，  ２７０３  代表ベクトル検出部，  ２７０４  フィルタ，  ２７０５  ユークリッド空間距離演算部，  ２７０６  クラス生成部，  ２７０７  ROM
【図１】
2010016908.tif 000018
【図２】
2010016908.tif 000019
【図３】
2010016908.tif 000020
【図４】
2010016908.tif 000021
【図５】
2010016908.tif 000022
【図６】
2010016908.tif 000023
【図７】
2010016908.tif 000024
【図８】
2010016908.tif 000025
【図９】
2010016908.tif 000026
【図１０】
2010016908.tif 000027
【図１１】
2010016908.tif 000028
【図１２】
2010016908.tif 000029
【図１３】
2010016908.tif 000030
【図１４】
2010016908.tif 000031
【図１５】
2010016908.tif 000032
【図１６】
2010016908.tif 000033
【図１７】
2010016908.tif 000034
【図１８】
2010016908.tif 000035
【図１９】
2010016908.tif 000036
【図２０】
2010016908.tif 000037
【図２１】
2010016908.tif 000038
【図２２】
2010016908.tif 000039
【図２３】
2010016908.tif 000040
【図２４】
2010016908.tif 000041
【図２５】
2010016908.tif 000042
【図２６】
2010016908.tif 000043
【図２７】
2010016908.tif 000044
【図２８】
2010016908.tif 000045
【図２９】
2010016908.tif 000046
【図３０】
2010016908.tif 000047
【図３１】
2010016908.tif 000048
【図３２】
2010016908.tif 000049
【図３３】
2010016908.tif 000050
【図３４】
2010016908.tif 000051
【図３５】
2010016908.tif 000052
【図３６】
2010016908.tif 000053
【図３７】
2010016908.tif 000054
【図３８】
2010016908.tif 000055
【図３９】
2010016908.tif 000056
【図４０】
2010016908.tif 000057
【図４１】
2010016908.tif 000058
【図４２】
2010016908.tif 000059
【図４３】
2010016908.tif 000060
【図４４】
2010016908.tif 000061
【図４５】
2010016908.tif 000062