JPH10134176A - Method and device for image signal processing - Google Patents

Method and device for image signal processing

Info

Publication number
JPH10134176A
JPH10134176A JP8287103A JP28710396A JPH10134176A JP H10134176 A JPH10134176 A JP H10134176A JP 8287103 A JP8287103 A JP 8287103A JP 28710396 A JP28710396 A JP 28710396A JP H10134176 A JPH10134176 A JP H10134176A
Authority
JP
Japan
Prior art keywords
filter
pixel
data
input
pixels
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.)
Abandoned
Application number
JP8287103A
Other languages
Japanese (ja)
Inventor
Kenichiro Nakamura
憲一郎 中村
Masuyoshi Kurokawa
益義 黒川
Mamoru Kano
護 加納
Koji Aoyama
幸治 青山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP8287103A priority Critical patent/JPH10134176A/en
Publication of JPH10134176A publication Critical patent/JPH10134176A/en
Abandoned legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Television Systems (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

PROBLEM TO BE SOLVED: To easily vary the number of taps and a conversion ratio in a short time by automatically setting a filter program and a filter coefficient according to filter specification information and performing filter operation. SOLUTION: Pixel data of one horizontal line after being inputted to an input register 24 in order from an image input terminal 10 are supplied to an upper processor element(PE) group 21 in parallel. The PE group 21 performs filter operation processing for respective pixel data that respective element processors 23 have received by using a control instruction from a controller 26 and coefficient data from a coefficient memory 27. The processing result of the upper PE group 21 is inputted to the lower PE group 22 as it is in parallel and filter operation processing is further performed when necessary. The processing result of the PE group 22 is inputted to an output register 25 in parallel and outputted, pixel by pixel, in order. The processing like this is repeated as many times as vertical lines to perform two-dimensional image processing.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、画素数変換処理や
走査線変換等の画像信号処理を行う画像信号処理方法及
び装置に関する。
The present invention relates to an image signal processing method and apparatus for performing image signal processing such as pixel number conversion processing and scanning line conversion.

【0002】[0002]

【従来の技術】近年になって、半導体技術、半導体の処
理スピード性能の向上により、映像信号のディジタル信
号処理が行われるようになってきた。また、最近では画
像表示装置も従来のブラウン管に代わり、LCD(Liqu
id Crystal Display:液晶ディスプレイ)表示装置やプ
ラズマディスプレイ装置等に代表される固定画素表示装
置が広く普及しつつある。
2. Description of the Related Art In recent years, digital signal processing of video signals has been performed with the improvement of semiconductor technology and processing speed performance of semiconductors. Recently, image display devices have been replaced with conventional cathode ray tubes, and LCDs (Liquor
id Crystal Display (Liquid Crystal Display) Fixed pixel display devices such as display devices and plasma display devices are becoming widespread.

【0003】また、最近は、いわゆるNTSC(Nationa
l Television System Committee)信号、PAL(Phase A
lternation by Line)信号などの標準テレビジョン放送
方式のみならず、HDTV(High Definition Televisio
n)信号や、VGA(Video Graphics Array)信号、SVG
A(Super VGA)信号、XVGA(extended VGA)信号など
様々なフォーマットの信号を表示できることが求められ
ている。
Recently, the so-called NTSC (Nationa
l Television System Committee) signal, PAL (Phase A
lternation by Line) signals, as well as HDTV (High Definition Televisio
n) signal, VGA (Video Graphics Array) signal, SVG
It is required to be able to display signals in various formats such as A (Super VGA) signal and XVGA (extended VGA) signal.

【0004】これら様々なフォーマットでは、それぞれ
扱う画素数がまちまちである。このようなそれぞれ画素
数が異なる各種のフォーマットの映像信号を表示する場
合、上記ブラウン管等のアナログ表示デバイスであれ
ば、1走査線時間当たりの画素数に応じて電子ビームの
偏向速度を変えてやれば済む。
[0004] In these various formats, the number of pixels to be handled is different. When displaying video signals of various formats having different numbers of pixels, an analog display device such as the above-mentioned cathode ray tube can change the deflection speed of the electron beam according to the number of pixels per scanning line time. I'm done.

【0005】しかし、上記固定画素表示装置において
は、扱える画素数が固定しているため、上述のブラウン
管の場合のような従来のアナログ技術は使えない。その
ため、これら様々なフォーマットの信号を上述のような
固定画素表示装置に対して表示させるためには、ディジ
タル信号処理による任意の画素数変換、或いは走査線数
変換が不可欠である。
However, in the above-mentioned fixed pixel display device, the number of pixels that can be handled is fixed, so that the conventional analog technology as in the case of the above-mentioned cathode ray tube cannot be used. Therefore, in order to display these signals of various formats on the above-described fixed pixel display device, it is essential to convert the number of pixels or the number of scanning lines by digital signal processing.

【0006】ここで、上述したような画像の画素数変換
を行うための技術として、従来より使用されてきた補間
フィルタを用いた画素数変換の手法について、以下に説
明する。なお、例えばディジタルフィルタによる補間フ
ィルタの実現技術は、従来からディジタル信号処理分野
の各種教科書に詳しく解説されているので、ここでは簡
単に説明する。
Here, as a technique for converting the number of pixels of an image as described above, a method of converting the number of pixels using an interpolation filter which has been conventionally used will be described below. The technique of implementing an interpolation filter using, for example, a digital filter has been described in detail in various textbooks in the field of digital signal processing, and will be briefly described here.

【0007】先ず、画像の拡大や縮小と標本化周波数
(画素数)の変換について説明する。
First, the enlargement or reduction of an image and the conversion of the sampling frequency (the number of pixels) will be described.

【0008】画像の拡大や縮小を実現するための演算操
作と、画像の標本化周波数(画素数)を変換する演算操
作(解像度の異なる画像規格間の変換)は、どちらも原
画像の各画素位置に対して、最初存在しなかった位置の
画素データを求める演算として考えることにより、全く
同じ補間フィルタの演算操作でよいことがわかってい
る。これを図11を用いて説明する。
An arithmetic operation for realizing enlargement or reduction of an image and an arithmetic operation for converting a sampling frequency (the number of pixels) of an image (conversion between image standards having different resolutions) are performed in each pixel of the original image. By considering the position as an operation for obtaining pixel data at a position that did not exist at the beginning, it has been found that the same operation of the interpolation filter is sufficient. This will be described with reference to FIG.

【0009】図11の(a)には原画像のモデルを示
す。この図11の(a)中の四角い枠は画面の一部分で
あるとする。また、図中丸印は画像の画素の位置を表す
ものとする。すなわち、この図11の(a)に示す部分
原画像は、(横方向8画素)×(縦方向6画素)からな
る。ここでは考え易くするために、扱いやすい少ない画
素数にしている。この原画像を例えば10/7倍に拡大
する場合を考える。なお、ここでの倍率は面積ではなく
長さの比で表現するものとする。上記原画像を10/7
に拡大するというのは、図11の(a)の画像(画素
数)を拡大するのであって、表示画像規格は変わらず、
画素の配列の仕方すなわち画素間隔などは図11の(a
と)同じであり、その拡大結果は図11の(b)のよう
になる。すなわち、図11の(a)と図11の(b)と
では、10/7倍の拡大(10/7=1.429倍)な
ので、図11の(b)の画像は図11の(a)の画像よ
りも1辺の長さが1.429倍に長くなり、図11の
(b)の拡大画面を構成する画素数は1.429の自乗
倍に増えている。
FIG. 11A shows a model of an original image. It is assumed that the square frame in FIG. 11A is a part of the screen. It is assumed that the circles in the figure represent the positions of the pixels of the image. That is, the partial original image shown in FIG. 11A is composed of (8 pixels in the horizontal direction) × (6 pixels in the vertical direction). Here, for ease of thinking, the number of pixels is set to be small and easy to handle. Consider a case where this original image is enlarged, for example, by a factor of 10/7. Note that the magnification here is expressed not by area but by length ratio. 10/7 of the original image
Means that the image (the number of pixels) in FIG. 11A is enlarged, and the display image standard does not change.
The arrangement method of the pixels, that is, the pixel interval and the like are shown in FIG.
) And the result of the enlargement is as shown in FIG. That is, in FIG. 11A and FIG. 11B, since the magnification is 10/7 times (10/7 = 1.429 times), the image of FIG. 11) is 1.429 times longer than the image of FIG. 11), and the number of pixels constituting the enlarged screen of FIG. 11B is increased to the square of 1.429.

【0010】したがって、例えば水平方向で見た時は、
同じ画像が原画像で8画素であったものが拡大後は、8
×10/7=11.429画素になり、拡大後の各画素
の画像に対する位置関係は違ってくる。なお、このため
拡大後の各画素のデータ(輝度や色を表現するデータ)
の値は、原画像のそれとは異なることになる。
Therefore, for example, when viewed in the horizontal direction,
The same image, which was 8 pixels in the original image, is enlarged to 8 pixels.
X10 / 7 = 11.429 pixels, and the positional relationship between the enlarged pixels and the image differs. For this reason, the data of each pixel after enlargement (data expressing luminance and color)
Will be different from that of the original image.

【0011】図11の(d)は上記10/7倍の画像拡
大の様子を水平方向についてのみ示している。図11の
(d)中の矢印の先が各画素の位置を示していて、上側
のRi(i=1,2,・・・)は原画素のデータであり、
下側のQi(i=1,2,・・・)は拡大後の補間画素
のデータである。すなわち、Riの間隔はQiの間隔の1
0/7倍になっている。なお、この図11の(d)は水
平方向の拡大の様子だけを示しているが、垂直方向につ
いても図11の(d)と同様に考えることができる。こ
こでは垂直方向の説明は省略する。
FIG. 11 (d) shows the above-described image magnification of 10/7 times only in the horizontal direction. The tip of the arrow in FIG. 11D indicates the position of each pixel, and the upper R i (i = 1, 2,...) Is the data of the original pixel,
The lower Q i (i = 1, 2,...) Is the data of the interpolated pixel after the enlargement. That is, the interval of R i is 1 of the interval of Q i.
It is 0/7 times. Although FIG. 11D shows only the state of enlargement in the horizontal direction, the vertical direction can be considered in the same manner as FIG. 11D. Here, the description in the vertical direction is omitted.

【0012】拡大後の各画素のデータ(輝度や色を表
現)の値は、その位置関係が原画像の各画素位置に対し
て図11の(d)のようになっていることから、画素1
点1点について、ここで求めようとしている補間点の周
辺のいくつかの原画像画素のデータの値を使って補間フ
ィルタ演算、すなわち補間関数の畳み込み演算をすれば
よい。この補間演算については後述する。
The value of the data (expressing luminance and color) of each pixel after the enlargement has a positional relationship as shown in FIG. 11D with respect to each pixel position of the original image. 1
For one point, an interpolation filter operation, that is, a convolution operation of an interpolation function may be performed using data values of some original image pixels around the interpolation point to be obtained here. This interpolation calculation will be described later.

【0013】次に、今度は画像の大きさをそのままにし
て、標本化周波数を例えば10/7倍にする場合を考え
ることにする。これは標本化周波数変換であるが、言い
換えると、画像の大きさは同じで解像度が10/7倍高
い画像規格に変換することと同じことであり、すなわち
画素数を10/7倍にしていることと同じである。この
場合は、原画像を図11の(a)とした時、その結果は
図11の(c)のようになる。すなわち、1次元的には
画素数が1.429倍に増え、同じ面積内の画素数は
1.429の自乗倍に増えている。
Next, let us consider a case where the sampling frequency is increased to, for example, 10/7 while the size of the image is kept as it is. This is a sampling frequency conversion, but in other words, it is the same as converting to an image standard having the same image size and a resolution 10/7 times higher, that is, increasing the number of pixels by 10/7. It is the same as that. In this case, when the original image is shown in FIG. 11A, the result is as shown in FIG. 11C. That is, in one dimension, the number of pixels increases by 1.429 times, and the number of pixels in the same area increases by a square of 1.429.

【0014】この画素数の多い画像規格に変換する演算
操作は、先に説明した画像拡大の演算操作と全く同じで
よい。それは、図11の(a)と図11の(b)の関係
及び図11の(a)と図11の(c)の関係を見てわか
るように、どちらも図11の(d)の位置関係からの補
間フィルタ演算、すなわち補間関数の畳み込み演算を行
えばよいからである。
The calculation operation for converting to an image standard having a large number of pixels may be exactly the same as the calculation operation for image enlargement described above. As can be seen from the relationship between (a) and (b) of FIG. 11 and the relationship between (a) and (c) of FIG. This is because the interpolation filter operation based on the relationship, that is, the convolution operation of the interpolation function may be performed.

【0015】次に、今度は画像の縮小の場合を説明す
る。図11の(a)と同様の図12の(a)を原画像の
モデルとし、この原画像を例えば10/13倍に縮小す
る場合を考える。ここでは、原画像を縮小するのであっ
て表示画像規格は変えないので、画素の配列の仕方すな
わち画素間隔などは図12の(a)と同じであり、その
結果は図12の(b)のようになる。つまり、10/1
3倍(10/13=0.769)倍の縮小なので、図1
2の(b)の画像は図12の(a)の画像の1辺の長さ
が0.769倍に縮み、この縮小画面を構成する画素数
は0.769の自乗倍に減ることになる。
Next, the case of image reduction will be described. A case where FIG. 12A similar to FIG. 11A is used as a model of the original image and this original image is reduced to, for example, 10/13 times is considered. Here, since the original image is reduced and the display image standard is not changed, the arrangement of the pixels, that is, the pixel interval is the same as that of FIG. 12A, and the result is shown in FIG. Become like That is, 10/1
Since it is reduced by a factor of 3 (10/13 = 0.769), FIG.
In the image of FIG. 2B, the length of one side of the image of FIG. 12A is reduced to 0.769 times, and the number of pixels constituting the reduced screen is reduced to the square of 0.769. .

【0016】したがって、例えば水平方向に見た時は、
同じ画像が原画像で8画素であったものが、縮小後に8
×10/13=6.154画素になるのだから、当該縮
小後の各画素の画像に対する位置関係は違ってくる。こ
のため、縮小後の各画素のデータ(輝度や色を表現)の
値は、原画像のそれとは異なることになる。
Therefore, for example, when viewed in the horizontal direction,
The same image was 8 pixels in the original image, but 8 pixels after reduction.
Since × 10/13 = 6.154 pixels, the positional relationship between the reduced pixels and the image differs. For this reason, the value of the data (expressing luminance and color) of each pixel after reduction is different from that of the original image.

【0017】図12の(d)は上記10/13倍の画像
縮小の様子を水平方向についてのみ示している。図中矢
印の先が各画素の位置を示していて、上側のRi(i=
1,2,・・・)は原画素のデータであり、下側のQ
i(i=1,2,・・・)は縮小後の補間画素データであ
る。すなわちRiの間隔はQiの間隔の10/13倍にな
っている。なお、図12の(d)は水平方向の拡大の様
子だけを示しているが、垂直方向についても図12の
(d)と同様に考えることができる。
FIG. 12D shows the state of image reduction of 10/13 times only in the horizontal direction. The tip of the arrow in the figure indicates the position of each pixel, and R i (i =
1, 2,...) Are original pixel data, and the lower Q
i (i = 1, 2,...) is the reduced interpolated pixel data. That is, the interval of R i is 10/13 times the interval of Q i . FIG. 12D shows only the state of enlargement in the horizontal direction, but the vertical direction can be considered in the same manner as in FIG.

【0018】上記縮小後の各画素のデータ(輝度や色を
表現)の値は、その位置関係が原画像の各画素位置に対
して図12の(d)のようになっていることから、画素
1点1点について、今求めようとしている補間点の周辺
のいくつかの原画像画素のデータの値を使って補間フィ
ルタ演算、すなわち補間関数の畳み込み演算をすればよ
い。この補間演算については後述する。
The values of the data (expressing luminance and color) of each pixel after the above-described reduction have the positional relationship shown in FIG. 12D with respect to each pixel position of the original image. For each pixel, an interpolation filter operation, that is, a convolution operation of an interpolation function may be performed using data values of some original image pixels around the interpolation point to be obtained. This interpolation calculation will be described later.

【0019】次に、今度は画像の大きさはそのままにし
て、標本化周波数を例えば10/13倍にする場合を考
えることにする。これは標本化周波数変換であるが、言
い換えると、画像の大きさは同じで解像度が10/13
倍低い画像規格に変換することと同じことであり、画素
数を10/13倍にすることと同じである。この場合
は、原画像を図12の(a)とした時の結果は図12の
(c)のようになる。すなわち1次元的には画素数が
0.769に縮み、同じ面積内の画素数は0.769の
自乗倍に減っている。
Next, let us consider a case where the sampling frequency is increased to, for example, 10/13 times while keeping the size of the image as it is. This is a sampling frequency conversion, in other words, the image size is the same and the resolution is 10/13
This is the same as converting to a twice lower image standard, and the same as increasing the number of pixels by 10/13. In this case, the result when the original image is shown in FIG. 12A is as shown in FIG. That is, in one dimension, the number of pixels is reduced to 0.769, and the number of pixels in the same area is reduced to the square of 0.769.

【0020】この画素数の少ない画像規格に変換する演
算操作は、先に説明した画像縮小の演算操作と全く同じ
でよい。それは、図12の(a)と図12の(b)の関
係及び図12の(a)と図12の(c)の関係を見てわ
かるように、どちらも図12の(d)の位置関係からの
補間フィルタ演算、すなわち補間関数の畳み込み演算を
すればよいからである。
The calculation operation for converting to the image standard with a small number of pixels may be exactly the same as the calculation operation for image reduction described above. As can be seen from the relationship between FIG. 12A and FIG. 12B and the relationship between FIG. 12A and FIG. This is because an interpolation filter operation based on the relationship, that is, a convolution operation of the interpolation function may be performed.

【0021】図11の(d)の場合も図12の(d)の
場合も、最初原画像では存在しなかった位置の画素デー
タ値を求める補間フィルタの演算操作が必要であり、結
局、画像の拡大や縮小を実現するための演算操作も、画
像の標本化周波数(画素数)を高く(多く)変換する演
算操作も、低く(少なく)変換する演算操作も、どれも
同じ演算操作でよいことになる。以下これらは「画素数
変換」あるいは「補間フィルタ演算」と表現するものと
する。
In both the case of FIG. 11 (d) and the case of FIG. 12 (d), it is necessary to perform an operation of an interpolation filter for obtaining a pixel data value at a position which did not exist in the original image at first. The same arithmetic operation can be used for the arithmetic operation for realizing the enlargement or reduction of the image, the arithmetic operation for converting the sampling frequency (the number of pixels) of the image to a higher (more), or the arithmetic operation for lowering (less) the conversion. Will be. Hereinafter, these are expressed as “pixel number conversion” or “interpolation filter operation”.

【0022】次に、原画像には存在しなかった位置の画
素データ値を求める補間フィルタ演算、すなわち補間関
数の畳み込み演算について、図13、図14及び式
(1)〜式(4)を用いて説明する。
Next, an interpolation filter operation for obtaining a pixel data value at a position not existing in the original image, that is, a convolution operation of the interpolation function, will be described with reference to FIGS. 13 and 14 and equations (1) to (4). Will be explained.

