JPS62137668A - Picture signal processor using convolution - Google Patents

Picture signal processor using convolution

Info

Publication number
JPS62137668A
JPS62137668A JP27703885A JP27703885A JPS62137668A JP S62137668 A JPS62137668 A JP S62137668A JP 27703885 A JP27703885 A JP 27703885A JP 27703885 A JP27703885 A JP 27703885A JP S62137668 A JPS62137668 A JP S62137668A
Authority
JP
Japan
Prior art keywords
shift register
convolution
output
pixel data
register
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.)
Pending
Application number
JP27703885A
Other languages
Japanese (ja)
Inventor
Mitsuo Kurakake
鞍掛 三津雄
Shoichi Otsuka
大塚 昭一
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.)
Fanuc Corp
Original Assignee
Fanuc 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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP27703885A priority Critical patent/JPS62137668A/en
Publication of JPS62137668A publication Critical patent/JPS62137668A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)

Abstract

PURPOSE:To find convolution in each picture element data at a relative high speed with a few multipliers by performing the multiplication of a corresponding picture element data shifting it in order against a load coefficient of one line, and estimating a result. CONSTITUTION:One line share out of the load coefficients of N-number of lines and N-number of rows in a coefficient memory 41 is set at N-number of registers 421, 422,..., and also, the picture element data of a frame memory 2 corresponding to a set load coefficient is inputted in order to the first shift register 3, and input controls for all of the lines in the coefficient memory 41 are performed. And the multiplication between the value of the first register 3 and the values of the N-number of registers are found at N-number of multipliers 51, 52,..., and outputs are added at an adder 71. The convolution can be obtained by repeating an operation that the output of the adder 71 is inputted to the second shift register 73, and the output of the shift register 73 and the output of the adder 71 are added with an adder register 72, and returned again to the shift register 73.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンボリューションを用いる画像信号処理装置
に関する。本発明による装置は例えば産業用ロボットに
おける対象物を識別するビジュアルセンサ等に関連して
用いられる。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an image signal processing device using convolution. The device according to the invention is used, for example, in connection with visual sensors for identifying objects in industrial robots.

〔従来の技術、および発明が解決しようとする問題点〕[Prior art and problems to be solved by the invention]

CCDカメラのような撮像装置(イメージセンサ)によ
って撮像された画像出力は画像信号としてディジタル情
報に変換される。この画像の鮮鋭化のため、線2輪郭を
抽出する必要があり、画像信号処理の対象となる1フレ
一ム分の画素データの各々に対してコンボリューション
が施される。
An image output captured by an imaging device (image sensor) such as a CCD camera is converted into digital information as an image signal. In order to sharpen this image, it is necessary to extract the line 2 contour, and convolution is performed on each pixel data for one frame that is the target of image signal processing.

従来はコンボリューション演算を行う際に乗算器を複数
用いて演算し、積算又は加算するから、メモリの記憶容
量が大となり画像処理装置の容量・寸法が増大し、価格
の上昇が避けられない。
Conventionally, when performing a convolution operation, a plurality of multipliers are used to perform the operation and the integration or addition is performed, which increases the storage capacity of the memory, increases the capacity and size of the image processing device, and inevitably increases the price.

従来技術を第3図、第4図を用いて説明する。The prior art will be explained using FIGS. 3 and 4.

先づ3行×3列のコンボリューションは第3図上部に示
される。処理対象画素データF(i、j)と荷重係数W
(i、j)が図の如く配列されている場合、中央部の画
素データF(2,2)のコンボリューション演算結果G
(2,2)は次式にて示される。
The first three rows by three columns of convolutions are shown at the top of FIG. Processing target pixel data F (i, j) and weight coefficient W
When (i, j) are arranged as shown in the figure, the convolution calculation result G of the central pixel data F (2, 2)
(2,2) is expressed by the following formula.

葭で説明の便宜上 匈(1,1) X F(1,1) +W(2,1) X
 F(2,1)十讐(3,1)xF(3,1)  を第
1コラム演算、W(1,2) XF(1,2)+K(2
,2) x F(2,2)+K(3,2)xF(3,2
)  を第2コラム演算、W(1,3) xF(1,3
) +W(2,3) xF(2,3) +W(3,3)
XF(3,3)  を第3コラム演算と呼称する。
For convenience of explanation, we use 匈 (1, 1) X F (1, 1) + W (2, 1) X
F (2, 1) ten (3, 1) x F (3, 1) is calculated in the first column, W (1, 2) XF (1, 2) + K (2
,2) x F(2,2)+K(3,2)xF(3,2
) is the second column operation, W(1,3) xF(1,3
) +W(2,3) xF(2,3) +W(3,3)
XF(3,3) is called the third column operation.

従来、上記のコンボリューションによる演算は第3図、
第4図に示す装置で実行されている。即ち第3図は一般
的な演算に使用するもので1つの乗算器と一つの加算器
とを使用する。乗算器の第1入力にF(i、j)を入力
し、第2入力にW(i、j)を順次入力し、F (II
J) xW(i、j)を求め、3行3列のコンボリュー
ションの場合、合計9個の結果を加算器で積算するもの
である。積算した結果、特徴抽出を3行3列の素子の中
央部F (2,2)で把握しようとすればそのコンボリ
ューション結果G(2,2)が容易に得られる。
Conventionally, the calculation using the above convolution is shown in Figure 3.
The system is executed by the device shown in FIG. That is, FIG. 3 is used for general calculations, and uses one multiplier and one adder. F(i, j) is input to the first input of the multiplier, W(i, j) is input to the second input in sequence, and F (II
J) xW(i, j) is calculated, and in the case of a 3-row, 3-column convolution, a total of 9 results are integrated using an adder. As a result of integration, if the feature extraction is to be grasped at the central part F (2, 2) of the element arranged in 3 rows and 3 columns, the convolution result G (2, 2) can be easily obtained.

この第3図の装置では構成部品が少いことは利点として
考えられるが、必要とする一つの画素データのコンポリ
ニージョン演算の結果を求めるまでに長い時間を必要と
し、例えば256 X 256画素という多数の画素の
コンボリューション演算を求めるには適さず、またメモ
リの記憶容量も膨大になるという問題点がある。
The device shown in Fig. 3 has a small number of components, which can be considered an advantage, but it takes a long time to obtain the result of the composite operation for one pixel data, for example, 256 x 256 pixels. This method has the problem that it is not suitable for calculating convolution operations for a large number of pixels, and that the storage capacity of the memory becomes enormous.

第4図の例では合計9個の乗算器Mll〜M19と1個
の加算器Allとを設けて、夫々の乗算器の第1入力に
F(i、j)を入力し、第2入力に夫々異なったW(i
、j)を入力して並列処理演算を行い、その各結果を加
算器で加算するものである。
In the example of FIG. 4, a total of nine multipliers Mll to M19 and one adder All are provided, F(i, j) is input to the first input of each multiplier, and F(i, j) is input to the second input of each multiplier. Different W(i
, j) are input, parallel processing operations are performed, and the results are added together using an adder.

第4図の装置によれば大約1/9の速度で一つの画素デ
ータのコンボリューション演算を求めることができるが
、この乗算器は、大型でかつ高価なものであって、この
ような乗算器を9個も使用する第4図の装置は一般的に
コスト高となり、しかも大型化するという問題点がある
According to the apparatus shown in FIG. 4, the convolution operation of one pixel data can be obtained at approximately 1/9 the speed, but this multiplier is large and expensive, and such a multiplier is The apparatus shown in FIG. 4, which uses as many as nine of these, generally has problems in that it is expensive and large in size.

本発明の目的は、フレームメモリに記憶された複数個の
処理対象画素データの各々のコンボリューションを少な
い乗算器を用いて比較的高速にて求め、更にコンボリュ
ーションに必要な荷重係数の種類を少なくするという構
想にもとづき、乗算器用RAMの記憶容量が節減された
画像信号処理装置を提供することにある。
An object of the present invention is to obtain convolution of each of a plurality of pixel data to be processed stored in a frame memory at a relatively high speed using a small number of multipliers, and to further reduce the types of weighting coefficients required for convolution. Based on this idea, it is an object of the present invention to provide an image signal processing device in which the storage capacity of a multiplier RAM is reduced.

