JP4058671B2 - 記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体 - Google Patents
記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体 Download PDFInfo
- Publication number
- JP4058671B2 JP4058671B2 JP2002023699A JP2002023699A JP4058671B2 JP 4058671 B2 JP4058671 B2 JP 4058671B2 JP 2002023699 A JP2002023699 A JP 2002023699A JP 2002023699 A JP2002023699 A JP 2002023699A JP 4058671 B2 JP4058671 B2 JP 4058671B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- block
- processing
- row
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Memory System (AREA)
Description
【発明の属する技術分野】
本発明は、記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体に関し、特に、例えば、画像データを処理する際に、その画像データを記憶するメモリにおけるデータの読み書き速度を高速化するとともに、その消費電力を低減すること等ができるようにする記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体に関する。
【0002】
【従来の技術】
図1は、画像データを処理する、従来の画像処理装置の一例の構成を示している。
【0003】
HD(Hard Disk)1には、画像処理の対象とする、2次元データとしての画像データが記憶されている。また、HD1は、例えば画像処理の結果得られる画像データも必要に応じて記憶する。
【0004】
HDコントローラ2は、メモリ制御部3からの要求に応じて、HD1から画像データを読み出し、データバス上に出力する。また、HDコントローラ2は、データバス上の画像データを受信し、HD1に書き込む。
【0005】
メモリ制御部3は、画像処理部5からの要求に応じて、HDコントローラ2およびメモリ4を制御する。
【0006】
即ち、メモリ制御部3は、HDコントローラ2を制御することにより、HD1に記録された画像データを、例えば1フレーム(またはフィールド)単位で読み出させ、データバス上に出力させる。また、メモリ制御部3は、メモリ4を制御することにより、データバス上の画像データを記憶させる。さらに、メモリ制御部3は、メモリ4を制御することにより、メモリ4に記憶された画像データを、データバス上に出力させる。
【0007】
メモリ4は、図1では、4つのメモリバンク41,42,43,44を有し、メモリ制御部3の制御にしたがい、各メモリバンク4iに、データバス上の画像データを記憶し、また、各メモリバンク4iに記憶された画像データを読み出し、データバス上に出力する。
【0008】
画像処理部5は、データバス上の画像データを受信し、その画像データを対象に、所定の画像処理を行う。即ち、画像処理部5は、メモリ制御部3に対して、画像処理の対象とする、行方向と列方向が所定の画素数で構成される矩形状のブロック(以下、適宜、処理ブロックという)の画像データを要求する。そして、画像処理部5は、要求した処理ブロックの画像データが、メモリ4から読み出されてデータバス上に出力されるのを待って、その処理ブロックの画像データを受信し、その処理ブロックの画像データを対象に、所定の画像処理を行う。
【0009】
ここで、画像処理部5が所定の処理ブロックの画像データを対象に行う画像処理としては、例えば、MPEG(Moving Picture Experts Group)符号化において、動きベクトルを検出するのに行われるブロックマッチングなどがある。
【0010】
次に、図2は、画像処理部5が画像処理の対象とする処理ブロックの例を示している。
【0011】
図2では、1フレームの画像データから、行方向と列方向がいずれも4画素で構成される処理ブロックが切り出され、その処理ブロックが有する16(=4×4)画素の画像データが、画像処理の対象とされるようになっている。
【0012】
次に、図3は、図1のメモリ4の構成例を示している。
【0013】
メモリ4を構成する各メモリバンク4iは、行方向に、複数のワード線が配置されるとともに、列方向に、複数のビット線が配置され、ワード線とビット線の交差する部分に、データを記憶するメモリセルが設けられて構成されている。
【0014】
メモリバンク4iへの画像データの書き込み時においては、複数のビット線それぞれに、書き込むべき画像データが供給されるとともに、複数のワード線のうちの1つが選択され(HレベルまたはLレベルにされることにより活性化され)、その選択されたワード線上の各メモリセルに、そのメモリセルに接続されたビット線上の画像データが記憶される。
【0015】
一方、メモリバンク4iからの画像データの読み出し時においては、複数のワード線のうちの1つが選択され、その選択されたワード線上の各メモリセルに記憶された画像データが、そのメモリセルに接続されたビット線から読み出される。
【0016】
なお、1つのメモリバンク4iに対する画像データの読み書き時において選択されるワード線は、1本に限られる。即ち、メモリバンク4iにおける複数のワード線を選択した場合には、その複数のワード線上のメモリセルのデータが、ビット線上で衝突してしまい、データが破壊される。従って、メモリバンク4iにおける複数のワード線のメモリセルに対して、データを、同時に読み書きすることはできない。
【0017】
一方、メモリバンク4iにおける1本のワード線上のメモリセルに対しては、データを、同時に読み書きすることができる。そこで、画像データを、上述したような処理ブロック単位で処理する場合には、画像の読み書き速度を向上させるために、メモリ制御部3は、図4に示すように、画像データを、処理ブロック以上の大きさの、例えば、行×列が16画素×16画素の矩形状の画像ブロックに分割し、各画像ブロックの画像データを、1本のワード線上のメモリセルに記憶させる。即ち、この場合、1本のワード線上のメモリセルには、256(=16×16)画素の画像データが記憶される。
【0018】
ここで、1本のワード線上のメモリセルに、画像ブロックの画像データを記憶させる方法については、本件出願人が先に提案した特開2000−182024号公報に、その詳細が開示されている。
【0019】
【発明が解決しようとする課題】
ところで、1本のワード線上に、多数のメモリセルを設けることにより、より大きな画像ブロックの画像データ(極端には、例えば、1フレームの画像データ)を、同時に読み書きすることが可能となる。
【0020】
しかしながら、この場合、ワード線の長さが長くなるため、ワード線を活性化するのに、時間を要することになり、画像データの読み書き速度が低下することになる。
【0021】
そこで、図1の画像処理装置においては、メモリ4が、複数としての、例えば、4つのメモリバンク41乃至44に分割されている。即ち、メモリバンク41乃至44それぞれは、独立に動作させることができ、従って、メモリバンク41乃至44それぞれの、あるワード線を選択することにより、4つの画像ブロックの読み書きを、同時に行うことができる。
【0022】
ところで、図1の画像処理装置において、メモリ4が、4つのメモリバンク41乃至44で構成されているのは、次のような理由による。
【0023】
即ち、いまの場合、画像ブロックが16×16画素で構成され、処理ブロックが、それより小さい4×4画素で構成されるため、図5に示すように、処理ブロックが、ある1つの画像ブロックの範囲に含まれる処理ブロックB1であれば、その1つの画像ブロックを、メモリ4から読み出すことにより、処理ブロックB1の画像データを得ることができ、特に問題はない。
【0024】
しかしながら、処理ブロックが、図5に示すように、2つの画像ブロックの範囲に跨る処理ブロックB2である場合には、処理ブロックB2の画像データを得るためには、その2つの画像ブロックを、同時に読み出す必要がある。この場合、2つの画像ブロックが、同一のメモリバンク4iに記憶されているときには、上述したように、同時に、2つのワード線を選択することができないため、同時に読み出すことはできない。
【0025】
そこで、画像ブロックは、それに隣接する画像ブロックが記憶されるメモリバンク4i'(i’≠i)とは異なるメモリバンク4iに記憶させる必要がある。
【0026】
この場合、異なるメモリバンク4iと4i'から、処理ブロックB2の画像データを有する、隣接する2つの画像ブロックを同時に読み出すことが可能となる。
【0027】
そして、画像データを、図4に示したように、各画像ブロックの頂点が、隣接するすべての画像ブロックの頂点に一致するように、いわゆるマトリクス状に分割した場合には、処理ブロックは、図5において処理ブロックB3として示すように、最大で、4つの画像ブロックに跨ることがある。
【0028】
この4つの画像ブロックを、同時に読み出すためには、その4つの画像ブロックそれぞれを、異なるメモリバンクに記憶させる必要があり、このため、図1では、メモリ4が、4つのメモリバンク41乃至44で構成され、処理ブロックが跨る可能性のある4つの画像ブロックそれぞれは、4つのメモリバンク41乃至44の異なるものに記憶される。
【0029】
ところで、メモリ4において流れる電流、ひいては、その消費電力は、選択(活性化)するメモリバンク4iの数に比例する。
【0030】
従って、処理ブロックが、4つの画像ブロックに跨る場合には、1つの画像ブロックの範囲に含まれる場合に比較して、画像データの読み出しのためにメモリ4で消費される電力が著しく大になる。さらに、処理ブロックが、4つの画像ブロックに跨る場合には、メモリ4に流れる電流の増加に伴い、ノイズが発生する。
【0031】
本発明は、このような状況に鑑みてなされたものであり、同時に読み出す必要のある画像ブロックの数を少なくすることができるようにし、これにより、メモリにおけるデータの読み書き速度を高速に維持したまま、その消費電力を低減すること等ができるようにするものである。
【0032】
【課題を解決するための手段】
本発明の記憶制御装置は、2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得手段と、記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、データブロック単位の2次元データを記憶させる記憶選択手段とを備え、所定のデータ処理を行うデータ処理装置が、記憶装置に記憶された2次元データの矩形状の処理ブロックを対象として、所定のデータ処理を行う場合において、データブロックの行方向の境界線の長さa、処理ブロックの行方向の長さb、およびデータブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、または、データブロックの列方向の境界線の長さa、処理ブロックの列方向の長さb、およびデータブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量cは、式b≦c≦a−bを満たすことを特徴とする。
【0033】
本発明の記憶制御方法は、2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得ステップと、記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、データブロック単位の2次元データを記憶させる記憶選択ステップとを備え、所定のデータ処理を行うデータ処理装置が、記憶装置に記憶された2次元データの矩形状の処理ブロックを対象として、所定のデータ処理を行う場合において、データブロックの行方向の境界線の長さa、処理ブロックの行方向の長さb、およびデータブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、または、データブロックの列方向の境界線の長さa、処理ブロックの列方向の長さb、およびデータブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量cは、式b≦c≦a−bを満たすことを特徴とする。
【0034】
本発明のプログラムは、2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得ステップと、記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、データブロック単位の2次元データを記憶させる記憶選択ステップとを備え、所定のデータ処理を行うデータ処理装置が、記憶装置に記憶された2次元データの矩形状の処理ブロックを対象として、所定のデータ処理を行う場合において、データブロックの行方向の境界線の長さa、処理ブロックの行方向の長さb、およびデータブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、または、データブロックの列方向の境界線の長さa、処理ブロックの列方向の長さb、およびデータブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量cは、式b≦c≦a−bを満たすことを特徴とする。
【0035】
本発明の記録媒体は、2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得ステップと、記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、データブロック単位の2次元データを記憶させる記憶選択ステップとを備え、所定のデータ処理を行うデータ処理装置が、記憶装置に記憶された2次元データの矩形状の処理ブロックを対象として、所定のデータ処理を行う場合において、データブロックの行方向の境界線の長さa、処理ブロックの行方向の長さb、およびデータブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、または、データブロックの列方向の境界線の長さa、処理ブロックの列方向の長さb、およびデータブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量cは、式b≦c≦a−bを満たすプログラムが記録されていることを特徴とする。
【0036】
本発明においては、2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データが取得され、記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、データブロック単位の2次元データが記憶される。なお、所定のデータ処理を行うデータ処理装置が、記憶装置に記憶された2次元データの矩形状の処理ブロックを対象として、所定のデータ処理を行う場合において、データブロックの行方向の境界線の長さa、処理ブロックの行方向の長さb、およびデータブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、または、データブロックの列方向の境界線の長さa、処理ブロックの列方向の長さb、およびデータブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量cは、式b≦c≦a−bを満たす。
【0037】
【発明の実施の形態】
図6は、本発明を適用した画像処理装置の一実施の形態の構成例を示している。なお、図中、図1における場合と対応する部分については、同一の符号を付してあり、以下では、その説明は、適宜省略する。即ち、図6の画像処理装置は、メモリ制御部3に代えて、メモリ制御部11が設けられている他は、基本的に、図1における場合と同様に構成されている。
【0038】
但し、メモリ4は、4つのメモリバンク41乃至44ではなく、3つのメモリバンク41乃至43から構成されている。
【0039】
メモリ制御部11は、HD1から読み出されたフレーム単位の画像データを、マトリクス状に分割するのではなく、その頂点が、隣接する複数の画像ブロックのうちの少なくとも1つ画像ブロックの頂点と一致しない画像ブロックに分割し、その画像ブロックを、メモリバンク4iのあるワード線上のメモリセルに記憶させるようになっている。
【0040】
即ち、メモリ制御部11は、HD1に記憶された画像データを、例えば、図7に示すように、画像ブロックの列方向の境界線L1が、隣接する行の画像ブロックの列方向の境界線L2とずれた画像ブロックに分割した、その画像ブロック単位の画像データを取得し、メモリバンク4iのあるワード線を選択することにより、画像ブロックを、そのワード線上のメモリセルに記憶させる。
【0041】
なお、図7の実施の形態では、画像ブロックは、16×16画素で構成されている。また、図7の実施の形態では、画像ブロックの列方向の境界線L1と、隣接する行の画像ブロックの列方向の境界線L2とは、画像ブロックの行方向の境界線の画素数(長さ)である16画素の1/2、つまり8画素分だけずれている。
【0042】
ここで、上述のように、隣接する行の画像ブロックどうしの列方向の境界線が、8画素分だけずれているため、図7の実施の形態では、上から偶数行目の左端および右端の画像ブロックは、16×16画素ではなく、8×16画素で構成されている。このように、8×16画素で構成される画像ブロックについては、16×16画素で構成される画像ブロックと同様に、1本のワード線上のメモリセルに記憶させることができるが、この場合、そのワード線上のメモリセルの1/2が無駄になる。そこで、8×16画素で構成される画像ブロックについては、2つの画像ブロック単位で、1本のワード線上のメモリセルに記憶させることが可能である。具体的には、例えば、図7において、2行目または4行目の最左端の列にある画像ブロックb1またはb3については、同一の行の最右端の列にある画像ブロックb2またはb4と、それぞれ、同一のワード線上のメモリセルに記憶させることが可能である。あるいは、また、例えば、図7において、2行目の最左端または最右端の列にある画像ブロックb1またはb2については、その2行だけ下の4行目の最左端または最右端の列にある画像ブロックb3またはb4と、それぞれ、同一のワード線上のメモリセルに記憶させることが可能である。
【0043】
図7に示したように、1フレームの画像データを、いわばレンガ模様状の16×16画素の画像ブロック単位に分割し、その画像ブロック単位で、メモリ4に記憶させた場合においては、4×4画素の処理ブロックが跨る画像ブロックの数は、図8に示すように、処理ブロックが、画像ブロックの頂点を含む位置にあるケースにおいて最大の3になる。
【0044】
従って、図3の画像処理装置では、処理ブロックの画像データを得るために、最大でも、3つのメモリバンク41乃至43から、3つの画像ブロックをそれぞれ同時に読み出せば良く、図1の画像処理装置における場合のように、4つのメモリバンク41乃至44から画像ブロックを同時に読み出す必要があるケースは生じない。
【0045】
その結果、図6の画像処理装置によれば、図1における場合に比較して、メモリ4において流れる電流を小さくすることができ、これにより、画像データの読み書き速度を維持したまま、メモリ4において流れる電流に起因するノイズや、消費電力を低減することができ、また、メモリ4において大電流が流れることによる電源電圧の降下の影響を抑制することができる。さらに、最大でも、3つのメモリバンク41乃至43から、同時に画像ブロックを読み出せば良いから、図1の画像処理装置における場合のように、最大で、4つのメモリバンク41乃至44から、同時に画像ブロックを読み出す必要がある場合に比較して、データバスのバス幅を、1つのメモリバンクに相当する分だけ小さく(狭く)することができる。
【0046】
次に、図9のフローチャートを参照して、メモリ制御部11が、メモリ4に画像データを書き込む場合に行う書き込み制御処理について説明する。
【0047】
メモリ制御部11は、例えば、画像処理部5から、あるフレームの画像データの要求があると、書き込み制御処理を開始する。
【0048】
即ち、書き込み制御処理では、まず最初に、ステップS1において、メモリ制御部11は、画像処理部5から要求のあった1フレームの画像データ(以下、適宜、要求画像データという)を、仮想的に、図7に示したように、レンガ模様状の画像ブロックに分割し、ステップS2に進む。
【0049】
ステップS2では、メモリ制御部11は、要求画像データを構成する画像ブロックから、例えば、ラスタスキャン順で、まだ注目画像ブロックとして選択していないものを、注目画像ブロックとして選択し、ステップS3に進む。
【0050】
ステップS3では、メモリ制御部11は、メモリバンク41乃至43の中から、注目画像ブロックを書き込むメモリバンク4iを選択する。
【0051】
即ち、ステップS3では、メモリ制御部11は、注目画像ブロックに隣接する画像ブロックのうち、既にメモリ4に書き込まれているものが記憶されたメモリバンク4i'とは異なるメモリバンク4iを、注目画像ブロックを書き込むメモリバンクとして選択する。
【0052】
そして、ステップS4に進み、メモリ制御部11は、ステップS3で選択したメモリバンク4iにおいて、まだ、要求画像データの画像ブロックを記憶させていないメモリセルに接続されたワード線のうちの1つを選択し、ステップS5に進む。
【0053】
ステップS5では、メモリ制御部11は、HDコントローラ2を制御することにより、HD1に記憶された要求画像データから、注目画像ブロックを取得し、即ち、注目画像ブロックの画像データをHD1から読み出させ、データバス上に出力させる。これにより、データバス上の注目画像ブロックの画像データは、ステップS3で選択されたメモリバンク4iの、ステップS4で選択されたワード線上のメモリセルに書き込まれる。
【0054】
その後、ステップS6に進み、メモリ制御部11は、要求画像データを構成する画像ブロックのうち、まだ、注目画像ブロックとしていないものがあるかどうかを判定する。
【0055】
ステップS6において、まだ、注目画像ブロックとしていない画像ブロックがあると判定された場合、ステップS2に戻り、以下、同様の処理が繰り返される。
【0056】
また、ステップS6において、注目画像ブロックとしていない画像ブロックがないと判定された場合、書き込み制御処理を終了する。
【0057】
次に、図10のフローチャートを参照して、メモリ制御部11が行う書き込み制御処理の他の実施の形態について説明する。
【0058】
まず最初に、ステップS11において、図9のステップS1における場合と同様に、メモリ制御部11は、要求画像データを、仮想的に、レンガ模様状の画像ブロックに分割し、ステップS12に進む
【0059】
ステップS12では、メモリ制御部11は、要求画像データを構成する画像ブロックから、例えば、ラスタスキャン順で、まだ注目画像ブロックとして選択していない3つの画像ブロックであって、互いに隣接する3つの画像ブロック(任意の1つの画像ブロックが、他の2つの画像ブロックと隣接する3つの画像ブロック)を、第1乃至第3の注目画像ブロックとしてそれぞれ選択し、ステップS13に進む。
【0060】
ステップS13では、メモリ制御部11は、メモリバンク41乃至43の中から、第1乃至第3の注目画像ブロックを書き込むメモリバンク4i,4i',4i''をそれぞれ選択する。
【0061】
ここで、ステップS13では、メモリ制御部11は、第1乃至第3の注目画像ブロックが、それぞれ異なるメモリバンクに書き込まれるように、メモリバンクの選択を行う。さらに、ステップS13では、メモリ制御部11は、第1の注目画像ブロックについては、その第1の注目ブロックに隣接する画像ブロックのうち、既にメモリ4に書き込まれているものが記憶されたメモリバンクとは異なるメモリバンクを、第1の注目画像ブロックを書き込むメモリバンクとして選択する。第2および第3の注目画像ブロックについても、同様である。
【0062】
そして、ステップS14に進み、メモリ制御部11は、ステップS13で選択したメモリバンク4i,4i',4i''それぞれにおいて、まだ、要求画像データの画像ブロックを記憶させていないメモリセルに接続されたワード線のうちの1つを選択し、ステップS15に進む。
【0063】
ステップS15では、メモリ制御部11は、HDコントローラ2を制御することにより、HD1に記憶された要求画像データから、第1乃至第3の注目画像ブロックを取得し、即ち、第1乃至第3の注目画像ブロックの画像データをHD1から読み出させ、データバス上に出力させる。これにより、データバス上の第1乃至第3の注目画像ブロックの画像データは、ステップS13で選択されたメモリバンク4i,4i',4i''それぞれの、ステップS4で選択されたワード線上のメモリセルに、同時に書き込まれる。
【0064】
その後、ステップS16に進み、メモリ制御部11は、要求画像データを構成する画像ブロックの中で、まだ、注目画像ブロックとしていないものがあるかどうかを判定する。
【0065】
ステップS16において、まだ、注目画像ブロックとしていない画像ブロックがあると判定された場合、ステップS12に戻り、以下、同様の処理が繰り返される。
【0066】
また、ステップS16において、注目画像ブロックとしていない画像ブロックがないと判定された場合、書き込み制御処理を終了する。
【0067】
図9の書き込み制御処理では、画像データが、1つの画像ブロック単位で、1つのメモリバンク4iに書き込まれるのに対して、図10の書き込み制御処理では、画像データが、3つの画像ブロック単位で、3つのメモリバンク41乃至43に、同時に書き込まれる。
【0068】
次に、図11のフローチャートを参照して、メモリ制御部11が、メモリ4に記憶された画像データを読み出す場合に行う読み出し制御処理について説明する。
【0069】
メモリ制御部11は、例えば、画像処理部5から、メモリ4に記憶された1フレームの画像データのうちの、ある位置の処理ブロックの画像データの要求があると、読み出し制御処理を開始する。
【0070】
即ち、読み出し制御処理では、まず最初に、ステップS21において、メモリ制御部11は、画像処理部5から要求のあった処理ブロックが跨る1以上の画像ブロックを認識し、その1以上の画像ブロックすべてを注目画像ブロックとして選択する。
【0071】
そして、ステップS22に進み、メモリ制御部11は、メモリバンク41乃至43の中から、1以上の注目画像ブロックが書き込まれている1以上のメモリバンクを選択し、ステップS23に進む。
【0072】
ステップS23では、メモリ制御部11は、ステップS22で選択した1以上のメモリバンクの、注目画像ブロックが書き込まれているメモリセルが接続されているワード線を選択し、読み出し制御処理を終了する。
【0073】
これにより、ステップS22で選択された1以上のメモリバンクそれぞれから、選択されたワード線上のメモリセルに記憶された画像データ、即ち、ステップS21で選択された1以上の注目画像ブロックが同時に読み出され、データバス上に出力される。
【0074】
次に、図7および図8の実施の形態では、1フレームの画像データを、16×16画素で構成される画像ブロックに分割し、また、画像ブロックの列方向の境界線L1と、隣接する行の画像ブロックの列方向の境界線L2とのずれ量を、画像ブロックの行方向の境界線の画素数の1/2である8画素とするとともに、処理ブロックを、4×4画素で構成するようにしたが、図12に示すように、画像ブロックの行方向の境界線の長さをaと、処理ブロックの行方向の長さをbと、画像ブロックの列方向の境界線と、隣接する行の画像ブロックの列方向の境界線との行方向のずれ量をcと、それぞれ表すこととすると、これらは、次式を満たす必要がある。
【0075】
【数1】
・・・(1)
【0076】
なお、式(1)は、画像データを、レンガ模様状の画像ブロックに分割した場合に、処理ブロックが画像データ上のどの位置にあっても、多くとも、画像ブロックの1つの頂点しか含まないこととする条件、即ち、処理ブロックが、画像ブロックの2以上の頂点(同一の画像ブロックの2以上の頂点と、異なる画像ブロックの2以上の頂点の両方を含む)を含まないこととする条件である。
【0077】
次に、図6の画像処理部5には、前述したように、MPEG符号化において、動きベクトルを検出するためのブロックマッチングの他、所定の処理ブロックを対象に行われる各種の画像処理を行わせることができる。
【0078】
そのような画像処理の1つとして、本件出願人が先に提案したデータ変換処理がある。
【0079】
図13は、本件出願人が先に提案したデータ変換処理を行う画像処理部5の構成例を示している。
【0080】
図13の実施の形態では、画像処理部5は、そこに供給される画像データを、第1の画像データとして、その第1の画像データを、その第1の画像データよりも高画質の第2の画像データに変換するデータ変換処理を行うようになっている。
【0081】
ここで、例えば、第1の画像データを低解像度の画像データとするとともに、第2の画像データを高解像度の画像データとすれば、データ変換処理は、解像度を向上させる解像度向上処理ということができる。また、例えば、第1の画像データを低S/N(Siginal/Noise)の画像データとするとともに、第2の画像データを高S/Nの画像データとすれば、データ変換処理は、ノイズを除去するノイズ除去処理ということができる。さらに、例えば、第1の画像データを所定のサイズの画像データとするとともに、第2の画像データを、第1の画像データのサイズを大きくまたは小さくした画像データとすれば、データ変換処理は、画像のリサイズ(拡大または縮小)を行うリサイズ処理ということができる。
【0082】
従って、データ変換処理によれば、第1および第2の画像データをどのように定義するかによって、様々な処理を実現することができる。
【0083】
インタフェース20は、タップ抽出部21および22からの要求にしたがい、所定の処理ブロックの供給を、メモリ制御部11(図6)に要求する。なお、タップ抽出部21および22は、要求する処理ブロックの、例えば、左上隅や中心などにある画素の座標を、その処理ブロックを特定するための情報として、インタフェース20に供給するようになっており、インタフェース20は、その座標によって特定される処理ブロックの供給を、メモリ制御部11に要求する。
【0084】
タップ抽出部21は、第2の画像データを構成する画素を、順次、注目画素とし、さらに、その注目画素の画素値を予測するのに用いる第1の画像データを構成する画素(の画素値)の幾つかを、処理ブロックとして、インタフェース20に要求し、その要求に応じて、インタフェース20から供給される画像データから、処理ブロックを構成する画素を、予測タップとして抽出する。
【0085】
具体的には、タップ抽出部21は、注目画素に対応する、第1の画像データの画素に対して、空間的または時間的に近い位置にある複数の画素、即ち、例えば、注目画素に対応する、第1の画像データの画素と、それに空間的に隣接する画素の、3×3画素などを、処理ブロックとして、インタフェース20に要求する。この場合、インタフェース20は、メモリ制御部11に対して、処理ブロックを要求する。
【0086】
ここで、メモリ4には、既に、データ変換対象のフレームの第1の画像データが記憶されているものとする。
【0087】
メモリ制御部11は、インタフェース20から処理ブロックの要求を受信すると、その処理ブロックが跨る画像ブロックを、図11で説明したように、メモリ4から読み出させ、データバス上に出力させる。インタフェース20は、このデータバス上の画像ブロックの画像データを受信し、タップ抽出部21に供給する。そして、タップ抽出部21は、このようにしてインタフェース20から供給される画像ブロックの画像データの中から、予測タップとする画素(の画素値)を抽出する。
【0088】
なお、タップ抽出部21では、注目画素に対応する、第1の画像データの画素を中心とする3×3画素を、予測タップとして抽出する他、例えば、注目画素に対応する、第1の画像データの画素の動きベクトルを検出し、その動きベクトルにしたがって、予測タップとして抽出する3×3画素の位置を変更するようにすることが可能である。
【0089】
タップ抽出部22は、注目画素を、幾つかのクラスのうちのいずれかにクラス分けするクラス分類を行うのに用いる第1の画像データを構成する画素の幾つかを、処理ブロックとして、インタフェース20に要求し、その要求に応じて、インタフェース20から供給される画像データから、処理ブロックを構成する画素を、クラスタップとして抽出する。
【0090】
ここで、タップ抽出部21と22が要求する処理ブロックは、同一である必要はない。従って、予測タップとクラスタップは、同一のタップ構造とすることもできるし、異なるタップ構造とすることもできる。
【0091】
タップ抽出部21で得られた予測タップは、予測部25に供給され、タップ抽出部22で得られたクラスタップは、クラス分類部23に供給される。
【0092】
クラス分類部23は、タップ抽出部22からのクラスタップに基づき、注目画素をクラス分類し、その結果得られるクラスに対応するクラスコードを、係数メモリ24に供給する。
【0093】
ここで、クラス分類を行う方法としては、例えば、ADRC(Adaptive Dynamic Range Coding)等を採用することができる。
【0094】
ADRCを用いる方法では、クラスタップを構成する画素の画素値が、ADRC処理され、その結果得られるADRCコードにしたがって、注目画素のクラスが決定される。
【0095】
なお、KビットADRCにおいては、例えば、クラスタップを構成する画素の画素値の最大値MAXと最小値MINが検出され、DR=MAX-MINを、局所的なダイナミックレンジとし、このダイナミックレンジDRに基づいて、クラスタップを構成する画素値がKビットに再量子化される。即ち、クラスタップを構成する各画素の画素値から、最小値MINが減算され、その減算値がDR/2Kで除算(量子化)される。そして、以上のようにして得られる、クラスタップを構成するKビットの各画素の画素値を、所定の順番で並べたビット列が、ADRCコードとして出力される。従って、クラスタップが、例えば、1ビットADRC処理された場合には、そのクラスタップを構成する各画素の画素値は、最小値MINが減算された後に、最大値MAXと最小値MINとの平均値で除算され(小数点以下切り捨て)、これにより、各画素の画素値が1ビットとされる(2値化される)。そして、その1ビットの画素値を所定の順番で並べたビット列が、ADRCコードとして出力される。
【0096】
なお、クラス分類部23には、例えば、クラスタップを構成する画素の画素値のレベル分布のパターンを、そのままクラスコードとして出力させることも可能である。しかしながら、この場合、クラスタップが、N個の画素の画素値で構成され、各画素の画素値に、Kビットが割り当てられているとすると、クラス分類部23が出力するクラスコードの場合の数は、(2N)K通りとなり、画素の画素値のビット数Kに指数的に比例した膨大な数となる。
【0097】
従って、クラス分類部23においては、クラスタップの情報量を、上述のADRC処理や、あるいはベクトル量子化等によって圧縮することにより、クラス分類を行うのが好ましい。
【0098】
なお、クラス分類は、上述したように、クラスタップを構成する画素の画素値のレベル分布のパターンに基づいて行う他、例えば、そのクラスタップの注目画素に対応する画素の部分にエッジが存在するかどうかや、その画素の動きの有無(あるいは、動きの大きさや方向など)に基づいて行うことも可能である。
【0099】
係数メモリ24は、後述する学習装置において学習処理が行われることにより得られるクラスごとのタップ係数を記憶しており、その記憶しているタップ係数のうちの、クラス分類部23から供給されるクラスコードに対応するアドレスに記憶されているタップ係数(クラス分類部23から供給されるクラスコードが表すクラスのタップ係数)を読み出し、予測部25に供給する。
【0100】
ここで、タップ係数とは、ディジタルフィルタにおける、いわゆるタップにおいて入力データと乗算される係数に相当するものである。
【0101】
予測部25は、タップ抽出部21が出力する予測タップと、係数メモリ24が出力するタップ係数とを取得し、その予測タップとタップ係数とを用いて、注目画素の真値の予測値を求める所定の予測演算を行う。これにより、予測部25は、注目画素の画素値(の予測値)、即ち、第2の画像データを構成する画素の画素値を求めて出力する。
【0102】
なお、予測部25が出力する第1の画像データは、例えば、データバスおよびHDコントローラ2を介して、HD1に書き込まれ、あるいは、図示せぬモニタに供給されて表示され、または図示せぬ伝送媒体を介して伝送される。
【0103】
次に、図14のフローチャートを参照して、図13の画像処理部5の処理(データ変換処理)について説明する。
【0104】
ステップS31では、タップ抽出部21が、メモリ4(図6)に記憶された画像データを、データ変換処理対象の第1の画像データとして、その第1の画像データに対する第2の画像データ(データ変換処理後の画像データ)を構成する各画素を、順次、注目画素とし、その注目画素について、予測タップとする第1の画像データの画素でなる処理ブロックを、インタフェース20に要求し、その要求に応じて、インタフェース20から供給される画像ブロックから、予測タップとするものを抽出する。さらに、ステップS31では、タップ抽出部22が、注目画素について、クラスタップとする第1の画像データの画素でなる処理ブロックを、インタフェース20に要求し、その要求に応じて、インタフェース20から供給される画像ブロックから、クラスタップとするものを抽出する。そして、予測タップは、タップ抽出部21から予測部25に供給され、クラスタップは、タップ抽出部22からクラス分類部23に供給される。
【0105】
クラス分類部23は、タップ抽出部22から、注目画素についてのクラスタップを受信し、ステップS32において、そのクラスタップに基づき、注目画素をクラス分類する。さらに、クラス分類部23は、そのクラス分類の結果得られる注目画素のクラスを表すクラスコードを、係数メモリ24に出力し、ステップS33に進む。
【0106】
ステップS33では、係数メモリ24が、クラス分類部23から供給されるクラスコードに対応するアドレスに記憶されているタップ係数、即ち、クラスコードに対応するクラスのタップ係数を読み出して出力する。さらに、ステップS33では、予測部25が、係数メモリ24が出力するタップ係数を取得し、ステップS34に進む。
【0107】
ステップS34では、予測部25が、タップ抽出部21が出力する予測タップと、係数メモリ24から取得したタップ係数とを用いて、所定の予測演算(後述する式(2)の予測演算)を行う。これにより、予測部25は、注目画素の画素値を求め、ステップS35に進む。
【0108】
ステップS35では、タップ抽出部21が、メモリ4(図6)に記憶された画像データとしての第1の画像データに対応する第2の画像データを構成する画素のうち、まだ、注目画素としていないものがあるかどうかを判定する。ステップS35において、第2の画像データを構成する画素のうち、まだ、注目画素としていないものがあると判定された場合、ステップS31に戻り、第2の画像データを構成する画素のうち、まだ、注目画素としていないもののうちの1つが、新たに注目画素とされ、その注目画素を対象に、以下、同様の処理が繰り返される。
【0109】
また、ステップS35において、第2の画像データを構成する画素のうち、まだ、注目画素としていないものがないと判定された場合、即ち、メモリ4(図6)に記憶された1フレームの画像データ(第1の画像データ)を変換した画像データ(第2の画像データ)が得られた場合、予測部25は、その画像データを出力し、処理を終了する。
【0110】
なお、図14のデータ変換処理は、メモリ4に、順次、フレームごとの画像データを記憶させ、そのフレームごとの画像データを対象に、繰り返し行うようにすることができる。
【0111】
次に、図13の予測部25における予測演算と、係数メモリ24に記憶させるクラスごとのタップ係数の学習について説明する。
【0112】
いま、高画質の画像データ(高画質画像データ)を第2の画像データとするとともに、その高画質画像データをLPF(Low Pass Filter)によってフィルタリングする等してその画質(解像度)を低下させた低画質の画像データ(低画質画像データ)を第1の画像データとして、低画質画像データから予測タップを抽出し、その予測タップと所定のタップ係数を用いて、高画質画素の画素値を、所定の予測演算によって求める(予測する)ことを考える。
【0113】
いま、所定の予測演算として、例えば、線形1次予測演算を採用することとすると、高画質画素の画素値yは、次の線形1次式によって求められることになる。
【0114】
【数2】
・・・(2)
【0115】
但し、式(2)において、xnは、高画質画素yについての予測タップを構成する、n番目の低画質画像データの画素(以下、適宜、低画質画素という)の画素値を表し、wnは、n番目の低画質画素(の画素値)と乗算されるn番目のタップ係数を表す。
【0116】
なお、式(2)では、予測タップが、N個の低画質画素x1,x2,・・・,xNで構成されるものとしてある。
【0117】
ここで、高画質画素の画素値yは、式(2)に示した線形1次式ではなく、2次以上の高次の式によって求めるようにすることも可能である。
【0118】
ところで、いま、第kサンプルの高画質画素の画素値の真値をykと表すとともに、式(2)によって得られるその真値ykの予測値をyk’と表すと、その予測誤差ekは、次式で表される。
【0119】
【数3】
・・・(3)
【0120】
いま、式(3)の予測値yk’は、式(2)にしたがって求められるため、式(3)のyk’を、式(2)にしたがって置き換えると、次式が得られる。
【0121】
【数4】
・・・(4)
【0122】
但し、式(4)において、xn,kは、第kサンプルの高画質画素についての予測タップを構成するn番目の低画質画素を表す。
【0123】
式(4)の予測誤差ekを0とするタップ係数wnが、高画質画素を予測するのに最適なものとなるが、すべての高画質画素について、そのようなタップ係数wnを求めることは、一般には困難である。
【0124】
そこで、タップ係数wnが最適なものであることを表す規範として、例えば、最小自乗法を採用することとすると、最適なタップ係数wnは、次式で表される自乗誤差の総和Eを最小にすることで求めることができる。
【0125】
【数5】
・・・(5)
【0126】
但し、式(5)において、Kは、高画質画素ykと、その高画質画素ykについての予測タップを構成する低画質画素x1,k,x2,k,・・・,xN,kとのセットのサンプル数(学習用のサンプルの数)を表す。
【0127】
式(5)の自乗誤差の総和Eを最小(極小)にするタップ係数wnは、その総和Eをタップ係数wnで偏微分したものを0とするものであり、従って、次式を満たす必要がある。
【0128】
【数6】
・・・(6)
【0129】
そこで、上述の式(4)をタップ係数wnで偏微分すると、次式が得られる。
【0130】
【数7】
・・・(7)
【0131】
式(6)と(7)から、次式が得られる。
【0132】
【数8】
・・・(8)
【0133】
式(8)のekに、式(4)を代入することにより、式(8)は、式(9)に示す正規方程式で表すことができる。
【0134】
【数9】
・・・(9)
【0135】
式(9)の正規方程式は、例えば、掃き出し法(Gauss-Jordanの消去法)などを用いることにより、タップ係数wnについて解くことができる。
【0136】
式(9)の正規方程式をクラスごとにたてて解くことにより、最適なタップ係数(ここでは、自乗誤差の総和Eを最小にするタップ係数)wnを、クラスごとに求めることができる。
【0137】
図15は、式(9)の正規方程式をたてて解くことによりクラスごとのタップ係数wnを求める学習を行うタップ係数の学習装置の構成例を示している。
【0138】
学習装置には、学習に用いられる学習用画像データが入力されるようになっている。ここで、学習用画像データは、第2の画像データに対応するもので、例えば、解像度の高い高画質画像データを用いることができる。
【0139】
学習装置において、学習用画像データは、教師データ生成部31と生徒データ生成部33に供給される。
【0140】
教師データ生成部31は、そこに供給される学習用画像データから教師データを生成し、教師データ記憶部32に供給する。即ち、ここでは、教師データ生成部31は、学習用画像データとしての高画質画像データを、例えば、そのまま教師データとして、教師データ記憶部32に供給する。
【0141】
教師データ記憶部32は、教師データ生成部31から供給される教師データとしての高画質画像データを記憶する。
【0142】
生徒データ生成部33は、学習用画像データから、第1の画像データに対応する生徒データを生成し、生徒データ記憶部34に供給する。即ち、生徒データ生成部33は、例えば、学習用画像データとしての高画質画像データをフィルタリングすることにより、その解像度を低下させることで、低画質画像データを生成し、この低画質画像データを、生徒データとして、生徒データ記憶部34に供給する。
【0143】
生徒データ記憶部34は、生徒データ生成部33から供給される生徒データを記憶する。
【0144】
タップ抽出部35は、教師データ記憶部32に記憶された教師データとしての高画質画像データを構成する画素を、順次、注目教師画素とし、その注目教師画素について、生徒データ記憶部34に記憶された生徒データとしての低画質画像データを構成する低画質画素のうちの所定のものを、インタフェース40を介して抽出することにより、図13のタップ抽出部21が構成するのと同一のタップ構造の予測タップを構成し、足し込み部38に供給する。
【0145】
タップ抽出部36は、注目教師画素について、生徒データ記憶部34に記憶された生徒データとしての低画質画像データを構成する低画質画素のうちの所定のものを、インタフェース40を介して抽出することにより、図13のタップ抽出部22が構成するのと同一のタップ構造のクラスタップを構成し、クラス分類部37に供給する。
【0146】
クラス分類部37は、タップ抽出部36が出力するクラスタップに基づき、図13のクラス分類部23と同一のクラス分類を行い、その結果得られるクラスに対応するクラスコードを、足し込み部38に出力する。
【0147】
足し込み部38は、教師データ記憶部32から、注目教師画素を読み出し、その注目教師画素と、タップ抽出部35から供給される注目教師画素について構成された予測タップを構成する生徒データを対象とした足し込みを、クラス分類部37から供給されるクラスコードごとに行う。
【0148】
即ち、足し込み部38は、クラス分類部37から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)xi,k(xj,k)を用い、式(9)の左辺の行列におけるコンポーネントを求めるための生徒データどうしの乗算(xi,kxj,k)と、サメーション(Σ)に相当する演算を行う。
【0149】
さらに、足し込み部38は、やはり、クラス分類部37から供給されるクラスコードに対応するクラスごとに、予測タップ(生徒データ)xi,kと、教師データykを用い、式(9)の右辺のベクトルにおけるコンポーネントを求めるための生徒データxi,kと教師データykの乗算(xi,kyk)と、サメーション(Σ)に相当する演算を行う。
【0150】
即ち、足し込み部38は、前回、注目教師画素とされた教師データについて求められた式(9)における左辺の行列のコンポーネントと、右辺のベクトルのコンポーネントを、その内蔵するメモリ(図示せず)に記憶しており、その行列のコンポーネントまたはベクトルのコンポーネントに対して、新たに注目教師画素とされた教師データについて、その教師データykと生徒データxi,k(xj,k)を用いて計算される、対応するコンポーネントxi,kxj,kまたはxi,kykをそれぞれ足し込む。
【0151】
そして、足し込み部38は、教師データ記憶部32に記憶された教師データすべてを注目教師画素として、上述の足し込みを行うことにより、各クラスについて、式(9)に示した正規方程式をたてると、その正規方程式を、タップ係数算出部39に供給する。
【0152】
タップ係数算出部39は、足し込み部38から供給されるクラスごとの正規方程式を解くことにより、各クラスごとのタップ係数wnを求めて出力する。
【0153】
インタフェース40は、タップ抽出部35または36からの要求に応じて、生徒データ記憶部34から、生徒データとしての画像データを読み出し、タップ抽出部35または36に供給する。即ち、タップ抽出部35または36は、図13のタップ抽出部21または22における場合と同様に、予測タップまたはクラスタップを構成する複数の画素でなる処理ブロックの要求を、その処理ブロックを特定するための座標とともに、インタフェース40に供給し、インタフェース40は、その要求に応じて、処理ブロックの画像データを生徒データ記憶部34から読み出し、タップ抽出部35または36に供給する。
【0154】
次に、図16のフローチャートを参照して、図15の学習装置の処理(学習処理)について説明する。
【0155】
まず最初に、ステップS41において、教師データ生成部31と生徒データ生成部33が、学習用画像データから、教師データと生徒データを、それぞれ生成して出力する。即ち、教師データ生成部31は、学習用画像データを、そのまま、教師データとして出力する。また、生徒データ生成部31は、学習用画像データを、LPFによってフィルタリングすることにより、各フレーム(またはフィールド)の教師データ(学習用画像データ)について、生徒データを生成して出力する。
【0156】
教師データ生成部31が出力する教師データは、教師データ記憶部32に供給されて記憶され、生徒データ生成部33が出力する生徒データは、生徒データ記憶部34に供給されて記憶される。
【0157】
そして、ステップS42に進み、タップ抽出部35は、教師データ記憶部32に記憶された教師データのうち、まだ、注目教師画素としていないものを、注目教師画素とする。さらに、ステップS43では、タップ抽出部35が、注目教師画素について、生徒データ記憶部34に記憶された生徒データから、インタフェース40を介して、予測タップとするものを抽出し、足し込み部38に供給するとともに、タップ抽出部36が、やはり、注目教師画素について、生徒データ記憶部34に記憶された生徒データから、インタフェース40を介して、クラスタップとするものを抽出し、クラス分類部37に供給する。
【0158】
その後、ステップS43に進み、クラス分類部37は、注目教師画素についてのクラスタップに基づき、注目教師画素のクラス分類を行い、その結果得られるクラスに対応するクラスコードを、足し込み部38に出力して、ステップS44に進む。
【0159】
ステップS44では、足し込み部38は、教師データ記憶部32から注目教師画素を読み出し、その注目教師画素と、タップ抽出部35から供給される予測タップを用い、式(9)における左辺の行列のコンポーネントxi,Kxj,Kと、右辺のベクトルのコンポーネントxi,KyKを計算する。さらに、足し込み部38は、既に得られている行列のコンポーネントとベクトルのコンポーネントのうち、クラス分類部37からのクラスコードに対応するものに対して、注目画素と予測タップから求められた行列のコンポーネントxi,Kxj,Kとベクトルのコンポーネントxi,KyKをそれぞれ足し込み、ステップS45に進む。
【0160】
ステップS45では、タップ抽出部35が、教師データ記憶部32に、まだ、注目教師画素としていない教師データが記憶されているかどうかを判定する。ステップS45において、注目教師画素としていない教師データが、まだ、教師データ記憶部32に記憶されていると判定された場合、タップ抽出部35は、まだ注目教師画素としていない教師データを、新たに、注目教師画素として、ステップS42に戻り、以下、同様の処理が繰り返される。
【0161】
また、ステップS45において、注目教師画素としていない教師データが、教師データ記憶部32に記憶されていないと判定された場合、足し込み部38は、いままでの処理によって得られたクラスごとの式(9)における左辺の行列と、右辺のベクトルを、タップ係数算出部39に供給し、ステップS46に進む。
【0162】
ステップS46では、タップ係数算出部39は、足し込み部38から供給されるクラスごとの式(9)における左辺の行列と右辺のベクトルによって構成されるクラスごとの正規方程式を解くことにより、各クラスごとに、タップ係数wnを求めて出力し、処理を終了する。
【0163】
ここで、学習用画像データの数が十分でないこと等に起因して、タップ係数wnを求めるのに必要な数の正規方程式が得られないクラスが生じることがあり得るが、そのようなクラスについては、タップ係数算出部39は、例えば、デフォルトのタップ係数を出力するようになっている。
【0164】
なお、上述の場合には、学習用画像データを、そのまま第2の画像データに対応する教師データとするとともに、その学習用画像データの空間解像度を劣化させた低画質画像データを、第1の画像データに対応する生徒データとして、タップ係数の学習を行うようにしたことから、タップ係数としては、第1の画像データを、その解像度を向上させた第2の画像データに変換する解像度向上処理としてのデータ変換処理を行うものを得ることができる。
【0165】
従って、画像処理部5の係数メモリ24(図13)に、そのタップ係数を記憶させることにより、画像処理部5では、画像データの空間解像度を向上させることができる。
【0166】
ここで、第1の画像データに対応する生徒データと、第2の画像データに対応する教師データとする画像データの選択の仕方によって、タップ係数としては、各種のデータ変換処理を行うものを得ることができる。
【0167】
即ち、例えば、高画質画像データを教師データとするとともに、その教師データとしての高画質画像データに対して、ノイズを重畳した画像データを生徒データとして、学習処理を行うことにより、タップ係数としては、第1の画像データを、そこに含まれるノイズを除去(低減)した第2の画像データに変換するノイズ除去処理としてのデータ変換処理を行うものを得ることができる。
【0168】
また、例えば、ある画像データを教師データとするとともに、その教師データとしての画像データの画素数を間引いた画像データを生徒データとして、または、所定サイズの画像データを生徒データとするとともに、その生徒データとしての画像データの画素を所定の間引き率で間引いた画像データを教師データとして、学習処理を行うことにより、タップ係数としては、第1の画像データを、拡大または縮小した第2の画像データに変換するリサイズ処理としてのデータ変換処理を行うものを得ることができる。
【0169】
従って、画像処理部5の係数メモリ24(図13)に、ノイズ除去処理用のタップ係数や、リサイズ処理用のタップ係数を記憶させることにより、画像処理部5では、画像データのノイズ除去やリサイズ(拡大または縮小)を行うことができる。
【0170】
以上のように、タップ係数の学習に用いる教師データと生徒データのセットによって、タップ係数としては、解像度の向上や、ノイズ除去、リサイズ等の、各種の画質の改善を行うものを得ることができ、従って、このような各種の画質改善を行うタップ係数を、画像処理部5の係数メモリ24に記憶させることにより、画像処理部5では、各種の画質改善のためのデータ変換処理を行うことができる。
【0171】
なお、その他、例えば、高画質画像データを教師データとするとともに、その教師データとしての高画質画像データの空間解像度を低下させ、さらに、ノイズを重畳した画像データを生徒データとして、学習処理を行うことにより、タップ係数としては、第1の画像データを、そこに含まれるノイズを除去(低減)し、さらに、その空間解像度を向上させた第2の画像データに変換するノイズ除去処理と解像度向上処理の両方を、データ変換処理として行うものを得ることができる。
【0172】
次に、上述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【0173】
そこで、図17は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0174】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク105やROM103に予め記録しておくことができる。
【0175】
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体111に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体111は、いわゆるパッケージソフトウエアとして提供することができる。
【0176】
なお、プログラムは、上述したようなリムーバブル記録媒体111からコンピュータにインストールする他、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを、通信部108で受信し、内蔵するハードディスク105にインストールすることができる。
【0177】
コンピュータは、CPU(Central Processing Unit)102を内蔵している。CPU102には、バス101を介して、入出力インタフェース110が接続されており、CPU102は、入出力インタフェース110を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部107が操作等されることにより指令が入力されると、それにしたがって、ROM(Read Only Memory)103に格納されているプログラムを実行する。あるいは、また、CPU102は、ハードディスク105に格納されているプログラム、衛星若しくはネットワークから転送され、通信部108で受信されてハードディスク105にインストールされたプログラム、またはドライブ109に装着されたリムーバブル記録媒体111から読み出されてハードディスク105にインストールされたプログラムを、RAM(Random Access Memory)104にロードして実行する。これにより、CPU102は、上述したフローチャートにしたがった処理、あるいは上述した画像ブロック図の構成により行われる処理を行う。そして、CPU102は、その処理結果を、必要に応じて、例えば、入出力インタフェース110を介して、LCD(Liquid CryStal Display)やスピーカ等で構成される出力部106から出力、あるいは、通信部108から送信、さらには、ハードディスク105に記録等させる。
【0178】
ここで、本明細書において、コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0179】
また、プログラムは、1のコンピュータにより処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【0180】
なお、本実施の形態では、図7および図8に示したように、画像ブロックの列方向の境界線が、隣接する行の画像ブロックの列方向の境界線とずれている画像ブロックとなるように、画像データを分割するようにしたが、画像データは、その他、例えば、図18に示すように、画像ブロックの行方向の境界線が、隣接する列の画像ブロックの行方向の境界線とずれている画像ブロックとなるように分割することも可能である。
【0181】
また、本実施の形態では、メモリ4とメモリ制御部11とを別構成にしたが、メモリ制御部11は、メモリ4に内蔵させる形で構成することも可能である。
【0182】
さらに、メモリ制御部11によるメモリ4に対する画像データの読み書き制御は、画像処理部5において、MPEG符号化や、上述したデータ変換処理を行う場合の他、図15に示した学習装置における、生徒データ記憶部34に対する画像データの読み書きにも適用可能である。
【0183】
また、メモリ制御部11によるメモリ4に対する読み書き制御は、画像データ以外の2次元データを対象に行うことが可能である。即ち、例えば、図15に示した学習装置において、例えば、画像データを教師データとするとともに、その画像データをDCT(Discrete Cosine Transform)変換して得られるDCT係数を生徒データとして、図16の学習処理を行うことにより、DCT係数を、画像データに変換するデータ変換処理を行うタップ係数を得ることができるが、このようなタップ係数を、図13の係数メモリ24に記憶させ、画像処理部5においてデータ変換処理を行う場合には、画像データをDCT変換して得られるDCT係数が、第1の画像データとして入力されることとなる。この場合、メモリ制御部11においては、そのDCT係数を対象に、メモリ4に対する読み書き制御を行うようにすることが可能である。
【0184】
さらに、本実施の形態では、1フレームの画像データを、画像ブロックの頂点が、空間的に隣接する複数の画像ブロックのうちの少なくとも1つ画像ブロックの頂点と一致しない画像ブロックに分割するようにしたが、時間方向に、そのような分割を行うようにすることも可能である。即ち、1フレームの画像データを、画像ブロックの頂点が、時間的に隣接する1フレーム前または1フレーム後のフレームの画像ブロックのうちの少なくとも1つ画像ブロックの頂点と一致しない画像ブロックに分割するようにすることが可能である。この場合、例えば、図13の画像処理部5において、連続する複数フレームから画素を抽出して、予測タップやクラスタップを構成するときに、同時に読み出す必要のある画像ブロックの数を少なくすることができる。
【0185】
また、本実施の形態では、メモリ4を、3つのメモリバンク41乃至43で構成するようにしたが、メモリ4は、4以上のメモリバンクで構成することが可能である。なお、メモリ4を、4以上のメモリバンクで構成した場合であっても、画像データを、レンガ模様状の画像ブロックに分割して記憶させる限り、同時に読み出す必要のある画像ブロックは、最大でも、3つになる。
【0186】
【発明の効果】
以上の如く、本発明によれば、記憶装置におけるデータの読み書き速度を高速に維持したまま、その消費電力を低減することができる。
【図面の簡単な説明】
【図1】従来の画像処理装置の一例の構成を示すブロック図である。
【図2】処理ブロックを示す図である。
【図3】メモリ4の構成例を示す図である。
【図4】メモリ4への画像データの記憶させ方を説明する図である。
【図5】処理ブロックを読み出すのに、同時に読み出す必要のある画像ブロックが、最大で4つになることを説明する図である。
【図6】本発明を適用した画像処理装置の一例の構成例を示すブロック図である。
【図7】レンガ模様状の画像ブロックに分割された画像データを示す図である。
【図8】処理ブロックを読み出すのに、同時に読み出す必要のある画像ブロックが、最大で3つになることを説明する図である。
【図9】メモリ制御部11による書き込み制御処理の第1実施の形態を説明するフローチャートである。
【図10】メモリ制御部11による書き込み制御処理の第1実施の形態を説明するフローチャートである。
【図11】メモリ制御部11による読み出し制御処理を説明するフローチャートである。
【図12】画像ブロックの大きさa、処理ブロックの大きさb、画像ブロックのずれ量cが満たすべき条件を説明する図である。
【図13】画像処理部5の構成例を示すブロック図である。
【図14】画像処理部5の処理を説明するフローチャートである。
【図15】係数メモリ24に記憶させるタップ係数を学習する学習装置の構成例を示すブロック図である。
【図16】学習装置による学習処理を説明するフローチャートである。
【図17】本発明を適用したコンピュータの一実施の形態の構成例を示す画像ブロック図である。
【図18】レンガ模様状の画像ブロックに分割された画像データを示す図である。
【符号の説明】
1 HD, 2 HDコントローラ, 4 メモリ, 41乃至43 メモリバンク, 5 画像処理部, 20 インタフェース, 21,22 タップ抽出部, 23 クラス分類部, 24 係数メモリ, 25 予測部, 31 教師データ生成部, 32 教師データ記憶部, 33 生徒データ生成部, 34 生徒データ記憶部, 35,36 タップ抽出部, 37 クラス分類部,38 足し込み部, 39 タップ係数算出部, 40 インタフェース, 101 バス, 102 CPU, 103 ROM, 104 RAM, 105 ハードディスク, 106 出力部, 107 入力部, 108 通信部, 109 ドライブ, 110 入出力インタフェース, 111 リムーバブル記録媒体
Claims (5)
- 1つのワード線上の複数のメモリセルに対して、データを同時に読み書きする記憶装置に、2次元のデータである2次元データを記憶させる記憶制御装置であって、
前記2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得手段と、
前記記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、前記データブロック単位の2次元データを記憶させる記憶選択手段と
を備え、
所定のデータ処理を行うデータ処理装置が、前記記憶装置に記憶された前記2次元データの矩形状の処理ブロックを対象として、前記所定のデータ処理を行う場合において、
前記データブロックの行方向の境界線の長さa、
前記処理ブロックの行方向の長さb、
および前記データブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、
または、
前記データブロックの列方向の境界線の長さa、
前記処理ブロックの列方向の長さb、
および前記データブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量c
は、式b≦c≦a−bを満たす
ことを特徴とする記憶制御装置。 - 前記2次元データは、画像データである
ことを特徴とする請求項1に記載の記憶制御装置。 - 1つのワード線上の複数のメモリセルに対して、データを同時に読み書きする記憶装置に、2次元のデータである2次元データを記憶させる記憶制御方法であって、
前記2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得ステップと、
前記記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、前記データブロック単位の2次元データを記憶させる記憶選択ステップと
を備え、
所定のデータ処理を行うデータ処理装置が、前記記憶装置に記憶された前記2次元データの矩形状の処理ブロックを対象として、前記所定のデータ処理を行う場合において、
前記データブロックの行方向の境界線の長さa、
前記処理ブロックの行方向の長さb、
および前記データブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、
または、
前記データブロックの列方向の境界線の長さa、
前記処理ブロックの列方向の長さb、
および前記データブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量c
は、式b≦c≦a−bを満たす
ことを特徴とする記憶制御方法。 - 1つのワード線上の複数のメモリセルに対して、データを同時に読み書きする記憶装置に、2次元のデータである2次元データを記憶させる記憶制御処理を、コンピュータに行わせるプログラムであって、
前記2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得ステップと、
前記記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、前記データブロック単位の2次元データを記憶させる記憶選択ステップと
を備え、
所定のデータ処理を行うデータ処理装置が、前記記憶装置に記憶された前記2次元データの矩形状の処理ブロックを対象として、前記所定のデータ処理を行う場合において、
前記データブロックの行方向の境界線の長さa、
前記処理ブロックの行方向の長さb、
および前記データブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、
または、
前記データブロックの列方向の境界線の長さa、
前記処理ブロックの列方向の長さb、
および前記データブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量c
は、式b≦c≦a−bを満たす
ことを特徴とするプログラム。 - 1つのワード線上の複数のメモリセルに対して、データを同時に読み書きする記憶装置に、2次元のデータである2次元データを記憶させる記憶制御処理を、コンピュータに行わせるプログラムが記録されている記録媒体であって、
前記2次元データを、矩形状のデータブロックであって、その頂点が、隣接する複数のデータブロックのうちの少なくとも1つデータブロックの頂点と一致せず、その列方向の境界線と、隣接する行のデータブロックの列方向の境界線とがずれているか、または、行方向の境界線と、隣接する列のデータブロックの行方向の境界線とがずれているデータブロックに分割した、そのデータブロック単位の2次元データを取得する取得ステップと、
前記記憶装置におけるワード線を選択することにより、そのワード線上のメモリセルに、前記データブロック単位の2次元データを記憶させる記憶選択ステップと
を備え、
所定のデータ処理を行うデータ処理装置が、前記記憶装置に記憶された前記2次元データの矩形状の処理ブロックを対象として、前記所定のデータ処理を行う場合において、
前記データブロックの行方向の境界線の長さa、
前記処理ブロックの行方向の長さb、
および前記データブロックの列方向の境界線と、隣接する行のデータブロックの列方向の境界線との行方向のずれ量c、
または、
前記データブロックの列方向の境界線の長さa、
前記処理ブロックの列方向の長さb、
および前記データブロックの行方向の境界線と、隣接する列のデータブロックの行方向の境界線との列方向のずれ量c
は、式b≦c≦a−bを満たす
プログラムが記録されている
ことを特徴とする記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002023699A JP4058671B2 (ja) | 2002-01-31 | 2002-01-31 | 記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002023699A JP4058671B2 (ja) | 2002-01-31 | 2002-01-31 | 記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003223358A JP2003223358A (ja) | 2003-08-08 |
JP4058671B2 true JP4058671B2 (ja) | 2008-03-12 |
Family
ID=27746334
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002023699A Expired - Fee Related JP4058671B2 (ja) | 2002-01-31 | 2002-01-31 | 記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4058671B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7085172B2 (en) * | 2004-01-05 | 2006-08-01 | Sony Corporation | Data storage apparatus, data storage control apparatus, data storage control method, and data storage control program |
WO2016063716A1 (ja) * | 2014-10-24 | 2016-04-28 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システムおよびメモリの制御方法 |
-
2002
- 2002-01-31 JP JP2002023699A patent/JP4058671B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003223358A (ja) | 2003-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100655837B1 (ko) | 데이터 처리 장치, 데이터 처리 방법, 및 그에 대한 기록매체 | |
KR100746839B1 (ko) | 데이터 처리 장치, 데이터 처리 방법, 학습 장치, 학습방법, 및 매체 | |
JP4126709B2 (ja) | 画像処理装置および画像処理方法 | |
US20100202711A1 (en) | Image processing apparatus, image processing method, and program | |
US7876323B2 (en) | Display apparatus and display method, learning apparatus and learning method, and programs therefor | |
US20070263925A1 (en) | Data conversion device, data conversion method, learning device, learning method, program, and recording medium | |
JP4238516B2 (ja) | データ変換装置およびデータ変換方法、学習装置および学習方法、並びにプログラムおよび記録媒体 | |
JP2000090256A (ja) | 記憶装置、並びに書き込み方法および読み出し方法 | |
JP5316385B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP4058671B2 (ja) | 記憶制御装置および記憶制御方法、並びにプログラムおよび記録媒体 | |
JP2001222702A (ja) | 画像処理装置および画像処理方法、並びに記録媒体 | |
JP2001084368A (ja) | データ処理装置およびデータ処理方法、並びに媒体 | |
JP4105257B2 (ja) | 記憶装置および記憶方法 | |
JP4442076B2 (ja) | データ変換装置およびデータ変換方法、学習装置および学習方法、並びにプログラムおよび記録媒体 | |
JP4556694B2 (ja) | 符号化装置および方法、記録媒体、プログラム、並びに画像処理システム | |
JP2003316760A (ja) | データ変換装置およびデータ変換方法、学習装置および学習方法、並びに記録媒体 | |
JP4395677B2 (ja) | 学習装置および学習方法、並びに記録媒体 | |
JP4057503B2 (ja) | 解像度変換用フィルタ係数決定方法,画像解像度変換方法,画像解像度変換装置,映像再符号化方法,映像再符号化装置,解像度変換用フィルタ係数決定プログラム,画像解像度変換プログラム,映像再符号化プログラムおよびそれらのプログラムを記録した記録媒体 | |
JP4622762B2 (ja) | 画像データ圧縮・復元方法 | |
JP2000348019A (ja) | データ処理装置およびデータ処理方法、並びに媒体 | |
JP2007288761A (ja) | 画像配信システム、画像処理装置および方法、配信装置および方法、並びにプログラム | |
JP4055203B2 (ja) | データ処理装置およびデータ処理方法、記録媒体、並びにプログラム | |
JP2008118519A (ja) | 画像変換装置及び画像変換方法、学習装置及び学習方法、並びにプログラム | |
JP3862418B2 (ja) | 画像復号化方法および装置並びに画像復号化方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読取り可能な記録媒体 | |
JP4154647B2 (ja) | データ処理装置およびデータ処理方法、並びにプログラムおよび記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041227 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070830 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070903 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071102 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071122 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071205 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101228 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111228 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121228 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131228 Year of fee payment: 6 |
|
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 |