(57)【要約】【課題】高圧縮かつ高エラー耐性を持つ符号化を容易に実現させるようにする。【解決手段】  例えば、データ列の符号化パターンが、３ビットおよび４ビット割り当てのADRC(Adaptive Dynamic Range Coding)方式、並びに、VQ方式のうちのいずれかの場合、４ビット相関演算部７２は、符号化パターンの識別フラグを有しない符号化画像データ（連続データ列）のうちの切り出し部７１より切り出されたデータ列を、４ビット毎のデータに区分し、区分したデータ間の相関を演算する。３ビット相関演算部７３は、そのデータ列を３ビット毎に区分し、区分したデータ間の相関を演算する。判定部７４は、４ビット相関演算部７２と３ビット相関演算部７３との演算結果に基づいて、そのデータ列の符号化パターンを判定する。本発明は、画像データの符号化装置と復号装置に適用可能である。【選択図】図１１
2005117561.tif 000002
【特許請求の範囲】
【請求項１】
ブロック単位で画像データを符号化する画像処理装置において、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化手段と、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化手段と、
前記第１の符号化手段より出力された前記第１のデータ列と、前記第２の符号化手段より出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択手段と
を備えることを特徴とする画像処理装置。
【請求項２】
前記第１の符号化方式は、前記第１のブロックに含まれる複数の前記画素の前記画素値のうちの最小値を前記第１の値として使用し、かつ、前記第１のブロックのダイナミックレンジを前記第２の値として使用し、前記ダイナミックレンに応じて前記第１のコードの前記第１のビット数を可変するADRC(Adaptive Dynamic Range Coding)方式であり、
前記第２の符号化方式は、前記第２のブロックに含まれる複数の前記画素の前記画素値のうちの最小値を前記第３の値として使用し、前記第２のブロックのダイナミックレンジを前記第４の値として使用し、かつ、固定の前記第２のビット数の前記第２のコードを使用するベクトル量子化方式である
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
ブロック単位で画像データを符号化する画像処理方法において、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップと、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化ステップと、
前記第１の符号化ステップの処理により出力された前記第１のデータ列と、前記第２の符号化ステップの処理により出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップと
を含むことを特徴とする画像処理方法。
【請求項４】
ブロック単位で画像データを符号化する処理をコンピュータに実行させるプログラムであって、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップと、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化ステップと、
前記第１の符号化ステップの処理により出力された前記第１のデータ列と、前記第２の符号化ステップの処理により出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップと
を含むプログラムを記録していることを特徴とする記録媒体。
【請求項５】
ブロック単位で画像データを符号化する処理をコンピュータに実行させるプログラムであって、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップと、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化ステップと、
前記第１の符号化ステップの処理により出力された前記第１のデータ列と、前記第２の符号化ステップの処理により出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップと
を含むことを特徴とするプログラム。
【請求項６】
ブロック単位で画像データを符号化する符号化方式として、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを２ビットのデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、
供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定手段と、
前記推定手段により前記データ列は前記第１のデータ列であると推定された場合、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号手段と、
前記推定手段により前記データ列は前記第２のデータ列であると推定された場合、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号手段と
を備えることを特徴とする画像処理装置。
【請求項７】
前記第１の符号化方式は、前記第１のブロックに含まれる複数の前記画素の前記画素値のうちの最小値を前記第１の値として使用し、かつ、前記第１のブロックのダイナミックレンジを前記第２の値として使用し、前記ダイナミックレンに応じて前記第１のコードの前記第１のビット数を可変するADRC(Adaptive Dynamic Range Coding)方式であり、
前記第２の符号化方式は、前記第２のブロックに含まれる複数の前記画素の前記画素値のうちの最小値を前記第３の値として使用し、前記第２のブロックのダイナミックレンジを前記第４の値として使用し、かつ、固定の前記第２のビット数の前記第２のコードを使用するベクトル量子化方式である
ことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記ADRC方式において、複数の前記第１のコードのそれぞれの前記第１のビット数は、対応する前記第１のブロックの前記ダイナミックレンジに応じてNビット乃至Mビット（Nは０以上の整数値であり、MはNより大きい整数値である）の範囲で可変し、
前記推定手段は、供給された前記データ列の少なくとも一部分を、前記Nビット乃至前記Mビットのそれぞれのデータ毎に区分し、それぞれの各データ間の相関を演算し、最も相関が高いと演算されたｋビット（ｋは、N以上M以下の整数値）で区分された複数の前記データ間の相関が前記レベル以上であるとき、前記データ列は、前記ｋビット割当の前記ADRC方式により符号化された前記第１のデータ列であると推定し、前記ｋビットで区分された複数の前記データ間の前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する
ことを特徴とする請求項７に記載の画像処理装置。
【請求項９】
ブロック単位で画像データを符号化する符号化方式として、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを２ビットのデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、
供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定ステップと、
前記推定ステップの処理により前記データ列は前記第１のデータ列であると推定された場合、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップと、
前記推定手段により前記データ列は前記第２のデータ列であると推定された場合、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップと
を含むことを特徴とする画像処理方法。
【請求項１０】
ブロック単位で画像データを符号化する符号化方式として、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを２ビットのデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、前記データ列を復号する処理をコンピュータに実行させるプログラムであって、
供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定ステップと、
前記推定ステップの処理により前記データ列は前記第１のデータ列であると推定された場合、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップと、
前記推定手段により前記データ列は前記第２のデータ列であると推定された場合、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップと
を含むプログラムを記録していることを特徴とする記録媒体。
【請求項１１】
ブロック単位で画像データを符号化する符号化方式として、
第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、
前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを２ビットのデータに符号化し、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、前記データ列を復号する処理をコンピュータに実行させるプログラムであって、
供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定ステップと、
前記推定ステップの処理により前記データ列は前記第１のデータ列であると推定された場合、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップと、
前記推定手段により前記データ列は前記第２のデータ列であると推定された場合、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、記録媒体、並びにプログラムに関し、特に、高圧縮かつ高エラー耐性を持つ符号化を容易に実現させる、画像処理装置および方法、記録媒体、並びにプログラムに関する。
【背景技術】
【０００２】
例えば、画像データは、そのデータ量が多いため、画像データを記録媒体に記録する場合や、伝送媒体を介して伝送する場合等においては、画像データは符号化（圧縮符号化）され、符号化データとされて、記録媒体に記録、あるいは伝送媒体を介して伝送される。
【０００３】
画像データの符号化（復号）方式としては、例えば、特許文献１に記載されているADRC(Adaptive Dynamic Range Coding)方式やベクトル量子化（以下、適宜VQと記述する）方式によるものをはじめとして、種々の方式が提案されている。
【特許文献１】特許第2518214号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
符号化においては、画像データが圧縮されるが、その圧縮率が高くなるほど、伝送エラー等が生じた場合の復号画像の画質は大きく劣化する。即ち、例えば、圧縮率が１０である場合（データを１／１０に圧縮した場合）には、その圧縮後の１ビットは、圧縮前の１０ビットに相当するため、圧縮後の１ビットにエラーが生じると、単純には、復号後の１０ビットが損なわれる。このため、画像データを高圧縮率で符号化（圧縮）すれば、エラー耐性が損なわれる。
【０００５】
一方、画像データを高エラー耐性の符号化方式で符号化することにより、伝送エラー等等に対するエラー耐性を強く（高く）することができる。しかしながら、この場合、圧縮率が低下する。
【０００６】
従って、高圧縮と高エラー耐性とはトレードオフの関係にあり、高圧縮かつ高エラー耐性の符号化を行うことは困難であった。
【０００７】
ここで、高圧縮の符号化方式としては、例えば、VQ方式が知られている。また、高エラー耐性の符号化方式（ロバスト性の高い符号化方式）としては、例えば、ADRC方式が知られている。
【０００８】
そこで、例えば、画像データの一部をVQ方式により符号化し、残りをADRC方式により符号化する方法が考えられる。
【０００９】
しかしながら、単純に、画像データの一部をVQ方式により符号化し、残りをADRC方式により符号化した場合には、即ち、例えば、１フレームの画像データの半分を、VQ方式により符号化し、残りの半分をADRC方式により符号化した場合には、一般に、十分な高圧縮かつ高エラー耐性を得ることは困難である。
【００１０】
本発明は、このような状況に鑑みてなされたものであり、高圧縮かつ高エラー耐性の符号化を実現し、品質の良い復号結果を得ることができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の第１の画像処理装置は、ブロック単位で画像データを符号化する画像処理装置であって、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化手段と、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化手段と、第１の符号化手段より出力された第１のデータ列と、第２の符号化手段より出力された第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択手段とを備えることを特徴とする。
【００１２】
第１の符号化方式は、第１のブロックに含まれる複数の画素の画素値のうちの最小値を第１の値として使用し、かつ、第１のブロックのダイナミックレンジを第２の値として使用し、ダイナミックレンに応じて第１のコードの第１のビット数を可変するADRC(Adaptive Dynamic Range Coding)方式であり、第２の符号化方式は、第２のブロックに含まれる複数の画素の画素値のうちの最小値を第３の値として使用し、第２のブロックのダイナミックレンジを第４の値として使用し、かつ、固定の第２のビット数の第２のコードを使用するベクトル量子化方式であるようにすることができる。
【００１３】
本発明の第１の画像処理方法は、ブロック単位で画像データを符号化する画像処理方法であって、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップと、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化ステップと、第１の符号化ステップの処理により出力された第１のデータ列と、第２の符号化ステップの処理により出力された第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップとを含むことを特徴とする。
【００１４】
本発明の第１の記録媒体のプログラムは、ブロック単位で画像データを符号化する処理をコンピュータに実行させるプログラムであって、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップと、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化ステップと、第１の符号化ステップの処理により出力された第１のデータ列と、第２の符号化ステップの処理により出力された第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップとを含むことを特徴とする。
【００１５】
本発明の第１のプログラムは、ブロック単位で画像データを符号化する処理をコンピュータに実行させるプログラムであって、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップと、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化ステップと、第１の符号化ステップの処理により出力された第１のデータ列と、第２の符号化ステップの処理により出力された第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップとを含むことを特徴とする。
【００１６】
本発明の第１の画像処理装置および方法、第１の記録媒体、並びに、第１のプログラムにおいては、第１のブロックに含まれる複数の画素の画素値のそれぞれが、第１の値で減算され、第２の値で第１のコードのそれぞれに正規化され、第１のビット数のデータのそれぞれに符号化され、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列が出力される。一方、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれが、第３の値で減算され、第４の値で正規化され、正規化された複数の画素値を含む第２のブロックに対して第２のコードが付与され、その第２のコードが第２のビット数のデータに符号化され、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列が出力される。そして、このようにして符号化された、第１のデータ列と第２のデータ列のうちのいずれか一方が選択されて、外部に出力される。
【００１７】
本発明の第２の画像処理装置は、ブロック単位で画像データを符号化する符号化方式として、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、供給されたデータ列の少なくとも一部分を第１のビット数のデータ毎に区分し、区分した複数のデータ間の相関を演算し、演算された相関が所定のレベル以上であるとき、データ列は第１のデータ列であると推定し、演算された相関がレベル未満であるとき、データ列は第２のデータ列であると推定する推定手段と、推定手段によりデータ列は第１のデータ列であると推定された場合、データ列に対して、第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号手段と、推定手段によりデータ列は第２のデータ列であると推定された場合、データ列に対して、第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号手段とを備えることを特徴とする。
【００１８】
第１の符号化方式は、第１のブロックに含まれる複数の画素の画素値のうちの最小値を第１の値として使用し、かつ、第１のブロックのダイナミックレンジを第２の値として使用し、ダイナミックレンに応じて第１のコードの第１のビット数を可変するADRC(Adaptive Dynamic Range Coding)方式であり、第２の符号化方式は、第２のブロックに含まれる複数の画素の画素値のうちの最小値を第３の値として使用し、第２のブロックのダイナミックレンジを第４の値として使用し、かつ、固定の第２のビット数の第２のコードを使用するベクトル量子化方式であるようにすることができる。
【００１９】
ADRC方式において、複数の第１のコードのそれぞれの第１のビット数は、対応する第１のブロックのダイナミックレンジに応じてNビット乃至Mビット（Nは０以上の整数値であり、MはNより大きい整数値である）の範囲で可変し、推定手段は、供給されたデータ列の少なくとも一部分を、Nビット乃至Mビットのそれぞれのデータ毎に区分し、それぞれの各データ間の相関を演算し、最も相関が高いと演算されたｋビット（ｋは、N以上M以下の整数値）で区分された複数のデータ間の相関が上述したレベル以上であるとき、データ列は、ｋビット割当のADRC方式により符号化された第１のデータ列であると推定し、ｋビットで区分された複数のデータ間の相関がそのレベル未満であるとき、データ列は第２のデータ列であると推定するようにすることができる。
【００２０】
本発明の第２の画像処理方法は、ブロック単位で画像データを符号化する符号化方式として、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、供給されたデータ列の少なくとも一部分を第１のビット数のデータ毎に区分し、区分した複数のデータ間の相関を演算し、演算された相関が所定のレベル以上であるとき、データ列は第１のデータ列であると推定し、演算された相関がレベル未満であるとき、データ列は第２のデータ列であると推定する推定ステップと、推定ステップの処理によりデータ列は第１のデータ列であると推定された場合、データ列に対して、第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップと、推定手段によりデータ列は第２のデータ列であると推定された場合、データ列に対して、第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップとを含むことを特徴とする。
【００２１】
本発明の第２の記録媒体のプログラムは、ブロック単位で画像データを符号化する符号化方式として、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、データ列を復号する処理をコンピュータに実行させるプログラムであって、供給されたデータ列の少なくとも一部分を第１のビット数のデータ毎に区分し、区分した複数のデータ間の相関を演算し、演算された相関が所定のレベル以上であるとき、データ列は第１のデータ列であると推定し、演算された相関がレベル未満であるとき、データ列は第２のデータ列であると推定する推定ステップと、推定ステップの処理によりデータ列は第１のデータ列であると推定された場合、データ列に対して、第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップと、推定手段によりデータ列は第２のデータ列であると推定された場合、データ列に対して、第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップとを含むことを特徴とする。
【００２２】
本発明の第２のプログラムは、ブロック単位で画像データを符号化する符号化方式として、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、データ列を復号する処理をコンピュータに実行させるプログラムであって、供給されたデータ列の少なくとも一部分を第１のビット数のデータ毎に区分し、区分した複数のデータ間の相関を演算し、演算された相関が所定のレベル以上であるとき、データ列は第１のデータ列であると推定し、演算された相関がレベル未満であるとき、データ列は第２のデータ列であると推定する推定ステップと、推定ステップの処理によりデータ列は第１のデータ列であると推定された場合、データ列に対して、第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップと、推定手段によりデータ列は第２のデータ列であると推定された場合、データ列に対して、第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップとを含むことを特徴とする。
【００２３】
本発明の第２の画像処理装置および方法、第２の記録媒体、並びに、第２のプログラムにおいては、ブロック単位で画像データを符号化する符号化方式として、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、第１の値、第２の値、および、複数の画素のそれぞれに対応する、第１のビット数の第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化方式と、第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータに符号化し、第３の値、第４の値、および、第２のビット数の第２のコードからなる第２のデータ列を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、そのデータ列が復号される。詳細には、供給されたデータ列の少なくとも一部分が第１のビット数のデータ毎に区分され、区分された複数のデータ間の相関が演算され、演算された相関が所定のレベル以上であるとき、データ列は第１のデータ列であると推定され、演算された相関がレベル未満であるとき、データ列は第２のデータ列であると推定される。そして、供給されたデータ列は第１のデータ列であると推定された場合、データ列に対して、第１の符号化方式に対応する第１の復号方式を利用する復号処理が実行される。一方、供給されたデータ列は第２のデータ列であると推定された場合、データ列に対して、第２の符号化方式に対応する第２の復号方式を利用する復号処理が実行される。
【発明の効果】
【００２４】
以上のごとく、本発明によれば、画像データをブロックを単位として符号化し、復号することができる。特に、高圧縮かつ高エラー耐性を持つ符号化を容易に実現させることができる。
【発明を実施するための最良の形態】
【００２５】
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２６】
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
【００２７】
本発明によれば、第１の画像処理装置が提供される。この第１の画像処理装置（例えば、図１の符号化装置１）は、ブロック単位で画像データ（例えば、図２の画像データ３１）を符号化する画像処理装置において、第１のブロック（例えば、図２乃至図３のブロック４１）に含まれる複数の画素の画素値のそれぞれを、第１の値（例えば、図７または図８のMIN）で減算し、第２の値（例えば、図７または図８のDR）で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し（例えば、図７の３ビットまたは図８の４ビットのコードQ1乃至コードQ64に符号化し）、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列（例えば、図７または図８のDR，MIN，ADRCコードからなるデータ列）を出力する第１の符号化手段（例えば、図１のADRCエンコーダ１４）と、前記第１のブロックの少なくとも一部分に対応する第２のブロック（例えば、図３のブロック５１乃至ブロック５４）に含まれる複数の画素の画素値のそれぞれを、第３の値（例えば、図１０のMIN）で減算し、第４の値（例えば、図１０のDR）で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコード（例えば、図９のVQコード）を付与し、その第２のコードを第２のビット数のデータに符号化し（例えば、図１０の８ビットのVQコードに符号化し）、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列（例えば、図１０のデータ列）を出力する第２の符号化手段（例えば、図１のVQエンコーダ１３）と、前記第１の符号化手段より出力された前記第１のデータ列と、前記第２の符号化手段より出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択手段（例えば、図１の選択部１５）とを備えることを特徴とする。
【００２８】
この第１の画像処理装置においては、前記第１の符号化方式は、前記第１のブロック（例えば、図５のブロック）に含まれる複数の前記画素（例えば、図５の画素P1乃至画素P4）の前記画素値のうちの最小値（例えば、図６のMIN）を前記第１の値として使用し、かつ、前記第１のブロックのダイナミックレンジ（例えば、図６のDR）を前記第２の値として使用し、前記ダイナミックレンに応じて前記第１のコードの前記ビット数を可変する（図７の例では、３ビットであり、図８の例では、４ビットである）ADRC(Adaptive Dynamic Range Coding)方式であり、前記第２の符号化方式は、前記第２のブロック（例えば、図５のブロック）に含まれる複数の前記画素（例えば、図５の画素P1乃至画素P4）の前記画素値のうちの最小値（例えば、図６のMIN）を前記第３の値として使用し、前記第２のブロックのダイナミックレンジ（例えば、図６のDR）を前記第４の値として使用し、かつ、固定のビット数の前記第２のコード（例えば、図１０の例では、８ビットのVQコードであり、図９のVQコードのうちのいずれかが割り当てられる）を使用するベクトル量子化方式であることができる。
【００２９】
本発明によれば、第１の画像処理方法が提供される。この第１の画像処理装置の画像処理方法（例えば、図１の符号化装置１の画像処理方法）は、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップ（例えば、図１２のステップＳ２の処理）と、前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータのそれぞれに符号化し、前記第３の値、前記第４の値、および、前記第２のコードからなる第２のデータ列を出力する第２の符号化ステップ（例えば、図１２のステップＳ３の処理）と、前記第１の符号化ステップの処理により出力された前記第１のデータ列と、前記第２の符号化ステップの処理により出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップ（例えば、図１２のステップＳ４とＳ５の処理）とを含むことを特徴とする。
【００３０】
本発明によれば第１の記録媒体が提供される。この第１の記録媒体（例えば、図１５のリムーバブルメディア１１１）に記録されたプログラムは、ブロック単位で画像データを符号化する処理をコンピュータに実行させるプログラムであって、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップ（例えば、図１２のステップＳ２の処理）と、前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータのそれぞれに符号化し、前記第３の値、前記第４の値、および、前記第２のコードからなる第２のデータ列を出力する第２の符号化ステップ（例えば、図１２のステップＳ３の処理）と、前記第１の符号化ステップの処理により出力された前記第１のデータ列と、前記第２の符号化ステップの処理により出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップ（例えば、図１２のステップＳ４とＳ５の処理）とを含むことを特徴とする。
【００３１】
本発明によれば第１のプログラムが提供される。この第１のプログラムは、ブロック単位で画像データを符号化する処理をコンピュータに実行させるプログラムであって、第１のブロックに含まれる複数の画素の画素値のそれぞれを、第１の値で減算し、第２の値で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列を出力する第１の符号化ステップ（例えば、図１２のステップＳ２の処理）と、前記第１のブロックの少なくとも一部分に対応する第２のブロックに含まれる複数の画素の画素値のそれぞれを、第３の値で減算し、第４の値で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコードを付与し、その第２のコードを第２のビット数のデータのそれぞれに符号化し、前記第３の値、前記第４の値、および、前記第２のコードからなる第２のデータ列を出力する第２の符号化ステップ（例えば、図１２のステップＳ３の処理）と、前記第１の符号化ステップの処理により出力された前記第１のデータ列と、前記第２の符号化ステップの処理により出力された前記第２のデータ列のうちのいずれか一方を選択し、外部に出力する選択ステップ（例えば、図１２のステップＳ４とＳ５の処理）とを含むことを特徴とする。
【００３２】
本発明によれば第２の画像処理装置が提供される。この第２の画像処理装置（例えば、図１の復号装置２）は、ブロック単位で画像データ（例えば、図２の画像データ３１）を符号化する符号化方式として、第１のブロック（例えば、図２乃至図３のブロック４１）に含まれる複数の画素の画素値のそれぞれを、第１の値（例えば、図７または図８のMIN）で減算し、第２の値（例えば、図７または図８のDR）で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し（例えば、図７の３ビットまたは図８の４ビットのコードQ1乃至コードQ64に符号化し）、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列（例えば、図７または図８のDR，MIN，ADRCコードからなるデータ列）を出力する第１の符号化方式と、前記第１のブロックの少なくとも一部分に対応する第２のブロック（例えば、図３のブロック５１乃至ブロック５４）に含まれる複数の画素の画素値のそれぞれを、第３の値（例えば、図１０のMIN）で減算し、第４の値（例えば、図１０のDR）で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコード（例えば、図９のVQコード）を付与し、その第２のコードを第２のビット数のデータに符号化し（例えば、図１０の８ビットのVQコードに符号化し）、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列（例えば、図１０のデータ列）を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、供給された前記データ列の少なくとも一部分（例えば、図７、図８、または図１０のデータ列のうちの、先頭の１６ビットの部分（DRとMINに対応する部分）を除く部分）を前記第１のビット数（例えば、３ビットと４ビット）のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定手段（例えば、図１の処理判定部２３）と、前記推定手段により前記データ列は前記第１のデータ列であると推定された場合、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号手段（例えば、図１のADRCデコーダ２２）と、前記推定手段により前記データ列は前記第２のデータ列であると推定された場合、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号手段（例えば、図１のVQデコーダ２１）とを備えることを特徴とする。
【００３３】
この第２の画像処理装置においては、前記第１のブロック（例えば、図５のブロック）に含まれる複数の前記画素（例えば、図５の画素P1乃至画素P4）の前記画素値のうちの最小値（例えば、図６のMIN）を前記第１の値として使用し、かつ、前記第１のブロックのダイナミックレンジ（例えば、図６のDR）を前記第２の値として使用し、前記ダイナミックレンに応じて前記第１のコードの前記第１のビット数を可変する（図７の例では、３ビットであり、図８の例では、４ビットである）ADRC(Adaptive Dynamic Range Coding)方式であり、前記第２の符号化方式は、前記第２のブロック（例えば、図５のブロック）に含まれる複数の前記画素（例えば、図５の画素P1乃至画素P4）の前記画素値のうちの最小値（例えば、図６のMIN）を前記第３の値として使用し、前記第２のブロックのダイナミックレンジ（例えば、図６のDR）を前記第４の値として使用し、かつ、固定の前記第２のビット数の前記第２のコード（例えば、図１０の例では、８ビットのVQコードであり、図９のVQコードのうちのいずれかが割り当てられる）を使用するベクトル量子化方式であることができる。
【００３４】
前記ADRC方式において、複数の前記第１のコードのそれぞれの前記第１のビット数は、対応する前記第１のブロックの前記ダイナミックレンジに応じてNビット乃至Mビット（Nは０以上の整数値であり、MはNより大きい整数値であって、図７と図８の例では、N＝３であり、M＝４である）の範囲で可変し、前記推定手段は、供給された前記データ列の少なくとも一部分を、前記Nビット乃至前記Mビットのそれぞれのデータ毎に区分し、それぞれの各データ間の相関を演算し（例えば、図１１の４ビット相関演算部７２と３ビット相関演算部７３が対応する処理を実行し）、最も相関が高いと演算されたｋビット（ｋは、N以上M以下の整数値）で区分された複数の前記データ間の相関が前記レベル以上であるとき、前記データ列は、前記ｋビット割当の前記ADRC方式により符号化された前記第１のデータ列であると推定し、前記ｋビットで区分された複数の前記データ間の前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する（例えば、図１１の判定部７４が対応する処理を実行する）ことができる。
【００３５】
本発明によれば、第２の画像処理方法が提供される。この第２の画像処理方法（例えば、図１の復号装置２の画像処理方法）は、ブロック単位で画像データを符号化する符号化方式として、第１のブロック（例えば、図２乃至図３のブロック４１）に含まれる複数の画素の画素値のそれぞれを、第１の値（例えば、図７または図８のMIN）で減算し、第２の値（例えば、図７または図８のDR）で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し（例えば、図７の３ビットまたは図８の４ビットのコードQ1乃至コードQ64に符号化し）、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列（例えば、図７または図８のDR，MIN，ADRCコードからなるデータ列）を出力する第１の符号化方式と、前記第１のブロックの少なくとも一部分に対応する第２のブロック（例えば、図３のブロック５１乃至ブロック５４）に含まれる複数の画素の画素値のそれぞれを、第３の値（例えば、図１０のMIN）で減算し、第４の値（例えば、図１０のDR）で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコード（例えば、図９のVQコード）を付与し、その第２のコードを第２のビット数のデータに符号化し（例えば、図１０の８ビットのVQコードに符号化し）、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列（例えば、図１０のデータ列）を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定ステップ（例えば、図１３のステップＳ２１の処理）と、前記推定ステップの処理により前記データ列は前記第１のデータ列であると推定された場合（例えば、図１３のステップＳ２２の処理で「ＮＯ」であると判定された場合）、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップ（例えば、図１３のステップＳ２４）と、前記推定手段により前記データ列は前記第２のデータ列であると推定された場合（例えば、図１３のステップＳ２２の処理で「ＹＥＳ」であると判定された場合）、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップ（例えば、図１３のステップＳ２３の処理）とを含むことを特徴とする。
【００３６】
本発明によれば第２の記録媒体が提供される。この第２の記録媒体（例えば、図１５のリムーバブルメディア１１１）に記録されたプログラムは、ブロック単位で画像データを符号化する符号化方式として、第１のブロック（例えば、図２乃至図３のブロック４１）に含まれる複数の画素の画素値のそれぞれを、第１の値（例えば、図７または図８のMIN）で減算し、第２の値（例えば、図７または図８のDR）で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し（例えば、図７の３ビットまたは図８の４ビットのコードQ1乃至コードQ64に符号化し）、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列（例えば、図７または図８のDR，MIN，ADRCコードからなるデータ列）を出力する第１の符号化方式と、前記第１のブロックの少なくとも一部分に対応する第２のブロック（例えば、図３のブロック５１乃至ブロック５４）に含まれる複数の画素の画素値のそれぞれを、第３の値（例えば、図１０のMIN）で減算し、第４の値（例えば、図１０のDR）で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコード（例えば、図９のVQコード）を付与し、その第２のコードを第２のビット数のデータに符号化し（例えば、図１０の８ビットのVQコードに符号化し）、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列（例えば、図１０のデータ列）を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、前記データ列を復号する処理をコンピュータに実行させるプログラムであって、供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定ステップ（例えば、図１３のステップＳ２１の処理）と、前記推定ステップの処理により前記データ列は前記第１のデータ列であると推定された場合（例えば、図１３のステップＳ２２の処理で「ＮＯ」であると判定された場合）、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップ（例えば、図１３のステップＳ２４）と、前記推定手段により前記データ列は前記第２のデータ列であると推定された場合（例えば、図１３のステップＳ２２の処理で「ＹＥＳ」であると判定された場合）、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップ（例えば、図１３のステップＳ２３の処理）とを含むことを特徴とする。
【００３７】
本発明によれば第２のプログラムが提供される。この第２のプログラムは、ブロック単位で画像データを符号化する符号化方式として、第１のブロック（例えば、図２乃至図３のブロック４１）に含まれる複数の画素の画素値のそれぞれを、第１の値（例えば、図７または図８のMIN）で減算し、第２の値（例えば、図７または図８のDR）で第１のコードのそれぞれに正規化し、第１のビット数のデータのそれぞれに符号化し（例えば、図７の３ビットまたは図８の４ビットのコードQ1乃至コードQ64に符号化し）、前記第１の値、前記第２の値、および、複数の前記画素のそれぞれに対応する、前記第１のビット数の前記第１のコードのそれぞれからなる第１のデータ列（例えば、図７または図８のDR，MIN，ADRCコードからなるデータ列）を出力する第１の符号化方式と、前記第１のブロックの少なくとも一部分に対応する第２のブロック（例えば、図３のブロック５１乃至ブロック５４）に含まれる複数の画素の画素値のそれぞれを、第３の値（例えば、図１０のMIN）で減算し、第４の値（例えば、図１０のDR）で正規化し、正規化された複数の前記画素値を含む前記第２のブロックに対して第２のコード（例えば、図９のVQコード）を付与し、その第２のコードを第２のビット数のデータに符号化し（例えば、図１０の８ビットのVQコードに符号化し）、前記第３の値、前記第４の値、および、前記第２のビット数の前記第２のコードからなる第２のデータ列（例えば、図１０のデータ列）を出力する第２の符号化方式とのうちのいずれか一方が利用されて、所定のブロックが符号化され、その結果得られるデータ列が供給されてきた場合、前記データ列を復号する処理をコンピュータに実行させるプログラムであって、供給された前記データ列の少なくとも一部分を前記第１のビット数のデータ毎に区分し、区分した複数の前記データ間の相関を演算し、演算された前記相関が所定のレベル以上であるとき、前記データ列は前記第１のデータ列であると推定し、演算された前記相関が前記レベル未満であるとき、前記データ列は前記第２のデータ列であると推定する推定ステップ（例えば、図１３のステップＳ２１の処理）と、前記推定ステップの処理により前記データ列は前記第１のデータ列であると推定された場合（例えば、図１３のステップＳ２２の処理で「ＮＯ」であると判定された場合）、前記データ列に対して、前記第１の符号化方式に対応する第１の復号方式を利用する復号処理を実行する第１の復号ステップ（例えば、図１３のステップＳ２４）と、前記推定手段により前記データ列は前記第２のデータ列であると推定された場合（例えば、図１３のステップＳ２２の処理で「ＹＥＳ」であると判定された場合）、前記データ列に対して、前記第２の符号化方式に対応する第２の復号方式を利用する復号処理を実行する第２の復号ステップ（例えば、図１３のステップＳ２３の処理）とを含むことを特徴とする。
【００３８】
以下、図面を参照して、本発明について説明する。
【００３９】
図１は、本発明が適用される画像処理システムの構成例を表している。
【００４０】
図１に示されるように、本実施の形態の画像処理システムは、入力された画像データをブロック単位で符号化して出力する符号化装置１と、符号化装置１により符号化された画像データを復号する復号装置２とから構成される。
【００４１】
符号化装置１は、ブロック化部１１、ブロック化部１２、VQエンコーダ１３、ADRCエンコーダ１４、および、選択部１５から構成される。
【００４２】
ブロック化部１１は、入力された画像データを所定のサイズのブロックに分割し、ブロック化部１２とADRCエンコーダ１４に供給する。具体的には、例えば、図２に示されるような画像データ３１が供給されたとすると、ブロック化部１１は、同図に示されるように、その画像データ３１を、縦方向に８画素かつ横方向に８画素からなるブロック（以下、縦方向にA画素かつ横方向にB画素からなるブロックをA×Bのブロックと記述する）、例えば、８×８のブロック４１等に分割する。
【００４３】
なお、当然ながら、ブロック化部１１は、供給された画像データを、８×８以外の任意のサイズのブロックに分割してもよい。
【００４４】
ブロック化部１２は、ブロック化部１１より供給されたブロックを複数の小ブロックにさらに分割して、VQエンコーダ１３に供給する。具体的には、例えば、図２の８×８のブロック４１が供給された場合、ブロック化部１２は、図３に示されるように、８×８のブロック４１を４×４のブロック５１乃至ブロック５４のそれぞれに分割して、VQエンコーダ１３に提供する。
【００４５】
なお、当然ながら、ブロック化部１２は、供給されたブロックを、４×４以外の任意のサイズのブロックに分割してもよい。また、供給されたブロックのサイズが、後述するVQエンコーダ１３の処理サイズに既に一致している場合、ブロック化部１２は、供給されたブロックをそのままVQエンコーダ１３に供給することができる。
【００４６】
VQエンコーダ１３は、ブロック化部１２より供給されたブロック（例えば、図３の４×４のブロック５１乃至ブロック５４のそれぞれ）を上述したベクトル量子化（VQ）方式により符号化し、選択部１５に供給する。
【００４７】
ADRCエンコーダ１４は、ブロック化部１１より供給されたブロック（例えば、図２の８×８のブロック４１）を上述したADRC方式により符号化し、選択部１５に供給する。
【００４８】
なお、ここでは、VQエンコーダ１３とADRCエンコーダ１４との符号化処理の共通化を図るため、VQエンコーダ１３は、供給されたブロック内の複数の画素のそれぞれの画素値を、それらの画素値のうちの最小値（以下、MINと記述する）で減算し、そのブロックのダイナミックレンジ、即ち、それらの画素値のうちの最大値（以下、MAXと記述する）と最小値MINとの差分値（後述する図６参照）で正規化し、正規化した複数の画素値を含むブロックに対してVQ方式による符号化処理を施す。ただし、VQ方式とADRC方式の詳細については後述する。
【００４９】
選択部１５は、VQエンコーダ１３より供給された、VQ方式で符号化されたブロックと、ADRCエンコーダ１４より供給された、ADRC方式で符号化されたブロックとのうちのいずれか一方を選択し、外部に出力する。
【００５０】
なお、このとき、VQエンコーダ１３より供給されるブロックのサイズ（例えば、４×４）と、ADRCエンコーダ１４より供給されるブロックのサイズ（例えば、８×８）が異なる場合、選択部１５は、いずれか一方のサイズにあわせて両者のブロックを比較する。具体的には、例えば、ADRCエンコーダ１４によりブロック４１（図２と図３）が符号化され、VQエンコーダ１３によりブロック５１乃至ブロック５４のそれぞれ（図３）が符号化された場合、選択部１５は、VQエンコーダ１３より供給されたブロック５１乃至ブロック５４のブロック群と、ADRCエンコーダ１４より供給されたブロック４１との総合的な比較を行う。
【００５１】
また、選択部１５の選択方法は特に限定されず、例えば、次の第１の選択方法と第２の選択方法等が適用可能である。即ち、第１の選択方法とは、符号化されたブロックを局所復号したものと、その原ブロックとの差分（符号化誤差）に基づく選択方法である。第２の選択方法とは、ダイナミックレンジDRに閾値を設け、ダイナミックレンジDRがその閾値より小さい場合、VQエンコーダ１３より出力されたブロックを選択し、ダイナミックレンジDRがその閾値以上の場合、ADRCエンコーダ１４より出力されたブロックを選択する方法である。
【００５２】
このように、符号化装置１は、入力された画像データ３１（図２）を、ADRC方式またはVQ方式のいずれか一方を利用してブロック単位で符号化することになるので、符号化装置１からは、結局図４に示されるような符号化された画像データ３１が出力されることになる。即ち、図４に示されるように、ADRC方式で符号化されたブロック（図中、白色のブロックであって、例えば、ブロック４１）と、VQ方式で符号化されたブロック（図中、灰色のブロックであって、例えば、ブロック５５乃至ブロック５８）とが混在されたデータが、符号化装置１より出力される。
【００５３】
ここで、図５乃至図１０を参照して、ADRC方式とVQ方式のそれぞれについてその順番に個別に説明していく。
【００５４】
はじめに、ADRC方式について説明する。
【００５５】
例えば、いま、図５に示されるような、画素P1乃画素P4からなる、４×４のブロックがADRC方式により符号化されるとする。この場合、画素P1乃至画素P4のそれぞれの画素値のうちの最大値MAXと最小値MINとの差分値DR（正確には、DR=MAX-MIN+1）が、ダイナミックレンジDRとして定義され、そのダイナミックレンジDRに適応した可変長の符号が出力される。
【００５６】
具体的には、例えば、いま、画素P1乃画素P4のそれぞれの画素値が図６に示されるとおりであるとする。即ち、図６は、画素P1乃画素P4のそれぞれの画素値をグラフ化した図であり、縦軸は画素値を、横軸は画素のそれぞれを表している。図６の例では、画素P3の画素値が最小値MINとされ、画素P4の画素値が最大値MAXとされているので、同図に示されるように、これらの差分値DRが、図５のブロックのダイナミックレンジDRとなる。
【００５７】
この場合、ブロックのダイナミックレンジDRに基づいて、各画素P1乃至P4のそれぞれの画素値を、元の量子化ビット数（例えば、８ビット）よりも少ないビット数で再量子化する。このとき、ダイナミックレンジDRが小さいほど、少ないビット数で再量子化することができ、量子化ひずみの増大を抑えつつ、画素の画素値の冗長度のみを除去して、更にデータ量を少なくすることが可能である。
【００５８】
ADRC方式は、ダイナミックレンジDRの大きさに関連して量子化ビット数を選択するものである。ダイナミックレンジDRの大小関係を判断するために、所定の閾値が使用される。再量子化のためのビット数として、例えば、３ビット、または４ビットのいずれか１つを割り当てるとき、１つの閾値が使用される。なお、復号側でも、同じ閾値が使用される。
【００５９】
例えば、ダイナミックレンジDRがこの閾値より小さいブロックでは、各画素P1乃至P4のそれぞれの画素値に対するコードに、３ビットが割り当てられる。これに対して、ダイナミックレンジDRがこの閾値以上のブロックでは、各画素P1乃至P4のそれぞれの画素値に対するコードに、４ビットが割り当てられる。なお、以下、画素値に対するコードに割り当てられたビット数をｑと記述する。
【００６０】
なお、ここでは、説明の簡略上、２つのビット数しか割り当てられていないが、実際には、さらに複数のビット数が割り当てられることもある。この場合、例えば、閾値の数を増やすことで対応することができる。
【００６１】
ところで、ダイナミックレンジDRが２のｑ乗より大きいとき、所定の１つの画素値に対するコードQは、次の式（１）で算出される。
【００６２】
Q=［（L−MIN＋0.5）×2^ｑ／DR］    ・・・（１）
【００６３】
式（１）において、［］は、小数点以下の切り捨てを表す。Lは画素値を表す。また、上述したように、MINはブロック内の画素P1乃至画素P4のそれぞれの画素値のうちの最小値（図５の例では、画素P3の画素値）を、DRはブロックのダイナミックレンジを、それぞれ表す。なお、ダイナミックレンジDRが２のｑ乗以下のとき、画素値Lに対するコードQは、L-MINで算出される。
【００６４】
そして、このコードQが割り当てられたビット数（いまの場合、３ビットまたは４ビット）のデータに２進符号化される。
【００６５】
即ち、図１の符号化装置１のADRCエンコーダ１４は、例えば、図５のブロックが符号化されたデータとして、ダイナミックレンジDR（図６参照）、そのブロック内の画素の画素値の最小値MIN（図６参照）、および、そのブロック内の各画素P1乃至P4の画素値のそれぞれに対応する４つの、割り当てられたビット数のコードQのそれぞれからなるデータ列を選択部１５に出力する。このとき、ダイナミックレンジDRと最小値MINとは、８ビットの固定長である。一方、画素値に対するコードQの長さは、上述したように、ダイナミックレンジDRに応じて変化する（いまの場合、３ビット長または４ビット長）。
【００６６】
ところで、説明の簡略上、４画素からなる図５のブロックを符号化の対象として説明してきたが、ADRCエンコーダ１４（図１）のここでの処理単位は、上述した図２のブロック４１に示されるように、８×８のブロックである。従って、ここでは、ADRCエンコーダ１４からは、ブロックが符号化されたデータとして、図７または図８に示されるデータ列が出力される。即ち、図７と図８は、ADRCエンコーダ１４から出力されるデータ（ブロックがADRC方式により符号化されたデータ）の構成例を示している。
【００６７】
図７は、画素のコードQに３ビットが割り当てられた場合の例を示している。従って、図７のデータ列は、８ビットのダイナミックレンジDR、８ビットの最小値MINの後段に、８×８のブロックの各画素（即ち、６４個の画素）のそれぞれに対応する３ビットのコードQ1乃至Q64（以下、これらのコードQ1乃至Q64からなる１９２ビットのデータを、ADRCコードと称する）が配置されて構成される。
【００６８】
これに対して、図８は、画素のコードQに４ビットが割り当てられた場合の例を示している。従って、図８のデータ列は、８ビットのダイナミックレンジDR、８ビットの最小値MINの後段に、８×８のブロックの各画素（即ち、６４個の画素）のそれぞれに対応する４ビットのコードQ1乃至Q64、即ち、２５６ビットのADRCコードが配置されて構成される。
【００６９】
換言すると、ADRCエンコーダ１４は、ブロック化部１１より供給されたブロックに含まれる複数の画素の画素値のそれぞれを、第１の値（ここでは、そのブロックを構成する各画素の画素値のうちの最小値MIN）で減算し、第２の値（ここでは、そのブロックのダイナミックレンジDR）でコードQに正規化し、このコードQを、第２の値に応じて可変する割り当てビット数（ここでは、３ビットまたは４ビット）のデータに符号化し、第１の値（８ビットのデータ）、第２の値（８ビットのデータ）、および、複数の画素のそれぞれに対応するコードQ（ここでは３ビットまたは４ビットのデータ）、即ち、ADRCコード（ここでは、１９２ビットまたは２５６ビット）からなるデータ列（ここでは、図７または図８のデータ列）を選択部１５に出力する。
【００７０】
次に、VQエンコーダ１３（図１）の符号化方式であるVQ方式について説明する。
【００７１】
VQ方式は、符号化対象となるブロックから得られる波形を標本化した後、連続した複数の標本値を要素とするベクトルを生成し、このベクトルと、図示せぬメモリ等に格納された複数の代表ベクトルとの比較を行い、最も誤差の小さい代表ベクトルを選択し、その選択された代表ベクトルに識別値として付加されているコード（ここでは、上述したADRCコードと区別するために、VQコードと称する）を２進符号化する符号化方式である。
【００７２】
ベクトルの要素（波形の標本化の方法）は特に限定されず、例えば、符号化対象となるブロックが上述した図５のブロックである場合、そのブロックの各画素P1乃至P4のそれぞれの画素値を要素とするベクトルを適用してもよい。ただし、ここでは、VQエンコーダ１３が生成するベクトルは、ADRCエンコーダ１４の処理に対応させるために、例えば、次のようなベクトルとされる。即ち、ここでは、例えば、上述したADRC方式により生成された、各画素P1乃至P4のそれぞれに対応するコードQ1乃至コードQ4（正規化値）を要素とするベクトルが生成されるとする。
【００７３】
この場合、VQエンコーダ１３に内蔵された図示せぬメモリには、例えば、図９に示されるようなテーブルが格納されている。図９のテーブルにおいて、c(P1)は、画素P1に対応するコードQ1を表している。同様に、C(P2)は、画素P2に対応するコードQ2を、C(P3)は、画素P3に対応するコードQ3を、C(P4)は、画素P4に対応するコードQ4を、それぞれ表している。即ち、図９のテーブルの各行のそれぞれの右側の項目には、代表ベクトルが格納されており、各行のそれぞれの左側の項目には、対応する代表ベクトルに識別値として付加されたVQコードが格納されている。具体的には、例えば、第１行目に対応する代表ベクトルは（5,7,2,10）とされ、VQコードとして「１」が付加されている。
【００７４】
従って、ここでは、VQエンコーダ１３は、ブロック化部１２より供給されたブロックに対して上述したADRC方式の符号化処理を始めに施し、各画素のそれぞれに対応するコードQを求め、それらのコードQを要素とするベクトルを生成する。次に、VQエンコーダ１３は、このベクトルと、図９のテーブルに格納された各代表ベクトル（各行）のそれぞれとの比較を行い、最も誤差の小さい代表ベクトルを選択する。具体的には、例えば、いま、VQエンコーダ１３は、図９のテーブルの第１行目に対応する代表ベクトル（5,7,2,10）を選択したとする。この場合、VQエンコーダ１３は、VQコードとして「１」を取得し、その「１」を８ビットのデータに２進符号化する。そして、VQエンコーダ１３は、供給されたブロックを符号化したデータとして、ADRC方式の符号化処理で利用した、ダイナミックレンジDR、および、そのブロックの各画素の画素値のうちの最小値MIN、並びに、８ビットのVQコード（符号化２進値）からなる、図１０に示されるようなデータ列を選択部１５に出力する。
【００７５】
即ち、図１０は、VQエンコーダ１３から出力されるデータ（ブロックがVQ方式により符号化されたデータ）の構成例を示している。図１０に示されるように、このデータ列は、８ビットのダイナミックレンジDR、８ビットの最小値MIN、および、８ビットのVQコードから構成される。
【００７６】
なお、ADRC方式の説明とあわせるために、４画素からなる図５のブロックを符号化の対象として説明したが、VQエンコーダ１３のここでの処理単位は、上述した図３のブロック５１等に示されるように、４×４のブロックである。ただし、ブロックのサイズが増えても、結局生成されるベクトルの要素の個数が増えるだけであり、ADRCエンコーダ１４は、要素の個数が増えた複数の代表ベクトル（候補）が格納されたテーブル（図９の代表ベクトルとは異なる代表ベクトルが格納されたテーブル）を単に用意しておけばよい。この場合、要素の個数の増加に応じて代表ベクトルの個数を増やすことも可能であるが、その代表ベクトルの個数自体は特に限定さるものではない。即ち、この代表ベクトルの個数は、結局、２進符号化されたVQコードのビット数で決定されるので、代表ベクトルの個数に応じて、このVQコードのビット数を決定すればよい。なお、ここでは、４×４のブロックに対しても、８ビットのVQコード（即ち、図１０に示されるデータ列）が、VQエンコーダ１３から出力されるとして説明する。
【００７７】
換言すると、VQエンコーダ１３は、第１のブロック（例えば図２の８×８のブロック４１）の少なくとも一部分に対応する第２のブロック（例えば、図３の４×４のブロック５１等）に含まれる複数の画素の画素値のそれぞれを、第３の値（例えば、ここでは、第２のブロックを構成する各画素の画素値のうちの最小値MIN）で減算し、第４の値（例えば、ここでは、第２のブロックのダイナミックレンジDR）で正規化し、正規化された複数の画素値を含む第２のブロックに対して第２のコード（例えば、図９のテーブルのVQコード、ただし、４×４のブロックの場合、図示せぬテーブルに含まれるVQコード）を付与し、その第２のコードを固定ビット数のデータに符号化し（例えば、ここでは、図１０の８ビットのVQコードに符号化し）、第３の値、第４の値、および、固定ビット数の第２のコードからなる第２のデータ列（例えば、ここでは、図１０のデータ列）を選択部１５に出力する。
【００７８】
このように、本実施の形態の符号化装置１（図１）は、各ブロックのそれぞれに対して、高圧縮を特徴とするVQ方式と、高エラー耐性を特徴とするADRC方式のそれぞれの符号化を行い、画像のブロックの特徴や符号化方式の特徴等に応じていずれか一方を出力することができるので、高圧縮かつ高エラー耐性（高画質）の符号化の実現が容易に可能となる。
【００７９】
以上、図１の画像処理システムのうちの符号化装置１について説明した。そこで、次に、復号装置２について説明する。
【００８０】
復号装置２は、VQデコーダ２１、ADRCデコーダ２２、処理判定部２３、および、合成部２４から構成される。
【００８１】
符号化装置１によりブロック単位で符号化された画像データは、VQデコーダ２１、ADRCデコーダ２２、および、処理判定部２３に供給される。正確には、ADRC方式またはVQ方式のうちのいずれか一方で符号化された各ブロックのデータ列のそれぞれが、所定の順番で順次、VQデコーダ２１、ADRCデコーダ２２、および、処理判定部２３に供給される。
【００８２】
VQデコーダ２１は、いま供給されたデータ列が、VQ方式により符号化されたブロックのデータ列である場合（後述するように、そのことが処理判定部２３より通知された場合）、即ち、そのデータ列が図１０に示されるようなデータ列である場合、そのデータ列に対してVQ方式に対応する復号処理を施すことで、元のブロックに復号し、合成部２４に供給する。
【００８３】
即ち、VQデコーダ２１は、VQエンコーダ１３が有しているテーブルと同一のテーブル（例えば、図５のブロックが符号化対象の場合、図９のテーブル）を有しており、図１０のデータ列のVQコードを１０進化復号し、その復号値に対応する代表ベクトルをそのテーブルから検索する。そして、VQデコーダ２１は、検索した代表ベクトルの各要素のそれぞれを、これから復号するブロックを構成する各画素のそれぞれに対応するQコードとして確定する。即ち、VQデコーダ２１は、図１０のデータ列から、これから復号するブロックを構成する各画素のそれぞれに対応するQコードを復元させる。
【００８４】
次に、VQデコーダ２１は、各画素のそれぞれに対応する復元されたQコード、並びに、図１０のデータ列のダイナミックレンジDR、および各画素の画素のうちの最小値MINを利用して、ADRC方式に対応する復号処理を実行することで、各画素のそれぞれの画素値を復元させ、復元された各画素のそれぞれの画素値（即ち、復元された元のブロック）を合成部２４に提供する。なお、ADRC方式に対応する復号処理については、ADRCデコーダ２２の復号処理として後述する。
【００８５】
一方、ADRCデコーダ２２は、いま供給されたデータ列が、ADRC方式により符号化されたブロックのデータ列である場合（後述するように、そのことが処理判定部２３より通知された場合）、即ち、そのデータ列が図７または図８に示されるようなデータ列である場合、そのデータ列に対してADRC方式に対応する復号処理を施して、元のブロックを復元させ、合成部２４に供給する。
【００８６】
即ち、ADRCデコーダ２２は、ADRCエンコーダ１４が使用する閾値と同一の閾値（例えば、ここでは、上述したように１つの閾値）を保持しており、はじめに、供給されたデータ列のダイナミックレンジDRと閾値とを比較することで、そのデータ列のADRCコードが３ビット割り当てであるのか（３ビットのコードQ1乃至コードQ64で構成されているのか）、或いは、４ビット割り当てであるのか（４ビットのコードQ1乃至コードQ64で構成されているのか）を判断する。
【００８７】
なお、処理判定部２３が後述する図１１の構成を有している場合、即ち、後述するように、処理判定部２３の方でビット数割り当ての判断が可能である場合、ADRCデコーダ２２側でのこのビット数割り当ての判断処理は省略可能である。
【００８８】
次に、ADRCデコーダ２２は、供給されたデータ列のADRCコード（図７または図８）から、先に判断したビット数（３ビットまたは４ビット）のデータを順次切り出していくことで、コードQ1乃至コードQ64のそれぞれを復元させる。
【００８９】
そして、ADRCデコーダ２２は、復元されたコードQr（ｒは、１乃至６４のうちのいずれか整数値）、並びに、供給されたデータ列のダイナミックレンジDR、および、各画素の画素値のうちの最小値MINを、次の式（２）の右辺に代入してその右辺を演算することで、その左辺の画素値Lrを復元させる。
【００９０】
Lr=［Qr×DR/２^q＋MIN+0.5］    ・・・（２）
【００９１】
式（２）において、［］は、式（１）と同様に小数点以下の切り捨てを表す。
【００９２】
このようにして復元された各画素のそれぞれの画素値L1乃至L64（即ち、復元された元のブロック）は合成部２４に提供される。
【００９３】
処理判定部２３は、いま供給されたデータ列が、VQ方式とADRC方式とのうちのいずれで符号化されたデータ列であるのかを判定し、即ち、そのデータ列の符号化パターンを判定し、その判定結果をVQデコーダ２１とADRCデコーダ２２に提供する。
【００９４】
このときの判定方法については特に限定されず、例えば、供給されたデータ列等に、VQ方式とADRC方式のいずれかを識別させる識別フラグが付加されている場合、この識別フラグを用いて符号化パターン（VQ方式またはADRC方式）を判定する方法を適用してもよい。
【００９５】
しかしながら、符号化装置１の最大の目的は、高圧縮かつ高エラー耐性であり、このような識別フラグを付加することはその目的の達成の妨げになるという課題、即ち、画像データ自体を圧縮（情報量の削減）したにも拘らず、識別フラグを付加することで情報量を増加させてしまうという課題が発生してしまう。要約すると、識別フラグを設けることで、圧縮効率が悪くなると言う課題が発生してしまう。
【００９６】
そこで、この課題を解決するために、本実施の形態の処理判定部２３は、次のようにして、いま供給されたデータ列が、VQ方式とADRC方式とのうちのいずれで符号化されたデータ列であるのかを（即ち、符号化パターンを）判定する。
【００９７】
即ち、ここでは、供給されるデータ列は、図７若しくは図８のADRC方式に対応するデータ列、または、図１０のVQ方式のデータ列である。
【００９８】
図７のデータ列のADRCコードは、３ビットのコードQ1乃至コードQ64から構成される。これらのコードQ1乃至コードQ64のそれぞれは、対応する画素の画素値の正規化値であると言えるので、相互に相関を有している（ブロック内の各画素間の相関が残っている）。同様に、図８のデータ列のADRCコードは、４ビットのコードQ1乃至コードQ64から構成される。これらのコードQ1乃至コードQ64のそれぞれも、対応する画素の画素値の正規化値であると言えるので、相互に相関を有している（ブロック内の各画素間の相関が残っている）。
【００９９】
これに対して、図１０のデータ列のVQコードは、８ビット全体で意味を成すものであり、その８ビットの各データ間に相関は特に存在しない。
【０１００】
また、図７、図８、および図１０のデータ列のいずれの先頭の１６ビットには、ダイナミックレンジDRと最小値MINとが配置されている。
【０１０１】
そこで、上述した識別フラグを有しない（エラーで識別フラグが欠損している場合でもよい）データ列が供給されてきた場合、本実施の形態の処理判定部２３は、そのデータ列の先頭の１６ビット（ダイナミックレンジDRと最小値MINに相当する部分）を除くデータ（図７と図８の場合、ADRCコードの部分となり、図１０の場合、VQコードとなる）を、３ビットと４ビットのそれぞれ毎の複数のデータに区分し、区分した複数のデータ間の相関値のそれぞれを演算する。即ち、３ビット毎に区分された複数のデータ間の相関値と、４ビット毎に区分された複数のデータ間の相関値とが演算される。なお、ここでは、相関値が低いほど相関が高いとして説明する。
【０１０２】
そして、処理判定部２３は、最も相関が高いと演算されたｋビット（ここでは、ｋは、３または４のうちのいずれか一方）で区分された複数のデータ間の相関値（即ち、相関値が低い方）が所定の閾値以下であるとき（相関が閾値に対応するレベル以上あるとき）、そのデータ列は、ｋビット割当のADRC方式により符号化されたデータ列である（ここでは、ｋが３の場合、図７のデータ列であり、ｋが４の場合、図８のデータ列である）と判定する。
【０１０３】
これに対して、処理判定部２３は、ｋビットで区分された複数のデータ間の相関値が先の閾値を超えているとき（相関が閾値に対応するレベル未満であるとき）、そのデータ列はVQ方式により符号化されたデータ列（図１０のデータ列）であると判定する。
【０１０４】
このように、本実施の形態の処理判定部２３は、識別フラグを有していないデータ列に対しても、その符号化パターン（例えば、ここでは、ADRC方式またはVQ方式）を識別することができるので、符号化装置１は、出力する符号化データに対して識別フラグを付加する必要がなくなる。即ち、符号化装置１は、識別フラグを有するデータ列よりも高圧縮のデータを生成する（圧縮効率を高める）ことができる。或いは、本実施の形態の処理判定部２３は、識別フラグの部分にエラーが発生しても、そのデータ列の符号化パターンを識別することができるとも捉えることができ、このように捉えた場合、エラー耐性がより上がるという効果を奏することが可能になる。
【０１０５】
さらに、本実施の形態の処理判定部２３は、ADRC方式における、割り当てビット数（画素に対応するコードQのビット数）も識別することができる。即ち、上述したように、割り当てビット数とダイナミックレンジDRとの間には密接な関係が存在するので、ダイナミックレンジDRの推定も容易に可能となる。換言すると、ADRC方式で符号化されたデータ列のダイナミックレンジDRの部分にたとえエラーが発生していても、そのエラーリカバリーが容易に可能になる。
【０１０６】
このような処理を行う本実施の形態の処理判定部２３の詳細な構成例が図１１に示されている。そこで、以下、図１１を参照して、処理判定部２３の詳細な構成例について説明する。
【０１０７】
図１１に示されるように、本実施の形態の処理判定部２３は、切り出し部７１、４ビット相関演算部７２、３ビット相関演算部７３、および、判定部７４から構成される。
【０１０８】
切り出し部７１は、判定部７４の直前の判定結果に基づいて、ストリームデータとして供給されてくる画像データ（符号化された画像データ）の中から、次のブロックに対応するデータ列の先頭位置を判断し、その先頭位置から所定のビット数（例えば、ここでは、データ列の最大長は図８のデータ列の２７４ビットであるので、２７４ビットとする）のデータ列を切り出し、４ビット相関演算部７２、および、３ビット相関演算部７３のそれぞれに供給する。
【０１０９】
４ビット相関演算部７２は、切り出し部７１より供給されたデータ列の先頭の１６ビット（ダイナミックレンジDRと最小値MINに相当する部分）を除くデータ（図７と図８の場合、ADRCコードの部分となり、図１０の場合、VQコードとなる）を、４ビット毎のそれぞれの複数のデータのそれぞれに区分し、区分したデータ間の相関値（以下、相関値S2と記述する）を演算し、その演算結果（相関値S2）を判定部７４に供給する。
【０１１０】
一方、３ビット相関演算部７３は、切り出し部７１より供給されたデータ列の先頭の１６ビット（ダイナミックレンジDRと最小値MINに相当する部分）を除くデータ（図７と図８の場合、ADRCコードの部分となり、図１０の場合、VQコードとなる）を、３ビット毎のそれぞれの複数のデータのそれぞれに区分し、区分したデータ間の相関値（以下、相関値S1と記述する）を演算し、その演算結果（相関値S1）を判定部７４に供給する。
【０１１１】
なお、ここでは、３ビット割り当てまたは４ビット割り当てのADRC方式の符号化処理しか行われないため（そのように仮定したため）、図１１の処理判定部２３には、３ビット相関演算部７３と４ビット相関演算部７２の２つの相関演算部しか設けられていない。即ち、さらに多くのビット割り当てが行われる場合、図示はしないが、ビット割り当てが行われる数だけの相関演算部が必要になる。詳細には、ADRC方式において、コードQの割り当てビット数が、対応するブロックのダイナミックレンジDRに応じてNビット乃至Mビット（Nは０以上の整数値であり、MはNより大きい整数値である）の範囲で可変する場合、図示はしないが、次のような、k（ｋは、N以上M以下のそれぞれの整数値）ビット相関演算部のそれぞれが必要になる。即ち、ｋビット相関演算部は、供給されたデータ列を、ｋビットのデータ毎に区分し、区分した各データ間の相関値を演算し、その演算結果（相関値Sk）を判定部７４に供給する。従って、判定部７４には、相関値SN乃至相関値SMのそれぞれが供給されることになる。
【０１１２】
判定部７４は、３ビット相関演算部７３から供給された相関値S1と、４ビット相関演算部７２から供給された相関値S2が共に、上述した閾値以上であると判定した場合（両者の相関が閾値に対応するレベル未満であると判定した場合）、切り出し部７１によりいま切り出されたデータ列の符号化パターンはVQ方式であると判定する。即ち、判定部７４は、そのデータ列は図１０のデータ列であると判定する。
【０１１３】
なお、図示はしないが、コードQの割り当てビット数がNビット乃至Mビットの範囲で可変する場合、判定部７４は、Nビット相関演算部乃至Mビット相関演算部のそれぞれから供給された相関値SN乃至相関値SMののすべてが、上述した閾値以上であると判定した場合（全ての相関が閾値に対応するレベル未満であると判定した場合）、切り出し部７１によりいま切り出されたデータ列の符号化パターンはVQ方式であると判定する。
【０１１４】
これに対して、判定部７４は、３ビット相関演算部７３から供給された相関値S1と、４ビット相関演算部７２から供給された相関値S2のうちの少なくとも一方が、上述した閾値より小さいと判定した場合（少なくとも１つの相関が閾値に対応するレベル以上であると判定した場合）、切り出し部７１によりいま切り出されたデータ列の符号化パターンはADRC方式であると判定する。さらに、判定部７４は、（４ビット毎の）相関値S2（３ビット毎の）が相関値S1より小さい場合（４ビット毎のデータ間の相関の方が高い場合）、そのデータ列の符号化パターンは４ビット割り当てのADRCと判定する。即ち、判定部７４は、そのデータ列は図８のデータ列であると判定する。一方、判定部７４は、相関値S１が相関値S２より小さい場合（３ビット毎のデータ間の相関の方が高い場合）、そのデータ列の符号化パターンは３ビット割り当てのADRCと判定する。即ち、判定部７４は、そのデータ列は図７のデータ列であると判定する。
【０１１５】
なお、図示はしないが、コードQの割り当てビット数がNビット乃至Mビットの範囲で可変する場合、判定部７４は、Nビット相関演算部乃至Mビット相関演算部のそれぞれから供給された相関値SN乃至相関値SMのうちのいずれか１つでも、上述した閾値より小さい値があると判定した場合（少なくとも１つの相関が閾値に対応するレベル以上であると判定した場合）、切り出し部７１によりいま切り出されたデータ列の符号化パターンはADRC方式であると判定する。さらに、判定部７４は、最低の相関値Skであると検出した場合、データ列の符号化パターンはｋビット割り当てのADRCと判定する。
【０１１６】
そして、判定部７４は、その判定結果を外部（図１のVQデコーダ２１とADRCデコーダ２２）に供給するとともに、切り出し部７１に供給する。
【０１１７】
ところで、いまの場合、VR方式により符号化されたデータ列は、必ず２４ビットの固定長になる。一方、ADRC方式により符号化されたデータ列は、可変長である。しかしながら、そのパターンは限られており（いまの場合、図７と図８の２パターン）、結局のところ、図７の２０８ビットか図８の２７２ビットのうちのいずれか一方のデータ長となる。このような観点から、ADRC方式により符号化されたデータ列は、半固定長（完全な可変長ではなく、所定のパターンに限定される可変長）であるといえる。
【０１１８】
従って、切り出し部７１は、いま切り出したデータ列の符号化パターンがわかれば、容易に、次に切り出すデータ列の先頭位置を見つけることができる。そこで、上述したように、判定部７４が切り出し部７１に判定結果をフィードバックするのである。
【０１１９】
図１に戻り、合成部２４は、VQデコーダ２１またはADRCデコーダ２２より供給されるデータ（復元された元のブロック）を、処理済みのデータに合成していき、全てのデータを合成すると、その合成データを復号画像データとして外部に出力する。
【０１２０】
次に、図１２のフローチャートを参照して、図１の符号化装置１の符号化処理について説明する。
【０１２１】
はじめに、ステップＳ１において、ブロック化部１１とブロック化部１２は、画像データをブロック化する。本実施の形態においては、ブロック化部１１によりブロック化されたデータは、ADRCエンコーダ１４に供給されるとともに、ブロック化部１２に供給される。ブロック化部１２に供給されたブロックはさらに小ブロック化されてVQエンコーダ１３に供給される。
【０１２２】
ステップＳ２において、ADRCエンコーダ１４は、ブロック化されたデータ（ブロック化部１１より供給されたブロック）をADRCエンコードし（ADRC方式により符号化し）、選択部１５に供給する。即ち、選択部１５には、上述した図７または図８のデータ列がADRCエンコーダ１４より供給される。
【０１２３】
ステップＳ３において、VQエンコーダ１３は、ステップＳ２の処理とほぼ同時に（即ち、ステップＳ２とＳ３の処理の順番は図１２の例に限定されない）、ブロック化されたデータ（ブロック化部１２より供給されたブロック）をVQエンコードし（VQ方式により符号化し）、選択部１５に供給する。即ち、選択部１５には、上述した図１０のデータ列がVQエンコーダ１３より供給される。
【０１２４】
ステップＳ４において、選択部１５は、ADRCエンコードされたデータ（ADRCエンコーダ１４より供給された図７または図８のデータ列）と、VQエンコードされたデータ（VQエンコーダ１３より供給された図１０のデータ列）とのうちのいずれを出力するか選択し、ステップＳ５において、選択したそのデータを出力する。
【０１２５】
ステップＳ６において、符号化装置１は、画像データの全てが出力されたか否かを判定し、画像データの全てが出力されていないと判定した場合、処理をステップＳ１に戻し、それ以降の処理を繰り返す。即ち、次のブロックがADRC方式とVQ方式のそれぞれにより符号化され、そのうちの一方が出力される。
【０１２６】
これにより符号化装置１の符号化処理は終了となる。
【０１２７】
なお、ブロック化部１１とブロック化部１２とに図示せぬメモリが設けられていれば、画像データが供給された段階で、ブロック化部１１とブロック化部１２のそれぞれは、その画像データの全てをブロック化し、各ブロックのそれぞれをメモリに保持し、VQエンコーダ１３またはADRCエンコーダ１４に、必要なブロックを適宜提供することができる。即ち、１つ前のブロックのステップＳ５の処理が実行されてから、次のブロックのステップＳ１の処理が実行される必要はなく、各ブロックのそれぞれに対するステップＳ１乃至Ｓ５の処理は、他のブロックのそれに対して独立した処理とすることも可能である。
【０１２８】
次に、図１３のフローチャートを参照して、図１の復号装置２の復号処理について説明する。
【０１２９】
例えば、いま、符号化装置１により符号化された画像データがストリームデータとして、即ち、図７、図８、または、図１０の複数のデータ列（符号化された各ブロック）が連続して順次、復号処理装置２に供給されてくるとする。
【０１３０】
この場合、処理判定部２３は、ステップＳ２１において、いま供給されたデータ列の符号化パターンを判定し（推定し）、その判定結果をVQデコーダ２１とADRCデコーダ２２のそれぞれに供給する。
【０１３１】
なお、このような処理判定部２３の処理（ステップＳ２１の処理）を、以下、「符号化パターン判定処理」と称する。本実施の形態の「符号化パターン判定処理」が図１４に示されている。そこで、以下、図１４のフローチャートを参照して、本実施の形態の「符号化パターン判定処理」について説明する。
【０１３２】
はじめに、ステップＳ４１において、図１１の処理判定部２３の切り出し部７１は、判定部７４の直前の判定結果（直前のデータ列に対する、後述するステップＳ４８の処理結果）に基づいて、ストリームデータとして供給されてくる画像データ（符号化された画像データ）の中から、次のブロックに対応するデータ列の先頭位置を判断し、その先頭位置から所定の長さ（例えば、いまの場合、上述したように、２７４ビット）のデータ列を切り出し、４ビット相関演算部７２、および、３ビット相関演算部７３のそれぞれに供給する。
【０１３３】
ステップＳ４２において、３ビット相関演算部７３と４ビット相関演算部７２とのそれぞれは、３ビット毎のデータ間の相関値S1と、４ビット毎のデータ間の相関値S２とのそれぞれを演算し、それらの演算結果（相関値S1または相関値S2）を判定部７４に供給する。
【０１３４】
すると、ステップＳ４３において、判定部７４は、３ビット相関演算部７３から供給された相関値S1と、４ビット相関演算部７２から供給された相関値S2はともに、上述した閾値以上であるか否かを判定する。
【０１３５】
ステップＳ４３において、相関値S1と相関値S2はともに閾値以上であると判定した場合、判定部７４は、ステップＳ４４において、切り出し部７１によりステップＳ４１の処理で切り出されたデータ列の符号化パターンはVQ方式であると判定する。即ち、判定部７４は、そのデータ列は図１０のデータ列であると判定する。
【０１３６】
これに対して、ステップＳ４３において、相関値S1と相関値S2のうちの少なくとも１つが閾値より小さいと判定した場合（相関値S1と相関値S2はともに閾値以上ではないと判定した場合）、判定部７４は、切り出し部７１によりいま切り出されたデータ列の符号化パターンはADRC方式であると判定し、処理をステップＳ４５に進める。
【０１３７】
即ち、判定部７４は、ステップＳ４５において、（３ビット間の）相関値S1＞（４ビット間の）相関値S2であるか否かを判定する。
【０１３８】
ステップＳ４５において、相関値S1＞相関値S2であると判定した場合（相関値S2が相関値S1より小さい場合）、判定部７４は、ステップＳ４６において、そのデータ列の符号化パターンは４ビット割り当てのADRCと判定する。即ち、判定部７４は、そのデータ列は図８のデータ列であると判定する。
【０１３９】
これに対して、ステップＳ４５において、相関値S1＞相関値S2ではないと判定した場合（相関値S1が相関値S2より小さい場合）、判定部７４は、ステップＳ４７において、そのデータ列の符号化パターンは３ビット割り当てのADRCと判定する。即ち、判定部７４は、そのデータ列は図７のデータ列であると判定する。
【０１４０】
ステップＳ４４、ステップＳ４６、またはステップＳ４７の処理が完了すると、即ち、判定部７４が、対象となるデータ列の符号化パターンを判定すると、その判定結果は外部（図１のVQデコーダ２１とADRCデコーダ２２）に出力されるとともに、切り出し部７１に供給される。
【０１４１】
すると、切り出し部７１は、ステップＳ４８において、先頭位置を更新する。即ち、切り出し部７１は、判定部７４により供給された判定結果に基づいて、次に切り出すデータの先頭位置を演算する。
【０１４２】
これにより、「符号化パターン判定処理」は終了となる。
【０１４３】
図１３に戻り、このようなステップＳ２１の「符号化パターン判定処理」により、図１の処理判定部２３（図１１の判定部７４）の判定結果（符号化パターン）がVQデコーダ２１とADRCデコーダ２２のそれぞれに供給されると、ステップＳ２２において、VQデコーダ２１とADRCデコーダ２２のそれぞれは、その判定結果に基づいて、符号化パターンはVQであるか否かを判定する。
【０１４４】
ステップＳ２２において、符号化パターンはVQ方式であると判定した場合、ステップＳ２３において、VQデコーダ２１は、いま供給されたデータ列（先頭位置から２４ビットのデータ列）をVQデコードし（VQ方式に対応する復号処理を実行し）、元のブロック（各画素の画素値）を復元させ、合成部２４に供給する。このとき、ADRCデコーダ２２は、例えば、その処理を待機する。
【０１４５】
これに対して、ステップＳ２２において、符号化パターンはVQ方式ではない（ADRC方式である）と判定した場合、ステップＳ２４において、ADRCデコーダ２２は、いま供給されたデータ列（３ビット割り当てのADRC方式の場合、先頭位置から２０８ビットのデータ列であり、４ビット割り当てのADRC方式の場合、先頭位置から２７２ビットのデータ）をADRCデコードし（ADRC方式に対応する復号処理を実行し）、元のブロック（各画素の画素値）を復元させ、合成部２４に供給する。このとき、VQデコーダ２１は、例えば、その処理を待機する。
【０１４６】
このようなステップＳ２３またはステップＳ２４の処理が完了すると、即ち、VQデコーダ２１またはADRCデコーダ２２からデコードされたデータ（元のブロック）が合成部２４に供給されると、ステップＳ２５において、合成部２４は、デコードされたそのデータを処理済みのデータ（合成データ）に合成する。
【０１４７】
なお、図１の例では、同一のデータ列は、VQデコーダ２１、ADRCデコーダ２２、および、処理判定部２３にあたかも同時に供給されるように描画されているが、このようなステップＳ２１乃至Ｓ２５の処理を実現するためには、図示はしないが、タイミング部やメモリ等を設けて、同一のデータ列に対する、VQデコーダ２１とADRCデコーダ２２の処理のタイミングと、処理判定部２３の処理のタイミングとをずらす必要がある。
【０１４８】
或いは、同一のデータ列に対する、VQデコーダ２１、ADRCデコーダ２２、および、処理判定部２３の処理を同時に実行させて、合成部２４の方で、処理判定部２３の判定結果に基づいて、次に合成するデータとして、VQデコーダ２１より供給されたブロックと、ADRCデコーダ２２より供給されたブロックのうちのいずれを使用するのかを決定してもよい。
【０１４９】
復号装置２は、ステップＳ２６において、全てのデータがデコードされたか否かを判定する。
【０１５０】
全てのデータがデコードされていない場合（ステップＳ２６において、全てのデータがまだデコードされていないと判定された場合）、処理はステップＳ２１に戻され、それ以降の処理が繰り返される。即ち、次のブロックに対応するデータ列がデコードされ、デコードされたブロックが処理済みのデータに合成されていく。
【０１５１】
そして、最後のブロックが合成されると（ステップＳ２６において、全てのデータがデコードさたと判定されると）、ステップＳ２７において、合成部２４は、合成データを、復号画像データとして外部に出力する。
【０１５２】
これにより復号装置２の復号処理は終了となる。
【０１５３】
このように、本発明においては、特性の異なる符号化方式（例えば、上述したADRC方式とVQ方式）を対象となる画像データに適用し、それぞれの長所を生かした複合的な符号化を実現することができる。特に、各符号化データの特徴（例えば、ADRC方式の符号化データのADRCコード内のデータ間には画素間の相関に基づく相関がある。一方、VQ方式の符号化データのVQコード内のデータ間には相関は特にないといった特徴）を利用することで、適用された符号化種類を示す識別フラグを省略することが可能になる。
【０１５４】
また、復号側においては、各符号化方式により生成される符号化データの先の特徴（例えば、データ間の相関）判定により符号化方式（符号化パターン）を容易に推定することが可能になる。
【０１５５】
このように、本発明は、符号化データの特徴が相異なる符号化方式であればいずれの符号化方式にも適用できる。いずれの符号化方式を適用しても、上述した効果、即ち、符号化方式の識別フラグが無くても容易に符号化方式（符号化パターン）を容易に推定することができ、その結果、その識別フラグを省略して圧縮効率を高める効果を奏することが可能になる。
【０１５６】
換言すると、本実施の形態では、高圧縮の符号化方式としてベクトル量子化を採用するとともに、高エラー耐性の符号化方式としてADRCを採用することとしたが、高圧縮の符号化方式は、ベクトル量子化に限定されるものではなく、高エラー耐性の符号化方式も、ADRCに限定されるものではない。
【０１５７】
また、本実施の形態では、ADRCの際、ADRCブロックの各画素値から、その最小値MINを減算するようにしたが、ADRCブロックの各画素値から減算する値としては、最小値MINの他、例えば、ADRCブロックの画素値の平均値、その他の任意の値を採用することが可能である。
【０１５８】
さらに、本実施の形態では、ADRCの際、ADRCブロックの各画素値を、そのダイナミックレンジDRに対応した値であるDR/２Kで正規化（量子化）するようにしたが、ADRCブロックの各画素値の正規化は、その他、例えば、ADRCブロックの最大値MAXに対応した値であるMAX/２Kなどの値によって行うことが可能である。
【０１５９】
ベクトル量子化の際にVQブロックの各画素値から減算する値や、その正規化に用いる値についても同様である。
【０１６０】
ただし、本実施の形態では、符号化データ列に付加されるこれらの減算する値や正規化に用いる値は、いずれの符号化方式においても同一の固定ビット長であることが好適である。処理判定部２３の処理（データ列の切り出しや、相関を演算するためのデータの区分処理等）を容易に行えるからである。
【０１６１】
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるが、ソフトウエアにより実行させることができる。
【０１６２】
この場合、上述した図１の符号化装置１や復号装置２は、例えば、図１５に示されるようなパーソナルコンピュータとして構成することもできる。
【０１６３】
また、この場合、図１の符号化装置１のブロック化部１１乃至選択部１５のそれぞれをソフトウエア(モジュール)で構成することもできる。同様に、復号装置２のVQデコーダ２１乃至合成部２４のそれぞれをソフトウエア（モジュール）で構成することもできる。
【０１６４】
ただし、全てのブロックをソフトウエアとして構成する必要はなく、ソフトウエアとハードウエアが混在されてもよい。また、ソフトウエアの形態もその機能を果たすものであれば、その形態は特に限定されない。即ち、これらのソフトウエアの形態は、図１に示されるモジュール構成の形態に限定されず、例えば、ブロック化部１１乃至選択部１５のうちの一部分若しくは全部が組み合わされたモジュールからなるモジュール構成、または、ブロック化部１１乃至選択部１５のうちのいずれかの機能が分割されたモジュールからなるモジュール構成とされてもよい。或いは、単に１つのアルゴリズムを有するプログラムでもよい。同様に、VQデコーダ２１乃至合成部２４のうちの一部分若しくは全部が組み合わされたモジュールからなるモジュール構成、または、VQデコーダ２１乃至合成部２４のうちのいずれかの機能が分割されたモジュールからなるモジュール構成とされてもよい。或いは、単に１つのアルゴリズムを有するプログラムでもよい。
【０１６５】
さらに、図１の例では、符号化装置１と復号装置２とは異なる装置とされているが、図１５に示されるような同一の装置で構成してもよい。
【０１６６】
ところで、図１５において、CPU（Central Processing Unit）１０１は、ROM（Read Only Memory）１０２に記録されているプログラム、または記憶部１０８からRAM（Random Access Memory）１０３にロードされたプログラムに従って各種の処理を実行する。RAM１０３にはまた、CPU１０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０１６７】
CPU１０１、ROM１０２、およびRAM１０３は、バス１０４を介して相互に接続されている。このバス１０４にはまた、入出力インタフェース１０５も接続されている。
【０１６８】
入出力インタフェース１０５には、キーボード、マウスなどよりなる入力部１０６、ディスプレイなどよりなる出力部１０７、ハードディスクなどより構成される記憶部１０８、および、図示せぬネットワークを介する図示せぬ他の情報処理装置との通信を制御する通信部１０９が接続される。
【０１６９】
入出力インタフェース１０５にはまた、必要に応じてドライブ１１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブルメディア１１１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部１０８にインストールされる。
【０１７０】
一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
【０１７１】
この記録媒体は、図１５に示されるように、装置本体とは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フロッピディスクを含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（ＭＤ（Mini-Disk）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア（パッケージメディア）１１１により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM１０２や、記憶部１０８に含まれるハードディスクなどで構成される。
【０１７２】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１７３】
また、本明細書において、システムとは、複数の装置や処理部により構成される装置全体を表すものである。
【０１７４】
なお、図１の画像処理システムは、動画および静止画のいずれも処理することが可能である。
【０１７５】
また、本実施の形態では、画像データの符号化と復号を行うようにしたが、本発明は、その他、例えば、音声データの符号化と復号に適用することが可能である。この場合、高音質の音声の復号結果を得ることができる。
【図面の簡単な説明】
【０１７６】
【図１】本実施の形態の符号化装置と復号装置の構成例を示すブロック図である。
【図２】ADRC方式の符号化対象のブロックの例を説明する図である。
【図３】VQ方式の符号化対象のブロックの例を説明する図である。
【図４】図１の符号化装置により符号化された画像データの例を説明する図である。
【図５】ADRC方式を説明するためのブロックの例を示す図である。
【図６】ADRC方式を説明するための、図５のブロックの各画素値をグラフ化した図である。
【図７】ADRC方式の符号化データ列の構成例を示す図である。
【図８】ADRC方式の符号化データ列の構成例を示す図である。
【図９】VQ方式を説明するための、代表ベクトルとそれに対応付けられたVQコードの一覧表（テーブル）の例を示す図である。
【図１０】VQ方式の符号化データ列の構成例を示す図である。
【図１１】図１の復号装置の処理判定部の詳細な構成例を示すブロック図である。
【図１２】図１の符号化装置の符号化処理を説明するフローチャートである。
【図１３】図１の復号装置の復号処理を説明するフローチャートである。
【図１４】図１３の復号処理のうちの符号化パターン判定処理の詳細を説明するフローチャートである。
【図１５】本実施の他の形態の符号化装置または復号装置の構成例を示すブロック図である。
【符号の説明】
【０１７７】
１  符号化装置，  ２  復号装置，  １３  VQエンコーダ，  １４  ADRC  エンコーダ，  １５  選択部，  ２１  VQデコーダ，  ２２  ADRCデコーダ，  ２３  処理判定部，  ７１  切り出し部，  ７２  ４ビット相関演算部，  ７３  ３ビット相関演算部，  ７４  判定部
【図１】
2005117561.tif 000003
【図２】
2005117561.tif 000004
【図３】
2005117561.tif 000005
【図４】
2005117561.tif 000006
【図５】
2005117561.tif 000007
【図６】
2005117561.tif 000008
【図７】
2005117561.tif 000009
【図８】
2005117561.tif 000010
【図９】
2005117561.tif 000011
【図１０】
2005117561.tif 000012
【図１１】
2005117561.tif 000013
【図１２】
2005117561.tif 000014
【図１３】
2005117561.tif 000015
【図１４】
2005117561.tif 000016
【図１５】
2005117561.tif 000017