〔問題点を解決するための手段、および作用〕本発明に
おいては、イメージセンサの画像信号をディジタル変換
して格納するフレームメモリと、N行N列の荷重係数を
予め記憶する係数メモリとを有し、該フレームメモリに
記憶された複数の処理対象画素データの各々のコンボリ
ューションを該係数メモリの荷重係数を用いて行う画像
信号処理装置において、N個の段数を有する第1のシフ
トレジスタ、N個の荷重係数がセットされたN個のレジ
スタ、前記第1のシフトレジスタの各段の出力に対応す
る前記レジスタの出力を乗算するN個のRAM乗算器、
該N個の乗算器出力を加算する加算器、前記フレームメ
モリの行方向の処理対象画素データ数に等しい段数を有
する第2のシフトレジスタ、前記加算器の出力と前記第
2のシフトレジスタの出力とを加算記憶し、その加算結
果を該第2のシフトレジスタに加算する加算レジスタ、
を具備し、前記N個のレジスタへ係数メモリから1行分
の荷重係数がセットされ、該荷重係数に対応するフレー
ムメモリの画素データが荷重係数のすべての行に対して
前記第1のシフトレジスタへ順次入力され、荷重係数の
最後の行について入力が行われるまでに加算レジスタ出
力データを用いて1行分の処理対象画素データの各々の
コンボリューションが行われ、対象マトリクス形式によ
り等しい荷重係数の乗算結果を重複してもたないように
マトリクス・コンボリューションを行い得ることを特徴
とする画像信号処理装置、が提供される。
[Means and effects for solving the problem] The present invention includes a frame memory that digitally converts and stores an image signal of an image sensor, and a coefficient memory that stores N rows and N columns of weight coefficients in advance. and an image signal processing device that performs convolution of each of a plurality of pixel data to be processed stored in the frame memory using weighting coefficients of the coefficient memory, a first shift register having N stages; N registers in which N weight coefficients are set; N RAM multipliers for multiplying the output of the register corresponding to the output of each stage of the first shift register;
an adder that adds the outputs of the N multipliers; a second shift register having a number of stages equal to the number of pixel data to be processed in the row direction of the frame memory; an output of the adder and an output of the second shift register; an addition register that adds and stores the addition result and adds the addition result to the second shift register;
A load coefficient for one row is set from the coefficient memory to the N registers, and pixel data of the frame memory corresponding to the load coefficient is transferred to the first shift register for all rows of the load coefficient. By the time the last row of weighting coefficients is input, each row of pixel data to be processed is convolved using the addition register output data, and equal weighting coefficients are An image signal processing device is provided that is capable of performing matrix convolution so as not to have duplicate multiplication results.

本発明による装置において、例えば、3行×3列のコン
ボリューションは下記のように実行される。すなわち、
第1のシフトレジスタ3は3段のレジスタ31,32.
33で構成され、更に3個のレジスタ421〜423が
使用される。フレームメモリ2に所定の順序で合計25
6X 256個の画素データF(x、y)が配列される
。第2行〜第254行目までの画素データを処理対象と
し、所定の荷重係数W(i、j)が設定される。
In the device according to the invention, for example, a 3 row by 3 column convolution is performed as follows. That is,
The first shift register 3 has three stages of registers 31, 32 .
33, and three registers 421 to 423 are used. A total of 25 files are stored in frame memory 2 in a predetermined order.
6×256 pixel data F(x,y) are arranged. The pixel data from the 2nd row to the 254th row is targeted for processing, and a predetermined weighting coefficient W(i, j) is set.

最初、3個のレジスタ421〜423にW(1,1) 
Initially, W (1, 1) is written in the three registers 421 to 423.
.

W(2,1) 、 W(3,1)がセットされ、第1の
シフトレジスタ3の第2段目32にF(0,0)が、第
1段目33にF(1,0)がセットされる。その結果筒
1の加算器71の出力は、F(0,1)の第1演算結果
となり、最初の1行の処理中加算レジスタ(72)は第
2のシフトレジスタ73の出力を加算しないよう構成さ
ているので、F(0,1)の第1演算結果が第2のシフ
トレジスタ73に入力される。
W(2,1) and W(3,1) are set, F(0,0) is placed in the second stage 32 of the first shift register 3, and F(1,0) is placed in the first stage 33. is set. As a result, the output of the adder 71 of cylinder 1 becomes the first operation result of F (0, 1), and the first row of processing addition register (72) is configured not to add the output of the second shift register 73. Therefore, the first operation result of F(0,1) is input to the second shift register 73.

次いで第1のシフトレジスタ3の第3段目(33)にF
(2,0)が入力され、第2段目には第1段目の内容が
、第3段目には第2段目の内容が夫々シフト入力される
。この結果、加算器72の出力はF(1,1)の第1演
算結果となり、これが第2のシフトレジスタ73に入力
される。
Next, F is placed in the third stage (33) of the first shift register 3.
(2,0) is input, the contents of the first row are shifted into the second row, and the contents of the second row are shifted into the third row. As a result, the output of the adder 72 becomes the first operation result of F(1,1), which is input to the second shift register 73.

以後F(3,0)〜F (255,0)と最後に例えば
Oが順々に第1のシフトレジスタ3の第1段目に入力さ
れることにより、第2のシフトレジスタ73にはF (
0,1)〜F (255,1)の第1演算結果がセット
される。
Thereafter, F(3,0) to F(255,0) and finally, for example, O are sequentially input to the first stage of the first shift register 3, so that F(3,0) to F(255,0) is input to the second shift register 73. (
0,1) to F (255,1) are set.

次に加算レジスタ72の加算動作を開始させるとともに
3個のレジスタ421〜423にW(1,2) 。
Next, the addition operation of the addition register 72 is started, and W(1, 2) is written to the three registers 421 to 423.

W(2,2) 、 W(3,2)をセットし第1のシフ
トレジスタ3の第2段目にF(0,1)、第1段目にF
(1,1)を夫々セットすると、第1の加算器71の出
力はF(0,1)の第2演算結果となり、加算レジスタ
72において第2のシフトレジスタ73にセットされて
いたF(0,1)の第1演算結果と加算され、この加算
値が再び第2のシフトレジスタ(73)に戻される。こ
のような操作が第1行目の画素データすべてについて行
われると、第2のシフトレジスタ73の内容はF(0,
1)〜F (255,1)の第1演算結果と第2演算結
果の和となる。
Set W(2,2) and W(3,2), and set F(0,1) to the second stage of the first shift register 3 and F(0,1) to the first stage.
(1, 1) respectively, the output of the first adder 71 becomes the second operation result of F(0, 1), and the addition register 72 outputs F(0, 1), which was set in the second shift register 73. , 1), and this added value is returned to the second shift register (73) again. When such operations are performed on all the pixel data in the first row, the contents of the second shift register 73 become F(0,
1) to F (255, 1) is the sum of the first calculation result and the second calculation result.

次に3個のレジスタ421〜423にW(1,3) 、
 W(2,3) 、 W(3,3)をセットし、第1の
シフトレジスタ3の第1段目にF(1,2) 、第2段
目にF(0,2)をセットすると、第1の加算器(71
)の出力はF(0,1)の第3演算結果となり、加算レ
ジスタ72において第2のシフトレジスタ73にセット
されていたF(0,1)の第1.第2演算結果の和と加
算され、F(0,1)のコンボリューション出力G (
0,1)が制御回路に入力される。
Next, write W(1,3) to the three registers 421 to 423,
If you set W(2,3) and W(3,3) and set F(1,2) in the first stage and F(0,2) in the second stage of the first shift register 3, , the first adder (71
) becomes the third operation result of F(0,1), and the first . It is added to the sum of the second calculation results, and the convolution output G (
0, 1) are input to the control circuit.

同様に第1のシフトレジスタ3の第2段目に順次F(2
,2)〜F (255,2)がシフト入力されていくと
、加算レジスタ72からF(0,1)〜F (255,
1)のコンボリューション出力G(0,1)〜G (2
55,1)が得られる。
Similarly, F(2
, 2) to F (255, 2) are shifted in, F(0, 1) to F (255,
1) convolution output G(0,1)~G(2
55,1) is obtained.

以上のプロセスで第1行目の画素データの各々のコンボ
リューションが完了し、第2行目以後の画素データにつ
いても同様のプロセスで操作演算が行われる。
Through the above process, the convolution of each of the pixel data in the first row is completed, and operation calculations are performed on the pixel data in the second and subsequent rows through the same process.

〔実施例〕〔Example〕

第1図は本発明の要部構成図である。第2図は産業用ロ
ボットのシュアルセンサの画像信号処理装置として採用
された例であって、CCDカメラ等のイメージセンサ1
1から送出される画像信号をA/D変換器12によりデ
ィジタル情報に変換し、その変換器出力をフレームメモ
リ2に格納する。実用上フレームメモリ2は複数のフレ
ームメモリにて構成されることが多く、必要に応じてグ
イナミソクRAM、  シリアル・アクセスメモリ(S
AM)より構成される。
FIG. 1 is a block diagram of the main parts of the present invention. Figure 2 shows an example of an image signal processing device adopted as a real sensor of an industrial robot.
An A/D converter 12 converts the image signal sent from the frame memory 1 into digital information, and the output of the converter is stored in the frame memory 2. In practice, the frame memory 2 is often composed of multiple frame memories, and if necessary, it can be configured with RAM, serial access memory (S
AM).

上記フレームメモリ2に記憶された複数個の処理対象画
素データは、ディジタル化されており、コンボリューシ
ョンにより検出されるべき画像の線や輪郭の抽出が行わ
れ、信号処理により画像の鮮鋭化が得られる。
The plurality of pixel data to be processed stored in the frame memory 2 are digitized, lines and contours of the image to be detected are extracted by convolution, and the image is sharpened by signal processing. It will be done.

第1図においてはフレームメモリ2に記憶さた複数個の
処理対象画素データの各々のコンボリューションを予め
係数メモリ41に記憶されたN行N列の荷重係数を用い
て行う。
In FIG. 1, each convolution of a plurality of pieces of pixel data to be processed stored in the frame memory 2 is performed using N rows and N columns of weight coefficients stored in advance in the coefficient memory 41.

レジスタ31.32.33・・・より構成される第1の
シフトレジスタ3はN個の段数を有するものである(図
ではN=3としである)。また係数メモリ41は、N個
の荷重係数がセットされるN個のレジスタ421.42
2.423.・・・を介して乗算器51゜52.53.
・・・に接続される。これらの乗算器51.52゜53
、・・・は、第1のシフトレジスタ3の各段31゜32
、33.・・・の出力と対応するレジスタ421,42
2゜423、・・・の出力を乗算するものである。また
N個の乗算器51.52.53.・・・の出力は加算器
71により加算される。第2のシフトレジスタ73はフ
レームメモリ2の行方向の処理対象画素データ数に等し
い段数を有し、この第2のシフトレジスタ73の出力と
加算器71の出力とは加算され、その方U算結果を第2
のシフトレジスタ73に加える加算レジスタ72が存す
る。第2シフトレジスタ73の出力は加算器71に加え
られる前にゲート74を経由し、禁止信号の付与により
信号の通過を制御する。
The first shift register 3 composed of registers 31, 32, 33, . . . has N stages (N=3 in the figure). The coefficient memory 41 also includes N registers 421 and 42 in which N weight coefficients are set.
2.423. . . via multipliers 51, 52, 53, .
...is connected to... These multipliers 51.52゜53
, . . . are each stage 31°32 of the first shift register 3.
, 33. Registers 421 and 42 corresponding to the output of ...
The outputs of 2°423, . . . are multiplied. Also, N multipliers 51.52.53. ... are added by an adder 71. The second shift register 73 has a number of stages equal to the number of pixel data to be processed in the row direction of the frame memory 2, and the output of the second shift register 73 and the output of the adder 71 are added, and Second result
There is an addition register 72 which is added to the shift register 73 of . The output of the second shift register 73 passes through a gate 74 before being applied to the adder 71, and the passage of the signal is controlled by applying an inhibit signal.

N個のレジスタ421.422.423.・・・へ係数
メモリ41の1行分の荷重係数をセットするとともに、
このセットした荷重係数に対応するフレームメモU 2
の画素データを第1のシフトレジスタ3へ順次入力して
、係数メモリ41のすべての行について入力制御を行い
、この制御が係数メモリ41のif&の行について行わ
れている間に加算レジスタ72から出力されるデータを
1行分の処理対象画素データの各々のマトリクス・コン
ボリューション演算結果として出力される。
N registers 421.422.423. . . . to set the load coefficient for one row of the coefficient memory 41, and
Frame memo U2 corresponding to this set load coefficient
pixel data are sequentially input to the first shift register 3 to perform input control for all rows of the coefficient memory 41, and while this control is being performed for the if& row of the coefficient memory 41, pixel data from the addition register 72 are inputted sequentially to the first shift register 3. The output data is output as a matrix convolution calculation result for each row of pixel data to be processed.

組合せ部の掛数と変数の乗算した結果をRAMの中に格
納しておき、これを変数によってテーブル・ルックアッ
プすることにより結果を得て乗算動作が行われる。した
がってコンボリューションを1回もしくは連続して行う
場合、その演算に必要な掛数の種類を少なくすれば当然
乗算器用RAMの記憶容量を節減することができる。
The result of multiplying the multiplier of the combination part by the variable is stored in the RAM, and the result is obtained by looking up the result in a table using the variable, and the multiplication operation is performed. Therefore, when convolution is performed once or continuously, the storage capacity of the multiplier RAM can naturally be reduced by reducing the number of multipliers required for the calculation.

−m的な画像処理に使用される線・輪郭抽出用の荷重係
数マトリクスは対称的な配列をするものが多く、この事
実に着目して第2図に示されるようなコラム対コラム方
式(column −to −columnproce
ss )が採用されている。これにより、従来の如< 
O’ 、 45°、90°、135°・・・275°、
315゜の如く各角度に対しベクトルコンボリューショ
ンを施すことができる。
Many of the weighting coefficient matrices for line/contour extraction used in -m-type image processing have a symmetrical arrangement. -to -columnproce
ss) has been adopted. As a result,
O', 45°, 90°, 135°...275°,
Vector convolution can be performed on each angle, such as 315°.

