JP4752088B2 - Data processing apparatus, data processing method, and recording medium - Google Patents

Data processing apparatus, data processing method, and recording medium Download PDF

Info

Publication number
JP4752088B2
JP4752088B2 JP2000135357A JP2000135357A JP4752088B2 JP 4752088 B2 JP4752088 B2 JP 4752088B2 JP 2000135357 A JP2000135357 A JP 2000135357A JP 2000135357 A JP2000135357 A JP 2000135357A JP 4752088 B2 JP4752088 B2 JP 4752088B2
Authority
JP
Japan
Prior art keywords
data
circuit
tap
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
Application number
JP2000135357A
Other languages
Japanese (ja)
Other versions
JP2001320587A (en
Inventor
哲二郎 近藤
俊彦 浜松
秀雄 中屋
丈晴 西片
秀樹 大塚
威 國弘
孝文 森藤
真史 内田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority to JP2000135357A priority Critical patent/JP4752088B2/en
Application filed by Sony Corp filed Critical Sony Corp
Priority to CN2004100558118A priority patent/CN1578159B/en
Priority to CNB2004100558103A priority patent/CN100568739C/en
Priority to CNB018019870A priority patent/CN1169303C/en
Priority to EP01930004A priority patent/EP1282236B1/en
Priority to KR1020027000250A priority patent/KR100731708B1/en
Priority to PCT/JP2001/003873 priority patent/WO2001086820A1/en
Priority to US10/030,591 priority patent/US7035471B2/en
Publication of JP2001320587A publication Critical patent/JP2001320587A/en
Priority to US11/348,720 priority patent/US7206452B2/en
Priority to US11/584,789 priority patent/US7289671B2/en
Priority to US11/584,772 priority patent/US7283678B2/en
Priority to US11/584,483 priority patent/US7336829B2/en
Application granted granted Critical
Publication of JP4752088B2 publication Critical patent/JP4752088B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Editing Of Facsimile Originals (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(A)は、従来のJPEG符号化装置の一例の構成を示している。
【0006】
符号化対象の画像データは、ブロック化回路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に供給される。
【0007】
量子化回路3は、所定の量子化テーブルにしたがって、DCT回路2からのDCT係数を量子化し、その量子化結果(以下、適宜、量子化DCT係数という)を、量子化に用いた量子化テーブルとともに、エントロピー符号化回路4に供給する。
【0008】
ここで、図1(B)は、量子化回路3において用いられる量子化テーブルの例を示している。量子化テーブルには、一般に、人間の視覚特性を考慮して、重要性の高い低周波数のDCT係数は細かく量子化し、重要性の低い高周波数のDCT係数は粗く量子化するような量子化ステップが設定されており、これにより、画像の画質の劣化を抑えて、効率の良い圧縮が行われるようになっている。
【0009】
エントロピー符号化回路4は、量子化回路3からの量子化DCT係数に対して、例えば、ハフマン符号化等のエントロピー符号化処理を施して、量子化回路3からの量子化テーブルを付加し、その結果得られる符号化データを、JPEG符号化結果として出力する。
【0010】
次に、図1(C)は、図1(A)のJPEG符号化装置が出力する符号化データを復号する、従来のJPEG復号装置の一例の構成を示している。
【0011】
符号化データは、エントロピー復号回路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からの復号ブロックのブロック化を解くことで、復号画像を得て出力する。
【0012】
【発明が解決しようとする課題】
図1(A)のJPEG符号化装置では、その量子化回路3において、ブロックの量子化に用いる量子化テーブルの量子化ステップを大きくすることにより、符号化データのデータ量を削減することができる。即ち、高圧縮を実現することができる。
【0013】
しかしながら、量子化ステップを大きくすると、いわゆる量子化誤差も大きくなることから、図1(C)のJPEG復号装置で得られる復号画像の画質が劣化する。即ち、復号画像には、ぼけや、ブロック歪み、モスキートノイズ等が顕著に現れる。
【0014】
従って、符号化データのデータ量を削減しながら、復号画像の画質を劣化させないようにするには、あるいは、符号化データのデータ量を維持して、復号画像の画質を向上させるには、JPEG復号した後に、何らかの画質向上のための処理を行う必要がある。
【0015】
しかしながら、JPEG復号した後に、画質向上のための処理を行うことは、処理が煩雑になり、最終的に復号画像が得られるまでの時間も長くなる。
【0016】
本発明は、このような状況に鑑みてなされたものであり、JPEG符号化された画像等から、効率的に、画質の良い復号画像を得ること等ができるようにするものである。
【0017】
【課題を解決するための手段】
本発明の第1のデータ処理装置は、学習を行うことにより求められたタップ係数を取得する取得手段と、タップ係数および変換データを用いて、所定の予測演算を行うことにより、変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データを得演算手段とを備えることを特徴とする。
【0018】
第1のデータ処理装置において、演算手段には、タップ係数および変換データを用いて、線形1次予測演算を行わせることができる。
【0019】
第1のデータ処理装置には、タップ係数を記憶している記憶手段をさらに設けることができ、この場合、取得手段には、記憶手段から、タップ係数を取得させることができる。
【0020】
第1のデータ処理装置において、変換データは、元のデータを、直交変換または周波数変換し、さらに量子化することにより得られたものとすることができる。
【0021】
第1のデータ処理装置には、変換データを逆量子化する逆量子化手段をさらに設けることができ、演算手段には、逆量子化された変換データを用いて予測演算を行わせることができる。
【0022】
第1のデータ処理装置において、変換データは、元のデータを、少なくとも、離散コサイン変換したものとすることができる。
【0023】
第1のデータ処理装置には、処理データのうちの、注目している注目データを予測するのにタップ係数とともに用いる変換データを抽出し、予測タップとして出力する予測タップ抽出手段をさらに設けることができ、この場合、演算手段には、予測タップおよびタップ係数を用いて予測演算を行わせることができる。
【0024】
第1のデータ処理装置には、注目データを、幾つかのクラスのうちのいずれかにクラス分類するのに用いる変換データを抽出し、クラスタップとして出力するクラスタップ抽出手段と、クラスタップに基づいて、注目データのクラスを求めるクラス分類を行うクラス分類手段とをさらに設けることができ、この場合、演算手段には、予測タップおよび注目データのクラスに対応するタップ係数を用いて予測演算を行わせることができる。
【0025】
第1のデータ処理装置において、演算手段では、所定の予測演算を行うことにより、元のデータに、その品質を向上させる処理を施した処理データを得るようにすることができる。
【0026】
第1のデータ処理装置において、タップ係数は、タップ係数および変換データを用いて、所定の予測演算を行うことにより得られる処理データの予測値の予測誤差が、統計的に最小になるように、学習を行うことにより得られたものとすることができる。
【0027】
第1のデータ処理装置において、元のデータは、動画または静止画の画像データとすることができる。
【0028】
第1のデータ処理装置において、演算手段では、所定の予測演算を行うことにより、画像データに、その画質を向上させる処理を施した処理データを得るようにすることができる。
【0029】
第1のデータ処理装置において、演算手段では、画像データの時間または空間方向の解像度を向上させた処理データを得るようにすることができる。
【0030】
本発明の第1のデータ処理方法は、学習を行うことにより求められたタップ係数を取得する取得ステップと、タップ係数および変換データを用いて、所定の予測演算を行うことにより、変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データを得演算ステップとを備えることを特徴とする。
【0031】
本発明の第1の記録媒体は、学習を行うことにより求められたタップ係数を取得する取得ステップと、タップ係数および変換データを用いて、所定の予測演算を行うことにより、変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データを得演算ステップとを備えるプログラムが記録されていることを特徴とする。
【0032】
本発明の第2のデータ処理装置は、教師となる教師データに、所定の処理に基づく処理を施し、準教師データを得る準教師データ生成手段と、準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データを生成する生徒データ生成手段と、タップ係数および生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習手段とを備えることを特徴とする。
【0033】
第2のデータ処理装置において、学習手段には、タップ係数および生徒データを用いて線形1次予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行わせることができる。
【0034】
第2のデータ処理装置において、生徒データ生成手段には、準教師データを、直交変換または周波数変換し、さらに量子化することにより、生徒データを生成させることができる。
【0035】
第2のデータ処理装置において、生徒データ生成手段には、準教師データを、直交変換または周波数変換して量子化し、さらに逆量子化することにより、生徒データを生成させることができる。
【0036】
第2のデータ処理装置において、生徒データ生成手段には、準教師データを、少なくとも、離散コサイン変換することにより、生徒データを生成させることができる。
【0037】
第2のデータ処理装置には、教師データのうちの、注目している注目教師データを予測するのにタップ係数とともに用いる生徒データを抽出し、予測タップとして出力する予測タップ抽出手段をさらに設けることができ、この場合、学習手段には、予測タップおよびタップ係数を用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行わせることができる。
【0038】
第2のデータ処理装置には、注目教師データを、幾つかのクラスのうちのいずれかにクラス分類するのに用いる生徒データを抽出し、クラスタップとして出力するクラスタップ抽出手段と、クラスタップに基づいて、注目教師データのクラスを求めるクラス分類を行うクラス分類手段とをさらに設けることができ、この場合、学習手段には、予測タップおよび注目教師データのクラスに対応するタップ係数を用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行わせ、クラスごとのタップ係数を求めさせることができる。
【0039】
第2のデータ処理装置において、生徒データ生成手段には、準教師データを、所定の単位ごとに、少なくとも、直交変換処理または周波数変換することにより、生徒データを生成させることができる。
【0040】
第2のデータ処理装置において、準教師データ生成手段には、教師データに、その品質を劣化させる処理を施すことにより、準教師データを生成させることができる。
【0041】
第2のデータ処理装置において、教師データは、動画または静止画の画像データとすることができる。
【0042】
第2のデータ処理装置において、準教師データ生成手段には、画像データに、その画質を劣化させる処理を施すことにより、準教師データを生成させることができる。
【0043】
第2のデータ処理装置において、準教師データ生成手段には、画像データの時間または空間方向の解像度を劣化させた準教師データを生成させることができる。
【0044】
本発明の第2のデータ処理方法は、教師となる教師データに、所定の処理に基づく処理を施し、準教師データを得る準教師データ生成ステップと、準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データを生成する生徒データ生成ステップと、タップ係数および生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習ステップとを備えることを特徴とする。
【0045】
本発明の第2の記録媒体は、教師となる教師データに、所定の処理に基づく処理を施し、準教師データを得る準教師データ生成ステップと、準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データを生成する生徒データ生成ステップと、タップ係数および生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、タップ係数を求める学習ステップとを備えるプログラムが記録されていることを特徴とする。
【0046】
本発明の第1のデータ処理装置およびデータ処理方法、並びに記録媒体においては、学習を行うことにより求められたタップ係数が取得され、そのタップ係数および変換データを用いて、所定の予測演算が行われることにより、変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データが得られる。
【0047】
本発明の第2のデータ処理装置およびデータ処理方法、並びに記録媒体においては、教師となる教師データに、所定の処理に基づく処理が施され、その結果得られる準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データが生成される。そして、タップ係数および生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習が行われ、タップ係数が求められる。
【0048】
【発明の実施の形態】
図2は、本発明を適用した画像伝送システムの一実施の形態の構成例を示している。
【0049】
伝送すべき画像データは、エンコーダ21に供給されるようになっており、エンコーダ21は、そこに供給される画像データを、例えば、JPEG符号化し、符号化データとする。即ち、エンコーダ21は、例えば、前述の図1(A)に示したJPEG符号化装置と同様に構成されており、画像データをJPEG符号化する。エンコーダ21がJPEG符号化を行うことにより得られる符号化データは、例えば、半導体メモリ、光磁気ディスク、磁気ディスク、光ディスク、磁気テープ、相変化ディスクなどでなる記録媒体23に記録され、あるいは、また、例えば、地上波、衛星回線、CATV(Cable Television)網、インターネット、公衆回線などでなる伝送媒体24を介して伝送される。
【0050】
デコーダ22は、記録媒体23または伝送媒体24を介して提供される符号化データを受信して、高画質の画像データに復号する。この復号化された高画質の画像データは、例えば、図示せぬモニタに供給されて表示等される。
【0051】
次に、図3は、図2のデコーダ22の構成例を示している。
【0052】
符号化データは、エントロピー復号回路31に供給されるようになっており、エントロピー復号回路31は、符号化データを、エントロピー復号して、その結果得られるブロックごとの量子化DCT係数Qを、係数変換回路32に供給する。なお、符号化データには、図1(C)のエントロピー復号回路11で説明した場合と同様に、エントロピー符号化された量子化DCT係数の他、量子化テーブルも含まれるが、この量子化テーブルは、後述するように、必要に応じて、量子化DCT係数の復号に用いることが可能である。
【0053】
係数変換回路32は、エントロピー復号回路31からの量子化DCT係数Qと、後述する学習を行うことにより求められるタップ係数を用いて、所定の予測演算を行うことにより、ブロックごとの量子化DCT係数を、8×8画素の元のブロックに復号し、かつ、さらに、その元のブロックの画質を向上させる処理を施したデータを得る。即ち、元のブロックは8×8画素で構成されるが、係数変換回路32は、タップ係数を用いた予測演算を行うことにより、その8×8画素のブロックの横および縦方向の空間解像度を、いずれも2倍にした16×16画素でなるブロックを得る。従って、係数変換回路32は、ここでは、図4に示すように、8×8の量子化DCT係数で構成されるブロックを、16×16画素で構成されるブロックに復号して出力する。
【0054】
ブロック分解回路33は、係数変換回路32において得られる16×16画素のブロックのブロック化を解くことで、空間解像度を向上させた復号画像を得て出力する。
【0055】
次に、図5のフローチャートを参照して、図3のデコーダ22の処理について説明する。
【0056】
符号化データは、エントロピー復号回路31に順次供給され、ステップS1において、エントロピー復号回路31は、符号化データをエントロピー復号し、ブロックごとの量子化DCT係数Qを、係数変換回路32に供給する。係数変換回路32は、ステップS2において、エントロピー復号回路31からのブロックごとの量子化DCT係数Qを、タップ係数を用いた予測演算を行うことにより、ブロックごとの画素値に復号し、かつ、そのブロックの空間解像度を向上させた、いわば高解像度のブロックを得て、ブロック分解回路33に供給する。ブロック分解回路33は、ステップS3において、係数変換回路32からの、空間解像度が向上された画素値のブロックのブロック化を解くブロック分解を行い、その結果得られる高解像度の復号画像を出力して、処理を終了する。
【0057】
次に、図3の係数変換回路32では、例えば、クラス分類適応処理を利用して、量子化DCT係数を、画素値に復号し、さらに、その空間解像度を向上させた画像を得ることができる。
【0058】
クラス分類適応処理は、クラス分類処理と適応処理とからなり、クラス分類処理によって、データを、その性質に基づいてクラス分けし、各クラスごとに適応処理を施すものであり、適応処理は、以下のような手法のものである。なお、ここでは、説明を簡単にするために、適応処理について、量子化DCT係数を、元の画像に復号する場合を例に説明する。
【0059】
この場合、適応処理では、例えば、量子化DCT係数と、所定のタップ係数との線形結合により、元の画素の予測値を求めることで、量子化DCT係数が、元の画素値に復号される。
【0060】
具体的には、例えば、いま、ある画像を教師データとするとともに、その画像を、ブロック単位でDCT処理し、さらに量子化して得られる量子化DCT係数を生徒データとして、教師データである画素の画素値yの予測値E[y]を、幾つかの量子化DCT係数x1,x2,・・・の集合と、所定のタップ係数w1,w2,・・・の線形結合により規定される線形1次結合モデルにより求めることを考える。この場合、予測値E[y]は、次式で表すことができる。
【0061】
E[y]=w11+w22+・・・
・・・(1)
【0062】
式(1)を一般化するために、タップ係数wjの集合でなる行列W、生徒データxijの集合でなる行列X、および予測値E[yj]の集合でなる行列Y’を、
【数1】

Figure 0004752088
で定義すると、次のような観測方程式が成立する。
【0063】
XW=Y’
・・・(2)
ここで、行列Xの成分xijは、i件目の生徒データの集合(i件目の教師データyiの予測に用いる生徒データの集合)の中のj番目の生徒データを意味し、行列Wの成分wjは、生徒データの集合の中のj番目の生徒データとの積が演算されるタップ係数を表す。また、yiは、i件目の教師データを表し、従って、E[yi]は、i件目の教師データの予測値を表す。なお、式(1)の左辺におけるyは、行列Yの成分yiのサフィックスiを省略したものであり、また、式(1)の右辺におけるx1,x2,・・・も、行列Xの成分xijのサフィックスiを省略したものである。
【0064】
そして、この観測方程式に最小自乗法を適用して、元の画素値yに近い予測値E[y]を求めることを考える。この場合、教師データとなる真の画素値yの集合でなる行列Y、および画素値yに対する予測値E[y]の残差eの集合でなる行列Eを、
【0065】
【数2】
Figure 0004752088
で定義すると、式(2)から、次のような残差方程式が成立する。
【0066】
XW=Y+E
・・・(3)
【0067】
この場合、元の画素値yに近い予測値E[y]を求めるためのタップ係数wjは、自乗誤差
【数3】
Figure 0004752088
を最小にすることで求めることができる。
【0068】
従って、上述の自乗誤差をタップ係数wjで微分したものが0になる場合、即ち、次式を満たすタップ係数wjが、元の画素値yに近い予測値E[y]を求めるため最適値ということになる。
【0069】
【数4】
Figure 0004752088
・・・(4)
【0070】
そこで、まず、式(3)を、タップ係数wjで微分することにより、次式が成立する。
【0071】
【数5】
Figure 0004752088
・・・(5)
【0072】
式(4)および(5)より、式(6)が得られる。
【0073】
【数6】
Figure 0004752088
・・・(6)
【0074】
さらに、式(3)の残差方程式における生徒データxij、タップ係数wj、教師データyi、および残差eiの関係を考慮すると、式(6)から、次のような正規方程式を得ることができる。
【0075】
【数7】
Figure 0004752088
・・・(7)
【0076】
なお、式(7)に示した正規方程式は、行列(共分散行列)Aおよびベクトルvを、
【数8】
Figure 0004752088
で定義するとともに、ベクトルWを、数1で示したように定義すると、式
AW=v
・・・(8)
で表すことができる。
【0077】
式(7)における各正規方程式は、生徒データxijおよび教師データyiのセットを、ある程度の数だけ用意することで、求めるべきタップ係数wjの数Jと同じ数だけたてることができ、従って、式(8)を、ベクトルWについて解くことで(但し、式(8)を解くには、式(8)における行列Aが正則である必要がある)、最適なタップ係数(ここでは、自乗誤差を最小にするタップ係数)wjを求めることができる。なお、式(8)を解くにあたっては、例えば、掃き出し法(Gauss-Jordanの消去法)などを用いることが可能である。
【0078】
以上のようにして、最適なタップ係数wjを求めておき、さらに、そのタップ係数wjを用い、式(1)により、元の画素値yに近い予測値E[y]を求めるのが適応処理である。
【0079】
なお、例えば、教師データとして、JPEG符号化する画像と同一画質の画像を用いるとともに、生徒データとして、その教師データをDCTおよび量子化して得られる量子化DCT係数を用いた場合、タップ係数としては、JPEG符号化された画像データを、元の画像データに復号するのに、予測誤差が、統計的に最小となるものが得られることになる。
【0080】
従って、JPEG符号化を行う際の圧縮率を高くしても、即ち、量子化に用いる量子化ステップを粗くしても、適応処理によれば、予測誤差が、統計的に最小となる復号処理が施されることになり、実質的に、JPEG符号化された画像の復号処理と、その画質を向上させるための処理(以下、適宜、向上処理という)とが、同時に施されることになる。その結果、圧縮率を高くしても、復号画像の画質を維持することができる。
【0081】
また、例えば、教師データとして、JPEG符号化する画像よりも高画質の画像を用いるとともに、生徒データとして、その教師データの画質を、JPEG符号化する画像と同一画質に劣化させ、さらに、DCTおよび量子化して得られる量子化DCT係数を用いた場合、タップ係数としては、JPEG符号化された画像データを高画質の画像データに復号するのに、予測誤差が、統計的に最小となるものが得られることになる。
【0082】
従って、この場合も、適応処理によれば、JPEG符号化された画像の復号処理と、その画質をより向上させるための向上処理とが、同時に施されることになる。なお、上述したことから、教師データまたは生徒データとなる画像の画質を変えることで、復号画像の画質を任意のレベルとするタップ係数を得ることができる。
【0083】
図6は、以上のようなクラス分類適応処理により、量子化DCT係数を画素値に復号する、図3の係数変換回路32の第1の構成例を示している。
【0084】
エントロピー復号回路31(図3)が出力するブロックごとの量子化DCT係数は、予測タップ抽出回路41およびクラスタップ抽出回路42に供給されるようになっている。
【0085】
予測タップ抽出回路41は、そこに供給される8×8の量子化DCT係数のブロック(以下、適宜、DCTブロックという)に対応する高画質の画素値のブロック(この画素値のブロックは、現段階では存在しないが、仮想的に想定される)(以下、適宜、高画質ブロックという)(本実施の形態では、上述したように、16×16画素のブロック)を、順次、注目高画質ブロックとし、さらに、その注目高画質ブロックを構成する各画素を、例えば、いわゆるラスタスキャン順に、順次、注目画素とする。さらに、予測タップ抽出回路41は、注目画素の画素値を予測するのに用いる量子化DCT係数を抽出し、予測タップとする。
【0086】
即ち、予測タップ抽出回路41は、例えば、図7に示すように、注目画素が属する高画質ブロックに対応するDCTブロックのすべての量子化DCT係数、即ち、8×8の64個の量子化DCT係数を、予測タップとして抽出する。従って、本実施の形態では、ある高画質ブロックのすべての画素について、同一の予測タップが構成される。但し、予測タップは、注目画素ごとに、異なる量子化DCT係数で構成することが可能である。
【0087】
予測タップ抽出回路41において得られる、高画質ブロックを構成する各画素についての予測タップ、即ち、16×16の256画素それぞれについての256セットの予測タップは、積和演算回路45に供給される。但し、本実施の形態では、上述したように、高画質ブロックのすべての画素について、同一の予測タップが構成されるので、実際には、1つの高画質ブロックに対して、1セットの予測タップを、積和演算回路45に供給すれば良い。
【0088】
クラスタップ抽出回路42は、注目画素を、幾つかのクラスのうちのいずれかに分類するためのクラス分類に用いる量子化DCT係数を抽出して、クラスタップとする。
【0089】
なお、JPEG符号化では、画像が、8×8画素のブロック(以下、適宜、画素ブロックという)ごとに符号化(DCT処理および量子化)されることから、ある画素ブロックを高画質化した高画質ブロックに属する画素は、例えば、すべて同一のクラスにクラス分類することとする。従って、クラスタップ抽出回路42は、ある高画質ブロックの各画素については、同一のクラスタップを構成する。即ち、クラスタップ抽出回路42は、例えば、予測タップ抽出回路41における場合と同様に、図7に示したような、注目画素が属する高画質ブロックに対応するDCTブロックの8×8個のすべての量子化DCT係数を、クラスタップとして抽出する。
【0090】
ここで、高画質ブロックに属する各画素を、すべて同一のクラスにクラス分類するということは、その高画質ブロックをクラス分類することと等価である。従って、クラスタップ抽出回路42には、注目高画質ブロックを構成する16×16の合計256画素それぞれをクラス分類するための256セットのクラスタップではなく、注目高画質ブロックをクラス分類するための1セットのクラスタップを構成させれば良く、このため、クラスタップ抽出回路42は、高画質ブロックごとに、その高画質ブロックをクラス分類するために、その高画質ブロックに対応するDCTブロックの64個の量子化DCT係数を抽出して、クラスタップとするようになっている。
【0091】
なお、予測タップやクラスタップを構成する量子化DCT係数は、上述したパターンのものに限定されるものではない。
【0092】
クラスタップ抽出回路42において得られる、注目高画質ブロックのクラスタップは、クラス分類回路43に供給されるようになっており、クラス分類回路43は、クラスタップ抽出回路42からのクラスタップに基づき、注目高画質ブロックをクラス分類し、その結果得られるクラスに対応するクラスコードを出力する。
【0093】
ここで、クラス分類を行う方法としては、例えば、ADRC(Adaptive Dynamic Range Coding)等を採用することができる。
【0094】
ADRCを用いる方法では、クラスタップを構成する量子化DCT係数が、ADRC処理され、その結果得られるADRCコードにしたがって、注目高画質ブロックのクラスが決定される。
【0095】
なお、KビットADRCにおいては、例えば、クラスタップを構成する量子化DCT係数の最大値MAXと最小値MINが検出され、DR=MAX-MINを、集合の局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成する量子化DCT係数がKビットに再量子化される。即ち、クラスタップを構成する量子化DCT係数の中から、最小値MINが減算され、その減算値がDR/2Kで除算(量子化)される。そして、以上のようにして得られる、クラスタップを構成するKビットの各量子化DCT係数を、所定の順番で並べたビット列が、ADRCコードとして出力される。従って、クラスタップが、例えば、1ビットADRC処理された場合には、そのクラスタップを構成する各量子化DCT係数は、最小値MINが減算された後に、最大値MAXと最小値MINとの平均値で除算され、これにより、各量子化DCT係数が1ビットとされる(2値化される)。そして、その1ビットの量子化DCT係数を所定の順番で並べたビット列が、ADRCコードとして出力される。
【0096】
なお、クラス分類回路43には、例えば、クラスタップを構成する量子化DCT係数のレベル分布のパターンを、そのままクラスコードとして出力させることも可能であるが、この場合、クラスタップが、N個の量子化DCT係数で構成され、各量子化DCT係数に、Kビットが割り当てられているとすると、クラス分類回路43が出力するクラスコードの場合の数は、(2NK通りとなり、量子化DCT係数のビット数Kに指数的に比例した膨大な数となる。
【0097】
従って、クラス分類回路43においては、クラスタップの情報量を、上述のADRC処理や、あるいはベクトル量子化等によって圧縮してから、クラス分類を行うのが好ましい。
【0098】
ところで、本実施の形態では、クラスタップは、上述したように、64個の量子化DCT係数で構成される。従って、例えば、仮に、クラスタップを1ビットADRC処理することにより、クラス分類を行うこととしても、クラスコードの場合の数は、264通りという大きな値となる。
【0099】
そこで、本実施の形態では、クラス分類回路43において、クラスタップを構成する量子化DCT係数から、重要性の高い特徴量を抽出し、その特徴量に基づいてクラス分類を行うことで、クラス数を低減するようになっている。
【0100】
即ち、図8は、図6のクラス分類回路43の構成例を示している。
【0101】
クラスタップは、電力演算回路51に供給されるようになっており、電力演算回路51は、クラスタップを構成する量子化DCT係数を、幾つかの空間周波数帯域のものに分け、各周波数帯域の電力を演算する。
【0102】
即ち、電力演算回路51は、クラスタップを構成する8×8個の量子化DCT係数を、例えば、図9に示すような4つの空間周波数帯域S0,S1,S2,S3に分割する。
【0103】
ここで、クラスタップを構成する8×8個の量子化DCT係数それぞれを、アルファベットxに、図7に示したような、ラスタスキャン順に、0からのシーケンシャルな整数を付して表すこととすると、空間周波数帯域S0は、4個の量子化DCT係数x0,x1,x8,x9から構成され、空間周波数帯域S1は、12個の量子化DCT係数x2,x3,x4,x5,x6,x7,x10,x11,x12,x13,x14,x15から構成される。また、空間周波数帯域S2は、12個の量子化DCT係数x16,x17,x24,x25,x32,x33,x40,x41,x48,x49,x56,x57から構成され、空間周波数帯域S3は、36個の量子化DCT係数x18,x19,x20,x21,x22,x23,x26,x27,x28,x29,x30,x31,x34,x35,x36,x37,x38,x39,x42,x43,x44,x45,x46,x47,x50,x51,x52,x53,x54,x55,x58,x59,x60,x61,x62,x63から構成される。
【0104】
さらに、電力演算回路51は、空間周波数帯域S0,S1,S2,S3それぞれについて、量子化DCT係数のAC成分の電力P0,P1,P2,P3を演算し、クラスコード生成回路52に出力する。
【0105】
即ち、電力演算回路51は、空間周波数帯域S0については、上述の4個の量子化DCT係数x0,x1,x8,x9のうちのAC成分x1,x8,x9の2乗和x1 2+x8 2+x9 2を求め、これを、電力P0として、クラスコード生成回路52に出力する。また、電力演算回路51は、空間周波数帯域S1についての、上述の12個の量子化DCT係数のAC成分、即ち、12個すべての量子化DCT係数の2乗和を求め、これを、電力P1として、クラスコード生成回路52に出力する。さらに、電力演算回路51は、空間周波数帯域S2とS3についても、空間周波数帯域S1における場合と同様にして、それぞれの電力P2とP3を求め、クラスコード生成回路52に出力する。
【0106】
クラスコード生成回路52は、電力演算回路51からの電力P0,P1,P2,P3を、閾値テーブル記憶部53に記憶された、対応する閾値TH0,TH1,TH2,TH3とそれぞれ比較し、それぞれの大小関係に基づいて、クラスコードを出力する。即ち、クラスコード生成回路52は、電力P0と閾値TH0とを比較し、その大小関係を表す1ビットのコードを得る。同様に、クラスコード生成回路52は、電力P1と閾値TH1、電力P2と閾値TH2、電力P3と閾値TH3を、それぞれ比較することにより、それぞれについて、1ビットのコードを得る。そして、クラスコード生成回路52は、以上のようにして得られる4つの1ビットのコードを、例えば、所定の順番で並べることにより得られる4ビットのコード(従って、0乃至15のうちのいずれかの値)を、注目高画質ブロックのクラスを表すクラスコードとして出力する。従って、本実施の形態では、注目高画質ブロックは、24(=16)個のクラスのうちのいずれかにクラス分類されることになる。
【0107】
閾値テーブル記憶部53は、空間周波数帯域S0乃至S3の電力P0乃至P3それぞれと比較する閾値TH0乃至TH3を記憶している。
【0108】
なお、上述の場合には、クラス分類処理に、量子化DCT係数のDC成分x0が用いられないが、このDC成分x0をも用いてクラス分類処理を行うことも可能である。
【0109】
図6に戻り、以上のようなクラス分類回路43が出力するクラスコードは、係数テーブル記憶部44に、アドレスとして与えられる。
【0110】
係数テーブル記憶部44は、後述するような学習処理が行われることにより得られるタップ係数が登録された係数テーブルを記憶しており、クラス分類回路43が出力するクラスコードに対応するアドレスに記憶されているタップ係数を積和演算回路45に出力する。
【0111】
ここで、本実施の形態では、注目高画質ブロックについて、1つのクラスコードが得られる。一方、高画質ブロックは、本実施の形態では、16×16画素の256画素で構成されるから、注目高画質ブロックについては、それを構成する256画素それぞれを復号するための256セットのタップ係数が必要である。従って、係数テーブル記憶部44には、1つのクラスコードに対応するアドレスに対して、256セットのタップ係数が記憶されている。
【0112】
積和演算回路45は、予測タップ抽出回路41が出力する予測タップと、係数テーブル記憶部44が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、式(1)に示した線形予測演算(積和演算)を行い、その結果得られる注目高画質ブロックの16×16画素の画素値(の予測値)を、対応するDCTブロックの復号結果として、ブロック分解回路33(図3)に出力する。
【0113】
ここで、予測タップ抽出回路41においては、上述したように、注目高画質ブロックの各画素が、順次、注目画素とされるが、積和演算回路45は、注目高画質ブロックの、注目画素となっている画素の位置に対応した動作モード(以下、適宜、画素位置モードという)となって、処理を行う。
【0114】
即ち、例えば、注目高画質ブロックの画素のうち、ラスタスキャン順で、i番目の画素を、piと表し、画素piが、注目画素となっている場合、積和演算回路45は、画素位置モード#iの処理を行う。
【0115】
具体的には、上述したように、係数テーブル記憶部44は、注目高画質ブロックを構成する256画素それぞれを復号するための256セットのタップ係数を出力するが、そのうちの画素piを復号するためのタップ係数のセットをWiと表すと、積和演算回路45は、動作モードが、画素位置モード#iのときには、予測タップと、256セットのタップ係数のうちのセットWiとを用いて、式(1)の積和演算を行い、その積和演算結果を、画素piの復号結果とする。
【0116】
次に、図10のフローチャートを参照して、図6の係数変換回路32の処理について説明する。
【0117】
エントロピー復号回路31(図3)が出力するブロックごとの量子化DCT係数は、予測タップ抽出回路41およびクラスタップ抽出回路42において順次受信され、予測タップ抽出回路41は、そこに供給される量子化DCT係数のブロック(DCTブロック)に対応する高画質ブロックを、順次、注目高画質ブロックとする。
【0118】
そして、クラスタップ抽出回路42は、ステップS11において、そこで受信した量子化DCT係数の中から、注目高画質ブロックをクラス分類するのに用いるものを抽出して、クラスタップを構成し、クラス分類回路43に供給する。
【0119】
クラス分類回路43は、ステップS12において、クラスタップ抽出回路42からのクラスタップを用いて、注目高画質ブロックをクラス分類し、その結果得られるクラスコードを、係数テーブル記憶部44に出力する。
【0120】
即ち、ステップS12では、図11のフローチャートに示すように、まず最初に、ステップS21において、クラス分類回路43(図8)の電力演算回路51が、クラスタップを構成する8×8個の量子化DCT係数を、図9に示した4つの空間周波数帯域S0乃至S3に分割し、それぞれの電力P0乃至P3を演算する。この電力P0乃至P3は、電力演算回路51からクラスコード生成回路52に出力される。
【0121】
クラスコード生成回路52は、ステップS22において、閾値テーブル記憶部53から閾値TH0乃至TH3を読み出し、電力演算回路51からの電力P0乃至P3それぞれと、閾値TH0乃至TH3それぞれとを比較し、それぞれの大小関係に基づいたクラスコードを生成して、リターンする。
【0122】
図10に戻り、ステップS12において以上のようにして得られるクラスコードは、クラス分類回路43から係数テーブル記憶部44に対して、アドレスとして与えられる。
【0123】
係数テーブル記憶部44は、クラス分類回路43からのアドレスとしてのクラスコードを受信すると、ステップS13において、そのアドレスに記憶されている256セットのタップ係数(クラスコードのクラスに対応する256セットのタップ係数)を読み出し、積和演算回路45に出力する。
【0124】
そして、ステップS14に進み、予測タップ抽出回路41は、注目高画質ブロックの画素のうち、ラスタスキャン順で、まだ、注目画素とされていない画素を、注目画素として、その注目画素の画素値を予測するのに用いる量子化DCT係数を抽出し、予測タップとして構成する。この予測タップは、予測タップ抽出回路41から積和演算回路45に供給される。
【0125】
ここで、本実施の形態では、各高画質ブロックごとに、その高画質ブロックのすべての画素について、同一の予測タップが構成されるので、実際には、ステップS14の処理は、注目高画質ブロックについて、最初に注目画素とされる画素に対してだけ行えば、残りの255画素に対しては、行う必要がない。
【0126】
積和演算回路45は、ステップS15において、ステップS13で係数テーブル記憶部44が出力する256セットのタップ係数のうち、注目画素に対する画素位置モードに対応するタップ係数のセットを取得し、そのタップ係数のセットと、ステップS14で予測タップ抽出回路41から供給される予測タップとを用いて、式(1)に示した積和演算を行い、注目画素の画素値の復号値を得る。
【0127】
そして、ステップS16に進み、予測タップ抽出回路41は、注目高画質ブロックのすべての画素を、注目画素として処理を行ったかどうかを判定する。ステップS16において、注目高画質ブロックのすべての画素を、注目画素として、まだ処理を行っていないと判定された場合、ステップS14に戻り、予測タップ抽出回路41は、注目高画質ブロックの画素のうち、ラスタスキャン順で、まだ、注目画素とされていない画素を、新たに注目画素として、以下、同様の処理を繰り返す。
【0128】
また、ステップS16において、注目高画質ブロックのすべての画素を、注目画素として処理を行ったと判定された場合、即ち、注目高画質ブロックのすべての画素の復号値(8×8の量子化DCT係数を、8×8画素に復号し、さらに、その8×8画素を、16×16画素に高画質化したもの)が得られた場合、積和演算回路45は、その復号値で構成される高画質ブロックを、ブロック分解回路33(図3)に出力し、処理を終了する。
【0129】
なお、図10のフローチャートにしたがった処理は、予測タップ抽出回路41が、新たな注目高画質ブロックを設定するごとに繰り返し行われる。
【0130】
次に、図12は、図6の係数テーブル記憶部44に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。
【0131】
間引き回路60には、1枚以上の学習用の画像データが、学習時の教師となる教師データとして供給されるようになっており、間引き回路60は、その教師データとしての画像について、図6の係数変換回路32における積和演算回路45がタップ係数を用いた積和演算を行うことにより施す向上処理に基づく処理を施す。即ち、ここでは、向上処理は、8×8画素を、その横および縦の空間解像度を2倍にした16×16画素の高画質のもの(解像度を向上させたもの)に変換する処理であるから、間引き回路60は、教師データとしての画像データの画素を間引き、その横および縦の画素数を、いずれも1/2にした画像データ(以下、適宜、準教師データという)を生成する。
【0132】
なお、準教師データとしての画像データは、エンコーダ21(図1)においてJPEG符号化の対象とされる画像データと同一画質(解像度)のものであり、例えば、いま、このJPEG符号化の対象とされる画像を、SD(Standard Density)画像とすると、教師データとする画像としては、そのSD画像の横および縦の画素数を、いずれも2倍にしたHD(High Density)画像を用いる必要がある。
【0133】
ブロック化回路61は、間引き回路60が生成する1枚以上の準教師データとしてのSD画像を、JPEG符号化における場合と同様に、8×8画素の画素ブロックにブロック化する。
【0134】
DCT回路62は、ブロック化回路61がブロック化した画素ブロックを、順次読み出し、その画素ブロックを、DCT処理することで、DCT係数のブロックとする。このDCT係数のブロックは、量子化回路63に供給される。
【0135】
量子化回路63は、DCT回路62からのDCT係数のブロックを、エンコーダ21(図2)におけるJPEG符号化に用いられるのと同一の量子化テーブルにしたがって量子化し、その結果得られる量子化DCT係数のブロック(DCTブロック)を、予測タップ抽出回路64およびクラスタップ抽出回路65に順次供給する。
【0136】
予測タップ抽出回路64は、後述する正規方程式加算回路67が注目高画質ブロックとする高画質ブロックを構成する16×16画素のうちの注目画素となっている画素について、図6の予測タップ抽出回路41が構成するのと同一の予測タップを、量子化回路63の出力から、必要な量子化DCT係数を抽出することで構成する。この予測タップは、学習時の生徒となる生徒データとして、予測タップ抽出回路64から正規方程式加算回路67に供給される。
【0137】
クラスタップ抽出回路65は、注目高画質ブロックについて、図6のクラスタップ抽出回路42が構成するのと同一のクラスタップを、量子化回路63の出力から、必要な量子化DCT係数を抽出することで構成する。このクラスタップは、クラスタップ抽出回路65からクラス分類回路66に供給される。
【0138】
クラス分類回路66は、クラスタップ抽出回路65からのクラスタップを用いて、図6のクラス分類回路43と同一の処理を行うことで、注目高画質ブロックをクラス分類し、その結果得られるクラスコードを、正規方程式加算回路67に供給する。
【0139】
正規方程式加算回路67には、間引き回路60に教師データとして供給されるのと同一のHD画像が供給されるようになっており、正規方程式加算回路67は、そのHD画像を、16×16画素の高画質ブロックにブロック化し、その高画質ブロックを、順次、注目高画質ブロックとする。さらに、正規方程式加算回路67は、注目高画質ブロックを構成する16×16画素のうち、例えば、ラスタスキャン順で、まだ注目画素とされていないものを、順次、注目画素とし、その注目画素(の画素値)と、予測タップ構成回路64からの予測タップ(を構成する量子化DCT係数)を対象とした足し込みを行う。
【0140】
即ち、正規方程式加算回路67は、クラス分類回路66から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)を用い、式(8)の行列Aにおける各コンポーネントとなっている、生徒データどうしの乗算(xinim)と、サメーション(Σ)に相当する演算を行う。
【0141】
さらに、正規方程式加算回路67は、やはり、クラス分類回路66から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)および注目画素(教師データ)を用い、式(8)のベクトルvにおける各コンポーネントとなっている、生徒データと教師データの乗算(xini)と、サメーション(Σ)に相当する演算を行う。
【0142】
なお、正規方程式加算回路67における、上述のような足し込みは、各クラスについて、注目画素に対する画素位置モードごとに行われる。
【0143】
正規方程式加算回路67は、以上の足し込みを、そこに供給される教師データとしてのHD画像を構成する画素すべてを注目画素として行い、これにより、各クラスについて、画素位置モードごとに、式(8)に示した正規方程式をたてる。
【0144】
タップ係数決定回路68は、正規方程式加算回路67においてクラスごとに(かつ、画素位置モードごとに)生成された正規方程式を解くことにより、クラスごとに、256セットのタップ係数を求め、係数テーブル記憶部69の、各クラスに対応するアドレスに供給する。
【0145】
なお、学習用の画像として用意する画像の枚数や、その画像の内容等によっては、正規方程式加算回路67において、タップ係数を求めるのに必要な数の正規方程式が得られないクラスが生じる場合があり得るが、タップ係数決定回路68は、そのようなクラスについては、例えば、デフォルトのタップ係数を出力する。
【0146】
係数テーブル記憶部69は、タップ係数決定回路68から供給されるクラスごとの256セットのタップ係数を記憶する。
【0147】
次に、図13のフローチャートを参照して、図12の学習装置の処理(学習処理)について説明する。
【0148】
間引き回路60には、学習用の画像データであるHD画像が、教師データとして供給され、間引き回路60は、ステップS30において、その教師データとしてのHD画像の画素を間引き、その横および縦の画素数を、いずれも1/2にした準教師データとしてのSD画像を生成する。
【0149】
そして、ブロック化回路61は、ステップS31において、間引き回路60で得られた準教師データとしてのSD画像を、エンコーダ21(図2)によるJPEG符号化における場合と同様に、8×8画素の画素ブロックにブロック化して、ステップS32に進む。ステップS32では、DCT回路62が、ブロック化回路61がブロック化した画素ブロックを、順次読み出し、その画素ブロックを、DCT処理することで、DCT係数のブロックとし、ステップS33に進む。ステップS33では、量子化回路63が、DCT回路62において得られたDCT係数のブロックを順次読み出し、エンコーダ21におけるJPEG符号化に用いられるのと同一の量子化テーブルにしたがって量子化して、量子化DCT係数で構成されるブロック(DCTブロック)とする。
【0150】
一方、正規方程式加算回路67にも、教師データとしてのHD画像が供給され、正規方程式加算回路67は、そのHD画像を、16×16画素の高画質ブロックにブロック化し、ステップS34において、その高画質ブロックのうち、まだ、注目高画質ブロックとされていないものを、注目高画質ブロックとする。さらに、ステップS34では、クラスタップ抽出回路65が、ブロック化回路61でブロック化された画素ブロックのうち、注目高画質ブロックをクラス分類するのに用いる量子化DCT係数を、量子化回路63で得られたDCTブロックから抽出して、クラスタップを構成し、クラス分類回路66に供給する。クラス分類回路66は、ステップS35において、図11のフローチャートで説明した場合と同様に、クラスタップ抽出回路65からのクラスタップを用いて、注目高画質ブロックをクラス分類し、その結果得られるクラスコードを、正規方程式加算回路67に供給して、ステップS36に進む。
【0151】
ステップS36では、正規方程式加算回路67が、注目高画質ブロックの画素のうち、ラスタスキャン順で、まだ、注目画素とされていない画素を、注目画素とし、予測タップ抽出回路64が、その注目画素について、図6の予測タップ抽出回路41が構成するのと同一の予測タップを、量子化回路63の出力から必要な量子化DCT係数を抽出することで構成する。そして、予測タップ抽出回路64は、注目画素についての予測タップを、生徒データとして、正規方程式加算回路67に供給し、ステップS37に進む。
【0152】
ステップS37では、正規方程式加算回路67は、教師データとしての注目画素と、生徒データとしての予測タップ(を構成する量子化DCT係数)を対象として、式(8)の行列Aとベクトルvの、上述したような足し込みを行う。なお、この足し込みは、クラス分類回路66からのクラスコードに対応するクラスごとに、かつ注目画素に対する画素位置モードごとに行われる。
【0153】
そして、ステップS38に進み、正規方程式加算回路67は、注目高画質ブロックのすべての画素を、注目画素として、足し込みを行ったかどうかを判定する。ステップS38において、注目高画質ブロックのすべての画素を、注目画素として、まだ足し込みを行っていないと判定された場合、ステップS36に戻り、正規方程式加算回路67は、注目高画質ブロックの画素のうち、ラスタスキャン順で、まだ、注目画素とされていない画素を、新たに注目画素とし、以下、同様の処理を繰り返す。
【0154】
また、ステップS38において、注目高画質ブロックのすべての画素を、注目画素として、足し込みを行ったと判定された場合、ステップS39に進み、正規方程式加算回路67は、教師データとしての画像から得られたすべての高画質ブロックを、注目高画質ブロックとして処理を行ったかどうかを判定する。ステップS39において、教師データとしての画像から得られたすべての高画質ブロックを、注目高画質ブロックとして、まだ処理を行っていないと判定された場合、ステップS34に戻り、まだ注目高画質ブロックとされていない高画質ブロックが、新たに注目高画質ブロックとされ、以下、同様の処理が繰り返される。
【0155】
一方、ステップS39において、教師データとしての画像から得られたすべての高画質ブロックを、注目高画質ブロックとして処理を行ったと判定された場合、即ち、正規方程式加算回路67において、各クラスについて、画素位置モードごとの正規方程式が得られた場合、ステップS40に進み、タップ係数決定回路68は、各クラスの画素位置モードごとに生成された正規方程式を解くことにより、各クラスごとに、そのクラスの256の画素位置モードそれぞれに対応する256セットのタップ係数を求め、係数テーブル記憶部69の、各クラスに対応するアドレスに供給して記憶させ、処理を終了する。
【0156】
以上のようにして、係数テーブル記憶部69に記憶された各クラスごとのタップ係数が、図6の係数テーブル記憶部44に記憶されている。
【0157】
従って、係数テーブル記憶部44に記憶されたタップ係数は、線形予測演算を行うことにより得られる元の画素値の予測値の予測誤差(ここでは、自乗誤差)が、統計的に最小になるように学習を行うことにより求められたものであり、その結果、図6の係数変換回路32によれば、JPEG符号化された画像を、教師データとして用いたHD画像の画質に限りなく近い高画質の画像に復号することができる。
【0158】
さらに、係数変換回路32によれば、上述したように、JPEG符号化された画像の復号処理と、その画質を向上させるための向上処理とが、同時に施されることとなるので、JPEG符号化された画像から、効率的に、高画質化された復号画像を得ることができる。
【0159】
次に、図14は、図3の係数変換回路32の第2の構成例を示している。なお、図中、図6における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図14の係数変換回路32は、逆量子化回路71が新たに設けられている他は、基本的に、図6における場合と同様に構成されている。
【0160】
図14の実施の形態において、逆量子化回路71には、エントロピー復号回路31(図3)において符号化データをエントロピー復号することにより得られるブロックごとの量子化DCT係数が供給される。
【0161】
なお、エントロピー復号回路31においては、上述したように、符号化データから、量子化DCT係数の他、量子化テーブルも得られるが、図14の実施の形態では、この量子化テーブルも、エントロピー復号回路31から逆量子化回路71に供給されるようになっている。
【0162】
逆量子化回路71は、エントロピー復号回路31からの量子化DCT係数を、同じくエントロピー復号回路31からの量子化テーブルにしたがって逆量子化し、その結果得られるDCT係数を、予測タップ抽出回路41およびクラスタップ抽出回路42に供給する。
【0163】
従って、予測タップ抽出回路41とクラスタップ抽出回路42では、量子化DCT係数ではなく、DCT係数を対象として、予測タップとクラスタップがそれぞれ構成され、以降も、DCT係数を対象として、図6における場合と同様の処理が行われる。
【0164】
このように、図14の実施の形態では、量子化DCT係数ではなく、DCT係数を対象として処理が行われるため、係数テーブル記憶部44に記憶させるタップ係数は、図6における場合と異なるものとする必要がある。
【0165】
そこで、図15は、図14の係数テーブル記憶部44に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。なお、図中、図12における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図15の学習装置は、量子化回路63の後段に、逆量子化回路81が新たに設けられている他は、図12における場合と基本的に同様に構成されている。
【0166】
図15の実施の形態において、逆量子化回路81は、逆量子化回路63が出力する量子化DCT係数を、図14の逆量子化回路71と同様に逆量子化し、その結果得られるDCT係数を、予測タップ抽出回路64およびクラスタップ抽出回路65に供給する。
【0167】
従って、予測タップ抽出回路64とクラスタップ抽出回路65では、量子化DCT係数ではなく、DCT係数を対象として、予測タップとクラスタップがそれぞれ構成され、以降も、DCT係数を対象として、図12における場合と同様の処理が行われる。
【0168】
その結果、DCT係数が量子化され、さらに逆量子化されることにより生じる量子化誤差の影響を低減するタップ係数が得られることになる。
【0169】
次に、図16は、図3の係数変換回路32の第3の構成例を示している。なお、図中、図6における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図16の係数変換回路32は、クラスタップ抽出回路42およびクラス分類回路43が設けられていない他は、基本的に、図6における場合と同様に構成されている。
【0170】
従って、図16の実施の形態では、クラスという概念がないが、このことは、クラスが1つであるとも考えるから、係数テーブル記憶部44には、1クラスのタップ係数だけが記憶されており、これを用いて処理が行われる。
【0171】
このように、図16の実施の形態では、係数テーブル記憶部44に記憶されているタップ係数は、図6における場合と異なるものとなっている。
【0172】
そこで、図17は、図16の係数テーブル記憶部44に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。なお、図中、図12における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図17の学習装置は、クラスタップ抽出回路65およびクラス分類回路66が設けられていない他は、図12における場合と基本的に同様に構成されている。
【0173】
従って、図17の学習装置では、正規方程式加算回路67において、上述の足し込みが、クラスには無関係に、画素位置モード別に行われる。そして、タップ係数決定回路68において、画素位置モードごとに生成された正規方程式を解くことにより、タップ係数が求められる。
【0174】
次に、図18は、図3の係数変換回路32の第4の構成例を示している。なお、図中、図6または図14における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図18の係数変換回路32は、クラスタップ抽出回路42およびクラス分類回路43が設けられておらず、かつ逆量子化回路71が新たに設けられている他は、基本的に、図6における場合と同様に構成されている。
【0175】
従って、図18の実施の形態では、上述の図16の実施の形態における場合と同様に、係数テーブル記憶部44には、1クラスのタップ係数だけが記憶されており、これを用いて処理が行われる。
【0176】
さらに、図18の実施の形態では、図14の実施の形態における場合と同様に、予測タップ抽出回路41において、量子化DCT係数ではなく、逆量子化回路71が出力するDCT係数を対象として、予測タップが構成され、以降も、DCT係数を対象として、処理が行われる。
【0177】
従って、図18の実施の形態でも、係数テーブル記憶部44に記憶されているタップ係数は、図6における場合と異なるものとなっている。
【0178】
そこで、図19は、図18の係数テーブル記憶部44に記憶させるタップ係数の学習処理を行う学習装置の一実施の形態の構成例を示している。なお、図中、図12または図15における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図19の学習装置は、クラスタップ抽出回路65およびクラス分類回路66が設けられておらず、かつ逆量子化回路81が新たに設けられている他は、図12における場合と基本的に同様に構成されている。
【0179】
従って、図19の学習装置では、予測タップ抽出回路64において、量子化DCT係数ではなく、DCT係数を対象として、予測タップが構成され、以降も、DCT係数を対象として処理が行われる。さらに、正規方程式加算回路67において、上述の足し込みが、クラスには無関係に行われ、タップ係数決定回路68において、クラスと無関係に生成された正規方程式を解くことにより、タップ係数が求められる。
【0180】
次に、以上においては、静止画を圧縮符号化するJPEG符号化された画像を対象としたが、本発明は、動画を圧縮符号化する、例えば、MPEG符号化された画像を対象とすることも可能である。
【0181】
即ち、図20は、MPEG符号化が行われる場合の、図2のエンコーダ21の構成例を示している。
【0182】
MPEG符号化の対象である動画を構成するフレーム(またはフィールド)は、順次、動き検出回路91と演算器92に供給される。
【0183】
動き検出回路91は、そこに供給されるフレームについて、16×16画素のマクロブロック単位で、動きベクトルを検出し、エントロピー符号化回路96および動き補償回路100に供給する。
【0184】
演算器92は、そこに供給される画像が、I(Intra)ピクチャであれば、そのままブロック化回路93に供給し、P(Predictive)またはB(Bidirectionally predictive)ピクチャであれば、動き補償回路100から供給される参照画像との差分を演算して、その差分値を、ブロック化回路93に供給する。
【0185】
ブロック化回路93は、演算器92の出力を、8×8画素の画素ブロックにブロック化し、DCT回路94に供給する。DCT回路94は、ブロック化回路93からの画素ブロックをDCT処理し、その結果得られるDCT係数を、量子化回路95に供給する。量子化回路95は、DCT回路93からのブロック単位のDCT係数を所定の量子化ステップで量子化し、その結果得られる量子化DCT係数をエントロピー符号化回路96に供給する。エントロピー符号化回路96は、量子化回路95からの量子化DCT係数をエントロピー符号化し、動き検出回路91からの動きベクトルや、その他の必要な情報を付加して、その結果得られる符号化データ(例えば、MPEGトランスポートストリーム)を、MPEG符号化結果として出力する。
【0186】
量子化回路95が出力する量子化DCT係数のうち、IピクチャおよびPピクチャは、後で符号化されるPピクチャやBピクチャの参照画像として用いるのにローカルデコードする必要があるため、エントロピー符号化回路96の他、逆量子化回路97にも供給される。
【0187】
逆量子化回路97は、量子化回路95からの量子化DCT係数を逆量子化することにより、DCT係数とし、逆DCT回路98に供給する。逆DCT回路98は、逆量子化回路97からのDCT係数を逆DCT処理し、演算器99に出力する。演算器99には、逆DCT回路98の出力の他、動き補償回路100が出力する参照画像も供給されるようになっており、演算器99は、逆DCT回路98の出力が、Pピクチャのものである場合には、その出力と、動き補償回路100の出力とを加算することで、元の画像を復号し、動き補償回路100に供給する。また、演算器99は、逆DCT回路98の出力が、Iピクチャのものである場合には、その出力は、Iピクチャの復号画像となっているので、そのまま、動き補償回路100に供給する。
【0188】
動き補償回路100は、演算器99から供給される、ローカルデコードされた画像に対して、動き検出回路91からの動きベクトルにしたがった動き補償を施し、その動き補償後の画像を、参照画像として、演算器92および99に供給する。
【0189】
ここで、図21は、以上のようなMPEG符号化の結果得られる符号化データを復号する、従来のMPEGデコーダの一例の構成を示している。
【0190】
符号化データは、エントロピー復号回路111に供給され、エントロピー復号回路111は、符号化データをエントロピー復号し、量子化DCT係数、動きベクトル、その他の情報を得る。そして、量子化DCT係数は、逆量子化回路112に供給され、動きベクトルは、動き補償回路116に供給される。
【0191】
逆量子化回路112は、エントロピー復号回路111からの量子化DCT係数を逆量子化することにより、DCT係数とし、逆DCT回路113に供給する。逆DCT回路113は、逆量子化回路112からのDCT係数を逆DCT処理し、演算器114に出力する。演算器114には、逆量子化回路113の出力の他、動き補償回路116が出力する、既に復号されたIピクチャまたはPピクチャを、エントロピー復号回路111からの動きベクトルにしたがって動き補償したものが参照画像として供給されるようになっており、演算器114は、逆DCT回路113の出力が、PまたはBピクチャのものである場合には、その出力と、動き補償回路100の出力とを加算することで、元の画像を復号し、ブロック分解回路115に供給する。また、演算器114は、逆DCT回路113の出力が、Iピクチャのものである場合には、その出力は、Iピクチャの復号画像となっているので、そのまま、ブロック分解回路115に供給する。
【0192】
ブロック分解回路115は、演算器114から画素ブロック単位で供給される復号画像のブロック化を解くことで、復号画像を得て出力する。
【0193】
一方、動き補償回路116は、演算器114が出力する復号画像のうちのIピクチャとPピクチャを受信し、エントロピー復号回路111からの動きベクトルにしたがった動き補償を施す。そして、動き補償回路116は、その動き補償後の画像を、参照画像として、演算器114に供給する。
【0194】
図3のデコーダ22では、MPEG符号化された符号化データも、上述のように、効率的に、高画質の画像に復号することができる。
【0195】
即ち、符号化データは、エントロピー復号回路31に供給され、エントロピー復号回路31は、符号化データを、エントロピー復号する。このエントロピー復号の結果得られる量子化DCT係数、動きベクトル、その他の情報は、エントロピー復号回路31から係数変換回路32に供給される。
【0196】
係数変換回路32は、エントロピー復号回路31からの量子化DCT係数Qと、学習を行うことにより求められたタップ係数を用いて、所定の予測演算を行うとともに、エントロピー復号回路31からの動きベクトルにしたがった動き補償を必要に応じて行うことにより、量子化DCT係数を、高画質の画素値に復号し、その高画質の画素値でなる高画質ブロックをブロック分解回路33に供給する。
【0197】
ブロック分解回路33は、係数変換回路32において得られた高画質ブロックのブロック化を解くことで、横および縦の画素数がいずれも、MPEG符号化された画像の、例えば2倍になった高画質の復号画像を得て出力する。
【0198】
次に、図22は、デコーダ22においてMPEG符号化された符号化データを復号する場合の、図3の係数変換回路32の構成例を示している。なお、図中、図18または図21における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図22の係数変換回路32は、積和演算回路45の後段に、図21における演算器114および動き補償回路116が設けられている他は、図18における場合と基本的に同様に構成されている。
【0199】
従って、図22の係数変換回路32では、量子化DCT係数が、逆量子化回路71において逆量子化され、その結果得られるDCT係数を用いて、予測タップ抽出回路41において予測タップが構成される。そして、積和演算回路45が、その予測タップと、係数テーブル記憶部44に記憶されたタップ係数とを用いた予測演算を行うことにより、横および縦の画素数がいずれも、元の画像の2倍になった高画質のデータを出力する。
【0200】
そして、演算器114は、積和演算回路45の出力を、必要に応じて、動き補償回路116の出力と加算することで、横および縦の画素数がいずれも、元の画像の2倍になった高画質の画像を復号し、ブロック分解回路33(図3)に出力する。
【0201】
即ち、Iピクチャについては、積和演算回路45の出力は、横および縦の画素数がいずれも、元の画像の2倍になった高画質の画像となっているので、演算器114は、積和演算回路45の出力を、そのまま、ブロック分解回路33に出力する。
【0202】
また、PまたはBピクチャについては、積和演算回路45の出力は、横および縦の画素数がいずれも、元の画像の2倍になった高画質の画像と、高画質の参照画像との差分となっているから、演算器114は、積和演算回路45の出力を、動き補償回路116から供給される高画質の参照画像と加算することで、横および縦の画素数がいずれも、元の画像の2倍になった高画質の画像に復号し、ブロック分解回路33に出力する。
【0203】
一方、動き補償回路116は、演算器114が出力する高画質の復号画像のうち、IおよびPピクチャを受信し、そのIまたはPピクチャの高画質の復号画像に対して、エントロピー復号回路31(図3)からの動きベクトルを用いた動き補償を施すことにより、高画質の参照画像を得て、演算器114に供給する。
【0204】
なお、ここでは、復号画像の横および縦の画素数が、いずれも、元の画像の2倍になっているので、動き補償回路116は、例えば、エントロピー復号回路31からの動きベクトルの横方向および縦方向の大きさをいずれも2倍にした動きベクトルにしたがって動き補償を行う。
【0205】
次に、図23は、図22の係数テーブル記憶部44に記憶させるタップ係数を学習する学習装置の一実施の形態の構成例を示している。なお、図中、図19における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
【0206】
間引き回路120には、学習用のHD画像が、教師データとして入力され、間引き回路120は、例えば、図12の間引き回路60と同様に、教師データとしてのHD画像の画素を間引き、その横および縦の画素数を、いずれも1/2にしたSD画像である準教師データを生成する。そして、この準教師データとしてのSD画像は、動きベクトル検出回路121および演算器122に供給される。
【0207】
動きベクトル検出回路121、演算器122、ブロック化回路123、DCT回路124、量子化回路125、逆量子化回路127、逆DCT回路128、演算器129、または動き補償回路130は、図20の動きベクトル検出回路91、演算器92、ブロック化回路93、DCT回路94、量子化回路95、逆量子化回路97、逆DCT回路98、演算器99、または動き補償回路100とそれぞれ同様の処理を行い、これにより、量子化回路125からは、図20の量子化回路95が出力するのと同様の量子化DCT係数が出力される。
【0208】
量子化回路125が出力する量子化DCT係数は、逆量子化回路81に供給され、逆量子化回路81は、量子化回路125からの量子化DCT係数を逆量子化し、DCT係数に変換して、予測タップ抽出回路64に供給する。予測タップ抽出回路64は、逆量子化回路81からのDCT係数から、予測タップを構成し、生徒データとして、正規方程式加算回路67に供給する。
【0209】
一方、教師データとしてのHD画像は、間引き回路120の他、演算器132にも供給されるようになっている。演算器132は、教師データとしてのHD画像から、必要に応じて、補間回路131の出力を減算し、正規方程式加算回路67に供給する。
【0210】
即ち、補間回路131は、動き補償回路130が出力するSD画像の参照画像の横および縦の画素数を2倍にした高画質の参照画像を生成し、演算器132に供給する。
【0211】
演算器132は、そこに供給されるHD画像がIピクチャである場合には、そのIピクチャのHD画像を、そのまま、教師データとして、正規方程式加算回路67に供給する。また、演算器132は、そこに供給されるHD画像がPまたはBピクチャである場合には、そのPまたはBピクチャのHD画像と、補間回路131が出力する高画質の参照画像との差分を演算することにより、演算器122が出力するSD画像(準教師データ)についての差分を高画質化したものを得て、これを、教師データとして、正規方程式加算回路67に出力する。
【0212】
なお、補間回路131では、例えば、単純な補間により画素数を増加させることが可能である。また、補間回路131では、例えば、クラス分類適応処理により画素数を増加させることも可能である。さらに、演算器132では、教師データとしてのHD画像をMPEG符号化し、そのローカルデコードを行って動き補償したものを、参照画像として用いるようにすることが可能である。
【0213】
正規方程式加算回路67は、演算器132の出力を教師データとするとともに、逆量子化回路81からの予測タップを生徒データとして、上述したような足し込みを行い、これにより、正規方程式を生成する。
【0214】
そして、タップ係数決定回路68は、正規方程式加算回路67で生成された正規方程式を解くことにより、タップ係数を求め、係数テーブル記憶部69に供給して記憶させる。
【0215】
図22の積和演算回路45では、このようにして求められたタップ係数を用いて、MPEG符号化された符号化データが復号されるので、やはり、MPEG符号化された画像の復号処理と、その画質を向上させるための処理とを、同時に施すことができ、従って、MPEG符号化された画像から、効率的に、高画質の、即ち、本実施の形態では、横および縦の画素数がいずれも2倍になったHD画像である復号画像を得ることができる。
【0216】
なお、図22の係数変換回路32は、逆量子化回路71を設けずに構成することが可能である。この場合、図23の学習装置は、逆量子化回路81を設けずに構成すれば良い。
【0217】
また、図22の係数変換回路32は、図6における場合と同様に、クラスタップ抽出回路42およびクラス分類回路43を設けて構成することが可能である。
この場合、図23の学習装置は、図12における場合のように、クラスタップ抽出回路65およびクラス分類回路66を設けて構成すれば良い。
【0218】
さらに、上述の場合には、デコーダ22(図3)において、元の画像の空間解像度を2倍に向上させた復号画像を得るようにしたが、デコーダ22では、元の画像の空間解像度を任意の倍数にした復号画像や、さらには、元の画像の時間解像度を向上させた復号画像を得るようにすることも可能である。
【0219】
即ち、例えば、MPEG符号化する対象の画像が、図24(A)に示すような時間解像度が低いものである場合に、デコーダ22では、その画像をMPEG符号化した符号化データを、図24(B)に示すような、元の画像の時間解像度を2倍にした画像に復号するようにすることが可能である。さらには、例えば、MPEG符号化する対象の画像が、図25(A)に示すような、映画で用いられる24フレーム/秒の画像である場合に、デコーダ22では、その画像をMPEG符号化した符号化データを、図25(B)に示すような、元の画像の時間解像度を60/24倍にした、60フレーム/秒の画像に復号するようにすることが可能である。この場合、いわゆる2−3プルダウンを容易に行うことができる。
【0220】
ここで、上述のように、デコーダ22において、時間解像度を向上させる場合には、予測タップやクラスタップは、例えば、図26に示すように、2以上のフレームのDCT係数から構成するようにすることが可能である。
【0221】
また、デコーダ22では、空間解像度または時間解像度のうちのいずれか一方だけではなく、両方を向上させた復号画像を得るようにすることも可能である。
【0222】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【0223】
そこで、図27は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0224】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク205やROM203に予め記録しておくことができる。
【0225】
あるいはまた、プログラムは、フロッピーディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体211に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体211は、いわゆるパッケージソフトウエアとして提供することができる。
【0226】
なお、プログラムは、上述したようなリムーバブル記録媒体211からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部208で受信し、内蔵するハードディスク205にインストールすることができる。
【0227】
コンピュータは、CPU(Central Processing Unit)202を内蔵している。CPU202には、バス201を介して、入出力インタフェース210が接続されており、CPU202は、入出力インタフェース210を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部207が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)203に格納されているプログラムを実行する。あるいは、また、CPU202は、ハードディスク205に格納されているプログラム、衛星若しくはネットワークから転送され、通信部208で受信されてハードディスク205にインストールされたプログラム、またはドライブ209に装着されたリムーバブル記録媒体211から読み出されてハードディスク205にインストールされたプログラムを、RAM(Random Access Memory)204にロードして実行する。これにより、CPU202は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU202は、その処理結果を、必要に応じて、例えば、入出力インタフェース210を介して、LCD(Liquid CryStal Display)やスピーカ等で構成される出力部206から出力、あるいは、通信部208から送信、さらには、ハードディスク205に記録等させる。
【0228】
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0229】
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0230】
なお、本実施の形態では、画像データを対象としたが、本発明は、その他、例えば、音声データにも適用可能である。
【0231】
また、本実施の形態では、少なくとも、DCT処理を行うJPEG符号化やMPEG符号化された符号化データの復号を行うようにしたが、本発明は、その他の直交変換または周波数変換によって変換されたデータの復号に適用可能である。即ち、本発明は、例えば、サブバンド符号化されたデータや、フーリエ変換されたデータ等を復号する場合にも適用可能である。
【0232】
さらに、本実施の形態では、デコーダ22において、復号に用いるタップ係数を、あらかじめ記憶しておくようにしたが、タップ係数は、符号化データに含めて、デコーダ22に提供するようにすることが可能である。
【0233】
また、本実施の形態では、タップ係数を用いた線形1次予測演算によって、復号を行うようにしたが、復号は、その他、2次以上の高次の予測演算によって行うことも可能である。
【0234】
【発明の効果】
本発明の第1のデータ処理装置およびデータ処理方法、並びに記録媒体によれば、学習を行うことにより求められたタップ係数が取得され、そのタップ係数および変換データを用いて、所定の予測演算が行われることにより、変換データを、元のデータに復号し、かつ、その元のデータに所定の処理を施した処理データが得られる。従って、効率的に、変換データを復号し、かつその復号されたデータに所定の処理を施すことが可能となる。
【0235】
本発明の第2のデータ処理装置およびデータ処理方法、並びに記録媒体によれば、教師となる教師データに、所定の処理に基づく処理が施され、その結果得られる準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データが生成される。そして、タップ係数および生徒データを用いて予測演算を行うことにより得られる教師データの予測値の予測誤差が、統計的に最小になるように学習が行われ、タップ係数が求められる。従って、そのタップ係数を用いることにより、効率的に、直交変換または周波数変換されたデータを復号し、かつその復号されたデータに所定の処理を施すことが可能となる。
【図面の簡単な説明】
【図1】従来のJPEG符号化/復号を説明するための図である。
【図2】本発明を適用した画像伝送システムの一実施の形態の構成例を示す図である。
【図3】図2のデコーダ22の構成例を示すブロック図である。
【図4】8×8のDCT係数が、16×16画素に復号される様子を示す図である。
【図5】図3のデコーダ22の処理を説明するフローチャートである。
【図6】図3の係数変換回路32の第1の構成例を示すブロック図である。
【図7】予測タップとクラスタップの例を説明する図である。
【図8】図6のクラス分類回路43の構成例を示すブロック図である。
【図9】図6の電力演算回路51の処理を説明するための図である。
【図10】図6の係数変換回路32の処理を説明するフローチャートである。
【図11】図10のステップS12の処理のより詳細を説明するフローチャートである。
【図12】本発明を適用した学習装置の第1実施の形態の構成例を示すブロック図である。
【図13】図12の学習装置の処理を説明するフローチャートである。
【図14】図3の係数変換回路32の第2の構成例を示すブロック図である。
【図15】本発明を適用した学習装置の第2実施の形態の構成例を示すブロック図である。
【図16】図3の係数変換回路32の第3の構成例を示すブロック図である。
【図17】本発明を適用した学習装置の第3実施の形態の構成例を示すブロック図である。
【図18】図3の係数変換回路32の第4の構成例を示すブロック図である。
【図19】本発明を適用した学習装置の第4実施の形態の構成例を示すブロック図である。
【図20】図2のエンコーダ21の構成例を示すブロック図である。
【図21】MPEGデコーダの一例の構成を示すブロック図である。
【図22】図3の係数変換回路32の第5の構成例を示すブロック図である。
【図23】本発明を適用した学習装置の第5実施の形態の構成例を示すブロック図である。
【図24】時間解像度を向上させた画像を示す図である。
【図25】時間解像度を向上させた画像を示す図である。
【図26】2以上のフレームのDCT係数から、クラスタップおよび予測タップを構成することを示す図である。
【図27】本発明を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【符号の説明】
21 エンコーダ, 22 デコーダ, 23 記録媒体, 24 伝送媒体, 31 エントロピー復号回路, 32 係数変換回路, 33 ブロック分解回路, 41 予測タップ抽出回路, 42 クラスタップ抽出回路, 43クラス分類回路, 44 係数テーブル記憶部, 45積和演算回路, 51電力演算回路, 52 クラスコード生成回路, 53 閾値テーブル記憶部, 60 間引き回路, 61 ブロック化回路, 62 DCT回路, 63量子化回路, 64 予測タップ抽出回路, 65 クラスタップ抽出回路,66 クラス分類回路, 67 正規方程式加算回路, 68 タップ係数決定回路, 69 係数テーブル記憶部, 71,81 逆量子化回路, 114演算器, 115 動き補償回路, 120 間引き回路, 121 動きベクトル検出回路, 122 演算器, 123 ブロック化回路, 124 DCT回路, 125 量子化回路, 127 逆量子化回路, 128 逆DCT回路, 129 演算器, 130 動き補償回路, 131 補間回路, 132 演算器, 201 バス, 202 CPU, 203 ROM, 204 RAM, 205 ハードディスク, 206 出力部, 207 入力部, 208 通信部, 209 ドライブ, 210 入出力インタフェース, 211 リムーバブル記録媒体[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data processing device, a data processing method, and a recording medium, and in particular, for example, a data processing device, a data processing method, and a recording that are suitable for decoding a compressed image into a high-quality image. It relates to the medium.
[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 that is a compression encoding method for still images, an MPEG (Moving Picture Experts Group) method that is a compression encoding method for moving images, and the like. .
[0004]
For example, encoding / decoding of image data by the JPEG method is performed as shown in FIG.
[0005]
That is, FIG. 1A shows a configuration of an example of a conventional JPEG encoding apparatus.
[0006]
The image data to be encoded is input to the block forming circuit 1, and the block forming circuit 1 divides the image data input thereto into blocks of 64 pixels of 8 × 8 pixels. Each block obtained by the blocking circuit 1 is supplied to a DCT (Discrete Cosine Transform) circuit 2. The DCT circuit 2 performs a DCT (Discrete Cosine Transform) process on the block from the blocking circuit 1 to generate one DC (Direct Current) component and 63 frequency components (horizontal and vertical directions). AC (Alternating Current) component) to a total of 64 DCT coefficients. The 64 DCT coefficients for each block are supplied from the DCT circuit 2 to the quantization circuit 3.
[0007]
The quantization circuit 3 quantizes the DCT coefficient from the DCT circuit 2 in accordance with a predetermined quantization table, and uses the quantization result (hereinafter, appropriately referred to as “quantized DCT coefficient”) for quantization. At the same time, it is supplied to the entropy encoding circuit 4.
[0008]
Here, FIG. 1B shows an example of a quantization table used in the quantization circuit 3. In general, the quantization table takes into account human visual characteristics and finely quantizes low-frequency DCT coefficients that are highly important, and coarsely quantizes low-frequency high-frequency DCT coefficients. Thus, it is possible to suppress the deterioration of the image quality of the image and perform efficient compression.
[0009]
The entropy coding circuit 4 performs entropy coding processing such as Huffman coding on the quantized DCT coefficient from the quantization circuit 3, and adds the quantization table from the quantization circuit 3, for example. The encoded data obtained as a result is output as a JPEG encoding result.
[0010]
Next, FIG. 1C shows a configuration of an example of a conventional JPEG decoding apparatus that decodes encoded data output from the JPEG encoding apparatus of FIG.
[0011]
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 inverse quantization circuit 12 together with the quantization table. The inverse quantization circuit 12 inversely quantizes the quantized DCT coefficient from the entropy decoding circuit 11 according to the quantization table from the entropy decoding circuit 11, and supplies the DCT coefficient obtained as a result to the inverse DCT circuit 13. . The inverse DCT circuit 13 performs inverse DCT processing on the DCT coefficients from the inverse quantization circuit 12 and supplies the resulting 8 × 8 pixel decoded block to the block decomposition circuit 14. The block decomposition circuit 14 obtains and outputs a decoded image by unblocking the decoded block from the inverse DCT circuit 13.
[0012]
[Problems to be solved by the invention]
In the JPEG encoding apparatus of FIG. 1A, the data amount of encoded data can be reduced by increasing the quantization step of the quantization table used for block quantization in the quantization circuit 3. . That is, high compression can be realized.
[0013]
However, if the quantization step is increased, so-called quantization error also increases, so that the image quality of the decoded image obtained by the JPEG decoding device in FIG. That is, blur, block distortion, mosquito noise, and the like appear significantly in the decoded image.
[0014]
Therefore, in order to prevent the image quality of the decoded image from deteriorating while reducing the data amount of the encoded data, or to maintain the data amount of the encoded data and improve the image quality of the decoded image, JPEG After decoding, it is necessary to perform some processing for improving image quality.
[0015]
However, performing the processing for improving the image quality after JPEG decoding makes the processing complicated, and the time until a decoded image is finally obtained also becomes long.
[0016]
The present invention has been made in view of such a situation, and makes it possible to efficiently obtain a decoded image with good image quality from a JPEG-encoded image or the like.
[0017]
[Means for Solving the Problems]
  The first data processing apparatus according to the present invention performs a predetermined prediction calculation using an acquisition unit that acquires a tap coefficient obtained by performing learning, and the tap coefficient and the conversion data. Decrypt to the original dataAt the same time, Obtain the processed data by applying the predetermined processing to the original dataRuAnd an arithmetic means.
[0018]
In the first data processing device, the calculation means can perform linear primary prediction calculation using the tap coefficient and the conversion data.
[0019]
The first data processing apparatus can further be provided with storage means for storing tap coefficients. In this case, the acquisition means can acquire the tap coefficients from the storage means.
[0020]
In the first data processing apparatus, the transformed data can be obtained by subjecting the original data to orthogonal transformation or frequency transformation and further quantization.
[0021]
The first data processing apparatus can further include an inverse quantization means for inversely quantizing the transformed data, and the computing means can perform a prediction computation using the inversely quantized transformed data. .
[0022]
In the first data processing apparatus, the converted data may be obtained by performing at least discrete cosine transform on the original data.
[0023]
The first data processing device may further include prediction tap extraction means for extracting conversion data used together with the tap coefficient to predict the attention data of interest among the processing data, and outputting it as a prediction tap. In this case, the calculation means can perform the prediction calculation using the prediction tap and the tap coefficient.
[0024]
In the first data processing device, class tap extraction means for extracting conversion data used for classifying attention data into any one of several classes and outputting it as a class tap, and based on the class tap And classifying means for classifying the class of attention data. In this case, the arithmetic means performs prediction calculation using a prediction tap and a tap coefficient corresponding to the class of attention data. Can be made.
[0025]
In the first data processing apparatus, the computing means can obtain processing data obtained by performing processing for improving the quality of the original data by performing a predetermined prediction computation.
[0026]
In the first data processing device, the tap coefficient is statistically minimized so that the prediction error of the predicted value of the processing data obtained by performing a predetermined prediction calculation using the tap coefficient and the conversion data is statistically minimized. It can be obtained by learning.
[0027]
In the first data processing apparatus, the original data can be moving image or still image data.
[0028]
In the first data processing apparatus, the calculation means can obtain processing data obtained by performing processing for improving the image quality of the image data by performing a predetermined prediction calculation.
[0029]
In the first data processing apparatus, the calculation means can obtain processing data in which the resolution of the image data in the time or spatial direction is improved.
[0030]
  According to the first data processing method of the present invention, an acquisition step of acquiring a tap coefficient obtained by performing learning, and a predetermined prediction calculation using the tap coefficient and the conversion data, Decrypt to the original dataAt the same time, Obtain the processed data by applying the predetermined processing to the original dataRuAnd a calculation step.
[0031]
  The first recording medium of the present invention obtains the converted data by performing a predetermined prediction operation using the acquisition step of acquiring the tap coefficient obtained by learning and the tap coefficient and the converted data. Decrypt toAt the same time, Obtain the processed data by applying the predetermined processing to the original dataRuA program comprising a calculation step is recorded.
[0032]
The second data processing apparatus according to the present invention includes a semi-teacher data generation unit that obtains semi-teacher data by performing a process based on a predetermined process on teacher data serving as a teacher, and at least orthogonal transformation or frequency of the semi-teacher data. By converting, student data generating means for generating student data to be a student, and the prediction error of the predicted value of the teacher data obtained by performing the prediction calculation using the tap coefficient and the student data is statistically minimized. And learning means for obtaining a tap coefficient and learning.
[0033]
In the second data processing apparatus, the learning means is configured so that the prediction error of the predicted value of the teacher data obtained by performing the linear primary prediction calculation using the tap coefficient and the student data is statistically minimized. Learning can be done.
[0034]
In the second data processing device, the student data generation means can generate student data by performing orthogonal transformation or frequency transformation on the semi-teacher data and further quantizing the data.
[0035]
In the second data processing device, the student data generating means can generate student data by quantizing the semi-teacher data by orthogonal transform or frequency transform, and further dequantizing the quantized data.
[0036]
In the second data processing apparatus, the student data generation means can generate student data by performing at least discrete cosine transform on the semi-teacher data.
[0037]
The second data processing device is further provided with prediction tap extraction means for extracting student data used together with the tap coefficient for predicting the attention teacher data of interest among the teacher data, and outputting it as a prediction tap. In this case, the learning means may perform learning so that the prediction error of the predicted value of the teacher data obtained by performing the prediction calculation using the prediction tap and the tap coefficient is statistically minimized. Can do.
[0038]
The second data processing apparatus includes: class tap extracting means for extracting student data used for classifying the teacher data of interest into one of several classes, and outputting the data as class taps; And a class classification unit for classifying the class of the attention teacher data based on the prediction tap and the tap coefficient corresponding to the class of the attention teacher data. Learning can be performed so that the prediction error of the predicted value of the teacher data obtained by performing the operation is statistically minimized, and the tap coefficient for each class can be obtained.
[0039]
In the second data processing apparatus, the student data generation means can generate student data by performing at least orthogonal transform processing or frequency conversion of the semi-teacher data for each predetermined unit.
[0040]
In the second data processing apparatus, the semi-teacher data generation means can generate semi-teacher data by performing a process for degrading the quality of the teacher data.
[0041]
In the second data processing apparatus, the teacher data can be moving image or still image data.
[0042]
In the second data processing apparatus, the semi-teacher data generation unit can generate semi-teacher data by performing a process of degrading the image quality of the image data.
[0043]
In the second data processing apparatus, the semi-teacher data generation means can generate semi-teacher data in which the resolution of the image data in time or space direction is degraded.
[0044]
The second data processing method of the present invention provides a semi-teacher data generation step for obtaining semi-teacher data by performing processing based on a predetermined process on the teacher data serving as a teacher, and at least orthogonal transformation or frequency of the semi-teacher data. By converting, the student data generation step for generating student data as students, and the prediction error of the predicted value of the teacher data obtained by performing the prediction calculation using the tap coefficient and the student data are statistically minimized. And a learning step for obtaining a tap coefficient.
[0045]
The second recording medium of the present invention includes a semi-teacher data generation step for obtaining semi-teacher data by performing a process based on a predetermined process on teacher data serving as a teacher, and at least orthogonal transform or frequency transform of the semi-teacher data. As a result, the student data generation step for generating the student data to be a student and the prediction error of the predicted value of the teacher data obtained by performing the prediction calculation using the tap coefficient and the student data are statistically minimized. In this manner, a program including a learning step for learning and obtaining a tap coefficient is recorded.
[0046]
  In the first data processing apparatus, data processing method, and recording medium of the present invention, a tap coefficient obtained by learning is acquired, and a predetermined prediction calculation is performed using the tap coefficient and converted data. The converted data is decrypted to the original data.At the same time, Processed data that has undergone predetermined processing on its original dataIs obtained.
[0047]
In the second data processing apparatus, data processing method, and recording medium of the present invention, processing based on predetermined processing is performed on teacher data serving as a teacher, and at least orthogonal transformation is performed on the resulting semi-teacher data. Alternatively, student data to be students is generated by frequency conversion. Then, learning is performed so that the prediction error of the predicted value of the teacher data obtained by performing the prediction calculation using the tap coefficient and the student data is statistically minimized, and the tap coefficient is obtained.
[0048]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 2 shows a configuration example of an embodiment of an image transmission system to which the present invention is applied.
[0049]
The image data to be transmitted is supplied to the encoder 21. The encoder 21 performs, for example, JPEG encoding on the image data supplied thereto to obtain encoded data. That is, the encoder 21 is configured in the same manner as the JPEG encoding apparatus shown in FIG. 1A, for example, and JPEG encodes image data. The encoded data obtained by JPEG encoding by the encoder 21 is recorded on a recording medium 23 made of, for example, a semiconductor memory, a magneto-optical disk, a magnetic disk, an optical disk, a magnetic tape, a phase change disk, or the like. For example, the transmission is performed via a transmission medium 24 including a terrestrial wave, a satellite line, a CATV (Cable Television) network, the Internet, and a public line.
[0050]
The decoder 22 receives the encoded data provided via the recording medium 23 or the transmission medium 24 and decodes it into high-quality image data. The decoded high-quality image data is supplied to, for example, a monitor (not shown) and displayed.
[0051]
Next, FIG. 3 shows a configuration example of the decoder 22 of FIG.
[0052]
The encoded data is supplied to the entropy decoding circuit 31. The entropy decoding circuit 31 entropy-decodes the encoded data, and obtains the quantized DCT coefficient Q for each block obtained as a result as a coefficient. This is supplied to the conversion circuit 32. The encoded data includes a quantization table in addition to the quantized DCT coefficient subjected to entropy encoding, as in the case described with the entropy decoding circuit 11 in FIG. 1C. Can be used for decoding the quantized DCT coefficients, as will be described later.
[0053]
The coefficient conversion circuit 32 performs a predetermined prediction operation using the quantized DCT coefficient Q from the entropy decoding circuit 31 and a tap coefficient obtained by performing learning described later, thereby performing a quantized DCT coefficient for each block. Is converted into an 8 × 8 pixel original block, and further, data subjected to processing for improving the image quality of the original block is obtained. That is, the original block is composed of 8 × 8 pixels, but the coefficient conversion circuit 32 performs the prediction calculation using the tap coefficient, thereby reducing the horizontal and vertical spatial resolutions of the 8 × 8 pixel block. , Both obtain a block of 16 × 16 pixels that is doubled. Accordingly, here, the coefficient conversion circuit 32 decodes and outputs a block composed of 8 × 8 quantized DCT coefficients to a block composed of 16 × 16 pixels, as shown in FIG.
[0054]
The block decomposition circuit 33 obtains and outputs a decoded image with improved spatial resolution by unblocking the 16 × 16 pixel block obtained in the coefficient conversion circuit 32.
[0055]
Next, processing of the decoder 22 in FIG. 3 will be described with reference to the flowchart in FIG.
[0056]
The encoded data is sequentially supplied to the entropy decoding circuit 31. In step S1, the entropy decoding circuit 31 entropy decodes the encoded data and supplies the quantized DCT coefficient Q for each block to the coefficient conversion circuit 32. In step S2, the coefficient conversion circuit 32 decodes the quantized DCT coefficient Q for each block from the entropy decoding circuit 31 into a pixel value for each block by performing a prediction calculation using a tap coefficient, and A so-called high-resolution block in which the spatial resolution of the block is improved is obtained and supplied to the block decomposition circuit 33. In step S3, the block decomposition circuit 33 performs block decomposition to unblock the pixel value block with improved spatial resolution from the coefficient conversion circuit 32, and outputs a high-resolution decoded image obtained as a result. The process is terminated.
[0057]
Next, the coefficient conversion circuit 32 of FIG. 3 can decode the quantized DCT coefficients into pixel values using, for example, class classification adaptation processing, and obtain an image with improved spatial resolution. .
[0058]
Class classification adaptive processing consists of class classification processing and adaptive processing. Data is classified into classes based on their properties by class classification processing, and adaptive processing is performed for each class. It is of the technique like. Here, in order to simplify the description, the case where the quantized DCT coefficients are decoded into the original image will be described as an example of the adaptive processing.
[0059]
In this case, in the adaptive processing, for example, the quantized DCT coefficient is decoded into the original pixel value by obtaining the predicted value of the original pixel by linear combination of the quantized DCT coefficient and a predetermined tap coefficient. .
[0060]
Specifically, for example, a certain image is used as teacher data, and the image is subjected to DCT processing in units of blocks, and further quantized DCT coefficients obtained by quantization are used as student data, and the pixel of the teacher data is determined. The predicted value E [y] of the pixel value y is converted into several quantized DCT coefficients x1, X2, ... and a predetermined tap coefficient w1, W2Consider a linear primary combination model defined by the linear combination of. In this case, the predicted value E [y] can be expressed by the following equation.
[0061]
E [y] = w1x1+ W2x2+ ...
... (1)
[0062]
To generalize equation (1), tap coefficient wjA matrix W consisting ofijAnd a predicted value E [yj] Is a matrix Y ′ consisting of
[Expression 1]
Figure 0004752088
Then, the following observation equation holds.
[0063]
XW = Y ’
... (2)
Here, the component x of the matrix XijIs a set of i-th student data (i-th teacher data yiThe j-th student data in the set of student data used for the prediction ofjRepresents a tap coefficient by which a product with the jth student data in the student data set is calculated. YiRepresents the i-th teacher data, and thus E [yi] Represents the predicted value of the i-th teacher data. Note that y on the left side of Equation (1) is the component y of the matrix Y.iThe suffix i is omitted, and x on the right side of Equation (1)1, X2,... Are also components x of the matrix XijThe suffix i is omitted.
[0064]
Then, it is considered to apply the least square method to this observation equation to obtain a predicted value E [y] close to the original pixel value y. In this case, a matrix Y composed of a set of true pixel values y serving as teacher data and a matrix E composed of a set of residuals e of predicted values E [y] for the pixel values y are
[0065]
[Expression 2]
Figure 0004752088
From the equation (2), the following residual equation is established.
[0066]
XW = Y + E
... (3)
[0067]
In this case, the tap coefficient w for obtaining the predicted value E [y] close to the original pixel value y.jIs the square error
[Equation 3]
Figure 0004752088
Can be obtained by minimizing.
[0068]
Therefore, the above square error is converted to the tap coefficient w.jWhen the value differentiated by 0 is 0, that is, the tap coefficient w satisfying the following equation:jHowever, this is the optimum value for obtaining the predicted value E [y] close to the original pixel value y.
[0069]
[Expression 4]
Figure 0004752088
... (4)
[0070]
Therefore, first, the equation (3) is changed to the tap coefficient w.jIs differentiated by the following equation.
[0071]
[Equation 5]
Figure 0004752088
... (5)
[0072]
From equations (4) and (5), equation (6) is obtained.
[0073]
[Formula 6]
Figure 0004752088
... (6)
[0074]
Furthermore, the student data x in the residual equation of equation (3)ij, Tap coefficient wj, Teacher data yiAnd residual eiConsidering this relationship, the following normal equation can be obtained from the equation (6).
[0075]
[Expression 7]
Figure 0004752088
... (7)
[0076]
In addition, the normal equation shown in Expression (7) has a matrix (covariance matrix) A and a vector v,
[Equation 8]
Figure 0004752088
And the vector W is defined as shown in Equation 1,
AW = v
... (8)
Can be expressed as
[0077]
Each normal equation in equation (7) is the student data xijAnd teacher data yiBy preparing a certain number of sets, a tap coefficient w to be obtainedjTherefore, by solving equation (8) with respect to vector W (however, to solve equation (8), matrix A in equation (8) is regular). Required), the optimal tap coefficient (here, the tap coefficient that minimizes the square error) wjCan be requested. In solving the equation (8), for example, a sweeping method (Gauss-Jordan elimination method) or the like can be used.
[0078]
As described above, the optimum tap coefficient wjAnd tap coefficient wjThe adaptive processing is to obtain the predicted value E [y] close to the original pixel value y using the equation (1).
[0079]
For example, when an image having the same image quality as an image to be JPEG-encoded is used as teacher data, and a quantized DCT coefficient obtained by DCT and quantizing the teacher data is used as student data, tap coefficients are In this case, when JPEG-encoded image data is decoded into the original image data, an image having a statistically minimum prediction error is obtained.
[0080]
Therefore, even if the compression rate at the time of performing JPEG encoding is increased, that is, even if the quantization step used for quantization is rough, according to the adaptive processing, a decoding process in which the prediction error is statistically minimized. In effect, a JPEG-encoded image decoding process and a process for improving the image quality (hereinafter referred to as an improvement process as appropriate) are performed simultaneously. . As a result, the image quality of the decoded image can be maintained even when the compression rate is increased.
[0081]
Further, for example, an image with higher image quality than the image to be JPEG encoded is used as the teacher data, and the image quality of the teacher data is deteriorated to the same image quality as the image to be JPEG encoded as the student data. When quantized DCT coefficients obtained by quantization are used, as tap coefficients, JPEG-encoded image data is decoded into high-quality image data, and the prediction error is statistically minimized. Will be obtained.
[0082]
Therefore, also in this case, according to the adaptive processing, the decoding processing of the JPEG-encoded image and the improvement processing for further improving the image quality are performed at the same time. Note that, as described above, it is possible to obtain a tap coefficient that sets the image quality of the decoded image to an arbitrary level by changing the image quality of the image that becomes teacher data or student data.
[0083]
FIG. 6 shows a first configuration example of the coefficient conversion circuit 32 of FIG. 3 that decodes the quantized DCT coefficients into pixel values by the class classification adaptive processing as described above.
[0084]
The quantized DCT coefficients for each block output from the entropy decoding circuit 31 (FIG. 3) are supplied to the prediction tap extraction circuit 41 and the class tap extraction circuit.
[0085]
The prediction tap extraction circuit 41 is a block of high-quality pixel values corresponding to a block of 8 × 8 quantized DCT coefficients supplied thereto (hereinafter referred to as a DCT block as appropriate). Although not present at the stage, it is virtually assumed) (hereinafter referred to as a high-quality block as appropriate) (in this embodiment, as described above, a block of 16 × 16 pixels) is sequentially added to the high-quality block of interest. Further, each pixel constituting the target high-quality block is sequentially set as the target pixel in the so-called raster scan order, for example. Further, the prediction tap extraction circuit 41 extracts a quantized DCT coefficient used for predicting the pixel value of the target pixel and sets it as a prediction tap.
[0086]
That is, the prediction tap extraction circuit 41, for example, as shown in FIG. 7, all the quantized DCT coefficients of the DCT block corresponding to the high-quality block to which the target pixel belongs, that is, 64 × 8 quantized DCTs of 8 × 8. Coefficients are extracted as prediction taps. Therefore, in this embodiment, the same prediction tap is configured for all pixels of a certain high-quality block. However, the prediction tap can be configured with different quantized DCT coefficients for each pixel of interest.
[0087]
The prediction taps for each pixel constituting the high-quality block obtained by the prediction tap extraction circuit 41, that is, 256 sets of prediction taps for each of 16 × 16 256 pixels, are supplied to the product-sum operation circuit 45. However, in the present embodiment, as described above, the same prediction tap is configured for all the pixels of the high-quality block, so in fact, one set of prediction taps for one high-quality block. May be supplied to the product-sum operation circuit 45.
[0088]
The class tap extraction circuit 42 extracts a quantized DCT coefficient used for class classification for classifying the pixel of interest into one of several classes, and sets it as a class tap.
[0089]
In JPEG encoding, an image is encoded (DCT processing and quantization) for each 8 × 8 pixel block (hereinafter referred to as a pixel block as appropriate). For example, all the pixels belonging to the image quality block are classified into the same class. Therefore, the class tap extraction circuit 42 configures the same class tap for each pixel of a certain high quality block. That is, the class tap extraction circuit 42, for example, as in the prediction tap extraction circuit 41, all the 8 × 8 DCT blocks corresponding to the high-quality block to which the target pixel belongs as shown in FIG. Quantized DCT coefficients are extracted as class taps.
[0090]
Here, classifying all pixels belonging to a high quality block into the same class is equivalent to classifying the high quality block. Therefore, the class tap extraction circuit 42 does not have 256 sets of class taps for classifying each of the total of 256 pixels of 16 × 16 constituting the target high-quality block, but 1 for classifying the target high-quality block. For this reason, the class tap extraction circuit 42 classifies 64 high-quality blocks corresponding to the high-quality block in order to classify the high-quality block for each high-quality block. The quantized DCT coefficients are extracted to form class taps.
[0091]
Note that the quantized DCT coefficients constituting the prediction tap and the class tap are not limited to those having the above-described pattern.
[0092]
The class tap of the high-quality block of interest obtained in the class tap extraction circuit 42 is supplied to the class classification circuit 43. The class classification circuit 43 is based on the class tap from the class tap extraction circuit 42, Classify the high-quality block of interest and class code corresponding to the resulting class is output.
[0093]
Here, as a method of classifying, for example, ADRC (Adaptive Dynamic Range Coding) or the like can be employed.
[0094]
In the method using ADRC, the quantized DCT coefficients constituting the class tap are subjected to ADRC processing, and the class of the high-quality block of interest is determined according to the ADRC code obtained as a result.
[0095]
In the K-bit ADRC, for example, the maximum value MAX and the minimum value MIN of the quantized DCT coefficient constituting the class tap are detected, and DR = MAX-MIN is set as a local dynamic range of the set, and this dynamic range Based on DR, the quantized DCT coefficients constituting the class tap are requantized to K bits. That is, the minimum value MIN is subtracted from the quantized DCT coefficients constituting the class tap, and the subtracted value is DR / 2.KDivide by (quantize). Then, a bit string obtained by arranging the K-bit quantized DCT coefficients constituting the class tap in a predetermined order, which is obtained as described above, is output as an ADRC code. Therefore, when a class tap is subjected to, for example, 1-bit ADRC processing, each quantized DCT coefficient constituting the class tap is an average of the maximum value MAX and the minimum value MIN after the minimum value MIN is subtracted. Dividing by the value, each quantized DCT coefficient becomes 1 bit (binarized). Then, a bit string in which the 1-bit quantized DCT coefficients are arranged in a predetermined order is output as an ADRC code.
[0096]
Note that the class classification circuit 43 can output the level distribution pattern of the quantized DCT coefficients constituting the class tap as it is as a class code, for example. In this case, the class tap has N class taps. Assuming that each of the quantized DCT coefficients is composed of quantized DCT coefficients and K bits are assigned to each quantized DCT coefficient, the number of class codes output by the class classification circuit 43 is (2N)KAs a result, it becomes a huge number that is exponentially proportional to the number of bits K of the quantized DCT coefficient.
[0097]
Therefore, the class classification circuit 43 preferably performs class classification after compressing the information amount of the class tap by the above-described ADRC processing or vector quantization.
[0098]
By the way, in this embodiment, the class tap is composed of 64 quantized DCT coefficients as described above. Therefore, for example, even if class classification is performed by performing 1-bit ADRC processing on a class tap, the number of class codes is 264It becomes a big value of street.
[0099]
Therefore, in the present embodiment, the class classification circuit 43 extracts feature quantities having high importance from the quantized DCT coefficients constituting the class tap, and performs class classification based on the feature quantities, thereby obtaining the number of classes. Is to be reduced.
[0100]
That is, FIG. 8 shows a configuration example of the class classification circuit 43 of FIG.
[0101]
The class tap is supplied to the power calculation circuit 51, and the power calculation circuit 51 divides the quantized DCT coefficients constituting the class tap into those of several spatial frequency bands. Calculate power.
[0102]
That is, the power calculation circuit 51 converts the 8 × 8 quantized DCT coefficients constituting the class tap into, for example, four spatial frequency bands S as shown in FIG.0, S1, S2, SThreeDivide into
[0103]
Here, it is assumed that each of 8 × 8 quantized DCT coefficients constituting the class tap is represented by adding a sequential integer from 0 to the alphabet x in the raster scan order as shown in FIG. , Spatial frequency band S0Is the four quantized DCT coefficients x0, X1, X8, X9And the spatial frequency band S1Is the 12 quantized DCT coefficients x2, XThree, XFour, XFive, X6, X7, XTen, X11, X12, X13, X14, X15Consists of In addition, the spatial frequency band S2Is the 12 quantized DCT coefficients x16, X17, Xtwenty four, Xtwenty five, X32, X33, X40, X41, X48, X49, X56, X57And the spatial frequency band SThreeIs the 36 quantized DCT coefficients x18, X19, X20, Xtwenty one, Xtwenty two, Xtwenty three, X26, X27, X28, X29, X30, X31, X34, X35, X36, X37, X38, X39, X42, X43, X44, X45, X46, X47, X50, X51, X52, X53, X54, X55, X58, X59, X60, X61, X62, X63Consists of
[0104]
Further, the power calculation circuit 51 has a spatial frequency band S0, S1, S2, SThreeFor each, the power P of the AC component of the quantized DCT coefficient0, P1, P2, PThreeIs output to the class code generation circuit 52.
[0105]
That is, the power calculation circuit 51 has the spatial frequency band S0For the above four quantized DCT coefficients x0, X1, X8, X9AC component x of1, X8, X9Sum of squares x1 2+ X8 2+ X9 2And this is the power P0Is output to the class code generation circuit 52. Further, the power calculation circuit 51 obtains the AC component of the above-described 12 quantized DCT coefficients for the spatial frequency band S1, that is, the sum of squares of all the 12 quantized DCT coefficients.1Is output to the class code generation circuit 52. Further, the power calculation circuit 51 has a spatial frequency band S2And SThreeAlso for the spatial frequency band S1In the same way as in FIG.2And PThreeAnd is output to the class code generation circuit 52.
[0106]
The class code generation circuit 52 receives the power P from the power calculation circuit 51.0, P1, P2, PThreeAre respectively compared with the corresponding threshold values TH0, TH1, TH2, and TH3 stored in the threshold value table storage unit 53, and class codes are output based on the respective magnitude relationships. That is, the class code generation circuit 52 uses the power P0Is compared with the threshold value TH0, and a 1-bit code representing the magnitude relationship is obtained. Similarly, the class code generation circuit 52 uses the power P1And threshold TH1, power P2And threshold TH2, power PThreeAnd the threshold TH3 are respectively compared to obtain a 1-bit code. Then, the class code generation circuit 52, for example, a 4-bit code obtained by arranging the four 1-bit codes obtained as described above in a predetermined order (accordingly, any one of 0 to 15). Is output as a class code representing the class of the high-quality block of interest. Therefore, in this embodiment, the target high-quality block is 2FourIt is classified into one of (= 16) classes.
[0107]
The threshold table storage unit 53 includes a spatial frequency band S0Thru SThreePower P0Thru PThreeThe thresholds TH0 to TH3 to be compared with each are stored.
[0108]
In the above case, the DC component x of the quantized DCT coefficient is included in the classification process.0Is not used, but this DC component x0It is also possible to perform class classification processing using.
[0109]
Returning to FIG. 6, the class code output from the class classification circuit 43 as described above is given to the coefficient table storage unit 44 as an address.
[0110]
The coefficient table storage unit 44 stores a coefficient table in which tap coefficients obtained by performing learning processing described later are registered, and is stored at an address corresponding to the class code output by the class classification circuit 43. The tap coefficient is output to the product-sum operation circuit 45.
[0111]
Here, in the present embodiment, one class code is obtained for the high-quality block of interest. On the other hand, in the present embodiment, the high-quality block is composed of 256 pixels of 16 × 16 pixels. Therefore, for the high-quality block of interest, 256 sets of tap coefficients for decoding each of the 256 pixels constituting the high-quality block. is required. Accordingly, the coefficient table storage unit 44 stores 256 sets of tap coefficients for the address corresponding to one class code.
[0112]
The product-sum operation circuit 45 acquires the prediction tap output from the prediction tap extraction circuit 41 and the tap coefficient output from the coefficient table storage unit 44, and uses the prediction tap and the tap coefficient to obtain Equation (1). The block prediction circuit 33 (the predicted value) of the 16 × 16 pixels of the target high-quality block obtained as a result of the linear prediction calculation (product-sum operation) shown in FIG. Output to FIG.
[0113]
Here, in the prediction tap extraction circuit 41, as described above, each pixel of the target high-quality block is sequentially set as the target pixel. However, the product-sum operation circuit 45 determines the target pixel of the target high-quality block as the target pixel. Processing is performed in an operation mode (hereinafter referred to as a pixel position mode as appropriate) corresponding to the pixel position.
[0114]
That is, for example, among the pixels of the target high-quality block, the i-th pixel in the raster scan order is set to p.iAnd the pixel piHowever, if it is the pixel of interest, the product-sum operation circuit 45 performs the processing of the pixel position mode #i.
[0115]
Specifically, as described above, the coefficient table storage unit 44 outputs 256 sets of tap coefficients for decoding each of the 256 pixels constituting the target high-quality block.iA set of tap coefficients for decodingiWhen the operation mode is the pixel position mode #i, the product-sum operation circuit 45 represents the prediction tap and the set W among the 256 sets of tap coefficients.iAnd the product-sum operation of Expression (1) is performed, and the product-sum operation result is expressed as pixel p.iIs the decoding result.
[0116]
Next, processing of the coefficient conversion circuit 32 of FIG. 6 will be described with reference to the flowchart of FIG.
[0117]
The quantized DCT coefficients for each block output from the entropy decoding circuit 31 (FIG. 3) are sequentially received by the prediction tap extraction circuit 41 and the class tap extraction circuit 42, and the prediction tap extraction circuit 41 supplies the quantization supplied thereto. A high-quality block corresponding to a block of DCT coefficients (DCT block) is sequentially set as a noticeable high-quality block.
[0118]
Then, in step S11, the class tap extraction circuit 42 extracts a class tap from the received quantized DCT coefficients to be used for classifying the target high-quality block, and forms a class tap. 43.
[0119]
In step S 12, the class classification circuit 43 classifies the target high-quality block using the class tap from the class tap extraction circuit 42, and outputs the class code obtained as a result to the coefficient table storage unit 44.
[0120]
That is, in step S12, as shown in the flowchart of FIG. 11, first, in step S21, the power calculation circuit 51 of the class classification circuit 43 (FIG. 8) performs 8 × 8 quantizations constituting the class tap. The DCT coefficients are represented by the four spatial frequency bands S shown in FIG.0Thru SThreeDivided into each power P0Thru PThreeIs calculated. This power P0Thru PThreeIs output from the power calculation circuit 51 to the class code generation circuit 52.
[0121]
In step S22, the class code generation circuit 52 reads the thresholds TH0 to TH3 from the threshold table storage unit 53, and the power P from the power calculation circuit 51 is read.0Thru PThreeEach is compared with each of the thresholds TH0 to TH3, class codes based on the respective magnitude relationships are generated, and the process returns.
[0122]
Returning to FIG. 10, the class code obtained as described above in step S <b> 12 is given as an address from the class classification circuit 43 to the coefficient table storage unit 44.
[0123]
When the coefficient table storage unit 44 receives the class code as the address from the class classification circuit 43, in step S13, the coefficient table storage unit 44 stores 256 sets of tap coefficients (256 sets of taps corresponding to the class of the class code). Coefficient) is read out and output to the product-sum operation circuit 45.
[0124]
Then, the process proceeds to step S14, and the prediction tap extraction circuit 41 sets a pixel value of the target pixel as a target pixel that is not yet set as the target pixel in the raster scan order among the pixels of the target high-quality block. A quantized DCT coefficient used for prediction is extracted and configured as a prediction tap. This prediction tap is supplied from the prediction tap extraction circuit 41 to the product-sum operation circuit 45.
[0125]
Here, in the present embodiment, for each high-quality block, the same prediction tap is configured for all the pixels of the high-quality block. If only the pixel that is the first pixel of interest is performed, there is no need to perform the remaining 255 pixels.
[0126]
In step S15, the product-sum operation circuit 45 acquires a set of tap coefficients corresponding to the pixel position mode for the pixel of interest from among the 256 sets of tap coefficients output from the coefficient table storage unit 44 in step S13, and the tap coefficients. And the prediction tap supplied from the prediction tap extraction circuit 41 in step S14, the product-sum operation shown in Expression (1) is performed to obtain the decoded value of the pixel value of the target pixel.
[0127]
Then, the process proceeds to step S16, and the prediction tap extraction circuit 41 determines whether or not processing has been performed on all pixels of the target high-quality block as the target pixel. If it is determined in step S16 that all the pixels in the target high-quality block have not been processed as target pixels, the process returns to step S14, and the prediction tap extraction circuit 41 selects the pixels in the target high-quality block. In the raster scan order, a pixel that has not yet been set as the target pixel is newly set as the target pixel, and the same processing is repeated.
[0128]
If it is determined in step S16 that all the pixels of the target high-quality block have been processed as the target pixel, that is, the decoded values (8 × 8 quantized DCT coefficients) of all the pixels of the target high-quality block. Is calculated to 8 × 8 pixels, and the 8 × 8 pixels having a high image quality of 16 × 16 pixels) is obtained, the product-sum operation circuit 45 is configured with the decoded values. The high-quality block is output to the block decomposition circuit 33 (FIG. 3), and the process ends.
[0129]
Note that the process according to the flowchart of FIG. 10 is repeated each time the prediction tap extraction circuit 41 sets a new high-quality block of interest.
[0130]
Next, FIG. 12 shows a configuration example of an embodiment of a learning apparatus that performs learning processing of tap coefficients stored in the coefficient table storage unit 44 of FIG.
[0131]
One or more pieces of image data for learning are supplied to the thinning circuit 60 as teacher data to be a teacher at the time of learning. The thinning circuit 60 uses FIG. The product-sum operation circuit 45 in the coefficient conversion circuit 32 performs a process based on the improvement process performed by performing the product-sum operation using the tap coefficient. That is, here, the improvement processing is processing for converting 8 × 8 pixels into a high-quality image of 16 × 16 pixels (with improved resolution) obtained by doubling the horizontal and vertical spatial resolutions. Therefore, the thinning circuit 60 thins out the pixels of the image data as the teacher data, and generates image data (hereinafter, referred to as semi-teacher data as appropriate) in which the number of horizontal and vertical pixels is halved.
[0132]
The image data as the semi-teacher data has the same image quality (resolution) as the image data to be JPEG encoded in the encoder 21 (FIG. 1). If the image to be processed is an SD (Standard Density) image, it is necessary to use an HD (High Density) image in which the number of horizontal and vertical pixels of the SD image is doubled as the teacher data image. is there.
[0133]
The blocking circuit 61 blocks an SD image as one or more pieces of semi-teacher data generated by the thinning circuit 60 into a pixel block of 8 × 8 pixels as in the case of JPEG encoding.
[0134]
The DCT circuit 62 sequentially reads out the pixel blocks formed into blocks by the blocking circuit 61, and performs DCT processing on the pixel blocks to form a block of DCT coefficients. This block of DCT coefficients is supplied to the quantization circuit 63.
[0135]
The quantization circuit 63 quantizes the block of DCT coefficients from the DCT circuit 62 according to the same quantization table used for JPEG encoding in the encoder 21 (FIG. 2), and the resulting quantized DCT coefficients Are sequentially supplied to the prediction tap extraction circuit 64 and the class tap extraction circuit 65.
[0136]
The prediction tap extraction circuit 64 uses the prediction tap extraction circuit of FIG. 6 for the pixel that is the target pixel among the 16 × 16 pixels that form the high-quality block that the later-described normal equation addition circuit 67 uses as the target high-quality block. The same prediction tap as that of 41 is configured by extracting the necessary quantized DCT coefficients from the output of the quantization circuit 63. The prediction tap is supplied from the prediction tap extraction circuit 64 to the normal equation addition circuit 67 as student data to be a student at the time of learning.
[0137]
The class tap extraction circuit 65 extracts the necessary quantized DCT coefficient from the output of the quantization circuit 63 for the target high-quality block from the output of the quantization circuit 63, which is the same class tap as the class tap extraction circuit 42 of FIG. Consists of. This class tap is supplied from the class tap extraction circuit 65 to the class classification circuit 66.
[0138]
The class classification circuit 66 performs the same processing as the class classification circuit 43 in FIG. 6 using the class tap from the class tap extraction circuit 65, thereby classifying the high-quality block of interest and class code obtained as a result Is supplied to the normal equation adding circuit 67.
[0139]
The normal equation addition circuit 67 is supplied with the same HD image as that supplied to the thinning circuit 60 as the teacher data. The normal equation addition circuit 67 converts the HD image into 16 × 16 pixels. The high-quality block is made a block, and the high-quality block is sequentially set as a noticeable high-quality block. Further, the normal equation addition circuit 67 sequentially sets, for example, pixels that are not yet set as the target pixel in the raster scan order among the 16 × 16 pixels constituting the target high-quality block, and sets the target pixel ( Pixel values) and prediction taps from the prediction tap configuration circuit 64 (quantized DCT coefficients) are added.
[0140]
That is, the normal equation adding circuit 67 is a component in the matrix A of Expression (8) using a prediction tap (student data) for each class corresponding to the class code supplied from the class classification circuit 66. Multiplication of student data (xinxim) And a calculation corresponding to summation (Σ).
[0141]
Further, the normal equation addition circuit 67 uses the prediction tap (student data) and the target pixel (teacher data) for each class corresponding to the class code supplied from the class classification circuit 66, and uses the vector of equation (8). Multiplying student data and teacher data (xinyi) And a calculation corresponding to summation (Σ).
[0142]
Note that the addition as described above in the normal equation adding circuit 67 is performed for each pixel position mode with respect to the pixel of interest for each class.
[0143]
The normal equation adding circuit 67 performs the above addition using all the pixels constituting the HD image as the teacher data supplied thereto as the target pixel, and for each class, for each pixel position mode, the formula ( Establish the normal equation shown in 8).
[0144]
The tap coefficient determination circuit 68 obtains 256 sets of tap coefficients for each class by solving the normal equation generated for each class (and for each pixel position mode) in the normal equation addition circuit 67, and stores the coefficient table in the coefficient table. The address is supplied to the address corresponding to each class in the unit 69.
[0145]
Depending on the number of images to be prepared as learning images, the contents of the images, and the like, there may occur a class in which the number of normal equations necessary for obtaining tap coefficients cannot be obtained in the normal equation adding circuit 67. Although possible, the tap coefficient determination circuit 68 outputs, for example, a default tap coefficient for such a class.
[0146]
The coefficient table storage unit 69 stores 256 sets of tap coefficients for each class supplied from the tap coefficient determination circuit 68.
[0147]
Next, processing (learning processing) of the learning device in FIG. 12 will be described with reference to the flowchart in FIG.
[0148]
An HD image, which is image data for learning, is supplied to the thinning circuit 60 as teacher data. In step S30, the thinning circuit 60 thins out the pixels of the HD image as the teacher data, and the horizontal and vertical pixels. An SD image is generated as semi-teacher data in which the numbers are both halved.
[0149]
In step S31, the blocking circuit 61 converts the SD image as the semi-teacher data obtained by the thinning circuit 60 into a pixel of 8 × 8 pixels as in the case of JPEG encoding by the encoder 21 (FIG. 2). The block is divided into blocks, and the process proceeds to step S32. In step S32, the DCT circuit 62 sequentially reads out the pixel blocks blocked by the blocking circuit 61, and the pixel blocks are subjected to DCT processing to form a block of DCT coefficients, and the process proceeds to step S33. In step S33, the quantization circuit 63 sequentially reads the blocks of the DCT coefficients obtained in the DCT circuit 62, quantizes them according to the same quantization table used for JPEG encoding in the encoder 21, and performs the quantization DCT. It is assumed that the block is composed of coefficients (DCT block).
[0150]
On the other hand, the normal equation addition circuit 67 is also supplied with the HD image as the teacher data, and the normal equation addition circuit 67 blocks the HD image into high-quality blocks of 16 × 16 pixels. Of the image quality blocks, those that have not yet been marked as high image quality blocks are set as high image quality blocks. Further, in step S34, the class tap extraction circuit 65 obtains a quantized DCT coefficient used for classifying the target high-quality block among the pixel blocks blocked by the blocking circuit 61 by the quantization circuit 63. A class tap is constructed by extracting from the obtained DCT block and supplied to the class classification circuit 66. In step S35, the class classification circuit 66 classifies the high-quality block of interest using the class tap from the class tap extraction circuit 65 in the same manner as described with reference to the flowchart of FIG. Is supplied to the normal equation adding circuit 67, and the process proceeds to step S36.
[0151]
In step S36, the normal equation addition circuit 67 sets a pixel that has not yet been set as the target pixel in the raster scan order among the pixels of the target high-quality block, and the prediction tap extraction circuit 64 sets the target pixel. 6 is configured by extracting the necessary quantized DCT coefficients from the output of the quantization circuit 63, the same prediction tap as the prediction tap extraction circuit 41 of FIG. Then, the prediction tap extraction circuit 64 supplies the prediction tap for the pixel of interest as student data to the normal equation addition circuit 67, and proceeds to step S37.
[0152]
In step S37, the normal equation adding circuit 67 targets the target pixel as the teacher data and the prediction tap (the quantized DCT coefficient constituting the student data) as the target data, and the matrix A of the equation (8) and the vector v. Addition as described above is performed. This addition is performed for each class corresponding to the class code from the class classification circuit 66 and for each pixel position mode for the target pixel.
[0153]
Then, the process proceeds to step S38, and the normal equation adding circuit 67 determines whether or not addition has been performed using all the pixels of the target high-quality block as the target pixel. If it is determined in step S38 that all the pixels of the target high-quality block have not yet been added as target pixels, the process returns to step S36, and the normal equation adding circuit 67 determines the pixels of the target high-quality block. Among these, in the raster scan order, a pixel that has not yet been set as the target pixel is newly set as the target pixel, and the same processing is repeated thereafter.
[0154]
If it is determined in step S38 that all pixels of the target high-quality block have been added as target pixels, the process proceeds to step S39, and the normal equation adding circuit 67 is obtained from the image as the teacher data. It is determined whether all the high-quality blocks have been processed as the noticeable high-quality blocks. If it is determined in step S39 that all the high-quality blocks obtained from the image as the teacher data have not yet been processed as the noticeable high-quality blocks, the process returns to step S34 and is still designated as the noticeable high-quality blocks. The high-quality block that has not been used is newly set as the high-quality block of interest, and the same processing is repeated thereafter.
[0155]
On the other hand, when it is determined in step S39 that all the high-quality blocks obtained from the image as the teacher data have been processed as the noticeable high-quality blocks, that is, in the normal equation addition circuit 67, for each class, When the normal equation for each position mode is obtained, the process proceeds to step S40, and the tap coefficient determination circuit 68 solves the normal equation generated for each pixel position mode of each class, thereby for each class, 256 sets of tap coefficients corresponding to each of the 256 pixel position modes are obtained, supplied to and stored in the coefficient table storage unit 69 at addresses corresponding to the respective classes, and the process ends.
[0156]
As described above, the tap coefficient for each class stored in the coefficient table storage unit 69 is stored in the coefficient table storage unit 44 of FIG.
[0157]
Therefore, the tap coefficient stored in the coefficient table storage unit 44 is such that the prediction error (here, the square error) of the prediction value of the original pixel value obtained by performing the linear prediction calculation is statistically minimized. As a result, according to the coefficient conversion circuit 32 shown in FIG. 6, a high-quality image close to the image quality of the HD image using the JPEG-encoded image as the teacher data is obtained. Can be decoded into
[0158]
Further, according to the coefficient conversion circuit 32, as described above, the decoding process of the JPEG-encoded image and the improvement process for improving the image quality are performed at the same time. A decoded image with high image quality can be efficiently obtained from the obtained image.
[0159]
Next, FIG. 14 shows a second configuration example of the coefficient conversion circuit 32 of FIG. In the figure, portions corresponding to those in FIG. 6 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate. That is, the coefficient conversion circuit 32 in FIG. 14 is basically configured in the same manner as in FIG. 6 except that the inverse quantization circuit 71 is newly provided.
[0160]
In the embodiment of FIG. 14, the inverse quantization circuit 71 is supplied with quantized DCT coefficients for each block obtained by entropy decoding the encoded data in the entropy decoding circuit 31 (FIG. 3).
[0161]
As described above, the entropy decoding circuit 31 obtains a quantization table from the encoded data in addition to the quantized DCT coefficient. In the embodiment of FIG. 14, this quantization table is also entropy decoded. The circuit 31 is supplied to the inverse quantization circuit 71.
[0162]
The inverse quantization circuit 71 inversely quantizes the quantized DCT coefficient from the entropy decoding circuit 31 according to the quantization table also from the entropy decoding circuit 31, and the resulting DCT coefficient is converted into the prediction tap extraction circuit 41 and the class. This is supplied to the tap extraction circuit 42.
[0163]
Therefore, in the prediction tap extraction circuit 41 and the class tap extraction circuit 42, the prediction tap and the class tap are configured for the DCT coefficient instead of the quantized DCT coefficient, respectively. The same processing as in the case is performed.
[0164]
As described above, in the embodiment of FIG. 14, processing is performed not on the quantized DCT coefficient but on the DCT coefficient, so that the tap coefficient stored in the coefficient table storage unit 44 is different from that in FIG. 6. There is a need to.
[0165]
Therefore, FIG. 15 shows a configuration example of an embodiment of a learning apparatus that performs learning processing of tap coefficients to be stored in the coefficient table storage unit 44 of FIG. In the figure, portions corresponding to those in FIG. 12 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate. That is, the learning apparatus in FIG. 15 is basically configured in the same manner as in FIG. 12 except that an inverse quantization circuit 81 is newly provided at the subsequent stage of the quantization circuit 63.
[0166]
In the embodiment of FIG. 15, the inverse quantization circuit 81 inversely quantizes the quantized DCT coefficient output from the inverse quantization circuit 63 in the same manner as the inverse quantization circuit 71 of FIG. Is supplied to the prediction tap extraction circuit 64 and the class tap extraction circuit 65.
[0167]
Therefore, in the prediction tap extraction circuit 64 and the class tap extraction circuit 65, the prediction tap and the class tap are configured for the DCT coefficient instead of the quantized DCT coefficient, respectively, and thereafter, the DCT coefficient is the target in FIG. The same processing as in the case is performed.
[0168]
As a result, the tap coefficient which reduces the influence of the quantization error which arises when a DCT coefficient is quantized and is further dequantized will be obtained.
[0169]
Next, FIG. 16 shows a third configuration example of the coefficient conversion circuit 32 of FIG. In the figure, portions corresponding to those in FIG. 6 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate. That is, the coefficient conversion circuit 32 in FIG. 16 is basically configured in the same manner as in FIG. 6 except that the class tap extraction circuit 42 and the class classification circuit 43 are not provided.
[0170]
Therefore, in the embodiment of FIG. 16, there is no concept of class, but since this is also considered to be one class, the coefficient table storage unit 44 stores only one class of tap coefficients. This is used for processing.
[0171]
Thus, in the embodiment of FIG. 16, the tap coefficients stored in the coefficient table storage unit 44 are different from those in FIG.
[0172]
Therefore, FIG. 17 shows a configuration example of an embodiment of a learning apparatus that performs learning processing of tap coefficients to be stored in the coefficient table storage unit 44 of FIG. In the figure, portions corresponding to those in FIG. 12 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate. That is, the learning apparatus in FIG. 17 is basically configured in the same manner as in FIG. 12 except that the class tap extraction circuit 65 and the class classification circuit 66 are not provided.
[0173]
Therefore, in the learning apparatus of FIG. 17, the above-described addition is performed for each pixel position mode in the normal equation adding circuit 67 regardless of the class. Then, the tap coefficient determination circuit 68 calculates the tap coefficient by solving the normal equation generated for each pixel position mode.
[0174]
Next, FIG. 18 shows a fourth configuration example of the coefficient conversion circuit 32 of FIG. In the figure, portions corresponding to those in FIG. 6 or FIG. 14 are given the same reference numerals, and description thereof will be omitted below as appropriate. That is, the coefficient conversion circuit 32 of FIG. 18 is basically the same as that of FIG. 6 except that the class tap extraction circuit 42 and the class classification circuit 43 are not provided and the inverse quantization circuit 71 is newly provided. The configuration is the same as in FIG.
[0175]
Accordingly, in the embodiment of FIG. 18, as in the above-described embodiment of FIG. 16, only one class of tap coefficients is stored in the coefficient table storage unit 44, and processing is performed using this. Done.
[0176]
Further, in the embodiment of FIG. 18, as in the case of the embodiment of FIG. 14, the prediction tap extraction circuit 41 targets not the quantized DCT coefficient but the DCT coefficient output by the inverse quantization circuit 71. A prediction tap is configured, and processing is performed for the DCT coefficients thereafter.
[0177]
Therefore, also in the embodiment of FIG. 18, the tap coefficients stored in the coefficient table storage unit 44 are different from those in FIG.
[0178]
Therefore, FIG. 19 shows a configuration example of an embodiment of a learning apparatus that performs learning processing of tap coefficients stored in the coefficient table storage unit 44 of FIG. In the figure, portions corresponding to those in FIG. 12 or FIG. 15 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate. That is, the learning apparatus of FIG. 19 is basically the same as the case of FIG. 12 except that the class tap extraction circuit 65 and the class classification circuit 66 are not provided and the inverse quantization circuit 81 is newly provided. It is constituted similarly.
[0179]
Accordingly, in the learning device of FIG. 19, the prediction tap extraction circuit 64 configures a prediction tap not for the quantized DCT coefficient but for the DCT coefficient, and processing is performed for the DCT coefficient thereafter. Further, the above addition is performed regardless of the class in the normal equation adding circuit 67, and the tap coefficient is obtained by solving the normal equation generated regardless of the class in the tap coefficient determining circuit 68.
[0180]
Next, in the above description, 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. Is also possible.
[0181]
That is, FIG. 20 shows a configuration example of the encoder 21 of FIG. 2 when MPEG encoding is performed.
[0182]
Frames (or fields) constituting a moving image to be MPEG-encoded are sequentially supplied to the motion detection circuit 91 and the calculator 92.
[0183]
The motion detection circuit 91 detects a motion vector in units of 16 × 16 pixel macroblocks for the frame supplied thereto, and supplies the motion vector to the entropy encoding circuit 96 and the motion compensation circuit 100.
[0184]
If the image supplied thereto is an I (Intra) picture, the arithmetic unit 92 supplies it to the blocking circuit 93 as it is, and if it is a P (Predictive) or B (Bidirectionally predictive) picture, the operation compensation circuit 100. The difference from the reference image supplied from is calculated, and the difference value is supplied to the blocking circuit 93.
[0185]
The blocking circuit 93 blocks the output of the computing unit 92 into 8 × 8 pixel pixel blocks and supplies the block to the DCT circuit 94. The DCT circuit 94 performs DCT processing on the pixel block from the blocking circuit 93 and supplies the resulting DCT coefficient to the quantization circuit 95. The quantization circuit 95 quantizes the DCT coefficients in block units from the DCT circuit 93 in a predetermined quantization step, and supplies the quantized DCT coefficients obtained as a result to the entropy encoding circuit 96. The entropy encoding circuit 96 entropy encodes the quantized DCT coefficient from the quantization circuit 95, adds a motion vector from the motion detection circuit 91 and other necessary information, and obtains encoded data ( For example, an MPEG transport stream) is output as an MPEG encoding result.
[0186]
Of the quantized DCT coefficients output from the quantizing circuit 95, the I picture and the P picture need to be locally decoded to be used as a reference picture of the P picture or B picture to be encoded later. In addition to the circuit 96, it is also supplied to the inverse quantization circuit 97.
[0187]
The inverse quantization circuit 97 converts the quantized DCT coefficient from the quantization circuit 95 into a DCT coefficient by inverse quantization, and supplies the DCT coefficient to the inverse DCT circuit 98. The inverse DCT circuit 98 performs inverse DCT processing on the DCT coefficient from the inverse quantization circuit 97 and outputs it to the computing unit 99. In addition to the output of the inverse DCT circuit 98, the arithmetic unit 99 is also supplied with a reference image output from the motion compensation circuit 100. The arithmetic unit 99 outputs the output of the inverse DCT circuit 98 to the P picture. If it is, the output and the output of the motion compensation circuit 100 are added to decode the original image and supply it to the motion compensation circuit 100. Further, when the output of the inverse DCT circuit 98 is that of the I picture, the arithmetic unit 99 supplies the motion compensation circuit 100 as it is because the output is a decoded image of the I picture.
[0188]
The motion compensation circuit 100 performs motion compensation on the locally decoded image supplied from the computing unit 99 according to the motion vector from the motion detection circuit 91, and uses the image after motion compensation as a reference image. Are supplied to the calculators 92 and 99.
[0189]
Here, FIG. 21 shows a configuration of an example of a conventional MPEG decoder that decodes encoded data obtained as a result of the above MPEG encoding.
[0190]
The encoded data is supplied to the entropy decoding circuit 111. The entropy decoding circuit 111 performs entropy decoding on the encoded data to obtain quantized DCT coefficients, motion vectors, and other information. The quantized DCT coefficient is supplied to the inverse quantization circuit 112, and the motion vector is supplied to the motion compensation circuit 116.
[0191]
The inverse quantization circuit 112 converts the quantized DCT coefficient from the entropy decoding circuit 111 into a DCT coefficient by inverse quantization, and supplies the DCT coefficient to the inverse DCT circuit 113. The inverse DCT circuit 113 performs inverse DCT processing on the DCT coefficient from the inverse quantization circuit 112 and outputs the result to the calculator 114. In the arithmetic unit 114, in addition to the output of the inverse quantization circuit 113, an already decoded I picture or P picture output from the motion compensation circuit 116 is motion-compensated according to the motion vector from the entropy decoding circuit 111. When the output of the inverse DCT circuit 113 is that of a P or B picture, the arithmetic unit 114 adds the output and the output of the motion compensation circuit 100. As a result, the original image is decoded and supplied to the block decomposition circuit 115. Further, when the output of the inverse DCT circuit 113 is that of the I picture, the arithmetic unit 114 supplies the output to the block decomposition circuit 115 as it is because the output is a decoded image of the I picture.
[0192]
The block decomposition circuit 115 obtains and outputs a decoded image by unblocking the decoded image supplied from the computing unit 114 in units of pixel blocks.
[0193]
On the other hand, the motion compensation circuit 116 receives the I picture and the P picture of the decoded image output from the computing unit 114 and performs motion compensation according to the motion vector from the entropy decoding circuit 111. Then, the motion compensation circuit 116 supplies the motion-compensated image to the computing unit 114 as a reference image.
[0194]
The decoder 22 shown in FIG. 3 can efficiently decode MPEG-encoded encoded data into a high-quality image as described above.
[0195]
In other words, the encoded data is supplied to the entropy decoding circuit 31, and the entropy decoding circuit 31 performs entropy decoding on the encoded data. Quantized DCT coefficients, motion vectors, and other information obtained as a result of this entropy decoding are supplied from the entropy decoding circuit 31 to the coefficient conversion circuit 32.
[0196]
The coefficient conversion circuit 32 performs a predetermined prediction calculation using the quantized DCT coefficient Q from the entropy decoding circuit 31 and the tap coefficient obtained by learning, and converts the motion vector from the entropy decoding circuit 31 into a motion vector. Accordingly, by performing motion compensation as necessary, the quantized DCT coefficient is decoded into a high-quality pixel value, and a high-quality block composed of the high-quality pixel value is supplied to the block decomposition circuit 33.
[0197]
The block decomposition circuit 33 unblocks the high-quality block obtained in the coefficient conversion circuit 32 so that both the horizontal and vertical pixel numbers are, for example, twice as high as that of an MPEG-encoded image. Obtain and output a decoded image of image quality.
[0198]
Next, FIG. 22 shows a configuration example of the coefficient conversion circuit 32 in FIG. 3 when decoding data encoded by the MPEG in the decoder 22. In the figure, portions corresponding to those in FIG. 18 or FIG. 21 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate. That is, the coefficient conversion circuit 32 in FIG. 22 is basically configured in the same manner as in FIG. 18 except that the arithmetic unit 114 and the motion compensation circuit 116 in FIG. Has been.
[0199]
Therefore, in the coefficient conversion circuit 32 of FIG. 22, the quantized DCT coefficient is inversely quantized by the inverse quantization circuit 71, and a prediction tap is configured in the prediction tap extraction circuit 41 using the resulting DCT coefficient. . Then, the product-sum operation circuit 45 performs a prediction operation using the prediction tap and the tap coefficient stored in the coefficient table storage unit 44, so that the number of horizontal and vertical pixels is the same as that of the original image. Outputs doubled high-quality data.
[0200]
Then, the arithmetic unit 114 adds the output of the product-sum operation circuit 45 with the output of the motion compensation circuit 116 as necessary, so that the number of horizontal and vertical pixels is twice that of the original image. The resulting high-quality image is decoded and output to the block decomposition circuit 33 (FIG. 3).
[0201]
That is, for an I picture, the output of the product-sum operation circuit 45 is a high-quality image in which the number of horizontal and vertical pixels is twice that of the original image. The output of the product-sum operation circuit 45 is output to the block decomposition circuit 33 as it is.
[0202]
For the P or B picture, the product-sum operation circuit 45 outputs the high-quality image in which the number of horizontal and vertical pixels is twice that of the original image and the high-quality reference image. Since the difference is the difference, the calculator 114 adds the output of the product-sum calculation circuit 45 to the high-quality reference image supplied from the motion compensation circuit 116, so that the number of horizontal and vertical pixels is The image is decoded into a high-quality image that is twice the original image, and is output to the block decomposition circuit 33.
[0203]
On the other hand, the motion compensation circuit 116 receives the I and P pictures among the high-quality decoded images output from the computing unit 114, and applies the entropy decoding circuit 31 () to the high-quality decoded images of the I or P pictures. By performing motion compensation using the motion vector from FIG. 3, a high-quality reference image is obtained and supplied to the computing unit 114.
[0204]
Here, since the number of pixels in the horizontal and vertical directions of the decoded image is twice that of the original image, the motion compensation circuit 116, for example, in the horizontal direction of the motion vector from the entropy decoding circuit 31 The motion compensation is performed according to the motion vector in which the size in the vertical direction is doubled.
[0205]
Next, FIG. 23 shows a configuration example of an embodiment of a learning apparatus that learns tap coefficients to be stored in the coefficient table storage unit 44 of FIG. In the figure, portions corresponding to those in FIG. 19 are denoted by the same reference numerals, and description thereof will be omitted below as appropriate.
[0206]
A learning HD image is input to the thinning circuit 120 as teacher data. The thinning circuit 120 thins out pixels of the HD image as teacher data, for example, similarly to the thinning circuit 60 in FIG. Associate teacher data, which is an SD image in which the number of vertical pixels is halved, is generated. Then, the SD image as the semi-teacher data is supplied to the motion vector detection circuit 121 and the calculator 122.
[0207]
The motion vector detection circuit 121, the arithmetic unit 122, the blocking circuit 123, the DCT circuit 124, the quantization circuit 125, the inverse quantization circuit 127, the inverse DCT circuit 128, the arithmetic unit 129, or the motion compensation circuit 130 are shown in FIG. The same processing as that performed by the vector detection circuit 91, the arithmetic unit 92, the blocking circuit 93, the DCT circuit 94, the quantization circuit 95, the inverse quantization circuit 97, the inverse DCT circuit 98, the arithmetic unit 99, or the motion compensation circuit 100 is performed. Thereby, the quantization circuit 125 outputs the same quantized DCT coefficient as that output from the quantization circuit 95 of FIG.
[0208]
The quantized DCT coefficient output from the quantizing circuit 125 is supplied to the inverse quantizing circuit 81. The inverse quantizing circuit 81 inversely quantizes the quantized DCT coefficient from the quantizing circuit 125 and converts it into a DCT coefficient. To the prediction tap extraction circuit 64. The prediction tap extraction circuit 64 constitutes a prediction tap from the DCT coefficients from the inverse quantization circuit 81 and supplies the prediction tap to the normal equation addition circuit 67 as student data.
[0209]
On the other hand, the HD image as teacher data is supplied to the computing unit 132 in addition to the thinning circuit 120. The computing unit 132 subtracts the output of the interpolation circuit 131 from the HD image as the teacher data as necessary, and supplies it to the normal equation addition circuit 67.
[0210]
That is, the interpolation circuit 131 generates a high-quality reference image in which the number of horizontal and vertical pixels of the reference image of the SD image output from the motion compensation circuit 130 is doubled, and supplies the generated reference image to the calculator 132.
[0211]
When the HD image supplied thereto is an I picture, the computing unit 132 supplies the HD image of the I picture as it is to the normal equation adding circuit 67 as teacher data. Further, when the HD image supplied thereto is a P or B picture, the computing unit 132 calculates a difference between the HD image of the P or B picture and the high-quality reference image output from the interpolation circuit 131. By calculating, a high quality image of the difference of the SD image (semi-teacher data) output from the calculator 122 is obtained, and this is output to the normal equation adding circuit 67 as teacher data.
[0212]
Note that the interpolation circuit 131 can increase the number of pixels by simple interpolation, for example. Further, in the interpolation circuit 131, for example, the number of pixels can be increased by class classification adaptive processing. Further, the computing unit 132 can use an HD image as teacher data which has been MPEG-encoded and subjected to local decoding to compensate for motion as a reference image.
[0213]
The normal equation adder circuit 67 uses the output of the computing unit 132 as teacher data and performs addition as described above using the prediction tap from the inverse quantization circuit 81 as student data, thereby generating a normal equation. .
[0214]
Then, the tap coefficient determination circuit 68 obtains a tap coefficient by solving the normal equation generated by the normal equation addition circuit 67 and supplies the tap coefficient to the coefficient table storage unit 69 for storage.
[0215]
In the product-sum operation circuit 45 shown in FIG. 22, the encoded data encoded by the MPEG is decoded using the tap coefficient thus obtained. The processing for improving the image quality can be performed at the same time. Therefore, from the MPEG-encoded image, the number of pixels in the horizontal and vertical directions can be efficiently and efficiently improved. In both cases, a decoded image that is a doubled HD image can be obtained.
[0216]
Note that the coefficient conversion circuit 32 in FIG. 22 can be configured without the inverse quantization circuit 71. In this case, the learning apparatus in FIG. 23 may be configured without providing the inverse quantization circuit 81.
[0217]
Also, the coefficient conversion circuit 32 in FIG. 22 can be configured by providing a class tap extraction circuit 42 and a class classification circuit 43 as in the case of FIG.
In this case, the learning device of FIG. 23 may be configured by providing the class tap extraction circuit 65 and the class classification circuit 66 as in the case of FIG.
[0218]
Further, in the above-described case, the decoder 22 (FIG. 3) obtains a decoded image in which the spatial resolution of the original image is improved by a factor of 2, but the decoder 22 can arbitrarily set the spatial resolution of the original image. It is also possible to obtain a decoded image that is a multiple of, or a decoded image in which the time resolution of the original image is improved.
[0219]
That is, for example, when the image to be MPEG-encoded has a low temporal resolution as shown in FIG. 24A, the decoder 22 converts the encoded data obtained by MPEG-encoding the image into FIG. As shown in (B), it is possible to decode the original image into an image in which the time resolution is doubled. Further, for example, when the image to be MPEG-encoded is an image of 24 frames / second used in a movie as shown in FIG. 25A, the decoder 22 MPEG-encoded the image. It is possible to decode the encoded data into an image of 60 frames / second in which the temporal resolution of the original image is 60/24 times as shown in FIG. In this case, so-called 2-3 pull-down can be easily performed.
[0220]
Here, as described above, when the temporal resolution is improved in the decoder 22, the prediction tap and the class tap are configured by DCT coefficients of two or more frames as shown in FIG. 26, for example. It is possible.
[0221]
Further, the decoder 22 can obtain a decoded image in which not only one of the spatial resolution and the temporal resolution but both are improved.
[0222]
Next, 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.
[0223]
Therefore, FIG. 27 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
[0224]
The program can be recorded in advance in a hard disk 205 or ROM 203 as a recording medium built in the computer.
[0225]
Alternatively, the program is temporarily or temporarily stored on a removable recording medium 211 such as a floppy disk, a CD-ROM (Compact Disc Read Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, or a semiconductor memory. It can be stored permanently (recorded). Such a removable recording medium 211 can be provided as so-called package software.
[0226]
The program is installed on the computer from the removable recording medium 211 as described above, or transferred from the download site to the computer wirelessly via a digital satellite broadcasting artificial satellite, LAN (Local Area Network), The program can be transferred to a computer via a network such as the Internet. The computer can receive the program transferred in this way by the communication unit 208 and install it in the built-in hard disk 205.
[0227]
The computer includes a CPU (Central Processing Unit) 202. An input / output interface 210 is connected to the CPU 202 via the bus 201, and the CPU 202 operates the input unit 207 including a keyboard, a mouse, a microphone, and the like by the user via the input / output interface 210. When a command is input as a result of this, the program stored in a ROM (Read Only Memory) 203 is executed accordingly. Alternatively, the CPU 202 transfers a program stored in the hard disk 205, a program transferred from a satellite or a network, received by the communication unit 208 and installed in the hard disk 205, or a removable recording medium 211 attached to the drive 209. The program read and installed in the hard disk 205 is loaded into a RAM (Random Access Memory) 204 and executed. Thereby, the CPU 202 performs processing according to the above-described flowchart or processing performed by the configuration of the above-described block diagram. Then, the CPU 202 outputs the processing result from the output unit 206 configured with an LCD (Liquid Crystal Display), a speaker, or the like, for example, via the input / output interface 210, or from the communication unit 208 as necessary. Transmission, and further recording on the hard disk 205 is performed.
[0228]
Here, 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 time series according to the order described in the flowchart, but in parallel or individually. This includes processing to be executed (for example, parallel processing or processing by an object).
[0229]
Further, the program may be processed by a single computer, or may be processed in a distributed manner by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.
[0230]
In the present embodiment, image data is targeted, but the present invention can also be applied to, for example, audio data.
[0231]
In the present embodiment, at least JPEG encoding for performing DCT processing or decoding of MPEG encoded encoded data is performed. However, the present invention is converted by other orthogonal transformation or frequency transformation. Applicable to data decoding. That is, the present invention can be applied to, for example, decoding sub-band encoded data, Fourier transformed data, or the like.
[0232]
Furthermore, in the present embodiment, the tap coefficients used for decoding are stored in advance in the decoder 22, but the tap coefficients may be included in the encoded data and provided to the decoder 22. Is possible.
[0233]
In this embodiment, decoding is performed by linear primary prediction calculation using tap coefficients. However, decoding can also be performed by second-order or higher-order prediction calculation.
[0234]
【The invention's effect】
According to the first data processing device, the data processing method, and the recording medium of the present invention, the tap coefficient obtained by learning is acquired, and a predetermined prediction calculation is performed using the tap coefficient and the converted data. As a result, the converted data is decoded into the original data, and processed data obtained by performing a predetermined process on the original data is obtained. Therefore, it is possible to efficiently decode the converted data and perform a predetermined process on the decoded data.
[0235]
According to the second data processing device, the data processing method, and the recording medium of the present invention, the teacher data serving as a teacher is subjected to a process based on a predetermined process, and the resulting semi-teacher data is at least orthogonal By performing the conversion or frequency conversion, student data to be students is generated. Then, learning is performed so that the prediction error of the predicted value of the teacher data obtained by performing the prediction calculation using the tap coefficient and the student data is statistically minimized, and the tap coefficient is obtained. Therefore, by using the tap coefficient, it is possible to efficiently decode data subjected to orthogonal transform or frequency transform, and to perform predetermined processing on the decoded data.
[Brief description of the drawings]
FIG. 1 is a diagram for explaining conventional JPEG encoding / decoding.
FIG. 2 is a diagram showing a configuration example of an embodiment of an image transmission system to which the present invention is applied.
FIG. 3 is a block diagram illustrating a configuration example of a decoder 22 in FIG. 2;
FIG. 4 is a diagram illustrating how an 8 × 8 DCT coefficient is decoded into 16 × 16 pixels.
FIG. 5 is a flowchart for explaining processing of the decoder 22 of FIG. 3;
6 is a block diagram illustrating a first configuration example of a coefficient conversion circuit 32 in FIG. 3; FIG.
FIG. 7 is a diagram illustrating an example of a prediction tap and a class tap.
8 is a block diagram illustrating a configuration example of a class classification circuit 43 in FIG. 6;
FIG. 9 is a diagram for explaining processing of the power calculation circuit 51 of FIG. 6;
10 is a flowchart for explaining processing of the coefficient conversion circuit 32 of FIG. 6;
FIG. 11 is a flowchart for explaining more details of the processing in step S12 of FIG.
FIG. 12 is a block diagram illustrating a configuration example of a first embodiment of a learning device to which the present invention has been applied.
13 is a flowchart illustrating processing of the learning device in FIG.
14 is a block diagram showing a second configuration example of the coefficient conversion circuit 32 of FIG. 3; FIG.
FIG. 15 is a block diagram illustrating a configuration example of a second embodiment of a learning device to which the present invention has been applied.
16 is a block diagram illustrating a third configuration example of the coefficient conversion circuit 32 of FIG. 3;
FIG. 17 is a block diagram illustrating a configuration example of a third embodiment of a learning device to which the present invention has been applied.
18 is a block diagram illustrating a fourth configuration example of the coefficient conversion circuit 32 of FIG. 3. FIG.
FIG. 19 is a block diagram illustrating a configuration example of a fourth embodiment of a learning device to which the present invention has been applied.
20 is a block diagram illustrating a configuration example of an encoder 21 in FIG. 2. FIG.
FIG. 21 is a block diagram showing a configuration of an example of an MPEG decoder.
22 is a block diagram illustrating a fifth configuration example of the coefficient conversion circuit 32 of FIG. 3;
FIG. 23 is a block diagram illustrating a configuration example of a fifth embodiment of a learning device to which the present invention has been applied.
FIG. 24 is a diagram illustrating an image with improved temporal resolution.
FIG. 25 is a diagram illustrating an image with improved temporal resolution.
FIG. 26 is a diagram showing that a class tap and a prediction tap are configured from DCT coefficients of two or more frames.
FIG. 27 is a block diagram illustrating a configuration example of an embodiment of a computer to which the present invention has been applied.
[Explanation of symbols]
21 encoder, 22 decoder, 23 recording medium, 24 transmission medium, 31 entropy decoding circuit, 32 coefficient conversion circuit, 33 block decomposition circuit, 41 prediction tap extraction circuit, 42 class tap extraction circuit, 43 class classification circuit, 44 coefficient table storage Unit, 45 product-sum operation circuit, 51 power operation circuit, 52 class code generation circuit, 53 threshold value table storage unit, 60 decimation circuit, 61 blocking circuit, 62 DCT circuit, 63 quantization circuit, 64 prediction tap extraction circuit, 65 Class tap extraction circuit, 66 class classification circuit, 67 normal equation addition circuit, 68 tap coefficient determination circuit, 69 coefficient table storage unit, 71, 81 inverse quantization circuit, 114 calculator, 115 motion compensation circuit, 120 decimation circuit, 121Motion vector detection circuit, 122 arithmetic unit, 123 blocking circuit, 124 DCT circuit, 125 quantization circuit, 127 inverse quantization circuit, 128 inverse DCT circuit, 129 arithmetic unit, 130 motion compensation circuit, 131 interpolation circuit, 132 arithmetic unit , 201 bus, 202 CPU, 203 ROM, 204 RAM, 205 hard disk, 206 output unit, 207 input unit, 208 communication unit, 209 drive, 210 input / output interface, 211 removable recording medium

Claims (29)

少なくとも、直交変換処理または周波数変換処理を施すことにより得られる変換データを処理するデータ処理装置であって、
学習を行うことにより求められたタップ係数を取得する取得手段と、
前記タップ係数および変換データを用いて、所定の予測演算を行うことにより、前記変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データを得演算手段と
を備えることを特徴とするデータ処理装置。
At least a data processing device for processing conversion data obtained by performing orthogonal conversion processing or frequency conversion processing,
Obtaining means for obtaining the tap coefficient obtained by performing learning;
Using the tap coefficients and the converted data by performing a predetermined prediction computation, the conversion data simultaneously with the decoding to the original data, Ru obtain a processed data subjected to the predetermined processing on the original data A data processing apparatus comprising: an arithmetic means.
前記演算手段は、前記タップ係数および変換データを用いて、線形1次予測演算を行う
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the calculation unit performs linear primary prediction calculation using the tap coefficient and conversion data.
前記タップ係数を記憶している記憶手段をさらに備え、
前記取得手段は、前記記憶手段から、前記タップ係数を取得する
ことを特徴とする請求項1に記載のデータ処理装置。
A storage means for storing the tap coefficient;
The data processing apparatus according to claim 1, wherein the acquisition unit acquires the tap coefficient from the storage unit.
前記変換データは、前記元のデータを、直交変換または周波数変換し、さらに量子化することにより得られたものである
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the transformed data is obtained by subjecting the original data to orthogonal transformation or frequency transformation and further quantization.
前記変換データを逆量子化する逆量子化手段をさらに備え、
前記演算手段は、逆量子化された前記変換データを用いて予測演算を行う
ことを特徴とする請求項4に記載のデータ処理装置。
Further comprising inverse quantization means for inversely quantizing the transformed data;
The data processing apparatus according to claim 4, wherein the calculation unit performs a prediction calculation using the transformed data that has been dequantized.
前記変換データは、前記元のデータを、少なくとも、離散コサイン変換したものである
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the transformed data is obtained by performing at least discrete cosine transform on the original data.
前記処理データのうちの、注目している注目データを予測するのに前記タップ係数とともに用いる前記変換データを抽出し、予測タップとして出力する予測タップ抽出手段をさらに備え、
前記演算手段は、前記予測タップおよびタップ係数を用いて予測演算を行う
ことを特徴とする請求項1に記載のデータ処理装置。
A prediction tap extracting means for extracting the conversion data used together with the tap coefficient to predict the attention data of interest in the processing data, and outputting the prediction data as a prediction tap;
The data processing apparatus according to claim 1, wherein the calculation unit performs a prediction calculation using the prediction tap and a tap coefficient.
前記注目データを、幾つかのクラスのうちのいずれかにクラス分類するのに用いる前記変換データを抽出し、クラスタップとして出力するクラスタップ抽出手段と、
前記クラスタップに基づいて、前記注目データのクラスを求めるクラス分類を行うクラス分類手段と
をさらに備え、
前記演算手段は、前記予測タップおよび前記注目データのクラスに対応する前記タップ係数を用いて予測演算を行う
ことを特徴とする請求項7に記載のデータ処理装置。
Class tap extraction means for extracting the conversion data used for classifying the attention data into any of several classes, and outputting the data as class taps;
Class classification means for performing class classification for obtaining a class of the data of interest based on the class tap; and
The data processing apparatus according to claim 7, wherein the calculation unit performs a prediction calculation using the prediction tap and the tap coefficient corresponding to the class of the target data.
前記演算手段は、前記所定の予測演算を行うことにより、前記元のデータに、その品質を向上させる処理を施した前記処理データを得る
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the calculation unit obtains the processing data obtained by performing processing for improving the quality of the original data by performing the predetermined prediction calculation.
前記タップ係数は、前記タップ係数および変換データを用いて、所定の予測演算を行うことにより得られる前記処理データの予測値の予測誤差が、統計的に最小になるように、学習を行うことにより得られたものである
ことを特徴とする請求項1に記載のデータ処理装置。
By performing learning so that the prediction error of the predicted value of the processing data obtained by performing a predetermined prediction calculation using the tap coefficient and the conversion data is statistically minimized. The data processing apparatus according to claim 1, wherein the data processing apparatus is obtained.
前記元のデータは、動画または静止画の画像データである
ことを特徴とする請求項1に記載のデータ処理装置。
The data processing apparatus according to claim 1, wherein the original data is image data of a moving image or a still image.
前記演算手段は、前記所定の予測演算を行うことにより、前記画像データに、その画質を向上させる処理を施した前記処理データを得る
ことを特徴とする請求項11に記載のデータ処理装置。
The data processing apparatus according to claim 11, wherein the calculation unit obtains the processing data obtained by performing processing for improving the image quality of the image data by performing the predetermined prediction calculation.
前記演算手段は、前記画像データの時間または空間方向の解像度を向上させた前記処理データを得る
ことを特徴とする請求項11に記載のデータ処理装置。
The data processing apparatus according to claim 11, wherein the calculation unit obtains the processing data in which resolution of the image data in time or space direction is improved.
少なくとも、直交変換処理または周波数変換処理を施すことにより得られる変換データを処理するデータ処理方法であって、
学習を行うことにより求められたタップ係数を取得する取得ステップと、
前記タップ係数および変換データを用いて、所定の予測演算を行うことにより、前記変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データを得演算ステップと
を備えることを特徴とするデータ処理方法。
A data processing method for processing conversion data obtained by performing at least orthogonal conversion processing or frequency conversion processing,
An acquisition step of acquiring a tap coefficient obtained by performing learning;
Using the tap coefficients and the converted data by performing a predetermined prediction computation, the conversion data simultaneously with the decoding to the original data, Ru obtain a processed data subjected to the predetermined processing on the original data A data processing method comprising: an arithmetic step.
少なくとも、直交変換処理または周波数変換処理を施すことにより得られる変換データを処理するデータ処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
学習を行うことにより求められたタップ係数を取得する取得ステップと、
前記タップ係数および変換データを用いて、所定の予測演算を行うことにより、前記変換データを、元のデータに復号するのと同時に、その元のデータに所定の処理を施した処理データを得演算ステップと
を備えるプログラムが記録されている
ことを特徴とする記録媒体。
A recording medium on which a program for causing a computer to perform data processing for processing conversion data obtained by performing at least orthogonal transformation processing or frequency conversion processing is recorded,
An acquisition step of acquiring a tap coefficient obtained by performing learning;
Using the tap coefficients and the converted data by performing a predetermined prediction computation, the conversion data simultaneously with the decoding to the original data, Ru obtain a processed data subjected to the predetermined processing on the original data A recording medium on which a program comprising: an arithmetic step is recorded.
少なくとも、直交変換処理または周波数変換処理を施すことにより得られる変換データを復号するのと同時に、その復号結果に所定の処理を施した処理データを得ための予測演算に用いるタップ係数を学習するデータ処理装置であって、
教師となる教師データに、前記所定の処理に基づく処理を施し、準教師データを得る準教師データ生成手段と、
前記準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データを生成する生徒データ生成手段と、
前記タップ係数および生徒データを用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、
前記タップ係数を求める学習手段と
を備えることを特徴とするデータ処理装置。
At least, at the same time to decode the converted data obtained by performing orthogonal transformation processing or frequency conversion processing, learning the tap coefficient used for prediction calculation for Ru obtain a processed data subjected to the predetermined processing on the decoded result A data processing device,
A semi-teacher data generating means for obtaining semi-teacher data by performing a process based on the predetermined process on the teacher data to be a teacher;
Student data generation means for generating student data to be students by performing orthogonal transform or frequency transform on the semi-teacher data at least;
Learning so that the prediction error of the predicted value of the teacher data obtained by performing a prediction calculation using the tap coefficient and student data is statistically minimized,
A data processing apparatus comprising: learning means for obtaining the tap coefficient.
前記学習手段は、前記タップ係数および生徒データを用いて線形1次予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行う
ことを特徴とする請求項16に記載のデータ処理装置。
The learning means performs learning so that a prediction error of a predicted value of the teacher data obtained by performing a linear primary prediction calculation using the tap coefficient and student data is statistically minimized. The data processing apparatus according to claim 16.
前記生徒データ生成手段は、前記準教師データを、直交変換または周波数変換し、さらに量子化することにより、前記生徒データを生成する
ことを特徴とする請求項16に記載のデータ処理装置。
The data processing apparatus according to claim 16, wherein the student data generation unit generates the student data by performing orthogonal transform or frequency transform on the semi-teacher data and further quantizing the data.
前記生徒データ生成手段は、前記準教師データを、直交変換または周波数変換して量子化し、さらに逆量子化することにより、前記生徒データを生成する
ことを特徴とする請求項16に記載のデータ処理装置。
The data processing according to claim 16, wherein the student data generation unit generates the student data by quantizing the semi-teacher data by orthogonal transform or frequency transform, and further performing inverse quantization. apparatus.
前記生徒データ生成手段は、前記準教師データを、少なくとも、離散コサイン変換することにより、前記生徒データを生成する
ことを特徴とする請求項16に記載のデータ処理装置。
The data processing apparatus according to claim 16, wherein the student data generation unit generates the student data by performing at least discrete cosine transform on the semi-teacher data.
前記教師データのうちの、注目している注目教師データを予測するのに前記タップ係数とともに用いる前記生徒データを抽出し、予測タップとして出力する予測タップ抽出手段をさらに備え、
前記学習手段は、前記予測タップおよびタップ係数を用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行う
ことを特徴とする請求項16に記載のデータ処理装置。
A prediction tap extraction unit that extracts the student data used together with the tap coefficient to predict attention teacher data of interest among the teacher data, and outputs the student data as a prediction tap;
The learning unit performs learning so that a prediction error of a prediction value of the teacher data obtained by performing a prediction calculation using the prediction tap and a tap coefficient is statistically minimized. Item 17. A data processing apparatus according to Item 16.
前記注目教師データを、幾つかのクラスのうちのいずれかにクラス分類するのに用いる前記生徒データを抽出し、クラスタップとして出力するクラスタップ抽出手段と、
前記クラスタップに基づいて、前記注目教師データのクラスを求めるクラス分類を行うクラス分類手段と
をさらに備え、
前記学習手段は、前記予測タップおよび前記注目教師データのクラスに対応するタップ係数を用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、クラスごとの前記タップ係数を求める
ことを特徴とする請求項21に記載のデータ処理装置。
Class tap extraction means for extracting the student data used for classifying the attention teacher data into any of several classes, and outputting as class taps;
Class classification means for performing class classification for obtaining a class of the teacher data of interest based on the class tap; and
The learning means is configured to statistically minimize a prediction error of a predicted value of the teacher data obtained by performing a prediction calculation using a tap coefficient corresponding to the prediction tap and the class of the teacher data of interest. The data processing apparatus according to claim 21, wherein learning is performed to obtain the tap coefficient for each class.
前記生徒データ生成手段は、前記準教師データを、所定の単位ごとに、少なくとも、直交変換処理または周波数変換することにより、前記生徒データを生成する
ことを特徴とする請求項16に記載のデータ処理装置。
The data processing according to claim 16, wherein the student data generation means generates the student data by performing at least an orthogonal transform process or a frequency transform on the semi-teacher data for each predetermined unit. apparatus.
前記準教師データ生成手段は、前記教師データに、その品質を劣化させる処理を施すことにより、前記準教師データを生成する
ことを特徴とする請求項16に記載のデータ処理装置。
The data processing apparatus according to claim 16, wherein the semi-teacher data generating unit generates the semi-teacher data by performing a process of degrading the quality of the teacher data.
前記教師データは、動画または静止画の画像データである
ことを特徴とする請求項16に記載のデータ処理装置。
The data processing apparatus according to claim 16, wherein the teacher data is image data of a moving image or a still image.
前記準教師データ生成手段は、前記画像データに、その画質を劣化させる処理を施すことにより、前記準教師データを生成する
ことを特徴とする請求項25に記載のデータ処理装置。
The data processing apparatus according to claim 25, wherein the semi-teacher data generation unit generates the semi-teacher data by performing a process of degrading the image quality of the image data.
前記準教師データ生成手段は、前記画像データの時間または空間方向の解像度を劣化させた前記準教師データを生成する
ことを特徴とする請求項25に記載のデータ処理装置。
26. The data processing apparatus according to claim 25, wherein the semi-teacher data generation unit generates the semi-teacher data in which the resolution of the image data in time or space direction is deteriorated.
少なくとも、直交変換処理または周波数変換処理を施すことにより得られる変換データを復号するのと同時に、その復号結果に所定の処理を施した処理データを得ための予測演算に用いるタップ係数を学習するデータ処理方法であって、
教師となる教師データに、前記所定の処理に基づく処理を施し、準教師データを得る準教師データ生成ステップと、
前記準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データを生成する生徒データ生成ステップと、
前記タップ係数および生徒データを用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、
前記タップ係数を求める学習ステップと
を備えることを特徴とするデータ処理方法。
At least, at the same time to decode the converted data obtained by performing orthogonal transformation processing or frequency conversion processing, learning the tap coefficient used for prediction calculation for Ru obtain a processed data subjected to the predetermined processing on the decoded result A data processing method,
A semi-teacher data generation step for obtaining semi-teacher data by performing a process based on the predetermined process on the teacher data to be a teacher;
Student data generation step for generating student data to be students by at least orthogonal transformation or frequency transformation of the semi-teacher data;
Learning so that the prediction error of the predicted value of the teacher data obtained by performing a prediction calculation using the tap coefficient and student data is statistically minimized,
And a learning step for obtaining the tap coefficient.
少なくとも、直交変換処理または周波数変換処理を施すことにより得られる変換データを復号するのと同時に、その復号結果に所定の処理を施した処理データを得ための予測演算に用いるタップ係数を学習するデータ処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
教師となる教師データに、前記所定の処理に基づく処理を施し、準教師データを得る準教師データ生成ステップと、
前記準教師データを、少なくとも、直交変換または周波数変換することにより、生徒となる生徒データを生成する生徒データ生成ステップと、
前記タップ係数および生徒データを用いて予測演算を行うことにより得られる前記教師データの予測値の予測誤差が、統計的に最小になるように学習を行い、
前記タップ係数を求める学習ステップと
を備えるプログラムが記録されている
ことを特徴とする記録媒体。
At least, at the same time to decode the converted data obtained by performing orthogonal transformation processing or frequency conversion processing, learning the tap coefficient used for prediction calculation for Ru obtain a processed data subjected to the predetermined processing on the decoded result A recording medium on which a program for causing a computer to perform data processing is recorded,
A semi-teacher data generation step for obtaining semi-teacher data by performing a process based on the predetermined process on the teacher data to be a teacher;
Student data generation step for generating student data to be students by at least orthogonal transformation or frequency transformation of the semi-teacher data;
Learning so that the prediction error of the predicted value of the teacher data obtained by performing a prediction calculation using the tap coefficient and student data is statistically minimized,
A recording medium is recorded, comprising: a learning step for obtaining the tap coefficient.
JP2000135357A 2000-05-09 2000-05-09 Data processing apparatus, data processing method, and recording medium Expired - Fee Related JP4752088B2 (en)

Priority Applications (12)

Application Number Priority Date Filing Date Title
JP2000135357A JP4752088B2 (en) 2000-05-09 2000-05-09 Data processing apparatus, data processing method, and recording medium
US10/030,591 US7035471B2 (en) 2000-05-09 2001-05-09 Data processing device and data processing method and recorded medium
CNB018019870A CN1169303C (en) 2000-05-09 2001-05-09 Data processing device and date processing method, and recorded medium
EP01930004A EP1282236B1 (en) 2000-05-09 2001-05-09 Data processing device and data processing method, and recorded medium
KR1020027000250A KR100731708B1 (en) 2000-05-09 2001-05-09 Data processing device and data processing method, and recorded medium
PCT/JP2001/003873 WO2001086820A1 (en) 2000-05-09 2001-05-09 Data processing device and data processing method, and recorded medium
CN2004100558118A CN1578159B (en) 2000-05-09 2001-05-09 Data processing device and data processing method
CNB2004100558103A CN100568739C (en) 2000-05-09 2001-05-09 Data processing equipment and method
US11/348,720 US7206452B2 (en) 2000-05-09 2006-02-07 Data processing apparatus and method and recording medium
US11/584,789 US7289671B2 (en) 2000-05-09 2006-10-20 Data processing apparatus and method and recording medium
US11/584,772 US7283678B2 (en) 2000-05-09 2006-10-20 Data processing apparatus and method and recording medium
US11/584,483 US7336829B2 (en) 2000-05-09 2006-10-20 Data processing apparatus and method and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000135357A JP4752088B2 (en) 2000-05-09 2000-05-09 Data processing apparatus, data processing method, and recording medium

Publications (2)

Publication Number Publication Date
JP2001320587A JP2001320587A (en) 2001-11-16
JP4752088B2 true JP4752088B2 (en) 2011-08-17

Family

ID=18643446

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000135357A Expired - Fee Related JP4752088B2 (en) 2000-05-09 2000-05-09 Data processing apparatus, data processing method, and recording medium

Country Status (1)

Country Link
JP (1) JP4752088B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1944759B1 (en) 2000-08-09 2010-10-20 Sony Corporation Voice data processing device and processing method
JP4517262B2 (en) * 2000-11-14 2010-08-04 ソニー株式会社 Audio processing device, audio processing method, learning device, learning method, and recording medium
JP4462823B2 (en) 2002-11-20 2010-05-12 ソニー株式会社 Image signal processing apparatus and processing method, coefficient data generating apparatus and generating method used therefor, and program for executing each method
BRPI0807594A2 (en) 2007-12-18 2014-07-22 Sony Corp DATA PROCESSING DEVICE, DATA PROCESSING METHOD AND STORAGE

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3271098B2 (en) * 1993-09-06 2002-04-02 ソニー株式会社 Digital image signal decoding apparatus and method
JP3856244B2 (en) * 1995-04-20 2006-12-13 ソニー株式会社 Signal conversion apparatus and signal conversion method
JP3760517B2 (en) * 1996-04-11 2006-03-29 ソニー株式会社 Image signal processing apparatus and method
JP3747970B2 (en) * 1996-12-24 2006-02-22 ソニー株式会社 Image encoding device, image encoding method, image decoding device, and image decoding method
JP3774988B2 (en) * 1997-05-12 2006-05-17 ソニー株式会社 Still image capturing apparatus, color copying apparatus, and display apparatus
JP3780633B2 (en) * 1997-06-16 2006-05-31 ソニー株式会社 Image signal processing apparatus and method, and pixel movement pattern learning method
JP3867346B2 (en) * 1997-06-17 2007-01-10 ソニー株式会社 Image signal processing apparatus and method, and prediction parameter learning apparatus and method

Also Published As

Publication number Publication date
JP2001320587A (en) 2001-11-16

Similar Documents

Publication Publication Date Title
US7289671B2 (en) Data processing apparatus and method and recording medium
Thyagarajan Still image and video compression with MATLAB
JP4847076B2 (en) Method and transcoder for estimating output macroblocks and motion vectors for transcoding
JP2004520771A (en) Video transcoder with drift correction
US20060159168A1 (en) Method and apparatus for encoding pictures without loss of DC components
JP4752088B2 (en) Data processing apparatus, data processing method, and recording medium
JP4517448B2 (en) Data processing apparatus, data processing method, and recording medium
JP4538698B2 (en) Data processing apparatus, data processing method, and recording medium
JP4678454B2 (en) Data processing apparatus, data processing method, and recording medium
JP4147789B2 (en) Image processing apparatus, image processing method, program, and recording medium
JP4419287B2 (en) Image processing apparatus, image processing method, and recording medium
JP4538699B2 (en) Data processing apparatus, data processing method, and recording medium
JP4081745B2 (en) Decoding device and decoding method, learning device and learning method, program, and recording medium
Kim et al. Content-based video transcoding in compressed domain
Furht Image presentation and compression
JP4154647B2 (en) Data processing apparatus, data processing method, program, and recording medium
JP2001345707A (en) Data processing apparatus and data processing method as well as recording medium
KR100744442B1 (en) Improved cascaded compression method and system for digital video and images
JP4491701B2 (en) Data processing apparatus, data processing method, and recording medium
Rodriguez et al. Video compression for multimedia applications
Young Software CODEC algorithms for desktop videoconferencing
PO et al. 4 DATA COMPRESSION TECHNIQUES IN IMAGE PROCESSING SYSTEMS

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100528

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101130

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110113

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110509

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140603

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140603

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