【0023】図13において横軸は図11の(d)や図
12の(d)と同様に表しており、水平方向の位置関係
を模式的に示している。また、図中の丸印は原画像の画
素位置で、図中Sは原画像の標本化間隔、すなわち画素
間隔を示している。そして、図中矢印hで指し示す位置
を、補間すべき位置(補間点)とする。すなわち図中丸
印の位置が図11の(d)或いは図12の(d)の前記
iであり、図中矢印hの位置が今注目している前記Qi
の位置である。前記Qiの一つ一つについて、そのQi
挟む周辺のRiを使って畳み込み演算をして補間演算が
実現される。
In FIG. 13, the horizontal axis represents the same as FIGS. 11 (d) and 12 (d), and schematically shows the positional relationship in the horizontal direction. Also, circles in the figure indicate pixel positions of the original image, and S in the figure indicates sampling intervals of the original image, that is, pixel intervals. Then, the position indicated by the arrow h in the figure is a position to be interpolated (interpolation point). That is, the R i of circled position indicia shown in FIG. 11 (d) or FIG. 12 (d), the Q i the position of the arrow in the figure h is watching now
Position. Wherein for one single Q i, interpolation operation is realized by a convolution operation using R i around sandwiching the Q i.

【0024】ここで、一般に、「標本化定理」によれ
ば、理論的理想的な「補間」は図14の(a)及び次式
(1)のようなsinc関数 f(x)=sinc(x)=sin(x)/x ・・・(1) を補間関数として、無限時間過去から無限時間将来まで
畳み込み演算をすればよい。しかし実際にはそれは実現
できず、現実的な課題としては、sinc関数をいかに有限
期間の簡単な補間関数に近似するかという問題になる。
そしてその簡単な近似法として、 1.最近傍近似法 (図14の(b),式(2)) 2.双一次近似法 (図14の(c),式(3)) 3.キュービック(Cubic)近似法 (図14の(d),式(4)) などが知られている。なお、上記最近傍近似法の近似補
間関数を図14の(b)及び式(2)に示し、上記双一
次近似法の近似補間関数を図14の(c)及び式(3)
に示し、上記キュービック(Cubic)近似法の近似補間
関数を図14の(d)及び式(4)に示す。また、図1
4の横軸は原画像の標本間隔で正規化されているものと
する。
Here, according to the "sampling theorem", the theoretically ideal "interpolation" is generally performed by a sinc function f (x) = sinc () as shown in FIG. x) = sin (x) / x (1) The convolution operation may be performed from the infinite time past to the infinite time future using (1) as an interpolation function. However, it cannot be realized in practice, and a practical problem is how to approximate the sinc function to a simple interpolation function of a finite period.
And as a simple approximation method: 1. Nearest neighbor approximation method ((b) of FIG. 14, equation (2)) 2. Bilinear approximation method ((c) in FIG. 14, equation (3)) A cubic approximation method ((d) in FIG. 14, equation (4)) and the like are known. The approximate interpolation function of the nearest neighbor approximation method is shown in FIG. 14B and equation (2), and the approximate interpolation function of the bilinear approximation method is shown in FIG. 14C and equation (3).
The approximation interpolation function of the cubic approximation method is shown in FIG. 14D and equation (4). FIG.
It is assumed that the horizontal axis of 4 is normalized by the sample interval of the original image.

【0025】 f(x)=1 (-0.5<x≦0.5) f(x)=0 (-0.5≧x,x<0.5) ・・・(2) f(x)=1−|x| (|x|≦1) f(x)=0 (|x|>1) ・・・(3) f(x)=|x|3−2|x|2+1 (|x|≦1) f(x)=−|x|3+5|x|2−8|x|+4 (1<|x|≦2) ・・(4) f(x)=0 (2<|x|) 補間後の1画素を演算するのに、原画像の画素データを
それぞれ、上記最近傍近似法では1画素、上記双一次近
似法では2画素、上記キュービック近似法では4画素使
って畳み込み演算をする。上記双一次近似法は加重平均
をとっているのであって、線形補間として良く知られて
いる。
F (x) = 1 (−0.5 <x ≦ 0.5) f (x) = 0 (−0.5 ≧ x, x <0.5) (2) f (x) = 1− | x | ( | x | ≦ 1) f (x) = 0 (| x |> 1) (3) f (x) = | x | 3 −2 | x | 2 +1 (| x | ≦ 1) f ( x) = - | x | 3 +5 | x | 2 -8 | x | +4 (1 <| x | ≦ 2) ·· (4) f (x) = 0 (2 <| x |) after interpolation 1 To calculate the pixels, the convolution operation is performed using the pixel data of the original image using one pixel in the nearest neighbor approximation, two pixels in the bilinear approximation, and four pixels in the cubic approximation. The bilinear approximation method uses a weighted average, and is well known as linear interpolation.

【0026】ここで必要な畳み込み演算はいわゆるFI
R(非巡回型)ディジタルフィルタを用いればよく、近
似補間関数の中心を補間点に合わせた時に、所定の画素
数分だけ近傍の原画像の標本点で近似補間関数を標本化
した値を補間フィルタ係数セットとして使う。
The convolution operation required here is a so-called FI
An R (non-recursive) digital filter may be used, and when the center of the approximate interpolation function is set to the interpolation point, the value obtained by sampling the approximate interpolation function at the sampling points of the nearby original image by a predetermined number of pixels is interpolated. Used as a filter coefficient set.

【0027】ここで注意すべきことは、今補間しようと
している各補間点ごとの、原画像画素位置に対する相対
位置関係を示す前記図13の位相(ズレ)Pの違いによ
り、そのFIRフィルタの演算に必要な重み、すなわち
フィルタ係数のセットが異なってくると言うことであ
る。
It should be noted here that the FIR filter calculation is performed based on the difference in the phase (shift) P shown in FIG. 13 showing the relative positional relationship with the original image pixel position for each interpolation point to be interpolated. , The set of filter coefficients will differ.

【0028】例えば、上記双一次近似法で補間フィルタ
演算をする場合であれば、P=0.0の場合は、その場
合のフィルタ係数セットとなる2つの重み(フィルタ係
数)は1.0と0.0となり、位置が一致する原画像の
画素データ値をそのまま通すような係数セットとなる
が、P=0.5の場合は上記2つの重み(フィルタ係
数)は0.5と0.5の係数セットとなり、P=0.3
の場合は上記2つの重み(フィルタ係数)0.7と0.
3の係数セットとなる。同様に、キュービック近似法で
は、P=0.0の場合はその4つの重み(フィルタ係
数)は0.0と1.0と0.0と0.0とになり、位置
が一致する原画像画素のデータ値をそのまま通すような
係数セットとなっているが、P=0.5の場合の4つの
重み(フィルタ係数)は−0.125と0.625と
0.625と−0.125の係数セットとなり、P=
0.3の場合の4つの重み(フィルタ係数)は−0.0
63と0.847と0.363と−0.147との係数
セットとなる。これらは上記式(2)〜式(4)のxに
Pを代入して得られる。
For example, if the interpolation filter operation is performed by the bilinear approximation method, if P = 0.0, the two weights (filter coefficients) that constitute the filter coefficient set in that case are 1.0 and 1.0. 0.0, which is a coefficient set that passes the pixel data value of the original image at the same position as it is. When P = 0.5, the two weights (filter coefficients) are 0.5 and 0.5. And P = 0.3
, The above two weights (filter coefficients) 0.7 and 0.
The coefficient set is 3. Similarly, in the cubic approximation method, when P = 0.0, the four weights (filter coefficients) are 0.0, 1.0, 0.0, and 0.0, and the original image whose position matches. The coefficient set is such that the data value of the pixel is passed as it is. When P = 0.5, the four weights (filter coefficients) are -0.125, 0.625, 0.625, and -0.125. , And P =
The four weights (filter coefficients) in the case of 0.3 are -0.0
The coefficient set is 63, 0.847, 0.363, and -0.147. These are obtained by substituting P for x in the above equations (2) to (4).

【0029】次に、補間フィルタ演算、すなわち補間関
数の畳み込み演算を実現するハードウェア構成につい
て、その従来例を図15を用いて説明する。補間フィル
タ演算はFIRディジタルフィルタにより行われ、ただ
しそのフィルタ係数が補間点ごとに変わらなければなら
ない。したがって、図15のような構成の演算装置で積
和演算すれば実現できる。なお、図15ではキュービッ
ク近似法を想定している。
Next, a conventional example of a hardware configuration for implementing an interpolation filter operation, that is, a convolution operation of an interpolation function will be described with reference to FIG. The interpolation filter operation is performed by an FIR digital filter, provided that its filter coefficients must change for each interpolation point. Therefore, it can be realized by performing a product-sum operation with an arithmetic device having a configuration as shown in FIG. In FIG. 15, the cubic approximation method is assumed.

【0030】図15は、各補間位置におけるデータの妥
当な値を次々と演算(補間フィルタ演算)するFIRデ
ィジタルフィルタである。
FIG. 15 shows an FIR digital filter for sequentially calculating appropriate values of data at each interpolation position (interpolation filter operation).

【0031】この図15において、入力端子250に
は、水平走査された入力画像データ時系列が供給され
る。また、図中M1,M2,M3,M4として表す4つ
のレジスタ254〜258は、入力端子250から供給
された原画像の画素データ1つ分をそれぞれが記憶でき
るレジスタである。これらレジスタ254〜258は直
列接続されており、4段のシフトレジスタとして動作す
る。これらレジスタ254〜258にて構成されるシフ
トレジスタには、上記水平走査された入力画像データ時
系列がワード単位に入力され、これにより当該シフトレ
ジスタは常に連続する4つの原画像画素データを記憶す
ることになる。キュービック近似法は、補間点を挟む近
傍左右2画素づつ計4画素の原画像データから補間点の
妥当なデータ値を求める方法なので上記4段のシフトレ
ジスタが必要になっている。
In FIG. 15, an input terminal 250 is supplied with time-series input image data that has been horizontally scanned. Further, four registers 254 to 258 represented as M1, M2, M3, and M4 in the drawing are registers capable of storing one pixel data of the original image supplied from the input terminal 250. These registers 254 to 258 are connected in series and operate as a four-stage shift register. To the shift register constituted by these registers 254 to 258, the above-mentioned horizontal-scanned input image data time series is inputted in word units, whereby the shift register always stores continuous four original image pixel data. Will be. The cubic approximation method is a method of obtaining a proper data value of an interpolation point from original image data of a total of four pixels, two pixels in the vicinity of the interpolation point and two pixels on the left and right sides, so the above-described four-stage shift register is required.

【0032】また、端子251には、制御されたクロッ
ク或いはクロックの制御信号Eが入力される。この制御
信号Eは、上記4段のシフトレジスタをシフトさせた
り、停止させたり制御する信号であり、図示しないコン
トローラから供給される。
The terminal 251 receives a controlled clock or a clock control signal E. This control signal E is a signal for shifting or stopping the four-stage shift register, and is supplied from a controller (not shown).

【0033】端子252には、複数のフィルタ係数セッ
ト中から、求めたい補間点Qiの位相Pに対応すフィル
タ係数セットを選ぶ選択信号Cが入力される。係数メモ
リ253は、先に説明した位相Pの種類ごとの複数のフ
ィルタ係数セットを記憶するメモリであるため、上記選
択信号はアドレスデータとなる。
[0033] terminal 252, from among a plurality of filter coefficient sets, selection signal C to select the filter coefficient set to correspond to the phase P of the interpolation point Q i to be obtained is input. Since the coefficient memory 253 stores a plurality of filter coefficient sets for each type of the phase P described above, the selection signal is address data.

【0034】乗算器259〜262では、上記係数メモ
リ253からのフィルタ係数FC1〜FC4と上記4段の
シフトレジスタの各レジスタ254〜258からの各画
素データとの乗算を行い、それぞれ得られた乗算結果を
総和加算器263に出力する。
The multipliers 259 to 262 multiply the filter coefficients FC 1 to FC 4 from the coefficient memory 253 by the pixel data from the registers 254 to 258 of the four-stage shift register, and obtain the respective results. The result of the multiplication is output to the sum adder 263.

【0035】総和加算器263では、それぞれ供給され
た乗算結果の総和加算を行い、その加算結果が出力端子
264から補間フィルタ演算結果の出力画像データ時系
列として出力される。
The sum adder 263 performs sum addition of the supplied multiplication results, and outputs the addition result from an output terminal 264 as an output image data time series of the interpolation filter operation result.

【0036】図15の構成は、従来よりハードウェアで
実現されている。ここで、リアルタイム画像処理の場合
においては、その標本化周期が50ナノ秒というような
オーダーの短時間であるために、リアルタイムの音の信
号処理の場合などと違って、従来はソフトウェアプログ
ラムによる実現例はほとんどなく、図15の各部分をパ
イプライン方式を多用したハードウェア専用化回路にし
て実現するのが一般的であった。
The configuration shown in FIG. 15 is conventionally realized by hardware. Here, in the case of real-time image processing, since the sampling period is as short as 50 nanoseconds, unlike the case of real-time sound signal processing, it is conventionally realized by a software program. There are few examples, and each part in FIG. 15 is generally realized as a dedicated hardware circuit using a large number of pipeline systems.

【0037】次に、上記図15のハードウェア構成にお
いて、画像をキュービック近似により例えば10/7倍
に拡大する場合の動作を図16及び図17に示す表を使
い説明する。10/7倍の画像拡大は図11で説明した
通りであり、水平方向については図11の(d)の位置
関係の各補間点ごとに図13のように考えて、図15の
ような装置で補間フィルタ演算をすればよい。図16に
示す表はその場合における図15の各部の動作手順を示
している。
Next, the operation of enlarging an image by, for example, 10/7 by cubic approximation in the hardware configuration of FIG. 15 will be described with reference to the tables shown in FIGS. The image magnification of 10/7 is as described with reference to FIG. 11. In the horizontal direction, each interpolation point in the positional relationship of FIG. 11D is considered as shown in FIG. May be used to perform the interpolation filter operation. The table shown in FIG. 16 shows the operation procedure of each unit in FIG. 15 in that case.

【0038】図16に示す表はタイムチャートであり、
表中のサイクルとは時刻すなわちクロックサイクルを意
味している。表中のIN欄は入力データであり、図15
の入力端子250に与えられる原画像画素データ値Ri
を示す。表中のC欄は図15の端子252に供給される
フィルタ位相選択信号Cであり、係数メモリ253のど
の位相のフィルタ係数セットを使うかを選択し、そのサ
イクルで演算すべきQiのための位相Piを指定する。表
中のE欄は図15の端子251に供給されるシフトレジ
スタ制御信号で、シフト(論理「H」)か停止(論理
「L」)のどちらかの状態を指定する。この図16の表
において、C欄とE欄に示す制御入力は、予め何をする
かによって図11の(d)のような検討を行い、所定の
制御信号列を決めておき、図15の装置に与えることに
なる。なお、上記E欄の制御は次のクロックサイクルに
対してその制御が影響されるものとする。表中のM1
2,M3,M4の各欄は図15の4段のシフトレジスタ
の各段のレジスタ254〜258にそれぞれ記憶されて
いるRiを示す。表中のOUT欄は図15の出力端子2
64から、上記クロックサイクルで出力される出力デー
タQiを示す。なお、図15のようなハードウェア装置
では、その乗算や総和演算の部分で何らかのパイプライ
ン処理により、レイテンシー(高速演算実現のための本
質的でない遅延)を生ずるのが普通であるが、ここでは
そのレイテンシーはないものとして考えることにする。
The table shown in FIG. 16 is a time chart.
The cycle in the table means time, that is, a clock cycle. The IN column in the table is input data.
Original image pixel data value R i given to input terminal 250 of
Is shown. C column in the table is a filter phase selection signal C supplied to terminal 252 in FIG. 15, select whether to use a set of filter coefficients of the phase of the coefficient memory 253 throat, for Q i to be calculated in the cycle to specify the phase P i. Column E in the table is a shift register control signal supplied to the terminal 251 in FIG. 15, and specifies either a shift (logic "H") or a stop (logic "L") state. In the table of FIG. 16, the control inputs shown in the columns C and E are studied in advance as shown in FIG. 11D depending on what to do, and a predetermined control signal sequence is determined. Will be given to the device. It is assumed that the control in column E is affected by the next clock cycle. M 1 in the table,
Each column of M 2 , M 3 , and M 4 indicates R i stored in each of the registers 254 to 258 of the four-stage shift register in FIG. The OUT column in the table is the output terminal 2 in FIG.
64 shows output data Q i output in the clock cycle. In a hardware device such as that shown in FIG. 15, a latency (a delay that is not essential for realizing a high-speed operation) is usually caused by some kind of pipeline processing in the multiplication and the summation operation. Let's consider it as having no latency.

【0039】また、ここで前記係数メモリ253には、
図17に示す表の8ビット表現係数の欄に示す10種類
のフィルタ係数セットが記憶されているものとし、表中
のC欄から与えられた位相Piに応じて、前記4つのフ
ィルタ係数FC1,FC2,FC3,FC4を出力するもの
とする。今想定している10/7倍の画像拡大の場合に
はその補間演算に必要な位相の種類は図11の(d)の
ように10種類しかなくて、それが繰り返し使われるだ
けだからである。
Here, the coefficient memory 253 stores
Shall ten filter coefficients set shown in the column of 8-bit representation coefficients of the table shown in FIG. 17 is stored, according to the phase P i given from C column of the table, the four filter coefficients FC 1 , FC 2 , FC 3 , and FC 4 are output. This is because, in the case of the image magnification of 10/7 times assumed here, there are only ten types of phases necessary for the interpolation operation as shown in FIG. 11D, and these are only used repeatedly. .

【0040】図17の表中の10種類のフィルタ係数セ
ットは図11の(d)のQ1〜Q10についての10種類
の位相Pに対応しているわけだが、これは図13でSを
10等分した場合の位置についての10種類のPになっ
ているので、図17の表ではPの小さい順、すなわち0
/10,1/10,2/10,・・・の順でPiのiの
順を決めている。そしてPiをxとして前記式(4)に
代入して得た係数が浮動小数点表現係数であり、それを
8ビットに語長制限して(ここでは最大振幅を128と
した)8ビット表現係数を得ている。
The ten types of filter coefficient sets in the table of FIG. 17 correspond to the ten types of phases P for Q 1 to Q 10 in FIG. 11D. Since there are 10 types of P for the position in the case of equally dividing into ten, in the table of FIG.
The order of i of Pi is determined in the order of / 10, 1/10, 2/10,... The coefficient obtained by substituting P i into x in the above equation (4) is a floating-point expression coefficient, which is word-length-limited to 8 bits (here, the maximum amplitude is 128), and an 8-bit expression coefficient Have gained.

【0041】上記図16の表及び図15の構成におい
て、まず、第1サイクルではIN欄に示すようにR1
現れる。この時、レジスタ254〜258のM1,M2,M
3,M4には、R1よりひとつ前のデータをRm0、そのも
うひとつ前のデータをRm1、そのもうひとつ前をRm2
更にそのもうひとつ前をRm3とした時、それぞれRm0
m1,Rm2,Rm3が記憶されているものとする。
In the table of FIG. 16 and the configuration of FIG. 15, first, in the first cycle, R 1 appears as shown in the IN column. M 1 at this time, register 254~258, M 2, M
3, the M 4, the previous data one from R 1 R m0, the other previous data R m1, and before that another R m @ 2,
Further, when the other one is R m3 , R m0 ,
It is assumed that R m1 , R m2 , and R m3 are stored.