第1図装置においては、コラム対コラム方式によりベク
トルコンボリューションを行って、更に時分割でマトリ
クスコンボリューションを行う際に、マトリクスの対称
形により等しい荷重係数の乗算結果を重複してはもたな
いことになる。それにより、乗算器機能を有するRAM
の記憶容量を節約することができる。
In the device shown in Figure 1, when vector convolution is performed using a column-to-column method and then matrix convolution is performed in a time-division manner, the symmetrical shape of the matrix prevents the multiplication results of equal weight coefficients from being duplicated. It turns out. Thereby, RAM with multiplier function
storage capacity can be saved.

第1図装置に関連して、線・輪郭の抽出のために使用さ
れる荷重マトリクスの例を以下に説明する。
In connection with the apparatus of FIG. 1, an example of a load matrix used for line/contour extraction will be described below.

マトリクス配列において対称形式の係数が多く、対称形
式の場合には係数不変とみなすことにする。
In the matrix array, there are many coefficients in a symmetric form, and in the case of a symmetric form, the coefficients are considered to be unchanged.

又係数が同じ場合には、ロードしなくてすみ、前のま\
使用することが可能である。乗算器にロードする場合は
インターフェースからバッファを介して乗算器出力に加
えられ、加算器に送られ、またバッファ入力は各入力同
時に印加される。
Also, if the coefficients are the same, there is no need to load the previous one.
It is possible to use. When loading the multiplier, it is added to the multiplier output from the interface via the buffer and sent to the adder, and the buffer input is applied to each input simultaneously.

線・輪郭の抽出のための荷重マトリックスの例は下記の
とおりである。
An example of a load matrix for line/contour extraction is shown below.

グレディエント(Gradient )の例:Gijマ
トリックス 3X3fx マトリックス 3X3fy マトリックス 4X4fx ラプラシアン(Laplacian )の例:Lijマ
トリックス 3×3 マトリックス 4×4 なお、ベクトルコンボリューションが終了した段階で精
度を更に上げる必要のある場合には、マトリンクスコン
ポリューシランを行い、対称形により等しい掛数の乗算
結果を重複してもたないようにして演算を実施すること
ができる。
Gradient example: Gij matrix 3X3fx matrix 3X3fy matrix 4X4fx Laplacian example: Lij matrix 3x3 matrix 4x4 Note that if you need to further improve the accuracy after vector convolution , matrix conpolusion is performed, and the calculation can be carried out by not having duplicate multiplication results with equal multipliers due to symmetry.

第5図にフレームメモリをシリアルアクセスメモリ (
SAM)付のダイナミックRAM(d−RA M )で
構成した他の実施例を示す。第5図においてベクトルコ
ンボリューションプロセッサとフレームメモリの間をシ
リアルアクセスメモリ(SAM)を経由してO°力方向
シーケンシャルアクセスと45°、90°、135°方
向のd−RAM経由のRAMの2アクセス方式により結
合するイメージデータバスを設けたもので、これは特に
O。
Figure 5 shows frame memory as serial access memory (
Another embodiment configured with a dynamic RAM (d-RAM) with SAM will be shown. In Fig. 5, there are two accesses between the vector convolution processor and the frame memory: sequential access in the 0° force direction via serial access memory (SAM) and RAM access via d-RAM in the 45°, 90°, and 135° directions. It is equipped with an image data bus that is connected by the O.

方向のコンボリューションを特に高速化したことを特徴
としている。
It is characterized by particularly high-speed directional convolution.

従来はフレームメモリがスタティックRAMで構成され
、全方向のベクトルコンボリューションが高速に実施で
きたが非常に高価となるという問題点がある。
Conventionally, the frame memory has been configured with a static RAM, and vector convolution in all directions can be performed at high speed, but there is a problem in that it is very expensive.

第5図において、フレームメモリは通常4ないし5画面
分の容量をもつためその記憶容量が太きく、装置のコス
トを下げるために安価なd −RAMが使用されている
。特にシリアルアクセスメモリ(SAM)付きのd−R
AMを使用してシリアルアクセスメモリからシーケンシ
ャルに1行毎にフレームメモリをアクセスすると、高速
S −RAMとぼり同程度のスピードで動作が可能とな
る。
In FIG. 5, the frame memory usually has a capacity for four to five screens, so its storage capacity is large, and an inexpensive d-RAM is used to reduce the cost of the device. Especially d-R with serial access memory (SAM)
If the frame memory is sequentially accessed row by row from the serial access memory using AM, it becomes possible to operate at a speed comparable to that of high-speed S-RAM.

したがってシーケンシャルにアクセスできる0゜方向の
アクセスと同じ速度で動作するベクトルコンボリューシ
ョンプロセッサを設置すれば、O。
Therefore, if a vector convolution processor that operates at the same speed as access in the 0° direction that can be accessed sequentially is installed, the processing time will be O.

方向ベクトルコンボリューションを高速に実行できるよ
うになる。0°方向ベクトルコンボリユーシヨンを繰返
して実行し、その和をとる如く加算して行くとマトリッ
クスコンボリューションが実施される。以上の動作は、
コンボリューションプロセッサにとって重要な機能であ
る。
Direction vector convolution can be performed quickly. Matrix convolution is performed by repeatedly performing 0° direction vector convolution and adding up the sums. The above operation is
This is an important function for convolution processors.

〔発明の効果〕〔Effect of the invention〕

本発明によれば、フレームメモリに記憶された複数個の
処理対象画素データの各々のコンボリューションが少な
い乗算器を用いて比較的高速で求められ、コンボリュー
ションに必要な荷重係数の種類が少なくなり、乗算器用
RAMの記憶容量が節減された画像信号処理装置を実現
することができる。
According to the present invention, convolution of each of a plurality of pieces of pixel data to be processed stored in a frame memory is obtained at a relatively high speed using a small number of multipliers, and the number of types of weighting coefficients required for convolution is reduced. , it is possible to realize an image signal processing device in which the storage capacity of the multiplier RAM is reduced.

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

第1図は本発明の一実施例としての画像信号処理装置の
概略構成を示す図、 第2図は第1図装置において用いられるNXNコンボリ
ューション用係数マトリクスの構成を示す図面、 第3図および第4図はいずれも従来形のコンボリューシ
ョン用装置の機能を説明する図、第5図は、第1図装置
において用いられるベクトルコンボリューションプロセ
ッサに用いられるフレームメモリの他の例を示す。 2・・・フレームメモリ、 3・・・第1のシフトレジスタ、 31.32.33・・・レジスタ、 11・・・イメージセンサ、 12・・・A/D変換器、 41・・・係数メモリ、 42・・・マツピングメモリ、 421.422,423・・・レジスタ、51.52.
53・・・乗算器、 61・・・インターフェース、 71・・・加算器、
FIG. 1 is a diagram showing a schematic configuration of an image signal processing device as an embodiment of the present invention, FIG. 2 is a diagram showing a configuration of a coefficient matrix for NXN convolution used in the device shown in FIG. 1, and FIG. FIG. 4 is a diagram explaining the functions of a conventional convolution device, and FIG. 5 shows another example of a frame memory used in the vector convolution processor used in the device of FIG. 1. 2... Frame memory, 3... First shift register, 31.32.33... Register, 11... Image sensor, 12... A/D converter, 41... Coefficient memory , 42... Mapping memory, 421.422, 423... Register, 51.52.
53... Multiplier, 61... Interface, 71... Adder,

Claims (1)

【特許請求の範囲】[Claims] 1. イメージセンサの画像信号をディジタル変換して
格納するフレームメモリと、N行とN列の荷重係数を予
め記憶する係数メモリとを有し、該フレームメモリに記
憶された複数の処理対象画素データの各々のコンボリュ
ーションを該係数メモリの荷重係数を用いてコンボリュ
ーションを行う画像信号処理装置において、 N個の段数を有する第1のシフトレジスタ、N個の荷重
係数がセットされたN個のレジスタ、前記第1のシフト
レジスタの各段の出力に対応する前記レジスタの出力を
乗算するN個のRAMによる乗算器、 該N個の乗算器出力を加算する加算器、 前記フレームメモリの行方向の処理対象画素データ数に
等しい段数を有する第2のシフトレジスタ、 前記加算器の出力と前記第2のシフトレジスタの出力と
を加算・記憶し、その加算結果を該第2のシフトレジス
タに加算する加算レジスタ、を具備し、 前記N個のレジスタへ係数メモリから1行分の荷重係数
がセットされ、該荷重係数に対応するフレームメモリの
画素データが荷重係数のすべての行に対して前記第1の
シフトレジスタへ順次入力され、荷重係数の最後の行に
ついて入力が行われるまでに加算レジスタ出力データを
用いて1行分の処理対象画素データの各々のコンボリュ
ーションが行われると共に、荷重係数選択信号により重
複する係数を繰返し使用し、更にマッピングメモリによ
りRAMによる乗算器と対応せしめてマトリクスコンボ
リューションにおけるシーケンシャル指定を可能ならし
めたことを特徴とするコンボリューションを用いる画像
信号処理装置。
1. It has a frame memory that digitally converts and stores the image signal of the image sensor, and a coefficient memory that stores N rows and N columns of weighting coefficients in advance, and each of the plurality of processing target pixel data stored in the frame memory. An image signal processing device that performs convolution using weighting coefficients of the coefficient memory, comprising: a first shift register having N stages; N registers in which N weighting coefficients are set; a multiplier using N RAMs that multiplies the output of each stage of the first shift register by the output of the corresponding register; an adder that adds the outputs of the N multipliers; a processing target in the row direction of the frame memory a second shift register having a number of stages equal to the number of pixel data; an addition register that adds and stores the output of the adder and the output of the second shift register, and adds the addition result to the second shift register; , a load coefficient for one row is set from the coefficient memory to the N registers, and pixel data of the frame memory corresponding to the load coefficient is shifted to the first shift for all rows of the load coefficient. Each row of pixel data to be processed is sequentially input to the register, and until the last row of the weighting coefficients is inputted, each row of pixel data to be processed is convolved using the addition register output data, and the weighting factor selection signal is used to convolve each row of pixel data to be processed. 1. An image signal processing device using convolution, characterized in that the coefficients are repeatedly used, and the coefficients are further associated with a RAM-based multiplier by a mapping memory, thereby enabling sequential specification in matrix convolution.
JP27703885A 1985-12-11 1985-12-11 Picture signal processor using convolution Pending JPS62137668A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27703885A JPS62137668A (en) 1985-12-11 1985-12-11 Picture signal processor using convolution

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27703885A JPS62137668A (en) 1985-12-11 1985-12-11 Picture signal processor using convolution

Publications (1)

Publication Number Publication Date
JPS62137668A true JPS62137668A (en) 1987-06-20

Family

ID=17577912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27703885A Pending JPS62137668A (en) 1985-12-11 1985-12-11 Picture signal processor using convolution

Country Status (1)

Country Link
JP (1) JPS62137668A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010064728A1 (en) * 2008-12-04 2010-06-10 Canon Kabushiki Kaisha Convolution operation circuit and object recognition apparatus

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010064728A1 (en) * 2008-12-04 2010-06-10 Canon Kabushiki Kaisha Convolution operation circuit and object recognition apparatus
JP2010134697A (en) * 2008-12-04 2010-06-17 Canon Inc Convolution operation circuit, hierarchical convolution operation circuit, and object recognition device
US8832004B2 (en) 2008-12-04 2014-09-09 Canon Kabushiki Kaisha Convolution operation circuit and object recognition apparatus

Similar Documents

Publication Publication Date Title
EP0353223B1 (en) Two-dimensional discrete cosine transform processor
JPS6053349B2 (en) image processing processor
EP0005954A1 (en) Method and apparatus for improved digital image processing
EP3093757B1 (en) Multi-dimensional sliding window operation for a vector processor
JPH05503800A (en) Single-chip, mode-switchable matrix multiplier and convolver for color image processing
KR20200081044A (en) Method and apparatus for processing convolution operation of neural network
JPH1091780A (en) Convolution device and convolution execution method
JP6532334B2 (en) Parallel computing device, image processing device and parallel computing method
US6643412B1 (en) Method and apparatus for high speed convolution
JPS62137668A (en) Picture signal processor using convolution
US4949282A (en) Device for calculating the moments of image data
EP0335306B1 (en) Method and device for obtaining in real time the two-dimensional discrete cosine transform
WO2019136747A1 (en) Deconvolver and an artificial intelligence processing device applied by same
JP2862388B2 (en) Filtering method for ultra-high-speed image processing system
EP0321584A1 (en) System for calculating sum of products
US5237656A (en) Image processing apparatus using look-up tables
JPS60119116A (en) Two-dimensional arithmetic unit for calculating sum of products
JP3010272B2 (en) Spatial filter processing device
JP2806436B2 (en) Arithmetic circuit
JPS58163061A (en) Parallel picture processor
JPS62164180A (en) Picture signal processor using convolution
JP2862387B2 (en) Filtering method for ultra-high-speed image processing system
JP2023156864A (en) Image processing device and image processing method
Kim et al. Novel approach for high-speed convolution
JPS63170788A (en) Image processor