JP4649770B2 - Image data processing apparatus and method, recording medium, and program - Google Patents
Image data processing apparatus and method, recording medium, and program Download PDFInfo
- Publication number
- JP4649770B2 JP4649770B2 JP2001139704A JP2001139704A JP4649770B2 JP 4649770 B2 JP4649770 B2 JP 4649770B2 JP 2001139704 A JP2001139704 A JP 2001139704A JP 2001139704 A JP2001139704 A JP 2001139704A JP 4649770 B2 JP4649770 B2 JP 4649770B2
- Authority
- JP
- Japan
- Prior art keywords
- coefficient
- circuit
- class code
- prediction
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、画像データ処理装置および方法、記録媒体、並びにプログラムに関し、特に、圧縮された画像データを、簡単な構成で復号できるようにした画像データ処理装置および方法、記録媒体、並びにプログラムに関する。
【0002】
【従来の技術】
例えば、ディジタル画像データは、そのデータ量が多いため、そのまま記録や伝送を行うには、大容量の記録媒体や伝送媒体が必要となる。そこで、一般には、画像データを圧縮符号化することにより、そのデータ量を削減してから、記録や伝送が行われる。
【0003】
画像を圧縮符号化する方式としては、例えば、静止画の圧縮符号化方式であるJPEG(Joint Photographic Experts Group)方式や、動画の圧縮符号化方式であるMPEG(Moving Picture Experts Group)方式等がある。
【0004】
例えば、JPEG方式による画像データの符号化は、図1に示すように行われる。
【0005】
符号化対象の画像データは、ブロック化回路1に入力され、ブロック化回路1は、そこに入力される画像データを、8×8画素の64画素でなるブロックに分割する。ブロック化回路1で得られる各ブロックは、DCT(Discrete Cosine Transform)回路2に供給される。DCT回路2は、ブロック化回路1からのブロックに対して、DCT(離散コサイン変換)処理を施し、1個のDC(Direct Current)成分と、水平方向および垂直方向についての63個の周波数成分(AC(Alternating Current)成分)の、合計64個のDCT係数に変換する。各ブロックごとの64個のDCT係数は、DCT回路2から量子化回路3に供給される。
【0006】
量子化回路3は、所定の量子化テーブルにしたがって、DCT回路2からのDCT係数を量子化し、その量子化結果(以下、適宜、量子化DCT係数という)を、量子化に用いた量子化テーブルとともに、エントロピー符号化回路4に供給する。
【0007】
図2は、量子化回路3において用いられる量子化テーブルの例を示している。
量子化テーブルには、一般に、人間の視覚特性を考慮して、重要性の高い低周波数のDCT係数は細かく量子化し、重要性の低い高周波数のDCT係数は粗く量子化するような量子化ステップが設定されており、これにより、画像の画質の劣化を抑えて、効率の良い圧縮が行われるようになっている。
【0008】
エントロピー符号化回路4は、量子化回路3からの量子化DCT係数に対して、例えば、ハフマン符号化等のエントロピー符号化処理を施して、量子化回路3からの量子化テーブルを付加し、その結果得られる符号化データを、JPEG符号化結果として出力する。
【0009】
図3は、図1のJPEG符号化装置が出力する符号化データを復号する、従来のJPEG復号装置の一例の構成を示している。
【0010】
符号化データは、エントロピー復号回路11に入力され、エントロピー復号回路11は、符号化データを、エントロピー符号化された量子化DCT係数と、量子化テーブルとに分離する。さらに、エントロピー復号回路11は、エントロピー符号化された量子化DCT係数をエントロピー復号し、その結果得られる量子化DCT係数を、量子化テーブルとともに、逆量子化回路12に供給する。逆量子化回路12は、エントロピー復号回路11からの量子化DCT係数を、同じくエントロピー復号回路11からの量子化テーブルにしたがって逆量子化し、その結果得られるDCT係数を、逆DCT回路13に供給する。逆DCT回路13は、逆量子化回路12からのDCT係数に、逆DCT処理を施し、その結果られる8×8画素の(復号)ブロックを、ブロック分解回路14に供給する。ブロック分解回路14は、逆DCT回路13からのブロックのブロック化を解くことで、復号画像を得て出力する。
【0011】
【発明が解決しようとする課題】
上記のようなDCT等の直交変換を用いた圧縮符号化において、圧縮率を高くするために各係数データに対する量子化を粗くすると、原画像に対する復号画像の誤差が増大し、復号画像に劣化が生じる。その劣化は、画像のボケ、ブロック歪み、及びエッジ周辺のモスキートノイズといった形で現れ、大きな問題となっている。
【0012】
本発明は、このような状況に鑑みてなされたものであり、情報量を増大させることなく、量子化誤差を低減したよい良好な復号画像を得ることができるようにするものである。
【0013】
【課題を解決するための手段】
本発明の画像データ処理装置は、複数の係数データをクラス分類するためのテーブル情報を保持する保持手段と、保持手段に保持されているテーブル情報に基づいて、クラスコードを生成するクラスコード生成手段と、クラスコード生成手段により生成されたクラスコードに基づいて、予測係数セットを生成する予測係数生成手段と、クラスコード生成手段により生成されたクラスコードに基づいて、予測タップを生成する予測タップ生成手段と、予測係数生成手段により生成された予測係数セットと、予測タップ生成手段により生成された予測タップに基づいて、画素データを生成する画素データ生成手段とを備えることを特徴とする。
【0014】
前記保持手段は、テーブル情報として、複数の係数データ、または係数データに対応する特徴量との関係を記述したテンプレートを保持することができる。
【0015】
前記保持手段は、テーブル情報として、複数の係数データ、または係数データに対応する特徴量からなるベクトルが格納されたコードブックを保持し、クラスコード生成手段は、コードブックを用いて係数データをベクトル量子化して、クラスコードを生成することができる。
【0016】
前記コードブックは、LBGアルゴリズムに基づいて生成されているようにすることができる。
【0017】
前記クラスコード生成手段は、閾値判定処理を行うことができる。
【0018】
本発明の画像データ処理方法は、複数の係数データをクラス分類するためのテーブル情報を保持する保持ステップと、保持ステップの処理により保持されているテーブル情報に基づいて、クラスコードを生成するクラスコード生成ステップと、クラスコード生成ステップの処理により生成されたクラスコードに基づいて、予測係数セットを生成する予測係数生成ステップと、クラスコード生成ステップの処理により生成されたクラスコードに基づいて、予測タップを生成する予測タップ生成ステップと、予測係数生成ステップの処理により生成された予測係数セットと、予測タップ生成ステップの処理により生成された予測タップに基づいて、画素データを生成する画素データ生成ステップとを含むことを特徴とする。
【0019】
前記保持ステップは、テーブル情報として、複数の係数データ、または係数データに対応する特徴量との関係を記述したテンプレートを保持することができる。
【0020】
前記保持ステップは、テーブル情報として、複数の係数データ、または係数データに対応する特徴量からなるベクトルが格納されたコードブックを保持し、クラスコード生成ステップは、コードブックを用いて係数データをベクトル量子化して、クラスコードを生成することができる。
【0021】
前記コードブックは、LBGアルゴリズムに基づいて生成されているようにすることができる。
【0022】
前記クラスコード生成ステップは、閾値判定処理を行うことができる。
【0023】
本発明の記録媒体のプログラムは、直交変換処理により係数データに変換された後、量子化された画像データを復号する画像データ処理装置のプログラムであって、複数の係数データをクラス分類するためのテーブル情報を保持する保持ステップと、保持ステップの処理により保持されているテーブル情報に基づいて、クラスコードを生成するクラスコード生成ステップと、クラスコード生成ステップの処理により生成されたクラスコードに基づいて、予測係数セットを生成する予測係数生成ステップと、クラスコード生成ステップの処理により生成されたクラスコードに基づいて、予測タップを生成する予測タップ生成ステップと、予測係数生成ステップの処理により生成された予測係数セットと、予測タップ生成ステップの処理により生成された予測タップに基づいて、画素データを生成する画素データ生成ステップとを含むことを特徴とする。
【0024】
本発明のプログラムは、直交変換処理により係数データに変換された後、量子化された画像データを復号する画像データ処理装置を制御するコンピュータに、複数の係数データをクラス分類するためのテーブル情報を保持する保持ステップと、保持ステップの処理により保持されているテーブル情報に基づいて、クラスコードを生成するクラスコード生成ステップと、クラスコード生成ステップの処理により生成されたクラスコードに基づいて、予測係数セットを生成する予測係数生成ステップと、クラスコード生成ステップの処理により生成されたクラスコードに基づいて、予測タップを生成する予測タップ生成ステップと、予測係数生成ステップの処理により生成された予測係数セットと、予測タップ生成ステップの処理により生成された予測タップに基づいて、画素データを生成する画素データ生成ステップとを実行させる。
【0029】
本発明の画像データ処理装置および方法、記録媒体、並びにプログラムにおいては、複数の係数データをクラス分類するためのテーブル情報に基づいて、クラスコードが生成され、生成されたクラスコードに基づいて、予測係数セットと予測タップが生成される。そして、予測係数セットと、予測タップに基づいて、画素データが生成される。
【0031】
【発明の実施の形態】
次に、図4は、本発明を適用した復号装置60の構成例を示している。
【0032】
符号化データは、エントロピー復号回路61に供給され、エントロピー復号回路61は、符号化データを、エントロピー復号して、その結果得られるブロックごとの量子化DCT係数Qを、係数データ変換回路62に供給する。なお、符号化データには、図3のエントロピー復号回路11で説明した場合と同様に、エントロピー符号化された量子化DCT係数の他、量子化テーブルも含まれるが、量子化テーブルは、後述するように、必要に応じて、量子化DCT係数の復号に用いることが可能である。
【0033】
係数データ変換回路62は、エントロピー復号回路61からの量子化DCT係数Qと、後述する学習を行うことにより求められる予測係数を用いて、所定の予測演算を行うことにより、ブロックごとの量子化DCT係数を、8×8個の元の画素データのブロックに復号する。
【0034】
ブロック分解回路63は、係数データ変換回路62において得られる、復号されたブロック(復号ブロック)のブロック化を解くことで、復号画像を得て出力する。
【0035】
次に、図5のフローチャートを参照して、図4の復号装置60の処理について説明する。
【0036】
符号化データは、エントロピー復号回路61に順次供給され、ステップS1において、エントロピー復号回路61は、符号化データをエントロピー復号し、ブロックごとの量子化DCT係数Qを、係数データ変換回路62に供給する。係数データ変換回路62は、ステップS2において、エントロピー復号回路61からのブロックごとの量子化DCT係数Qを、予測係数を用いた予測演算を行うことにより、ブロックごとの画素値に復号し、ブロック分解回路63に供給する。ブロック分解回路63は、ステップS3において、係数データ変換回路62からの画素値のブロック(復号ブロック)のブロック化を解くブロック分解を行い、その結果得られる復号画像を出力して、処理を終了する。
【0037】
図6は、量子化DCT係数を画素値に復号する、図4の係数データ変換回路62のより詳細な構成例を示している。
【0038】
エントロピー復号回路61(図4)が出力するブロックごとの量子化DCT係数は、予測タップ抽出回路81およびクラス分類回路83に供給されるようになっている。
【0039】
予測タップ抽出回路81は、そこに供給される量子化DCT係数のブロック(以下、適宜、DCTブロックという)に対応する画素値のブロック(この画素値のブロックは、現段階では存在しないが、仮想的に想定される)(以下、適宜、画素ブロックという)を、順次、注目画素ブロックとし、さらに、その注目画素ブロックを構成する各画素を、例えば、いわゆるラスタスキャン順に、順次、注目画素とする。さらに、予測タップ抽出回路81は、注目画素の画素値を予測するのに用いる量子化DCT係数を、予測タップテーブル86を参照することで抽出し、予測タップとする。
【0040】
予測タップテーブル86は、注目画素についての予測タップとして抽出する量子化DCT係数の、注目画素に対する位置関係を表したパターン情報が登録されているパターンテーブルであり、予測タップ抽出回路81は、そのパターン情報に基づいて、量子化DCT係数を抽出し、注目画素についての予測タップを構成する。
【0041】
予測タップ抽出回路81は、8×8の64画素でなる画素ブロックを構成する各画素についての予測タップ、即ち、64画素それぞれについての64セットの予測タップを、上述のようにして構成し、積和演算回路85に供給する。
【0042】
クラス分類回路83は、コードブック82に格納されている代表ベクトルに基づいて、注目DCTブロックのDCT係数(AC係数)をベクトル量子化することにより、注目DCTブロックを幾つかのクラスのうちのいずれかに分類し、その結果得られるクラスに対応するクラスコードと画素位置モードを出力する(その処理の詳細は、図9と図10を参照して後述する)。画素位置モードは、注目画素ブロックの、注目画素となっている画素の位置に対応した動作モードを意味する。
【0043】
クラス分類回路83が出力するクラスコードは、予測係数テーブル84および予測タップテーブル86に、アドレスとして与えられる。
【0044】
予測係数テーブル84には、画素値の予測に用いられる予測係数が、クラス毎及び画素位置モード毎に予め格納されている。この予測係数テーブル84の作成方法については、図11と図12を参照して後述する。予測係数テーブル84は、クラス分類回路83から供給されるクラスコード、及び画素位置モードに応じて予測係数セットを選択し、積和演算回路85へ出力する。
【0045】
積和演算回路85は、予測タップ抽出回路81から供給される予測タップセットと、予測係数テーブル84から得られる予測係数セットの積和演算を行い、その結果を画素データ(PD)として出力する。
【0046】
すなわち、積和演算回路85は、予測タップセットがTD1、TD2、TD3、TD4、TD5、予測係数セットがFC1、FC2、FC3、FC4、FC5の場合、画素データPDを、次式で表されるように演算する。
(1)
【0047】
本実施の形態では、画素ブロックがクラス分類されるから、注目画素ブロックについて、1つのクラスコードが得られる。一方、画素ブロックは、本実施の形態では、8×8画素の64画素で構成されるから、注目画素ブロックについて、それを構成する64画素それぞれを復号するための64セットの予測係数が必要である。従って、予測係数テーブル84には、1つのクラスコード毎に、対応するアドレスに対して、64セットの予測係数が記憶されている。
【0048】
積和演算回路85は、予測タップ抽出回路81が出力する予測タップと、予測係数テーブル84が出力する予測係数とを取得し、その予測タップと予測係数とを用いて、式(1)に示した線形予測演算(積和演算)を行い、その結果得られる注目画素ブロックの8×8画素の画素値を、対応するDCTブロックの復号結果として、ブロック分解回路63(図4)に出力する。
【0049】
予測タップ抽出回路81においては、上述したように、注目画素ブロックの各画素が、順次、注目画素とされるが、積和演算回路85は、注目画素ブロックの、注目画素となっている画素の位置に対応した動作モード(ずなわち、画素位置モード)の処理を行う。
【0050】
例えば、注目画素ブロックの画素のうち、ラスタスキャン順で、i番目の画素を、piと表し、画素piが、注目画素となっている場合、積和演算回路85は、画素位置モード#iの処理を行う。
【0051】
具体的には、上述したように、予測係数テーブル84は、注目画素ブロックを構成する64画素それぞれを復号するための64セットの予測係数を格納しているが、そのうちの画素piを復号するための予測係数のセットをWiと表すと、積和演算回路85には、動作モードが、画素位置モード#iのときには、セットWiが出力される。同時に、予測タップ抽出回路81からは、画素位置モード#iの予測タップTiが出力され、積和演算回路85では、予測タップTiと、予測係数セットWiとを用いて、式(1)の積和演算を行い、その積和演算結果を、画素piの復号結果とする。
【0052】
予測タップテーブル86には、画素値の予測に用いられる予測タップの位置、すなわち、どのDCT係数を予測に用いるかの情報が予め格納されている。予測タップテーブル86は、クラス分類回路83から供給されるクラスコード、及び画素位置モードに応じて、予測タップ位置セットを予測タップ抽出回路81へ出力する。
【0053】
予測タップ抽出回路81は、予測タップテーブル86から供給される予測タップ位置セットに基づき、各予測タップ位置に対応するDCT係数データを抽出し、それらを予測タップセットとして積和演算回路85へ出力する。
【0054】
ここで、予測タップテーブル86においても、予測係数テーブル84について説明したのと同様の理由から、1つのクラスコードに対応するアドレスに対して、64セットのパターン情報(各画素位置モードごとのパターン情報)が記憶されている。
【0055】
次に、図7のフローチャートを参照して、図6の係数データ変換回路62の処理について説明する。
【0056】
エントロピー復号回路61が出力するブロックごとの量子化DCT係数は、予測タップ抽出回路81およびクラス分類回路83において順次受信され、そこに供給される量子化DCT係数のブロック(DCTブロック)に対応する画素ブロックが、順次、注目画素ブロックとされる。また、注目画素ブロックのが画素のうち、ラスタスキャン順で、まだ注目されていない画素が注目画素とされる。
【0057】
クラス分類回路83は、ステップS11において、コードブック82に格納されている代表ベクトルを用いて、注目DCTブロックをベクトル量子化することでクラス分類する。すなわち、クラス分類回路83は、入力された係数データとの距離が最小となる代表ベクトルをコードブック82から検索し、その代表ベクトルに対応するクラスコードをその係数データのクラスコードとする。クラス分類回路83は、クラスコードと画素位置モード(画素ブロック内における画素の位置)を、予測係数テーブル84および予測タップテーブル86に出力する。このクラス分類処理の詳細は、図9と図10を参照して後述する。
【0058】
予測タップテーブル86は、クラス分類回路83からアドレスとしてクラスコードと画素位置モードを受信すると、ステップS12において、そのアドレスに記憶されているパターン情報を読み出し、予測タップ抽出回路81に出力する。
【0059】
そして、ステップS13に進み、予測タップ抽出回路81は、予測タップテーブル86から供給されるクラスコード、および注目画素の画素位置モードに対応するパターン情報にしたがって、その注目画素の画素値を予測するのに用いる量子化DCT係数を抽出し、予測タップとして構成する。この予測タップは、予測タップ抽出回路81から積和演算回路85に供給される。
【0060】
予測係数テーブル84は、クラス分類回路83からアドレスとしてクラスコードと画素位置モードを受信すると、ステップS14おいて、そのアドレスに記憶されている予測係数を読み出し、積和演算回路85に出力する。
【0061】
積和演算回路85は、ステップS15において、クラスコードおよび注目画素に対する画素位置モードに対応する予測係数のセットを取得し、その予測係数のセットと、ステップS13で予測タップ抽出回路81から供給された予測タップとを用いて、式(1)に示した積和演算を行い、注目画素の画素値の復号値を得る。
【0062】
そして、ステップS16に進み、クラス分類回路83は、注目画素ブロックのすべての画素を、注目画素として処理したかどうかを判定する。ステップS16において、注目画素ブロックのすべての画素を、注目画素として、まだ処理していないと判定された場合、ステップS12に戻り、クラス分類回路83は、注目画素ブロックの画素のうち、ラスタスキャン順で、まだ、注目画素とされていない画素を、新たに注目画素として、以下、同様の処理を繰り返す。
【0063】
また、ステップS16において、注目画素ブロックのすべての画素を、注目画素として処理したと判定された場合、即ち、注目画素ブロックのすべての画素の復号値が得られた場合、積和演算回路85は、その復号値で構成される画素ブロック(復号ブロック)を、ブロック分解回路63(図4)に出力し、処理を終了する。
【0064】
このように、図7のフローチャートにしたがった処理は、係数データ変換回路62が、新たな注目画素ブロックを設定するごとに繰り返し行われる。
【0065】
図8は、コードブック82を生成する回路の構成例を示している。この例においては、コードブック生成回路91が、入力された周波数領域の係数データに基づいて、LBGアルゴリズムに基づいて学習し、複数の代表ベクトルからなるコードブックを生成する。
【0066】
図9は、クラス分類回路83の構成を示す。上述したように、この実施の形態では、入力された係数データとの距離が最小となる代表ベクトルをコードブック82から検索することでクラスコードが決定される。この場合における距離の定義としては様々なものが考えられるが、図9の例では、代表ベクトルと入力ベクトル(入力されたDCT係数データ)のなす角度が距離として用いられる。代表ベクトルをTk、入力ベクトルをSとすると、両者のなす角度θkは、次式により求めることができる。
【数1】
ただし、Tk・SはTkとSの内積を、||Tk||はTkのノルムを、||S||はSのノルムを、それぞれ表す。
【0067】
入力ベクトル抽出回路101は、注目ブロックの64個のDCT係数のうち、63個のAC係数を抽出し、入力ベクトルとして内積回路102とノルム算出回路105に供給する。内積回路102は、コードブック82内の代表ベクトルと、入力ベクトル抽出回路101からの入力ベクトルの内積を算出し、cosθ算出回路104に出力する。ノルム算出回路103は、コードブック82からの代表ベクトルのノルムを算出し、cosθ算出回路104に出力する。ノルム算出回路105は、入力ベクトル抽出回路101からの入力ベクトルのノルムを算出し、cosθ算出回路104に出力する。
【0068】
cosθ算出回路104は、内積回路102からの代表ベクトルと入力ベクトルの内積、ノルム算出回路103からの代表ベクトルのノルム、及びノルム算出回路105からの入力ベクトルのノルムからcosθkを(=(Tk・S)/(||Tk||||S||))求め、cos-1回路106に出力する。cos-1回路106は、角度θkを算出し、最小値選択回路107に出力する。最小値選択回路107は、入力ベクトルとすべての代表ベクトルとのなす角度の中から、角度が最も小さい代表ベクトルを選択し、その代表ベクトルの番号をクラスコードとして出力する。
【0069】
次に、図10のフローチャートを参照して、図9のクラス分類回路83の動作について説明する。最初に、ステップS31において、入力ベクトル抽出回路101は、入力されたDCT係数から入力ベクトルを抽出する。ステップS32において、代表ベクトルと入力ベクトルとの成す角度が算出される。
【0070】
すなわち、上述したように、内積回路102は、入力ベクトル抽出回路101より供給された入力ベクトルと、コードブック82より供給された1つの代表ベクトルとの内積を演算し、COSθ算出回路104に供給する。ノルム算出回路103は、コードブック82により供給された代表ベクトルのノルムを算出し、COSθ算出回路104に供給する。
【0071】
ノルム算出回路105は、入力ベクトル抽出回路101より供給された入力ベクトルのノルムを算出し、COSθ算出回路104に供給する。
【0072】
COSθ算出回路104は、内積回路102から供給された内積、並びにノルム算出回路103とノルム算出回路105より供給されたノルムに基づいて、COSθを算出し、COS-1回路106に供給する。COS-1回路106は、入力されたCOSθから角度θを算出する。
【0073】
ステップS33において、全ての代表ベクトルと入力ベクトルとの角度が算出されたか否かが最小値選択回路107により判定され、まだ、角度が算出されていない代表ベクトルが存在する場合には、ステップS31に戻り、それ以降の処理が繰り返し実行される。
【0074】
以上のようにして、入力ベクトルと、全ての代表ベクトルとの角度θが算出されたと判定された場合、ステップS34に進み、最小値選択回路107は、角度θが最小である代表ベクトルを選択する。そして、ステップS35において、最小値選択回路107は、ステップS34で選択した代表ベクトル番号をクラスコードとして出力する。
【0075】
図11に予測係数テーブル84を学習により生成する予測係数テーブル生成回路の構成の一例を示す。入力されたディジタルビデオ信号は、ブロック化回路121においてブロック化処理が施され、DCT回路122へ供給される。DCT回路122はブロック毎にDCT変換を行い、DCT係数を量子化回路123へ出力する。量子化回路123に供給された係数データはそこで量子化され、クラス分類回路124及び予測タップ抽出回路129に供給される。クラス分類回路124は、図9と図10を参照して説明した場合と同様に、テーブル130に記憶されているコードブックを利用して、注目ブロックからクラスコードを生成し、正規方程式加算回路125へ供給する。予測タップ抽出回路129は、予測タップテーブル126からの予測タップ位置情報に基づき、量子化回路123の出力である量子化DCT係数データから予測タップを抽出し、正規方程式加算回路125に出力する。
【0076】
ここで、正規方程式加算回路125において用いられる正規方程式について説明する。画素データPD1とその補正に用いる量子化DCT係数データQD1乃至QDnを用いた線形推定式を式(2)に示す。
PD1=w1QD1+w2QD2+…+wnQDn (2)
【0077】
学習前は予測係数w1乃至wnが未定である。この予測係数はクラス及び画素位置モード毎に用意する必要があるので、実際はその夫々について式を設定しなければならない。
【0078】
学習は複数の信号データに対して行う。データ数がmの場合、式(2)より、
PD1j=w1QD1j+w2QD2j+…+wnQDnj, j=1,2,…,m (3)
となる。m>nの場合、w1乃至wnは一意に決まらないので、誤差ベクトルEの要素をej=PD1j-(w1QD1j+w2QD2j+…+wnQDnj), j=1,2,…,m (4)
と定義して、下記に示す式を最小にする係数を求める。
【数2】
【0079】
すなわち、最小二乗法による解法である。ここで、式(5)のwiによる偏微分係数を求める。
【数3】
式(6)を0にするように各wiを求めれば良いので、
【数4】
として行列を用いると、
【数5】
となる。この方程式は一般に正規方程式と呼ばれている。正規方程式加算回路125はこの正規方程式の加算を行う。
【0080】
全ての学習データの入力が終了した後、正規方程式加算回路125は、予測係数決定回路127へ正規方程式データを出力する。予測係数決定回路127は、正規方程式を掃き出し法等の一般的な行列解法を用いてwiについて解き、予測係数を算出する。予測係数決定回路127は、算出された予測係数を予測係数メモリ128へ書き込む。
【0081】
上記のような学習の結果、予測係数メモリ128には、注目画素データPD1を推定するための、統計的に最も真値に近い予測係数が格納される。格納された各予測係数は、復号時にフィルタ係数として用いられる(予測係数メモリ128の記憶内容は、予測係数テーブル84として用いられる)。
【0082】
次に、図12のフローチャートを参照して、図11の予測係数テーブル生成回路の処理について説明する。ステップS51において、ブロック化回路121は、ブロック化処理を行う。ステップS52において、DCT回路122は、ブロック化回路121より供給された画素データをDCT処理し、量子化回路123に出力する。量子化回路123は、ステップS53において、DCT回路122より供給されたDCT係数を量子化し、クラス分類回路124と正規方程式加算回路125に出力する。
【0083】
ステップS54において、クラス分類回路124は、クラス分類処理を行い、得られたクラスコードを、正規方程式加算回路125に出力する。
【0084】
ステップS55において、予測タップテーブル126は、予測タップを抽出し、正規方程式加算回路125に出力する。正規方程式加算回路125は、ステップS56において、正規方程式加算処理を行う。
【0085】
ステップS57において、正規方程式加算回路125は、全てのブロックについての処理が終了したか否かを判定し、まだ終了していない場合には、ステップS52に戻り、それ以降の処理を繰り返し実行する。
【0086】
ステップS57において、全てのブロックについての処理が終了したと判定された場合、ステップS58に進み、予測係数決定回路127は、予測係数を算出し、予測係数メモリ128に供給し、記憶させる。
【0087】
以上においては、コードブック82に各ブロックの64個のDCT係数のうちの63個のAC係数を全て代表ベクトルとして用いるようにしたが、例えば、図13に示されるように、図中灰色で示される低域のAC係数のみを、代表ベクトルとして用いるようにすることも可能である。この場合、入力ベクトル抽出回路101は、対応する低域のAC係数のみを抽出する。
【0088】
この場合におけるクラス分類回路83とその処理は、図9と図10に示される場合と同様となる。
【0089】
図14は、コードブックを構成する代表ベクトルのさらに他の例を示している。この例では、注目ブロックだけでなく、注目ブロックの上下左右に隣接する周辺ブロックのDCT係数(低域のAC係数)も含めたベクトルによりコードブックが作成される。
【0090】
この実施の形態におけるクラス分類回路83の構成を図15に示す。本実施の形態では、代表ベクトルと入力ベクトルの差分自乗和が距離dと定義され、次式により求められる。ただし、入力ベクトルをS、代表ベクトルをTk、とする。
【数6】
【0091】
入力ベクトル抽出回路101は、ベクトルの成分となるDCT係数を抽出し、入力ベクトルとしてベクトル差分回路141に供給する。ベクトル差分回路141は、コードブック82からの代表ベクトルと、入力ベクトル抽出回路101からの入力ベクトルの差分を算出し、自乗和回路142に出力する。自乗和回路142は、代表ベクトルと入力ベクトルの差分の自乗和を求め、最小値選択回路107に出力する。最小値選択回路107は、入力ベクトルとすべての代表ベクトルとの距離の中から、最小値を選択し、それに対応する代表ベクトルの番号をクラスコードとして出力する。
【0092】
次に、図16のフローチャートを参照して図15のクラス分類回路83の処理について説明する。
【0093】
最初に、ステップS71において、入力ベクトル抽出回路101は、DCT係数から入力ベクトルを抽出する。ステップS72において、ベクトル差分回路141は、入力ベクトル抽出回路101より供給された入力ベクトルと、コードブック82より供給された代表ベクトルの差分を算出する。
【0094】
ベクトル差分回路141で演算されたベクトル差分の値は、自乗和回路142に供給され、その自乗和が演算される。演算された自乗和は、最小値選択回路107に供給される。
【0095】
ステップS73において、自乗和(距離)の演算が、全ての代表ベクトルについて行われたか否かが最小値選択回路107により判定され、まだ処理されていない代表ベクトルが存在する場合には、ステップS71に戻り、それ以降の処理が繰り返し実行される。
【0096】
ステップS73において、全ての代表ベクトルについての処理が行われたと判定された場合、ステップS74に進み、最小値選択回路107は、距離が最小の代表ベクトルを選択する。
【0097】
ステップS75において、最小値選択回路107は、ステップS74で選択された距離が最小の代表ベクトルの番号をクラスコードとして出力する。
【0098】
コードブック82に格納するベクトルの成分として、DCT係数をそのまま用いるのではなく、DCT係数から求まる特徴量を用いることができる。
【0099】
この実施の形態におけるクラス分類回路83の構成を図17に、その処理を図18に、それぞれ示す。
【0100】
図17のクラス分類回路83では、図15における入力ベクトル抽出回路101に代えて、特徴量抽出回路151が設けられている。また、図16のステップS71において、DCT係数から入力ベクトル抽出回路101により、入力ベクトルが抽出されるのに代えて、ステップS91において、特徴量抽出回路151により、DCT係数から特徴量が算出され、入力ベクトルとされる。以上の点を除き、その構成と処理は、図15と図16に示される場合と基本的に同様である。
【0101】
図19は、検出される特徴量の例を表している。この例においては、8×8個の画素が、水平方向と垂直方向において低域の領域、水平方向が高域で垂直方向が低域の領域、垂直方向が高域で水平方向が低域の領域、並びに水平方向と垂直方向の両方向において高域の領域という、4つの領域に分割され、各領域のDCT係数の自乗和の値P1乃至P4が特徴量とされる。
【0102】
以上においては、LBGアルゴリズム等の学習により作成されたコードブック82を用いるようにしたが、このコードブック82に代えて、テンプレートテーブルを用いることが可能である。以下に、この実施の形態について説明する。
【0103】
図20は、係数データ変換回路62のこの場合における構成例を表している。
この係数データ変換回路62は、図6に示される係数データ変換回路62のコードブック82をテンプレートテーブル161に代えた点を除き、図6における場合と同様の構成とされている。
【0104】
テンプレートテーブル161には、クラス分類の際に用いられるテンプレートが予め格納されている。本実施の形態では、テンプレートは、ブロック内の63個のAC係数から成るベクトルとされる。ただし、後述する別の実施の形態に示すとおり、テンプレートはこれに限るものではない。
【0105】
図21は、テンプレートテーブル161を生成するテンプレートテーブル生成回路の構成を示す。このテンプレートテーブル生成回路には、例えば強いエッジを含むブロックなど、量子化された場合に歪みの大きいブロックの画素データが入力される。入力された1ブロックの画素データは、DCT回路171によりDCT係数に変換され、その中から、AC係数抽出回路172により63個のAC係数だけが抽出され、テンプレートメモリ173に供給され、格納される。
【0106】
次に、図22のフローチャートを参照して、図21のテンプレートテーブル生成回路の処理について説明する。
【0107】
ステップS111において、DCT回路171は、入力ブロックをDCT処理し、AC係数抽出回路172に出力する。ステップS112において、AC係数抽出回路172は、各ブロックの63個のAC係数だけを抽出し、テンプレートメモリ173に供給し、格納させる。
【0108】
ステップS113において、全ブロックについての処理が終了したか否かが判定され、まだ処理されていないブロックが残っている場合には、ステップS111に戻り、それ以降の処理が繰り返し実行される。ステップS113において、全てのブロックについての処理が終了したと判定された場合、処理は終了される。
【0109】
図23は、図20におけるクラス分離回路83の構成例を表している。図9におけるコードブック82に代えて、テンプレートテーブル161が設けられている。また、最小値選択回路107の出力が閾値判定回路181に供給され、閾値判定回路181の出力がクラスコードとして出力される。その他の基本的構成は、図9におけるクラス分離回路83と同様の構成とされている。
【0110】
閾値判定回路181は、最小値選択回路107より供給された角度の最小値が、予め設定された閾値よりも小さければ、そのテンプレートの番号をクラスコードとして出力する。その最小値が閾値よりも大きかった場合は、クラス分類を行わずに、学習した予測係数(モノクラス係数)を用いることとし、モノクラスコードを出力する。閾値としては、例えば、係数データと量子化スケールから求まる係数の真値の範囲の値が設定される。
【0111】
次に、図23のクラス分類回路83の処理について、図24のフローチャートを参照して説明する。
【0112】
ステップS121において、入力ベクトル抽出回路101は、入力されたDCT係数から入力ベクトルを抽出し、内積回路102とノルム算出回路105に出力する。ステップS122において、テンプレートと入力ベクトルの成す角度の算出処理が実行される。
【0113】
すなわち、内積回路102は、テンプレートテーブル161に記憶されているテンプレートと、入力ベクトル抽出回路101より供給された入力ベクトルとの内積を演算し、COSθ算出回路104に出力する。ノルム算出回路103は、テンプレートテーブル161より供給されたテンプレートのノルムを算出し、COSθ算出回路104に供給する。ノルム算出回路105は、入力ベクトル抽出回路101より供給された入力ベクトルのノルムを算出し、COSθ算出回路104に出力する。
【0114】
COSθ算出回路104は、内積回路102の出力、ノルム算出回路103の出力、並びにノルム算出回路105の出力より、COSθを算出し、COS-1回路106に出力する。
【0115】
COS-1回路106は、入力されたCOSθから角度θを算出し、最小値選択回路107に出力する。
【0116】
ステップS123において、最小値選択回路107は、全てのテンプレートについての処理が行われたか否かについて判定し、まだ行われていないテンプレートが残っている場合には、ステップS121に戻り、それ以降の処理が繰り返し実行される。
【0117】
ステップS123において、全てのテンプレートと入力ベクトルとの角度の算出処理が行われたと判定された場合、ステップS124に進み、最小値選択回路107は、角度が最小となるテンプレートを選択し、そのテンプレート番号と最小の角度を閾値判定回路181に出力する。
【0118】
閾値判定回路181は、ステップS125において、最小値選択回路107により選択された最小の角度と、予め設定されている所定の閾値とを比較し、最初の角度θが閾値より小さいか否かを判定する。
【0119】
角度θが閾値より小さい場合には、ステップS126に進み、閾値判定回路181は、最小の角度のテンプレート番号をクラスコードとして出力する。ステップS125において、最小の角度θが閾値より小さくないと判定された場合、ステップS127に進み、閾値判定回路181は、モノクラスコードを出力する。
すなわち、このとき、平均的なクラスに分類するためのクラスコードが出力されることになる。
【0120】
このテンプレートテーブルを生成する場合にも、図13に示されるように、低域のDCT係数だけを用いてテンプレートテーブル161を生成することができる。この場合のクラス分類回路83とその処理は、図23と図24に示される場合と同様となる。
【0121】
更に、テンプレートテーブル161を生成するのに、図14に示されるように、注目ブロックの上下左右に隣接する周辺ブロックの低域のDCT係数を用いるようにすることもできる。
【0122】
この場合のクラス分離回路83とその処理は、図25と図26に示される。
【0123】
この例では、テンプレートテーブル161のテンプレートと入力ベクトルの差分の自乗和が距離dとされる。また、この例においては、最小値選択回路107の出力が、図23における場合と同様に、閾値判定回路181に供給されている。その他の構成は、図15における場合と同様である。
【0124】
図25のクラス分離回路83の処理は、図26のステップS141乃至S147の処理となるが、その基本的な処理は、図24のステップS121乃至ステップS127の処理と同様の処理となる。但し、図24のステップS122におけるテンプレートと入力ベクトルの成す角度が算出する処理が、ステップS142においては、テンプレートと入力ベクトルとの距離を算出する処理とされる。そして、ステップS124において、最小の角度のテンプレートが選択される処理が、ステップS144においては、最小の距離のテンプレートを選択する処理とされる。
【0125】
その他の処理は、図24における場合と同様である。
【0126】
コードブックに代えて、テンプレートを用いる場合にも、DCT係数に代えて、特徴量をテンプレートとすることが可能である。この場合、図21に示されるテンプレートテーブル生成回路は、図27に示されるように構成される。なお、この場合の特徴量も、例えば、図19に示されるように構成される。
【0127】
すなわち、図21のテンプレートテーブル生成回路におけるAC係数抽出回路172は、図27の例においては、特徴量抽出回路201に変更されている。その他の構成は、図21における場合と同様である。
【0128】
図28は、図27のテンプレートテーブル生成回路の処理例を表している。ステップS161において、DCT回路171は、入力画像をDCT処理し、特徴量抽出回路201に出力する。特徴量抽出回路201は、ステップS162において、DCT回路171より供給されたDCT係数から特徴量を抽出し、テンプレートメモリ173に供給し、記憶させる。
【0129】
以上の処理は、ステップS163において、全てのブロックについての処理が終了したと判定されるまで繰り返し実行される。
【0130】
図29は、このように特徴量を用いて、テンプレートを構成する場合におけるクラス分類回路83の構成例を表している。この構成例においては、図25におけるクラス分類回路83の入力ベクトル抽出回路101に代えて、特徴量抽出回路211が設けられている。その他の構成は、図25における場合と同様である。
【0131】
図30は、図29のクラス分類回路83の処理例を表している。そのステップS181乃至ステップS187の処理は、図26におけるステップS141乃至ステップS147の処理と基本的に同様の処理である。
【0132】
但し、図26のステップS141において、DCT係数から入力ベクトルが抽出されるのに対して、図30のステップS181においては、特徴量抽出回路211がDCT形成から特徴量を算出し、入力ベクトルとする処理を行っている。その他のステップS182乃至ステップS187の処理は、図26のステップS142乃至ステップS147の処理と同様の処理である。
【0133】
上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【0134】
図31は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0135】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク305やROM303に予め記録しておくことができる。
【0136】
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体311に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体311は、いわゆるパッケージソフトウエアとして提供することができる。
【0137】
なお、プログラムは、上述したようなリムーバブル記録媒体311からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部308で受信し、内蔵するハードディスク305にインストールすることができる。
【0138】
コンピュータは、CPU(Central Processing Unit)302を内蔵している。CPU302には、バス301を介して、入出力インタフェース310が接続されており、CPU302は、入出力インタフェース310を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部307が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)303に格納されているプログラムを実行する。あるいは、また、CPU302は、ハードディスク305に格納されているプログラム、衛星若しくはネットワークから転送され、通信部308で受信されてハードディスク305にインストールされたプログラム、またはドライブ309に装着されたリムーバブル記録媒体311から読み出されてハードディスク305にインストールされたプログラムを、RAM(Random Access Memory)304にロードして実行する。これにより、CPU302は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU302は、その処理結果を、必要に応じて、例えば、入出力インタフェース310を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部306から出力、あるいは、通信部308から送信、さらには、ハードディスク305に記録等させる。
【0139】
なお、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0140】
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0141】
さらに、本実施の形態では、静止画を圧縮符号化するJPEG符号化された画像を対象としたが、本発明は、動画を圧縮符号化する、例えば、MPEG符号化された画像を対象とすることも可能である。
【0142】
また、本実施の形態では、少なくとも、DCT処理を行うJPEG符号化された符号化データの復号を行うようにしたが、本発明は、その他の直交変換または周波数変換によって、ブロック単位(ある所定の単位)で変換されたデータの復号や変換に適用可能である。即ち、本発明は、例えば、サブバンド符号化されたデータや、フーリエ変換されたデータ等を復号したり、それらの量子化誤差等を低減したデータに変換する場合にも適用可能である。
【0143】
【発明の効果】
本発明の画像データ処理装置および方法、記録媒体、並びにプログラムによれば、複数の係数データをクラス分類するためのテーブル情報に基づいて、クラスコードが生成され、生成されたクラスコードに基づいて、予測係数セットと予測タップが生成される。そして、予測係数セットと、予測タップに基づいて、画素データが生成される。従って、情報量を増大させることなく、量子化誤差を低減したより良好な復号画像を得ることが可能となる。
【図面の簡単な説明】
【図1】従来のJPEG符号化装置の構成を示すブロック図である。
【図2】量子化テーブルの例を示す図である。
【図3】従来のJPEG復号装置の構成を示すブロック図である。
【図4】本発明を適用した復号装置の構成例を示すブロック図である。
【図5】図4の復号装置の動作を説明するフローチャートである。
【図6】図4の係数データ変換回路の構成例を示すブロック図である。
【図7】図6の係数データ変換回路の係数データ変換処理を説明するフローチャートである。
【図8】図6のコードブックの生成回路の構成を示すブロック図である。
【図9】図6のクラス分類回路の構成例を示すブロック図である。
【図10】図9のクラス分類回路の動作を説明するフローチャートである。
【図11】図6の予測係数テーブルを生成する予測係数テーブル生成回路の構成例を示すブロック図である。
【図12】図11の予測係数テーブル生成回路の動作を説明するフローチャートである。
【図13】低域のAC係数を説明する図である。
【図14】周辺ブロックのDCT係数を説明する図である。
【図15】図6のクラス分類回路の他の構成例を示すブロック図である。
【図16】図15のクラス分類回路の動作を説明するフローチャートである。
【図17】図6のクラス分類回路の更に他の構成例を示すブロック図である。
【図18】図17のクラス分類回路の動作を説明するフローチャートである。
【図19】特徴量の例を説明する図である。
【図20】図4の係数データ変換回路の他の構成例を示すブロック図である。
【図21】図20のテンプレートテーブルを生成するテンプレートテーブル生成回路の構成例を示すブロック図である。
【図22】図21のテンプレートテーブル生成回路の動作を説明するフローチャートである。
【図23】図20のクラス分類回路の構成例を示すブロック図である。
【図24】図23のクラス分類回路の動作を説明するフローチャートである。
【図25】図20のクラス分類回路の他の構成例を示すブロック図である。
【図26】図25のクラス分類回路の動作を説明するフローチャートである。
【図27】図20のテンプレートを生成するテンプレートテーブル生成回路の他の構成例を示すブロック図である。
【図28】図27のテンプレートテーブル生成回路の動作を説明するフローチャートである。
【図29】図20のクラス分類回路の更に他の構成例を示すブロック図である。
【図30】図29のクラス分類回路の動作を説明するフローチャートである。
【図31】本発明を適用したコンピュータの構成例を示すブロック図である。
【符号の説明】
60 復号装置, 61 エントロビー復号回路, 62 係数データ変換回路, 63 ブロック分解回路, 81 予測タップ抽出回路, 82 コードブック, 83 クラス分類回路, 84 予測係数テーブル, 85 積和演算回路, 86 予測タップテーブル[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image data processing apparatus and method, a recording medium, and a program, and more particularly, to an image data processing apparatus and method, a recording medium, and a program that enable decoding of compressed image data with a simple configuration.
[0002]
[Prior art]
For example, since digital image data has a large amount of data, a large-capacity recording medium or transmission medium is required to perform recording or transmission as it is. In general, therefore, image data is compressed and encoded to reduce the amount of data before recording or transmission.
[0003]
As a method for compressing and encoding an image, for example, there are a JPEG (Joint Photographic Experts Group) method which is a compression encoding method for still images, an MPEG (Moving Picture Experts Group) method which is a compression encoding method for moving images, and the like. .
[0004]
For example, the encoding of image data by the JPEG method is performed as shown in FIG.
[0005]
The image data to be encoded is input to the
[0006]
The
[0007]
FIG. 2 shows an example of a quantization table used in the
In general, the quantization table takes into account human visual characteristics and quantizes low-frequency DCT coefficients that are more important and finer quantization, and low-frequency high-frequency DCT coefficients that are coarsely quantized. Thus, it is possible to suppress the deterioration of the image quality of the image and perform efficient compression.
[0008]
The
[0009]
FIG. 3 shows a configuration of an example of a conventional JPEG decoding apparatus that decodes encoded data output from the JPEG encoding apparatus of FIG.
[0010]
The encoded data is input to the entropy decoding circuit 11, and the entropy decoding circuit 11 separates the encoded data into entropy-coded quantized DCT coefficients and a quantization table. Further, the entropy decoding circuit 11 entropy-decodes the entropy-coded quantized DCT coefficients and supplies the resulting quantized DCT coefficients to the
[0011]
[Problems to be solved by the invention]
In compression coding using orthogonal transform such as DCT as described above, if the quantization for each coefficient data is made rough in order to increase the compression rate, the error of the decoded image with respect to the original image increases, and the decoded image is degraded. Arise. The deterioration appears in the form of blurring of the image, block distortion, and mosquito noise around the edge, which is a serious problem.
[0012]
The present invention has been made in view of such a situation, and makes it possible to obtain a good decoded image with a reduced quantization error without increasing the amount of information.
[0013]
[Means for Solving the Problems]
The present invention of The image data processing apparatus includes a holding unit that holds table information for classifying a plurality of coefficient data, a class code generating unit that generates a class code based on the table information held in the holding unit, a class A prediction coefficient generation unit that generates a prediction coefficient set based on the class code generated by the code generation unit; a prediction tap generation unit that generates a prediction tap based on the class code generated by the class code generation unit; A prediction coefficient set generated by the prediction coefficient generation unit and a pixel data generation unit that generates pixel data based on the prediction tap generated by the prediction tap generation unit.
[0014]
The holding unit can hold a plurality of coefficient data or a template describing a relationship with a feature amount corresponding to the coefficient data as table information.
[0015]
The holding means holds, as table information, a plurality of coefficient data or a code book in which a vector consisting of feature amounts corresponding to the coefficient data is stored, and the class code generating means uses the code book to vectorize the coefficient data. The class code can be generated by quantization.
[0016]
The code book may be generated based on an LBG algorithm.
[0017]
The class code generation means can perform a threshold determination process.
[0018]
The present invention of The image data processing method includes a holding step for holding table information for classifying a plurality of coefficient data, a class code generating step for generating a class code based on the table information held by the processing of the holding step, A prediction coefficient generation step for generating a prediction coefficient set based on the class code generated by the processing of the class code generation step, and a prediction tap is generated based on the class code generated by the processing of the class code generation step Including a prediction tap generation step, a prediction coefficient set generated by the processing of the prediction coefficient generation step, and a pixel data generation step of generating pixel data based on the prediction tap generated by the processing of the prediction tap generation step It is characterized by.
[0019]
The holding step can hold a plurality of coefficient data or a template describing a relationship with a feature amount corresponding to the coefficient data as table information.
[0020]
The holding step holds, as table information, a plurality of coefficient data or a code book in which a vector consisting of feature amounts corresponding to the coefficient data is stored, and the class code generating step uses the code book to vectorize the coefficient data. The class code can be generated by quantization.
[0021]
The code book may be generated based on an LBG algorithm.
[0022]
In the class code generation step, a threshold determination process can be performed.
[0023]
The present invention of The program of the recording medium is a program of an image data processing apparatus that decodes quantized image data after being converted into coefficient data by orthogonal transform processing, and includes table information for classifying a plurality of coefficient data. A holding step, a class code generation step for generating a class code based on the table information held by the processing of the holding step, and a prediction coefficient based on the class code generated by the processing of the class code generation step A prediction coefficient generation step for generating a set, a prediction tap generation step for generating a prediction tap based on the class code generated by the processing of the class code generation step, and a prediction coefficient set generated by the processing of the prediction coefficient generation step And generated by the process of the prediction tap generation step Based on the measurement tap, characterized in that it comprises a pixel data generation step of generating pixel data.
[0024]
The present invention of A program stores table information for classifying a plurality of coefficient data in a computer that controls an image data processing apparatus that decodes quantized image data after being converted into coefficient data by orthogonal transform processing. A class code generation step for generating a class code based on the step and the table information held by the processing of the holding step, and a prediction coefficient set is generated based on the class code generated by the processing of the class code generation step A prediction coefficient generation step, a prediction tap generation step for generating a prediction tap based on the class code generated by the processing of the class code generation step, a prediction coefficient set generated by the processing of the prediction coefficient generation step, and a prediction Prediction data generated by the tap generation step process Based on the flop, to execute a pixel data generation step of generating pixel data.
[0029]
The present invention of In the image data processing apparatus and method, the recording medium, and the program, a class code is generated based on table information for classifying a plurality of coefficient data, and a prediction coefficient set is generated based on the generated class code. A prediction tap is generated. Then, pixel data is generated based on the prediction coefficient set and the prediction tap.
[0031]
DETAILED DESCRIPTION OF THE INVENTION
Next, FIG. 4 shows a configuration example of a decoding device 60 to which the present invention is applied.
[0032]
The encoded data is supplied to the
[0033]
The coefficient
[0034]
The
[0035]
Next, processing of the decoding device 60 in FIG. 4 will be described with reference to the flowchart in FIG.
[0036]
The encoded data is sequentially supplied to the
[0037]
FIG. 6 shows a more detailed configuration example of the coefficient
[0038]
The quantized DCT coefficients for each block output from the entropy decoding circuit 61 (FIG. 4) are supplied to the prediction
[0039]
The prediction
[0040]
The prediction tap table 86 is a pattern table in which pattern information representing the positional relationship of the quantized DCT coefficient extracted as a prediction tap for the pixel of interest with respect to the pixel of interest is registered. Based on the information, a quantized DCT coefficient is extracted, and a prediction tap for the pixel of interest is configured.
[0041]
The prediction
[0042]
The
[0043]
The class code output from the
[0044]
In the prediction coefficient table 84, prediction coefficients used for pixel value prediction are stored in advance for each class and each pixel position mode. A method for creating the prediction coefficient table 84 will be described later with reference to FIGS. 11 and 12. The prediction coefficient table 84 selects a prediction coefficient set according to the class code supplied from the
[0045]
The product-
[0046]
That is, the product-
(1)
[0047]
In this embodiment, since the pixel block is classified, one class code is obtained for the target pixel block. On the other hand, since the pixel block is composed of 64 pixels of 8 × 8 pixels in the present embodiment, 64 sets of prediction coefficients for decoding each of the 64 pixels constituting the pixel block of interest are required. is there. Therefore, the prediction coefficient table 84 stores 64 sets of prediction coefficients for the corresponding addresses for each class code.
[0048]
The product-
[0049]
In the prediction
[0050]
For example, among the pixels of the target pixel block, the i-th pixel in the raster scan order is set to p. i And the pixel p i However, if it is the pixel of interest, the product-
[0051]
Specifically, as described above, the prediction coefficient table 84 stores 64 sets of prediction coefficients for decoding each of the 64 pixels constituting the pixel block of interest. i A set of prediction coefficients for decoding i When the operation mode is the pixel position mode #i, the product-
[0052]
The prediction tap table 86 stores in advance information on the position of a prediction tap used for prediction of pixel values, that is, which DCT coefficient is used for prediction. The prediction tap table 86 outputs a prediction tap position set to the prediction
[0053]
The prediction
[0054]
Here, in the prediction tap table 86 as well, for the same reason as described for the prediction coefficient table 84, 64 sets of pattern information (pattern information for each pixel position mode) for the address corresponding to one class code. ) Is stored.
[0055]
Next, processing of the coefficient
[0056]
The quantized DCT coefficients for each block output from the
[0057]
In step S11, the
[0058]
When the prediction tap table 86 receives the class code and the pixel position mode as an address from the
[0059]
In step S13, the prediction
[0060]
When the prediction coefficient table 84 receives the class code and the pixel position mode as an address from the
[0061]
In step S15, the product-
[0062]
In step S16, the
[0063]
If it is determined in step S16 that all the pixels of the pixel block of interest have been processed as pixels of interest, that is, if the decoded values of all the pixels of the pixel block of interest are obtained, the product-
[0064]
As described above, the processing according to the flowchart of FIG. 7 is repeatedly performed every time the coefficient
[0065]
FIG. 8 shows a configuration example of a circuit that generates the
[0066]
FIG. 9 shows the configuration of the
[Expression 1]
T k ・ S is T k The inner product of S and S k || is T k || S || represents the norm of S.
[0067]
The input
[0068]
The cos θ
[0069]
Next, the operation of the
[0070]
That is, as described above, the
[0071]
The
[0072]
The
[0073]
In step S33, the minimum
[0074]
As described above, when it is determined that the angle θ between the input vector and all the representative vectors has been calculated, the process proceeds to step S34, and the minimum
[0075]
FIG. 11 shows an example of the configuration of a prediction coefficient table generation circuit that generates the prediction coefficient table 84 by learning. The input digital video signal is subjected to blocking processing in the
[0076]
Here, the normal equation used in the normal
PD 1 = W 1 QD 1 + W 2 QD 2 + ... + w n QD n (2)
[0077]
Prediction coefficient w before learning 1 Thru w n Is undecided. Since this prediction coefficient needs to be prepared for each class and pixel position mode, in practice, an equation must be set for each of them.
[0078]
Learning is performed on a plurality of signal data. When the number of data is m, from equation (2)
PD 1j = W 1 QD 1j + W 2 QD 2j + ... + w n QD nj , j = 1,2, ..., m (3)
It becomes. If m> n, w 1 Thru w n Is not uniquely determined, so the element of error vector E is e j = PD 1j -(w 1 QD 1j + W 2 QD 2j + ... + w n QD nj ), j = 1,2, ..., m (4)
And a coefficient that minimizes the following formula is obtained.
[Expression 2]
[0079]
That is, the solution is based on the least square method. Where w in equation (5) i Obtain the partial differential coefficient by.
[Equation 3]
Each w so that Equation (6) is 0 i So
[Expression 4]
Using a matrix as
[Equation 5]
It becomes. This equation is generally called a normal equation. The normal
[0080]
After completing the input of all the learning data, the normal
[0081]
As a result of the learning as described above, the
[0082]
Next, processing of the prediction coefficient table generation circuit of FIG. 11 will be described with reference to the flowchart of FIG. In step S51, the blocking
[0083]
In step S54, the
[0084]
In step S55, the prediction tap table 126 extracts prediction taps and outputs them to the normal
[0085]
In step S57, the normal
[0086]
If it is determined in step S57 that the processing for all the blocks has been completed, the process proceeds to step S58, where the prediction
[0087]
In the above description, all 63 AC coefficients of the 64 DCT coefficients of each block are used as the representative vectors in the
[0088]
The
[0089]
FIG. 14 shows still another example of the representative vector constituting the code book. In this example, a codebook is created not only by the block of interest but also by a vector including DCT coefficients (low-frequency AC coefficients) of neighboring blocks adjacent to the block of interest in the vertical and horizontal directions.
[0090]
The configuration of the
[Formula 6]
[0091]
The input
[0092]
Next, processing of the
[0093]
First, in step S71, the input
[0094]
The value of the vector difference calculated by the
[0095]
In step S73, the minimum
[0096]
If it is determined in step S73 that the processing has been performed for all the representative vectors, the process proceeds to step S74, and the minimum
[0097]
In step S75, the minimum
[0098]
As a vector component stored in the
[0099]
FIG. 17 shows the configuration of the
[0100]
In the
[0101]
FIG. 19 shows an example of detected feature values. In this example, 8 × 8 pixels have a low region in the horizontal and vertical directions, a high region in the horizontal direction and a low region in the vertical direction, a high region in the vertical direction and a low region in the horizontal direction. The region is divided into four regions, that is, a high region in both the horizontal direction and the vertical direction, and the square sum values P1 to P4 of the DCT coefficients of each region are used as feature amounts.
[0102]
In the above description, the
[0103]
FIG. 20 shows a configuration example of the coefficient
The coefficient
[0104]
In the template table 161, templates used for classification are stored in advance. In the present embodiment, the template is a vector composed of 63 AC coefficients in the block. However, the template is not limited to this as shown in another embodiment described later.
[0105]
FIG. 21 shows a configuration of a template table generation circuit that generates the template table 161. The template table generation circuit receives pixel data of a block having a large distortion when quantized, for example, a block including a strong edge. The input pixel data of one block is converted into DCT coefficients by the
[0106]
Next, processing of the template table generation circuit of FIG. 21 will be described with reference to the flowchart of FIG.
[0107]
In step S <b> 111, the
[0108]
In step S113, it is determined whether or not the processing has been completed for all the blocks. If there is a block that has not yet been processed, the process returns to step S111, and the subsequent processing is repeatedly executed. If it is determined in step S113 that the processing for all the blocks has been completed, the processing is terminated.
[0109]
FIG. 23 shows a configuration example of the
[0110]
If the minimum value of the angle supplied from the minimum
[0111]
Next, the processing of the
[0112]
In step S <b> 121, the input
[0113]
That is, the
[0114]
The
[0115]
COS -1 The
[0116]
In step S123, the minimum
[0117]
If it is determined in step S123 that the calculation processing of the angles between all the templates and the input vector has been performed, the process proceeds to step S124, and the minimum
[0118]
In step S125, the
[0119]
If the angle θ is smaller than the threshold value, the process proceeds to step S126, and the threshold
That is, at this time, a class code for classifying into an average class is output.
[0120]
Even when this template table is generated, the template table 161 can be generated using only the low-frequency DCT coefficients, as shown in FIG. The
[0121]
Furthermore, as shown in FIG. 14, the template table 161 may be generated by using low-frequency DCT coefficients of neighboring blocks adjacent to the target block in the vertical and horizontal directions.
[0122]
The
[0123]
In this example, the square sum of the difference between the template of the template table 161 and the input vector is set as the distance d. In this example, the output of the minimum
[0124]
The processing of the
[0125]
Other processes are the same as those in FIG.
[0126]
Even when a template is used instead of the code book, the feature quantity can be used as a template instead of the DCT coefficient. In this case, the template table generation circuit shown in FIG. 21 is configured as shown in FIG. Note that the feature amount in this case is also configured as shown in FIG. 19, for example.
[0127]
That is, the AC
[0128]
FIG. 28 shows a processing example of the template table generation circuit of FIG. In
[0129]
The above processing is repeatedly executed until it is determined in step S163 that the processing for all the blocks has been completed.
[0130]
FIG. 29 illustrates a configuration example of the
[0131]
FIG. 30 shows a processing example of the
[0132]
However, in step S141 in FIG. 26, the input vector is extracted from the DCT coefficient, whereas in step S181 in FIG. 30, the feature
[0133]
The series of processes described above can be performed by hardware or software. When a series of processing is performed by software, a program constituting the software is installed in a general-purpose computer or the like.
[0134]
FIG. 31 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
[0135]
The program can be recorded in advance on a
[0136]
Alternatively, the program is stored temporarily or on a
[0137]
The program is installed in the computer from the
[0138]
The computer includes a CPU (Central Processing Unit) 302. An input /
[0139]
In this specification, the processing steps for describing a program for causing a computer to perform various types of processing do not necessarily have to be processed in chronological order according to the order described in the flowchart, and are executed in parallel or individually. Processing to be performed (for example, parallel processing or object processing) is also included.
[0140]
Further, the program may be processed by one computer or may be distributedly processed by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.
[0141]
Furthermore, in this embodiment, a JPEG encoded image that compresses and encodes a still image is targeted. However, the present invention targets a moving image that is compressed and encoded, for example, an MPEG encoded image. It is also possible.
[0142]
In the present embodiment, at least the JPEG-encoded encoded data for performing the DCT process is decoded. However, the present invention is based on other orthogonal transforms or frequency transforms in units of blocks (a predetermined predetermined value). It can be applied to decoding and conversion of data converted in units. That is, the present invention can be applied to, for example, the case where sub-band encoded data, Fourier-transformed data, or the like is decoded or converted into data with reduced quantization error.
[0143]
【The invention's effect】
The present invention of According to the image data processing device and method, the recording medium, and the program, a class code is generated based on table information for classifying a plurality of coefficient data, and a prediction coefficient set is generated based on the generated class code. And a prediction tap is generated. Then, pixel data is generated based on the prediction coefficient set and the prediction tap. Therefore, it is possible to obtain a better decoded image with a reduced quantization error without increasing the amount of information.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a conventional JPEG encoding apparatus.
FIG. 2 is a diagram illustrating an example of a quantization table.
FIG. 3 is a block diagram showing a configuration of a conventional JPEG decoding apparatus.
FIG. 4 is a block diagram illustrating a configuration example of a decoding device to which the present invention has been applied.
FIG. 5 is a flowchart for explaining the operation of the decoding device of FIG. 4;
6 is a block diagram illustrating a configuration example of a coefficient data conversion circuit in FIG. 4;
7 is a flowchart for explaining coefficient data conversion processing of the coefficient data conversion circuit of FIG. 6;
8 is a block diagram showing a configuration of a code book generation circuit of FIG. 6; FIG.
9 is a block diagram illustrating a configuration example of a class classification circuit in FIG. 6;
10 is a flowchart for explaining the operation of the class classification circuit of FIG. 9;
11 is a block diagram illustrating a configuration example of a prediction coefficient table generation circuit that generates the prediction coefficient table of FIG. 6;
12 is a flowchart for explaining the operation of the prediction coefficient table generation circuit of FIG.
FIG. 13 is a diagram illustrating low-frequency AC coefficients.
FIG. 14 is a diagram illustrating DCT coefficients of peripheral blocks.
15 is a block diagram illustrating another configuration example of the class classification circuit of FIG. 6;
16 is a flowchart for explaining the operation of the class classification circuit of FIG. 15;
17 is a block diagram illustrating still another configuration example of the class classification circuit in FIG. 6;
18 is a flowchart for explaining the operation of the class classification circuit of FIG. 17;
FIG. 19 is a diagram illustrating an example of a feature amount.
20 is a block diagram showing another configuration example of the coefficient data conversion circuit of FIG. 4;
21 is a block diagram illustrating a configuration example of a template table generation circuit that generates the template table of FIG. 20;
22 is a flowchart for explaining the operation of the template table generation circuit of FIG.
23 is a block diagram illustrating a configuration example of the class classification circuit of FIG. 20;
24 is a flowchart for explaining the operation of the class classification circuit of FIG. 23;
25 is a block diagram illustrating another configuration example of the class classification circuit in FIG. 20;
FIG. 26 is a flowchart for explaining the operation of the class classification circuit of FIG. 25;
27 is a block diagram illustrating another configuration example of the template table generation circuit that generates the template of FIG. 20;
FIG. 28 is a flowchart for explaining the operation of the template table generation circuit of FIG. 27;
29 is a block diagram showing still another configuration example of the class classification circuit of FIG. 20;
30 is a flowchart for explaining the operation of the class classification circuit of FIG. 29;
FIG. 31 is a block diagram illustrating a configuration example of a computer to which the present invention has been applied.
[Explanation of symbols]
60 decoding device, 61 entropy decoding circuit, 62 coefficient data conversion circuit, 63 block decomposition circuit, 81 prediction tap extraction circuit, 82 codebook, 83 class classification circuit, 84 prediction coefficient table, 85 product-sum operation circuit, 86 prediction tap table
Claims (12)
複数の前記係数データをクラス分類するためのテーブル情報を保持する保持手段と、
前記保持手段に保持されている前記テーブル情報に基づいて、クラスコードを生成するクラスコード生成手段と、
前記クラスコード生成手段により生成された前記クラスコードに基づいて、予測係数セットを生成する予測係数生成手段と、
前記クラスコード生成手段により生成された前記クラスコードに基づいて、予測タップを生成する予測タップ生成手段と、
前記予測係数生成手段により生成された前記予測係数セットと、前記予測タップ生成手段により生成された前記予測タップに基づいて、画素データを生成する画素データ生成手段と
を備えることを特徴とする画像データ処理装置。In an image data processing apparatus that decodes quantized image data after being converted into coefficient data by orthogonal transform processing,
Holding means for holding table information for classifying a plurality of coefficient data;
Class code generating means for generating a class code based on the table information held in the holding means;
Prediction coefficient generation means for generating a prediction coefficient set based on the class code generated by the class code generation means;
Based on the class code generated by the class code generation means, a prediction tap generation means for generating a prediction tap;
Image data comprising: the prediction coefficient set generated by the prediction coefficient generation means; and pixel data generation means for generating pixel data based on the prediction tap generated by the prediction tap generation means. Processing equipment.
ことを特徴とする請求項1に記載の画像データ処理装置。The image data processing apparatus according to claim 1, wherein the holding unit holds, as the table information, a plurality of coefficient data, or a template describing a relationship with a feature amount corresponding to the coefficient data. .
前記クラスコード生成手段は、前記コードブックを用いて前記係数データをベクトル量子化して、前記クラスコードを生成する
ことを特徴とする請求項1に記載の画像データ処理装置。The holding means holds, as the table information, a plurality of the coefficient data, or a code book in which a vector composed of feature amounts corresponding to the coefficient data is stored,
The image data processing apparatus according to claim 1, wherein the class code generation unit generates the class code by vector quantization of the coefficient data using the code book.
ことを特徴とする請求項3に記載の画像データ処理装置。The image data processing apparatus according to claim 3, wherein the code book is generated based on an LBG algorithm.
ことを特徴とする請求項1に記載の画像データ処理装置。The image data processing apparatus according to claim 1, wherein the class code generation unit performs a threshold determination process.
複数の前記係数データをクラス分類するためのテーブル情報を保持する保持ステップと、
前記保持ステップの処理により保持されている前記テーブル情報に基づいて、クラスコードを生成するクラスコード生成ステップと、
前記クラスコード生成ステップの処理により生成された前記クラスコードに基づいて、予測係数セットを生成する予測係数生成ステップと、
前記クラスコード生成ステップの処理により生成された前記クラスコードに基づいて、予測タップを生成する予測タップ生成ステップと、
前記予測係数生成ステップの処理により生成された前記予測係数セットと、前記予測タップ生成ステップの処理により生成された前記予測タップに基づいて、画素データを生成する画素データ生成ステップと
を含むことを特徴とする画像データ処理方法。In an image data processing method of an image data processing apparatus that decodes quantized image data after being converted into coefficient data by orthogonal transform processing,
Holding step for holding table information for classifying a plurality of coefficient data;
A class code generating step for generating a class code based on the table information held by the holding step;
A prediction coefficient generation step for generating a prediction coefficient set based on the class code generated by the processing of the class code generation step;
A prediction tap generation step for generating a prediction tap based on the class code generated by the processing of the class code generation step;
A pixel data generation step for generating pixel data based on the prediction coefficient set generated by the processing of the prediction coefficient generation step and the prediction tap generated by the processing of the prediction tap generation step. An image data processing method.
ことを特徴とする請求項6に記載の画像データ処理方法。The image data processing method according to claim 6, wherein the holding step holds, as the table information, a plurality of coefficient data or a template describing a relationship with a feature amount corresponding to the coefficient data. .
前記クラスコード生成ステップは、前記コードブックを用いて前記係数データをベクトル量子化して、前記クラスコードを生成する
ことを特徴とする請求項7に記載の画像データ処理方法。The holding step holds, as the table information, a plurality of the coefficient data, or a code book in which a vector composed of feature amounts corresponding to the coefficient data is stored,
The image data processing method according to claim 7, wherein the class code generation step generates the class code by vector quantization of the coefficient data using the code book.
ことを特徴とする請求項8に記載の画像データ処理方法。The image data processing method according to claim 8, wherein the code book is generated based on an LBG algorithm.
ことを特徴とする請求項6に記載の画像データ処理方法。The image data processing method according to claim 6, wherein the class code generation step performs a threshold determination process.
複数の前記係数データをクラス分類するためのテーブル情報を保持する保持ステップと、
前記保持ステップの処理により保持されている前記テーブル情報に基づいて、クラスコードを生成するクラスコード生成ステップと、
前記クラスコード生成ステップの処理により生成された前記クラスコードに基づいて、予測係数セットを生成する予測係数生成ステップと、
前記クラスコード生成ステップの処理により生成された前記クラスコードに基づいて、予測タップを生成する予測タップ生成ステップと、
前記予測係数生成ステップの処理により生成された前記予測係数セットと、前記予測タップ生成ステップの処理により生成された前記予測タップに基づいて、画素データを生成する画素データ生成ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。A program of an image data processing apparatus for decoding quantized image data after being converted into coefficient data by orthogonal transform processing,
Holding step for holding table information for classifying a plurality of coefficient data;
A class code generating step for generating a class code based on the table information held by the holding step;
A prediction coefficient generation step for generating a prediction coefficient set based on the class code generated by the processing of the class code generation step;
A prediction tap generation step for generating a prediction tap based on the class code generated by the processing of the class code generation step;
And a pixel data generation step of generating pixel data based on the prediction coefficient set generated by the processing of the prediction coefficient generation step and the prediction tap generated by the processing of the prediction tap generation step. A recording medium on which a computer-readable program is recorded.
複数の前記係数データをクラス分類するためのテーブル情報を保持する保持ステップと、
前記保持ステップの処理により保持されている前記テーブル情報に基づいて、クラスコードを生成するクラスコード生成ステップと、
前記クラスコード生成ステップの処理により生成された前記クラスコードに基づいて、予測係数セットを生成する予測係数生成ステップと、
前記クラスコード生成ステップの処理により生成された前記クラスコードに基づいて、予測タップを生成する予測タップ生成ステップと、
前記予測係数生成ステップの処理により生成された前記予測係数セットと、前記予測タップ生成ステップの処理により生成された前記予測タップに基づいて、画素データを生成する画素データ生成ステップと
を実行させるプログラム。A computer that controls an image data processing apparatus that decodes quantized image data after being converted into coefficient data by orthogonal transform processing,
Holding step for holding table information for classifying a plurality of coefficient data;
A class code generating step for generating a class code based on the table information held by the holding step;
A prediction coefficient generation step for generating a prediction coefficient set based on the class code generated by the processing of the class code generation step;
A prediction tap generation step for generating a prediction tap based on the class code generated by the processing of the class code generation step;
A program that executes the prediction coefficient set generated by the processing of the prediction coefficient generation step and the pixel data generation step of generating pixel data based on the prediction tap generated by the processing of the prediction tap generation step.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001139704A JP4649770B2 (en) | 2001-05-10 | 2001-05-10 | Image data processing apparatus and method, recording medium, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001139704A JP4649770B2 (en) | 2001-05-10 | 2001-05-10 | Image data processing apparatus and method, recording medium, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002335405A JP2002335405A (en) | 2002-11-22 |
JP4649770B2 true JP4649770B2 (en) | 2011-03-16 |
Family
ID=18986436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001139704A Expired - Fee Related JP4649770B2 (en) | 2001-05-10 | 2001-05-10 | Image data processing apparatus and method, recording medium, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4649770B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4784386B2 (en) * | 2006-05-01 | 2011-10-05 | 富士ゼロックス株式会社 | Decoding device, inverse quantization method, and program |
JP4656452B2 (en) * | 2008-05-20 | 2011-03-23 | ソニー株式会社 | Image signal processing device, image signal processing method, prediction coefficient generation device, prediction coefficient generation processing method, and program for causing computer to execute each method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06237179A (en) * | 1992-12-01 | 1994-08-23 | Nippon Telegr & Teleph Corp <Ntt> | Design method for vector quantizer and vector quantizer |
JPH0795591A (en) * | 1993-09-21 | 1995-04-07 | Sony Corp | Digital picture signal processing unit |
JPH10313458A (en) * | 1997-05-12 | 1998-11-24 | Sony Corp | Image data converter and method, predictive coefficient generator and method and predictive coefficient storage medium |
JPH10313403A (en) * | 1997-05-12 | 1998-11-24 | Sony Corp | Still image pickup device, color copying device and display device |
JP2000152233A (en) * | 1998-11-13 | 2000-05-30 | Sony Corp | Image information converter and conversion method |
-
2001
- 2001-05-10 JP JP2001139704A patent/JP4649770B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06237179A (en) * | 1992-12-01 | 1994-08-23 | Nippon Telegr & Teleph Corp <Ntt> | Design method for vector quantizer and vector quantizer |
JPH0795591A (en) * | 1993-09-21 | 1995-04-07 | Sony Corp | Digital picture signal processing unit |
JPH10313458A (en) * | 1997-05-12 | 1998-11-24 | Sony Corp | Image data converter and method, predictive coefficient generator and method and predictive coefficient storage medium |
JPH10313403A (en) * | 1997-05-12 | 1998-11-24 | Sony Corp | Still image pickup device, color copying device and display device |
JP2000152233A (en) * | 1998-11-13 | 2000-05-30 | Sony Corp | Image information converter and conversion method |
Also Published As
Publication number | Publication date |
---|---|
JP2002335405A (en) | 2002-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3354030B1 (en) | Methods and apparatuses for encoding and decoding digital images through superpixels | |
US8223837B2 (en) | Learning-based image compression | |
JP5957559B2 (en) | Video encoding / decoding method and apparatus using large size transform unit | |
US9204154B2 (en) | Image encoding device and image decoding device | |
JP2010171729A (en) | Device, method and program for image prediction encoding, device, method and program for image prediction decoding, and encoding/decoding system and method | |
US20200228840A1 (en) | Methods and Apparatuses for Encoding and Decoding Digital Images or Video Streams | |
WO2020261314A1 (en) | Image encoding method and image decoding method | |
KR20100016272A (en) | Image compression and decompression using the pixon method | |
JP4649770B2 (en) | Image data processing apparatus and method, recording medium, and program | |
Zhang et al. | Unified learning-based lossy and lossless jpeg recompression | |
KR20130079253A (en) | Method and apparatus for compressing images | |
HUE033524T2 (en) | Method for compression of data | |
JP4517448B2 (en) | Data processing apparatus, data processing method, and recording medium | |
JP2009272969A (en) | Image encoding apparatus and image encoding method, and image decoding apparatus and image decoding method | |
JP4678454B2 (en) | Data processing apparatus, data processing method, and recording medium | |
JP4505729B2 (en) | Image processing apparatus, image processing method, program, and recording medium | |
JP5351094B2 (en) | Image coding method, image coding apparatus, and image coding program | |
JP4538699B2 (en) | Data processing apparatus, data processing method, and recording medium | |
JP4538698B2 (en) | Data processing apparatus, data processing method, and recording medium | |
JP4154647B2 (en) | Data processing apparatus, data processing method, program, and recording medium | |
Arya Devi et al. | Compression of gray scale images using linear prediction on wavelet coefficients | |
JP4697111B2 (en) | Image comparison apparatus and method, and image search apparatus and method | |
JP2003153275A (en) | Image processing apparatus and method, recording medium, and program | |
JP4174111B2 (en) | Encoding method and apparatus | |
WO2021117082A1 (en) | Image encoding method, image decoding method, image encoding device, image decoding device, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080311 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100707 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100914 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101026 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101116 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101129 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131224 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |