(57)【要約】  タップ付き遅延線における３個のタップから出力されるデータを“−１，ｍ，−１”の比率の数値列より成るフィルタ係数によりそれぞれ数倍するように成された３タップＦＩＲ演算部２と、タップ付き遅延線におけるｎ個のタップから出力されるデータを所定の数値列より成るフィルタ係数によりそれぞれ数倍するように成されたｎタップＦＩＲ演算部３とを備え、ｍおよびｎの値を変えることにより、様々な係数列を用いた積和演算により補間値を求めることができるようにするとともに、３タップＦＩＲ演算部２は常に３つの値のみを用いた積和演算により補間値を求めることができるようにして、回路規模を小さくし、かつ、演算処理を簡素化して高速な補間処理を実現する。【特許請求の範囲】
【請求項１】
入力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線における３個のタップから出力されるデータを、“−１，ｍ，−１”（ｍは任意の数）の比率の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された３タップＦＩＲ演算部と、
上記３タップＦＩＲ演算部の出力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線におけるｎ個（ｎは自然数）のタップから出力されるデータを、“１”を（ｎ−１）回移動平均演算して得られる数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成されたｎタップＦＩＲ演算部とを備えたことを特徴とする補間処理回路。
【請求項２】
入力された強調係数α（αは任意の数）に基づいて、上記３タップＦＩＲ演算部における上記“−１，ｍ，−１”の比率の数値列より成るフィルタ係数に対して“−１＋ｋα，ｍ−２ｋα，−１＋ｋα”（ｋは任意の数）という関係の強調演算を行う強調演算部を備えたことを特徴とする請求の範囲第１項に記載の補間処理回路。
【請求項３】
入力された強調係数α（αは任意の数）に基づいて、上記３タップＦＩＲ演算部から順次出力される３個のデータ“ｘ，ｙ，ｚ”に対して“ｘ＋ｋα，ｙ−２ｋα，ｘ＋ｋα”（ｋは任意の数）という関係の強調演算を行う強調演算部を備えたことを特徴とする請求の範囲第１項に記載の補間処理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は補間処理回路に関し、特に、複数の遅延器から成るタップ付き遅延線における各タップの信号を、与えられるフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するタイプのＦＩＲデジタルフィルタを利用した補間処理回路に用いて好適なものである。
【背景技術】
【０００２】
従来、テレビジョン画像の品質を向上させる手法として、画素数を補間によって増やすことにより、水平方向および垂直方向の解像度を上げる手法が知られている。ここで、プロセッサ等による演算処理を行わずに、簡単な構成のハードウェアによって高速に水平方向の補間処理と垂直方向の補間処理とを行えるようにした画像処理回路が提案されている（例えば、特許文献１参照）。
特開２０００−１４８０６１号公報
この特許文献１に記載の画像処理回路では、サンプリング周波数がライン周波数の整数倍の画像において、着目画素を挟んで斜め方向の最近接位置に配置された２つの近接画素を結ぶ直線上の補間画素の画素値を、着目画素および２つの近接画素の各画素値を平均化して求めている。すなわち、補間処理を行うために３つの画素値のみを用い、しかも簡単な移動平均値算出によって補間画素の画素値を求めることができるようにしている。
具体的には、着目画素の画素値をａ、その周辺に位置する４つの近接画素の画素データを周回方向に沿って順番にｂ，ｃ，ｄ，ｅとしたときに、４つの補間画素の画素値ａ０，ａ１，ａ２，ａ３は、ａ０＝（８ａ＋ｂ−ｅ）／８、ａ１＝（８ａ＋ｃ−ｄ）／８、ａ２＝（８ａ＋ｄ−ｃ）／８、ａ３＝（８ａ＋ｅ−ｂ）／８、によって求めている。これにより、処理の高速化が可能であり、簡単な回路構成によって水平解像度と垂直解像度とをそれぞれ２倍に上げることができる。
【発明の開示】
【０００３】
しかしながら、上記特許文献１に記載の技術では、３つの近傍画素値のみを用いて簡単な移動平均演算によって補間画素の画素値を求めることができるのは、上述した特殊な係数の組｛−１，８，１｝を用いた移動平均演算を行う場合に限定される。
この特殊な係数の組｛−１，８，１｝は、ＷＯ２００４／０７９９０５号公報の図１に記載されているフィルタ係数列｛−１，１，８，８，１，−１｝の一部に相当する。このフィルタ係数列の移動平均演算は、図１（ａ）のように表される。図１（ａ）から分かるように、｛−１，１，８，８，１，−１｝という係数列を利用して補間演算をする場合には、常に３つの係数の組｛−１，８，１｝を用いて、つまり３つの画素値のみを用いて移動平均演算により補間画素値を求めることができる。
これに対して、例えば｛−１，０，９，１６，９，０，−１｝という係数列を用いて補間演算をすることを考える。この係数列を用いた移動平均演算は、図１（ｂ）のように表される。図１（ｂ）から分かるように、｛−１，０，９，１６，９，０，−１｝という係数列を用いて補間演算をする場合には、４つの係数の組｛−１，９，９，−１｝を用いて、つまり４つの画素値を用いた移動平均演算により補間画素値を求めなければならないことになる。
ＷＯ２００４／０７９９０５号公報の図１に示される他の係数列を用いて移動平均演算を行う場合には、もっと多い画素値が必要になることもある。ある着目画素とその周辺にある複数の近傍画素とを含む各画素値を移動平均演算に使うためには、容量の大きなフレームメモリが必要になる。そして、そのフレームメモリは、移動平均演算に用いる画素値の数だけ必要となり、その分回路規模が大きくなってしまうという問題があった。また、演算処理の内容も複雑になって補間処理が高速にできなくなってしまうという問題もあった。
本発明は、このような問題を解決するために成されたものであり、様々な係数列を用いた補間演算を行うに当たって、処理の高速化が可能であり、簡単な回路構成によってこれを実現することができるようにすることを目的とする。
上記した課題を解決するために、本発明の補間処理回路では、タップ付き遅延線における３個のタップから出力されるデータを“−１，ｍ，−１”の比率の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された３タップＦＩＲ演算部と、タップ付き遅延線におけるｎ個のタップから出力されるデータを、“１”を（ｎ−１）回移動平均演算して得られる数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成されたｎタップＦＩＲ演算部とを備え、３タップＦＩＲ演算部の後段にｎタップＦＩＲ演算部を縦続接続している。
本発明の他の態様では、入力された強調係数αに基づいて、３タップＦＩＲ演算部における“−１，ｍ，−１”の比率の数値列より成るフィルタ係数に対して“−１＋ｋα，ｍ−２ｋα，−１＋ｋα”（ｋは任意の数）という関係の強調演算を行う強調演算部を備えている。強調演算部は、３タップＦＩＲ演算部から順次出力される３個のデータ“ｘ，ｙ，ｚ”に対して“ｘ＋ｋα，ｙ−２ｋα，ｚ＋ｋα”（ｋは任意の数）という関係の強調演算を行うものであっても良い。
上記のように構成した本発明によれば、３タップＦＩＲ演算部とｎタップＦＩＲ演算部との組み合わせによって、様々な係数列を用いた積和演算により補間値を求めることができる。すなわち、ｍおよびｎの値を変えることにより、特殊な係数列のみならず、様々な係数列を用いた積和演算により補間値を求めることができる。
しかも、入力段における３タップＦＩＲ演算部は常に３つの値のみを用いた積和演算により補間値を求めることができるので、その演算回路は小規模で済む。さらに、遅延のために容量の大きなメモリが必要であったとしても、それは最大でも３個で済む。そのため、回路規模を小さくすることができる。また、使用するタップ数が極めて少ないので演算処理も簡素になり、高速な補間処理を実現することができる。
本発明の他の特徴によれば、３タップＦＩＲ演算部において積和演算を行う際に用いる３つの値に対する強調度を強調係数αによって簡単に変えることができ、より豊富な係数列を用いた積和演算により補間値を容易に求めることができる。
【図面の簡単な説明】
【０００４】
図１は、係数列の移動平均演算の内容を示す図である。
図２は、第１の実施形態による補間処理回路の一構成例を示す図である。
図３は、第１〜第３の実施形態によるｎタップＦＩＲ演算部に適用されるフィルタ係数の例を示す図である。
図４は、図２に示す補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。
図５は、第１の実施形態による補間処理回路の他の構成例を示す図である。
図６は、図５に示す補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。
図７は、第１の実施形態による補間処理回路の他の構成例を示す図である。
図８は、図７に示す補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。
図９は、第１〜第３の実施形態による補間処理回路で用いられる係数列の例を示す図である。
図１０は、図９に示した係数列のインパルス応答を示す図である。
図１１は、第２の実施形態による補間処理回路の一構成例を示す図である。
図１２は、図１１に示す補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。
図１３は、図１１に示す補間処理回路に矩形波を入力したときに得られる応答波形の強調特性を示す図である。
図１４は、図１１に示す補間処理回路におけるｎタップＦＩＲ演算部の構成を変えて振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。
図１５は、第３の実施形態による２次元補間処理回路の一構成例を示す図である。
図１６は、第３の実施形態による２次元補間処理回路で用いる各種クロックを説明するための図である。
図１７は、第３の実施形態による２次元補間処理回路で補間演算に用いる入力データの位置関係を示す図である。
図１８は、オーバーサンプル入力しない場合の演算内容の一例を示す図である。
【発明を実施するための最良の形態】
【０００５】
（第１の実施形態）
以下、本発明の一実施形態を図面に基づいて説明する。図２は、第１の実施形態による補間処理回路の構成例を示す図である。図２に示すように、第１の実施形態による補間処理回路は、Ｄ型フリップフロップ１と、３タップＦＩＲ演算部２と、ｎタップＦＩＲ演算部３とを備えて構成されている。
入力段のＤ型フリップフロップ１は、入力データを１クロックＣＫ分だけ保持するバッファとして機能する。３タップＦＩＲ演算部２は、Ｄ型フリップフロップ１から出力される入力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線における３個のタップから出力されるデータを、“−１，ｍ，−１”（ｍは任意の数）の比率の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力する。
すなわち、３タップＦＩＲ演算部２は、縦続接続された２個のＤ型フリップフロップ２ａ−１〜２ａ−２と、３個の係数器２ｂ−１〜２ｂ−３と、２個の加算器２ｃ−１〜２ｃ−２とにより構成されている。２個のＤ型フリップフロップ２ａ−１〜２ａ−２は、入力データを１クロック（２ＣＫ）ずつ順次遅延させる。クロック（２ＣＫ）は、クロックＣＫに対して２倍の周波数を持つクロックである。入力データを１クロック（２ＣＫ）ずつ順次遅延させるのは、入力データを２倍にオーバーサンプリングすることを意味する。
３個の係数器２ｂ−１〜２ｂ−３は、各Ｄ型フリップフロップ２ａ−１〜２ａ−２の入出力タップから取り出した３個のデータに対し、“−１，ｍ，−１”の比率の数値列より成るフィルタ係数をそれぞれ乗算する。２個の加算器２ｃ−１〜２ｃ−２は、各係数器２ｂ−１〜２ｂ−３から出力されるデータを全て加算して出力する。なお、図２では、係数器２ｂ−１〜２ｂ−３におけるフィルタ係数の例として、｛−１，４，−１｝の値を用いている。
ｎタップＦＩＲ演算部３は、３タップＦＩＲ演算部２の出力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線におけるｎ個（ｎは自然数）のタップから出力されるデータを、所定の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力する。ここで、上記所定の数値列は、“１”を（ｎ−１）回移動平均演算して得られる数値列であることが好ましい。図２の例では、“１”を２回（ｎ＝３）移動平均演算して得られる数値列｛０．２５，０．５，０．２５｝をフィルタ係数として用いている（図３参照）。
ここで、ｎ列目の数値列を求める際の移動平均演算とは、（ｎ−１）列目の数値列とこれを１サンプル（１クロック）ずらした数値列とを重み付け加算するという演算（重みの合計値は“１”）を言う。すなわち、移動平均演算によってｎ列目の上からｊ番目のフィルタ係数を求める際には、（ｎ−１）列目のデータ列のうち上からｊ番目のデータと、これを１サンプルずらしたデータ列の上からｊ番目のデータとを重み付け加算する。
例えば、２列目の上から１番目の数値“０．５”は、１列目の１番目の元データ“１”とその１サンプル前の前データ“０”とを加算して２で割ることによって得られ、２番目の数値“０．５”は、１列目の２番目の元データ“０”とその１サンプル前の前データ“１”とを加算して２で割ることによって得られる。また、３列目の上から１番目の数値“０．２５”は、２列目の１番目の元データ“０．５”とその１サンプル前の前データ“０”とを加算して２で割ることによって得られ、２番目の数値“０．５”は、２列目の２番目の元データ“０．５”とその１サンプル前の前データ“０．５”とを加算して２で割ることによって得られ、３番目の数値“０．２５”は、２列目の２番目の元データ“０”とその１サンプル前の前データ“０．５”とを加算して２で割ることによって得られる。
ｎタップＦＩＲ演算部３は、縦続接続された２個のＤ型フリップフロップ３ａ−１〜３ａ−２と、３個の係数器３ｂ−１〜３ｂ−３と、２個の加算器３ｃ−１〜３ｃ−２とにより構成されている。２個のＤ型フリップフロップ３ａ−１〜３ａ−２は、３タップＦＩＲ演算部２から入力されるデータを１クロック（２ＣＫ）ずつ順次遅延させる。３個の係数器３ｂ−１〜３ｂ−３は、各Ｄ型フリップフロップ３ａ−１〜３ａ−２の入出力タップから取り出した３個のデータに対し、｛０．２５，０．５，０．２５｝のフィルタ係数をそれぞれ乗算する。２個の加算器３ｃ−１〜３ｃ−２は、各係数器３ｂ−１〜３ｂ−３から出力されるデータを全て加算して出力する。
図４は、図２に示した補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。図４（ａ）に示すように、ユニットパルスが３タップＦＩＲ演算部２にオーバーサンプリングして入力されると、その入力データ“１，１”とフィルタ係数｛−１，４，−１｝との間で積和演算が行われ、｛−１，３，３，−１｝という４個の数値列が出力される。
ここで行う積和演算を具体的に示すと、図４（ｂ）に示すようなものである。すなわち、３タップＦＩＲ演算部２のフィルタ係数については、｛−１，４，−１｝の３個の数値列を常に固定的に乗加算の対象とする。一方、入力データについては、｛１，１｝の数値列の前後に“０”の数値列があるものと仮定し、この０値も含めて３個（３タップＦＩＲ演算部２のフィルタ係数の数と同数）の数値列を積和演算の対象とする。３タップＦＩＲ演算部２の出力データのｉ番目（ｉ＝１，２，３，４）の数値を求める際には、入力データのｉ番目の数値を含めてそれより前にある３個の数値列を乗加算の対象とする。
例えば、３タップＦＩＲ演算部２の出力データの１番目の数値を求める際は、３タップＦＩＲ演算部２の３個のフィルタ係数｛−１，４，−１｝（符号３１で示す点線で囲った配列）と、入力データの１番目の数値を含めてそれより前にある３個の数値列｛０，０，１｝（符号３２で示す点線で囲った配列）とを対象として、配列の対応する要素の積を合計する演算を行う。すなわち、この場合の演算結果は、（０×（−１）＋０×４＋１×（−１））＝−１となる。
また、３タップＦＩＲ演算部２の出力データの２番目の数値を求める際には、３タップＦＩＲ演算部２の３個のフィルタ係数｛−１，４，−１｝（符号３１で示す点線で囲った配列）と、入力データの２番目の数値を含めてそれより前にある３個の数値列｛０，１，１｝（符号３３で示す点線で囲った配列）とを対象として、配列の対応する要素の積を合計する演算を行う。すなわち、この場合の演算結果は、（０×（−１）＋１×４＋１×（−１））＝３となる。同様にして、３タップＦＩＲ演算部２の出力データの３番目の数値は（１×（−１）＋１×４＋０×（−１））＝３、４番目の数値は（１×（−１）＋０×４＋０×（−１））＝−１と求められる。
また、この４個のデータ値｛−１，３，３，−１｝がｎタップＦＩＲ演算部３に入力されると、その４個のデータ値とフィルタ係数｛０．２５，０．５，０．２５｝との間で積和演算が行われ、｛−１，１，８，８，１，−１｝の比率から成る数値列が出力される（図４では、実際に得られる数値列を４倍して整数化して示している）。ここで行う積和演算も、図４（ｂ）に示したのと同様である。
すなわち、ｎタップＦＩＲ演算部３のフィルタ係数については、｛０．２５，０．５，０．２５｝の３個の数値列を常に固定的に乗加算の対象とする。一方、３タップＦＩＲ演算部２の出力データについては、｛−１，３，３，−１｝の数値列の前後に“０”の数値列があるものと仮定し、この０値も含めて３個（ｎタップＦＩＲ演算部３のフィルタ係数の数と同数）の数値列を積和演算の対象とする。ｎタップＦＩＲ演算部３の出力データのｉ番目の数値を求める際には、３タップＦＩＲ演算部２の出力データのｉ番目の数値を含めてそれより前にある３個の数値列を乗加算の対象とする。
以上から分かるように、図２に示す補間処理回路は、｛−１，１，８，８，１，−１｝という比率の係数列を用いて補間演算を実行する回路（入力データがユニットパルスのときはそのデータ値“１”を補間値｛−１，１，８，８，１，−１｝／４に変えて出力する回路）に相当し、その補間演算の際に用いる入力データは常に３個である。この｛−１，１，８，８，１，−１｝という係数列は、ＷＯ２００４／０７９９０５号公報の図１（本出願において改めて図９に示す）に示されるＬ４ａ３の係数列に相当する。
ここで、ｎタップＦＩＲ演算部３の内部構成を少し変えてみる。例えば、図５に示すように、Ｄ型フリップフロップ、係数器、加算器をそれぞれ１つずつ多くし、縦続接続された３個のＤ型フリップフロップ４ａ−１〜４ａ−３と、４個の係数器４ｂ−１〜４ｂ−４と、３個の加算器４ｃ−１〜４ｃ−３とによりｎタップＦＩＲ演算部４を構成する。そして、４個の係数器４ｂ−１〜４ｂ−４のフィルタ係数として、｛０．１２５，０．３７５，０．３７５，０．１２５｝という数値列を用いるものとする。この数値列は、図３に示すように、“１”を３回（ｎ＝４）移動平均演算して得られる数値列である。
図６は、図５に示す補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。図６に示すように、ユニットパルスが３タップＦＩＲ演算部２にオーバーサンプリングして入力されると、その入力データ“１，１”とフィルタ係数｛−１，４，−１｝との間で積和演算が行われ、｛−１，３，３，−１｝という４個の数値列が出力される。ここまでは、ｎタップＦＩＲ演算部３を用いた図２の場合と同じである。
また、３タップＦＩＲ演算部２から出力された４個のデータ値｛−１，３，３，−１｝が次段のｎタップＦＩＲ演算部４に入力されると、その４個のデータ値とフィルタ係数｛０．１２５，０．３７５，０．３７５，０．１２５｝との間で積和演算が行われ、その結果として｛−１，０，９，１６，９，０，−１｝の比率から成る数値列が出力される（図６では、実際に得られる数値列を８倍して整数化して示している）。
以上から分かるように、図５に示す補間処理回路は、｛−１，０，９，１６，９，０，−１｝という比率の係数列を用いて補間演算をする回路に相当し、その補間演算の際に用いる入力データも、図２に示す補間処理回路と同様に常に３個である。この｛−１，０，９，１６，９，０，−１｝という係数列は、図９に示されるＬ４ａ４の係数列に相当する。したがって、図５に示す補間処理回路を用いれば、図２の場合と同様に３個の入力データ値だけを用いて、図２の場合と異なる係数列に基づく補間演算を行うことができる。
さらに、図７に示すようにｎタップＦＩＲ演算部５を構成した場合を考える。図７の例では、Ｄ型フリップフロップ、係数器、加算器をそれぞれ１つずつ少なくし、１個のＤ型フリップフロップ５ａ−１と、２個の係数器５ｂ−１〜５ｂ−２と、１個の加算器５ｃ−１とによりｎタップＦＩＲ演算部５を構成する。そして、２個の係数器５ｂ−１〜５ｂ−２のフィルタ係数として、｛０．５，０．５｝という数値列を用いるものとする。この数値列は、図３に示すように、“１”を１回（ｎ＝２）移動平均演算して得られる数値列である。
図８は、図７に示す補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。図８に示すように、ユニットパルスが３タップＦＩＲ演算部２にオーバーサンプルして入力されると、その入力データ“１，１”とフィルタ係数｛−１，４，−１｝との間で積和演算が行われ、｛−１，３，３，−１｝という４個の数値列が出力される。ここまでは、ｎタップＦＩＲ演算部３を用いた図２の場合と同じである。
また、３タップＦＩＲ演算部２から出力された４個のデータ値｛−１，３，３，−１｝が次段のｎタップＦＩＲ演算部５に入力されると、その４個のデータ値とフィルタ係数｛０．５，０．５｝との間で積和演算が行われ、その結果として｛−１，２，６，２，−１｝の比率から成る数値列が出力される（図８では、実際に得られる数値列を２倍して整数化して示している）。これから分かるように、図７に示す補間処理回路は、｛−１，２，６，２，−１｝という比率の係数列を用いて補間演算を実行する回路に相当し、その補間演算の際に用いる入力データも常に３個である。
以上詳しく説明したように、第１の実施形態によれば、図９に例示される様々な係数列を用いたデータ補間を、何れの場合も３つの入力データ値のみを用いた積和演算により行うことができる。すなわち、図９に示されるどの係数列を補間演算に利用するときも、３タップＦＩＲ演算部２は固定で常に３つの入力データ値を用いて補間演算をすれば良く、後段のｎタップＦＩＲ演算部のタップ数（ｎの値）およびフィルタ係数値を変えるだけで、様々な係数列による補間を行うことができる。
図１０は、図９に示した係数列のインパルス応答（補間関数の波形）を示す図である。この図１０に示すような波形を有するインパルス応答は、横軸に沿った標本位置が一定の間にあるときにのみ“０”以外の有限な値を有し、それ以外の領域では値が全て“０”となる関数、つまり所定の標本位置において値が“０”に収束する関数である（これを「有限台」の関数と称する）。図９に示すどのフィルタ係数列のインパルス応答も有限台となる。
このような有限台のインパルス応答では、“０”以外の有限の値を有する局所的な領域内のデータだけが意味を持つ。この領域外のデータについては、補間演算の際に本来これを考慮すべきであるのに無視している訳ではなく、理論的に考慮する必要がない。そのため、図９に例示した係数列を補間関数として用いれば、補間関数として従来一般的に用いられてきたｓｉｎｃ関数（±∞で０に収束する）と異なり、得られる補間値に打ち切り誤差が含まれなくなり、正確な補間値を求めることができる。
また、第１の実施形態によれば、ｍの値を変えることで、図９に例示されているものとは異なる様々な係数列を用いたデータ補間も、３つの入力データ値のみを用いた積和演算により行うことができる。ｍの値を変えた場合も、得られる係数列のインパルス応答は有限台となる。したがって、そのような係数列を補間関数として用いることにより、正確な補間値を求めることができる。
また、第１の実施形態によれば、補間値を求めるのに３つの入力データ値のみを用いればよく、補間演算に要求されるタップ数が極めて少なくて済むので、回路規模を小さくすることができる。また、処理が非常に簡素なので、補間処理を高速に行うこともできる。
以上に示した第１の実施形態による補間処理回路は、連続して入力される３つのデータ値から補間値を求めるものとして利用可能である。例えば、テレビジョン画像の品質を向上させるための画像高精細化回路として本実施形態の補間処理回路を用いる場合には、１水平ライン上に連続して存在する３つの画素値を積和演算することによって補間画素値を求めることが可能である。つまり、第１の実施形態による補間処理回路を用いることによって、テレビジョン画像の１次元補間処理を行うことができる。
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。図１１は、第２の実施形態による補間処理回路の構成例を示す図である。図１１に示すように、第２の実施形態による補間処理回路は、Ｄ型フリップフロップ１１と、３タップＦＩＲ演算部１２と、ｎタップＦＩＲ演算部１３と、強調演算部２０とを備えて構成されている。
入力段のＤ型フリップフロップ１１は、入力データを１クロックＣＫ分だけ保持するバッファとして機能する。３タップＦＩＲ演算部１２は、Ｄ型フリップフロップ１１から出力される入力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線における３個のタップから出力されるデータを、“−１，ｍ，−１”（ｍは任意の数）の比率の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力する。
第２の実施形態による３タップＦＩＲ演算部１２は、縦続接続された２個のＤ型フリップフロップ１２ａ−１〜１２ａ−２と、２個の係数器１２ｂ−１〜１２ｂ−２と、２個の加算器１２ｃ−１〜１２ｃ−２とにより構成されている。このように構成した３タップＦＩＲ演算部１２は、第１の実施形態で示した３タップＦＩＲ演算部２と比べて構成が若干異なっているものの、実施する積和演算の内容は全く同じである。
構成上異なっている点は、以下の通りである。すなわち、上述した第１の実施形態では、１段目のＤ型フリップフロップ１２ａ−１の入力タップから出力されるデータおよび２段目のＤ型フリップフロップ１２ａ−２の出力タップから出力されるデータのそれぞれに−１のフィルタ係数を掛けた後、それらの乗算結果を加算していた。これに対して第２の実施形態では、１段目のＤ型フリップフロップ１２ａ−１の入力タップから出力されるデータおよび２段目のＤ型フリップフロップ１２ａ−２の出力タップから出力されるデータを加算器１２ｃ−１にて最初に加算し、その加算結果に対して係数器１２ｂ−１によって−１のフィルタ係数を乗算している。
つまり、図１１に示す係数器１２ｂ−１は、図２に示した２個の係数器２ｂ−１，２ｂ−３を兼用している。このようにすることにより、係数器の使用数を減らすことができ、回路規模を更に小さくすることができる。なお、上述した第１の実施形態において、３タップＦＩＲ演算部２を図１１に示す３タップＦＩＲ演算部１２と同様に構成するようにしても良い。
強調演算部２０は、係数器２０ａ，２０ｂ、減算器２０ｃおよび加算器２０ｄを備えて構成されており、入力された強調係数α（αは任意の数）に基づいて、３タップＦＩＲ演算部１２における“−１，ｍ，−１”の比率の数値列より成るフィルタ係数に対して“−１＋α／８，ｍ−α／４，−１＋α／８”という関係の強調演算を行う。この強調演算の意味は、両側の係数値に対して同じ値（上記の場合はα／８）を加算し、その加算した値の合計（上記の場合はα／４）を真中の係数値から減算するというものである。こうすることにより、強調前と強調後で係数列の合計値が変わらないようにする（−１＋ｍ＋（−１）＝ｍ−２、（−１＋α／８）＋（ｍ−α／４）＋（−１＋α／８）＝ｍ−２）。
強調演算部２０の構成において、係数器２０ａは、入力される強調係数αに対して１／４の係数を乗算する。また、減算器２０ｃは、“ｍ”に相当するフィルタ係数を乗算する係数器１２ｂ−２より出力されるデータから、係数器２０ａより出力されるデータを減算することにより、ｍ−α／４の演算結果を得る。また、係数器２０ｂは、入力される強調係数αに対して１／８の係数を乗算する。また、加算器２０ｄは、“−１，ｍ，−１”のうち“−１，−１”に相当するフィルタ係数を乗算する係数器１２ｂ−１より出力されるデータに対して、係数器２０ｂより出力されるデータを加算することにより、−１＋α／８の演算結果を得る。
ｎタップＦＩＲ演算部１３は、強調演算部２０によって強調係数αに基づく強調演算が施された上で３タップＦＩＲ演算部１２から出力されるデータを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線における４個のタップから出力されるデータを、図３に示す｛０．１２５，０．３７５，０．３７５，０．１２５｝の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力する。
このｎタップＦＩＲ演算部１３の構成は、図５に示したｎタップＦＩＲ演算部４と全く同じである。なお、このｎタップＦＩＲ演算部１３に関しても、３タップＦＩＲ演算部１２と同様にフィルタ係数の加算を先に行ってから乗算する構成とすることにより、係数器の使用数を減らすことが可能である。また、上述した第１の実施形態において、ｎタップＦＩＲ演算部３，４，５に関しても３タップＦＩＲ演算部１２と同様に係数器を１つ減らせる構成としても良い。
図１２は、図１１に示した補間処理回路に振幅値“１”のユニットパルスを入力した場合の演算内容を示す図である。ここでは、強調係数αの値を“１”としている。図１２に示すように、強調係数αの値を“１”とした場合、３タップＦＩＲ演算部１２におけるフィルタ係数｛−１，４，−１｝は“−１＋α／８，４−α／４，−１＋α／８”という関係で強調演算され、｛−０．８７５，３．７５，−０．８７５｝となる。
３タップＦＩＲ演算部１２では、その強調されたフィルタ係数｛−０．８７５，３．７５，−０．８７５｝とオーバーサンプリング入力データ“１，１”との間で積和演算が行われ、｛−０．８７５，２．８７５，２．８７５，−０．８７５｝という４個の数値列が出力される。この４個のデータ値がｎタップＦＩＲ演算部１３に入力されると、その４個のデータ値とフィルタ係数｛０．１２５，０．３７５，０．３７５，０．１２５｝との間で積和演算が行われ、｛−０．８７５，０．２５，８．８７５，１５．５，８．８７５，０．２５，−０．８７５｝の比率から成る数値列が出力される。なお、α＝０とすると、図６と同様の｛−１，０，９，１６，９，０，−１｝の比率から成る数値列が得られる。
以上から分かるように、図１１に示す補間処理回路において、α＝１とした場合は、｛−０．８７５，０．２５，８．８７５，１５．５，８．８７５，０．２５，−０．８７５｝という比率の係数列を用いて補間演算を実行することに相当する。ここでは図示を省略するが、強調係数αの値を変えると、得られる係数列も変わる。このように、第２の実施形態によれば、強調係数αの値を変えることにより、補間処理回路の回路構成は全く変えることなく、様々な係数列を用いたデータ補間を、何れの場合も３つの入力データ値のみを用いた積和演算により行うことができる。
図１３は、図１１に示す補間処理回路に矩形波を入力したときに得られる応答波形の強調特性を示す図であり、（ａ）は応答波形の全体を示し、（ｂ）はその一部を拡大して示している。図１３に示すように、強調係数αの値が“０”のときは、オーバーシュートもアンダーシュートも殆ど存在しない矩形波の応答が得られる。これに対して、強調係数αの値を“０”より大きくしていくと、オーバーシュートやアンダーシュートが生じる。オーバーシュートやアンダーシュートの大きさは、強調係数αの値が大きいほど大きくなる。
なお、上述したように、“−１，ｍ，−１”という数値列は、そのインパルス応答が有限台となっている。このような特性を有する数値列に対して強調係数αにより強調演算を行って得られる数値列“−１＋α／８，ｍ−α／４，−１＋α／８”のインパルス応答は、その振幅が強調係数αの値に応じて変化するが（図１３参照）、有限台であることに変わりはない。
第２の実施形態においても、ｎタップＦＩＲ演算部１３の構成を変えることによって、補間演算に用いる係数列を変えることができる。その際、３タップＦＩＲ演算部１２は固定で、常に３つの入力データ値のみを用いて様々な係数列による補間を行うことができる。図１４に、ｎタップＦＩＲ演算部１３の構成を図２と同様のｎタップＦＩＲ演算部３、図７と同様のｎタップＦＩＲ演算部５に変えた場合の演算内容を示す。この図１４の例でも、強調係数αの値は“１”としている。
図１４（ａ）はｎタップＦＩＲ演算部３、図１４（ｂ）はｎタップＦＩＲ演算部５に変えた場合の演算内容を示す。図１４（ａ）のように、図１１に示す補間処理回路においてｎタップＦＩＲ演算部１３をｎタップＦＩＲ演算部３に変え、α＝１とした場合は、｛−０．８７５，１．１２５，７．７５，７．７５，１．１２５，−０．８７５｝という係数列を用いて補間演算をすることができる。また、図１４（ｂ）のように、図１１に示す補間処理回路においてｎタップＦＩＲ演算部１３をｎタップＦＩＲ演算部５に変え、α＝１とした場合は、｛−０．８７５，２，５．７５，２，−０．８７５｝という係数列を用いて補間演算をすることができる。
以上詳しく説明したように、第２の実施形態によれば、様々な係数列を用いたデータ補間を、何れの場合も３つの入力データ値のみを用いた積和演算により行うことができる。また、３タップＦＩＲ演算部において積和演算を行う際に用いる３つの値に対する強調度を強調係数αによって簡単に変えることができ、より豊富な係数列を用いた積和演算により補間値を容易に求めることができる。さらに、タップ数が極めて少なくて済むので、回路規模を小さくすることができる。また、処理が非常に簡素なので、補間処理を高速に行うこともできる。
なお、ここでは、３タップＦＩＲ演算部１２における“−１，ｍ，−１”の比率の数値列より成るフィルタ係数に対して“−１＋α／８，ｍ−α／４，−１＋α／８”という関係の強調演算を行う例について説明したが、本発明はこれに限定されない。強調前と強調後で係数列の合計値が変わらなければ、上記以外の演算によって強調を行うようにしても良い。例えば、“−１＋ｋα，ｍ−２ｋα，−１＋ｋα”（ｋは任意の値）という関係の強調演算を行うことが可能である。また、３タップＦＩＲ演算部から順次出力される３個のデータを“ｘ，ｙ，ｚ”とした場合に、その出力データ“ｘ，ｙ，ｚ”に対して“ｘ＋ｋα，ｙ−２ｋα，ｚ＋ｋα”という関係の強調演算を行うようにしても良い。
（第３の実施形態）
次に、本発明の第３の実施形態について説明する。上述した第１および第２の実施形態では、連続して入力される３つのデータ値から補間値を求める１次元補間処理回路の例を示した。以下に説明する第３の実施形態は、離散的な３つのデータ値から補間値を求める２次元補間処理回路の例を示すものである。例えば、テレビジョン画像の品質を向上させるための画像高精細化回路として本実施形態の補間処理回路を用いる場合には、３つの水平ライン上に離散して存在する３つの画素値から補間画素値を求めることができる。
図１５は、第３の実施形態による２次元補間処理回路の構成例を示す図で、テレビジョン画像の高精細化に応用した場合の回路構成例を示す図である。図１６は、第３の実施形態による２次元補間処理回路で用いる各種クロックを説明するための図である。また、図１７は、第３の実施形態による２次元補間処理回路で補間演算に用いる入力データの位置関係を示す図である。
図１５に示すように、第３の実施形態による２次元補間処理回路は、タップ付き遅延線２１と、Ｄ型フリップフロップ（バッファ）１１−１，１１−２と、３タップＦＩＲ演算部１２−１，１２−２と、ｎタップＦＩＲ演算部１３−１，１３−２と、強調演算部２０−１，２０−２と、３つのデータセレクタ２２，２３，２４と、１Ｈ（１水平ライン）遅延回路２５とを備えて構成されている。
タップ付き遅延線２１は、複数の遅延器を備えて構成されており、入力されたデータを順次遅延させる。そして、その遅延線上にある所定の複数のタップからデータを出力するように成されている。タップ付き遅延線２１から取り出されるデータ値は、図１７に示す画素位置ｅを着目画素とした場合に、当該着目画素ｅおよびその着目画素ｅを挟んで斜め方向の最近接位置に配置された４つの近接画素ａ，ｃ，ｇ，ｉの画素値である。タップ付き遅延線２１の遅延量は、所定のタップから画素値ａ，ｃ，ｅ，ｇ，ｉのデータが取り出されるように調整されている。
タップ付き遅延線２１から取り出されるデータ値のうち、画素値ａ，ｅ，ｉは第１のデータセレクタ２２に入力され、１つずつ順次にＤ型フリップフロップ１１−１を介して３タップＦＩＲ演算部１２−１に出力される。また、画素値ｃ，ｅ，ｇは第２のデータセレクタ２３に入力され、１つずつ順次に１Ｈ遅延回路２５およびＤ型フリップフロップ１１−２を介して３タップＦＩＲ演算部１２−２に出力される。
Ｄ型フリップフロップ１１−１，１１−２は、図１１に示したＤ型フリップフロップ１１と同じ機能を有するものである。３タップＦＩＲ演算部１２−１，１２−２は、図１１に示した３タップＦＩＲ演算部１２と同じ機能を有するものである。ｎタップＦＩＲ演算部１３−１，１３−２は、図１１に示したｎタップＦＩＲ演算部１３と同じ機能を有するものである。また、強調演算部２０−１，２０−２は、図１１に示した強調演算部２０と同じ機能を有するものである。したがって、これらの詳細な説明は割愛する。
なお、ここではｎタップＦＩＲ演算部１３−１，１３−２を用いる例（ｎ＝４の例）について示しているが、図２に示したｎタップＦＩＲ演算部３（ｎ＝３）や、図７に示したｎタップＦＩＲ演算部３（ｎ＝２）、あるいは図示していない他のｎの値によるｎタップＦＩＲ演算部を用いるようにしても良い。
第３のデータセレクタ２４は、第１のｎタップＦＩＲ演算部１３−１から出力されるデータと、第２のｎタップＦＩＲ演算部１３−２から出力されるデータとの何れかを選択して出力する。具体的には、奇数ラインの奇数クロックおよび偶数ラインの奇数クロックでは第１のｎタップＦＩＲ演算部１３−１から出力されるデータを選択し、奇数ラインの偶数クロックおよび偶数ラインの偶数クロックでは第２のｎタップＦＩＲ演算部１３−２から出力されるデータを選択する。
このように構成した第３の実施形態による２次元補間処理回路も、基本的には第１の実施形態と同様に、タップ付き遅延線、３タップＦＩＲ演算部およびｎタップＦＩＲ演算部によって構成することができる。したがって、ｍ，ｎの値を変えることにより、様々な係数列を用いた２次元画像補間処理を、何れの場合も３つの入力データ値のみを用いた積和演算により行うことができる。また、３タップＦＩＲ演算部において積和演算を行う際に用いる３つの値に対する強調度を強調係数αによって簡単に変えることができ、より豊富な係数列を用いた積和演算により補間値を容易に求めることができる。さらに、タップ数が極めて少なくて済むので、回路規模を小さくすることができる。また、処理が非常に簡素なので、補間処理を高速に行うこともできる。
なお、上記第１〜第３の実施形態では、入力データを２倍にオーバーサンプルして補間する例について説明したが、本発明はこれに限定されない。例えば、４倍、８倍、・・・などのように２倍以上にオーバーサンプルして補間するようにしても良いし、逆にオーバーサンプルせずに補間するようにしても良い。
入力データをオーバーサンプルしない場合でも、図９に例示する数値列を利用した補間演算を実現することが可能である。図１８は、｛−１，０，９，１６，９，０，−１｝の比率から成る数値列を利用した補間演算を実現する場合の演算内容を示している。図１８から分かるように、図２等に示した３タップＦＩＲ演算部２と、ｎ＝５としたｎタップＦＩＲ演算部（本明細書中には図示していない）とを縦続接続し、ｎタップＦＩＲ演算部のフィルタ係数として｛０．０６２５，０．２５，０．３７５，０．２５，０．０６２５｝の数値列を用いれば、｛−１，０，９，１６，９，０，−１｝の比率から成る数値列を利用した補間演算を行うことができる。
ただし、この図１８と図６とを比較すれば明らかなように、入力データを２倍にオーバーサンプリングした方が、ｎタップＦＩＲ演算部で用いるフィルタ係数の数を少なくすることができる。これにより、補間演算に要求されるタップ数がより少なくて済み、回路規模をより小さくすることができるので、好ましい。
また、上記第１〜第３の実施形態では、テレビジョン画像の品質を向上させるための画像高精細化回路として本実施形態の補間処理回路を応用する例について説明したが、応用例はこれに限定されない。例えば、音声信号の品質を向上させるための回路や、圧縮されたデータを伸長するための回路などにも応用することが可能である。この他にも、データ補間を必要とする回路にはすべて応用が可能である。
その他、上記第１〜第３の実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【産業上の利用可能性】
【０００６】
本発明は、複数の遅延器から成るタップ付き遅延線における各タップの信号を与えられるフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するタイプのＦＩＲデジタルフィルタを利用した補間処理回路に有用である。本発明の補間処理回路は、データ補間を必要とする回路や装置にはすべて適用することが可能である。
【図１】
2006134688.tif 000002
【図２】
2006134688.tif 000003
【図３】
2006134688.tif 000004
【図４】
2006134688.tif 000005
【図５】
2006134688.tif 000006
【図６】
2006134688.tif 000007
【図７】
2006134688.tif 000008
【図８】
2006134688.tif 000009
【図９】
2006134688.tif 000010
【図１０】
2006134688.tif 000011
【図１１】
2006134688.tif 000012
【図１２】
2006134688.tif 000013
【図１３】
2006134688.tif 000014
【図１４】
2006134688.tif 000015
【図１５】
2006134688.tif 000016
【図１６】
2006134688.tif 000017
【図１７】
2006134688.tif 000018
【図１８】
2006134688.tif 000019
【手続補正書】
【提出日】平成18年7月21日(2006.7.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求の範囲
【補正方法】変更
【補正の内容】
【書類名】請求の範囲
【請求項１】（削除）
【請求項２】入力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線における３個のタップから出力されるデータを、“−１，ｍ，−１”（ｍは任意の数）の比率の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された３タップＦＩＲ演算部と、
入力された強調係数α（αは任意の数）に基づいて、上記３タップＦＩＲ演算部における上記“−１，ｍ，−１”の比率の数値列より成るフィルタ係数に対して“−１＋ｋα，ｍ−２ｋα，−１＋ｋα”（ｋは任意の数）という関係の強調演算を行う強調演算部と、
上記３タップＦＩＲ演算部の出力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線におけるｎ個（ｎは自然数）のタップから出力されるデータを、“１”を（ｎ−１）回移動平均演算して得られる数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成されたｎタップＦＩＲ演算部とを備えたことを特徴とする補間処理回路。
【請求項３】入力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線における３個のタップから出力されるデータを、“−１，ｍ，−１”（ｍは任意の数）の比率の数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成された３タップＦＩＲ演算部と、
入力された強調係数α（αは任意の数）に基づいて、上記３タップＦＩＲ演算部から順次出力される３個のデータ“ｘ，ｙ，ｚ”に対して“ｘ＋ｋα，ｙ−２ｋα，ｚ＋ｋα”（ｋは任意の数）という関係の強調演算を行う強調演算部と、
上記強調演算部の出力データを複数の遅延器から成るタップ付き遅延線により順次遅延させ、そのタップ付き遅延線におけるｎ個（ｎは自然数）のタップから出力されるデータを、“１”を（ｎ−１）回移動平均演算して得られる数値列より成るフィルタ係数によりそれぞれ数倍した後、それらの乗算結果を加算して出力するように成されたｎタップＦＩＲ演算部とを備えたことを特徴とする補間処理回路。
【国際調査報告】
2006134688.tif 000020
2006134688.tif 000021