図1は、本発明を適用したテレビジョン受像機の一実施の形態の外観構成例を示している。
図1の実施の形態において、テレビジョン受像機は、本体1とリモコン(リモートコントローラ)2から構成されている。
本体1の正面には、CRT(Cathod Ray Tube)11が設けられており、CRT11には、例えば、テレビジョン放送番組等の画像が表示される。
また、本体1の下部には、6つのスロット121乃至126が設けられている。スロット12iには、画像処理カード13jを着脱することができるようになっている。
なお、図1の実施の形態では、6つのスロット121乃至126のうちのスロット121には、いわばデフォルトの画像処理カード131が既に装着されており、さらに、そのスロット121は、そこに最初から装着されている画像処理カード131を容易に抜き差しすることができないように、カバーで覆われている。
また、図1の実施の形態では、6つのスロット121乃至126が設けられているが、スロット数は、6スロットに限定されるものではなく、5スロット以下や7スロット以上とすることが可能である。
画像処理カード13は、テレビジョン受像機の本体1に機能を付加していくことができるIC(Integrated Curcuit)カードまたはメモリカードで、スロット12iに装着することで、ユーザに、後述するような各種の機能を提供する。
ここで、画像処理カード13としては、例えば、PCMCIA(Personal Computer Memory Card International Association)等の既存の規格に準拠したものを採用することができる。但し、画像処理カード13としては、独自規格のものを採用することも可能である。
リモコン2は、本体1における受信チャンネルや音量の変更その他を指示を与えるときに操作される。そして、リモコン2は、その操作に対応した赤外線を出射し、本体1では、この赤外線が受光され、リモコン2の操作に対応した処理が行われる。
なお、リモコン2としては、赤外線の他、例えば、Bluetooth(商標)等の電波を出射するものを採用することが可能である。
次に、図2は、図1の本体1の背面を示している。
本体1の背面には、図示せぬアンテナ(に接続されたケーブル)が接続されるアンテナ端子21、本体1に画像および音声を入力する入力端子22、並びに本体1から画像および音声を出力する出力端子23が設けられている。
なお、図1の実施の形態において、本体1の正面に設けたスロット121乃至126は、図2に示すように、本体1の背面に設けるようにすることが可能である。
また、スロット121乃至126は、そのすべてを、本体1の正面または背面のうちのいずれか一方に設けるのではなく、一部を正面に、残りを背面に、それぞれ設けるようにすることが可能である。
さらに、本実施の形態では、画像処理カード13jをPCMCIAカードのように構成するようにしたが、画像処理カード13jは、その他、例えば、コンピュータの増設メモリなどで採用されているPCI(Peripheral Component Interconnect)カードのように構成することが可能である。この場合、スロット12iは、PCIカードを装着することのできるコネクタのように構成する必要がある。
次に、図3は、図1の本体1の電気的構成例を示している。
チューナ31には、アンテナ端子21から、図示せぬアンテナで受信された受信信号が供給されるようになっており、チューナ31は、コントローラ37の制御の下、所定のチャンネルのテレビジョン放送信号を検波、復調し、A/D(Analog/Digital)変換器32に供給する。
A/D変換器32は、チューナ31からのテレビジョン放送信号をA/D変換し、そのA/D変換結果のうちの画像データを、Y/C分離部33に供給する。
ここで、A/D変換器32は、テレビジョン放送信号のうちの音声データも出力するが、この音声データは、図示せぬスピーカに供給されて出力される。
Y/C分離部33は、A/D変換器32からの画像データについて、Y/C分離を行い、セレクタ34に供給する。セレクタ34は、コントローラ37の制御にしたがい、Y/C分離部33から供給される画像データ、または入力端子22から供給される画像データのうちのいずれか一方を選択し、フレームメモリ35に供給する。
フレームメモリ35は、セレクタ34から供給される画像データを記憶し、そのまま、出力端子23およびマトリクス変換部36に供給する。あるいは、また、フレームメモリ35は、セレクタ34から供給される画像データを記憶し、その記憶した画像データを、画像処理インタフェース40に供給する。さらに、フレームメモリ35は、画像処理インタフェース40から供給される、所定の画像処理が施された画像データを記憶し、出力端子23およびマトリクス変換部36に供給する。
なお、フレームメモリ35は、例えば、1フレーム(またはフィールド)分の画像データを記憶することのできる、少なくとも第1乃至第4のバンクを有している。そして、フレームメモリ35では、第1と第2のバンクに、交互に、セレクタ34からの画像データが書き込まれるとともに、その第1と第2のバンクのうちの、セレクタ34からの画像データの書き込みが行われていない方のバンクから、画像データが読み出され、画像処理インタフェース40に供給される。さらに、フレームメモリ35では、第3と第4のバンクに、交互に、画像処理インタフェース40が出力する画像データが書き込まれるとともに、その第3と第4のバンクのうち、画像処理インタフェース40からの画像データの書き込みが行われていない方のバンクから、画像データが読みされ、マトリクス変換部36に供給される。
フレームメモリ35では、例えば、上述のようなバンク切り換えが行われることによって、セレクタ34から供給される画像データの記憶、画像処理インタフェース40への画像データの読み出し、画像処理インタフェース40からの画像データの書き込み、およびマトリクス変換部36への画像データの読み出しをリアルタイムで行うことができるようになっている。
マトリクス変換部36は、フレームメモリ35から供給される画像データを、RGB(Red,Green,Blue)の画像データに変換し、D/A変換して出力する。マトリクス変換部36が出力する画像データは、CRT11に供給されて表示される。
コントローラ37は、CPU(Central Processing Unit)37A,EEPROM(Electrically Erasable Programable Read Only Memory)37B,RAM(Random Access Memory)37Cなどから構成され、チューナ31や、セレクタ34,通信インタフェース38、および画像処理インタフェース40などを制御する。
即ち、CPU37A、EEPROM37Bに記憶されているプログラムにしたがって各種の処理を実行し、これにより、例えば、チューナ31や、セレクタ34、通信インタフェース38、および画像処理インタフェース40を制御する。また、CPU37Aは、IR(Infrared Ray)インタフェース39から供給されるコマンドに対応した処理を実行する。さらに、CPU37Aは、通信インタフェース38を制御することにより、電話回線等を通じて、図示せぬサーバにアクセスし、バージョンアップされたプログラムや必要なデータを取得する。
EEPROM37Bは、電源オフ後も保持しておきたいデータやプログラムを記憶する。なお、EEPROM37Bに記憶されたデータやプログラムは、そこに上書きすることで、バージョンアップすることができる。
RAM37Cは、CPU37Aの動作上必要なデータやプログラムを一時記憶する。
通信インタフェース38は、例えば、アナログモデムや、ADSL(Asymmetric Digital Subscriber Line)モデム、DSU(Digital Service Unit)およびTA(Terminal Adapter)、LAN(Local Area Network)カードなどで構成され、コントローラ37の制御の下、電話回線その他の通信回線を介しての通信制御を行う。
IRインタフェース39は、リモコン2からの赤外線を受光して光電変換し、対応する電気信号を、コントローラ37に供給する。
画像処理インタフェース40は、画像処理カード131乃至136が装着されるスロット121乃至126を有しており、そのスロット12iに装着された画像処理カード13jとともに、フレームメモリ35に記憶された画像データに対して、後述するような画像処理(データ変換処理)を施す。
なお、図3の実施の形態では、画像処理カード13iが、スロット12iに装着されるようになっているが、画像処理カード13iは、6つのスロット121乃至126のうちの任意のスロットに装着することが可能である。但し、本実施の形態では、説明を簡単にするため、画像処理カード13iは、スロット12iに装着されるものとする。
また、本実施の形態では、画像処理インタフェース40には、6つのスロット121乃至126が設けられており、従って、6種類の画像処理カード131乃至136を装着することができるようになっている。図3の実施の形態では、スロット121乃至123に、3種類の画像処理カード131乃至133がそれぞれ装着されている。
さらに、本実施の形態では、スロット12i内部には、所定の端子が設けられており、この端子と、画像処理カード13iとが物理的に接触することで、画像処理カード13iと、画像処理インタフェース40とが電気的に接続され、それらの間で各種のデータがやりとりされる。但し、画像処理カード13iと、画像処理インタフェース40との間のデータのやりとりは、その他、無線通信によって行うようにすることも可能である。
次に、図4は、リモコン2の構成例を示す平面図である。
セレクトボタンスイッチ51は、上下左右方向の4つの方向の他、その中間の4つの斜め方向の合計8個の方向に操作(方向操作)することができる。さらに、セレクトボタンスイッチ51は、リモコン2の上面に対して垂直方向にも押下操作(セレクト操作)することができる。メニューボタンスイッチ54は、本体1のCRT11に、各種の設定や、所定の処理を行うことを指令するコマンドの入力を行うためのメニュー画面を表示させるときに操作される。
ここで、メニュー画面が表示された場合には、そのメニュー画面における項目等を指示するカーソルが、CRT11に表示される。このカーソルは、セレクトボタンスイッチ51を方向操作することで、その操作に対応する方向に移動する。また、カーソルが、所定の項目上の位置にあるときに、セレクトボタンスイッチ51がセレクト操作されると、その項目の選択が確定される。なお、メニューには、アイコンを表示させることが可能であり、セレクトボタンスイッチ51は、アイコンをクリックするときも、セレクト操作される。
イグジットボタンスイッチ55は、メニュー画面から元の通常の画面に戻る場合などに操作される。
ボリウムボタンスイッチ52は、ボリウムをアップまたはダウンさせるときに操作される。チャンネルアップダウンボタンスイッチ53は、受信する放送チャンネルの番号を、アップまたはダウンするときに操作される。
0乃至9の数字が表示されている数字ボタン(テンキー)スイッチ58は、表示されている数字を入力するときに操作される。エンタボタンスイッチ57は、数字ボタンスイッチ58の操作が完了したとき、数字入力終了の意味で、それに続いて操作される。なお、チャンネルを切り換えたときは、本体1のCRT11に、新たなチャンネルの番号などが、所定の時間、OSD(On Screen Display)表示される。ディスプレイボタン56は、現在選択しているチャンネルの番号や、現在の音量等のOSD表示のオン/オフを切り換えるときに操作される。
テレビ/ビデオ切換ボタンスイッチ59は、本体1の入力を、チューナ31、または入力端子22からの入力に切り換えるときに操作される。テレビ/DSS切換ボタンスイッチ60は、チューナ31において地上波による放送を受信するテレビモード、または衛星放送を受信するDSS(Digital Satellite System(Hughes Communications社の商標))モードを選択するときに操作される。数字ボタンスイッチ58を操作してチャンネルを切り換えると、切り換え前のチャンネルが記憶され、ジャンプボタンスイッチ61は、この切り換え前の元のチャンネルに戻るときに操作される。
ランゲージボタン62は、2カ国語以上の言語により放送が行われている場合において、所定の言語を選択するときに操作される。ガイドボタンスイッチ63は、CRT11にEPG(Electric Program Guide)を表示させるときに操作される。フェイバリッドボタンスイッチ64は、あらかじめ設定されたユーザの好みのチャンネルを選択する場合に操作される。
ケーブルボタンスイッチ65、テレビスイッチ66、およびDSSボタンスイッチ67は、リモコン2から出射される赤外線に対応するコマンドコードの機器カテゴリを切り換えるためのボタンスイッチである。即ち、リモコン2は、テレビジョン受像機の本体1の他、図示せぬSTBやIRDを遠隔制御することができるようになっており、ケーブルボタンスイッチ65は、CATV網を介して伝送されてくる信号を受信するSTB(Set Top Box)を、リモコン2によって制御する場合に操作される。ケーブルボタンスイッチ65の操作後は、リモコン2からは、STBに割り当てられた機器カテゴリのコマンドコードに対応する赤外線が出射される。同様に、テレビボタンスイッチ66は、本体1を、リモコン2によって制御する場合に操作される。DSSボタンスイッチ67は、衛星を介して伝送されている信号を受信するIRD(Integrated Receiver and Decorder)を、リモコン2によって制御する場合に操作される。
LED(Light Emitting Diode)68,69,70は、それぞれケーブルボタンスイッチ65、テレビボタンスイッチ66、またはDSSボタンスイッチ67がオンにされたとき点灯し、これにより、リモコン2が、現在、どのカテゴリの装置の制御が可能になっているのかが、ユーザに示される。なお、LED68,69,70は、それぞれケーブルボタンスイッチ65、テレビボタンスイッチ66、またはDSSボタンスイッチ67がオフにされたときは消灯する。
ケーブル電源ボタンスイッチ71、テレビ電源ボタンスイッチ72、DSS電源ボタンスイッチ73は、STB、本体1、またはIRDの電源をオン/オフするときに操作される。
ミューティングボタンスイッチ74は、本体1のミューティング状態を設定または解除するときに操作される。スリープボタンスイッチ75は、所定の時刻になった場合、または所定の時間が経過した場合に、自動的に電源をオフするスリープモードを設定または解除するときに操作される。
発光部76は、リモコン2が操作された場合に、その操作に対応する赤外線を出射するようになっている。
次に、図5は、図3の画像インタフェース40の第1実施の形態の構成例を示している。
インタフェースコントローラ81は、メモリインタフェース82を制御する。さらに、インタフェースコントローラ81は、接続検出部84の出力に基づいて、スロット12iに対する画像処理カード13iの着脱を認識し、その認識結果に基づいて、カードインタフェース83を制御する。また、インタフェースコントローラ81は、メモリインタフェース82とカードインタフェース82との間の画像データのやりとりを制御する。
メモリインタフェース82は、インタフェースコントローラ81の制御の下、フレームメモリ35(図3)から画像データを読み出し、インタフェースコントローラ81に供給する。また、メモリインタフェース82は、インタフェースコントローラ81から供給される画像データを受信し、線順次変換部85に供給する。
カードインタフェース83は、インタフェースコントローラ81の制御にしたがい、インタフェースコントローラ81から供給される画像データを、スロット12iに装着された画像処理カード13iに供給する。
即ち、カードインタフェース83は、スロット121乃至126に接続されており、インタフェースコントローラ81から供給される画像データや制御信号その他のデータを受信し、スロット12iに装着された画像処理カード13iに供給する。
さらに、カードインタフェース83は、スロット12iに装着された画像処理カード13iから供給される画像データや制御信号その他のデータを受信し、インタフェースコントローラ81、または他のスロット12jに装着された他の画像処理カード13jに供給する。
また、カードインタフェース83は、スロット12iが有する図示せぬ端子の電圧(端子電圧)を、接続検出部84に供給する。
接続検出部84は、カードインタフェース83を介して、例えば、スロット121乃至126の端子電圧を監視しており、その端子電圧の変化に基づいて、スロット12iに対する画像処理カード13iの装着または抜き取りを検出し、その検出結果を、インタフェースコントローラ83に供給する。なお、画像処理カード13iの着脱の検出は、その他、機械的に行うことも可能である。
線順次変換部85は、メモリインタフェース82から供給される画像データの走査方式を、必要に応じて、インタレース走査方式から順次走査(ノンインタレース走査)方式、または順次走査方式からインタレース走査方式に変換し、フレームメモリ35に供給して記憶させる。
次に、図6は、画像処理インタフェース40が図5に示したように構成される場合の、画像処理カード13iの構成例を示している。
図6の実施の形態では、画像処理カード13iは、そこに供給される画像データを、第1の画像データとして、その第1の画像データを、その第1の画像データよりも高画質の第2の画像データに変換するデータ変換処理を行うようになっている。
ここで、例えば、第1の画像データを低解像度の画像データとするとともに、第2の画像データを高解像度の画像データとすれば、データ変換処理は、解像度を向上させる解像度向上処理ということができる。また、例えば、第1の画像データを低S/N(Siginal/Noise)の画像データとするとともに、第2の画像データを高S/Nの画像データとすれば、データ変換処理は、ノイズを除去するノイズ除去処理ということができる。さらに、例えば、第1の画像データを所定のサイズの画像データとするとともに、第2の画像データを、第1の画像データのサイズを大きくまたは小さくした画像データとすれば、データ変換処理は、画像のリサイズ(拡大または縮小)を行うリサイズ処理ということができる。
従って、データ変換処理によれば、第1および第2の画像データをどのように定義するかによって、様々な処理を実現することができる。
タップ抽出部91および92には、カードインタフェース83(図5)から、データ変換処理の対象としての第1の画像データが供給される。
タップ抽出部91は、第2の画像データを構成する画素を、順次、注目画素とし、さらに、その注目画素の画素値を予測するのに用いる第1の画像データを構成する画素(の画素値)の幾つかを、予測タップとして抽出する。
具体的には、タップ抽出部91は、注目画素に対応する、第1の画像データの画素(第1の画像データ上の、注目画素の位置と同一位置から、例えば、最も近くにある第1の画像データの画素)に対して、空間的または時間的に近い位置にある複数の画素(例えば、注目画素に対応する、第1の画像データの画素と、それに空間的に隣接する画素など)を、予測タップとして抽出する。
タップ抽出部92は、注目画素を、幾つかのクラスのうちのいずれかにクラス分けするクラス分類を行うのに用いる第1の画像データを構成する画素の幾つかを、クラスタップとして抽出する。
なお、タップ抽出部91および92に対しては、カードコントローラ98から制御信号が供給されるようになっており、タップ抽出部91で構成される予測タップのタップ構造と、タップ抽出部92で構成されるクラスタップのタップ構造は、カードコントローラ98からの制御信号にしたがって設定されるようになっている。
ここで、予測タップとクラスタップは、同一のタップ構造とすることもできるし、異なるタップ構造とすることもできる。
タップ抽出部91で得られた予測タップは、予測部95に供給され、タップ抽出部92で得られたクラスタップは、クラス分類部93に供給される。
クラス分類部93は、タップ抽出部92からのクラスタップに基づき、注目画素をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数メモリ94に供給する。
ここで、クラス分類を行う方法としては、例えば、ADRC(Adaptive Dynamic Range Coding)等を採用することができる。
ADRCを用いる方法では、クラスタップを構成する画素の画素値が、ADRC処理され、その結果得られるADRCコードにしたがって、注目画素のクラスが決定される。
なお、KビットADRCにおいては、例えば、クラスタップを構成する画素の画素値の最大値MAXと最小値MINが検出され、DR=MAX-MINを、集合の局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成する画素値がKビットに再量子化される。即ち、クラスタップを構成する各画素の画素値から、最小値MINが減算され、その減算値がDR/2Kで除算(量子化)される。そして、以上のようにして得られる、クラスタップを構成するKビットの各画素の画素値を、所定の順番で並べたビット列が、ADRCコードとして出力される。従って、クラスタップが、例えば、1ビットADRC処理された場合には、そのクラスタップを構成する各画素の画素値は、最小値MINが減算された後に、最大値MAXと最小値MINとの平均値で除算され(小数点以下切り捨て)、これにより、各画素の画素値が1ビットとされる(2値化される)。そして、その1ビットの画素値を所定の順番で並べたビット列が、ADRCコードとして出力される。
なお、クラス分類部93には、例えば、クラスタップを構成する画素の画素値のレベル分布のパターンを、そのままクラスコードとして出力させることも可能である。しかしながら、この場合、クラスタップが、N個の画素の画素値で構成され、各画素の画素値に、Kビットが割り当てられているとすると、クラス分類部93が出力するクラスコードの場合の数は、(2N)K通りとなり、画素の画素値のビット数Kに指数的に比例した膨大な数となる。
従って、クラス分類部93においては、クラスタップの情報量を、上述のADRC処理や、あるいはベクトル量子化等によって圧縮することにより、クラス分類を行うのが好ましい。
なお、クラス分類は、上述したように、クラスタップを構成する画素の画素値のレベル分布のパターンに基づいて行う他、例えば、そのクラスタップの注目画素に対応する画素の部分にエッジが存在するかどうかや、その画素の動きの有無(あるいは、動きの大きさや方向など)に基づいて行うことも可能である。
係数メモリ94は、係数生成部96から、係数正規化部99を介して供給されるクラスごとのタップ係数を記憶し、さらに、その記憶したタップ係数のうちの、クラス分類部93から供給されるクラスコードに対応するアドレスに記憶されているタップ係数(クラス分類部93から供給されるクラスコードが表すクラスのタップ係数)を、予測部95に供給する。
ここで、タップ係数とは、ディジタルフィルタにおける、いわゆるタップにおいて入力データと乗算される係数に相当するものである。
予測部95は、タップ抽出部91が出力する予測タップと、係数メモリ94が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、注目画素の真値の予測値を求める所定の予測演算を行う。これにより、予測部95は、注目画素の画素値(の予測値)、即ち、第2の画像データを構成する画素の画素値を求めて出力する。
係数生成部96は、生成情報記憶部97に記憶されている生成情報と、カードコントローラ98から供給されるパラメータとに基づいて、クラスごとのタップ係数を生成し、係数正規化部99を介して、係数メモリ94に供給し、上書きする形で記憶させる。
生成情報記憶部97は、クラスごとのタップ係数を生成するための生成情報を記憶している。
なお、生成情報としては、例えば、タップ係数の、いわば種となる、後述する学習によって求められる係数種データそのもの、あるいは、その係数種データを生成することのできる情報を採用することができる。
また、画像処理インタフェース40のスロット121乃至126それぞれに装着される画像処理カード131乃至136は、すべて図6に示したように構成されるが、生成情報記憶部97に記憶される生成情報は、異なる画像処理カード13の間では、異なるタップ係数を生成することのできるものとなっている。
生成情報記憶部97は、さらに、画像処理カード13iが行う画像処理としてのデータ変換処理の内容を表す処理情報も記憶している。
なお、処理情報には、タップ抽出部91で生成(構成)される予測タップ、およびタップ抽出部92で生成されるクラスタップのタップ構造を表す情報、クラス分類部93で行われるクラス分類の方法(クラス分類方法)を表す情報(例えば、クラス分類を、画素値のレベル分布のパターン、エッジの有無、あるいは画素の動きの有無に基づいて行うなどといった情報)、生成情報から生成されるタップ係数のクラス数などが含まれる。
さらに、処理情報には、画像処理カード13iのカードID(Identification)が含まれる。ここで、カードIDは、画像処理カード13iを、いわば順番付けるもので、本実施の形態では、6つのスロット121乃至126それぞれに装着される画像処理カード131乃至136に対して、例えば1乃至6のカードIDがそれぞれ割り当てられている。
そして、カードIDが最高順位である#1の画像処理カード131を除き、カードIDが#iの画像処理カード13iは、それより1つ順位の大きいカードIDが#i−1の画像処理カード13i-1が存在しない場合には、動作しないようになっている。
従って、カードIDが#6の画像処理カード136を動作させるためには、カードIDが#5の画像処理カード135の存在が必要であり、その、カードIDが#5の画像処理カード135を動作させるためには、カードIDが#4の画像処理カード134の存在が必要である。以下、同様にして、結局、カードIDが#6の画像処理カード136を動作させるには、それより順位が上のすべての画像処理カード131乃至135が必要となる。
なお、本実施の形態では、カードID#iの画像処理カード13iの処理情報には、その画像処理カード13i自体が行うデータ変換処理の内容を表す処理情報の他、その画像処理カード13iとともに、それより順位が上のすべての画像処理カード13i-1,13i-2,・・・,131が装着された場合に、その各画像処理カード13i-1,13i-2,・・・,131が行うデータ変換処理の内容を表す処理情報も含まれている。
即ち、例えば、カードID#1の画像処理カード131を例にすれば、本実施の形態では、画像処理カード131については、それだけが装着された場合と、画像処理カード131および132が装着された場合とで、その機能(データ変換処理の内容)を変化させることができるようになっている。このため、画像処理カード131だけが装着された場合の、その画像処理カード131のデータ変換処理の内容は、その画像処理カード131の処理情報に規定されており、画像処理カード131および132の両方が装着された場合の、画像処理カード131のデータ変換処理の内容は、画像処理カード132の処理情報に規定されている。なお、画像処理カード131および132の両方が装着された場合の、画像処理カード132のデータ変換処理の内容は、画像処理カード132の処理情報に規定されている。
同様にして、画像処理カード131乃至13iが装着された場合の、画像処理カード131乃至13iそれぞれのデータ変換処理の内容は、最もカードIDが大きい(最も順位が低い)画像処理カード13iの処理情報に規定されている。
従って、本実施の形態では、画像処理カード131乃至13iが装着された場合の、各画像処理カード131乃至13iのデータ変換処理の内容は、最もカードIDが大きい画像処理カード13iの処理情報を参照することによって認識することができる。
カードコントローラ98は、カードインタフェース83(図5)との間で、画像データやその他のデータのやりとりを制御する。さらに、カードコントローラ98は、タップ抽出部91および92、並びにクラス分類部93を制御する。また、カードコントローラ98は、画像処理インタフェース40からの要求に応じて、生成情報記憶部97から処理情報を読み出し、画像処理インタフェース40に供給する。また、カードコントローラ98は、係数生成部96に対して、後述するパラメータを与える。
係数正規化部99は、係数生成部96から供給されるタップ係数を正規化し、その正規化後のタップ係数を、係数メモリ94に供給して記憶させる。
次に、図7のフローチャートを参照して、図5の画像処理インタフェース40の処理について説明する。
画像処理インタフェース40では、まず最初に、ステップS1において、インタフェースコントローラ81は、接続検出部84の出力に基づき、スロット121乃至126のうちのいずれかのスロット12iに対して、画像処理カード13iが新たに装着(挿入)されたかどうかを判定する。
ステップS1において、スロット12iに対して、画像処理カード13iが装着されたと判定された場合、即ち、画像処理カード13iが、スロット12iに装着されることにより、そのスロット12iの端子電圧が変化し、その変化が、接続検出部84において検出された場合、ステップS2をスキップして、ステップS3に進む。
また、ステップS1において、スロット12iに対して、画像処理カード13iが装着されていないと判定された場合、ステップS2に進み、インタフェースコントローラ81は、接続検出部84の出力に基づき、スロット121乃至126のうちのいずれかのスロット12iに装着されている画像処理カード13iが抜き取られたかどうかを判定する。
ステップS2において、スロット12iから、画像処理カード13iが抜き取られていないと判定された場合、ステップS1に戻り、以下、同様の処理が繰り返される。
また、ステップS2において、スロット12iから、画像処理カード13iが抜き取られたと判定された場合、即ち、画像処理カード13iが、スロット12iから抜き取られることにより、そのスロット12iの端子電圧が変化し、その変化が、接続検出部84において検出された場合、ステップS3に進み、インタレースコントローラ81は、カードインタフェース83を制御することにより、スロット121乃至126のうち、画像処理カード13が装着されているものの、その装着されている画像処理カード13(以下、適宜、装着カードという)すべてから、処理情報を読み出す。
即ち、この場合、処理情報を要求する制御信号が、カードインタフェース83から、スロット12iを介して、そこに装着されている画像処理カード13iのカードコントローラ98(図6)に供給される。カードコントローラ98は、処理情報を要求する制御信号を受信すると、生成情報記憶部79から処理情報を読み出し、カードインタフェース83に供給する。カードインタフェース83は、このようにして画像処理カード13iから供給される処理情報を受信し、インタフェースコントローラ81に供給する。
その後、ステップS4に進み、インタフェースコントローラ81は、装着カードとしての画像処理カード13から読み出した処理情報に含まれるカードIDを調査し、これにより、動作させる装着カード(以下、適宜、有効カードという)を決定する。
即ち、インタフェースコントローラ81は、装着カードとしての画像処理カード13のすべてのカードIDを昇順に並べ、1からnまでのカードIDが連続している場合には、そのカードIDが1乃至nそれぞれの画像処理カード(装着カード)131乃至13nを、有効カードとする。
従って、スロット121乃至126のうちの複数のスロットそれぞれに、画像処理カード13が装着されていたとしても、カードID#1の画像処理カード131が装着されていない場合には、いずれの画像処理カード13も、有効カードとはされない。また、例えば、カードID#1の画像処理カード131およびカードID#3の画像処理カード133が装着されていても、カードID#2の画像処理カード132が装着されていない場合には、有効カードとされるのは、カードID#1の画像処理カード131だけであり、カードID#3の画像処理カード133は、有効カードとはされない。
ここで、スロット121乃至126のうちの複数に、同一のカードIDの画像処理カード13が装着された場合には、インタフェースコントローラ81は、例えば、その同一のカードIDの画像処理カード13の中から、1つを選択し、有効カードとする。
なお、このように、同一のカードIDの画像処理カード13が複数装着されている場合や、上述したように、連続していないカードIDの画像処理カードが装着されている場合には、インタフェースコントローラ81は、例えば、その旨を表す制御信号を、コントローラ37に供給する。この場合、コントローラ37は、セレクタ34、フレームメモリ35、およびマトリクス変換部36を介して、CRT11に所定のメッセージを表示させ、これにより、同一のカードIDの画像処理カード13が複数装着されている旨や、連続していないカードIDの画像処理カードが装着されている旨を、ユーザに報知する。
インタフェースコントローラ81は、ステップS4において、上述したように、有効カードを決定すると、ステップS5に進み、カードインタフェース83を制御することにより、有効カードとしての各画像処理カード13iのカードコントローラ98(図6)に対して、有効カードとしての画像処理カード13iの中で、最大のカードIDの画像処理カード13i(max)から読み出した処理情報(以下、適宜、最大ID処理情報という)を送信し、これにより、有効カードとなっている各画像処理カード13iにおける予測タップおよびクラスタップのタップ構造、クラス分類方法、並びにタップ係数の生成などを制御する。
ここで、有効カードとしての各画像処理カード13iは、画像処理インタフェース40(のインタフェースコントローラ81)から供給される最大ID処理情報を参照することで、自身が行うべきデータ変換処理の内容を認識し、これにより、その最大ID処理情報にしたがったタップ構造の予測タップおよびクラスタップの生成、所定のクラス分類方法によるクラス分類、並びに所定のタップ係数の生成を行う。
その後、ステップS6において、インタフェースコントローラ81は、有効カードになっている画像処理カード13に対する画像データの入出力ルートを決定し、その入出力ルートにしたがって、画像データの転送を行うように、カードインタフェース83を設定して、ステップS1に戻る。
即ち、インタフェースコントローラ81は、有効カードになっている画像処理カード13について、そのカードIDの順位順に、フレームメモリ35から読み出された画像データを転送するように、その入出力ルートを決定する。従って、例えば、カードインタフェース83に接続されているすべてのスロット121乃至126に、カードIDが#1乃至#6の画像処理カード131乃至136がそれぞれ装着されている場合には、画像処理カード131,132,133,134,135,136の順で、画像データを転送するように、入出力ルートが決定される。
そして、その後は、カードインタフェース83において、決定された入出力ルートにしたがって、画像データが転送される。従って、例えば、上述したように、画像処理カード131,132,133,134,135,136の順で、画像データを転送するように、入出力ルートが決定された場合、カードインタフェース83は、メモリインタフェース82によってフレームメモリ35から読み出され、インタフェースコントローラ81を介して供給された画像データを、画像処理カード131に転送する。そして、カードインタフェース83は、画像処理カード131において、画像データについてデータ変換処理が行われ、そのデータ変換処理後の画像データを受信すると、その画像データを、画像処理カード132に転送する。以下、同様に、カードインタフェース83は、画像データを、画像処理カード133,134,135,136の順で転送していき、最後の画像処理カード136から画像データを受信すると、その画像データを、インタフェースコントローラ81に供給する。このインタレースコントローラ81に供給された画像データは、メモリインタレース82および線順次変換部85を介して、フレームメモリ35に記憶され、その後、CRT11で表示される。
なお、以上のように、画像データは、有効カードとされた画像処理カード13にしか転送されないため、有効カードとされていない画像処理カード13では、処理されない(画像データが供給されないため、処理することができない)。
次に、図8のフローチャートを参照して、図6の画像処理カード13iの処理(データ変換処理)について説明する。
まず最初に、ステップS11において、カードコントローラ98は、上述した図7のステップS5でインタフェースコントローラ81(図5)が送信してくる処理情報を受信したかどうかを判定する。
ここで、図7のステップS5でインタフェースコントローラ81(図5)が送信してくる処理情報は、最大ID処理情報であり、従って、有効カードとなっている各画像処理カード13iが行うべきデータ変換処理の内容を有している。
ステップS11において、処理情報を受信したと判定された場合、即ち、スロット121乃至126のうちのいずれかに、新たに、画像処理カード13が装着されるか、または、スロット121乃至126に装着されていた画像処理カードのいずれかが抜き出され、これにより、最大のカードIDを有する画像処理カード13が変化し、その最大のカードIDを有する画像処理カード13が記憶している処理情報(最大ID処理情報)が、画像処理インタフェース40(のカードインタフェース83)からカードコントローラ98に送信され、カードコントローラ98で受信された場合、ステップS12に進み、カードコントローラ98は、その最大ID処理情報を参照することにより、自身が行うべきデータ変換処理の内容を認識し、その認識結果にしたがって、タップ抽出部91および92、クラス分類部93を制御する。
即ち、カードコントローラ98は、例えば、最大ID処理情報に記述されているタップ構造の予測タップまたはクラスタップを構成するように、タップ抽出部91または92の動作モードを設定する。さらに、カードコントローラ98は、最大ID処理情報に記述されているクラス分類方法によるクラス分類を行うように、クラス分類部93の動作モードを設定する。
そして、ステップS13に進み、カードコントローラ98は、最大ID処理情報に基づき、係数生成部96を制御することにより、生成情報から、タップ係数を生成させる。
即ち、処理情報には、生成情報から生成すべきタップ係数の情報(以下、適宜、タップ係数情報という)が含まれており、カードコントローラ98は、そのタップ係数情報にしたがい、生成情報から、タップ係数を生成するように、係数生成部96を制御する。これにより、係数生成部96は、カードコントローラ98の制御にしたがい、生成情報記憶部97に記憶された生成情報から、クラスごとのタップ係数を生成し、係数正規化部99に供給する。なお、このとき、カードコントローラ98は、係数生成部96において生成情報からタップ係数を生成するのに必要な、後述するパラメータを、係数生成部96に供給する。
係数生成部96においてクラスごとのタップ係数が生成され、係数正規化部99に供給されると、係数正規化部99は、ステップS14において、そのクラスごとのタップ係数について、後述するレベル調整のための正規化処理し、その正規化後のクラスごとのタップ係数を、係数メモリ94に供給して記憶させ、ステップS15に進む。
ステップS15では、タップ抽出部91が、カードインタフェース83(図5)から、図7のステップS6で設定された入出力ルートにしたがって供給される画像データを、データ変換処理対象の第1の画像データとして、その第1の画像データに対する第2の画像データ(データ変換処理後の画像データ)を構成する各画素を、順次、注目画素とし、その注目画素について、ステップS12で設定されたタップ構造の予測タップとする第1の画像データの画素を抽出する。さらに、ステップS15では、タップ抽出部92が、注目画素について、ステップS12で設定されたタップ構造のクラスタップとする第1の画像データの画素を抽出する。そして、予測タップは、タップ抽出部91から予測部95に供給され、クラスタップは、タップ抽出部92からクラス分類部93に供給される。
クラス分類部93は、タップ抽出部92から、注目画素についてのクラスタップを受信し、ステップS16において、そのクラスタップに基づき、ステップS12で設定されたクラス分類方法によって、注目画素をクラス分類する。さらに、クラス分類部93は、そのクラス分類の結果得られる注目画素のクラスを表すクラスコードを、係数メモリ94に出力し、ステップS17に進む。
ステップS17では、係数メモリ94が、クラス分類部93から供給されるクラスコードに対応するアドレスに記憶されているタップ係数、即ち、クラスコードに対応するクラスのタップ係数を読み出して出力する。さらに、ステップS17では、予測部95が、係数メモリ94が出力するタップ係数を取得し、ステップS18に進む。
ステップS18では、予測部95が、タップ抽出部91が出力する予測タップと、係数メモリ94から取得したタップ係数とを用いて、所定の予測演算(後述する式(1)の予測演算)を行う。これにより、予測部95は、注目画素の画素値を求め、カードインタフェース83(図5)に供給する。そして、ステップS11に戻り、以下、同様の処理が繰り返される。
一方、ステップS11において、処理情報を受信していないと判定された場合、ステップS12乃至S14をスキップして、ステップS15に進み、以下、上述した場合と同様の処理が行われる。従って、この場合、ステップS15乃至S18の処理は、カードコントローラ98において前回受信された処理情報(最大ID処理情報)にしたがって行われる。
次に、図6の予測部95における予測演算、係数生成部96におけるタップ係数の生成、および生成情報記憶部97に記憶させる生成情報の1つである係数種データの学習について説明する。
いま、高画質の画像データ(高画質画像データ)を第2の画像データとするとともに、その高画質画像データをLPF(Low Pass Filter)によってフィルタリングする等してその画質(解像度)を低下させた低画質の画像データ(低画質画像データ)を第1の画像データとして、低画質画像データから予測タップを抽出し、その予測タップと所定のタップ係数を用いて、高画質画素の画素値を、所定の予測演算によって求める(予測する)ことを考える。
いま、所定の予測演算として、例えば、線形1次予測演算を採用することとすると、高画質画素の画素値yは、次の線形1次式によって求められることになる。
但し、式(1)において、xnは、高画質画素yについての予測タップを構成する、n番目の低画質画像データの画素(以下、適宜、低画質画素という)の画素値を表し、wnは、n番目の低画質画素(の画素値)と乗算されるn番目のタップ係数を表す。
なお、式(1)では、予測タップが、N個の低画質画素x1,x2,・・・,xNで構成されるものとしてある。この場合、式(1)によれば、高画質画素yは、N個の低画質画素x1,x2,・・・,xNを、N個のタップ係数w1,w2,・・・,wNを重みとして、重み付け加算することによって求められていると考えることができる。従って、式(1)によって求められる高画質画素yのレベル変動を防止するために、重みであるタップ係数w1,w2,・・・,wNは、その総和が1である必要がある。そこで、画像処理カード13の係数正規化部99(図6)は、係数生成部96から供給されるタップ係数について、各クラスごとのタップ係数の総和を求め、その総和によって、対応するクラスのタップ係数を除算することにより、タップ係数を正規化するようになっている。
ここで、高画質画素の画素値yは、式(1)に示した線形1次式ではなく、2次以上の高次の式によって求めるようにすることも可能である。
ところで、いま、第kサンプルの高画質画素の画素値の真値をykと表すとともに、式(1)によって得られるその真値ykの予測値をyk'と表すと、その予測誤差ekは、次式で表される。
いま、式(2)の予測値yk'は、式(1)にしたがって求められるため、式(2)のyk'を、式(1)にしたがって置き換えると、次式が得られる。
但し、式(3)において、xn,kは、第kサンプルの高画質画素についての予測タップを構成するn番目の低画質画素を表す。
式(3)の予測誤差ekを0とするタップ係数wnが、高画質画素を予測するのに最適なものとなるが、すべての高画質画素について、そのようなタップ係数wnを求めることは、一般には困難である。
そこで、タップ係数wnが最適なものであることを表す規範として、例えば、最小自乗法を採用することとすると、最適なタップ係数wnは、次式で表される自乗誤差の総和Eを最小にすることで求めることができる。
但し、式(4)において、Kは、高画質画素ykと、その高画質画素ykについての予測タップを構成する低画質画素x1,k,x2,k,・・・,xN,kとのセットのサンプル数(学習用のサンプルの数)を表す。
式(4)の自乗誤差の総和Eを最小(極小)にするタップ係数wnは、その総和Eをタップ係数wnで偏微分したものを0とするものであり、従って、次式を満たす必要がある。
そこで、上述の式(3)をタップ係数wnで偏微分すると、次式が得られる。
式(5)と(6)から、次式が得られる。
式(7)のekに、式(3)を代入することにより、式(7)は、式(8)に示す正規方程式で表すことができる。
式(8)の正規方程式は、例えば、掃き出し法(Gauss-Jordanの消去法)などを用いることにより、タップ係数wnについて解くことができる。
式(8)の正規方程式をクラスごとにたてて解くことにより、最適なタップ係数(ここでは、自乗誤差の総和Eを最小にするタップ係数)wnを、クラスごとに求めることができる。
図9は、式(8)の正規方程式をたてて解くことによりクラスごとのタップ係数wnを求める学習を行うタップ係数の学習装置の構成例を示している。
学習装置には、学習に用いられる学習用画像データが入力されるようになっている。ここで、学習用画像データは、第2の画像データに対応するもので、例えば、解像度の高い高画質画像データを用いることができる。
学習装置において、学習用画像データは、教師データ生成部111と生徒データ生成部113に供給される。
教師データ生成部111は、そこに供給される学習用画像データから教師データを生成し、教師データ記憶部112に供給する。即ち、ここでは、教師データ生成部111は、学習用画像データとしての高画質画像データを、例えば、そのまま教師データとして、教師データ記憶部112に供給する。
教師データ記憶部112は、教師データ生成部111から供給される教師データとしての高画質画像データを記憶する。
生徒データ生成部113は、学習用画像データから、第1の画像データに対応する生徒データを生成し、生徒データ記憶部114に供給する。即ち、生徒データ生成部113は、例えば、学習用画像データとしての高画質画像データをフィルタリングすることにより、その解像度を低下させることで、低画質画像データを生成し、この低画質画像データを、生徒データとして、生徒データ記憶部114に供給する。
生徒データ記憶部114は、生徒データ生成部113から供給される生徒データを記憶する。
タップ抽出部115は、教師データ記憶部112に記憶された教師データとしての高画質画像データを構成する画素を、順次、注目教師画素とし、その注目教師画素について、生徒データ記憶部114に記憶された生徒データとしての低画質画像データを構成する低画質画素のうちの所定のものを抽出することにより、図6のタップ抽出部91が構成するのと同一のタップ構造の予測タップを構成し、足し込み部118に供給する。
タップ抽出部116は、注目教師画素について、生徒データ記憶部114に記憶された生徒データとしての低画質画像データを構成する低画質画素のうちの所定のものを抽出することにより、図6のタップ抽出部92が構成するのと同一のタップ構造のクラスタップを構成し、クラス分類部117に供給する。
なお、タップ抽出部115と116には、処理情報生成部120が生成する処理情報が供給されるようになっており、タップ抽出部115と116は、処理情報生成部120から供給される処理情報が表すタップ構造の予測タップとクラスタップをそれぞれ構成する。
クラス分類部117は、タップ抽出部116が出力するクラスタップに基づき、図6のクラス分類部93と同一のクラス分類を行い、その結果得られるクラスに対応するクラスコードを、足し込み部118に出力する。
なお、クラス分類部117には、処理情報生成部120が生成する処理情報が供給されるようになっており、クラス分類部117は、処理情報生成部120から供給される処理情報が表すクラス分類方法によりクラス分類を行う。
足し込み部118は、教師データ記憶部112から、注目教師画素を読み出し、その注目教師画素と、タップ抽出部115から供給される注目教師画素について構成された予測タップを構成する生徒データを対象とした足し込みを、クラス分類部117から供給されるクラスコードごとに行う。
即ち、足し込み部118は、クラス分類部117から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)xi,k(xj,k)を用い、式(8)の左辺の行列におけるコンポーネントを求めるための生徒データどうしの乗算(xi,kxj,k)と、サメーション(Σ)に相当する演算を行う。
さらに、足し込み部118は、やはり、クラス分類部117から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)xi,kと、教師データykを用い、式(8)の右辺のベクトルにおけるコンポーネントを求めるための生徒データxi,kと教師データykの乗算(xi,kyk)と、サメーション(Σ)に相当する演算を行う。
即ち、足し込み部118は、前回、注目教師画素とされた教師データについて求められた式(8)における左辺の行列のコンポーネントと、右辺のベクトルのコンポーネントを、その内蔵するメモリ(図示せず)に記憶しており、その行列のコンポーネントまたはベクトルのコンポーネントに対して、新たに注目教師画素とされた教師データについて、その教師データykと生徒データxi,k(xj,k)を用いて計算される、対応するコンポーネントxi,kxj,kまたはxi,kykをそれぞれ足し込む。
そして、足し込み部118は、教師データ記憶部112に記憶された教師データすべてを注目教師画素として、上述の足し込みを行うことにより、各クラスについて、式(8)に示した正規方程式をたてると、その正規方程式を、タップ係数算出部119に供給する。
タップ係数算出部119は、足し込み部118から供給されるクラスごとの正規方程式を解くことにより、各クラスごとのタップ係数wnを求めて出力する。
処理情報生成部120は、画像処理カード131乃至136それぞれに構成させる予測タップおよびクラスタップのタップ構造や、画像処理カード131乃至136それぞれに行わせるクラス分類のクラス分類方法などを含む処理情報を生成し、タップ抽出部115および116、並びにクラス分類部117に供給する。なお、処理情報生成部120において処理情報に含ませるタップ構造やクラス分類方法などは、処理情報生成部120に、あらかじめ記憶(登録)されているものとする。
次に、図10のフローチャートを参照して、図9の学習装置の処理(学習処理)について説明する。
まず最初に、ステップS21において、教師データ生成部111と生徒データ生成部113が、学習用画像データから、教師データと生徒データを、それぞれ生成して出力する。即ち、教師データ生成部111は、学習用画像データを、そのまま、教師データとして出力する。また、生徒データ生成部111は、学習用画像データを、LPFによってフィルタリングすることにより、各フレーム(またはフィールド)の教師データ(学習用画像データ)について、生徒データを生成して出力する。
教師データ生成部111が出力する教師データは、教師データ記憶部112に供給されて記憶され、生徒データ生成部113が出力する生徒データは、生徒データ記憶部114に供給されて記憶される。
その後、ステップS22に進み、処理情報生成部120は、所定の処理情報を生成し、タップ抽出部115および116、並びにクラス分類部117に供給し、これにより、タップ抽出部115に構成させる予測タップのタップ構造、タップ抽出部116に構成させるクラスタップのタップ構造、およびクラス分類部177におけるクラス分類方法を設定する。
そして、ステップS23に進み、タップ抽出部115は、教師データ記憶部112に記憶された教師データのうち、まだ、注目教師画素としていないものを、注目教師画素とする。さらに、ステップS23では、タップ抽出部115が、注目教師画素について、生徒データ記憶部114に記憶された生徒データから予測タップを構成し、足し込み部118に供給するとともに、タップ抽出部116が、やはり、注目教師画素について、生徒データ記憶部114に記憶された生徒データからクラスタップを構成し、クラス分類部117に供給する。
なお、タップ抽出部115は、ステップS22で設定されたタップ構造の予測タップを構成する。タップ抽出部116も、ステップS22で設定されたタップ構造のクラスタップを構成する。
その後、ステップS24に進み、クラス分類部117は、注目教師画素についてのクラスタップに基づき、注目教師画素のクラス分類を行い、その結果得られるクラスに対応するクラスコードを、足し込み部118に出力して、ステップS25に進む。
なお、クラス分類部117では、ステップS22で設定されたクラス分類方法によるクラス分類が行われる。
ステップS25では、足し込み部118は、教師データ記憶部112から注目教師画素を読み出し、その注目教師画素と、タップ抽出部115から供給される予測タップを用い、式(8)における左辺の行列のコンポーネントxi,Kxj,Kと、右辺のベクトルのコンポーネントxi,KyKを計算する。さらに、足し込み部118は、既に得られている行列のコンポーネントとベクトルのコンポーネントのうち、クラス分類部117からのクラスコードに対応するものに対して、注目画素と予測タップから求められた行列のコンポーネントxi,Kxj,Kとベクトルのコンポーネントxi,KyKをそれぞれ足し込み、ステップS26に進む。
ステップS26では、タップ抽出部115が、教師データ記憶部112に、まだ、注目教師画素としていない教師データが記憶されているかどうかを判定する。ステップS26において、注目教師画素としていない教師データが、まだ、教師データ記憶部112に記憶されていると判定された場合、タップ抽出部115は、まだ注目教師画素としていない教師データを、新たに、注目教師画素として、ステップS23に戻り、以下、同様の処理が繰り返される。
また、ステップS26において、注目教師画素としていない教師データが、教師データ記憶部112に記憶されていないと判定された場合、足し込み部118は、いままでの処理によって得られたクラスごとの式(8)における左辺の行列と、右辺のベクトルを、タップ係数算出部119に供給し、ステップS27に進む。
ステップS27では、タップ係数算出部119は、足し込み部118から供給されるクラスごとの式(8)における左辺の行列と右辺のベクトルによって構成されるクラスごとの正規方程式を解くことにより、各クラスごとに、タップ係数wnを求めて出力し、処理を終了する。
ここで、学習用画像データの数が十分でないこと等に起因して、タップ係数wnを求めるのに必要な数の正規方程式が得られないクラスが生じることがあり得るが、そのようなクラスについては、タップ係数算出部119は、例えば、デフォルトのタップ係数を出力するようになっている。
なお、上述の場合には、学習用画像データを、そのまま第2の画像データに対応する教師データとするとともに、その学習用画像データの空間解像度を劣化させた低画質画像データを、第1の画像データに対応する生徒データとして、タップ係数の学習を行うようにしたことから、タップ係数としては、第1の画像データを、その解像度を向上させた第2の画像データに変換する解像度向上処理としてのデータ変換処理を行うものを得ることができる。
従って、画像処理カード13の係数メモリ94(図6)に、そのタップ係数を記憶させることにより、画像処理カード13では、画像データの空間解像度を向上させることができる。
ここで、第1の画像データに対応する生徒データと、第2の画像データに対応する教師データとする画像データの選択の仕方によって、タップ係数としては、各種のデータ変換処理を行うものを得ることができる。
即ち、例えば、高画質画像データを教師データとするとともに、その教師データとしての高画質画像データに対して、ノイズを重畳した画像データを生徒データとして、学習処理を行うことにより、タップ係数としては、第1の画像データを、そこに含まれるノイズを除去(低減)した第2の画像データに変換するノイズ除去処理としてのデータ変換処理を行うものを得ることができる。
また、例えば、ある画像データを教師データとするとともに、その教師データとしての画像データの画素数を間引いた画像データを生徒データとして、または、所定サイズの画像データを生徒データとするとともに、その生徒データとしての画像データの画素を所定の間引き率で間引いた画像データを教師データとして、学習処理を行うことにより、タップ係数としては、第1の画像データを、拡大または縮小した第2の画像データに変換するリサイズ処理としてのデータ変換処理を行うものを得ることができる。
従って、画像処理カード13の係数メモリ94(図6)に、ノイズ除去処理用のタップ係数や、リサイズ処理用のタップ係数を記憶させることにより、画像処理カード13では、画像データのノイズ除去やリサイズ(拡大または縮小)を行うことができる。
以上のように、タップ係数の学習に用いる教師データと生徒データのセット(以下、適宜、学習対ともいう)によって、タップ係数としては、解像度の向上や、ノイズ除去、リサイズ等の、各種の画質の改善を行うものを得ることができ、従って、このような各種の画質改善を行うタップ係数を、画像処理カード131乃至136に記憶させることにより、各画像処理カード13iでは、各種の画質改善のためのデータ変換処理を行うことができる。
なお、その他、例えば、高画質画像データを教師データとするとともに、その教師データとしての高画質画像データの空間解像度を低下させ、さらに、ノイズを重畳した画像データを生徒データとして、学習処理を行うことにより、タップ係数としては、第1の画像データを、そこに含まれるノイズを除去(低減)し、さらに、その空間解像度を向上させた第2の画像データに変換するノイズ除去処理と解像度向上処理の両方を、データ変換処理として行うものを得ることができる。
但し、ノイズ除去処理と解像度向上処理の両方を行うタップ係数を用いてデータ変換処理を行った画像データと、ノイズ除去処理を行うタップ係数を用いてデータ変換処理を行い、さらに、解像度向上処理を行うタップ係数を用いてデータ変換処理を行った画像データとでは、各データ変換処理の条件が同一であれば、画質に差が生じる。
即ち、ノイズ除去処理と解像度向上処理の両方を行うタップ係数を用いたデータ変換処理、ノイズ除去処理を行うタップ係数を用いたデータ変換処理、および解像度向上処理を行うタップ係数を用いたデータ変換処理において、いずれも、同一のタップ構造の予測タップおよびクラスタップを用いるとともに、同一のクラス分類方法(クラス数も同一)を採用した場合には、ノイズ除去処理を行うタップ係数を用いてデータ変換処理を行い、さらに、解像度向上処理を行うタップ係数を用いてデータ変換処理を行った画像データの方が、ノイズ除去処理と解像度向上処理の両方を行うタップ係数を用いてデータ変換処理を行った画像データよりも高画質になる。
ところで、画像処理カード13の生成情報記憶部97には、図9の学習装置によって求められるクラスごとのタップ係数を、生成情報として記憶させておくことが可能である。
しかしながら、この場合、クラス数をZとするとともに、1クラスあたりのタップ係数のセット(式(1)を規定するタップ係数w1,w2,・・・,wNのセット)の容量をBとすると、画像処理カード13を構成する生成情報記憶部97としては、少なくともZ×Bの容量のメモリが必要となる。
そこで、ここでは、タップ係数w1,w2,・・・,wNのセットのうちのn番目のタップ係数wnにおけるサフィックスnをタップ番号として、クラスごとのタップ係数w1乃至wNを、例えば、タップ番号ごとに圧縮し、その圧縮結果を、生成情報として、生成情報記憶部97(図6)に記憶させることができる。この場合、生成情報記憶部97に必要な記憶容量を削減することができる。
クラスごとのタップ係数w1乃至wNの、タップ番号ごとの圧縮は、例えば、次のようにして行うことができる。
即ち、いま、タップ係数wnを、その種となる係数種データと、所定のパラメータとから、例えば、次式にしたがって生成することを考える。
但し、式(9)において、βm,nは、n番目のタップ係数wnを求めるのに用いられるm番目の係数種データを表し、zは、パラメータを表す。なお、式(9)では、タップ係数wnが、M個の係数種データβn,1,βn,2,・・・,βn,Mを用いて求められるようになっている。
ここで、係数種データβm,nとパラメータzから、タップ係数wnを求める式は、式(9)に限定されるものではない。
いま、式(9)におけるパラメータzによって決まる値zm-1を、新たな変数tmを導入して、次式で定義する。
式(10)を、式(9)に代入することにより、次式が得られる。
式(11)によれば、タップ係数wnは、係数種データβn,mと変数tmとの線形1次式によって求められる(予測される)ことになるが、いま、この式(11)によって求められるタップ係数を、wn'と表すこととすると、次の式(12)で表される、最適なタップ係数wnと式(11)により求められるタップ係数wn'との誤差enを0とする係数種データβn,mが、最適なタップ係数wnを求めるのに最適なものとなるが、すべてのタップ係数wnについて、そのような係数種データβn,mを求めることは、一般には困難である。
なお、式(12)は、その右辺のwn'に式(11)を代入することによって、次式のように変形することができる。
そこで、係数種データβn,mが最適なものであることを表す規範として、例えば、やはり、最小自乗法を採用することとすると、最適な係数種データβn,mは、次式で表される自乗誤差の総和Eを最小にすることで求めることができる。
式(14)の自乗誤差の総和Eの最小値(極小値)は、式(15)に示すように、総和Eを係数種データβn,mで偏微分したものを0とするβn,mによって与えられる。
式(13)を、式(15)に代入することにより、次式が得られる。
いま、Xi,j,とYiを、式(17)と(18)に示すように定義する。
この場合、式(16)は、Xi,jとYiを用いた式(19)に示す正規方程式で表すことができる。
式(19)の正規方程式も、例えば、掃き出し法(Gauss-Jordanの消去法)などを用いることにより、係数種データβn,mについて解くことができる。
式(19)の正規方程式を解くことにより求められる係数種データβn,mによれば、式(9)にしたがい、各パラメータzについて、タップ係数wnを得ることができる。
ところで、パラメータzとして、例えば、タップ係数のクラスを採用した場合には、パラメータ(クラス)zと、係数種データβn,mとによって、式(9)から、クラス#zのタップ係数のセットを求めることができる。
そこで、いま、クラス#zのn番目のタップ係数wnを、w(z) nと表すこととすると、このクラス#zのn番目のタップ係数w(z) nを、式(9)にしたがって求めるための係数種データβn,mは、図9の学習装置によって求められる各クラス#1,#2,・・・,#Zのn番目のタップ係数w(1) n,w(2) n,・・・,w(Z) nを、それぞれ教師データとし、クラスを表すパラメータ#1,#2,・・・,#Zを、そのクラスの教師データに対する生徒データとして、式(19)の正規方程式をたてて解くことにより求めることができる。
図11は、上述のようにして、クラス#zのn番目のタップ係数w(z) nを求めるための係数種データβn,mを求める学習を行う学習装置の構成例を示している。なお、図中、図9における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
タップ係数メモリ121は、タップ係数算出部119が出力するクラスごとのタップ係数のセットを記憶する。
足し込み部122は、タップ番号nごとに、クラスを表すパラメータ#z(に対応する変数tm)と、タップ係数メモリ121に記憶された各クラス#zのタップ係数w(z) nを対象とした足し込みを行う。
即ち、足し込み部122は、パラメータzから式(10)によって求められる変数ti(tj)を用い、式(19)の左辺の行列における、式(17)で定義されるコンポーネントXi,jを求めるためのパラメータzに対応する変数ti(tj)どうしの乗算(titj)と、サメーション(Σ)に相当する演算を、タップ番号nごとに行う。
さらに、足し込み部122は、パラメータzから式(10)によって求められる変数tiと、タップ係数w(z) nとを用い、式(19)の右辺のベクトルにおける、式(18)で定義されるコンポーネントYiを求めるためのパラメータzに対応する変数tiおよびタップ係数wnの乗算(tiwn)と、サメーション(Σ)に相当する演算を、タップ番号nごとに行う。
足し込み部122は、タップ番号nごとに、式(17)で表されるコンポーネントXi,jと、式(18)で表されるコンポーネントYiを求めることにより、各タップ番号nについて、式(19)の正規方程式をたてると、その正規方程式を、係数種算出部123に供給する。
なお、図11の実施の形態では、処理情報生成部120が出力する処理情報が、足し込み部122に供給されるようになっている。この場合、処理情報には、係数種データβm,nからタップ係数w(z) nを求めるタップ演算式としての式(9)の項数を表すMが含まれており、足し込み部122は、情報処理生成部120から供給される処理情報を参照することで、タップ演算式の項数Mを認識し、式(19)の正規方程式をたてるようになっている。
係数種算出部123は、足し込み部122から供給されるタップ番号nごとの式(19)の正規方程式を解くことにより、各タップ番号nごとの係数種データβm,nを求めて出力する。
次に、図12のフローチャートを参照して、図11の学習装置の処理(学習処理)について説明する。
ステップS31乃至S37では、図10のステップS21乃至S27における場合とそれぞれ同様の処理が行われ、これにより、タップ係数算出部119で求められるクラスごとのタップ係数は、タップ係数メモリ121に供給されて記憶される。
なお、ステップS32では、タップ抽出部115に構成させる予測タップのタップ構造、タップ抽出部116に構成させるクラスタップのタップ構造、およびクラス分類部117におけるクラス分類方法の他、足し込み部122で式(19)の正規方程式をたてるのに必要なタップ演算式(9)の項数Mも設定される。
即ち、図11の学習装置における処理情報生成部120は、画像処理カード131乃至136それぞれに構成させる予測タップおよびクラスタップのタップ構造や、画像処理カード131乃至136それぞれに行わせるクラス分類のクラス分類方法の他、画像処理カード131乃至136において係数種データβm,nからタップ係数wnを生成するためのタップ演算式(9)の項数Mも含む処理情報を生成し、タップ抽出部115および116、クラス分類部117、並びに足し込み部122に供給するようになっており、足し込み部122は、その処理情報に含まれる項数Mにしたがって、式(19)の正規方程式をたてるように、その動作モードを設定する。
その後、ステップS38に進み、足し込み部122は、タップ番号nごとに、クラスを表すパラメータ#z(に対応する変数tm)と、タップ係数メモリ121に記憶された各クラス#zのタップ係数w(z) nを対象として、上述したような足し込みを行い、これにより、各タップ番号nについて、式(19)の正規方程式をたて、係数種算出部123に供給して、ステップS39に進む。
なお、ステップS38では、足し込み部122は、ステップS32で設定されたタップ演算式(9)の項数Mにしたがって、式(19)の正規方程式をたてる。
ステップS39では、係数種算出部123は、足し込み部122から供給されるタップ番号nごとの式(19)の正規方程式を解くことにより、各タップ番号nごとの係数種データβm,nを求めて出力し、処理を終了する。
図11の学習装置では、学習対および処理情報を適宜変更して、図12の学習処理を行い、これにより、各種の画質改善を行うことのできる係数種データβm,nが求められる。そして、このようにして求められた各種の画質改善を行うことのできる係数種データβm,nのうちの異なるものが、画像処理カード131乃至136それぞれに記憶されている。
なお、1クラスのタップ係数wnの個数がN個であり、クラス数がZクラスであるとすると、タップ係数wnの総数は、N×Z個になる。
一方、1クラスのタップ係数wnの個数がN個であり、タップ演算式(9)の項数がMであるとすると、係数種データβm,nの総数は、N×M個になる。
従って、1つのタップ係数wnと係数種データβm,nが同一のデータ量であるとすると、すべての係数種データβm,nのデータ量は、すべてのタップ係数wnのデータ量のM/Zになる。
そこで、MとZを比較すると、Mは、タップ演算式(9)の項数であり、1桁、または多くても、例えば、10数などの2桁程度の値が採用される。一方、Zは、クラス数を表すが、クラスを求めるクラス分類は、例えば、上述したように、クラスタップをADRC処理することにより求められる。従って、例えば、いま、5×5画素の25画素で構成されるクラスタップを、1ビットADRC処理することによりクラス分類を行うこととすると、クラス数は、225クラスとなる。
以上から、M/Zは、十分小さな値となり、従って、タップ係数wnは、十分に少ないデータ量の係数種データβm,nに圧縮されているということができる。
従って、係数種データβm,nを、生成情報として、生成情報記憶部97(図6)に記憶させることにより、タップ係数wnを記憶させる場合に比較して、生成情報記憶部97に必要な記憶容量を大きく削減することができる。
ここで、図6に示した画像処理カード13iに記憶されている処理情報には、タップ構造やクラス分類方法の他、タップ演算式(9)の項数Mや、クラス分類部93におけるクラス分類によるクラス数Zも含まれており、係数生成部96では、処理情報を参照することにより、タップ演算式(9)の項数Mが認識される。さらに、カードコントローラ98は、処理情報を参照することにより、クラス数Zを認識し、1乃至Zの整数値を、パラメータzとして、係数生成部96に与える。そして、係数生成部96では、生成情報としての係数種データβm,nと、カードコントローラ98から供給されるパラメータzとを用い、タップ演算式(9)の右辺におけるM項からなるサメーションを演算し、これにより、各クラスのタップ係数wnを求める。
次に、上述したように、図11の学習装置によれば、図13に示すように、高画質画像データを教師データとするとともに、その画質を低下させた低画質画像データを生徒データとして学習が行われ、Zクラス分のタップ係数のセットが生成される。さらに、図11の学習装置によれば、そのZクラス分のタップ係数のセットが圧縮され、予測タップのタップ数であるNタップ分の係数種データのセットが生成される。
そして、学習において、どのような学習対(教師データと生徒データ)を用いるかによって、異なる種類の画質改善(例えば、ノイズの低減や、解像度の向上など)を行うタップ係数を生成することのできる係数種データを求めることができる。さらに、学習において採用する予測タップのタップ構造(予測タップとする画素の位置関係の他、タップ数も含む)や、クラスタップのタップ構造、クラス分類方法、タップ演算式(9)の項数Mなどによって、画質改善の程度が異なるタップ係数を生成することのできる係数種データを求めることができる。
画像処理カード131乃至136それぞれには、異なる種類や程度の画質改善を行うタップ係数wnを生成する係数種データを、生成情報として記憶させておくことができるが、以下、図14乃至図19を参照して、画像処理カード131乃至136のうちの、例えば、画像処理カード131と132に記憶させる係数種データの例について説明する。
まず、画像処理カード131には、例えば、図14に示すように、高画質画像データを教師データとするとともに、その解像度を低下させ、かつノイズを付加した低画質画像データを生徒データとして学習を行い、解像度を向上させ、かつノイズを除去する解像度向上/ノイズ除去用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、解像度向上/ノイズ除去用の9タップ分の係数種データのセットを生成し、この9タップ分の係数種データのセットを、生成情報として記憶させておくことができる。
また、画像処理カード131には、図14の解像度向上/ノイズ除去用の9タップ分の係数種データのセットに加えて、例えば、図15に示すように、高画質画像データを教師データとするとともに、その解像度を低下させた低画質画像データを生徒データとして学習を行い、解像度を向上させる解像度向上用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、解像度向上用の25タップ分の係数種データのセットを生成し、この25タップ分の係数種データのセットを、生成情報として記憶させておくことができる。
一方、画像処理カード132には、例えば、図16に示すように、高画質画像データを教師データとするとともに、それにノイズを加えた低画質画像データを生徒データとして学習を行い、ノイズを除去するノイズ除去用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、ノイズ除去用の25タップ分の係数種データのセットを生成し、この25タップ分の係数種データのセットを、生成情報として記憶させておくことができる。
この場合、画像処理インタフェース40に、画像処理カード131のみが装着されたときには、画像処理カード131では、例えば、図17に示すように、解像度向上/ノイズ除去用の9タップ分の係数種データのセットと、解像度向上用の25タップ分の係数種データのセットのうちの、例えば、解像度向上/ノイズ除去用の9タップ分の係数種データのセットから、解像度向上/ノイズ除去用の64クラス分のタップ係数のセットが生成される。そして、画像処理カード131では、解像度向上/ノイズ除去用の64クラス分のタップ係数のセットを用いて、フレームメモリ35(図3)から供給される第1の画像データについて、データ変換処理が行われ、これにより、解像度が向上し、かつノイズが除去された第2の画像データが出力される。
なお、画像処理カード131の生成情報記憶部97(図6)に記憶された処理情報には、解像度向上/ノイズ除去用の9タップ分の係数種データのセットからタップ係数を生成する旨の情報が含まれており、画像処理カード131のカードコントローラ98(図6)では、この処理情報にしたがって係数生成部96が制御されることにより、解像度向上/ノイズ除去用の9タップ分の係数種データのセットから、解像度向上/ノイズ除去用の64クラス分のタップ係数のセットが生成される。
一方、画像処理インタフェース40に、画像処理カード131と132が装着された場合、画像処理カード131では、例えば、図18に示すように、解像度向上/ノイズ除去用の9タップ分の係数種データのセットと、解像度向上用の25タップ分の係数種データのセットのうちの、例えば、解像度向上用の25タップ分の係数種データのセットから、解像度向上用の64クラス分のタップ係数のセットが生成される。
また、画像処理カード132では、図18に示すように、ノイズ除去用の25タップ分の係数種データのセットから、ノイズ除去用の64クラス分のタップ係数のセットが生成される。
そして、画像処理カード131では、解像度向上用の64クラス分のタップ係数のセットを用いて、フレームメモリ35(図3)から供給される第1の画像データについて、データ変換処理が行われ、これにより、解像度が向上した第2の画像データが出力される。
この第2の画像データは、画像処理インタフェース40のカードインタフェース83を経由して、画像処理カード132に、第1の画像データとして供給される。
画像処理カード132では、ノイズ除去用の64クラス分のタップ係数のセットを用いて、そこに供給される第1の画像データについて、データ変換処理が行われ、これにより、ノイズが除去された第2の画像データが出力される。
即ち、フレームメモリ35に記憶された画像データは、画像処理カード131と画像処理カード132それぞれにおいてデータ変換処理されることで、解像度が向上し、かつノイズが除去された画像データとされる。
なお、画像処理カード132の生成情報記憶部97(図6)に記憶された処理情報には、画像処理カード131において、解像度向上用の25タップ分の係数種データのセットからタップ係数を生成する旨の情報が含まれており、画像処理カード131のカードコントローラ98(図6)では、この画像処理カード132の処理情報(いまの場合、画像処理カード132の処理情報が最大ID処理情報であり、図8で説明したように、画像処理カード131では、最大ID処理情報にしたがって、タップ係数が生成される)にしたがって係数生成部96が制御されることにより、解像度向上用の25タップ分の係数種データのセットから、解像度向上用の64クラス分のタップ係数のセットが生成される。
ここで、画像処理カード131だけが装着された場合も、画像処理カード131と132が装着された場合も、最終的に得られる画像データは、解像度が向上し、かつノイズが除去された画像データである。
しかしながら、画像処理カード131だけが装着された場合においては、画像処理カード131において、解像度の向上とノイズ除去を、いわば兼用する解像度向上/ノイズ除去用の64クラス分のタップ係数のセットを用いてデータ変換処理が行われる。一方、画像処理カード131と132が装着された場合においては、画像処理カード131において、解像度の向上に、いわば専用の解像度向上用の64クラス分のタップ係数のセットを用いてデータ変換処理が行われ、さらに、画像処理カード132において、ノイズの除去に専用のノイズ除去用の64クラス分のタップ係数のセットを用いてデータ変換処理が行われる。
従って、画像処理カード131だけが装着された場合であっても、解像度が向上し、かつノイズが除去された画像データを得ることができるが、画像処理カード131と132が装着された場合には、解像度がより向上し、かつノイズもより除去された画像データを得ることができる。
即ち、画像処理カード131を装着後、画像処理カード132を追加装着することで、テレビジョン受像機の本体1(図1)は、いわば追加的に、より高機能になる。
その結果、ユーザにおいては、画像処理カード131を購入し、さらに、画像処理カード132を購入するというインセンティブが働くことになる。
ここで、上述の場合、画像処理カード131においては、画像処理カード131だけが装着されたときには、解像度向上/ノイズ除去用の9タップ分の係数種データのセットから、解像度向上/ノイズ除去用の64クラス分のタップ係数のセットが生成され、画像処理カード131と132が装着されたときには、解像度向上用の25タップ分の係数種データのセットから、解像度向上用の64クラス分のタップ係数のセットが生成される。従って、画像処理カード131だけが装着されたときの予測タップのタップ数は9タップであるのに対して、画像処理カード131と132が装着されたときの予測タップのタップ数は25タップであり、このように、予測タップのタップ数が多いことからも、画像処理カード131と132が装着された場合の解像度の向上の程度は、一般に、画像処理カード131だけが装着された場合の解像度の向上の程度よりも大になる。
なお、上述の場合、テレビジョン受像機の本体1に注目すれば、画像処理カード131だけが装着されている状態から、画像処理カード131と132が装着された状態となることによって、解像度を向上させる機能と、ノイズを除去する機能とが、より向上することになり、その機能の種類自体は変化しない。一方、画像処理カード131だけに注目すれば、画像処理カード131の機能は、ノイズを解像度を向上させ、かつノイズを除去する機能から、解像度を向上させる機能だけに変化することになり、その機能の種類自体が変化することになる。
また、例えば、画像処理カード133には、画像の拡大を行う拡大用タップ係数を生成する係数種データを、生成情報として記憶させておくことができ、この場合、画像処理カード131には、拡大を行い、ノイズを除去し、かつ解像度を向上させる拡大/ノイズ除去/解像度向上用のタップ係数、拡大を行い、かつ解像度を向上させる拡大/解像度向上用のタップ係数解像度向上用のタップ係数をそれぞれ生成する3種類の係数種データを記憶させることができる。
そして、この場合、画像処理カード131のみが装着されたときには、画像処理カード131において、拡大/ノイズ除去/解像度向上用のタップ係数を用いてデータ変換処理を行うようにすることができる。また、画像処理カード131と132が装着された場合には、画像処理カード131において、拡大/解像度向上用のタップ係数を用いてデータ変換処理を行い、画像処理カード132において、ノイズ除去用のタップ係数を用いて、データ変換処理を行うようにすることができる。さらに、画像処理カード131乃至133が装着された場合には、画像処理カード131乃至133において、解像度向上用のタップ係数、ノイズ除去用のタップ係数、拡大用のタップ係数を用いて、それぞれデータ変換処理を行うようにすることができる。
次に、上述の場合には、画像処理カード132に、ノイズ除去用の25タップ分の係数種データのセットそのものを記憶させるようにしたが、画像処理カード132には、図19に示すように、そのノイズ除去用の25タップ分の係数種データと、画像処理カード131に記憶された解像度向上用の25タップ分の係数種データとの差分データのセットを記憶させておくようにすることが可能である。
この場合、画像処理カード131と132が画像処理インタフェース40に装着されると、画像処理カード132では、カードコントローラ98(図6)が、画像処理インタフェース40のカードインタフェース83(図5)を経由して、画像処理カード131から解像度向上用の25タップ分の係数種データを読み出し、画像処理カード132が記憶している差分データと加算することで、ノイズ除去用の25タップ分の係数種データを生成する。そして、カードコントローラ98は、ノイズ除去用の25タップ分の係数種データを、係数生成部96(図6)に供給することで、ノイズ除去用の64クラス分のタップ係数を生成させる。
ここで、画像処理カード132に記憶されている生成情報が、上述のような差分データであることと、その差分データの復元方法は、例えば、画像処理カード132の処理情報に記述しておくことができ、従って、画像処理カード132のカードコントローラ98は、その処理情報を参照することで、生成情報としての差分データを、係数種データに復元する。
この場合、画像処理カード132がデータ変換処理に用いるノイズ除去用の64クラス分のタップ係数のセットは、画像処理カード131に記憶された解像度向上用の25タップ分の係数種データがないと生成することができないため、画像処理カード131を有していないユーザが、画像処理カード132におけるデータ変換処理に用いられるノイズ除去用の64クラス分のタップ係数のセットを、不正に取得しようとすることを防止することができる。
なお、他の画像処理カード13iにも、その画像処理カード13iがデータ変換処理に用いるタップ係数を生成するための係数種データと、それより1つ順位の高いカードIDの画像処理カード13i-1がデータ変換処理に用いるタップ係数を生成するための係数種データとの差分データを記憶させるようにすることが可能である。
次に、図20は、画像処理カード13iの他の構成例を示している。なお、図中、図6における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図20の画像処理カード13iは、係数メモリ94に代えて、メモリ空間共有制御部100が設けられており、さらに、そのメモリ空間共有制御部100に、係数メモリ94が接続されている他は、基本的に、図6における場合と同様に構成されている。
メモリ空間共有制御部100は、画像処理カード13iが有する係数メモリ94のメモリ空間と、他の画像処理カード13i'が有する係数メモリ94のメモリ空間との共有を制御する。
即ち、メモリ空間共有制御部100は、画像処理カード13iが有する係数メモリ94だけでは、容量が十分でない場合、画像処理インタフェース40のカードインタフェース83(図5)を介して、他の画像処理カード13i'のメモリ空間共有制御部100と通信し、他の画像処理カード13i'における係数メモリ94の容量が余っている場合には、その余っているメモリ空間と、画像処理カード13iの係数メモリ94の実メモリ空間とを、画像処理カード13iの仮想的なメモリ空間(仮想メモリ空間)とする。
これにより、メモリ空間共有制御部100は、係数正規化部99が出力するタップ係数のセットを、仮想メモリ空間(画像処理カード13iにおける係数メモリ94の実メモリ空間、または他の画像処理カード13i'における係数メモリ94の実メモリ空間)に記憶させる。さらに、メモリ空間共有制御部100は、クラス分類部93からクラスコードを受信すると、そのクラスコードに対応するクラスのタップ係数のセットを、仮想メモリ空間から読み出し、予測部95に供給する。
従って、係数正規化部99およびクラス分類部93からは、メモリ空間共有制御部100は、図6の実施の形態における係数メモリ94と等価に見える。
なお、仮想メモリ空間として、どのような容量のメモリ空間が必要であるかは、その仮想メモリ空間に記憶させるタップ係数の容量による。そして、仮想メモリ空間に記憶させるタップ係数の容量は、1つのタップ係数のサイズが既知であるとすれば、あとは、予測タップのタップ数Nとクラス数Zから計算することができる。そこで、カードコントローラ98は、生成情報記憶部97の処理情報に記述されている予測タップのタップ数Nとクラス数Zを参照することにより、係数生成部96が生成するタップ係数の総容量を計算し、これを、必要なメモリ空間のサイズとして、メモリ空間共有制御部100に供給するようになっている。
メモリ空間共有制御部100は、上述したようにして、カードコントローラ98から供給される必要なメモリ空間のサイズの仮想メモリ空間を確保する。
また、メモリ空間共有制御部100は、画像処理カード13iが有する係数メモリ94の容量が余る場合には、他の画像処理カード13i'のメモリ空間共有制御部100からの要求に応じて、その余っているメモリ空間の使用を許可し、残りを、画像処理カード13iの仮想メモリ空間として確保して使用する。
複数の画像処理カード13の間で、上述したように、係数メモリ94を共有するのは、次のような理由による。
即ち、図6の実施の形態では、係数メモリ94の容量について、特に言及せず、従って、係数正規化部99から出力されるタップ係数を記憶するのに十分な記憶容量を有するものとした。
従って、例えば、図17の実施の形態で説明した場合には、画像処理カード131では、解像度向上/ノイズ除去用の9タップの係数種データのセットから、解像度向上/ノイズ除去用の64クラス分のタップ係数のセットが生成されるので、この64クラス分の、1クラスあたり9タップのタップ係数のセットを記憶するには、1つのタップ係数のサイズを、Sとすると、64×9×Sのサイズの容量が必要となる。
一方、例えば、図18の実施の形態で説明した場合には、画像処理カード131では、解像度向上用の25タップの係数種データのセットから、解像度向上用の64クラス分のタップ係数のセットが生成されるから、この64クラス分の、1クラスあたり25タップのタップ係数のセットを記憶するには、64×25×Sのサイズの容量が必要となる。
従って、図6の実施の形態では、画像処理カード131の係数メモリ94としては、64×25×Sのサイズの容量が必要となる。
しかしながら、係数メモリ94において、その64×25×Sのサイズの全体が使用されるのは、画像処理カード131と132が装着された場合であり、画像処理カード131だけが装着された場合には、64×9×Sのサイズしか使用されず、この場合、係数メモリ94の2/3(≒(25−9)/25)に近い容量が無駄になる。
そこで、図20の実施の形態では、係数メモリ94は、そのような無駄な容量が生じない、所定のタップ数Nの、所定のクラス数Zのタップ係数のセットを記憶することのできる分だけの記憶容量を有している。
即ち、再び、画像処理カード131と132を例に説明すれば、画像処理カード131には、生成情報として、例えば、図21に示すように、解像度向上/ノイズ除去用の係数種データのセットと、解像度向上用の係数種データのセットとが記憶されており、画像処理カード131だけが、画像処理インタフェース40に装着された場合には、図21に示すように、解像度向上/ノイズ除去用の係数種データのセットから、解像度向上/ノイズ除去用の64クラス分のタップ係数のセットが生成され、また、画像処理カード131と132が、画像処理インタフェース40に装着された場合には、図22に示すように、解像度向上用の48クラス分のタップ係数のセットが生成されるものとする。
一方、画像処理カード132には、生成情報として、例えば、図22に示すように、ノイズ除去用の係数種データのセットが記憶されており、画像処理カード131と132が、画像処理インタフェース40に装着された場合には、ノイズ除去用の係数種データのセットから、ノイズ除去用の80クラス分のタップ係数のセットが生成されるものとする。
なお、いまの場合、説明を簡単にするため、予測タップのタップ数、即ち、1クラスあたりのタップ係数のタップ数は、Nで一定であるとして、無視する。
そして、画像処理カード131および132の係数メモリ94は、いずれも、64クラス分のタップ係数のセット分の容量を有するものとする。
この場合、画像処理カード131だけが、画像処理インタフェース40に装着されたときには、画像処理カード131においては、図23に示すように、解像度向上/ノイズ除去用の係数種データのセットから生成される解像度向上/ノイズ除去用の64クラス分のタップ係数のセットを、その画像処理カード131の係数メモリ94に記憶させることができる。なお、この場合、画像処理カード131の係数メモリ94の容量と、生成された64クラス分のタップ係数のセットのサイズとは同一であり、従って、係数メモリ94の容量は余らない。
また、画像処理カード131と132が、画像処理インタフェース40に装着されたときにも、画像処理カード131においては、図24に示すように、解像度向上用の係数種データのセットから生成される解像度向上用の40クラス分のタップ係数のセットを、その画像処理カード131の係数メモリ94に記憶させることができる。なお、この場合、生成された48クラス分のタップ係数のセットのサイズは、画像処理カード131の係数メモリ94の容量より、16クラス分のタップ係数のセット分だけ小さく、従って、係数メモリ94の容量は、その分だけ余る。
しかしながら、画像処理カード131と132が、画像処理インタフェース40に装着された場合、画像処理カード132においては、図25に示すように、解像度向上用の係数種データのセットから、解像度向上用の80クラス分のタップ係数のセットが生成されるため、そのすべてを、その画像処理カード132の、64クラス分のタップ係数のセット分の容量しか有しない係数メモリ94に記憶させることはできない。即ち、この場合、画像処理カード132においては、生成される80クラス分のタップ係数のセットのサイズが、画像処理カード132の係数メモリ94の容量より、16クラス分のタップ係数のセット分だけ大きく、従って、そのすべてのタップ係数のセットを記憶させるには、画像処理カード132の係数メモリ94だけでは、16クラス分のタップ係数のセット分の容量だけ足りない。
そこで、図20の実施の形態では、画像処理カード132のメモリ空間共有制御部100は、図26に示すように、画像処理カード131のメモリ空間共有制御部100に対して、その係数メモリ94の実メモリ空間R1のうちの16クラス分のタップ係数のセット分の容量のメモリ空間R1'を要求する。
この場合、画像処理カード131のメモリ空間共有制御部100は、自身に必要なメモリ空間が、上述したように、48クラス分のタップ係数を記憶することのできるサイズであることを認識し、その結果、係数メモリ94の実メモリ空間R1のうちの16クラスのタップ係数のセット分の容量が余ることから、図26に示すように、自身の仮想メモリ空間r1として、48クラス分のタップ係数を記憶することのできる容量を確保する。さらに、画像処理カード131のメモリ空間共有制御部100は、画像処理カード132のメモリ空間共有制御部100に対して、16クラス分のタップ係数のセット分の容量のメモリ空間R1'の使用を許可する。
これにより、画像処理カード132のメモリ空間共有制御部100は、図26に示すように、その画像処理カード132の係数メモリ94の実メモリ空間R2と、使用を許可された、画像処理カード131の係数メモリ94の16クラス分のタップ係数のセット分の容量の実メモリ空間R1'とをあわせた80クラス分のタップ係数のセット分の容量の仮想メモリ空間r2を確保し、そこに、80クラス分のタップ係数のセットを記憶させる。
次に、図27のフローチャートを参照して、図20の画像処理カード13の処理について説明する。
図20の画像処理カード13では、ステップS51において、カードコントローラ98は、上述した図7のステップS5でインタフェースコントローラ81(図5)が送信してくる処理情報(最大ID処理情報)を受信したかどうかを判定する。
ステップS51において、最大ID処理情報を受信していないと判定された場合、ステップS52乃至S55をスキップして、ステップS56に進む。
また、ステップS51において、最大ID処理情報を受信したと判定された場合、ステップS52に進み、カードコントローラ98は、その最大ID処理情報を参照することにより、図8のステップS12における場合と同様に、自身が行うべきデータ変換処理の内容を認識し、その認識結果にしたがって、タップ抽出部91および92、クラス分類部93を制御する。
そして、ステップS53に進み、カードコントローラ98は、ステップS51で画像処理インタフェース40から受信されたと判定された処理情報(最大ID処理情報)を参照することで、係数生成部96が生成するタップ係数のセットのサイズを認識し、メモリ空間共有制御部100に供給する。即ち、最大ID処理情報には、生成情報としての係数種データから生成されるタップ係数のクラス数Zおよびタップ数Nの情報も記述されており、カードコントローラ98は、これらの情報に基づき、係数生成部96で生成されるタップ係数のサイズを認識し、メモリ空間共有制御部100に供給する。
さらに、ステップS53では、メモリ空間共有制御部100が、カードコントローラ98から受信したサイズの仮想メモリ空間を、上述したようにして確保し、ステップS54に進む。
ステップS54では、カードコントローラ98は、図8のステップS13における場合と同様にして、最大ID処理情報に基づき、係数生成部96を制御することにより、生成情報から、クラスごとのタップ係数を生成させる。このタップ係数は、係数正規化部99に供給される。
係数正規化部99は、ステップS55において、係数生成部96からのクラスごとのタップ係数を正規化処理し、その正規化後のクラスごとのタップ係数を、メモリ空間共有制御部100に供給する。ステップS55では、さらに、メモリ空間共有部131が、係数正規化部99からのクラスごとのタップ係数を、ステップS53で確保した仮想メモリ空間に記憶させ、ステップS56に進む。
ステップS56では、タップ抽出部91と92が、図8のステップS15における場合と同様に、注目画素について、予測タップとクラスタップをそれぞれ構成し、予測タップは、タップ抽出部91から予測部95に供給され、クラスタップは、タップ抽出部92からクラス分類部93に供給される。
そして、ステップS57に進み、クラス分類部93は、タップ抽出部92から供給される注目画素についてのクラスタップに基づき、注目画素をクラス分類し、そのクラスを表すクラスコードを、メモリ空間共有制御部100に供給して、ステップS58に進む。
ステップS58では、メモリ空間共有制御部133が、クラス分類部93から供給されるクラスコードに対応するアドレスに記憶されているタップ係数を、仮想メモリ空間から読み出すことにより取得する。このタップ係数は、メモリ空間共有制御部100から予測部95に供給され、ステップS59に進む。
ステップS59では、予測部95が、タップ抽出部91が出力する予測タップと、メモリ空間共有制御部100から供給されるタップ係数とを用いて、式(1)の予測演算を行う。これにより、予測部95は、注目画素の画素値を求め、カードインタフェース83(図5)に供給する。そして、ステップS51に戻り、以下、同様の処理が繰り返される。
以上のように、複数の画像処理カード13において、その係数メモリ94の実メモリ空間を共有し、タップ係数を記憶するのに必要最小限の仮想メモリ空間を確保することにより、係数メモリ94の記憶容量に無駄が生じることを防止することができる。
さらに、図21乃至図26で説明した例では、画像処理カード132は、画像処理カード131とともに、画像処理インタフェース40に装着されない限り、その係数生成部96で生成される80クラス分のタップ係数のセットを記憶させることができないから、画像処理カード132だけでは、データ変換処理を行うことができない。従って、画像処理カード131を有していないユーザが、画像処理カード132だけで、不正に、データ変換処理を行うことを防止することができる。
次に、いま、画質改善として、例えば、画像の空間解像度を向上させることに注目すると、画像処理カード131には、例えば、図28に示すように、超高画質画像データを教師データとするとともに、その空間解像度を低下させた高画質画像データの空間解像度をさらに低下させた低画質画像データを生徒データとして学習を行い、解像度を大きく向上させる超解像度向上用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、超解像度向上用の25タップ分の係数種データのセットを生成し、この25タップ分の係数種データのセットを、生成情報として記憶させておくことができる。
また、画像処理カード131には、図28の超解像度向上用の25タップ分の係数種データのセットに加えて、例えば、図29に示すように、高画質画像データを教師データとするとともに、その空間解像度を低下させた低画質画像データを生徒データとして学習を行い、解像度をある程度向上させる通常解像度向上用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、通常解像度向上用の25タップ分の係数種データのセットを生成し、この25タップ分の係数種データのセットを、生成情報として記憶させておくことができる。
そして、画像処理カード131では、画像処理カード131だけが、画像処理インタフェース40に装着された場合には、通常解像度向上用の25タップ分の係数種データから、通常解像度向上用の64クラス分のタップ係数を生成し、そのタップ係数を用いて、データ変換処理を行い、画像処理カード131と132が、画像処理インタフェース40に装着された場合には、超解像度向上用の25タップ分の係数種データから、超解像度向上用の64クラス分のタップ係数を生成し、そのタップ係数を用いて、データ変換処理を行うようにすることができる。
この場合、画像処理カード131では、画像処理カード131だけが装着されても、画像処理カード131と132が装着されても、解像度向上という同じ種類の画質改善を行うデータ変換処理が行われる。但し、画像処理カード131だけが装着された場合には、通常解像度向上用の64クラス分のタップ係数が用いられるのに対して、画像処理カード131と132が装着された場合には、通常解像度向上用の64クラス分のタップ係数とは異なる、超解像度向上用の64クラス分のタップ係数が用いられるため、データ変換処理の結果得られる画像データの空間解像度をより向上させることができる。
ところで、本実施の形態では、係数種データβm,nからのタップ係数wnの生成は、式(9)のタップ演算式によって行われる。
そこで、画質改善として、図28および図29における場合と同様に、画像の空間解像度を向上させることに注目すると、画像処理カード131には、例えば、図30に示すように、高画質画像データを教師データとするとともに、その空間解像度を低下させた低画質画像データを生徒データとして学習を行い、解像度を向上させる超解像度向上用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、超解像度向上用の25タップ分の係数種データのセットを生成し、この25タップ分の係数種データのセットを、生成情報として記憶させておくことができる。但し、この場合、タップ係数を係数種データに圧縮する際の式(9)のタップ演算式としては、項数がM'個のM'次の式が用いられるものとする。従って、この場合、1タップ分の係数種データのセットは、M'個の係数種データで構成される。
また、画像処理カード131には、図30の解像度向上用の25タップ分の係数種データのセットに加えて、例えば、図31に示すように、高画質画像データを教師データとするとともに、その空間解像度を低下させた低画質画像データを生徒データとして学習を行い、解像度を向上させる解像度向上用の64クラス分のタップ係数のセットを生成し、さらに、その64クラス分のタップ係数のセットを圧縮し、解像度向上用の25タップ分の係数種データのセットを生成し、この25タップ分の係数種データのセットを、生成情報として記憶させておくことができる。但し、この場合、タップ係数を係数種データに圧縮する際の式(9)のタップ演算式としては、項数が、図30におけるM'個より多いM''個のM''次の式が用いられるものとする。従って、この場合、1タップ分の係数種データのセットは、M'個より多いM''個の係数種データで構成される。
そして、画像処理カード131では、画像処理カード131だけが、画像処理インタフェース40に装着された場合には、1タップ分あたりM'個の、解像度向上用の25タップ分の係数種データから、解像度向上用の64クラス分のタップ係数を生成し、そのタップ係数を用いて、データ変換処理を行い、画像処理カード131と132が、画像処理インタフェース40に装着された場合には、1タップ分あたりM''個の解像度向上用の25タップ分の係数種データから、解像度向上用の64クラス分のタップ係数を生成し、そのタップ係数を用いて、データ変換処理を行うようにすることができる。
この場合、画像処理カード131では、画像処理カード131だけが装着されても、画像処理カード131と132が装着されても、解像度向上という同じ種類の画質改善を行うデータ変換処理が行われる。但し、画像処理カード131だけが装着された場合には、データ変換処理に用いられるタップ係数が、1タップ分あたりM'個の、解像度向上用の25タップ分の係数種データから、項数がM'個のタップ演算式(9)によって生成されるのに対して、画像処理カード131と132が装着された場合には、データ変換処理に用いられるタップ係数が、1タップ分あたりM''個の、解像度向上用の25タップ分の係数種データから、項数がM'より多いM''個のタップ演算式(9)によって生成されるため、タップ係数を、より精度良く復元することができる。従って、図28および図29における場合と同様に、画像処理カード131では、画像処理カード131と132が装着された場合の方が、画像処理カード131だけが装着された場合に比較して、データ変換処理の結果得られる画像データの空間解像度をより向上させることができる。
次に、図32は、図3の画像処理インタフェース40の第2の構成例を示している。なお、図中、図5における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。
図32の実施の形態では、画像処理インタフェース40は、そこに装着される、後述する図33の画像処理カード13から生成情報を読み出し、タップ係数を生成する。そして、画像処理インタフェース40は、そのタップ係数を用いて、フレームメモリ35(図3)に記憶された画像データを対象に、データ変換処理を行うようになっている。
即ち、タップ抽出部131および132には、メモリインタフェース82から、フレームメモリ35から読み出された、データ変換処理の対象としての第1の画像データが供給される。
タップ抽出部131は、図6のタップ抽出部91と同様に、第2の画像データを構成する画素を、順次、注目画素とし、さらに、その注目画素の画素値を予測するのに用いる第1の画像データを構成する画素(の画素値)の幾つかを、予測タップとして抽出する。
タップ抽出部132は、図6のタップ抽出部92と同様に、注目画素を、幾つかのクラスのうちのいずれかにクラス分けするクラス分類を行うのに用いる第1の画像データを構成する画素の幾つかを、クラスタップとして抽出する。
なお、タップ抽出部131および132に対しては、インタフェースコントローラ81から制御信号が供給されるようになっており、タップ抽出部131で構成される予測タップのタップ構造と、タップ抽出部132で構成されるクラスタップのタップ構造は、インタフェースコントローラ81からの制御信号にしたがって設定されるようになっている。即ち、インタフェースコントローラ81は、カードインタフェース83を介して、画像処理インタフェース40に装着された、後述する図33の画像処理カード13から処理情報を読み出し、その処理情報に基づき、タップ抽出部131および132におけるタップ構造を制御するようになっている。
タップ抽出部131で得られた予測タップは、予測部135に供給され、タップ抽出部132で得られたクラスタップは、インタフェースコントローラ81に供給される。
クラス分類部133は、インタフェースコントローラ81から供給される情報に基づき、注目画素をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数メモリ134に供給する。即ち、インタフェースコントローラ81は、タップ抽出部132から供給される注目画素についてのクラスタップを、カードインタフェース83を介して、画像処理インタフェース40に装着された、後述する図33の画像処理カード13に供給し、注目画素についてのクラス分類を要求する。そして、インタフェースコントローラ81は、その要求に応じて、画像処理カード13がクラス分類を行って返してくるクラスコードを、カードインタフェース83を介して受信し、クラス分類部133に供給する。クラス分類部133は、このようにして、インタフェースコントローラ81から供給される、画像処理インタフェース40に装着された画像処理カード13の1以上のクラス分類結果としてのクラスコードを合成し、最終的なクラス分類結果としてのクラスコードを得て、係数メモリ134に供給する。
なお、画像処理カード13におけるクラス分類方法は、例えば、インタフェースコントローラ81が、画像処理インタフェース40に装着された画像処理カード13から読み出した処理情報に基づいて指定する。
係数メモリ134は、係数生成部136から供給されるクラスごとのタップ係数を記憶し、さらに、その記憶したタップ係数のうちの、クラス分類部133から供給されるクラスコードに対応するアドレスに記憶されているタップ係数(クラス分類部133から供給されるクラスコードが表すクラスのタップ係数)を、予測部135に供給する。
予測部135は、図6の予測部95と同様に、タップ抽出部131が出力する予測タップと、係数メモリ134が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、注目画素の真値の予測値を求める式(1)の予測演算を行う。これにより、予測部135は、注目画素の画素値(の予測値)、即ち、第2の画像データを構成する画素の画素値を求めて出力する。
係数生成部136は、インタフェースコントローラ81が、カードインタフェース83を介して、画像処理インタフェース40に装着された画像処理カード13から読み出す生成情報を受信し、その生成情報からクラスごとのタップ係数を生成する。このクラスごとのタップ係数は、係数メモリ134に供給されて記憶される。
次に、図33は、画像処理インタフェース40が図32に示したように構成される場合の、画像処理カード13の構成例を示している。なお、図中、図6における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜、省略する。即ち、図33の画像処理カード13は、図6におけるクラス分類部93、生成情報記憶部97、およびカードコントローラ98で構成されている。
次に、図34のフローチャートを参照して、図32の画像処理インタフェース40の処理について説明する。
画像処理インタフェース40では、ステップS71乃至S74において、図7のステップS1乃至S4における場合とそれぞれ同様の処理が行われる。
そして、ステップS74において、インタフェースコントローラ81が、有効カードとしての画像処理カード13iを決定すると、ステップS75に進み、インタフェースコントローラ81は、有効カードとしての画像処理カード13iすべてから、カードインタフェース83を介して、生成情報を読み出す。即ち、インタフェースコントローラ81は、カードインタフェース83を介して、有効カードとしての画像処理カード13iのカードコントローラ98(図33)に、生成情報を要求する。この場合、カードコントローラ98は、生成情報記憶部97から生成情報を読み出し、カードインタフェース83を介して、インタフェースコントローラ81に供給する。これにより、インタフェースコントローラ81は、有効カードとしての画像処理カード13iのすべての生成情報を取得する。
従って、画像処理インタフェース40に、例えば、画像処理カード131乃至133が装着されている場合には、画像処理カード131乃至133すべてが有効カードとなるから、インタフェースコントローラ81は、画像処理カード131乃至133それぞれの生成情報を受信する。また、画像処理インタフェース40に、例えば、画像処理カード131,132、および134が装着されている場合には、画像処理カード131および132が有効カードとなるから、インタフェースコントローラ81は、画像処理カード131と132それぞれの生成情報を受信する。
その後、ステップS76に進み、インタフェースコントローラ81は、有効カードとしての各画像処理カード13iから読み出した処理情報の中で、最大のカードIDの画像処理カード13i(max)から読み出した処理情報(最大ID処理情報)に基づき、行うべきデータ変換処理の内容を認識し、その認識結果にしたがって、タップ抽出部131および132、クラス分類部133、並びに有効カードとしての画像処理カード13iを制御する。
即ち、インタフェースコントローラ81は、例えば、最大ID処理情報に記述されているタップ構造の予測タップまたはクラスタップを構成するように、タップ抽出部131または132の動作モードを設定する。
さらに、インタフェースコントローラ81は、最大ID処理情報に記述されている合成方法により、有効カードとしてのクラスコードを合成するように、クラス分類部133の動作モードを設定する。即ち、本実施の形態では、画像処理カード13iの処理情報には、クラスコードの合成方法(例えば、画像処理カード131で得られるクラスコードの下位ビットに、画像処理カード132で得られるクラスコードを付加して、最終的なクラスコードを生成するといった情報)も記述されており、インタフェースコントローラ81は、その情報にしたがってクラスコードを合成するように、クラス分類部133の動作モードを設定する。
また、インタフェースコントローラ81は、最大ID処理情報に記述されているクラス分類方法によるクラス分類を行うように、有効カードとしての各画像処理カード13iの動作モードを、カードインタフェース83を介して設定する。即ち、本実施の形態では、画像処理カード13iの処理情報には、画像処理カード131乃至13iそれぞれのクラス分類部93に行わせるクラス分類のクラス分類方法が記述されており、インタフェースコントローラ81は、そのクラス分類方法によるクラス分類を行うように、有効カードとしての各画像処理カード13iのクラス分類部93(図33)の動作モードを設定する。
そして、ステップS77に進み、インタフェースコントローラ81は、有効カードとしての画像処理カード13iから読み出した生成情報を、係数生成部136に供給し、これにより、その生成情報から、クラスごとのタップ係数を生成させる。
係数生成部136は、クラスごとのタップ係数を生成すると、ステップS77からS78に進み、そのクラスごとのタップ係数について、レベル調整のための正規化処理を施し、係数メモリ134に供給して記憶させる。
そして、ステップS79に進み、タップ抽出部131が、メモリインタフェース82から供給される、フレームメモリ35(図3)に記憶された画像データを、データ変換処理対象の第1の画像データとして、その第1の画像データに対する第2の画像データ(データ変換処理後の画像データ)を構成する各画素を、順次、注目画素とし、その注目画素について、ステップS76で設定されたタップ構造の予測タップとする第1の画像データの画素を抽出する。さらに、ステップS79では、タップ抽出部132が、注目画素について、ステップS76で設定されたタップ構造のクラスタップとする第1の画像データの画素を抽出する。そして、予測タップは、タップ抽出部131から予測部135に供給され、クラスタップは、タップ抽出部132からインタフェースコントローラ81に供給される。
インタフェースコントローラ81は、タップ抽出部132から供給されるクラスタップを受信すると、ステップS80において、カードインタフェース83を制御することにより、有効カードとなっている各画像処理カード13iに対して、タップ抽出部132からのクラスタップを供給し、クラス分類を要求する。
ここで、有効カードとなっている各画像処理カード13iは、後述する図35で説明するように、インタフェースコントローラ81からの要求に対応して、同じくインタフェースコントローラ81からのクラスタップに基づき、注目画素をクラス分類し、そのクラス分類結果としてのクラスコードを、カードインタフェース83を介して、インタフェースコントローラ81に供給する。
その後、ステップS81に進み、インタフェースコントローラ81は、有効カードとなっているすべての画像処理カード13iから、クラス分類結果としてのクラスコードを受信したかどうかを判定する。
ステップS81において、有効カードとなっているすべての画像処理カード13iから、クラス分類結果としてのクラスコードを、まだ受信していないと判定された場合、ステップS81に戻る。
また、ステップS81において、有効カードとなっているすべての画像処理カード13iから、クラス分類結果としてのクラスコードを受信したと判定された場合、そのすべてのクラスコードを、クラス分類部133に供給して、ステップS82に進む。
ステップS82では、クラス分類部133は、インタフェースコントローラ81から供給される、有効カードとなっている各画像処理カード13iからのクラスコードを合成し、これにより、注目画素の最終的なクラス分類結果としてのクラスコードを得て、係数メモリ134に供給し、ステップS83に進む。
ステップS83では、係数メモリ134が、クラス分類部133から供給されるクラスコードに対応するアドレスに記憶されているタップ係数、即ち、クラスコードに対応するクラスのタップ係数を読み出して出力する。さらに、ステップS83では、予測部135が、係数メモリ134が出力するタップ係数を取得し、ステップS84に進む。
ステップS84では、予測部135が、タップ抽出部131が出力する予測タップと、係数メモリ134から取得したタップ係数とを用いて、式(1)の予測演算を行う。これにより、予測部135は、注目画素の画素値を求め、線順次変換部85に供給する。そして、ステップS71に戻り、以下、同様の処理が繰り返される。
次に、図35のフローチャートを参照して、有効カードとなった画像処理カード13iの処理について説明する。
有効カードとなった画像処理カード13iでは、まず最初に、ステップS91において、カードコントローラ98が、画像処理インタフェース40(のインタフェースコントローラ81)から、クラスタップとともに、クラス分類の要求があったかどうかを判定し、ないと判定した場合、ステップS91に戻る。
また、ステップS91において、クラス分類の要求があったと判定された場合、ステップS92に進み、カードコントローラ98は、そのクラス分類の要求とともに、画像処理インタフェース40から供給されるクラスタップを受信し、クラス分類部93に、そのクラスタップに基づくクラス分類を要求する。これにより、クラス分類部93では、図34のステップS76で設定されたクラス分類方法により、クラスタップに基づく注目画素のクラス分類が行われ、その結果得られるクラスコードを、カードコントローラ98に供給する。
そして、ステップS93に進み、カードコントローラ98は、クラス分類部93からのクラスコードを、画像処理インタフェース40に送信する。そして、ステップS91に戻り、以下、同様の処理が繰り返される。
次に、有効カードとされた各画像処理カード13iのクラス分類部93(図33)におけるクラス分類と、そのクラス分類結果としてのクラスコードを合成する画像処理インタフェース40のクラス分類部133(図32)の処理について、さらに説明する。
なお、ここでは、タップ抽出部132が、注目画素について、例えば、3×3画素の合計9画素でなるクラスタップを構成するものとする。
例えば、いま、画像処理カード131乃至133が、画像処理インタフェース40に装着され、有効カードとされたとすると、画像処理カード13iのクラス分類部93(図33)は、例えば、クラスタップを1ビットADRC処理することによるクラス分類を行い、これにより、9ビットのクラスコードを出力する。
また、画像処理カード132のクラス分類部93(図33)は、例えば、クラスタップの中心の画素(中心画素)の動きベクトルを検出し、その動きベクトルの大きさを、所定の閾値と比較することにより、中心画素の動きの有無を判定し、その動きの有無を表す1ビットのクラスコードを出力する。なお、この場合、画像処理カード132のクラス分類部93は、例えば、1フレーム前にクラスタップとして供給された1フレーム前の画像データを記憶しており、その1フレーム前の画像データと、クラスタップとを用いたブロックマッチングを行うことにより、動きベクトルを検出する。そして、画像処理カード132のクラス分類部93は、例えば、動きベクトルの大きさが所定の閾値より大である場合には、動きありと判定し、そうでない場合には、動きなしと判定する。
さらに、画像処理カード133のクラス分類部93(図33)は、例えば、クラスタップの中心画素と、それに隣接する画素の差分を演算し、その差分の絶対値を所定の閾値と比較することにより、中心画素におけるエッジの有無を判定し、そのエッジの有無を表す1ビットのクラスコードを出力する。なお、この場合、画像処理カード133のクラス分類部93は、例えば、中心画素と、それに隣接する画素の差分の絶対値の中に、所定の閾値より大のものが存在する場合には、エッジありと判定し、そうでない場合は、エッジなしと判定する。
ここで、以下、適宜、画像処理カード13iのクラス分類部93で行われるクラス分類を、第iクラス分類という。また、第iクラス分類の結果得られるクラスコードを、第iクラスコードという。
この場合、画像処理インタフェース40のクラス分類部133(図32)は、例えば、画像処理カード131のクラス分類部93の第1クラス分類により得られる第1クラスコードの下位ビットとして、画像処理カード132のクラス分類部93の第2クラス分類により得られる第2クラスコードを付加し、さらに、その下位ビットとして、画像処理カード133のクラス分類部93の第3クラス分類により得られる第3クラスコードを付加する。
即ち、例えば、画像処理インタフェース40に、画像処理カード131しか装着されていない場合には、画像処理インタフェース40のクラス分類部133(図32)は、画像処理カード131のクラス分類部93の第1クラス分類により得られる9ビットの第1クラスコードを、そのまま最終的なクラスコード(以下、適宜、最終クラスコードという)として出力する。
また、例えば、画像処理インタフェース40に、画像処理カード131と132が装着されている場合には、画像処理インタフェース40のクラス分類部133(図32)は、画像処理カード131のクラス分類部93の第1クラス分類により得られる9ビットの第1クラスコードの下位ビットに、画像処理カード132のクラス分類部93の第2クラス分類により得られる1ビットの第2クラスコードを付加し、その結果得られる10ビットを、最終クラスコードとして出力する。
さらに、例えば、画像処理インタフェース40に、画像処理カード131乃至133が装着されている場合には、画像処理インタフェース40のクラス分類部133(図32)は、画像処理カード131のクラス分類部93の第1クラス分類により得られる9ビットの第1クラスコードの下位ビットに、画像処理カード132のクラス分類部93の第2クラス分類により得られる1ビットの第2クラスコードを付加し、さらに、画像処理カード133のクラス分類部93の第3クラス分類により得られる1ビットの第3クラスコードを付加し、その結果得られる11ビットを、最終クラスコードとして出力する。
上述のように、画像処理カード131乃至13iの装着時に、クラス分類部133が出力する最終クラスコードが、画像処理カード131乃至13i-1の装着時に、クラス分類部133が出力する最終クラスコードよりも1ビット増加する場合には、図36に示すように、画像処理インタフェース40に装着される、有効カードとしての画像処理カード13iの数によって、クラス数が変動する。
即ち、画像処理インタフェース40に、画像処理カード131しか装着されていない場合には、最終クラスコードは9ビットとなり、そのクラス数は、512(=29)クラスとなる(図36の最左欄)。また、画像処理インタフェース40に、画像処理カード131と132が装着されている場合には、最終クラスコードは、10ビットとなり、そのクラス数は、1024(=210)クラスとなる(図36の左から2番目の欄)。さらに、画像処理インタフェース40に、画像処理カード131乃至133が装着されている場合には、最終クラスコードは11ビットとなり、そのクラス数は、2048(=211)クラスとなる(図36の最右欄)。
このため、画像処理カード131には、例えば、図11の学習装置において、クラス分類部117のクラス分類方法として、第1クラス分類により得られる第1クラスコードを出力するクラス分類を採用して学習を行い、512クラス分の第1クラス分類によるタップ係数のセットを生成し、さらに、その512クラス分のタップ係数のセットを圧縮して生成した第1クラス分類による係数種データのセットが、生成情報として記憶されている。
さらに、画像処理カード132には、例えば、図11の学習装置において、クラス分類部117のクラス分類方法として、第1クラス分類により得られる第1クラスコードの下位ビットに第2クラス分類により得られる第2クラスコードを付加したクラスコードを出力するクラス分類を採用して学習を行い、1024クラス分の第1クラス分類と第2クラス分類によるタップ係数のセットを生成し、さらに、その1024クラス分のタップ係数のセットを圧縮して生成した第1クラス分類と第2クラス分類による係数種データのセットが、生成情報として記憶されている。
この場合、画像処理インタフェース40に、画像処理カード131のみが装着されたときには、画像処理インタフェース40では、図37に示すように、有効カードのうちの最高順位の画像処理カード131に記憶された生成情報としての第1クラス分類による係数種データのセットが読み出され、係数生成部136において、その係数種データのセットから、512クラス分の第1クラス分類によるタップ係数のセットが生成される。さらに、画像処理カード131のクラス分類部93では、第1クラス分類が行われることにより、9ビットの第1クラスコードが出力され、画像処理インタフェース40では、クラス分類部133において、その第1クラスコードが、そのまま最終クラスコードとして出力される。そして、画像処理カード131では、512クラス分の第1クラス分類によるタップ係数のセットのうちの、9ビットの第1クラスコードに対応するタップ係数のセットが、データ変換処理(予測部135(図32)による式(1)の演算)に用いられる。
また、画像処理インタフェース40に、画像処理カード131と132が装着されたときには、画像処理インタフェース40では、図38に示すように、有効カードのうちの最低順位の画像処理カード132に記憶された生成情報としての第1クラス分類と第2クラス分類による係数種データのセットが読み出され、係数生成部136において、その係数種データのセットから、1024クラス分の第1クラス分類と第2クラス分類によるタップ係数のセットが生成される。さらに、画像処理カード131のクラス分類部93では、第1クラス分類が行われることにより、9ビットの第1クラスコードが出力され、画像処理カード132のクラス分類部93では、第2クラス分類が行われることにより、1ビットの第2クラスコードが出力される。そして、画像処理インタフェース40では、クラス分類部133において、第1クラスコードの下位ビットに第2クラスコードが付加されることにより、10ビットの最終クラスコードが生成されて出力される。さらに、画像処理インタフェース40では、1024クラス分の第1クラス分類と第2クラス分類によるタップ係数のセットのうちの、10ビットの最終クラスコードに対応するタップ係数のセットが、データ変換処理に用いられる。
従って、この場合、画像処理カード40に装着され、有効カードとされる画像処理カード13iの数が増えるほど、クラス数の多いタップ係数を用いて、データ変換処理が行われるので、画質改善の程度も向上することになる。
即ち、例えば、第1クラス分類と第2クラス分類によるタップ係数のセットの学習と、第1クラス分類によるタップ係数のセットの学習を、同一の学習対を用いて行ったとしても、第1クラス分類と第2クラス分類によるタップ係数のセットは、第1クラス分類によるタップ係数のセットよりもクラス数が多いため、第1クラス分類と第2クラス分類によるタップ係数のセットを用いてデータ変換処理を行う場合には、第1クラス分類によるタップ係数のセットを用いてデータ変換処理を行う場合よりも、画質改善の程度が向上することになる。
なお、画像処理カード131と132には、同種の画質改善を行う係数種データを記憶させておく他、異なる種類の画質改善を行う係数種データを記憶させておくことも可能である。即ち、例えば、画像処理カード131には、ノイズ除去を行う係数種データを記憶させておき、画像処理カード132には、空間解像度を向上させる係数種データを記憶させておくことが可能である。さらに、この場合、図32の画像処理インタフェース40においては、フレームメモリ35(図3)に記憶された画像データを対象に、画像処理カード131に記憶された係数種データが生成されるタップ係数を用いてデータ変換処理を行い、その結果得られる画像データを対象に、画像処理データ132に記憶された係数種データから生成されるタップ係数を用いてデータ変換処理を行うようにすることが可能である。
また、下位の画像処理カード132には、上位の画像処理カード131に記憶された係数種データによる画質改善に加えて、他の種類の画質改善を行う係数種データを記憶させておくことも可能である。即ち、例えば、画像処理カード131には、ノイズ除去を行う係数種データを記憶させておき、画像処理カード132には、ノイズを除去し、かつ空間解像度を向上させる係数種データを記憶させておくことが可能である。なお、本実施の形態では、画像処理カード132の係数種データから生成されるタップ係数のクラス数は、画像処理カード131の係数種データから生成されるタップ係数のクラス数の2倍になることから、画像処理カード132の係数種データから生成されるタップ係数によるノイズ除去の程度は、画像処理カード131の係数種データから生成されるタップ係数によるノイズ除去の程度と同程度になると考えられる。従って、画像処理カード131と132が装着された場合には、画像処理カード131だけが装着された場合と同程度のノイズ除去が行われ、さらに解像度が向上することになる。
画像処理カード131と132以外の画像処理カード13iについても、同様のタップ係数を記憶させることが可能であり、この場合、最上位の画像処理カード131から、順次、下位の画像処理カード13iを装着していくことで、改善される画質の種類が増加していくことになるので、即ち、テレビジョン受像機の本体1の機能が、追加的に高機能化していくので、ユーザが画像処理カード13を購入しようとするインセンティブが働きやすくなることになる。
なお、上述した場合においても、最上位の画像処理カード131以外の画像処理カード13iには、図19で説明したように、係数種データそのものではなく、差分データを記憶させておくようにすることが可能である。
次に、上述の場合には、図33の画像処理カード13iに、係数種データ、または、1つ上位の画像処理カード13i-1で用いられる係数種データとの差分データを、生成情報として記憶させるようにしたが、最上位の画像処理カード131を除く画像処理カード13iには、1つ上位の画像処理カード13i-1で用いられるタップ係数から、それとは異なる新たなタップ係数を生成するための情報(差分データ以外の情報)を、生成情報として記憶させるようにすることが可能である。
この場合、画像処理インタフェース40に、画像処理カード131と132が装着された場合には、図39に示すように、画像処理インタフェース40の係数生成部136(図32)において、画像処理カード131に記憶された第1クラス分類による係数種データのセットから、第1クラス分類によるタップ係数のセットが生成される。さらに、画像処理インタフェース40の係数生成部136では、その第1クラス分類によるタップ係数のセットと、画像処理カード132に記憶された生成情報とから、第1クラス分類と第2クラス分類によるタップ係数のセットが生成される。
そこで、第1クラス分類と第2クラス分類によるタップ係数のセットを、第1クラス分類によるタップ係数のセットとともに生成する生成情報の例について説明する。
なお、以下、適宜、第1クラス分類による第1クラスコードを、そのまま最終クラスコードとした場合の、その最終クラスコードを、第1の合成クラスコードといい、第1クラスコードの下位ビットに、第2クラス分類による第2クラスコードを付加して最終クラスコードとした場合の、その最終クラスコードを、第2の合成クラスコードという。また、以下、適宜、第1クラスコードの下位ビットに、第2クラスコードを付加し、さらに、第3クラスコードを付加して最終クラスコードとした場合の、その最終クラスコードを、第3の合成クラスコードという。
この場合、第2の合成クラスコードは、第1の合成クラスコードの下位ビットに、1ビットの第2クラスコードを付加したものであり、第3の合成クラスコードは、第2の合成クラスコードに、1ビットの第3クラスコードを付加したものとなる。
従って、ある第1の合成クラスコード#cは、その第1の合成クラスコード#cの下位ビットに、1ビットの0を付加した第2の合成クラスコード#c0と、1ビットの1を付加した第2の合成クラスコード#c1の2つに対応付けることができる。同様に、ある第2の合成クラスコード#c'は、その第2の合成クラスコード#c'の下位ビットに、1ビットの0を付加した第3の合成クラスコード#c'0と、1ビットの1を付加した第3の合成クラスコード#c'1の2つに対応付けることができる。
そして、1つのクラスコードについては、1セットのタップ係数が存在するから、上述のように、第1の合成クラスコード#cと、2つの第2の合成クラスコード#c0および#c1とを対応付けた場合には、図40に示すように、第1クラス分類による第1の合成クラスコード#cのタップ係数のセットと、第1と第2のクラス分類による第2の合成クラスコード#c0,#c1それぞれのタップ係数のセットとを対応付けることができる。
この場合、生成情報としては、第1と第2のクラス分類による第2の合成クラスコード#c0,#c1それぞれのタップ係数のセットを、第1クラス分類による第1の合成クラスコード#cのタップ係数のセットととともに生成することができるものを採用することができる。
そこで、図41のフローチャートを参照して、第1と第2のクラス分類による第2の合成クラスコード#c0のタップ係数のセットを生成する場合を例に、生成情報の生成の仕方について説明する。
この場合、まず最初に、ステップS101において、第1の合成クラスコード#cのタップ係数のセットのうちの中央タップ係数と、その第1の合成クラスコード#cに対応付けられた第2の合成クラスコード#c0のタップ係数のセットのうちの中央タップ係数とが比較される。
ここで、あるクラスのタップ係数のセットの中央タップ係数とは、そのクラスのタップ係数を、タップ番号順に並べた場合に、中央に位置するタップ係数を意味する。従って、例えば、図40に示すように、第1の合成クラスコード#cのタップ係数をタップ番号順に並べたものが、(0.2,-0.1,0.8,-0.1,0.2)である場合には、その中央タップ係数は、0.8になる。また、第2の合成クラスコード#c0のタップ係数をタップ番号順に並べたものが、(0.3,-0.4,1.2,-0.4,0.3)である場合には、その中央タップ係数は、1.2となる。
ステップS101で、中央タップ係数どうしが比較された後は、ステップS102に進み、第2の合成クラスコード#c0の中央タップ係数が、第1の合成クラスコード#cの中央タップ係数より大(以上)であるかどうかが判定される。
ステップS102において、第2の合成クラスコード#c0の中央タップ係数が、第1の合成クラスコード#cの中央タップ係数より大であると判定された場合、ステップS103に進み、第2の合成クラスコード#c0のタップ係数のセットのうちの正のタップ係数それぞれについて、第1の合成クラスコード#cの対応するタップ係数に対する変化率(比)が求められる。さらに、ステップS103では、その変化率の平均値が求められ、平均変化率vとされる。
従って、図40に示した場合には、第2の合成クラスコード#c0の中央タップ係数が1.2であり、第1の合成クラスコード#cの中央タップ係数である0.8よりも大であるから、ステップS103において、第2の合成クラスコード#c0のタップ係数の正のタップ係数、即ち、1番目のタップ係数である0.3、3番目のタップ係数(中央タップ係数)である1.2、5番目のタップ係数である0.3それぞれについて、第1の合成クラスコード#cの対応するタップ係数に対する変化率(比)が求められる。
いまの場合、第1の合成クラスコード#cの1番目、3番目、5番目のタップ係数は、それぞれ、0.2,0.8,0.2であるから、1番目のタップ係数については、0.3/0.2が、3番目のタップ係数については、1.2/0.8が、3番目のタップ係数については、0.3/0.2が、それぞれ変化率として求められる。
また、これらの変化率の平均値は、1.5であり、従って、この1.5が平均変化率vとして求められる。
ステップS103の処理後は、ステップS104に進み、平均変化率vに、+の符号が付加されることにより、+vとされ、この+vが、第1の合成クラスコード#cのタップ係数のセットから、それに対応付けられた第2の合成クラスコード#c0のタップ係数のセットを生成する生成情報(第2の合成クラスコード#c0についての生成情報)とされ、処理を終了する。
従って、上述の例では、+1.5が、第1の合成クラスコード#cのタップ係数のセットから、第2の合成クラスコード#c0のタップ係数のセットを生成する生成情報とされる。
一方、ステップS102において、第2の合成クラスコード#c0の中央タップ係数が、第1の合成クラスコード#cの中央タップ係数より大でないと判定された場合、ステップS105に進み、第2の合成クラスコード#c0のタップ係数のセットのうちの負のタップ係数それぞれについて、第1の合成クラスコード#cの対応するタップ係数に対する変化率(比)が求められる。さらに、ステップS105では、その変化率の平均値が求められ、平均変化率vとされる。
ステップS105の処理後は、ステップS106に進み、平均変化率vに、−の符号が付加されることにより、−vとされ、この−vが、第1の合成クラスコード#cのタップ係数のセットから、それに対応付けられた第2の合成クラスコード#c0のタップ係数のセットを生成する生成情報とされ、処理を終了する。
なお、例えば、図40に示した第1と第2のクラス分類による第2の合成クラスコード#c1のタップ係数のセットを生成するための生成情報を生成する場合においては、第2の合成クラスコード#c1のタップ係数のセットは、(0.17,-0.02,0.7,-0.02,0.17)であるから、その中央タップ係数が0.7であり、第1の合成クラスコード#cの中央タップ係数である0.8以下の値である。
従って、この場合、第2の合成クラスコード#c1のタップ係数の負のタップ係数、即ち、2番目のタップ係数である-0.02、4番目のタップ係数である-0.02それぞれについて、第1の合成クラスコード#cの対応するタップ係数に対する変化率(比)が求められる(ステップS105)。
いまの場合、第1の合成クラスコード#cの2番目、4番目のタップ係数は、それぞれ、-0.1,-0.1であるから、2番目のタップ係数については、0.02/0.1が、4番目のタップ係数については、0.02/0.1が、それぞれ変化率として求められる。
また、これらの変化率の平均値は、0.2であり、従って、この0.2が平均変化率vとして求められる(ステップS105)。
そして、この場合は、平均変化率vである0.2に、−の符号が付加された-0.2が、第1の合成クラスコード#cのタップ係数のセットから、第2の合成クラスコード#c1のタップ係数のセットを生成する生成情報(第2の合成クラスコード#c1についての生成情報)とされる(ステップS106)。
次に、図42のフローチャートを参照して、第1のクラス分類による第1の合成クラスコード#cのタップ係数のセットと、図41の処理によって生成される生成情報から、第1と第2のクラス分類による第2の合成クラスコード#c0のタップ係数のセットを新たに生成する場合を例に、図32の係数生成部136の処理について説明する。
係数生成部136は、ステップS111において、第2の合成クラスコード#c0についての生成情報の符号を判定し、+であると判定した場合は、ステップS112に進み、−であると判定した場合は、ステップS114に進む。
ステップS112では、係数生成部136は、第2の合成クラスコード#c0に対応付けられた第1の合成クラスコード#cのタップ係数のセットのうち、正のタップ係数に、生成情報における平均変化率vを乗算し、その乗算結果のタップ係数のセットを、第2の合成クラスコード#c0のタップ係数のセットとして、ステップS113に進む。
ステップS113では、係数生成部136は、ステップS112で求めた第2の合成クラスコード#c0のタップ係数のセットについて、ゲイン調整のための正規化処理を施し、処理を終了する。即ち、ステップS113では、係数生成部136は、ステップS112で求めた第2の合成クラスコード#c0のタップ係数のセットのうちの負のタップ係数を、全体の総和が1になるように調整する。
一方、ステップS114では、係数生成部136は、第2の合成クラスコード#c0に対応付けられた第1の合成クラスコード#cのタップ係数のセットのうち、負のタップ係数に、生成情報における平均変化率vを乗算し、その乗算結果のタップ係数のセットを、第2の合成クラスコード#c0のタップ係数のセットとして、ステップS115に進む。
ステップS115では、係数生成部136は、ステップS114で求めた第2の合成クラスコード#c0のタップ係数のセットについて、ゲイン調整のための正規化処理を施し、処理を終了する。即ち、ステップS115では、係数生成部136は、ステップS114で求めた第2の合成クラスコード#c0のタップ係数のセットのうちの正のタップ係数を、全体の総和が1になるように調整する。
図42の処理によれば、例えば、第1の合成クラスコード#cのタップ係数のセットが、図40に示したように、(0.2,-0.1,0.8,-0.1,0.2)であり、第2の合成クラスコード#c0についての生成情報が、図41で説明したように、+1.5である場合には、生成情報の符号が+であるから、第1の合成クラスコード#cのタップ係数のセット(0.2,-0.1,0.8,-0.1,0.2)のうちの正のタップ係数に、1.5が乗算され、その乗算結果(0.3,-0.1,1.2,-0.1,0.3)が、第2の合成クラスコード#c0のタップ係数のセットとされる(ステップS112)。さらに、その第2の合成クラスコード#c0のタップ係数のセット(0.3,-0.1,1.2,-0.1,0.3)のうちの負のタップ係数を調整することにより、全体の総和が1となるように調整される。即ち、いまの場合、(0.3,-0.1,1.2,-0.1,0.3)の総和は、1.6であるため、負のタップ係数である2番目と4番目のタップ係数が、例えば、-0.1から-0.4に、同一の量だけ調整されることにより、第2の合成クラスコード#c0のタップ係数のセットが、その総和が1となる(0.3,-0.4,1.2,-0.4,0.3)とされる。
この第2の合成クラスコード#c0のタップ係数のセット(0.3,-0.4,1.2,-0.4,0.3)は、図40に示した元のタップ係数のセットと一致しており、従って、第1の合成クラスコード#cのタップ係数のセット(0.2,-0.1,0.8,-0.1,0.2)と、生成情報である+1.5から、その第1の合成クラスコード#cに対応付けられている第2の合成クラスコード#c0のタップ係数のセット(0.3,-0.4,1.2,-0.4,0.3)を生成することができる。同様にして、第2の合成クラスコード#c1のタップ係数のセットも、それに対応付けられている第1の合成クラスコード#cのタップ係数のセットと、図41で説明したようにして生成される生成情報である−0.2から生成することができる。
ここで、画像処理カード133乃至136それぞれについても、上述の場合と同様に、その1つ上位の画像処理カード13iの生成情報から生成されるタップ係数とともに、新たなタップ係数を生成する生成情報を生成して記憶させることができる。
なお、図41の実施の形態では、+または−の符号に、平均変化率をそのまま付加したものを、第2の合成クラスコード#c0についての生成情報とするようにしたが、その他、例えば、平均変化率を、第2の合成クラスコード#c0や、それに対応付けられている第1の合成クラスコード#c、あるいは、第2の合成クラスコード#c0を生成するのに用いられる第1クラスコードや第2クラスコードなどに基づいて補正し、その補正後の平均変化率に、+または−の符号を付加したものを、第2の合成クラスコード#c0についての生成情報とすることが可能である。
また、図41の実施の形態では、第2の合成クラスコード#c0の中央タップ係数が、第1の合成クラスコード#cの中央タップ係数より大きい場合は、第2の合成クラスコード#c0の正のタップ係数について、平均変化率vを求め、大きくない場合には、第2の合成クラスコード#c0の負のタップ係数について、平均変化率vを求め、その平均変化率vに、+または−の符号を付加して、生成情報(以下、適宜、第1の生成情報という)を生成するようにしたが、逆に、第2の合成クラスコード#c0の中央タップ係数が、第1の合成クラスコード#cの中央タップ係数より大きくない場合は、第2の合成クラスコード#c0の正のタップ係数について、平均変化率vを求め、大きい場合には、第2の合成クラスコード#c0の負のタップ係数について、平均変化率vを求め、その平均変化率vに、+または−の符号を付加して、生成情報(以下、適宜、第2の生成情報という)を生成するようにすることなどが可能である。
即ち、第2の合成クラスコード#c0についての生成情報を用いて、図42の処理により、第2の合成クラスコード#c0のタップ係数のセットを求めた場合、元の値からずれることがある。そこで、第1と第2の生成情報のうち、それぞれから求められる第2の合成クラスコード#c0のタップ係数のセットの、元の値に対するずれ量(誤差)が小さくなる方を、第2の合成クラスコード#c0についての最終的な生成情報として採用することが可能である。なお、第1と第2の生成情報のうちのいずれを最終的な生成情報として採用するかは、第2の合成クラスコードや、それに対応付けられている第1の合成クラスコード、あるいは、第2の合成クラスコードを生成するのに用いられる第1クラスコードや第2クラスコードなどごとに設定することが可能である。
また、第1の合成クラスコード#cのタップ係数のセットから、それに対応付けられている第2の合成クラスコード#c0のタップ係数のセットを生成するための生成情報としては、図41の処理によって生成されるものの他、例えば、図9の学習装置において、第1の合成クラスコード#cのタップ係数のセットを生徒データとするとともに、第2の合成クラスコード#c0のタップ係数のセットを生徒データとして、学習を行い、その結果得られるタップ係数のセットを採用することなどが可能である。
次に、図43は、図3の画像処理インタフェース40の第3の構成例を示している。なお、図中、図32における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図43の画像処理インタフェース40は、係数メモリ134に代えて、メモリ空間共有制御部141が設けられている他は、図32における場合と同様に構成されている。
メモリ空間共有制御部141は、画像処理インタフェース40に装着された、後述する図44の画像処理カード13の係数メモリ94を対象として、図20のメモリ空間共有制御部100と同様に、係数生成部136が生成するタップ係数のセットを記憶させる仮想メモリ空間を確保し、その仮想メモリ空間に、タップ係数のセットを記憶させ、また、クラス分類部133が出力するクラスコードのタップ係数のセットを、仮想メモリ空間から読み出して、予測部135に供給する。
即ち、図44は、画像処理インタフェース40が図43に示したように構成される場合の画像処理カード13の構成例を示している。なお、図中、図33における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図44の画像処理カード13は、図33の画像処理カード13に対して、図20に示した係数メモリ94を設けて構成されている。
図36で説明したように、画像処理インタフェース40に装着される、有効カードとしての画像処理カード131乃至13iが増加すると、画像処理インタフェース40の係数生成部136で生成されるタップ係数のクラス数は増加し、従って、そのタップ係数のセット全体のサイズも増大する。
図44の実施の形態では、画像処理カード131乃至13iが装着された場合に、その画像処理カード131乃至13iそれぞれの係数メモリ94の容量の総和が、画像処理インタフェース40の係数生成部136で生成されるタップ係数のセット全体のサイズと一致するように、画像処理カード13iの係数メモリ94の容量が設計されており、従って、画像処理カード131乃至13iの記憶内容を不正に読み出して、タップ係数のセットを生成しても、画像処理カード131乃至13iが画像処理インタフェース40に装着されていない限り、そのタップ係数のセットを記憶することができないようになっている。この場合、ユーザが、画像処理カード131乃至13iの記憶内容を不正に読み出し、タップ係数のセットを生成して使用することを防止することができる。
ここで、図43のメモリ空間共有制御部141は、クラス分類部133、係数生成部136、および予測部135から、メモリ空間共有制御部141を見た場合に、画像処理インタフェース40に装着された有効カードとしての画像処理カード131乃至13iそれぞれのi個の係数メモリ94の実メモリ空間が、全体として、1つの連続したメモリ空間として見えるように、仮想メモリ空間を確保する。
また、上述の場合には、画像処理インタフェース40に装着された画像処理カード131乃至13iの係数メモリ94の容量の総和が、生成されれるタップ係数のサイズと一致するように、係数メモリ94の容量を設計するようにしたが、係数メモリ94の容量は、画像処理カード131乃至13iが装着されたときに生成されるタップ係数のサイズが、i−1個の係数メモリ94の容量より大で、i個の係数メモリ94の容量以下となるような値とすることが可能である。
なお、図33および図44の実施の形態では、各画像処理カード13iに、クラス分類部93を設けるようにしたが、この各画像処理カード13iに設けたクラス分類部93は、各画像処理カード13iではなく、図32または図43の画像処理インタフェース40に設けるようにすることが可能である。
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
そこで、図45は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク305やROM303に予め記録しておくことができる。
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体311に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体311は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体311からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部308で受信し、内蔵するハードディスク305にインストールすることができる。
コンピュータは、CPU(Central Processing Unit)302を内蔵している。CPU302には、バス301を介して、入出力インタフェース310が接続されており、CPU302は、入出力インタフェース310を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部307が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)303に格納されているプログラムを実行する。あるいは、また、CPU302は、ハードディスク305に格納されているプログラム、衛星若しくはネットワークから転送され、通信部308で受信されてハードディスク305にインストールされたプログラム、またはドライブ309に装着されたリムーバブル記録媒体311から読み出されてハードディスク305にインストールされたプログラムを、RAM(Random Access Memory)304にロードして実行する。これにより、CPU302は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU302は、その処理結果を、必要に応じて、例えば、入出力インタフェース310を介して、LCD(Liquid CryStal Display)やスピーカ等で構成される出力部306から出力、あるいは、通信部308から送信、さらには、ハードディスク305に記録等させる。
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
なお、本実施の形態では、本発明を、画像データの画質改善に適用した場合について説明したが、本発明は、音声(音響)データの音質改善に適用することも可能である。
さらに、本実施の形態では、本発明を、アナログのテレビジョン受像機に適用した場合について説明したが、本発明は、その他、例えば、ディジタルのテレビジョン受像機、その他の画像データや音声データを処理するVTR(Video Tape Recoder)その他の装置に適用可能である。
また、本実施の形態では、特に、ノイズ除去や、空間解像度を向上させるタップ係数を生成する生成情報を、画像処理カード13に記憶させておくようにしたが、画像処理カード13に記憶させる生成情報は、これらに限定されるものではない。即ち、画像処理カード13には、例えば、時間解像度を向上させるタップ係数や、画素の階調(画素値のビット数)を向上させるタップ係数、エッジを強調するタップ係数、画像を構成する画素数や画像のサイズを変換するタップ係数、その他の画質改善効果のあるタップ係数を生成する生成情報を記憶させることが可能である。
さらに、画像処理カード131乃至136それぞれに記憶させる生成情報は、同種の画質改善であって、程度の異なるものを実現するタップ係数を生成するものであっても良いし、異なる画質改善を実現するタップ係数を生成するものであっても良い。
また、本実施の形態では、画像処理カード13に、あらかじめ生成情報を記憶させておくようにしたが、各順位の画像処理カード13iは、生成情報を記憶させずに、販売することが可能である。この場合、生成情報は、生成情報を提供する生成情報サーバからダウンロードして、画像処理カード13iに記憶させるようにすることが可能である。即ち、画像処理インタフェース40に、画像処理カード13iが装着された場合には、図3のコントローラ37において、通信インタフェース38を制御することにより、生成情報サーバにアクセスし、相互認証を行った後に、生成情報サーバから、生成情報をダウンロードするようにすることができる。この場合、生成情報のダウンロードに対する対価は、そのダウンロードに対応して、ユーザの銀行口座等から引き落としするようにしても良いし、あらかじめ、画像処理カード13iの販売価格に含めておいても良い。
なお、画像処理カード13は、より下位のものが装着されるほど、本体1の機能が高機能化することから、画像処理カード13iの販売価格、あるいは、生成情報のダウンロードに対する対価は、画像処理カード13iの順位が下がるほど、高価格にすることができる。
また、本実施の形態では、テレビジョン受像機に、あらかじめ、最高順位の画像処理カード131が装着された状態となっているものとしたが、最高順位の画像処理カード131も、他の画像処理カード13iと同様に、テレビジョン受像機とは別売りにすることが可能である。但し、最初に、最高順位の画像処理カード131が装着された状態のテレビジョン受像機を購入したユーザについては、最高順位の画像処理カード131が装着されていない状態のテレビジョン受像機を購入したユーザよりも、下位の順位の画像処理カード13iの販売価格を低価格にすることが可能である。
なお、図3に示したテレビジョン受像機の本体1は、大雑把には、例えば、一般的なアナログのテレビジョン受像機に、画像処理インタフェース40を追加するとともに、コントローラ37に実行させるプログラムを変更することで構成することが可能である。従って、図3のテレビジョン受像機の本体は、一般的なアナログのテレビジョン受像機を利用して、比較的容易に製造することができるので、画像処理カード13が装着されることにより提供される上述したような機能を考慮すれば、そのコストメリット(コストパフォーマンス)は高いと言うことができる。