【0042】第1サイクルではE欄のシフト制御信号が
論理「H」であり「シフト」を示しているので、次のク
ロックの立ち上がりでシフトレジスタはシフトし、第2
サイクルではM1,M2,M3,M4としてそれぞれR1
m0,Rm1,Rm2が記憶されている状態となる。第2サ
イクルでは、IN欄に示すようにR2が与えられ、E欄
のシフト制御信号は論理「H」すなわち「シフト」なの
で、次のクロックの立ち上がりでシフトレジスタはシフ
トして第3サイクルでは各レジスタはそれぞれR2
1,Rm0,Rm1となる。第3サイクルではIN欄から
3が与えられ、シフト制御信号は論理「H」なので、
第4サイクルでは各レジスタはそれぞれR3,R2
1,Rm0となる。
In the first cycle, the shift control signal in column E is logic "H" and indicates "shift," so that the shift register shifts at the next rising edge of the clock, and
In the cycle, M 1 , M 2 , M 3 , and M 4 are R 1 ,
R m0 , R m1 and R m2 are stored. In the second cycle, R 2 is given as shown in the IN column, and the shift control signal in the E column is logic “H”, that is, “shift”. Therefore, the shift register shifts at the next rising edge of the clock, and in the third cycle, Each register is R 2 ,
R 1 , R m0 and R m1 . In the third cycle, R 3 is given from the IN column and the shift control signal is logic “H”.
In the fourth cycle, the registers are R 3 , R 2 ,
R 1 and R m0 .

【0043】この第4サイクルではIN欄からR4が与
えられ、C欄のフィルタ位相選択信号には図11の
(d)におけるRm0,R1,R2,R3に対するQ1の位置
関係、すなわち位相P0が与えらる。これは図13にお
いてRa=Rm0,Rb=R1,Rc=R2,Rd=R3とする
場合のQ1の位置関係を示すPiがi=0であるというこ
とである。よってC欄のフィルタ位相選択信号が今P0
なので、図15の係数メモリ253が出力する4つのフ
ィルタ係数FC1,FC2,FC3,FC4は、図17の表
中の位相P0の場合のフィルタ係数セットすなわち0.
0と1.0と0.0と0.0(8ビットの表現の場合0
と128と0と0)が得られ、この係数を使って図15
のような積和演算構成で畳み込みのための積和演算がな
されて、出力端子264にはR1の値がそのままQ1とな
った出力データが得られる。
In the fourth cycle, R 4 is given from the IN column, and the positional relationship of Q 1 with respect to R m0 , R 1 , R 2 , and R 3 in FIG. , That is, the phase P 0 is given. Means that this is a R a = R m0, R b = R 1, R c = R 2, R d = P i is i = 0 showing the positional relationship for Q 1 when the R 3 in FIG. 13 is there. Therefore, the filter phase selection signal in column C is now P 0
Therefore, the four filter coefficients FC 1 , FC 2 , FC 3 , and FC 4 output from the coefficient memory 253 in FIG. 15 are the filter coefficient sets for the phase P 0 in the table of FIG.
0, 1.0, 0.0, and 0.0 (0 for 8-bit representation)
And 128, 0 and 0) are obtained.
The product-sum operation for convolution is performed by the product-sum operation configuration as described above, and output data in which the value of R 1 is directly Q 1 is obtained at the output terminal 264.

【0044】なお、この第4サイクルでは図16のE欄
のシフト制御信号が論理「L」であり「停止」を示して
いるので、次の第5サイクルでもシフトレジスタの各レ
ジスタ254〜258は第4サイクルの時のデータを保
持する。そして次の第5サイクルでは、図16の表中I
N欄よりR4が継続して与えられ、C欄のフィルタ位相
選択信号には図11の(d)におけるRm0,R1,R2
3に対するQ2の位置関係、すなわち位相P7が与えら
れているので、図17の表中位相欄のP7に応じたフィ
ルタ係数セットが前記係数メモリ253から出力され
て、Q2のデータ値を求める積和演算がなされ、出力端
子264にはQ2が得られる。ここで位相がP7となって
いるのは、図11の(d)におけるRm0,R1,R2,R
3に対するQ2の位置関係に対応した、図13におけるR
a=Rm0,Rb=R1,Rc=R2,Rd=R3の場合のP
が、R1とR2の間隔Sに対して、R1とQ2の間隔が7/
10だからである。
In the fourth cycle, since the shift control signal in column E of FIG. 16 is logic "L" and indicates "stop", the registers 254 to 258 of the shift register are also set in the next fifth cycle. The data of the fourth cycle is held. Then, in the next fifth cycle, I in the table of FIG.
R 4 is continuously given from the N column, and R m0 , R 1 , R 2 , and R m in FIG.
Since the positional relationship of Q 2 with respect to R 3 , that is, the phase P 7 is given, a filter coefficient set corresponding to P 7 in the phase column in the table of FIG. 17 is output from the coefficient memory 253, and the data of Q 2 The product-sum operation for obtaining the value is performed, and Q 2 is obtained at the output terminal 264. Here, the phase is P 7 because R m0 , R 1 , R 2 , R 2 in FIG.
R in FIG. 13 corresponding to the positional relationship of Q 2 to 3
P when a = R m0 , R b = R 1 , R c = R 2 , R d = R 3
However, the distance between R 1 and Q 2 is 7 / the distance S between R 1 and R 2.
Because it is 10.

【0045】また、第4サイクルから第5サイクルにな
る時にシフトレジスタがシフトしなかったのは、図11
の(d)においてQ1とQ2が、同じようにR1とR2の間
に位置していて、補間フィルタ演算のための原画像信号
の前後の4データの組合せが同じだからである。図16
のE欄のシフト制御信号が停止すなわち論理「L」にな
る時はこのような場合であり、その場合次のサイクルの
IN欄に与える入力データは、同じデータが連続され
る。
FIG. 11 shows that the shift register did not shift from the fourth cycle to the fifth cycle.
This is because in (d), Q 1 and Q 2 are similarly located between R 1 and R 2 , and the combination of the four data before and after the original image signal for the interpolation filter operation is the same. FIG.
This is the case when the shift control signal in column E is stopped, that is, becomes logic "L". In this case, the same data is continuously input to the column IN in the next cycle.

【0046】この第5サイクルではE欄のシフト制御信
号が論理「H」であり、第6サイクルでは各レジスタは
それぞれR4,R3,R2,R1となる。そして第6サイク
ルではIN欄よりR5が与えられ、C欄のフィルタ位相
選択信号には図11の(d)におけるR1,R2,R3
4に対するQ3の位置関係、すなわち位相P4が与えら
れているので、図17の表のP4に応じたフィルタ係数
セットが係数メモリから出力されて、Q3のデータ値を
求める積和演算がなされ、出力端子264にはQ3が得
られる。ここで位相がP4となっているのは、図11の
(d)におけるR1,R2,R3,R4に対するQ3の位置
関係に対応した、図13におけるRa=R1,Rb=R2
c=R3,Rd=R4の場合のPが、R2とR3の間隔Sに
対して、R2とQ3の間隔が4/10だからである。これ
は、Q2の時のP7の7/10に対して、更に7/10が
累加されて14/10となり、このうち10/10が原
画像データ1個分に相当するので減算されたためであ
る。
In the fifth cycle, the shift control signal in the column E is logic "H", and in the sixth cycle, the registers are R 4 , R 3 , R 2 , and R 1 respectively. And R 5 is given by the IN column in the sixth cycle, R 1 in FIG. 11 (d) is the filter phase selection signal of column C, R 2, R 3,
Given the positional relationship of Q 3 with respect to R 4 , that is, the phase P 4 , a filter coefficient set corresponding to P 4 in the table of FIG. 17 is output from the coefficient memory, and the product sum for obtaining the data value of Q 3 The operation is performed, and Q 3 is obtained at the output terminal 264. Here the phase is in the P 4 is corresponding to the position relationship between Q 3 for R 1, R 2, R 3 , R 4 in (d) of FIG. 11, R a = R 1 in FIG. 13, R b = R 2 ,
R c = R 3, R d = P if the R 4 is, with respect to the spacing S of the R 2 and R 3, the interval of R 2 and Q 3 are 4/10 So. This is because the relative 7/10 P 7 when the Q 2, is further next 14/10 7/10 is cumulative, subtraction since these 10/10 is equivalent to one minute original image data It is.

【0047】すなわち、Qiのiが1増えるごとにPは
0.7ずつ増えており、しかし整数分はデータ遅延とし
て扱えるのでモジュロ演算されるのである。このPの増
分をここでPdと定義することにする。
That is, each time i of Q i increases by 1, P increases by 0.7. However, since an integer can be treated as a data delay, a modulo operation is performed. The increment of this P here will be defined as P d.

【0048】以下、同様にして図15の構成の上で、図
11の(d)によって決まる図16の表の手順と制御に
より、順にQiが求められ、補フィルタ間演算が実現さ
れる。
Thereafter, similarly, on the configuration of FIG. 15, Q i is sequentially obtained by the procedure and control of the table of FIG. 16 determined by (d) of FIG. 11, and the operation between the auxiliary filters is realized.

【0049】なお、図15は補間フィルタ演算の実現で
あって、ここまでの説明では正確にはデータレートの変
換は実現されていない。すなわち画像の画素数変換など
を施した時にその入出力のデータレートは必然的に違っ
てくるが、入出力データはそれぞれ画像データとして定
常的な一定速度のデータ流になっていて欲しいのが普通
である。しかし、例えば図16の表の画素数が増える変
換の例では、出力は一定になっているものの、入力デー
タ列は走ったり止まったりする必要が生じている。画素
数が減る変換の場合ならこれは逆に入力は一定になるも
のの、出力データ列が出力されたり出力されなかったす
ることとなる。この問題については、データの流れ速度
の問題であり、これは図15のような構成に前後どちら
かに、そのデータ流を一定化させたり、一定のデータ速
度を間欠化するためのバッファメモリ、或いはFIFO
メモリを配置することで容易に実現される。このための
バッファメモリの構成などについてはメモリ制御の問題
であり、説明を省略する。
FIG. 15 shows the implementation of the interpolation filter operation, and the above description does not accurately realize the conversion of the data rate. In other words, the input and output data rates inevitably differ when the number of pixels in an image is converted, but it is usually desirable that each of the input and output data has a steady, constant speed data stream as image data. It is. However, for example, in the conversion example in which the number of pixels is increased in the table of FIG. 16, although the output is constant, the input data string needs to run or stop. Conversely, in the case of conversion in which the number of pixels is reduced, although the input is constant, an output data string is output or not output. This problem is related to the problem of the data flow speed, which is a buffer memory for stabilizing the data flow or intermittently maintaining a constant data speed before or after the configuration as shown in FIG. Or FIFO
It is easily realized by arranging the memory. The configuration of the buffer memory for this purpose is a matter of memory control, and the description is omitted.

【0050】[0050]

【発明が解決しようとする課題】上述したように、従来
の画素数変換は、前述の図15に示したような固定され
た積和演算回路からなる構成にて行われている。
As described above, the conventional conversion of the number of pixels is performed by using a fixed product-sum operation circuit as shown in FIG.

【0051】しかし、このような固定された積和演算回
路の場合、例えばタップ数や変換比率を変更したい時に
回路設計からやり直さなければならず、手間と時間がか
かるという問題点があった。また、複数の変換比率にて
画素数変換を行う必要があるような場合には、それぞれ
の変換比率に対応する画素数変換装置を複数用意しなけ
ればならないという問題点もあった。
However, in the case of such a fixed product-sum operation circuit, for example, when it is desired to change the number of taps or the conversion ratio, it is necessary to start over from circuit design, and there is a problem that it takes time and effort. In addition, when it is necessary to perform the pixel number conversion at a plurality of conversion ratios, there is a problem that a plurality of pixel number conversion devices corresponding to each conversion ratio must be prepared.

【0052】そこで、本発明はこのような状況に鑑みて
なされたものであり、例えばタップ数や変換比率を変更
したい時に、容易かつ短時間でそれらの変更が可能であ
り、また、複数の変換比率にて画素数変換を行う必要が
ある場合でもそれぞれの変換比率に対応する複数用意す
る必要が無い画像信号処理方法及び装置を提供すること
を目的とする。
Therefore, the present invention has been made in view of such a situation. For example, when it is desired to change the number of taps or the conversion ratio, it is possible to change them easily and in a short time. It is an object of the present invention to provide an image signal processing method and apparatus that do not need to prepare a plurality of pixels corresponding to each conversion ratio even when it is necessary to perform pixel number conversion at a ratio.

【0053】[0053]

【課題を解決するための手段】本発明の画像信号処理方
法及び装置は、第1の方向及びそれと交差する第2の方
向に配列する複数画素からなる2次元画像に対して、フ
ィルタ演算を施す画像信号処理方法及び装置であり、フ
ィルタ仕様情報に基づいて第1,第2の両方向用のフィ
ルタ演算に必要なフィルタプログラム及びフィルタ係数
を発生し、第1の方向の画素順で順次シリアルに入力し
た画素データをパラレルに変換し、このパラレル変換さ
れた第1の方向の画素列の各画素データに対して第1の
方向用のフィルタプログラム及びフィルタ係数を用いた
所定のフィルタ演算処理を施し、その後の第1の方向の
画素列の各画素データに対して、必要に応じて更に第2
の方向用のフィルタプログラム及びフィルタ係数を用い
た所定のフィルタ演算処理を施し、得られたパラレル画
素データを第2の方向の画素順に順次シリアル出力する
ことにより、上述した課題を解決する。
An image signal processing method and apparatus according to the present invention performs a filter operation on a two-dimensional image composed of a plurality of pixels arranged in a first direction and a second direction intersecting the first direction. An image signal processing method and apparatus, which generates a filter program and a filter coefficient required for a filter operation for both first and second directions based on filter specification information, and sequentially and serially inputs them in a pixel order in a first direction. The pixel data thus converted is converted into parallel, and a predetermined filter operation process using a filter program and a filter coefficient for the first direction is performed on each pixel data of the parallel-converted pixel row in the first direction, Subsequent to each pixel data of the pixel column in the first direction, a second
The above-described problem is solved by performing a predetermined filter operation process using a filter program and a filter coefficient for the direction, and sequentially outputting the obtained parallel pixel data in the order of pixels in the second direction.

【0054】ここで、本発明の画像信号処理方法及び装
置では、2次元画像を拡大または縮小するとき、その拡
大または縮小の設定に応じた第1,第2の両方向の拡大
または縮小フィルタ演算に必要なフィルタプログラム及
びフィルタ係数を発生し、第1の方向の画素順で順次入
力した画素データまたは当該画素データ間をスキップす
るためのスキップ情報を生成し、第2の方向の入力画素
列数と出力画素列数の拡大または縮小比を制御するため
のタイミング情報を生成する。
Here, according to the image signal processing method and apparatus of the present invention, when a two-dimensional image is enlarged or reduced, the two-dimensional enlargement or reduction filter operation according to the enlargement or reduction setting is performed. A necessary filter program and a filter coefficient are generated, and pixel data sequentially input in the pixel order in the first direction or skip information for skipping between the pixel data is generated, and the number of input pixel columns in the second direction and Timing information for controlling the enlargement or reduction ratio of the number of output pixel columns is generated.

【0055】すなわち、本発明によれば、フィルタプロ
グラム及びフィルタ係数をフィルタ仕様情報に基づいて
自動的に設定し、この自動的に設定されたフィルタプロ
グラム及びフィルタ係数に基づいてフィルタ演算を行っ
ている。また、本発明によれば、2次元画像を第1の方
向と第2の方向に分けて考え、これら第1の方向と第2
の方向のそれぞれに対して分離してフィルタ演算を行う
ようにしているため、フィルタ演算のためのフィルタプ
ログラム及びフィルタ係数を容易かつ効率的に設計でき
るようにしている。さらに、このようにフィルタ演算を
分離することで、第1の方向と第2の方向のフィルタ演
算の独立性や保守性を高めるようにしている。
That is, according to the present invention, the filter program and the filter coefficient are automatically set based on the filter specification information, and the filter operation is performed based on the automatically set filter program and filter coefficient. . Further, according to the present invention, the two-dimensional image is divided into a first direction and a second direction, and the first direction and the second direction are considered.
Since the filter operation is performed separately for each of the directions, the filter program and the filter coefficient for the filter operation can be designed easily and efficiently. Further, by separating the filter operations in this way, the independence and maintainability of the filter operations in the first direction and the second direction are improved.

【0056】[0056]

【発明の実施の形態】以下、本発明の好ましい実施の形
態について、図面を参照しながら説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Preferred embodiments of the present invention will be described below with reference to the drawings.

【0057】先ず、画素数変換処理のための補間フィル
タ演算を前述の図15のようなハードウェア構成ではな
く、ソフトウェアプログラム処理にて実現する手法につ
いて説明する。
First, a description will be given of a method of realizing the interpolation filter operation for the pixel number conversion processing by a software program process instead of the hardware configuration as shown in FIG.

【0058】当該ソフトウェアプログラムにて補間フィ
ルタ演算を行う構成としては、例えば図1に示すような
画像用のいわゆるSIMD(Single Instruction Multip
le Data Stream)制御されるリニアアレイ型多並列プロ
セッサ120が知られている。このプロセッサ120
は、いわゆるDSP(digital signal processor)にて実
現されている。このプロセッサ120は大きく分けて、
入力SAM(serial access memory)部121と、デー
タメモリ部122と、ALU(arithmetic and logical
unit)アレイ部123、出力SAM部124、プログラ
ム制御部125とを有してなるものである。
As a configuration for performing an interpolation filter operation by the software program, for example, a so-called SIMD (Single Instruction Multip
le Data Stream) controlled linear array type multi-parallel processor 120 is known. This processor 120
Is realized by a so-called DSP (digital signal processor). This processor 120 is roughly divided,
An input SAM (serial access memory) unit 121, a data memory unit 122, and an ALU (arithmetic and logical
(unit) An array unit 123, an output SAM unit 124, and a program control unit 125.

【0059】上記入力SAM部121、データメモリ部
122、ALUアレイ部123、出力SAM部124
は、全体でリニアアレイ(直線配列)型に多数並列化さ
れた要素プロセッサ群を構成しており、この多数の要素
プロセッサは、プログラム制御部125内にある共通の
一つのプログラム制御部により連動して制御(SIMD
制御)される。プログラム制御部125には、プログラ
ムメモリとそのプログラムの歩進のためのシーケンス制
御回路などがあり、プログラムメモリに予め書き込まれ
たプログラムに従って各部分に接続されている各種制御
信号を発生して各部分を制御する。
The input SAM section 121, the data memory section 122, the ALU array section 123, and the output SAM section 124
Constitutes a group of element processors which are parallelized in a large number in a linear array (linear array) as a whole, and these many element processors are linked by one common program control unit in the program control unit 125. Control (SIMD
Control). The program control unit 125 includes a program memory and a sequence control circuit for advancing the program. The program control unit 125 generates various control signals connected to each part according to a program written in advance in the program memory, and generates each control signal. Control.

【0060】なお、入力SAM部121、データメモリ
部122、出力SAM部124は基本的にメモリであ
り、これらのメモリのための「ロウ(ROW)」アドレスデ
コードは、詳細に説明しないが図1においては、プログ
ラム制御部125に含まれているものとして以下説明す
る。
The input SAM unit 121, the data memory unit 122, and the output SAM unit 124 are basically memories, and the "ROW" address decoding for these memories will not be described in detail, but will be described with reference to FIG. Will be described below as being included in the program control unit 125.

【0061】多数並列化された要素プロセッサの単一エ
レメント分は、図1中に斜線にて示したような縦の細長
い範囲であり、これが図で横方向に直線配列で並んでい
る。すなわち一般にプロセッサと呼ばれるために必要な
図2のような一般的な構成要件を、図1の斜線で示した
縦の細長い要素プロセッサはそれぞれが満たしている。
図2の入力バッファメモリ(IQ)130に相当するのが
図1の入力SAM部121である。図2の出力バッファ
メモリ(OQ)131に相当するのが図1の出力SAM部
124である。図2のデータメモリ(RF)132に相当
するのが図1のデータメモリ部122である。データメ
モリ132のデータを、必要に応じて選んで読み出して
演算をするためのALU133に相当するのが図1のA
LUアレイ部123である。
A single element of a multi-parallel element processor is a vertically elongated area as shown by hatching in FIG. 1 and is arranged in a horizontal linear array in the figure. That is, each of the vertically elongated element processors shown by oblique lines in FIG. 1 satisfies general configuration requirements as shown in FIG. 2 necessary to be generally called a processor.
The input SAM unit 121 in FIG. 1 corresponds to the input buffer memory (IQ) 130 in FIG. The output SAM unit 124 in FIG. 1 corresponds to the output buffer memory (OQ) 131 in FIG. The data memory unit 122 in FIG. 1 corresponds to the data memory (RF) 132 in FIG. A in FIG. 1 corresponds to the ALU 133 for selecting and reading data from the data memory 132 as needed and performing an operation.
This is the LU array unit 123.

【0062】なお、図2の構成では、入力端子DINに供
給された入力データは一旦入力バッファメモリ(IQ)1
30に入力され、そこから記憶のためのデータメモリ
(RF)132に必要な分づつ移される。そのデータメモ
リ132に今記憶された最新のデータや、過去に記憶し
たデータや演算途中のデータなどを必要に応じて選んで
読み出してはALU133で演算し、再びデータメモリ
(RF)132に書き込むという作業をプログラム制御で
繰り返し、その結果得られた演算結果をバッファメモリ
(OQ)131に移動し、所定の速度やフォーマットで出
力する。図2の構成は、様々な用途に利用できる汎用な
プロセッサ形態になっている。
In the configuration shown in FIG. 2, the input data supplied to the input terminal D IN is temporarily stored in the input buffer memory (IQ) 1.
30 and from there a data memory for storage
(RF) 132 is transferred by the required amount. The latest data currently stored in the data memory 132, data stored in the past, data in the middle of calculation, and the like are selected and read as necessary, and are then calculated by the ALU 133.
(RF) 132 is repeated under program control, and the resulting operation result is stored in a buffer memory.
(OQ) 131 and output at a predetermined speed and format. The configuration in FIG. 2 is a general-purpose processor that can be used for various purposes.

【0063】普通のプロセッサではそのハードウェアは
一般にワード処理プロセッサであり、ワードを単位とし
て処理するが、図1の斜線で示した縦の細長い範囲で示
す1つの要素プロセッサにおいて、入力SAM部12
1、データメモリ部122、出力SAM部124はメモ
リの「カラム」になっており、またALUアレイ部12
3は1ビットALUであり、事実上フルアダー(全加算
器)を主体にした回路になっている。そのため普通のプ
ロセッサとは違ってビット処理プロセッサであり、ビッ
トを単位として処理する。普通のCPU(中央処理装
置)で言う8ビットマシンとか16ビットマシンという
言い方に対応させれば1ビットマシンである。ビット処
理プロセッサはハードウェアが小さく、普通には実現で
きない程多数の並列数を実現できるので、画像用の場
合、要素プロセッサ直線配列の並列数は、映像信号の一
水平走査期間の画素数(H)に一致させている。
In an ordinary processor, the hardware is generally a word processor, which processes in units of words. However, in one element processor shown by a vertically elongated area shown by hatching in FIG.
1. The data memory unit 122 and the output SAM unit 124 are “columns” of the memory.
Reference numeral 3 denotes a 1-bit ALU, which is essentially a circuit mainly based on a full adder (full adder). Therefore, unlike a normal processor, it is a bit processing processor and performs processing in units of bits. An 8-bit machine or a 16-bit machine in a normal CPU (central processing unit) is a 1-bit machine. Since the bit processing processor has small hardware and can realize a large number of parallel numbers that cannot be normally realized, for an image, the parallel number of the element processor linear array is determined by the number of pixels (H) in one horizontal scanning period of the video signal. ).

【0064】更に、この要素プロセッサの構造は一例と
して図3のように書くことができる。ただし図3の各セ
ルの構造は、理解を容易にするために非常に一般的なも
のとしてあるし、また同じ回路が複数並ぶ部分はその要
素回路で代表して書いてある。
Further, the structure of the element processor can be written as shown in FIG. 3 as an example. However, the structure of each cell in FIG. 3 is a very general structure for easy understanding, and a portion where a plurality of the same circuits are arranged is represented by the element circuit.

【0065】図1の入力SAM部121の一つの要素プ
ロセッサ分は、入力ポインタ121Aからの制御を受け
る縦に並んだ複数の入力SAMセル121Bである。入
力データバス及び入力SAMセル121Bは図1の入力
信号のビット数分(ISB)だけ縦に並べて用意されるの
だが、図3ではそれを省略して一つのセル分の図で代表
して表示している。図1のデータメモリ部122の一つ
の要素プロセッサ分は、図3におけるメモリセル122
Aを、図1のデータメモリ部122の容量のビット数分
(MB)用意して縦に並べているのだが、図3ではそれを
省略して一つのセルだけ代表して表示している。上記ビ
ット数分(MB)は演算処理の作業メモリとして必要なだ
け用意される。前記データメモリ部122のメモリセル
122Aは、2本の読み出しビット線と1本の書き込み
ビット線を持った3ポートメモリになっており、読み出
しアドレス2組と書き込みアドレス1組を同時に与える
ことができるようになっている。前記ALUアレイ部1
23の一つの要素プロセッサ分は図3におけるALUセ
ル123Aである。ここでALUセル123A中の正味
のALU123B部分は1ビットALUであり、全加算
器(フルアダー)程度の回路である、ALUセル123A
中には他に、ALUの入力選択などのためのセレクタ
(SEL)回路等がある。なおALUセル123A中でF
Fにて示す部分はフリップフロップ(1ビットレジスタ)
である。前記出力SAM部124の一つの要素プロセッ
サ分は、出力ポインタ124Aからの制御を受ける縦に
並んだ複数の出力SAMセル124Bである。出力デー
タバス及び出力SAMセル124Bは図1の出力信号ビ
ット数分(OSB)だけ縦に並べて用意されるのだが、図
3ではそれを省略して一つのセル分の図で代表して表示
している。
One element processor of the input SAM unit 121 of FIG. 1 is a plurality of input SAM cells 121B arranged in a vertical direction under the control of the input pointer 121A. Although the input data bus and the input SAM cell 121B are prepared by arranging them vertically in the number of bits (ISB) of the input signal in FIG. 1, they are omitted in FIG. doing. 1. One element processor of the data memory unit 122 in FIG. 1 corresponds to the memory cell 122 in FIG.
A is the number of bits of the capacity of the data memory unit 122 in FIG.
(MB) Although they are prepared and arranged vertically, FIG. 3 omits them and displays only one cell as a representative. As many bits (MB) as the number of bits described above are prepared as necessary as working memory for arithmetic processing. The memory cell 122A of the data memory unit 122 is a three-port memory having two read bit lines and one write bit line, and can simultaneously provide two sets of read addresses and one set of write addresses. It has become. ALU array unit 1
The ALU cell 123A in FIG. 3 corresponds to one element processor 23. Here, the net ALU 123B portion in the ALU cell 123A is a 1-bit ALU, and is a circuit of about a full adder (full adder).
There are also selectors for ALU input selection etc.
(SEL) circuit and the like. Note that F in the ALU cell 123A
The part indicated by F is a flip-flop (1-bit register)
It is. One element processor of the output SAM unit 124 is a plurality of output SAM cells 124B arranged in a row under the control of the output pointer 124A. Although the output data bus and the output SAM cell 124B are provided in a vertical arrangement for the number of output signal bits (OSB) in FIG. 1, they are omitted in FIG. ing.

【0066】また、この図3の入力SAM読み出し信号
IR、メモリ書き込みアクセス信号SWA、メモリ読み出
しアクセス信号SRAA,SRBA、出力SAM書き込み信号
OWなどはメモリセルのワード線であり、セルを横に通
過すると共に、横方向に並ぶ同じ回路要素を同様に接続
しながら通過する。これらメモリセルのワード線は、図
1のプログラム制御部125内でアドレスデコードがさ
れているものとする。
The input SAM read signal S IR , the memory write access signal S WA , the memory read access signals S RAA and S RBA , and the output SAM write signal S OW shown in FIG. , And the same circuit elements arranged in the horizontal direction while being connected in the same manner. It is assumed that the word lines of these memory cells have been address decoded in the program control unit 125 of FIG.

【0067】さらに、図3において、セルを縦に通過す
る接続線すなわちビット線とポインタ信号線は、縦方向
に並ぶ回路要素を同様に接続しながら通過するものとす
る。入力データバスは、それぞれ横に並ぶ同じ回路要
素、すなわち入力SAMセル121Bを同様に接続しな
がら通過している。出力データバスもそれぞれ横に並ぶ
同じ回路要素、すなわち出力SAMセル124Bを同様
に接続しながら通過している。
Further, in FIG. 3, it is assumed that connection lines, that is, bit lines and pointer signal lines, which vertically pass through the cell, pass while connecting circuit elements arranged in the vertical direction in the same manner. The input data bus passes through the same circuit elements arranged side by side, that is, the input SAM cell 121B, while being similarly connected. The output data buses also pass through the same circuit elements arranged side by side, that is, the output SAM cells 124B while being similarly connected.

【0068】次にこのプロセッサ120の動作を図1、
図3を使って説明する。
Next, the operation of the processor 120 will be described with reference to FIG.
This will be described with reference to FIG.

【0069】入力端子DINに与えられた入力映像信号デ
ータは入力データバスを介して入力SAM部121に導
かれる。入力ポインタ121Aは一つの要素プロセッサ
にだけ論理「H」を立てた1ビット信号すなわち入力ポ
インタ信号SIPを発生し、論理「H」で指定された要素
プロセッサの入力SAMセル121Bに入力映像信号デ
ータが書き込まれる。ポインタで指定された入力SAM
セル121Bでは、トランジスタTr1がONし、コン
デンサC1が入力映像信号データに応じた電位になる。
The input video signal data supplied to the input terminal D IN is guided to the input SAM section 121 via the input data bus. Input pointer 121A generates a 1-bit signal or input pointer signal S IP made a logic "H" only one element processor, the input video signal data into the input SAM cell 121B of the specified element processors with a logic "H" Is written. Input SAM specified by pointer
In the cell 121B, transistor Tr 1 is turned ON, become potential capacitor C 1 is in accordance with the input video signal data.

【0070】入力ポインタ信号SIPの入力指定は、入力
映像信号のクロック毎に左端の要素プロセッサから右端
の要素プロセッサに順に移動するので、入力映像信号デ
ータは左端の要素プロセッサの入力SAMセル121B
から順に右方向の要素プロセッサのSAMセルに記憶場
所が移動し、横に並んだ要素プロセッサ数が入力映像信
号の一水平走査期間の画素数分(H)以上あるので、入力
映像信号の一水平走査期間分を入力SAM部121に蓄
積することができる。このような入力動作は、水平走査
期間毎に繰り返される。
[0070] Input Specifies the input pointer signal S IP is so moved from the left edge of the element processors to each of the input video signal clock in order in the right edge of the element processor, the input video signal data is input SAM cell 121B of the leftmost element processor
The storage location is sequentially moved to the SAM cell of the element processor in the right direction from the right, and the number of element processors arranged horizontally is equal to or more than the number of pixels (H) in one horizontal scanning period of the input video signal. The scanning period can be stored in the input SAM unit 121. Such an input operation is repeated every horizontal scanning period.

【0071】プログラム制御部125は、このようにし
て入力映像信号の一水平走査期間のデータが入力SAM
部121に蓄積される毎に、プログラムに従って入力S
AM部121、データメモリ部122、ALUアレイ部
123、出力SAM部124を以下のようにSIMD制
御して処理の実行をする。このプログラム制御は水平走
査期間ごとに繰り返される。水平走査期間の時間をこの
プロセッサの命令サイクル周期で割り算したステップ数
だけのプログラムが組める。SIMD制御であるから、
以下の動作は全ての要素プロセッサにおいて同時に同様
に実行される。
The program control unit 125 outputs the data of one horizontal scanning period of the input video signal to the input SAM.
Each time it is stored in the unit 121, the input S
The AM unit 121, the data memory unit 122, the ALU array unit 123, and the output SAM unit 124 are SIMD-controlled as described below to execute processing. This program control is repeated every horizontal scanning period. A program can be constructed by the number of steps obtained by dividing the time of the horizontal scanning period by the instruction cycle period of this processor. Because it is SIMD control,
The following operation is similarly executed in all the element processors at the same time.

【0072】一水平走査期間分の入力SAM部121に
蓄積された入力映像信号データは、次の一水平走査期間
において、必要に応じて入力SAM部121からデータ
メモリ部122へ移され、その後の演算処理に使われ
る。
The input video signal data accumulated in the input SAM unit 121 for one horizontal scanning period is transferred from the input SAM unit 121 to the data memory unit 122 as necessary in the next one horizontal scanning period, and thereafter, Used for arithmetic processing.

【0073】最初の入力SAM部121からデータメモ
リ部122への転送動作は、入力SAM部121の必要
なビットの記憶内容を入力SAM読み出し信号SIRによ
り選んでアクセスしては、転送先のデータメモリ部12
2の所定のメモリセルへメモリアクセス信号SWAを出し
て書き込んでいくことにより実現する。入力SAM読み
出し信号SIRにより選ばれた入力SAMセル121Bで
は、トランジスタTr2がONとなって、コンデンサC1
の電位に応じた転送データ信号が縦の書き込み用ビット
線に生じる。この時、信号SBCがイネーブルされ、メモ
リアクセス信号SWAで選択されたデータメモリ部122
の所定のメモリセルのトランジスタTr11がONとなっ
て、コンデンサC11が転送データに応じた電位になる。
このデータ転送は縦方向の書き込み用ビット線を経由し
て1サイクルに1ビットづつ行われる。入力SAM部1
21の各入力SAMセル121Bからの読み出し信号S
IRとデータメモリ部122の各メモリセル122Aへの
メモリアクセス信号SWAは同じアドレス空間にあり、し
かしそれぞれのロウデコーダでデコードされてワード線
として与えられている。
[0073] The first transfer operation from the input SAM unit 121 to the data memory unit 122 accesses to select the input SAM read signal S IR storage contents of the necessary bits in the input SAM unit 121, the transfer destination of the data Memory unit 12
This is realized by outputting and writing the memory access signal SWA to two predetermined memory cells. In the input SAM read signal S input SAM cell 121B selected by the IR, the transistor Tr 2 is a ON, the capacitor C 1
A transfer data signal corresponding to the potential of the vertical write bit line is generated on the vertical write bit line. At this time, the signal S BC is enabled and the data memory unit 122 selected by the memory access signal S WA
Transistor Tr 11 of a given memory cell is turned ON, become potential capacitor C 11 is corresponding to the transfer data.
This data transfer is performed one bit at a time via a vertical write bit line in one cycle. Input SAM unit 1
Read signal S from each of the 21 input SAM cells 121B
Memory access signal S WA to each of the memory cells 122A of the IR and the data memory unit 122 is in the same address space, but are given as being decoded word line in each row decoder.

【0074】データメモリ部122には、過去に上述の
ようにして書き込まれた入力データや演算途中のデータ
が記憶されている。それらのデータ或いはALUセル1
23A中の1ビットレジスタ(FF)に記憶したデータを
用いて、ALUでのビット単位の必要な演算処理を順次
進めることができる。例えばデータメモリ部122のあ
るビットのメモリセル122Aのデータと別のビットの
メモリセル122Aのデータを加算して再びデータメモ
リ部122の更に別のビットのメモリセル122Aに加
算結果を書き込む場合は次のようになる。データメモリ
部122のあるビットのメモリセル122Aへ読み出し
信号SRAAを出して、そのセルのトランジスタTr13
ONにして、コンデンサC11に記憶されていたデータを
片方の読み出し用ビット線に出す。同時にもう一つのビ
ットのメモリセル122Aへも読み出し信号SRBAを出
して、そのセルのトランジスタTr14をONにして、コ
ンデンサC11に記憶されていたデータをもう片方の読み
出し用ビット線に出す。これら2つの読み出されたデー
タは、ALUアレイ部123のセレクタ(SEL)に所定
の経路選択をさせ、ALU123Bに加算をさせ、AL
U123Bからの出力は、信号SBCAをイネーブルして
演算結果データを書き込み用ビット線に出し、そしてデ
ータメモリ部122の所定の書き込みメモリセル122
Aへ書き込みメモリアクセス信号SWAを出してそのセル
のトランジスタTr11をONにして、コンデンサC11
ALU出力データに応じた電位になる。このALUセル
123Aでの演算動作は、ALU制御信号SALU-CONT
よりプログラムから指定される。ALUセル123Aで
演算した結果は、再びデータメモリ部122に書き込む
か、或いは必要に応じてALUセル123A中の1ビッ
トレジスタ(FF)に記憶することもできる。加算の場合
は普通、キャリーをビットレジスタ(FF)に、サムをデ
ータメモリ部121に導く。
The data memory unit 122 stores input data written in the past as described above and data in the middle of calculation. Their data or ALU cell 1
By using the data stored in the 1-bit register (FF) in the 23A, the necessary arithmetic processing in the ALU in bit units can be sequentially advanced. For example, to add the data of the memory cell 122A of one bit of the data memory unit 122 and the data of the memory cell 122A of another bit and write the addition result to the memory cell 122A of another bit of the data memory unit 122 again, become that way. Out of the data memory unit 122 of a certain readout signal S RAA to bits of the memory cells 122A, the transistor Tr 13 of the cell in ON, the issue data stored in the capacitor C 11 to one of the read bit line. At the same time issues a read signal S RBA also to another bit memory cell 122A, the transistor Tr 14 of the cell in ON, the issue data stored in the capacitor C 11 to the other read bit line. These two read data are caused to cause the selector (SEL) of the ALU array unit 123 to select a predetermined path, to cause the ALU 123B to add,
Output from U123B is to enable the signal S BCA out to the bit line for writing the operation result data, and a predetermined write memory cells of the data memory unit 122 122
And the transistor Tr 11 of the cell in ON issues a write memory access signal S WA to A, becomes a potential capacitor C 11 is corresponding to the ALU output data. The arithmetic operation in the ALU cell 123A is designated from a program by the ALU control signal S ALU-CONT . The result calculated by the ALU cell 123A can be written to the data memory unit 122 again, or can be stored in the 1-bit register (FF) in the ALU cell 123A as needed. In the case of addition, the carry is usually led to the bit register (FF), and the sum is led to the data memory unit 121.

【0075】このようにしてデータメモリ部122か
ら、プログラムに応じてデータを読み出してはALUア
レイ部123で必要な算術演算或いは論理演算を施し、
再びデータメモリ部122の所定のアドレスに書き込む
ことが出来る。この演算処理は全てビット処理であり、
サイクル当たり1ビットづつ処理を進める。例えば論理
演算を実行するには、それが8ビットのデータ同士であ
れば、1ビットづつ処理を進めるので必然的に8サイク
ルかかることになる。また8ビットのデータ同士の加算
であれば、必然的に9サイクルかかることになる。8ビ
ットのデータ同士の乗算の場合は、64回のビット加算
と等価なので、単純には64サイクル強かけて実現され
ることになる。
As described above, data is read from the data memory unit 122 in accordance with the program, and the ALU array unit 123 performs a necessary arithmetic operation or logical operation.
The data can be written to a predetermined address of the data memory unit 122 again. This arithmetic processing is all bit processing,
The process proceeds one bit per cycle. For example, in order to execute a logical operation, if it is 8-bit data, the process proceeds one bit at a time, so that it takes eight cycles inevitably. In addition, the addition of 8-bit data necessarily takes 9 cycles. Multiplication between 8-bit data is equivalent to 64 bit additions, so that it is simply realized over 64 cycles.

【0076】一水平走査期間の時間内に処理すべき演算
処理が済むと、その水平走査期間のうちに、プログラム
の最後の部分でその水平走査期間分の演算処理済みの出
力データを出力SAM部124に移す必要がある。デー
タメモリ部122の出力すべきデータが記憶されている
所定のメモリセル122Aへメモリアクセス信号SRAA
或いはSRBAを出してそのセルのトランジスタTr13
いはトランジスタTr14をONにして、コンデンサC11
に記憶されていたデータを読み出し用ビット線に出す。
ALUアレイ部123には通過する制御信号を出し、出
力SAM部124には所定のビットの出力SAMセル1
24Bにデータ転送されるようにその出力SAMセル1
24Bに書き込み信号SOWが出され、そのセルのトラン
ジスタTr17がONして、コンデンサC4がそのデータ
に応じた電位となる。データは縦方向のビット線を経由
して1ビット1ビットデータ転送される。この時データ
移動に際してALUで何らかの処理をしても良いし、し
なくてもよい。出力SAM部124の各出力SAMセル
124Bへの書き込み信号SOWとデータメモリ部122
の各メモリセル122Aへのメモリアクセス信号は同じ
アドレス空間にあり、しかしそれぞれのロウデコーダで
デコードされてワード線として与えられている。
When the arithmetic processing to be processed is completed within the time of one horizontal scanning period, the output SAM unit outputs the arithmetically processed output data for the horizontal scanning period in the last part of the program during the horizontal scanning period. Need to move to 124. A memory access signal S RAA is sent to a predetermined memory cell 122A in which data to be output from the data memory unit 122 is stored.
Alternatively, the transistor Tr 13 or the transistor Tr 14 of the cell is turned on by turning on the S RBA and the capacitor C 11
Is output to the read bit line.
A control signal to be passed is output to the ALU array unit 123, and an output SAM cell 1 of a predetermined bit is output to the output SAM unit 124.
SAM cell 1 so that data is transferred to 24B.
The write signal S OW is issued and 24B, the transistor Tr 17 of the cell is turned ON, the potential of the capacitor C 4 is according to the data. Data is transferred one bit at a time via a vertical bit line. At this time, the ALU may or may not perform some processing when data is moved. The write signal S OW to each output SAM cell 124B of the output SAM unit 124 and the data memory unit 122
Are in the same address space, but are decoded by respective row decoders and provided as word lines.

【0077】以上のように、一水平走査期間の時間のう
ちに、入力SAM部121に蓄積された入力データのデ
ータメモリ部122への移動、必要な演算処理、そして
出力SAM部124への出力データの移動までが、ビッ
トを単位とするSIMD制御プログラムで制御され実行
される。このプログラム処理は水平走査期間を単位とし
て繰り返される。SIMD制御なので、全ての要素プロ
セッサは連動動作をしており、水平走査期間分の画素数
(H)に対して、同じ処理がなされる。
As described above, during the time of one horizontal scanning period, the input data stored in the input SAM section 121 is moved to the data memory section 122, necessary arithmetic processing, and output to the output SAM section 124. Up to data movement is controlled and executed by a SIMD control program in units of bits. This program processing is repeated for each horizontal scanning period. Because of the SIMD control, all the element processors operate in conjunction, and the number of pixels for the horizontal scanning period
The same processing is performed for (H).

【0078】このような水平走査期間単位のプログラム
処理が終わって出力SAM部124に移された出力デー
タは、更に次の水平走査期間に次のように出力SAM部
124から出力される。出力映像信号データは出力SA
M部124から出力データバスを介して出力端子DOUT
へ導かれる。
The output data transferred to the output SAM unit 124 after the completion of the program processing in units of the horizontal scanning period is output from the output SAM unit 124 in the next horizontal scanning period as follows. Output video signal data is output SA
Output terminal D OUT from M section 124 via output data bus
Led to.

【0079】出力ポインタ124Aは一つの要素プロセ
ッサにだけ論理「H」を立てた1ビット信号すなわち出
力ポインタ信号SOPを発生し、その論理「H」で指定さ
れた要素プロセッサの出力SAMセル124Bから出力
データが出力データバスに読み出され、出力映像信号デ
ータとなる。当該ポインタで指定された出力SAMセル
124AではトランジスタTr8がONとなって、コン
デンサC4の電位に応じた出力信号が出力データバスに
得られる。出力ポインタ信号の論理「H」が出力映像信
号のクロックごとに左端の要素プロセッサから右端の要
素プロセッサに移動することにより、出力データの読み
出しは左端の要素プロセッサの出力SAMセル124B
から順に右方向の要素プロセッサのSAMセルに移って
行き、横に並んだ要素プロセッサ数が映像信号の一水平
走査期間の画素数分(H)以上であるので、出力映像信号
の一水平走査期間分のデータを出力SAM部124から
出力できる。このような出力動作は水平走査期間毎に繰
り返される。
[0079] The output pointer 124A is a 1-bit signal or the output pointer signal S OP made a logic "H" only one element processor generates, from the output SAM cell 124B of element processors specified in the logical "H" The output data is read out to the output data bus and becomes output video signal data. Transistor Tr 8 In the output SAM cell 124A designated by the pointer is turned ON, an output signal corresponding to the potential of the capacitor C 4 is obtained in the output data bus. The logic "H" of the output pointer signal moves from the leftmost element processor to the rightmost element processor every clock of the output video signal, so that the output data is read out from the output SAM cell 124B of the leftmost element processor.
From the right to the SAM cells of the element processors in the right direction. Since the number of element processors arranged horizontally is equal to or more than the number of pixels (H) in one horizontal scanning period of the video signal, one horizontal scanning period of the output video signal is used. Minute data can be output from the output SAM unit 124. Such an output operation is repeated every horizontal scanning period.

【0080】ここで、 1.入力データの入力SAM部121への書き込みによ
る入力動作。
Here, 1. An input operation by writing input data to the input SAM unit 121.

【0081】2.プログラム制御部125のSIMD制
御による、入力SAM部121に蓄積された入力データ
のデータメモリ部122への移動、必要な演算処理、出
力SAM部124への出力データの移動。
2. Movement of input data accumulated in the input SAM unit 121 to the data memory unit 122, necessary arithmetic processing, and movement of output data to the output SAM unit 124 by SIMD control of the program control unit 125.

【0082】3.出力データの出力SAM部124から
の読み出しによる出力動作。
3. An output operation by reading output data from the output SAM unit 124.

【0083】の3つの動作は、映像信号の一水平走査期
間を単位とするパイプライン動作になっており、一つの
水平走査期間の入力データに注目すれば、それぞれの動
作は一水平走査期間の時間づつずれた形で実行される
が、3つの動作は連続して同時に並行して進行できる。
The three operations are pipeline operations in units of one horizontal scanning period of a video signal. If attention is paid to input data in one horizontal scanning period, each operation is performed in one horizontal scanning period. Although performed in a time-shifted manner, the three operations can proceed sequentially and simultaneously in parallel.

【0084】このような画像用リニアアレイ型多並列プ
ロセッサにおいては、水平方向の同じ画素位置では、ど
の水平走査期間についても一つの要素プロセッサがいつ
も担当するので、過去の水平走査期間の入力データを後
の水平走査期間までデータメモリ部122内に保存する
ために、データを入力SAM部121からデータメモリ
部122に移す際にそのアドレスを水平走査期間毎にず
らすメモリアドレス発生の工夫をすることにより、それ
ぞれの要素プロセッサでは、縦方向の所定の連続数の画
素データをデータメモリ部122内に持つことができ
て、垂直方向のFIRディジタルフィルタ演算が実現で
きることが知られている。
In such an image linear array type multi-parallel processor, one element processor is always in charge of any horizontal scanning period at the same pixel position in the horizontal direction. In order to store the data in the data memory unit 122 until the subsequent horizontal scanning period, when the data is transferred from the input SAM unit 121 to the data memory unit 122, the address is shifted for each horizontal scanning period. It is known that each of the element processors can have a predetermined continuous number of pixel data in the vertical direction in the data memory unit 122, thereby realizing the FIR digital filter operation in the vertical direction.

【0085】また図1や図3の説明で触れなかったが、
要素プロセッサ列において、隣接する数プロセッサ間で
はプロセッサ間通信のための接続が用意されている。具
体的には図1のデータメモリ部122とALUアレイ部
123の間にその接続配線があり、図3のALUセル1
23Aのメモリセル122A側のビット線がALUセル
123A内のセレクタSELに入出力されるところで、
自分の要素プロセッサ内のデータメモリ部122のビッ
ト線だけでなく、左右の隣接する数プロセッサのデータ
メモリ部122のビット線の中からビット線接続を選べ
るようにしているので、これを利用して各要素プロセッ
サは左右いくつかの隣接する要素プロセッサのデータメ
モリ部122をアクセスすることができる。これによっ
て、水平方向に所定の連続数の画素データを扱うことが
できて、水平方向のFIRディジタルフィルタ演算も実
現できるようになっている。
Although not mentioned in the description of FIGS. 1 and 3,
In the element processor row, a connection for communication between processors is prepared between several adjacent processors. Specifically, there is a connection line between the data memory unit 122 and the ALU array unit 123 in FIG.
Where the bit line on the memory cell 122A side of 23A is input / output to the selector SEL in the ALU cell 123A,
The bit line connection can be selected not only from the bit line of the data memory unit 122 in the own element processor but also from the bit lines of the data memory unit 122 of the left and right adjacent processors. Each element processor can access the data memory unit 122 of some adjacent element processors on the left and right. As a result, a predetermined continuous number of pixel data can be handled in the horizontal direction, and the FIR digital filter operation in the horizontal direction can be realized.

【0086】ただしこの左右いくつかの隣接する要素プ
ロセッサのデータメモリ部122のアクセスは、SIM
D制御であるから、例えば右隣の要素プロセッサのデー
タメモリ部122をアクセスするサイクルでは、全ての
要素プロセッサは右隣の要素プロセッサのデータメモリ
部122をアクセスしていることになる。もちろんこれ
は普通のFIRディジタルフィルタ実現には支障がな
い。また、直接プロセッサ間通信接続のない少し離れた
要素プロセッサのデータアクセスについては、近傍のプ
ロセッサ間通信を繰り返すことにより、多少プログラム
ステップは増えるが実現可能である。
However, the access to the data memory unit 122 of some of the adjacent element processors on the left and right
Since the control is the D control, for example, in a cycle in which the data memory unit 122 of the right element processor is accessed, all the element processors are accessing the data memory unit 122 of the right element processor. Of course, this does not hinder the implementation of ordinary FIR digital filters. For data access of a slightly distant element processor without direct interprocessor communication connection, the number of program steps can be increased somewhat by repeating communication between nearby processors.

【0087】上述したように、画素数変換処理のための
補間フィルタ演算は、SIMD制御されるリニアアレイ
型多並列プロセッサによるソフトウェアプログラム処理
にて実現可能である。
As described above, the interpolation filter operation for the pixel number conversion processing can be realized by the software program processing by the SIMD-controlled linear array type multi-parallel processor.

【0088】ここで、前述した図1の本発明実施例の画
像信号処理装置の構成は、さらに詳細には図4に示すよ
うに構成されるものである。
Here, the configuration of the image signal processing apparatus of the embodiment of the present invention described above with reference to FIG. 1 is configured in more detail as shown in FIG.

【0089】すなわち、本実施例の画像信号処理装置
は、リニアアレイ型多並列プロセッサを用いて画像処理
を行う際、水平及び垂直フィルタを2つのプロセッサエ
レメント群で独立に実行するようにしている。このよう
に、分離型フィルタ構成とすることで、効率的な水平,
垂直フィルタを一般の1次元フィルタ設計手法により実
現できる。また、これを2つの独立したプロセッサエレ
メント群で実行するという構成により、プログラムの独
立性,保守性などを高めることができ、利用し易くして
いる。
That is, in the image signal processing apparatus of this embodiment, when performing image processing using the linear array type multi-parallel processor, the horizontal and vertical filters are independently executed by two processor element groups. In this way, by adopting a separate filter configuration, efficient horizontal
The vertical filter can be realized by a general one-dimensional filter design technique. In addition, the configuration in which this is executed by two independent processor element groups can enhance the independence, maintainability, and the like of the program and make it easy to use.

【0090】前記図1をさらに詳細に示す図4のリニア
アレイ型多並列プロセッサ20は、複数の要素プロセッ
サ(プロセッサエレメント:PE)23を有してなり、
各要素プロセッサ23は、上下2組のプロセッサエレメ
ント群21,22を形成している。プロセッサエレメン
ト群21,22の要素プロセッサ23の数は、少なくと
も画像の水平1ライン分を構成する画素の数より多く、
プロセッサエレメント群21は例えば水平用として、ま
たプロセッサエレメント群22は例えば垂直用として設
けられている。これらプロセッサエレメント群21,2
2の各要素プロセッサ23は、それぞれが前記図1のデ
ータメモリ部122及びALUアレイ部123の機能を
有するものである。
The linear array type multi-parallel processor 20 of FIG. 4, which shows FIG. 1 in more detail, includes a plurality of element processors (processor elements: PE) 23.
Each element processor 23 forms two upper and lower processor element groups 21 and 22. The number of element processors 23 of the processor element groups 21 and 22 is at least larger than the number of pixels constituting one horizontal line of the image,
The processor element group 21 is provided for horizontal use, for example, and the processor element group 22 is provided for vertical use, for example. These processor element groups 21 and 21
Each of the two element processors 23 has the functions of the data memory unit 122 and the ALU array unit 123 in FIG.

【0091】また、コントローラ26,28と係数メモ
リ27,29は前記図1のプログラム制御部125と対
応している。
The controllers 26 and 28 and the coefficient memories 27 and 29 correspond to the program controller 125 shown in FIG.

【0092】コントローラ26は、プロセッサエレメン
ト群21と係数メモリ27を前述したようなSIMD制
御するものであり、係数メモリ27は演算に必要なデー
タをプロセッサエレメント群21に供給する働きを持
つ。プロセッサエレメント群21に含まれる全ての要素
プロセッサ23は、コントローラ26の制御信号に基づ
く同一の演算処理を行う。
The controller 26 performs the above-described SIMD control of the processor element group 21 and the coefficient memory 27, and the coefficient memory 27 has a function of supplying data necessary for calculation to the processor element group 21. All the element processors 23 included in the processor element group 21 perform the same arithmetic processing based on the control signal of the controller 26.

【0093】また、コントローラ28,係数メモリ29
についても同様の関係がある。すなわち、コントローラ
28は、プロセッサエレメント群22と係数メモリ29
をSIMD制御するものであり、係数メモリ29は演算
に必要なデータをプロセッサエレメント群22に供給す
る働きを持つ。プロセッサエレメント群22に含まれる
全ての要素プロセッサ23は、コントローラ28の制御
信号に基づく同一の演算処理を行う。
The controller 28 and the coefficient memory 29
Has a similar relationship. That is, the controller 28 includes the processor element group 22 and the coefficient memory 29
Is controlled by SIMD, and the coefficient memory 29 has a function of supplying data necessary for calculation to the processor element group 22. All the element processors 23 included in the processor element group 22 perform the same arithmetic processing based on the control signal of the controller 28.

【0094】このようにコントローラ26,28が2系
統設けられているので、プロセッサエレメント群21,
22はそれぞれ独立に動作できる。
As described above, since the two systems of the controllers 26 and 28 are provided, the processor element groups 21 and
22 can operate independently.

【0095】入力レジスタ24は、図1の入力SAM部
121と対応し、シリアル→パラレル変換を行うメモリ
である。この入力レジスタ24では、画像データが1画
素ずつ順次入力され、1ライン分揃った時点で、並列に
読み出される。当該入力レジスタ24への画素データ入
力の際には、例えば隙間なく詰め込むのではなく、任意
の場所にゼロを挿入して全体の画素数を拡大するアップ
サンプラーとしても動作可能となっている。
The input register 24 corresponds to the input SAM unit 121 of FIG. 1 and is a memory for performing serial-to-parallel conversion. In the input register 24, image data is sequentially input one pixel at a time, and is read out in parallel when one line is completed. At the time of inputting pixel data to the input register 24, for example, it is also possible to operate as an upsampler that expands the total number of pixels by inserting zeros at arbitrary locations, instead of filling them without gaps.

【0096】出力レジスタ25は、図1の出力SAM部
124と対応しており、パラレル→シリアル変換を行う
メモリである。この出力レジスタ25では、1ライン分
の画素データを並列に入力し、それを1画素ずつ順次出
力する。当該出力レジスタ25からの画素データ出力の
際には、例えば任意の場所の画素データをスキップして
全体の画素数を縮小するダウンサンプラーとしても動作
可能となっている。
The output register 25 corresponds to the output SAM unit 124 in FIG. 1 and is a memory for performing parallel-to-serial conversion. The output register 25 inputs pixel data for one line in parallel, and sequentially outputs the pixel data one pixel at a time. When the pixel data is output from the output register 25, for example, it is possible to operate as a downsampler for skipping pixel data at an arbitrary place and reducing the total number of pixels.

【0097】次に、この図4に示したリニアアレイ型多
並列プロセッサ20の動作について説明する。
Next, the operation of the linear array type multi-parallel processor 20 shown in FIG. 4 will be described.

【0098】図4において、画像入力端子10から水平
方向に1ライン分の画素データが、入力レジスタ24に
順次入力された後、並列に上側のプロセッサエレメント
群21に供給される。プロセッサエレメント群21で
は、各要素プロセッサ23が受け取った各々の画素デー
タに対して、コントローラ26からの制御命令と係数メ
モリ27からの係数データを用いてフィルタ演算処理を
行う。上側のプロセッサエレメント群21による処理結
果は、そのまま下側のプロセッサエレメント群22に並
列に入力され、必要であれば、更にフィルタ演算処理が
施される。下側のプロセッサエレメント群22による処
理結果は、出力レジスタ25に並列に入力され、1画素
ずつ順次出力されて1ライン分の処理結果が得られる。
In FIG. 4, pixel data for one line in the horizontal direction is sequentially input from the image input terminal 10 to the input register 24, and then supplied to the upper processor element group 21 in parallel. The processor element group 21 performs a filter operation on each pixel data received by each element processor 23 using a control command from the controller 26 and coefficient data from the coefficient memory 27. The processing result by the upper processor element group 21 is directly input to the lower processor element group 22 in parallel, and if necessary, further filter operation processing is performed. The processing result by the lower processor element group 22 is input in parallel to the output register 25, and is sequentially output one pixel at a time to obtain a processing result for one line.

【0099】以上により、リニアアレイ型多並列プロセ
ッサ20は、水平方向に1ラインを形成する画素を一度
に処理できる。これを垂直方向のライン数だけ繰り返す
と、2次元の画像処理ができる。当該プロセッサ20の
具体的動作については前述したように既に説明してある
ので、ここではその詳細についての説明は割愛する。
As described above, the linear array type multi-parallel processor 20 can process pixels forming one line in the horizontal direction at a time. If this is repeated by the number of lines in the vertical direction, two-dimensional image processing can be performed. Since the specific operation of the processor 20 has already been described above, a detailed description thereof will be omitted here.

【0100】次に、上記プロセッサエレメント群21,
22によるフィルタ演算処理の内容について述べる。な
お、リニアアレイ型多並列プロセッサ20を用いて水平
フィルタ,垂直フィルタを実現する方法に関しても本件
出願人は既に開示しているので、ここでは簡単に説明す
る。
Next, the processor element group 21,
The content of the filter operation process by the filter 22 will be described. Since the applicant has already disclosed a method of realizing a horizontal filter and a vertical filter using the linear array type multi-parallel processor 20, it will be briefly described here.

【0101】プロセッサエレメント群21,22を構成
する各要素プロセッサ23は、互いに左右の近傍の要素
プロセッサ23と通信を行うことができ、このため、同
一ライン上の複数の画素データを用いた演算ができる。
また、要素プロセッサ23は、前述したように、必要に
応じて複数ライン分の画素データを保持するメモリを備
えているので、ライン間に跨る演算も行える。
Each of the element processors 23 constituting the processor element groups 21 and 22 can communicate with the element processors 23 located on the left and right sides of each other, so that an operation using a plurality of pixel data on the same line can be performed. it can.
Further, as described above, since the element processor 23 includes a memory for holding pixel data of a plurality of lines as necessary, the element processor 23 can perform an operation across lines.

【0102】ここで、上記画素数変換として、例えば水
平,垂直方向ともに2/3倍に画素数を縮小する場合を
例に挙げると、当該2/3倍縮小画素数変換は、例えば
図5の(A)に示すように、水平方向9画素で垂直方向
6画素の画像から、例えば図5の(B)に示すように、
水平方向6画素で垂直方向4画素の画像を生成するよう
なことである。このように図5の(A)の画像から図5
の(B)画素を生成するためには、例えば図5の(C)
及び図中の式(a)のように図5の(A)中の4点の原
画素D1〜D4から補間画素Yを生成するような処理を、
当該図5の(A)の画像中の各画素について行い、得ら
れた補間画素Yから図5の(B)の画像を生成する。
Here, as an example of the above-mentioned pixel number conversion, a case where the number of pixels is reduced by a factor of 2/3 in both the horizontal and vertical directions is taken as an example. As shown in FIG. 5A, from an image of 9 pixels in the horizontal direction and 6 pixels in the vertical direction, for example, as shown in FIG.
It is like generating an image of 6 pixels in the horizontal direction and 4 pixels in the vertical direction. As described above, the image of FIG.
In order to generate the (B) pixel shown in FIG.
And a process of generating an interpolated pixel Y from the four original pixels D 1 to D 4 in FIG. 5A as in equation (a) in FIG.
This is performed for each pixel in the image of FIG. 5A, and the image of FIG. 5B is generated from the obtained interpolated pixels Y.

【0103】この図5の画素数変換の例では、2ライン
分の入力画素データが揃えば、出力画素が演算できる。
また、水平,垂直方向に2/3倍の画素数変換が行われ
るが、水平方向に関しては出力レジスタ25のスキップ
機能を用いて、画素数を2/3に間引く。一方、垂直方
向に関しては、「2ライン入力して1ライン出力す
る」、「1ライン入力して1ライン出力する」を交互に
繰り返すことで、出力ライン数は入力ライン数の2/3
になる。
In the example of the pixel number conversion shown in FIG. 5, if the input pixel data for two lines are aligned, the output pixel can be calculated.
In addition, the number of pixels is converted by 2/3 times in the horizontal and vertical directions. In the horizontal direction, the number of pixels is reduced to 2/3 by using the skip function of the output register 25. On the other hand, in the vertical direction, by alternately repeating “input two lines and output one line” and “input one line and output one line”, the number of output lines is / of the number of input lines.
become.

【0104】ここで、2次元フィルタのうち、上述のよ
うな水平,垂直の分離型フィルタは、2つの1次元フィ
ルタにて実現することができる。この分離型フィルタに
は、必要な演算器の数を減らせることや、多くの1次元
フィルタ設計手法が利用できることなどの利点があり、
実用上極めて重要である。簡単に説明すると、例えば図
5ような画素数変換を行うフィルタ(Y=C11+C2
2+C33+C44)は、(C1=C57,C2=C6
7,C3=C58,C4=C68)となるようなフィルタ
係数C5〜C8が存在するとき、(H1=C51+C
62,H2=C53+C64)なる水平フィルタと、
(Y=C71+C82)なる垂直フィルタに分離でき
る。
Here, among the two-dimensional filters, the horizontal and vertical separation type filters as described above can be realized by two one-dimensional filters. This separable filter has the advantages of reducing the number of necessary arithmetic units and being able to use many one-dimensional filter design techniques.
It is extremely important in practical use. In brief, for example, a filter (Y = C 1 D 1 + C 2) for performing pixel number conversion as shown in FIG.
(D 2 + C 3 D 3 + C 4 D 4 ) is (C 1 = C 5 C 7 , C 2 = C 6 C)
7, C 3 = when C 5 C 8, C 4 = C 6 C 8) and the filter coefficients C 5 -C 8 such that there is, (H 1 = C 5 D 1 + C
6 D 2 , H 2 = C 5 D 3 + C 6 D 4 )
(Y = C 7 H 1 + C 8 H 2 ).

【0105】ここで、上述したような水平,垂直フィル
タを2つのプロセッサエレメント群21,22にて独立
に実行するためのプログラムや係数,画素数変換のため
の制御情報等は、図6に示すような流れにより自動的に
生成することができる。すなわち、図6に示す流れによ
り上記プログラムや係数等を自動的に発生すれば、例え
ば、フィルタの仕様を決定するだけで、そのフィルタ仕
様に基づく画素数変換装置が実現可能となり、図4の構
成では、図6の流れにて発生されたプログラムや係数を
入れ換えるだけで、回路の変更をすることなく多種の画
素数変換を含むフィルタ処理を行えるようになる。
FIG. 6 shows a program for executing the horizontal and vertical filters as described above independently in the two processor element groups 21 and 22, coefficients, control information for converting the number of pixels, and the like. It can be automatically generated by such a flow. That is, if the above-described program, coefficients, and the like are automatically generated according to the flow shown in FIG. 6, for example, only by determining the specification of the filter, a pixel number conversion device based on the filter specification can be realized. In this case, it is possible to perform various types of filter processing including pixel number conversion simply by exchanging the programs and coefficients generated in the flow of FIG. 6 without changing the circuit.

【0106】この図6において、先ず、所望のフィルタ
を設計するための例えばタップ数や変換比率を設定する
ためのフィルタ仕様30に基づき、フィルタ設計回路3
3が水平及び垂直のフィルタプログラム34,36及び
フィルタ係数(フィルタ係数セット)35,37を発生
する。上記水平フィルタプログラム34は端子41及び
図4の端子11を介して前記コントローラ26に送ら
れ、上記水平フィルタ係数35は端子42及び図4の端
子12を介して前記係数メモリ27に送られる。また、
上記垂直フィルタプログラム36は端子43及び図4の
端子13を介して前記コントローラ28に送られ、上記
垂直フィルタ係数37は端子44及び図4の端子14を
介して前記係数メモリ29に送られる。フィルタ係数セ
ット35,37は、一般の1次元フィルタ設計ツールを
用いても、また、ライブラリから選択してもよい。画像
の拡大縮小で、画素数の変化を伴う場合は、プロセッサ
エレメント割当回路31がデータ入力レジスタ24及び
データ出力レジスタ25に対するプロセッサエレメント
スキップ情報32を発生し、水平方向の画素数を調整す
る。上記スキップ情報32は、端子45を介して図4の
端子15に送られ、入力レジスタ24或いは出力レジス
タ25に送られることになる。また、垂直方向に関して
は、入力ライン数と出力ライン数の比を制御するため
に、タイミング設計回路38がタイミング情報39を発
生し、これが垂直フィルタプログラム36に組み込まれ
る。なお、図4では、上下のプロセッサエレメント群2
1,22にそれぞれ水平,垂直フィルタを割り当ててい
るが、逆の割り当てを行っても、同一の処理結果が得ら
れる。
In FIG. 6, first, a filter design circuit 3 based on a filter specification 30 for designing, for example, the number of taps and a conversion ratio for designing a desired filter.
3 generates horizontal and vertical filter programs 34, 36 and filter coefficients (filter coefficient sets) 35, 37. The horizontal filter program 34 is sent to the controller 26 via the terminal 41 and the terminal 11 in FIG. 4, and the horizontal filter coefficient 35 is sent to the coefficient memory 27 via the terminal 42 and the terminal 12 in FIG. Also,
The vertical filter program 36 is sent to the controller 28 via the terminal 43 and the terminal 13 in FIG. 4, and the vertical filter coefficient 37 is sent to the coefficient memory 29 via the terminal 44 and the terminal 14 in FIG. The filter coefficient sets 35 and 37 may use a general one-dimensional filter design tool, or may be selected from a library. In the case where the scaling of an image involves a change in the number of pixels, the processor element assignment circuit 31 generates processor element skip information 32 for the data input register 24 and the data output register 25, and adjusts the number of pixels in the horizontal direction. The skip information 32 is sent to the terminal 15 of FIG. 4 via the terminal 45 and sent to the input register 24 or the output register 25. In the vertical direction, the timing design circuit 38 generates timing information 39 for controlling the ratio of the number of input lines to the number of output lines, and this is incorporated in the vertical filter program 36. In FIG. 4, the upper and lower processor element groups 2
Although the horizontal and vertical filters are assigned to 1 and 22, respectively, the same processing result can be obtained by performing the opposite assignment.

【0107】次に、上記プロセッサエレメント割当回路
31の具体的な動作について説明する。
Next, a specific operation of the processor element assignment circuit 31 will be described.

【0108】当該プロセッサエレメント割当回路31
は、水平方向の画素数変換のためのスキップ情報32を
生成する。スキップ情報32は、水平フィルタプログラ
ム34において、フィルタ仕様30にて設定される変換
比率に基づき、水平画素数を変換するというように作用
する。すなわち入出力の画素数の比をNi:No(N
i,Noは互いに素)とするとき、変換比率R=No/
Niによって拡大と縮小に動作が分けられる。
The processor element assignment circuit 31
Generates skip information 32 for converting the number of pixels in the horizontal direction. The skip information 32 acts to convert the number of horizontal pixels based on the conversion ratio set by the filter specification 30 in the horizontal filter program 34. That is, the ratio of the number of input and output pixels is Ni: No (N
i and No are relatively prime), the conversion ratio R = No /
The operation is divided into enlargement and reduction by Ni.

【0109】先ず、R>1(拡大)の場合を説明する。First, the case where R> 1 (enlargement) will be described.

【0110】当該R>1の場合、入力レジスタ24に設
定するスキップ情報としては、例えば左からi番目の入
力レジスタに対し、(i mod Ni)<Noであれ
ば通常動作し、そうでなければスキップ動作するという
ようなスキップ情報を設定する。ただし、(i mod
Ni)は、iをNiで割った余りを表す。例えば、3
/2倍の拡大を行うときは、入力レジスタ24に対し、
次のようなスキップ情報32が送られる(ただし、○は
通常動作を、×はスキップ動作を表す)。
In the case of R> 1, the skip information to be set in the input register 24 is, for example, normal operation if (i mod Ni) <No with respect to the i-th input register from the left, otherwise, Set skip information such as skip operation. However, (i mod
Ni) represents the remainder of i divided by Ni. For example, 3
When performing the enlargement of / 2 times, the input register 24
The following skip information 32 is sent (however, ○ indicates a normal operation and X indicates a skip operation).

【0111】○○×○○×○○×・・・・ ここに、画像入力端子10から、例えば abcdefghi・・・・ なるデータが入力された場合、入力レジスタ24には ab0cd0ef0gh0i・・・ とういように格納され、データの個数が3/2倍に増え
た形でプロセッサエレメント群21に渡される。この入
力レジスタ24に格納されるデータのゼロが挿入された
位置には、後に水平フィルタプログラム34によって補
間画素が補われる。
When data such as abcdefghi... Is input from the image input terminal 10 to the input register 24, ab0cd0ef0gh0i. And passed to the processor element group 21 in a form in which the number of data is increased by 3/2 times. At the position where the zero of the data stored in the input register 24 is inserted, an interpolation pixel is later supplemented by the horizontal filter program 34.

【0112】次に、R<1(縮小)の場合を説明する。Next, the case where R <1 (reduction) will be described.

【0113】当該R<1の場合、出力レジスタ25に設
定するスキップ情報としては、例えば、左からi番目の
出力レジスタに対して、(i mod No)<Niで
あれば通常動作し、そうでなければスキップ動作すると
いうようなスキップ情報を設定する。ただし、(i m
od No)はiをNoで割った余りを表す。例えば、
2/3倍の縮小を行うときは、出力レジスタ25に対
し、次のようなスキップ情報32が送られる(ただし○
は通常動作を、×はスキップ動作を表す)。
In the case of R <1, the skip information to be set in the output register 25 is, for example, normal operation if (i mod No) <Ni with respect to the i-th output register from the left. If not, skip information such as performing a skip operation is set. However, (im
od No) represents the remainder of dividing i by No. For example,
To reduce the size by a factor of 2/3, the following skip information 32 is sent to the output register 25 (note that ○).
Represents a normal operation, and x represents a skip operation).

【0114】○○×○○×○○×・・・・ ここに、プロセッサエレメント群22から abcdefghi・・・・ なるデータが入力された場合、実際には出力レジスタ2
5からは abdegh・・・ とういうデータ列が出力され、データの個数は2/3に
減少する。
..,... Here, when data abcdefghi... Are input from the processor element group 22, the output register 2
5 output a data string such as abdeg..., And the number of data is reduced to 2/3.

【0115】次に、上記図6のフィルタ設計回路33の
具体的動作の説明を行う。
Next, a specific operation of the filter design circuit 33 shown in FIG. 6 will be described.

【0116】フィルタ設計回路33は、補間演算のため
の係数セットを求める。この係数セットは、水平フィル
タ係数35、垂直フィルタ係数36として利用されるこ
とになる。上記補間関数としては、例えばいわゆるキュ
ービック関数を用いることができ、このキュービック関
数を用いた例について以下に説明する。
The filter design circuit 33 obtains a coefficient set for the interpolation operation. This coefficient set is used as a horizontal filter coefficient 35 and a vertical filter coefficient 36. For example, a so-called cubic function can be used as the interpolation function, and an example using the cubic function will be described below.

【0117】キュービック関数Cub(x)は、次式
(5)にて表されるものである。なお、式(5)は前記
式(4)と同じ式である。ただし、式(5)に示される
キュービック関数の横軸は原画像をデジタル信号にサン
プリングするサンプリング間隔で正規化されているもの
とする。
The cubic function Cub (x) is represented by the following equation (5). Expression (5) is the same expression as expression (4). Here, it is assumed that the horizontal axis of the cubic function shown in Expression (5) is normalized by the sampling interval for sampling the original image into a digital signal.

【0118】 Cub(x)=|x|3−2|x|2+1 (|x|≦1の時) Cub(x)=−|x|3+5|x|2−8|x|+4 (1<|x|≦2の時) Cub(x)=0 (2<|x|の時) ・・・(5) この場合、フィルタのタップ数は4となり、式(6)に
示すように、補間画素Yは左右2つずつの原画素(例え
ばD0〜D3の4つの原画素とする)と、これら4つの原
画素D0〜D3に対応するフィルタ係数セットC0〜C3
積和演算により求める。
Cub (x) = | x | 3 −2 | x | 2 +1 (when | x | ≦ 1) Cub (x) = − | x | 3 +5 | x | 2 −8 | x | +4 ( 1 <| x | ≦ 2) Cub (x) = 0 (when 2 <| x |) (5) In this case, the number of taps of the filter is 4, and as shown in Expression (6), , the interpolation pixel Y is two left and right portions of the original pixels (e.g. the four original pixel D 0 to D 3), the filter coefficient set C 0 -C 3 corresponding to these four original pixels D 0 to D 3 By the product-sum operation of.

【0119】 Y=C0*D0+C1*D1+C2*D2+C3*D3 ・・・(6) また、上記フィルタ係数セットは、次のようにして決定
する。
Y = C 0 * D 0 + C 1 * D 1 + C 2 * D 2 + C 3 * D 3 (6) The filter coefficient set is determined as follows.

【0120】例えば、変換比率が3:2の場合、原画素
Dと補間画素Yの位置関係(位相関係)は図7のように
なる。
For example, when the conversion ratio is 3: 2, the positional relationship (phase relationship) between the original pixel D and the interpolated pixel Y is as shown in FIG.

【0121】この図7において、補間画素Y0と原画素
0は位相が一致しており、補間画素Y1は原画素D1
2と1/2だけずれている。補間画素Y2以降について
は以上の繰り返しであるから、異なる2種類の係数セッ
トが必要になる。例えば、補間画素Y0に対応する係数
セットを例えばC(0.0),・・・,C(0,3)とし、補間画
素Y1に対応する係数セットをC(1,0),・・・,C(1,
3)とすると、 C(0,0)=Cub(Y0から見たD-1の位置)=Cub(-1)=0 C(0,1)=Cub(Y0から見たD0の位置)=Cub(0)=0 C(0,2)=Cub(Y0から見たD1の位置)=Cub(1)=0 C(0,3)=Cub(Y0から見たD2の位置)=Cub(2)=0 C(1,0)=Cub(Y1から見たD0の位置)=Cub(-3/2)=-0.125 C(1,1)=Cub(Y1から見たD1の位置)=Cub(-1/2)=0.625 C(1,2)=Cub(Y1から見たD2の位置)=Cub(1/2)=0.625 C(1,3)=Cub(Y1から見たD3の位置)=Cub(3/2)=-0.125 フィルタ設計回路33は、以上の係数セットを求めるた
めのプログラムを有するものである。
In FIG. 7, the interpolation pixel Y 0 and the original pixel D 0 have the same phase, and the interpolation pixel Y 1 is the original pixel D 1 ,
It is shifted from D 2 by 1 /. Since the interpolation pixel Y 2 thereafter are the more repetitions, it is required two different coefficient sets. For example, interpolated pixel Y for example C (0.0) the coefficient set corresponding to the 0, ..., and C (0, 3), the coefficient set corresponding to the interpolated pixel Y 1 C (1, 0), ... , C (1,
3) When, C (0,0) = Cub (position of D -1 viewed from Y 0) = Cub (-1) = 0 C (0,1) = Cub ( a D 0 as viewed from the Y 0 Position) = Cub (0) = 0 C (0,2) = Cub (position of D 1 viewed from Y 0 ) = Cub (1) = 0 C (0,3) = Cub (D viewed from Y 0 ) 2 ) = Cub (2) = 0 C (1,0) = Cub (the position of D 0 viewed from Y 1 ) = Cub (−3/2) = − 0.125 C (1,1) = Cub ( position of D 1 as viewed from the Y 1) = Cub (-1/2) = 0.625 C (1,2) = Cub ( position of D 2 as viewed from the Y 1) = Cub (1/2) = 0.625 C ( 1, 3) = Cub (position of D 3 as viewed from the Y 1) = Cub (3/2) = - 0.125 filter design circuit 33 is configured with a program for determining the above coefficients set.

【0122】前記水平フィルタプログラム34、垂直フ
ィルタプログラム36は、当該フィルタ設計回路33に
て求めた係数セットを用いて、補間画素Yを次のように
計算する。
The horizontal filter program 34 and the vertical filter program 36 calculate the interpolation pixel Y using the coefficient set obtained by the filter design circuit 33 as follows.

【0123】 Y0=C(0,0)×D-1+ C(0,1)×D0+C(0,2)×D1+C(0,3)×D2 Y1=C(1,0)×D0+C(1,1)×D1+C(1,2)×D2+C(1,3)×D3 Y2=C(0,0)×D1+C(0,1)×D2+C(0,2)×D3+C(0,3)×D4 Y3=C(1,0)×D2+C(1,1)×D3+C(1,2)×D4+C(1,3)×D5 同様に、変換比率が4:3の場合の例を示す。この例で
は、原画素Dと補間画素Yの位相関係は3種類であるの
で、3種類の係数セットC(0,0),・・・,C(0,3)、C
(1,0),・・・,C(1,3)、C(2,0),・・・,C(2,3)が
求められる。
Y 0 = C (0,0) × D −1 + C (0,1) × D 0 + C (0,2) × D 1 + C (0,3) × D 2 Y 1 = C (1 , 0) × D 0 + C (1,1) × D 1 + C (1,2) × D 2 + C (1,3) × D 3 Y 2 = C (0,0) × D 1 + C (0,1 ) × D 2 + C (0,2) × D 3 + C (0,3) × D 4 Y 3 = C (1,0) × D 2 + C (1,1) × D 3 + C (1,2) × Similarly, D 4 + C (1,3) × D 5 shows an example where the conversion ratio is 4: 3. In this example, there are three types of phase relationships between the original pixel D and the interpolated pixel Y, and therefore three types of coefficient sets C (0,0),..., C (0,3), C (0,3)
, C (1,3), C (2,0),..., C (2,3) are obtained.

【0124】この例の場合も、入出力の画素数の比をN
i:No(Ni,Noは互いに素)とするとき、No種
類の係数セットが必要になる。
Also in this example, the ratio of the number of input / output pixels is N
When i: No (Ni and No are relatively prime), No type coefficient sets are required.

【0125】この4:3の場合、原画素Dと補間画素Y
の位置関係(位相関係)は、図8のようになる。
In the case of 4: 3, the original pixel D and the interpolation pixel Y
The positional relationship (phase relationship) is as shown in FIG.

【0126】ここで、当該4:3の例においても係数セ
ットを、前述同様にC(0,0),・・・,C(0,3)〜C(2,
0),・・・,C(2,3)とすると、 C(0,0)=Cub(Y0から見たD-1の位置) =Cub(-1)=0 C(0,1)=Cub(Y0から見たD0の位置) =Cub(0) =0 C(0,2)=Cub(Y0から見たD1の位置) =Cub(1) =0 C(0,3)=Cub(Y0から見たD2の位置) =Cub(2) =0 C(1,0)=Cub(Y1から見たD0の位置) =Cub(-4/3)=-0.148 C(1,1)=Cub(Y1から見たD1の位置) =Cub(-1/3)=0.815 C(1,2)=Cub(Y1から見たD2の位置) =Cub(2/3) =0.407 C(1,3)=Cub(Y1から見たD3の位置) =Cub(5/3) =-0.074 C(2,0)=Cub(Y2から見たD1の位置) =Cub(-5/3)=-0.074 C(2,1)=Cub(Y2から見たD2の位置) =Cub(-2/3)=0.407 C(2,2)=Cub(Y2から見たD3の位置) =Cub(1/3) =0.815 C(2,3)=Cub(Y2から見たD4の位置) =Cub(4/2) =-0.148 この例の場合のタイミング設計回路38の動作は以下の
ようになる。
Here, also in the 4: 3 example, the coefficient sets are set to C (0,0),..., C (0,3) to C (2,
0),..., C (2,3), C (0,0) = Cub (the position of D -1 as viewed from Y 0 ) = Cub (-1) = 0 C (0,1) = Cub (position of D 0 as viewed from Y 0 ) = Cub (0) = 0 C (0,2) = Cub (position of D 1 as viewed from Y 0 ) = Cub (1) = 0 C (0, 3) = Cub (position of D 2 as viewed from Y 0 ) = Cub (2) = 0 C (1,0) = Cub (position of D 0 as viewed from Y 1 ) = Cub (−4/3) = -0.148 C (1,1) = Cub (position of D 1 as viewed from the Y 1) = Cub (-1/3) = 0.815 C (1,2) = Cub ( position of D 2 as viewed from the Y 1) from = Cub (2/3) = 0.407 C (1,3) = Cub ( position of D 3 as viewed from the Y 1) = Cub (5/3) = -0.074 C (2,0) = Cub (Y 2 position of D 1 as viewed) = Cub (-5/3) = - 0.074 C (2,1) = Cub ( position of D 2 viewed from the Y 2) = Cub (-2/3) = 0.407 C (2 , 2) = Cub (position of D 3 viewed from Y 2 ) = Cub (1/3) = 0.815 C (2,3) = Cub (position of D 4 viewed from Y 2 ) = Cub (4/2 ) = − 0.148 The operation of the timing design circuit 38 in this case is as follows.

【0127】当該タイミング設計回路38は垂直方向の
画素数(ライン数)変換のためのタイミング情報39を
生成するものである。タイミング情報39は、垂直フィ
ルタプログラム36において、フィルタ仕様30の変換
比率に基づき、入出力走査線のライン数を変換するよう
に作用する。入出力のライン数の比をNi:No(N
i,Noは互いに素)とするとき、変換比率R=No/
Niによって拡大と縮小に動作が分けられる。
The timing design circuit 38 generates timing information 39 for converting the number of pixels (the number of lines) in the vertical direction. The timing information 39 acts to convert the number of input / output scanning lines in the vertical filter program 36 based on the conversion ratio of the filter specification 30. The ratio of the number of input / output lines is Ni: No (N
i and No are relatively prime), the conversion ratio R = No /
The operation is divided into enlargement and reduction by Ni.

【0128】先ず、R>1(拡大)の場合を説明する。
すなわち入力よりも出力の方がライン数が多い場合であ
る。
First, the case where R> 1 (enlargement) will be described.
That is, the output has more lines than the input.

【0129】タイミング設計回路38は、例えばi番目
の入力ラインにおいて(i modNi)<Noであれ
ばライン入力→補間演算処理→ライン出力という順序の
タイミング情報39を生成し、(i mod Ni)≧
Noであればライン入力を待たずにライン出力を行うの
で、補間演算処理→ライン出力という順序でタイミング
情報39を生成する。
For example, if (i modNi) <No in the i-th input line, the timing design circuit 38 generates timing information 39 in the order of line input → interpolation processing → line output, and (i mod Ni) ≧
If No, the line output is performed without waiting for the line input. Therefore, the timing information 39 is generated in the order of the interpolation calculation processing and the line output.

【0130】例えば、3/2倍の拡大を行うとき、次の
ようなタイミング信号39が生成される。垂直フィルタ
プログラム39は、この順序に従って処理を行う。
For example, when performing 3 / 2-fold enlargement, the following timing signal 39 is generated. The vertical filter program 39 performs processing in this order.

【0131】 以上より、入力が2ラインにつき出力が3ラインとな
り、垂直方向に3/2倍にライン数が増加する。
[0131] As described above, the output becomes three lines for every two input lines, and the number of lines increases in the vertical direction by 3/2 times.

【0132】次に、R<1(縮小の場合)の説明を行
う。すなわち入力よりも出力の方がライン数が少ない場
合である。
Next, R <1 (in the case of reduction) will be described. That is, the output has fewer lines than the input.

【0133】i番目の入力ラインにおいて、(i mo
d Ni)<Noであればライン入力→補間演算処理→
ライン出力という順序のタイミング情報39を生成し、
(imod Ni)≧Noであればライン入力を1回多
く行うために、ライン入力のみのタイミング情報39を
生成する。
In the i-th input line, (i mo
d Ni) <No, line input → interpolation calculation processing →
Generates timing information 39 in the order of line output,
If (imod Ni) ≧ No, the timing information 39 of only the line input is generated in order to perform one more line input.

【0134】例えば、2/3倍の拡大を行うとき、次の
ようなタイミング信号39が生成される。垂直フィルタ
プログラム39は、この順序に従って処理を行う。
For example, when performing 、 2 magnification, the following timing signal 39 is generated. The vertical filter program 39 performs processing in this order.

【0135】 ライン入力→補間演算処理→ライン出力→ ライン入力→補間演算処理→ライン出力→ ライン入力→ ライン入力→補間演算処理→ライン出力→ ライン入力→補間演算処理→ライン出力→ ライン入力→ ・ ・ ・ 以上より、入力が3ラインにつき出力が2ラインとな
り、垂直方向に2/3倍にライン数が増加する。
Line input → interpolation calculation processing → line output → line input → interpolation calculation processing → line output → line input → line input → interpolation calculation processing → line output → line input → interpolation calculation processing → line output → line input → ... As described above, the output becomes 2 lines for every 3 input lines, and the number of lines is increased by 2/3 times in the vertical direction.

【0136】次に、水平フィルタプログラム34の動作
説明を行う。すなわち上側のプロセッサエレメント群2
1では、以下の図9に示すフローチャートのように水平
フィルタプログラム34を実行する。
Next, the operation of the horizontal filter program 34 will be described. That is, the upper processor element group 2
1, the horizontal filter program 34 is executed as shown in the flowchart of FIG.

【0137】この図9において、ステップST1ではス
キップ設定を行う。すなわち、スキップ情報32に従
い、入力レジスタ24及び出力レジスタ25にスキップ
動作の設定を行う。
In FIG. 9, skip setting is performed in step ST1. That is, the skip operation is set in the input register 24 and the output register 25 according to the skip information 32.

【0138】ステップST2では、領域の確保を行う。
すなわち、各要素プロセッサは、ローカルメモリに4タ
ップ分の係数セットC0〜C3を格納するための領域c1
〜c4を確保する。
At step ST2, an area is secured.
That is, each element processor stores an area c 1 for storing coefficient sets C 0 to C 3 for four taps in the local memory.
To ensure the ~c 4.

【0139】ステップST3では、係数設定を行う。例
えば、3:2縮小画素数変換の場合には、以下のように
する。例えば、左から1,3,5,・・・,(i+2)
番目の要素プロセッサは、係数セットC(0,0),・・
・,C(0,3)を係数メモリからローカルメモリに格納す
る。また、左から2,4,6,・・・,(i+1)番目
の要素プロセッサは、係数セットC(1,0),・・・,C
(1,3)を係数メモリからローカルメモリに格納する。
In step ST3, a coefficient is set. For example, in the case of 3: 2 reduced pixel number conversion, the following is performed. For example, from the left 1, 3, 5, ..., (i + 2)
The th element processor has a coefficient set C (0,0),.
, C (0,3) is stored in the local memory from the coefficient memory. The (i + 1) -th element processor from the left is a coefficient set C (1,0),.
(1,3) is stored from the coefficient memory to the local memory.

【0140】ステップST4では、データ入力を行う。
各要素プロセッサは、入力レジスタ24から入力された
データ(原画素Dのデータ)をローカルメモリの領域d
に格納する。
In step ST4, data input is performed.
Each element processor stores the data (the data of the original pixel D) input from the input register 24 in the local memory area d.
To be stored.

【0141】ステップST5では、補間演算を行う。す
なわち、各要素プロセッサは、原画素Dと係数Cとを用
いて、次の式(7)の演算を行い、結果を補間画素Yと
して領域yに格納する。ただし、式(7)中のL1(x),
2(x),R1(x),R2(x)(xは変数)は、それぞれ1つ
左、2つ左,1つ右,1つ右の要素プロセッサのローカ
ルメモリの領域dの値(原画素Dの値)を表す。
In step ST5, an interpolation operation is performed. That is, each element processor performs the operation of the following equation (7) using the original pixel D and the coefficient C, and stores the result as an interpolated pixel Y in the area y. Where L 1 (x),
L 2 (x), R 1 (x), and R 2 (x) (x is a variable) are one left, two left, one right, and one right of the local memory area d of the element processor, respectively. Value (the value of the original pixel D).

【0142】 Y=L1(D)*C0+D*C1+R1(D)*C2+R2(D)*C3 ・・・(7) このステップST5の次のステップST6では、データ
出力を行う。すなわち各要素プロセッサは、結果を下側
のプロセッサエレメント群22に転送する。
Y = L 1 (D) * C 0 + D * C 1 + R 1 (D) * C 2 + R 2 (D) * C 3 (7) In step ST 6 following step ST 5, Perform output. That is, each element processor transfers the result to the lower processor element group 22.

【0143】その後はステップST4に戻る。Then, the process returns to step ST4.

【0144】次に、垂直フィルタプログラム36の動作
を説明する。すなわち、下側のプロセッサエレメント群
22では、以下の図10のフローチャートのように垂直
フィルタプログラム36を実行する。
Next, the operation of the vertical filter program 36 will be described. That is, the lower processor element group 22 executes the vertical filter program 36 as shown in the flowchart of FIG.

【0145】この図10において、ステップST11で
は領域を確保する。すなわち、各要素プロセッサは、ロ
ーカルメモリに4ライン分の原画素D用の領域d1〜d4
を確保する。
In FIG. 10, an area is reserved in step ST11. In other words, each element processor stores areas d 1 to d 4 for the original pixels D for four lines in the local memory.
To secure.

【0146】ステップST12では各要素プロセッサ
が、タイミング情報39に従って以下の(A)から
(C)の動作を選んで実行する。
In step ST12, each element processor selects and executes the following operations (A) to (C) according to the timing information 39.

【0147】このステップST12にて(A)が選ばれ
ると、ステップST13にてライン入力が行われ、上側
のプロセッサエレメント群21からの入力データ(原画
素D)をローカルメモリの領域(d0〜d3とする)に格
納する。最新の4ライン分のデータを保持するため、以
下の手順を実行する。
[0147] When this step ST12 (A) is selected, the line input is performed in step ST13, the area (d 0 of the local memory input data (original pixel D) from the upper processor element group 21 ~ d 3 ). The following procedure is executed to hold the latest four lines of data.

【0148】ステップST14では領域d0に領域d1
原画素Dの値をコピーする。ステップST15では、領
域d1に領域d2の原画素Dの値をコピーする。ステップ
ST16では領域d2に領域d3の原画素Dの値をコピー
する。ステップST17では領域d3に入力データ(原
画素D)の値をコピーする。
[0148] Copy the value of the original pixel D in the region d 1 in the region d 0 at step ST14. In step ST15, it copies the value of the original pixel D region d 2 in the area d 1. In step ST16 in the area d 2 copies the value of the original pixel D region d 3. Copying the value of the input data (original pixel D) in step ST17 in the region d 3.

【0149】また、ステップST12にて(B)が選ば
れると、ステップST18にて補間演算を行う。すなわ
ち、原画素Dと係数Cとを用いて次の式(8)の演算を
行い、結果を補間画素Yの値として領域yに格納する。
なお、フィルタ係数は全要素プロセッサで共通なので、
係数メモリから直接読み出す。
When (B) is selected in step ST12, an interpolation operation is performed in step ST18. That is, the following equation (8) is calculated using the original pixel D and the coefficient C, and the result is stored in the area y as the value of the interpolation pixel Y.
Since the filter coefficients are common to all element processors,
Read directly from coefficient memory.

【0150】 Y=D0*C0+D1*C1+D2*C2+D3*C3 ・・・(8) さらに、ステップST12にて(C)が選ばれたとき、
ステップST19にてライン出力を行う。すなわち、各
要素プロセッサは、領域yの値(補間画素Y)を出力レ
ジスタ25に格納する。
Y = D 0 * C 0 + D 1 * C 1 + D 2 * C 2 + D 3 * C 3 (8) Further, when (C) is selected in step ST12,
Line output is performed in step ST19. That is, each element processor stores the value of the area y (interpolated pixel Y) in the output register 25.

【0151】上述したようなことから、本発明実施例の
画像信号処理装置によれば、画素数変換の処理を全て自
動的に行うことができ、フィルタの仕様を決定するだけ
で、その仕様に基づく画素数変換装置が実現できる。ま
た本実施例の装置によれば、プログラムや係数を入れ換
えるだけで、回路の変更をすることなく、多種の画素数
変換を含むフィルタ処理が行え、さらに、分離型フィル
タを利用することで効率的な水平,垂直フィルタを一般
の1次元フィルタ設計手法により実現でき、また、フィ
ルタ処理を2つの独立したプロセッサエレメント群で実
行するという構成により、プログラムの独立性,保守性
などを高めることができ、利用し易くなっている。
As described above, according to the image signal processing apparatus of the embodiment of the present invention, it is possible to automatically perform all of the pixel number conversion processing, and only to determine the specifications of the filter. A pixel number conversion device based on this can be realized. Further, according to the apparatus of the present embodiment, it is possible to perform filter processing including various kinds of pixel number conversion without changing the circuit simply by exchanging the program or the coefficient, and furthermore, by using the separation type filter, it is possible to efficiently perform the processing. Horizontal and vertical filters can be realized by a general one-dimensional filter design method, and the independence and maintainability of the program can be enhanced by the configuration in which the filter processing is executed by two independent processor elements. Easy to use.

【0152】[0152]

【発明の効果】本発明においては、フィルタ仕様情報に
基づいて第1,第2の両方向用のフィルタ演算に必要な
フィルタプログラム及びフィルタ係数を発生し、第1の
方向の画素順で順次シリアルに入力した画素データをパ
ラレルに変換し、このパラレル変換された第1の方向の
画素列の各画素データに対して第1の方向用のフィルタ
プログラム及びフィルタ係数を用いた所定のフィルタ演
算処理を施し、その後の第1の方向の画素列の各画素デ
ータに対して、必要に応じて更に第2の方向用のフィル
タプログラム及びフィルタ係数を用いた所定のフィルタ
演算処理を施し、得られたパラレル画素データを第2の
方向の画素順に順次シリアル出力することにより、例え
ばタップ数や変換比率を変更したい時に、容易かつ短時
間でそれらの変更が可能であり、また、複数の変換比率
にて画素数変換を行う必要がある場合でもそれぞれの変
換比率に対応する複数用意する必要が無くなる。
According to the present invention, a filter program and a filter coefficient required for the first and second two-way filter operations are generated based on the filter specification information, and are sequentially serially arranged in the order of pixels in the first direction. The input pixel data is converted into parallel, and a predetermined filter operation using a filter program and a filter coefficient for the first direction is performed on each of the parallel-converted pixel data in the pixel row in the first direction. Then, a predetermined filter operation using a filter program and a filter coefficient for the second direction is further performed as necessary on each pixel data of the pixel row in the first direction, and the obtained parallel pixels By serially outputting data in the order of pixels in the second direction, for example, when it is desired to change the number of taps or the conversion ratio, these changes can be easily and quickly made. Is possible, also, there is no need to prepare a plurality corresponding to the respective conversion ratio even when it is necessary to perform the conversion of the number of pixels in a plurality of conversion ratio.

【0153】すなわち、本発明の画像信号処理方法及び
装置においては、フィルタプログラム及びフィルタ係数
をフィルタ仕様情報に基づいて全て自動的に設定可能で
あり、したがって、回路の変更をすることなく、フィル
タの仕様を決定するだけで、プログラムやフィルタ係数
を入れ換えることができ、多種の画素数変換や走査線変
換を含むフィルタ処理が実現可能である。また、本発明
においては、2次元画像を第1の方向と第2の方向に分
けて考え、これら第1の方向と第2の方向のそれぞれに
対して分離してフィルタ演算を行うようにしているた
め、フィルタ演算のためのフィルタプログラム及びフィ
ルタ係数を容易かつ効率的に設計可能である。さらに、
本発明においては、このようにフィルタ演算を分離する
ことで、第1の方向と第2の方向のフィルタ演算の独立
性や保守性を高めることができ、利用しやすくなる。
That is, in the image signal processing method and apparatus according to the present invention, the filter program and the filter coefficient can all be automatically set based on the filter specification information. By simply determining the specifications, the program and the filter coefficient can be exchanged, and various types of filtering including pixel number conversion and scanning line conversion can be realized. Further, in the present invention, the two-dimensional image is divided into a first direction and a second direction, and the filter operation is performed separately for each of the first direction and the second direction. Therefore, a filter program and a filter coefficient for a filter operation can be easily and efficiently designed. further,
In the present invention, by separating the filter operations in this way, the independence and maintainability of the filter operations in the first direction and the second direction can be improved, and the filter operations can be easily used.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明実施例のリニアアレイ型多並列プロセッ
サの基本構成を示すブロック回路図である。
FIG. 1 is a block circuit diagram showing a basic configuration of a linear array type multi-parallel processor according to an embodiment of the present invention.

【図2】リニアアレイ型多並列プロセッサの要素プロセ
ッサの単一エレメントの基本構成を示すブロック回路図
である。
FIG. 2 is a block circuit diagram showing a basic configuration of a single element of an element processor of the linear array type multi-parallel processor.

【図3】リニアアレイ型多並列プロセッサの要素プロセ
ッサの具体的構造を示す回路図である。
FIG. 3 is a circuit diagram showing a specific structure of an element processor of the linear array type multi-parallel processor.

【図4】本発明実施例のリニアアレイ型多並列プロセッ
サをより詳細に示すブロック回路図である。
FIG. 4 is a block circuit diagram showing the linear array type multi-parallel processor according to the embodiment of the present invention in more detail;

【図5】画素数変換時の補間画像演算の説明に用いる図
である。
FIG. 5 is a diagram used to explain an interpolation image calculation at the time of converting the number of pixels.

【図6】本発明実施例のリニアアレイ型多並列プロセッ
サにおけるプログラムとフィルタ係数の自動設計の流れ
を示す図である。
FIG. 6 is a diagram showing a flow of automatic design of a program and a filter coefficient in the linear array type multi-parallel processor according to the embodiment of the present invention.

【図7】3:2画素数変換時の原画素と補間画素の位置
関係の説明に用いる図である。
FIG. 7 is a diagram used to explain the positional relationship between an original pixel and an interpolated pixel when converting the number of two pixels.

【図8】4:3画素数変換時の原画素と補間画素の位置
関係の説明に用いる図である。
FIG. 8 is a diagram used to explain the positional relationship between an original pixel and an interpolated pixel at the time of 4: 3 pixel number conversion.

【図9】水平フィルタプログラムを実行する際の流れを
示すフローチャートである。
FIG. 9 is a flowchart showing a flow when the horizontal filter program is executed.

【図10】垂直フィルタプログラムを実行する際の流れ
を示すフローチャートである。
FIG. 10 is a flowchart showing a flow when a vertical filter program is executed.

【図11】画像の拡大と標本化周波数(画素数)の変換
についての説明に用いる図である。
FIG. 11 is a diagram used to explain enlargement of an image and conversion of a sampling frequency (the number of pixels).

【図12】画像の縮小と標本化周波数(画素数)の変換
についての説明に用いる図である。
FIG. 12 is a diagram used for describing reduction of an image and conversion of a sampling frequency (the number of pixels).

【図13】原画像には存在しなかった位置の画素データ
値を求める補間フィルタ演算についての説明に用い、水
平方向の画素の位置関係を模式的に示す図である。
FIG. 13 is a diagram schematically illustrating a positional relationship between pixels in a horizontal direction, which is used for describing an interpolation filter operation for obtaining a pixel data value at a position not existing in the original image.

【図14】理想的な補間関数と近似された補間関数の説
明に用いる図である。
FIG. 14 is a diagram used to describe an interpolation function approximated to an ideal interpolation function.

【図15】従来のハードウェア構成による画像信号処理
装置の一例を示すブロック回路図である。
FIG. 15 is a block circuit diagram illustrating an example of an image signal processing device having a conventional hardware configuration.

【図16】従来のハードウェア構成による画像信号処理
装置の各部の動作説明に用いる表である。
FIG. 16 is a table used to describe the operation of each unit of an image signal processing device having a conventional hardware configuration.

【図17】従来のハードウェア構成による画像信号処理
装置にて扱う係数等の説明に用いる表である。
FIG. 17 is a table used for describing coefficients and the like handled by an image signal processing device having a conventional hardware configuration.

【符号の説明】[Explanation of symbols]

20,120 リニアアレイ型多並列プロセッサ、 1
21 入力SAM部、122 データメモリ部、123
ALUアレイ部、 124 出力SAM部、 125
プログラム制御部、 130 入力バッファメモリ、
131 出力バッファメモリ、 132 データメモ
リ、 133,123B ALU、121A 入力ポイ
ンタ、 121B 入力SAMセル、 122A メモ
リセル、 123A ALUセル、 124A 出力ポ
インタ、 124B 出力SAMセル、 21,22
プロセッサエレメント群、 23 要素プロセッサ、2
4 入力レジスタ、 25 出力レジスタ、 26,2
8 コントローラ、27,29 係数メモリ
20,120 Linear array type multi-parallel processor, 1
21 input SAM unit, 122 data memory unit, 123
ALU array section, 124 output SAM section, 125
Program control unit, 130 input buffer memory,
131 output buffer memory, 132 data memory, 133, 123B ALU, 121A input pointer, 121B input SAM cell, 122A memory cell, 123A ALU cell, 124A output pointer, 124B output SAM cell, 21, 22
Processor element group, 23 element processor, 2
4 input registers, 25 output registers, 26, 2
8 controllers, 27, 29 coefficient memory

───────────────────────────────────────────────────── フロントページの続き (72)発明者 青山 幸治 東京都品川区北品川6丁目7番35号 ソニ ー株式会社内 ────────────────────────────────────────────────── ─── Continued on the front page (72) Koji Aoyama, Inventor 6-35 Kita Shinagawa, Shinagawa-ku, Tokyo Inside Sony Corporation

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 第1の方向及び当該第1の方向と交差す
る第2の方向に配列する複数画素からなる2次元画像に
対して、フィルタ演算を施す画像信号処理方法におい
て、 フィルタ仕様情報に基づいて、上記第1の方向と第2の
方向の両方向用のフィルタ演算に必要なフィルタプログ
ラム及びフィルタ係数を発生し、 上記2次元画像を構成する上記第1の方向の画素順で、
順次シリアルに入力した画素データを当該第1の方向の
画素列毎にパラレルに変換し、 上記パラレルに変換された上記第1の方向の画素列の各
画素データに対して、当該第1の方向用のフィルタプロ
グラム及びフィルタ係数を用いた所定のフィルタ演算処
理を施し、 当該所定の演算処理がなされた上記第1の方向の画素列
の各画素データに対して、必要に応じて更に上記第2の
方向用のフィルタプログラム及びフィルタ係数を用いた
所定のフィルタ演算処理を施し、 得られたパラレル画素データを上記第2の方向の画素順
に順次シリアル出力することを特徴とする画像信号処理
方法。
1. An image signal processing method for performing a filter operation on a two-dimensional image composed of a plurality of pixels arranged in a first direction and a second direction intersecting the first direction. Generating a filter program and a filter coefficient necessary for a filter operation for both the first direction and the second direction, based on the order of pixels in the first direction constituting the two-dimensional image;
The sequentially serially input pixel data is converted into parallel for each pixel column in the first direction, and each pixel data of the parallel converted pixel column in the first direction is converted into the first direction. A predetermined filter operation process using a filter program and a filter coefficient is performed on each of the pixel data of the pixel row in the first direction on which the predetermined operation process has been performed. An image signal processing method comprising: performing a predetermined filter operation process using a filter program and a filter coefficient for the direction of (i), and sequentially outputting the obtained parallel pixel data in order of pixels in the second direction.
【請求項2】 フィルタ仕様情報に基づいて上記2次元
画像の拡大または縮小の設定を行い、 上記2次元画像の拡大を行うときには、上記第1の方向
と第2の方向の両方向の拡大フィルタ演算に必要なフィ
ルタプログラム及びフィルタ係数を発生し、上記第1の
方向の画素順で順次入力した画素データ間をスキップす
るためのスキップ情報を生成し、上記第2の方向の入力
画素列数と出力画素列数の拡大比を制御するためのタイ
ミング情報を生成することを特徴とする請求項1記載の
画像信号処理方法。
2. An enlargement or reduction of the two-dimensional image is set based on filter specification information. When the two-dimensional image is enlarged, an enlargement filter operation in both the first direction and the second direction is performed. To generate skip information for skipping between pixel data sequentially input in the order of pixels in the first direction, the number of input pixel columns in the second direction and output 2. The image signal processing method according to claim 1, wherein timing information for controlling an enlargement ratio of the number of pixel columns is generated.
【請求項3】 フィルタ仕様情報に基づいて上記2次元
画像の拡大または縮小の設定を行い、 上記2次元画像の拡大を行うときには、上記第1の方向
と第2の方向の両方向の縮小フィルタ演算に必要なフィ
ルタプログラム及びフィルタ係数を発生し、上記所定の
フィルタ演算処理がなされた後の上記第1の方向の各画
素データをスキップするためのスキップ情報を生成し、
上記第2の方向の入力画素列数と出力画素列数の縮小比
を制御するためのタイミング情報を生成することを特徴
とする請求項1記載の画像情報処理方法。
3. An enlargement or reduction of the two-dimensional image is set based on the filter specification information. When the two-dimensional image is enlarged, a reduction filter operation in both the first direction and the second direction is performed. Generating a filter program and a filter coefficient necessary for generating skip information for skipping each pixel data in the first direction after the predetermined filter operation processing is performed;
2. The image information processing method according to claim 1, wherein timing information for controlling a reduction ratio between the number of input pixel columns and the number of output pixel columns in the second direction is generated.
【請求項4】 第1の方向及び当該第1の方向と交差す
る第2の方向に配列する複数画素からなる2次元画像に
対して、フィルタ演算を施す画像信号処理装置におい
て、 フィルタ仕様情報に基づいて、上記第1の方向と第2の
方向の両方向用のフィルタ演算に必要なフィルタプログ
ラム及びフィルタ係数を発生するプログラム及び係数発
生手段と、 上記2次元画像を構成する上記第1の方向の画素順で順
次シリアルに入力した画素データを、当該第1の方向の
画素列毎にパラレルに出力するシリアル/パラレル変換
手段と、 上記パラレルに変換された上記第1の方向の画素列の各
画素データに対して、当該第1の方向用のフィルタプロ
グラム及びフィルタ係数を用いた所定のフィルタ演算処
理を施す第1のフィルタ演算手段と、 当該第1のフィルタ演算手段にて所定の演算処理がなさ
れた上記第1の方向の画素列の各画素データに対して、
必要に応じて更に上記第2の方向用のフィルタプログラ
ム及びフィルタ係数を用いた所定のフィルタ演算処理を
施す第2のフィルタ演算手段と、 上記第2のフィルタ演算手段から得られたパラレル画素
データを、上記第2の方向の画素順に順次シリアル出力
するパラレル/シリアル変換手段とを有することを特徴
とする画像信号処理装置。
4. An image signal processing apparatus for performing a filter operation on a two-dimensional image composed of a plurality of pixels arranged in a first direction and a second direction intersecting the first direction, wherein the filter specification information includes A filter program and a coefficient generating means for generating a filter program and a filter coefficient necessary for a filter operation in both the first direction and the second direction, based on the first direction and the second direction. Serial / parallel conversion means for outputting pixel data serially input in the order of pixels in parallel for each pixel column in the first direction; and each pixel of the parallel-converted pixel column in the first direction. A first filter operation unit that performs predetermined filter operation processing on the data using the first direction filter program and the filter coefficient; For each pixel data of the predetermined arithmetic processing is performed pixel column in the first direction by filtering calculation means,
A second filter operation unit for performing a predetermined filter operation process using the filter program and the filter coefficient for the second direction, if necessary, and parallel pixel data obtained from the second filter operation unit. And a parallel / serial conversion means for sequentially outputting serial data in the order of pixels in the second direction.
【請求項5】 上記第1の方向の画素順で順次入力した
画素データ間をスキップするためのスキップ情報を生成
するスキップ情報生成手段と、 上記第2の方向の入力画素列数と出力画素列数の拡大比
を制御するためのタイミング情報を生成するタイミング
情報生成手段とを設け、 上記2次元画像の拡大を行うとき、上記プログラム及び
係数発生手段は、上記第1の方向と第2の方向の両方向
の拡大フィルタ演算に必要なフィルタプログラム及びフ
ィルタ係数を発生することを特徴とする請求項4記載の
画像信号処理装置。
5. A skip information generating means for generating skip information for skipping between pixel data sequentially input in the order of pixels in the first direction, a number of input pixel columns and an output pixel column in the second direction. Timing information generating means for generating timing information for controlling the number enlargement ratio; when performing the enlargement of the two-dimensional image, the program and the coefficient generating means perform the first direction and the second direction; 5. The image signal processing apparatus according to claim 4, wherein a filter program and a filter coefficient necessary for the expansion filter operation in both directions are generated.
【請求項6】 上記所定のフィルタ演算処理がなされた
後の上記第1の方向の各画素データをスキップするため
のスキップ情報を生成するスキップ情報生成手段と、 上記第2の方向の入力画素列数と出力画素列数の縮小比
を制御するためのタイミング情報を生成するタイミング
情報生成手段とを設け、 上記2次元画像の縮小を行うとき、上記プログラム及び
係数発生手段は、上記第1の方向と第2の方向の両方向
の縮小フィルタ演算に必要なフィルタプログラム及びフ
ィルタ係数を発生することを特徴とする請求項4記載の
画像情報処理装置。
6. A skip information generating means for generating skip information for skipping each pixel data in the first direction after the predetermined filter operation processing has been performed, and an input pixel sequence in the second direction. Information generating means for generating timing information for controlling the number of pixels and the reduction ratio of the number of output pixel columns. When the two-dimensional image is reduced, the program and the coefficient generating means are arranged in the first direction. 5. The image information processing apparatus according to claim 4, wherein a filter program and a filter coefficient required for a reduction filter operation in both directions of the first and second directions are generated.
【請求項7】 上記第1の方向の画素順で順次入力した
画素データまたは当該画素データ間をスキップするため
のスキップ情報を生成するスキップ情報生成手段と、 上記第2の方向の入力画素列数と出力画素列数の拡大ま
たは縮小比を制御するためのタイミング情報を生成する
タイミング情報生成手段とを設け、 上記2次元画像の拡大または縮小を行うとき、上記プロ
グラム及び係数発生手段は、上記第1の方向と第2の方
向の両方向の拡大または縮小フィルタ演算に必要なフィ
ルタプログラム及びフィルタ係数を発生することを特徴
とする請求項4記載の画像信号処理装置。
7. Skip information generating means for generating pixel data sequentially input in the order of pixels in the first direction or skip information for skipping between pixel data, and the number of input pixel columns in the second direction. And timing information generating means for generating timing information for controlling the enlargement or reduction ratio of the number of output pixel columns. When the two-dimensional image is enlarged or reduced, the program and coefficient generation means 5. The image signal processing apparatus according to claim 4, wherein a filter program and a filter coefficient necessary for an enlargement or reduction filter operation in both the first direction and the second direction are generated.
JP8287103A 1996-10-29 1996-10-29 Method and device for image signal processing Abandoned JPH10134176A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8287103A JPH10134176A (en) 1996-10-29 1996-10-29 Method and device for image signal processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8287103A JPH10134176A (en) 1996-10-29 1996-10-29 Method and device for image signal processing

Publications (1)

Publication Number Publication Date
JPH10134176A true JPH10134176A (en) 1998-05-22

Family

ID=17713105

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8287103A Abandoned JPH10134176A (en) 1996-10-29 1996-10-29 Method and device for image signal processing

Country Status (1)

Country Link
JP (1) JPH10134176A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000028519A1 (en) * 1998-11-10 2000-05-18 Fujitsu General Limited Image magnifying circuit
JP2002008025A (en) * 2000-04-21 2002-01-11 Matsushita Electric Ind Co Ltd Picture element arithmetic device
JP2006127460A (en) * 2004-06-09 2006-05-18 Renesas Technology Corp Semiconductor device, semiconductor signal processing apparatus and crossbar switch
JP2008061036A (en) * 2006-08-31 2008-03-13 Brother Ind Ltd Image processing program and apparatus
JP2008522313A (en) * 2004-12-03 2008-06-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Programmable processor
JP2015513837A (en) * 2012-02-24 2015-05-14 アップル インコーポレイテッド Parallel scaler processing

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000028519A1 (en) * 1998-11-10 2000-05-18 Fujitsu General Limited Image magnifying circuit
JP2002008025A (en) * 2000-04-21 2002-01-11 Matsushita Electric Ind Co Ltd Picture element arithmetic device
JP4686048B2 (en) * 2000-04-21 2011-05-18 パナソニック株式会社 Pixel arithmetic unit
JP2006127460A (en) * 2004-06-09 2006-05-18 Renesas Technology Corp Semiconductor device, semiconductor signal processing apparatus and crossbar switch
JP2008522313A (en) * 2004-12-03 2008-06-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Programmable processor
US8963942B2 (en) 2004-12-03 2015-02-24 Intel Corporation Programmable processor
JP2008061036A (en) * 2006-08-31 2008-03-13 Brother Ind Ltd Image processing program and apparatus
JP2015513837A (en) * 2012-02-24 2015-05-14 アップル インコーポレイテッド Parallel scaler processing

Similar Documents

Publication Publication Date Title
KR100901073B1 (en) Reconfigurable digital filter having multiple filtering modes
US7492376B2 (en) Graphics resampling system and method for use thereof
JP2975585B2 (en) Method and apparatus for upscaling an image
US6903733B1 (en) Ultra-high bandwidth multi-port memory system for image scaling applications
US5230064A (en) High resolution graphic display organization
JPH10134176A (en) Method and device for image signal processing
EP0827082B1 (en) Semiconductor memory having arithmetic function
WO2016197393A1 (en) Parallel multiphase image interpolation device and method
JP2000148578A (en) Storage device and image data processor
JP3444112B2 (en) Image signal processing device
JP2000324337A (en) Image magnification and reducing device
JPH10134175A (en) Processor and method for image processing
US6108746A (en) Semiconductor memory having an arithmetic function and a terminal arrangement for coordinating operation with a higher processor
JP2002197454A (en) Device and method for transforming image
JP2510019B2 (en) Image display method and device
KR100665485B1 (en) Digital signal processor and digital signal processing method
US5819106A (en) Method of transposing data buffer by selectively merging pairs of rows, interleaving two operands of equal length yielding output twice the length of each operand
US11562460B1 (en) High performance hardware scaler
WO1999038119A1 (en) Image conversion method and image conversion device
JP4465570B2 (en) Image processing apparatus and method, and recording medium
US6788348B1 (en) Method and system for processing digital images
JPH11283023A (en) Image magnifying/reducing device and method therefor
JP2647378B2 (en) Image processing device
JP2001036735A (en) Device and method for enlarging and reducing image
JPS62263580A (en) Interpolation enlargement circuit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060322

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20060522