JPH0624029B2 - Image processing device - Google Patents
Image processing deviceInfo
- Publication number
- JPH0624029B2 JPH0624029B2 JP63112241A JP11224188A JPH0624029B2 JP H0624029 B2 JPH0624029 B2 JP H0624029B2 JP 63112241 A JP63112241 A JP 63112241A JP 11224188 A JP11224188 A JP 11224188A JP H0624029 B2 JPH0624029 B2 JP H0624029B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- hough
- image
- dda
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Image Analysis (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は画像処理装置に関するもので、無人走行車両の
制御や被観測物体の動作のリアルタイムな認識などに使
用される。The present invention relates to an image processing device, and is used for controlling an unmanned traveling vehicle, recognizing a motion of an observed object in real time, and the like.
例えば無人走行ロボットや自動走行車両を制御する場合
には、進行路にあらかじめ表示された識別ラインや、道
路のセンターラインあるいは路肩ラインの画像をカメラ
で取り込み、リアルタイムで画像処理する必要がある。
第15図は画像による道路の認識を説明するためのもの
で、同図(a)はカメラで取り込んだ画像、同図(b)
は同図(a)のうち輝度(もしくはその変化割合など)
の高い画素を黒点で示した図である。For example, when controlling an unmanned traveling robot or an autonomous vehicle, it is necessary to capture an image of an identification line previously displayed on the traveling path, a center line or a shoulder line of the road with a camera, and perform image processing in real time.
FIG. 15 is for explaining the recognition of the road by the image. FIG. 15A is an image captured by the camera, and FIG.
Is the luminance (or its change rate, etc.) in the figure (a)
It is the figure which showed the high pixel of a black dot.
同図(a)に示す通り、カメラ画像1には水平線2の無
限遠方向に延びる道路3が写っており、この道路3の両
側には路肩ライン4が描かれ、中央部にはセンターライ
ン5が描かれている。ここで、道路3の路肩ライン4お
よびセンターライン5は他の部分に比べて輝度が高く、
従って同図(b)ではこれらの部分にドット4′,5′
が連続して現れることになる。このようなカメラ画像1
において、道路3の進行方向および曲り形状などを認識
するためには、同図(b)においてドット4′を結ぶ曲
線の近似直線L1,L2,L3などを認識すればよい。As shown in FIG. 1A, a camera image 1 shows a road 3 extending in the infinity direction of a horizon 2, a shoulder line 4 is drawn on both sides of the road 3, and a center line 5 is drawn in the center. Is drawn. Here, the shoulder line 4 and the center line 5 of the road 3 have higher brightness than other parts,
Therefore, in the same figure (b), the dots 4 ', 5'on these parts
Will appear continuously. Such a camera image 1
In order to recognize the traveling direction and the curved shape of the road 3, the approximate straight lines L 1 , L 2 , L 3 of the curve connecting the dots 4 ′ in FIG.
従来から、このような近似直線Lを求める手法として、
Hough(ハフ)変換と呼ばれる手法が知られている
(例えば米国特許第3069654号)。これを第16
図ないし第18図により説明する。第16図(a)に示
すように、x−y座標系で示される原画像において処理
対象点P(xp,yp)が存在するとき、この点Pを通
る直線l(la,lbなど)は無限に描くことができ
る。そして、この直線la,lb,…に直交し原点O
(0,0)を通る直線についても、直線la,lb,…
ごとに1本づつ描くことができる。ここで、原点O
(0,0)を通る直線について、直線l(la,lbな
ど)までの長さをρ(ρa,ρbなど)とし、x軸とな
す角をθ(θa,θbなど)とすると、この原点を通る
直線の上記ρ,θは、同図(b)のような正弦曲線(サ
インカーブ)すなわちHough曲線として表現され
る。ここにおいて、原点O(0,0)と処理対象点P
(xp,yp)の距離ρmaxは、この処理対象点に関す
る上記のρa,ρb,…)中で最も長く、 ρmax=(xp 2+yp 2)1/2 となり、θ=0のときにはρ0=xpとなる。Conventionally, as a method for obtaining such an approximate straight line L,
A technique called Hough transform is known (for example, US Pat. No. 3,069,654). This is the 16th
This will be described with reference to FIGS. As shown in Figure No. 16 (a), when x-y coordinate system the target point P to (x p, y p) in the original image shown there, linearly l (l a through this point P, l (b, etc.) can be drawn infinitely. Then, this straight line l a, l b, perpendicular to the origin O ... to
For even a straight line passing through (0,0), a straight line l a, l b, ...
You can draw one for each. Here, the origin O
Regarding a straight line passing through (0, 0), the length up to the straight line 1 (l a , l b, etc.) is ρ (ρ a , ρ b, etc.), and the angle formed with the x axis is θ (θ a , θ b, etc.). ), The above ρ and θ of the straight line passing through the origin are expressed as a sine curve (sine curve), that is, a Hough curve as shown in FIG. Here, the origin O (0, 0) and the processing target point P
The distance ρ max of (x p , y p ) is the longest among the above ρ a , ρ b , ...) Regarding this processing target point, and ρ max = (x p 2 + y p 2 ) 1/2 , and θ When = 0, ρ 0 = x p .
次に、第17図(a)のように直線L上に並ぶ3点P1
〜P3について、第16図のHough変換を適用する
と、点P1について上記サインカーブ(Hough曲
線)は第17図(b)の点線のようになり、点P2につ
いてのサインカーブは同図(b)の一点鎖線のようにな
り、点P3についてのサインカーブは同図(b)の二点
鎖線のようになる。ここで、同図(b)のサインカーブ
のピーク(ρ1,θ1)、(ρ2,θ2)および
(ρ3,θ3)は、それぞれ同図(a)の原点O(0,
0)と点P1,P2,P3の間の距離ρ1〜ρ3と、x
軸とのなす角θ1〜θ3とに対応する。Next, as shown in FIG. 17A, three points P 1 lined up on the straight line L
When the Hough transform of FIG. 16 is applied to P 3 , the above sine curve (Hough curve) of the point P 1 becomes like the dotted line of FIG. 17 (b), and the sine curve of the point P 2 of FIG. It becomes like the one-dot chain line of (b), and the sine curve about the point P 3 becomes like the two-dot chain line of the same figure (b). Here, the peaks (ρ 1 , θ 1 ), (ρ 2 , θ 2 ) and (ρ 3 , θ 3 ) of the sine curve of FIG.
0) and the distance ρ 1 ~ρ 3 between points P 1, P 2, P 3 , x
It corresponds to the angles θ 1 to θ 3 formed with the axis.
第17図(b)において、3つのHough曲線(サイ
ンカーブ)が交叉する点に着目すると、ここは座標が
(ρt,θt)となっており、これは同図(a)の直線
Lと直交する原点O(0,0)を通る直線のρt,θt
と等しくなっている。従って、このようなサインカーブ
の交叉点を求めれば、原画像のx−y直交座標系におい
て描かれるドット(黒点)の間の曲線の近似直線(但
し、第17図ではこの曲線と近似直線が一致している)
を求めることができる。Focusing on the point where three Hough curves (sine curves) intersect in FIG. 17 (b), the coordinates are (ρ t , θ t ), which is the straight line L in FIG. 17 (a). Ρ t , θ t of a straight line passing through the origin O (0,0) orthogonal to
Is equal to. Therefore, if the intersection point of such a sine curve is obtained, an approximate straight line of a curve between dots (black dots) drawn in the xy orthogonal coordinate system of the original image (however, in FIG. 17, this curve and the approximate straight line are Match)
Can be asked.
これを第18図により説明すると、まず同図(a)にお
いてx−y座標面(原画像面)にHough変換すべき
ドット(処理対象点)が多数存在し、これらは曲線上に
並んでいるとする。ここで、同図(a)中において、ド
ット間を結ぶ曲線には3本の近似直線L1,L2,L3
を描くことができる。従って、このドツトの全てについ
て第16図のようなサインカーブへの変換(Hough
変換)を実行すると、第16図(b)のようなサインカ
ーブの交叉点が3ケ所を中心にして得られることにな
る。この交叉点の座標は、第18図(a)に示す
(ρta,θt1)、(ρt2,θt2)および(ρt3,θt3)
であり、従ってこれをρ,θ,Hの座標系においてHを
交叉点の出現頻度として表わすと、同図(b)の如くに
なる。従って、前述の第15図(b)のような道路3の
路肩ライン4に対応する曲線の近似直線L1〜L3は、
第18図(b)におけるH(交叉点の出現頻度)のピー
クにおけるρ,θの値によって求めることが可能にな
る。This will be described with reference to FIG. 18. First, in FIG. 18A, a large number of dots (processing target points) to be Hough-converted exist on the xy coordinate plane (original image plane), and these dots are arranged on a curve. And Here, in the figure (a), three approximate straight lines L 1 , L 2 , and L 3 are shown as the curves connecting the dots.
Can be drawn. Therefore, for all of these dots, conversion into a sine curve as shown in FIG.
When the (conversion) is executed, the intersections of the sine curve as shown in FIG. 16 (b) are obtained centering on three points. The coordinates of this crossing point are (ρ ta , θ t1 ), (ρ t2 , θ t2 ) and (ρ t3 , θ t3 ) shown in FIG. 18 (a).
Therefore, when H is represented as the appearance frequency of the crossing points in the coordinate system of ρ, θ, H, it becomes as shown in FIG. Therefore, the approximate straight lines L 1 to L 3 of the curves corresponding to the shoulder line 4 of the road 3 as shown in FIG.
It can be obtained by the values of ρ and θ at the peak of H (frequency of appearance of intersections) in FIG. 18 (b).
しかしながら、前述のようなHough変換の手法は、
高速かつリアルタイムな画像処理に適用することは容易
でなかった。なぜなら、第16図においてデータとして
与えられる原画像中の処理対象点Pの座標値(xp,y
p)にもとづき、Hough曲線(サインカーブ)を求
めるために、原点から直線lまでの距離を求めようとす
ると、 ρ=xp・sinθ+yp・cosθ …(1) を実行しなければならず、例えばθを512分割にする
と三角関数の計算を1024回、乗算を1024回、加
算を512回実行しなければならない。そして、計算対
象となる原画像が例えば512×512の画素から構成
されているとすると、全体の計算回数は極めて膨大なも
のとなり、通常のプロセッサで処理すると処理時間が著
しく長くなってしまう。However, the method of Hough transformation as described above is
It was not easy to apply to high-speed and real-time image processing. This is because the coordinate value (x p , y) of the processing target point P in the original image given as data in FIG.
p ), in order to obtain the Hough curve (sine curve), the distance from the origin to the straight line 1 is to be obtained. ρ = x p · sin θ + y p · cos θ (1) For example, when θ is divided into 512, trigonometric function calculation must be executed 1024 times, multiplication must be executed 1024 times, and addition must be executed 512 times. If the original image to be calculated is composed of, for example, 512 × 512 pixels, the total number of calculations will be extremely large, and if it is processed by an ordinary processor, the processing time will be extremely long.
もちろん、上記(1)式において必要とされるsinθお
よびcosθの値をROM等に格納しておき、計算所要時
間を短くすることも可能である(例えば、「実時間Ho
ugh変換プロセッサ」昭和60年電子通信学会情報シ
ステム部門全国大会、No.92あるいは「ROMを用
いたHough変換ハードウエア」昭和62年電子情報
通信学会創立70周年記念総合全国大会、No.158
7)。しかしながら、前者の場合に三角関数のデータを
ROM化しても、(1)式の計算における乗算回数は従
前のままであり、加算時間に比べて乗算時間がかなり長
いことを考慮すると、根本的な解決とはなりえない。Of course, it is also possible to store the values of sin θ and cos θ required in the above equation (1) in a ROM or the like to shorten the time required for calculation (for example, “real time Ho
"ugh conversion processor", National Conference of Information Systems Division, IEICE, No. 60 92 or "Hough conversion hardware using ROM" 1987 IEICE 70th anniversary general national conference, No. 158
7). However, even if the data of the trigonometric function is stored in ROM in the former case, the number of multiplications in the calculation of the equation (1) remains the same as before, and considering that the multiplication time is considerably longer than the addition time, the fundamental It cannot be a solution.
一方、上記の後者の文献「ROMを用いたHough変
換ハードウエア」を別の観点から検討すると、ここでは
上記(1)式の演算を行なう演算部を並列化することに
より、全体としての信号処理の高速化を図っている。し
かしながら、このようにするとxp・sinθ、yp・cos
θを求めるためのメモリテーブル(ROM)は演算部の
並列接続した数だけ必要になり、ハードウエア上でシス
テムが極めて大規模なものになってしまう。また、LS
I化には適していない。ROMをRAM化する方法も考
えられるが、これでは集積化の点で難点がある。On the other hand, considering the latter document “Hough conversion hardware using ROM” described above from another point of view, here, the signal processing as a whole is performed by parallelizing the operation units that perform the operation of the above formula (1). We are trying to speed up. However, x p · sinθ In this way, y p · cos
A memory table (ROM) for obtaining θ is required for the number of arithmetic units connected in parallel, which results in an extremely large scale system in terms of hardware. Also, LS
Not suitable for I conversion. A method of converting the ROM into the RAM can be considered, but this has a problem in terms of integration.
このため、高速度で走行する車両を画像データにもとづ
きリアルタイム制御したり、高速運動する被観測物体を
画像データにもとづきリアルタイムに認識したりするこ
とは、ほとんど不可能であった。また、演算部の並列化
などにより高速化を図ろうとすると、ハードウエアの大
型化は避けることができなかった。Therefore, it is almost impossible to control a vehicle traveling at high speed in real time based on image data, or to recognize an observed object moving at high speed in real time based on image data. In addition, when attempting to increase the speed by parallelizing the arithmetic units, it is inevitable to increase the size of the hardware.
そこで本発明は、画像データの処理を高速度でリアルタ
イムに実行することが可能であるだけでなく、ハードウ
エアを小型化することが可能な画像処理装置を提供する
ことを目的とする。Therefore, it is an object of the present invention to provide an image processing apparatus capable of executing processing of image data at high speed in real time and also reducing the size of hardware.
本発明に係る画像処理装置は、撮像手段によって取り込
まれた原画像上の複数の処理対象点から当該原画像の特
徴点を分別、抽出する画像処理装置であって、次の要素
を備える。すなわち、同一構成のDDA(Digital Diffe
rential Analysis;ディジタル微分解析)演算要素を複
数直列接続して構成されるDDA演算手段と、このDD
A演算手段の演算結果をDDA演算要素に対応して記憶
する記憶手段と、この記憶手段の記憶内容にもとづき、
原画像の特徴点を抽出する手段とを備えることを特徴と
する。An image processing apparatus according to the present invention is an image processing apparatus that classifies and extracts feature points of an original image from a plurality of processing target points on the original image captured by an image capturing unit, and includes the following elements. That is, DDA (Digital Diffe
digital differential analysis) and a DDA operation means configured by connecting a plurality of operation elements in series, and this DD
Based on the storage means for storing the calculation result of the A calculation means in correspondence with the DDA calculation element and the stored contents of this storage means,
Means for extracting feature points of the original image.
また、本発明に係る画像処理装置は、撮像手段によって
取り込まれた原画像上の複数の処理対象点を結ぶ曲線の
近似直線を導出する画像処理装置であって、次の要素を
備える。すなわち、α−β直交座標系で描かれる近似円
の円周上の一点の座標を(αi,βi)とし、円周上の
次の点の座標(αi+1,βi+1)までの回転角をεとした
とき(但し、iは正の整数)に、 αi+1=fα(αi,βi,ε) βi+1=fβ(αi,βi,ε) となる回転運動漸化式を所定回転角ごとに順次パイプラ
イン方式で演算するDDA演算手段と、このDDA演算
手段により順次に演算されたそれぞれの結果のうち、少
なくともβiの値を記憶する記憶手段と、この記憶手段
の記憶内容にもとづいて得られる複数の処理対象点ごと
のHough曲線の交点から、近似直線を導出する近似
直線導出手段とを備えることを特徴とする。The image processing apparatus according to the present invention is an image processing apparatus that derives an approximate straight line of a curve connecting a plurality of processing target points on the original image captured by the image capturing means, and includes the following elements. That is, the coordinates of one point on the circumference of the approximate circle drawn in the α-β Cartesian coordinate system is (α i , β i ), and the coordinates (α i + 1 , β i + 1 of the next point on the circumference are set. ), Where i is a positive integer, α i + 1 = f α (α i , β i , ε) β i + 1 = f β (α i , β i , Ε) of the rotational motion recurrence formula for each predetermined rotation angle in a sequential pipeline method, and at least the value of β i among the results sequentially calculated by the DDA calculation unit It is characterized by comprising a storage means for storing and an approximate straight line deriving means for deriving an approximate straight line from the intersection of the Hough curves for each of the plurality of processing target points obtained based on the stored contents of the storage means.
〔作用〕 本発明の構成によれば、同一構成のDDA演算回路(演
算要素)を単に直列接続するけで簡単に演算部を形成で
き、演算に際してメモリテーブルなどを参照することが
不要であるので、構成が著しく簡単かつ小型になる。ま
た、パイプライン方式で回転運動漸化式を実行するよう
に演算回路を構成することで、計算を高速化することが
可能になる。[Operation] According to the configuration of the present invention, an arithmetic unit can be easily formed by simply connecting in series DDA arithmetic circuits (arithmetic elements) having the same configuration, and it is not necessary to refer to a memory table or the like when performing arithmetic operations. The configuration is remarkably simple and compact. Further, by configuring the arithmetic circuit so as to execute the rotational motion recurrence formula in the pipeline system, it becomes possible to speed up the calculation.
以下、添付図面の第1図ないし第14図にもとづいて、
本発明の実施例を説明する。なお、図面の説明において
同一要素には同一符号を付し、重複する説明を省略す
る。Hereinafter, based on FIGS. 1 to 14 of the accompanying drawings,
An example of the present invention will be described. In the description of the drawings, the same elements will be denoted by the same reference symbols, without redundant description.
第1図は実施例に係る画像処理装置の全体構成を示すブ
ロック図である。同図において、カメラ11は処理対象
物(例えば道路、高速移動物体など)を撮像して原画像
を取り込むもので、この画像信号は信号入力部12でデ
ィジタル化されてエッジ検出部13に送られる。エッジ
検出部13は後に後述するように画像信号のエッジを抽
出して濃淡をもったエッジ化データとし、例えば512
×512個の画素信号(エッジ化画素信号)として多値
化メモリ14に送る。多値化メモリ14は画素ごとにエ
ッジ化データを記憶し、一画面のスキャンが終了するご
とにエッジ化データはD/A変換部15に送られ、アナ
ログ信号としてCRTディスプレイ16に与えられる。
従って、このエッジ化データはCRTディスプレイ16
で表示される。FIG. 1 is a block diagram showing the overall configuration of the image processing apparatus according to the embodiment. In FIG. 1, a camera 11 captures an original image by picking up an object to be processed (for example, a road or a high-speed moving object), and this image signal is digitized by a signal input unit 12 and sent to an edge detection unit 13. . The edge detection unit 13 extracts the edge of the image signal as the edged data having a shade, as will be described later.
It is sent to the multi-value quantization memory 14 as x512 pixel signals (edged pixel signals). The multivalued memory 14 stores edging data for each pixel, and the edging data is sent to the D / A conversion unit 15 every time scanning of one screen is completed and given to the CRT display 16 as an analog signal.
Therefore, this edged data is displayed on the CRT display 16
Is displayed.
一方、エッジ検出部13から出力されるエッジ化画素信
号は前処理部17に与えられ、後に詳述するような前処
理が施されたエッジ化画素信号はDDA演算手段(以
下、DDA演算部という)18に与えられる。DDA演
算部18はn個のDDA演算要素(以下、DDA演算回
路という)180〜18n-1を有して構成され、これら
は互いに直列接続されている。そして、DDA演算部1
8の出力側には近傍フィルタ19とソーティング部20
が接続され、これによって近傍フィルタリング処理とソ
ーティング処理(後に詳述)がされるようになってい
る。なお、上記の回路要素はVMEバス21を介してC
PU22に接続され、信号処理動作の制御や処理タイミ
ングの同期がとられている。また、前処理部17、DD
A演算部18および近傍フィルタ19はVMEバス23
を介して互いに接続され、DDA演算結果の転送や濃淡
値データの転送の同期制御がなされている。On the other hand, the edged pixel signal output from the edge detection unit 13 is given to the pre-processing unit 17, and the edged pixel signal subjected to the pre-processing as described in detail later is performed by the DDA calculation means (hereinafter referred to as the DDA calculation unit). ) 18. DDA operation unit 18 of n DDA computing elements is configured to have a (hereinafter, the DDA operation of circuit) 18 0 ~18 n-1, which are connected in series with each other. Then, the DDA operation unit 1
The output side of 8 has a neighborhood filter 19 and a sorting unit 20.
Are connected, whereby the neighborhood filtering process and the sorting process (detailed later) are performed. In addition, the above circuit elements are connected to the C via the VMEbus 21.
It is connected to the PU 22 to control the signal processing operation and synchronize the processing timing. In addition, the preprocessing unit 17, DD
The A arithmetic unit 18 and the neighborhood filter 19 are the VME bus 23.
Are connected to each other via a control unit for synchronous control of the transfer of the DDA operation result and the transfer of the grayscale value data.
次に、第1図に示す画像処理装置の要部の詳細な構成を
説明する。Next, a detailed configuration of a main part of the image processing apparatus shown in FIG. 1 will be described.
第2図はその構成図で、第1図中の前処理部17、DD
A演算部18および近傍フィルタ19に対応している。
図示の通り、前処理部17はFIFO(First-In First-
Out)ボード17′により実現される。FIFO17′は
処理対象点のX−Y平面での座標値(Xp,Yp)をア
ドレス信号として入力すると共に、エッジ化された濃淡
値データDIをデータ信号として入力する。そして、後
述のようにこのFIFO17′は、X−Y座標からx−
y座標への座標変換と、ウィンドウ設定と、閾値処理と
を行ない、結果をFIFO方式に従って順次に出力す
る。FIG. 2 is a block diagram thereof, and the preprocessing unit 17 and DD in FIG.
It corresponds to the A calculator 18 and the neighborhood filter 19.
As shown in the figure, the pre-processing unit 17 uses a FIFO (First-In First-
Out) board 17 '. FIFO 17 'is the coordinate values (X p, Y p) in the X-Y plane of the target point and inputs as an address signal, and inputs the edging has been gradation value data D I as a data signal. Then, as will be described later, this FIFO 17 'is converted from the XY coordinate to x-
Coordinate conversion to the y coordinate, window setting, and threshold processing are performed, and the results are sequentially output according to the FIFO method.
第1図に示す各段のDDA演算回路180〜18n-1は
それぞれ3個のフリップフロップ(F/F)31,32,3
3を有し、F/F31はアドレス信号α0〜αn-1,β
0〜βn-1をそれぞれ一時的に格納し、F/F32は濃
淡値データDIをそれぞれ一時的に格納し、F/F33
は各DDA演算回路180〜18n-1ごとに記録手段と
して設けられたRAM34(RAM0〜RAMn-1)の
それぞれから読み出されたヒストグラムデータDM0〜D
M(n-1)を一時的に格納する。DDA37(DDA0〜D
DAn-1)はそれぞれ後述の回転運動漸化式を一回転角
ごとに演算するもので、それぞれアドレス信号αi,β
iを入力してアドレス信号αi+1,βi+1を出力する。加
算器であるDDA35(ADD0〜ADDn-1)はFI
FO17′からの濃淡値データDIと、RAM34から
のヒストグラムデータDM0〜DM(n-1)のそれぞれの加算
を行なうもので、その出力はバッファ36で一時的に保
存された後に、RAM0〜RAMn-1のそれぞれに送ら
れる。タイミングコントローラ25はこれら回路要素に
おける信号処理のタイミング制御を行なうもので、タイ
ミングパルスφa〜φeを出力する。そして、図示しな
いコマンド/ステータス・インタフェース(I/F)に
接続されている。The 1 DDA computation circuit 18 0 ~18 n-1 of the stage shown in FIG Each three flip-flops (F / F) 31,32,3
3 and the F / F 31 has address signals α 0 to α n−1 , β.
0 to β n-1 are respectively temporarily stored, the F / F 32 temporarily stores the gray value data D I , respectively, and the F / F 33
Is the histogram data D M0 to D M read from each of the RAMs 34 (RAM 0 to RAM n-1 ) provided as recording means for each DDA arithmetic circuit 18 0 to 18 n-1.
Store M (n-1) temporarily. DDA37 (DDA 0- D
DA n-1 ) is for calculating the rotational motion recurrence formula described later for each rotation angle. The address signals α i , β
i is input and address signals α i + 1 and β i + 1 are output. The DDA 35 (ADD 0 to ADD n-1 ) which is an adder is FI
The gradation value data D I from the FO 17 'and the histogram data D M0 to D M (n-1) from the RAM 34 are respectively added, and the output is temporarily stored in the buffer 36 and then stored in the RAM 36. 0 to RAM n-1 . The timing controller 25 controls the timing of signal processing in these circuit elements and outputs timing pulses φ a to φ e . Then, it is connected to a command / status interface (I / F) not shown.
次に、第1図および第2図に示す画像処理装置の全体的
動作の概要を、第3図により説明する。Next, an outline of the overall operation of the image processing apparatus shown in FIGS. 1 and 2 will be described with reference to FIG.
第3図はこれを説明するフローチャートである。まず、
カメラ11で取り込んだ原画像上の処理対象点ごとの画
素信号を信号入力部12を介して入力し(ステップ10
2)、エッジ検出部13でエッジ検出を行なって(ステ
ップ104)エッジ化データを前処理部17へ入力する
(ステップ106)。以上のステップ102〜106の
処理は、画素信号が入力されるごとに繰り返され、結果
(エッジ化データ)は順次に信号の前処理部17にディ
ジタルデータとして送られる。FIG. 3 is a flowchart explaining this. First,
A pixel signal for each processing target point on the original image captured by the camera 11 is input via the signal input unit 12 (step 10
2) The edges are detected by the edge detector 13 (step 104), and the edged data is input to the preprocessor 17 (step 106). The processes of steps 102 to 106 described above are repeated each time a pixel signal is input, and the results (edged data) are sequentially sent to the signal pre-processing unit 17 as digital data.
前処理部17では所定(後述)の前処理(ステップ10
8)を実行し、処理の終ったデータをDDA演算部18
へ送っていく(ステップ110)。この前処理について
も、エッジ化データが与えられるごとに順次に繰り返さ
れることになる。The preprocessing unit 17 performs a predetermined (described later) preprocessing (step 10).
8) is executed and the processed data is processed by the DDA operation unit 18
(Step 110). This pre-processing is also sequentially repeated each time the edged data is given.
次に、Hough曲線(サインカーブ)を求めるための
回転運動漸化式の演算が、後に説明する如くDDA演算
手段(パイプライン方式で演算する)で実行される(ス
テップ112)訳であるが、このDDA演算部18にお
ける演算は処理すべき一画面((原画像面)の画素信号
のうち、前処理部17でウィンドウ外あるいは閾値以下
のものとして除かれた画素以外の全ての処理が終了する
まで継続され(ステップ114)、終了したら、近似直
線導出手段によりHough曲線の交点に関して後述の
フィルタリング処理(ステップ116)とソーティング
処理(118)が近傍フィルタ19およびソーティング
部20で実行され、最終的な結果として原画像上の処理
対象点をつなぐ曲線の近似直線が求められることにな
る。Next, the calculation of the rotational motion recurrence formula for obtaining the Hough curve (sine curve) is executed by the DDA calculation means (calculated by the pipeline system) as described later (step 112). In the calculation in the DDA calculation unit 18, all the processes other than the pixels which are excluded from the window signals or those smaller than the threshold value by the preprocessing unit 17 out of the pixel signals of one screen ((original image plane) to be processed are completed. (Step 114), and when completed, the approximation straight line deriving means executes the filtering process (Step 116) and the sorting process (118), which will be described later, with respect to the intersection of the Hough curve by the neighborhood filter 19 and the sorting unit 20, and finally. As a result, an approximate straight line of a curve connecting the processing target points on the original image is obtained.
次に、エッジ検出部13におけるエッジ検出の手法およ
びエッジ化データについて、第4図により説明する。Next, the method of edge detection and the edged data in the edge detector 13 will be described with reference to FIG.
いま、カメラ11で取り込まれた原画像が第4図(a)
のようになっているとし、図中の符号8で示すラインを
x′座標で取り出してみると、輝度Sをアナログ的に示
せば同図(b)のようになっている。すなわち、道路3
の外側部は輝度が低く道路3および路肩も輝度が低い
が、路肩ライン4は輝度が非常に高い。ここで、第4図
(b)のような輝度分布は、実施例では例えば256階
調のディジタルデータとして認識されるが、道路の形状
を正確に認識するためには、このような輝度そのものの
分布の把握では十分ではない。The original image captured by the camera 11 is now shown in FIG. 4 (a).
When the line indicated by reference numeral 8 in the figure is taken out at the x'coordinate, the luminance S is shown in analog form in FIG. That is, road 3
The outer side of the road has low brightness, and the road 3 and the shoulder have low brightness, but the road shoulder line 4 has very high brightness. Here, the luminance distribution as shown in FIG. 4 (b) is recognized as digital data of 256 gradations in the embodiment, but in order to accurately recognize the shape of the road, such luminance itself cannot be recognized. Understanding the distribution is not enough.
そこで、信号入力部12を介して得られた画素信号の輝
度Sを座標x′で微分(dS/dx′)して輝度の変化
割合として把握すると、第4図(c)ようにエッジが明
瞭になり、これを絶対値|dS/dx′|で示すと同図
(d)のようになり、路肩ライン4のエッジを明瞭に認
識するためのエッジ化データ(ディジタルデータ)がエ
ッジ検出部13により得られる。このエッジ検出部13
からのエッジ化データについては、次のステップにおい
て前処理部17で所定の前処理が施される。Therefore, when the luminance S of the pixel signal obtained through the signal input unit 12 is differentiated (dS / dx ') with respect to the coordinate x'and grasped as a change rate of the luminance, the edge is clear as shown in FIG. 4 (c). When the absolute value | dS / dx ′ | is shown, it becomes as shown in FIG. 7D, and the edged data (digital data) for clearly recognizing the edge of the road shoulder line 4 is obtained by the edge detector 13. Is obtained by This edge detector 13
The edging data from 1 to 3 is subjected to a predetermined preprocessing by the preprocessing unit 17 in the next step.
第5図は前処理部17(FIFO17′)における前処
理を説明するためのフローチャートである。FIG. 5 is a flow chart for explaining the preprocessing in the preprocessing unit 17 (FIFO 17 ').
まず、第4図のようにして得られたエッジ化データがエ
ッジ検出部13から前処理部17に入力され(ステップ
122)、これがあらかじめ設定されたウィンドウ内の
ものであるか否か判定される(ステップ124)。この
ウインドウは、例えば第4図(a)で符号9により示す
如く設定される。ここで、ウインドウ9の内側のエッジ
化データであるか否かは、そのデータのX−Y座標面に
おける座標値により判定でき、ウインドウ9内のエッジ
化データについてのみ、次のステップ126が実行され
る。First, the edged data obtained as shown in FIG. 4 is input from the edge detection unit 13 to the preprocessing unit 17 (step 122), and it is determined whether or not this is within a preset window. (Step 124). This window is set as indicated by reference numeral 9 in FIG. 4 (a), for example. Here, whether or not the edged data inside the window 9 can be determined by the coordinate value on the XY coordinate plane of the data, and the following step 126 is executed only for the edged data in the window 9. It
ステップ126では、ウインドウ9内のエッジ化データ
が所定の閾値(スレッショルドレベル)以上であるか否
かが、例えばFIFO17′に付設されたルックアップ
テーブル(LUT)を用いてディジタル的に判定され
る。すなわち、第6図に示すように、LUTを設けない
ときはFIFO17′の入力データと出力データは1対
1で対応している(同図(a)図示)が、LUTを用い
てスレッショルドレベルを例えばIthに設定すると、入
力データがIth以下のときは出力データは0(ゼロ)に
なる。なお、このエッジ化データを256階調で把えた
ときには、スレッショルドレベルIthは0〜255の間
で任意に設定可能である。この閾値をアナログ的に示せ
ば、例えば第4図(d)で点線にて示すように設定され
るので、ステップ126で処理された後のデータは、主
として原画像中の路肩ライン4およびセンターライン5
に対応したデータ(ディジタルデータ)となる。このた
め、後述の信号処理をすべきデータが主要なもの(例え
道路の路肩ラインやセンターラインに対応したもの)だ
けになるので、ノイズ成分に影響されることがなくな
り、また全体の処理速度を高速化できる。In step 126, whether or not the edging data in the window 9 is equal to or higher than a predetermined threshold value (threshold level) is digitally determined using, for example, a look-up table (LUT) attached to the FIFO 17 '. That is, as shown in FIG. 6, when the LUT is not provided, the input data and the output data of the FIFO 17 'have a one-to-one correspondence (shown in FIG. 6A), but the threshold level is set by using the LUT. For example, when set to I th , the output data becomes 0 (zero) when the input data is less than or equal to I th . When the edged data is grasped at 256 gradations, the threshold level I th can be set arbitrarily between 0 and 255. If this threshold value is shown in an analog manner, for example, it is set as shown by the dotted line in FIG. 4 (d), so that the data after the processing in step 126 is mainly the shoulder line 4 and the center line in the original image. 5
Data (digital data) corresponding to. For this reason, since the only data that should be signal-processed later is the main data (for example, the data corresponding to the shoulder and center lines of the road), it will not be affected by noise components and the overall processing speed will be reduced. Can speed up.
次に、ステップ128で座標変換が行なわれる。すなわ
ち、第4図(a)に示すX−Y座標からx−y座標への
変換がなされる。これにより、原画像における処理対象
点の座標(Xp,Yp)はx−y座標系における座標
(xp,yp)に変換される。以上の処理により、Ho
ugh変換をするための前処理が終了する。Next, in step 128, coordinate conversion is performed. That is, the XY coordinates shown in FIG. 4 (a) are converted into the xy coordinates. Thus, the coordinates of the target point in the original image (X p, Y p) are converted into coordinates (x p, y p) in the x-y coordinate system. By the above processing, Ho
The preprocessing for performing the hugh conversion ends.
なお、第5図においてステップ124〜128の順序は
異なっていてもよい。例えば、ステップ128の座標変
換を最初に行なうようにしてもよいが、データ処理に要
する時間を考慮すると、第5図に示す順序で行なうのが
最も好ましいと考えられる。The order of steps 124 to 128 in FIG. 5 may be different. For example, the coordinate conversion in step 128 may be performed first, but considering the time required for data processing, it is considered most preferable to perform it in the order shown in FIG.
次に、本実施例におけるHough変換の適用につい
て、第7図および第8図を参照して具体的に説明する。Next, application of the Hough transform in the present embodiment will be specifically described with reference to FIGS. 7 and 8.
第7図(a)に示す点P(xp,yp)についてHou
gh曲線(サインカーブ)を求めると、これが同図
(c)のようになることは、既に第11図で説明した通
りである。ところで、このようなサインカーブの軌跡が
同図(b)のような円運動の軌跡に置き換えられること
が、三角関数の定理より導かれる。言い換えれば、同図
(a)の点P(xp,yp)についてのHough変換
を実行して同図(c)のHough曲線を求めること
は、同図(b)のような円運動の円周の軌跡を求めるこ
とと等価である。ここで、同図(b)の円は半径Rが R=ρmax=(xp 2+yp 2)1/2…(2) であり、円運動を同図(a)の点P(xp,yp)での
θ=0゜に対応する同図(b)の点Q(α0,β0)か
ら開始するとすると、その初期値θdは θd=π/2−θmax 但し、tan θmax=xp/yp …(3) である。Hou for the point P (x p , y p ) shown in FIG.
When the gh curve (sine curve) is obtained, it becomes as shown in FIG. 11C, as already described in FIG. By the way, it is derived from the trigonometric theorem that such a locus of a sine curve is replaced by a locus of circular motion as shown in FIG. In other words, the Hough transformation of the point P (x p , y p ) in FIG. 7A to obtain the Hough curve in FIG. 7C is performed by the circular motion shown in FIG. It is equivalent to obtaining the locus of the circumference. Here, the circle R in the figure (b) has a radius R of R = ρ max = (x p 2 + y p 2 ) 1/2 (2), and the circular motion is represented by the point P (x p, point Q (alpha 0 in the diagram corresponding theta = 0 ° in y p) (b), β 0 When starting from) its initial value θ d θ d = π / 2 -θ max where , Tan θ max = x p / y p (3).
本発明者はこのような事実に着目し、第7図(b)の円
を描くに際して円運動の漸化式を適用し、第7図(a)
の点P(xp,yp)の同図(c)へのHough変換
を簡単に行ないうる手法を見出した。ここで、上記の円
運動の漸化式によれば、α−β直交座標系で座標
(αi,βi)として表わされる一点から一回転角εだ
け進んだ点の座標(αi+1,βi+1)は、iを正の整数と
するときに αi+1=fα(αi,βi,ε) βi+1=fβ(αi,βi,ε) …(4) として求められる。The present inventor pays attention to such a fact and applies the recurrence formula of the circular motion when drawing the circle in FIG.
We have found a method that can easily perform the Hough transform of the point P (x p , y p ) of FIG. Here, according to the recurrence formula of the circular motion described above, the coordinates (α i + 1 ) of a point which is advanced by one rotation angle ε from one point represented by the coordinates (α i , β i ) in the α-β Cartesian coordinate system. , Β i + 1 ) is α i + 1 = f α (α i , β i , ε) β i + 1 = f β (α i , β i , ε) when i is a positive integer (4) is required.
この(4)式の具体的内容としては、従来からいくつか
のDDAが知れており、例えば回転角εを ε=2-m(rad)(但し、m=0,1,2,…) としたときに αi+1=αi−2-mβi βi+1=2-mαi+1+βi …(5) とするものなどがある。また、より精度が高く計算が容
易なものとして本発明者が見出したものとして、 αi+1=αi(1−2-2m-1)−2-mβi βi+1=2-mαi+βi(1−2-2m-1)…(7) あるいは αi+1=αi(1−2-2m-1) +βi(−2-m+ε-3m/6) βi+1=αi(2-m+ε-3m/6) +βi(1−2-2m-1)…(8) などを用いてもよい。As specific contents of the equation (4), several DDAs have been known in the past. For example, the rotation angle ε is set as ε = 2 −m (rad) (where m = 0, 1, 2, ...). Then, there is a case where α i + 1 = α i −2 −m β i β i + 1 = 2 −m α i + 1 + β i (5). In addition, the present inventors have found that the calculation is more accurate and easier to calculate. Α i + 1 = α i (1-2 −2m−1 ) −2 −m β i β i + 1 = 2 − m α i + β i (1-2 -2m-1) ... (7) or α i + 1 = α i ( 1-2 -2m-1) + β i (-2 -m + ε -3m / 6) β i You may use + 1 = (alpha) i (2- m + (epsilon) -3m / 6) + (beta) i ( 1-2-2m -1 ) ... (8) etc.
そこで、上記(7)式の漸化式を適用するとして、第2
図の回路の具体的な動作説明に先立ち、この演算方法を
具体的に説明する。Therefore, assuming that the recurrence formula of the above formula (7) is applied,
This calculation method will be specifically described prior to the description of the specific operation of the circuit in the figure.
第8図はそのフローチャートである。まず、第5図に従
ってFIFO17′により前処理がされたデータをDD
A演算部18に入力し(ステップ132)、第7図にお
いて処理対象点P(xp,yp)での角度θ=0゜(す
なわちρ=xpとなる角度)に対応する位置Q(α0,
β0)から円運動をスタートする。このとき、FIFO
17′からの(α0,β0)は、 α0=yp、β0=xp …(9) となっている。ここにおいて、円運動の開始位置を上記
のように設定することで、漸化式演算のための初期値が
実質的に不要になる。FIG. 8 is a flowchart thereof. First, the data pre-processed by the FIFO 17 'according to FIG.
It is input to the A calculation unit 18 (step 132), and the position Q (corresponding to the angle θ = 0 ° (that is, the angle at which ρ = x p ) at the processing target point P (x p , y p ) in FIG. 7 is obtained. α 0 ,
Start circular motion from β 0 ). At this time, the FIFO
(Α 0 , β 0 ) from 17 ′ is α 0 = y p , β 0 = x p (9). Here, by setting the starting position of the circular motion as described above, the initial value for the recurrence formula calculation becomes substantially unnecessary.
次に、上記のβ0の値をRAM0にアドレスとして記憶
した後に、(7)式によりα1,β1を求める。これ
は、(9)式で求めたα0,β0を(7)式に代入すれ
ばDDA0の出力から求めることができ(ステップ13
4)、DDA1,DDA2,DDA3,…における計算
の終了ごとに結果(β1,β2,β3,…)を順次にR
AM1,RAM2,RAM3…にアドレスとして記憶し
ておく(ステップ138)。一方、このステップ134
とステップ138の間で濃淡値データの累積を行なって
いく。すなわち、アドレス=βiとしてRAM34(R
AMi)から読み出されたヒストグラムデータDMiとF
IFO17′からの濃淡値データを加算し、これをRA
Miに再び記憶していく(ステップ136)。Next, after storing the value of β 0 in RAM 0 as an address, α 1 and β 1 are obtained by the equation (7). This can be obtained from the output of DDA 0 by substituting α 0 and β 0 obtained by the equation (9) into the equation (7) (step 13
4), the results (β 1 , β 2 , β 3 , ...) Are sequentially R after each calculation in DDA 1 , DDA 2 , DDA 3 ,.
It is stored as an address in AM 1 , RAM 2 , RAM 3, ... (Step 138). On the other hand, this step 134
And step 138, the gray value data is accumulated. That is, the RAM 34 (R
Histogram data D Mi and F read from AM i ).
The gray value data from IFO17 'is added and this is added to RA.
It will again stored in M i (step 136).
そして、円を一周するまでこの計算を一回転角εごとに
繰り返し(ステップ140)、一周したら原画像上の1
つの処理対象点についてのHough曲線が、上記によ
って記憶したβ0,β1,β2,β3,…の値とθ0,
θ1,θ2…の値(回転角ε)より求められるだけでな
く、濃淡値データによる重み付けの結果(DM0,DM1,
…DM(n-1))も求められる。以下、第8図に示す処理を
原画像上の全ての処理対象点について実行すると、濃淡
値データで重み付けがされた複数のHough曲線がρ
−θ座標系で求められることになり、これらは第17図
(b)のような交叉点を有することになる。Then, this calculation is repeated for each rotation angle ε until the circuit makes one round (step 140).
Hough curves for one processing target point are the values of β 0 , β 1 , β 2 , β 3 , ... Stored by the above and θ 0 ,
Not only is it obtained from the values of θ 1 , θ 2, ... (Rotation angle ε), but also the result of weighting (D M0 , D M1 ,
... D M (n-1) ) is also required. When the processing shown in FIG. 8 is executed for all the processing target points on the original image, a plurality of Hough curves weighted by the grayscale value data will be ρ.
It will be obtained in the −θ coordinate system, and these will have intersections as shown in FIG. 17 (b).
次に、第9図のフローチャートに示す動作を、第2図を
参照してより具体的に説明する。Next, the operation shown in the flowchart of FIG. 9 will be described more specifically with reference to FIG.
まず、第8図のステップ132におけるデータの入力
は、第2図のFIFO17′からタイミングコントロー
ラ25にレディ信号が入力され、次いでリードストロー
ブ信号がタイミングコントローラ25からFIFO1
7′に入力された後に、処理対象点Pの座標値(xp,
yp)に対応するアドレス信号α0,β0をFIFO1
7′からF/F31に入力し、かつ処理対象点Pの濃淡
値データDIをF/F32に入力することで行なわれ
る。ここで、このF/F31,32へのアドレスおよび
データ入力は、タイミングコントローラ25からのタイ
ミングパルスφaに同期してなされる。そして、このタ
イミングパルスφaの立ち上り又は立ち下りに同期し
て、F/F31のアドレス信号α0,β0は最初のDD
A0(37)に入力される。First, for the data input in step 132 of FIG. 8, a ready signal is input from the FIFO 17 'of FIG. 2 to the timing controller 25, and then a read strobe signal is input from the timing controller 25 to the FIFO1.
7 ', the coordinate value (x p ,
address signal α 0 corresponding to the y p), the β 0 FIFO1
This is performed by inputting from 7'to the F / F 31, and also inputting the grayscale value data D I of the processing target point P into the F / F 32. Here, the address and data are input to the F / Fs 31 and 32 in synchronization with the timing pulse φ a from the timing controller 25. Then, in synchronization with the rising or falling of the timing pulse φ a , the address signals α 0 and β 0 of the F / F 31 are the first DD.
It is input to A 0 (37).
このDDA0では、第8図のステップ134の処理がな
される。すなわち、前述の(7)式に従った漸化式の演
算が実行され、演算結果(アドレス信号α1,β1)は
次のDDA1(図示せず)に送られる。ここにおいて、
上記漸化式(7)において、基本的には三角関数の計算
や乗算などは含まれておらず、またメモリテーブル(R
OM)の参照なども不要であるので、演算を容易かつ迅
速に行なうことができる。そして、これらは円運動を行
なわせるにあたって、十分な精度を有する(誤差が少な
い)ものである。In this DDA 0 , the processing of step 134 in FIG. 8 is performed. That is, the calculation of the recurrence formula according to the above formula (7) is executed, and the calculation result (address signals α 1 , β 1 ) is sent to the next DDA 1 (not shown). put it here,
In the above recurrence formula (7), calculation of trigonometric functions and multiplication are basically not included, and the memory table (R
Since it is not necessary to refer to (OM), the operation can be performed easily and quickly. And, these have sufficient accuracy (small error) in performing the circular movement.
F/F31に格納されたアドレス信号β0はRAM
0(34)にも与えられ、これによってRAM0に格納
されているヒストグラムデータDM0が読み出される。す
なわち、RAM0にはβ0をアドレスとして、回転角θ
0(θ′=0)に対応する他の処理対象点に関するヒス
トグラムデータDM0があらかじめ(先行するADD0の
演算により)記憶されており、従ってアドレス信号β0
がF/F31からRAM0に与えられることで、タイミ
ングパルスφbに同期してRAM0からF/F33にヒ
ストグラムデータDM0が送られることになる。The address signal β 0 stored in the F / F 31 is a RAM
0 (34), and the histogram data D M0 stored in RAM 0 is read by this. That is, the rotation angle θ is stored in the RAM 0 with β 0 as an address.
Histogram data D M0 relating to another processing target point corresponding to 0 (θ ′ = 0) is stored in advance (by calculation of the preceding ADD 0 ), and therefore the address signal β 0
Is given to the RAM 0 from the F / F 31, the histogram data D M0 is sent from the RAM 0 to the F / F 33 in synchronization with the timing pulse φ b .
次に、タイミングコントローラ25からのタイミングパ
ルスφcに同期してF/F33からADD0(35)へ
ヒストグラムデータDM0が送られるが、このADD0に
はF/F32から演算対象となっている処理対象点(x
p,yp)の濃淡値データDIが与えられている。従っ
て、ADD0ではそれまでにRAM0に蓄積されていた
回転角θ0およアドレスβ0に対応するヒストグラムデ
ータDM0と、処理されている最中の処理対象点(xp,
yp)の回転角θ0およびアドレスβ0に対応する濃淡
値データDIが加算される(第8図のステップ13
6)。そして、この加算結果(DM0′=DM0+DI)は
バッファ36に一時的に保持された後、タイミングパル
スφdに同期してRAM0に送られ、第8図のステップ
138に従った記憶がθ0に対応するRAM0のアドレ
スβ0に対してなされることになる。Next, the histogram data D M0 is sent from the F / F 33 to the ADD 0 (35) in synchronization with the timing pulse φ c from the timing controller 25, and the ADD 0 is the calculation target from the F / F 32. Target point (x
p, gradation value data D I of y p) is given. Therefore, in ADD 0 , the histogram data D M0 corresponding to the rotation angle θ 0 and the address β 0 accumulated in the RAM 0 up to that point and the processing target point (x p ,
y p ) rotation angle θ 0 and grayscale value data D I corresponding to address β 0 are added (step 13 in FIG. 8).
6). Then, this addition result (D M0 ′ = D M0 + D I ) is temporarily held in the buffer 36, and then sent to the RAM 0 in synchronization with the timing pulse φ d , and according to step 138 in FIG. Storage will be done for address β 0 of RAM 0 corresponding to θ 0 .
上記の1サイクルの処理を、DDA演算回路18i(i
=1,2,…n−1)について説明すると第9図のよう
になる。The above-described 1-cycle processing is performed by the DDA operation circuit 18 i (i
= 1, 2, ... N-1) is shown in FIG.
まず、処理対象点の座標値(xp,yp)に対応するア
ドレス信号(初期値)α0,β0をα0,β0→α1,
β1→α2,β2→…αi,βiと順次に演算した結果
としてのアドレス信号αi,βiと、この処理対象点
(xp,yp)の濃淡値データDIが、それぞれF/F
31および32から入力されて保持され(ステップ20
2)、F/F31からアドレス信号αi,βiがDDA
iに送られた後に、ステップ204でアドレス信号
αi,βiにもとづく漸化式の演算が、DDAiにおい
て実行される。そして、結果としてのアドレス信号α
i+1,βi+1は、1サイクルの処理の終了後に同期して、
次のDDA演算回路18i+1中のDDAi+1の前に設けら
れたF/F31に送られる。First, the address signals (initial values) α 0 and β 0 corresponding to the coordinate values (x p , y p ) of the processing target point are changed to α 0 , β 0 → α 1 ,
β 1 → α 2, β 2 → ... α i, β i are sequentially addressed signal alpha i as a result of the calculation, and beta i, gradation value data D I of the target point (x p, y p) is , F / F respectively
Input from 31 and 32 and retained (step 20
2), the address signals α i and β i from the F / F 31 are DDA
After sent to i, the address signal alpha i in step 204, the operation of the recurrence formulas based on beta i, is executed in the DDA i. Then, the resulting address signal α
i + 1 and β i + 1 are synchronized after the end of the processing of one cycle,
The data is sent to the F / F 31 provided before the DDA i + 1 in the next DDA operation circuit 18 i + 1 .
一方、上記のアドレス信号βiによるヒストグラムデー
タDMiの読み出しがステップ206で実行される。この
ステップ206は、第2図においてアドレス信号βiを
F/F31からRAMiに与え、アドレスβiのヒスト
グラムデータDMiをF/F33に格納することでなされ
る。そして、ステップ208でヒストグラムデータDMi
の濃淡値データDIの加算がされる。このステップ20
8は、第2図のADDiで実行される。その後、ステッ
プ208で加算されたヒストグラムデータDMi′=DMi
+GIが、ステップ210においてRAMiのアドレス
β0に書き込みされる。On the other hand, the reading of the histogram data D Mi based on the address signal β i is executed in step 206. This step 206 is performed by applying the address signal β i from the F / F 31 to the RAM i in FIG. 2 and storing the histogram data D Mi of the address β i in the F / F 33. Then, in step 208, the histogram data D Mi
The grayscale value data D I of is added. This step 20
8 is executed by ADD i in FIG. After that, the histogram data added in step 208 D Mi ′ = D Mi
+ G I is written to the address β 0 of RAM i in step 210.
このヒストグラムデータの蓄積をより詳しく説明するた
めに、第10図を参照する。To explain this accumulation of histogram data in more detail, refer to FIG.
第10図は第2図のRAM34によるヒストグラムメモ
リの概念を示しており、図示の通り、n個のRAM0〜
RAMn-1の領域を有し、これらは漸化式演算の回転角
θ0〜θn-1にそれぞれ対応している。そして、各RA
M領域は+511〜0〜−512のアドレスβ(=ρ)
を有し、各アドレには16ビットのヒストグラムデータ
を格納できるようになっている。従って、DDAiで前
述の(7)式により回転角θi+1に対応するαi+1,β
i+1がアドレス信号αi,βiより計算されたときに
は、アドレス信号βiがRAMiに与えられてアドレス
βiのヒストグラムデータDM(i)が読み出される。そし
て、処理対象点の濃淡値データDIとの加算がなされて
再びヒストグラムデータ(DM(i),DI)がRAMiの
アドレスβiに書き込まれる。Figure 10 shows the concept of the histogram memory by the RAM34 of FIG. 2, as shown, n-number of RAM 0 ~
It has a region of RAM n−1 , and these regions respectively correspond to the rotation angles θ 0 to θ n−1 of the recurrence formula calculation. And each RA
The M area has an address β (= ρ) of +511 to 0-512
16-bit histogram data can be stored in each address. Therefore, in DDA i , α i + 1 and β corresponding to the rotation angle θ i + 1 are calculated by the above equation (7).
When i + 1 is calculated from the address signals α i and β i , the address signal β i is given to the RAM i and the histogram data D M (i) of the address β i is read. Then, the gray level data D I of the processing target point is added, and the histogram data (D M (i) , D I ) is again written to the address β i of the RAM i .
以上の通り、式(7)に示す漸化式の演算は、アドレス
信号αi,βiを次々と受け渡すことでパイプライン方
式によりなされる。そして、このαi,βiから
αi+1,βi+1への演算中にヒストグラムデータDMiの濃
淡値データDIによる蓄積(累積)がなされるので、1
サイクル全体の処理に要する時間を短くできる。As described above, the calculation of the recurrence formula shown in the formula (7) is performed by the pipeline method by successively passing the address signals α i and β i . Then, during the calculation from α i , β i to α i + 1 , β i + 1 , the histogram data D Mi is accumulated (accumulated) by the grayscale value data D I.
The time required to process the entire cycle can be shortened.
この1サイクルの処理は、DDA演算部18を構成する
DDA演算回路180〜18n-1で同時並行的になされ
る。すなわち、第11図(a)のようにFIFO17′
から “,空,,空,空,,,空” のデータが入力されたときは、1サイクル目では同図
(b)のようになり、2サイクル目では同図(c)のよ
うになり、3サイクル目では同図(d)のようになり、
以下同様の処理がなされて、8サイクル目には同図
(e)のようになる。ここで、同図(a)中の(α01,
β01)〜(α04,β04)は処理対象点P1〜P4の座標
値(xp1,yp1)〜(xp4,yp4)にそれぞれ対応する
アドレス信号であり、DI1〜DI4はその処理対象点P1
〜P4のそれぞれにおける濃淡値データである。また、
同図(b)〜(e)におけるθ0〜θn-1は処理対象点
からの回転角(θ0は処理対象点そのもの)であり、そ
れぞれ第2図のRAM0〜RAMn-1に対応する。This one-cycle processing is simultaneously performed in parallel by the DDA arithmetic circuits 18 0 to 18 n−1 that form the DDA arithmetic unit 18. That is, as shown in FIG. 11 (a), the FIFO 17 '
When data of ", empty ,, empty, empty ,, empty" is input from, it becomes as shown in the figure (b) in the first cycle and becomes as shown in the figure (c) in the second cycle. In the 3rd cycle, it becomes like (d) in the figure.
The same processing is performed thereafter, and the result becomes as shown in FIG. Here, (α 01 ,
β 01 ) to (α 04 , β 04 ) are address signals corresponding to the coordinate values (x p1 , y p1 ) to (x p4 , y p4 ) of the processing target points P 1 to P 4 , respectively, and D I1 to. D I4 is the processing target point P 1
It is gray value data in each of P 4 to P 4 . Also,
Θ 0 to θ n-1 in FIGS. 2B to 2E are rotation angles from the processing target point (θ 0 is the processing target point itself), and are respectively stored in RAM 0 to RAM n-1 in FIG. Correspond.
次に、Hough変換を終了した後の近傍フィルタリン
グについて説明する。Next, the neighborhood filtering after the Hough transform is completed will be described.
いま、Hough曲線の交点をρ−θ平面で表現したと
きに、第12図(a)のようになったとする。なお、同
図(a)はρ−θ平面の一単位ごとで現われる交叉点に
ついて、原画像における画素(処理対象点)の濃淡値デ
ータ(輝度の変化割合)による重みづけを行なったヒス
トグラムHを、説明をわかりやすくするために等高線で
表現したものであり、本発明によるヒストグラムとは必
ずしも一致するものではない。Now, suppose that the intersection of the Hough curve is represented by the ρ-θ plane as shown in FIG. 12 (a). Note that FIG. 10A shows a histogram H in which the intersection point appearing in each unit of the ρ-θ plane is weighted by the grayscale value data (brightness change ratio) of the pixel (processing target point) in the original image. The contours are represented by contour lines for the sake of clarity, and do not necessarily match the histogram according to the present invention.
ここで、同図(a)の点p1においてヒストグラムが高
く、その他の点p2,p3においてもヒストグラムが高
くなっているものとする。ここで、点p1の近傍に着目
すると、そこには点p4,p5などにもヒストグラムの
高い部分が生じていることがわかる。ところが画像処理
において特に重要なのは、互いに離れた点p1〜p3を
見出すことであって、例えば点p1は道路の路肩ライン
に、点p2はセンターラインに、そして点p3は前方の
カーブした道路の路肩ラインに対応している。これに対
して、最大ヒストグラム点p1の近傍の点p4,p5な
どは路肩ラインの部分的な曲りなどに対応していること
が多く、画像処理上は主として雑音成分にあたる。Here, it is assumed that the histogram is high at the point p1 in the same figure (a), and the histogram is also high at the other points p2 and p3. Here, focusing on the vicinity of the point p1, it can be seen that high points of the histogram also occur at the points p4, p5, and the like. However, what is particularly important in image processing is to find points p1 to p3 that are separated from each other. For example, point p1 is the shoulder line of the road, point p2 is the center line, and point p3 is the shoulder of the curved road ahead. Corresponds to the line. On the other hand, points p4, p5, etc. in the vicinity of the maximum histogram point p1 often correspond to partial bending of the road shoulder line, and mainly correspond to noise components in image processing.
そこで、このような雑音成分の影響は例えば8近傍フィ
ルタリングにより少なくされる。すなわち、第12図
(b)のような8近傍フィルタを用意し、F1〜F9の
エリアについてHough曲線の交叉点のヒストグラム
同士を比較する。そして、中心のエリアF5に対して、 F5>F1〜F4,F6〜F9 が成り立つときに、このエリアF5のデータを検出すべ
きデータとする。具体的には、例えばF1〜F9につい
て1個づつのρ−θ面での単位(要素エリア)画素を割
り当てたときに、交叉点のヒストグラム数が F1=6、F2=8、F3=4、 F4=2、F5=14、F6=10、 F7=7、F8=9、F9=8 となったときは、F5>F1〜F4、F6〜F9が成立
するので、F5の交叉点を検出すべきデータとする。こ
れに対し、 F1=8、F2=4、F3=3、 F4=14、F5=10、F6=7、 F7=9、F8=8、F9=2 となったときは、F5<F4であるので、F5のエリア
は検出すべきデータとしない。Therefore, the influence of such a noise component is reduced by, for example, 8-neighbor filtering. That is, an 8-neighboring filter as shown in FIG. 12B is prepared, and histograms at intersections of Hough curves are compared with each other for the areas F 1 to F 9 . Then, the area F 5 of the center, when the F 5> F 1 ~F 4, F 6 ~F 9 is satisfied, the data to be detected data in this area F 5. Specifically, for example, when one unit (element area) pixel on the ρ-θ plane is assigned to each of F 1 to F 9 , the number of histograms at intersections is F 1 = 6, F 2 = 8, When F 3 = 4, F 4 = 2, F 5 = 14, F 6 = 10, F 7 = 7, F 8 = 9, F 9 = 8, then F 5 > F 1 to F 4 , F Since 6 to F 9 are established, the intersection of F 5 is set as the data to be detected. On the other hand, F 1 = 8, F 2 = 4, F 3 = 3, F 4 = 14, F 5 = 10, F 6 = 7, F 7 = 9, F 8 = 8, and F 9 = 2. In this case, since F 5 <F 4 , the area of F 5 is not the data to be detected.
以上のフィルタリング処理を行なうことにより、第12
図(a)において点p4,p5の存在に影響されること
なく、第2および第3のヒストグラムの高い点p2、p
3を検出することができる。すなわち、もし上記のフィ
ルタリングを行なわなかったとすると、第1の高ヒスト
グラム点p1に次ぐ高ヒストグラム点は点p4,p5と
なり、第2および第3の高ヒストグラム点として求めた
い点p2,p3は、第4および第5の高ヒストグラム点
となってしまい、後の信号処理が著しく困難になってし
まう。By performing the above filtering process,
The high points p2 and p of the second and third histograms are not affected by the presence of the points p4 and p5 in FIG.
3 can be detected. That is, if the above filtering is not performed, the high histogram points next to the first high histogram point p1 are points p4 and p5, and the points p2 and p3 to be obtained as the second and third high histogram points are These are the 4th and 5th high histogram points, which makes subsequent signal processing extremely difficult.
次に、第3図でステップ118として示すソーティング
処理につき、第13図により詳細に説明する。Next, the sorting process shown as step 118 in FIG. 3 will be described in detail with reference to FIG.
第13図はそのフローチャートである。まず、ソーティ
ング処理のために、それぞれ複数(但し、説明を簡単に
するために4とする)の入力メモリ(転送メモリ)MI1
〜MI4と比較メモリ(結果メモリ)MM1〜MM4を用意
し、これを初期化する(ステップ152)。次に、入力
メモリMI1にデータを入力し(ステップ154)、この
入力データがステップ156で有りとされたときはステ
ップ158〜184を実行し、無しとされたときはステ
ップ190〜199を実行していく。ここで、ステップ
190,196,199の処理はそれぞれステップ15
8,160の処理と同一であり、ステップ192,19
8の処理はそれぞれステップ162〜168の処理と同
一であり、ステップ194の処理はステップ170〜1
76の処理と同一である。FIG. 13 is a flowchart thereof. First of all, for sorting processing, a plurality of input memories (4 for simplification of description) are input memories (transfer memories) M I1.
~ M I4 and comparison memories (result memories) M M1 to M M4 are prepared and initialized (step 152). Next, data is input to the input memory M I1 (step 154). If this input data is determined to be present in step 156, steps 158 to 184 are executed, and if not, steps 190 to 199 are executed. I will do it. Here, the processing of steps 190, 196, and 199 is performed in step 15
This is the same as the processing of steps 8 and 160, and steps 192 and 19
8 is the same as the processing of steps 162 to 168, and the processing of step 194 is steps 170 to 1
This is the same as the processing of 76.
ステップ158,162,170,178ではそれぞれ
対応する入力メモリMIと比較メモリMMの内容の大小
を比較し、MI≦MMのときには入力メモリMIの内容
を次に転送する(ステップ164,172,180)。
これに対しMI>MMのときには比較メモリMMの内容
を次の入力メモリMIに転送する(ステップ166,1
74,182)共に、入力メモリMIの内容を対応する
比較メモリMMに入れる(ステップ168,176,1
84)。すると、最終的にはメモリMM1〜MM4には、大
きい順に4個の入力データが保持されることになる。Each step 158,162,170,178 and compares the contents of the comparison memory M M and the corresponding input memory M I, when the M I ≦ M M then transfers the contents of the input memory M I (step 164 , 172, 180).
On the other hand, when M I > M M , the contents of the comparison memory M M are transferred to the next input memory M I (steps 166, 1).
74, 182) both put the contents of the input memory M I into the corresponding comparison memory M M (steps 168, 176, 1).
84). Then, finally, the memories M M1 to M M4 hold four pieces of input data in descending order.
これを具体的に示すと、第14図のようになる。まず、
入力メモリとして4個のメモリMI1〜MI4、比較メモリ
として4個のメモリMM1〜MM4を用意する。そして、入
力されるデータは第14図(a)のように“5,7,
2,8,4,9,3,1,6,8”の10個であるとす
る。すると、同図(b)のような初期化を行なった後の
操作により、比較メモリMM1〜MM4に格納されるデータ
は同図(c)に矢印で示すように変化し、最終的には 比較メモリMM1=9 〃 MM2=8 〃 MM3=8 〃 MM4=7 の内容が格納されることになる。なお、このソーティン
グ処理はソフトウェアにより実行してもよい。以上のよ
うな一連の処理を実行することにより、本発明に係る画
像処理装置による信号処理の全ステップが終了する。そ
して、原画像の処理対象点を結ぶ曲線の近似直線が、上
記のρ、θの値で求まることになる。This is specifically shown in FIG. First,
Four memories M I1 to M I4 are prepared as an input memory, and four memories M M1 to M M4 are prepared as a comparison memory. The input data is "5, 7," as shown in FIG.
2, 8, 4, 9, 3, 3, 1, 6, 8 ″. Then, the comparison memories M M1 to M M1 are processed by an operation after initialization as shown in FIG. The data stored in M4 changes as shown by the arrow in FIG. 7C, and finally the contents of the comparison memory M M1 = 9 〃 M M2 = 8 〃 M M3 = 8 〃 M M4 = 7 are stored. The sorting process may be executed by software, and by executing the series of processes described above, all steps of signal processing by the image processing apparatus according to the present invention are completed. Then, the approximate straight line of the curve connecting the processing target points of the original image is obtained by the above values of ρ and θ.
本発明は上記の実施例に限定されるものではなく、各種
の変形が可能である。The present invention is not limited to the above embodiments, but various modifications can be made.
例えば、第5図のステップ124に示すウィンドウの設
定は、複数のウィンドウについて行なうようにし、更に
ウィンドウが重なるときにはいずれか一方を優先的に処
理するようにしてもよい。また、ウィンドウの設定自体
は必ずしも必要ではなく、原画像の全体を対象としてH
ough変換を実行してもよい。但し、この場合には、
第4図(a)で点線Qにて示す原画像の周辺領域は雑音
成分を多く含むので、精度のよい画像処理を行なうとき
には、あらかじめこの部分を取り除いておかなければな
らない。For example, the setting of the window shown in step 124 in FIG. 5 may be performed for a plurality of windows, and when the windows overlap, one of them may be preferentially processed. In addition, the window setting itself is not always necessary.
The out conversion may be performed. However, in this case,
Since the peripheral area of the original image indicated by the dotted line Q in FIG. 4 (a) contains many noise components, this portion must be removed in advance when performing accurate image processing.
Hough曲線の交叉点のヒストグラムを求めるに際し
ては、輝度の変化割合(微分されたエッジ化データの
値)に関する濃淡値データの代りに2値化データを重畳
することで、交叉点の集中のみをヒストグラムとして把
えることができる。さらに、微分によってエッジ化デー
タとせずに、輝度に対応するデータをそのまま濃淡値デ
ータとしてディジタル処理し、その後にHough曲線
の交叉点のヒストグラムを求めるようにしてもよい。When obtaining the histogram of the intersections of the Hough curve, by superimposing the binarized data instead of the grayscale value data on the change rate of the luminance (the value of the differentiated edging data), only the concentration of the intersections is histogrammed. Can be understood as Further, the data corresponding to the brightness may be digitally processed as the grayscale value data as it is, instead of being edged data by differentiation, and then the histogram of the intersection points of the Hough curve may be obtained.
回転運動漸化式の演算は、必ずしも近似円の全周(1
周)について行なうことは必須ではなく、1/2周、1
/4周あるいは1/8周などとしてもよい。例えば1/
4周の演算を0≦θ<π/2およびπ≦θ<3π/2に
ついて実行するだけのDDAを直列に配置して計算を実
行すれば、他の円周(π/2≦θ<π,3π/2≦θ<
2π)上の値はこれらから直ちに求めることができる。
また、回転角は常に同一とすることは必ずしも必要では
なく、一部において異ならせることも不可能ではない。
また、直線の性質から1/2周(0゜〜180゜)をH
ough変換の対象としてもよい。The calculation of the rotational motion recurrence formula is not always performed on the entire circumference (1
Lap) is not essential, 1/2 lap, 1
It may be / 4 round or 1/8 round. For example, 1 /
If the calculation is performed by arranging the DDAs in series, which only executes the operation of four rounds for 0 ≦ θ <π / 2 and π ≦ θ <3π / 2, the other circles (π / 2 ≦ θ <π , 3π / 2 ≦ θ <
The value on 2π) can be immediately obtained from these.
Further, it is not always necessary that the rotation angles are the same, and it is not impossible to make them partially different.
Also, due to the nature of the straight line, 1/2 turn (0 ° to 180 °)
It may be a target of the out conversion.
以上、詳細に明した通り本発明によれば、同一構成のD
DA演算回路を単に直列接続するだけで簡単に演算部を
形成でき、演算に際してメモリテーブルなどを参照する
ことが不要であるので、構成が著しく簡単かつ小型にな
る。また、パイプライン方式で回転運転動漸化式を実行
するように演算回路を構成することで、計算を高速化す
ることが可能になるだけでなく、回転運動漸化式を演算
するための初期値演算も不要になる効果がある。As described above in detail, according to the present invention, the D
The arithmetic unit can be easily formed by simply connecting the DA arithmetic circuits in series, and it is not necessary to refer to the memory table or the like in the arithmetic operation, so that the configuration is remarkably simple and compact. Further, by configuring the arithmetic circuit so as to execute the rotational driving recurrence formula by the pipeline method, not only the calculation speed can be increased, but also the initial stage for calculating the rotational motion recurrence formula can be achieved. This has the effect of eliminating the need for value calculation.
第1図は本発明の一実施例に係る画像処理装置の全体構
成を示すブロック図、第2図は第1図の要部の構成を示
すブロック図、第3図はその作用を全体的に示すフロー
チャート、第4図は原画像の一例と入力された画素信号
のエッジ検出を説明する図、第5図はエッジ化データの
前処理を説明するフローチャート、第6図はルックアッ
プテーブルを説明する図、第7図は本発明の実施例にお
けるHough変換を説明する図、第8図は実施例にお
ける回転運動の漸化式の演算を示すフローチャート、第
9図は1サイクルの処理を説明する図、第10図はヒス
トグラムメモリの概念図、第11図は実施例におけるパ
イプライン処理を説明する図、第12図は8近傍フィル
タリング処理を説明する図、第13図はソーティング処
理を説明するフローチャート、第14図はソーティング
処理を具体的に説明する図、第15図は道路の認識を説
明する図、第16図ないし第18図は従来のHough
変換を説明する図である。 1……カメラ画像、2……水平線、3……道路、4……
路肩ライン、5……センターライン、11……カメラ、
12……信号入力部、13……エッジ検出部、14……
多値化メモリ、15……D/A変換部、16……CRT
ディスプレイ、17……前処理部、17′……FIF
O、18……DDA演算部とヒストグラムメモリ、18
0〜18n-1……DDA演算回路とヒストグラムメモ
リ、19……近傍フィルタ、20……ソーティング部、
21,23……VMEバス、22……CPU、31,3
2,33……フリップフロップ(F/F)、34……R
AM0〜RAMn-1(ヒストグラムメモリ)、35……
ADD0〜ADDn-1(加算器)、36……バッファ、
37……DDA0〜DDAn-1(DDA演算回路)。FIG. 1 is a block diagram showing the overall configuration of an image processing apparatus according to an embodiment of the present invention, FIG. 2 is a block diagram showing the configuration of the main parts of FIG. 1, and FIG. FIG. 4 is a flowchart illustrating an example of an original image and edge detection of an input pixel signal, FIG. 5 is a flowchart illustrating preprocessing of edged data, and FIG. 6 is a lookup table. FIG. 7 is a diagram for explaining Hough transformation in the embodiment of the present invention, FIG. 8 is a flow chart showing calculation of recurrence formula of rotary motion in the embodiment, and FIG. 9 is a diagram for explaining processing of one cycle. FIG. 10 is a conceptual diagram of a histogram memory, FIG. 11 is a diagram illustrating pipeline processing in the embodiment, FIG. 12 is a diagram illustrating 8-neighbor filtering processing, and FIG. 13 is a flowchart illustrating sorting processing. Charts, Fig. 14 specifically explaining to FIG sorting process, FIG. FIG. 15 illustrating the recognition of the road, Figure 16 through Figure 18 the conventional Hough
It is a figure explaining a conversion. 1 ... Camera image, 2 ... Horizontal line, 3 ... Road, 4 ...
Shoulder line, 5 …… Center line, 11 …… Camera,
12 ... signal input section, 13 ... edge detection section, 14 ...
Multi-valued memory, 15 ... D / A converter, 16 ... CRT
Display, 17 ... Preprocessing unit, 17 '... FIF
O, 18 ... DDA calculation unit and histogram memory, 18
0 ~18 n-1 ...... DDA computing circuit and the histogram memory, 19 ...... vicinity filter, 20 ...... sorting unit,
21,23 ... VME bus, 22 ... CPU, 31,3
2, 33 ... Flip-flop (F / F), 34 ... R
AM 0 to RAM n-1 (histogram memory), 35 ...
ADD 0 to ADD n-1 (adder), 36 ... Buffer,
37 ... DDA 0 to DDA n-1 (DDA arithmetic circuit).
Claims (9)
複数の処理対象点から撮像対象の各エッジを示す当該原
画像の特徴点を分別、抽出する画像処理装置において、 前記処理対象点に対してHough変換を実行すること
により、該処理対象点を通る直線群を示す正弦曲線とし
て表されたHough曲線を、該各処理対象点のそれぞ
れについて求める手段であって、 同一構成のDDA演算要素を複数直列接続して構成さ
れ、 該各DDA演算要素は、1つの処理対象点について前記
Hough曲線上の所定角度ごとの各点のアドレス情報
をそれぞれ演算するDDA演算手段と、 前記各DDA演算要素ごとに設けられ、該DDA演算要
素により得られたアドレス情報ごとに、該アドレス情報
に対応した前記点で交叉するHough曲線を持つ各処
理対象点の頻度情報を記憶する記憶手段と、 この記憶手段の頻度情報に相当する各Hough曲線の
交点情報にもとづき、前記撮像対象の各エッジを画像上
で近似する直線の構成要素である前記原画像上の特徴点
を、前記処理対象点のうちから抽出する手段と を備えることを特徴とする画像処理装置。1. An image processing apparatus for classifying and extracting a characteristic point of an original image, which indicates each edge of an imaging target, from a plurality of processing target points on the original image captured by an imaging means, wherein Is a means for obtaining a Hough curve represented as a sine curve showing a group of straight lines passing through the processing target points for each of the processing target points by executing the Hough transformation by the DDA calculation element having the same configuration. A plurality of DDA operation elements are connected in series, and each DDA operation element is a DDA operation unit that calculates address information of each point for each predetermined angle on the Hough curve for one processing target point, and each DDA operation element. And a Hough curve intersecting at the point corresponding to the address information, for each address information obtained by the DDA operation element. It is a component of a straight line that approximates each edge of the imaging target on the image based on the storage means for storing the frequency information of each processing target point and the intersection information of each Hough curve corresponding to the frequency information of this storage means. An image processing apparatus, comprising: means for extracting a feature point on the original image from the processing target points.
複数の処理対象点を結ぶ曲線であって、撮像対象の各エ
ッジを該画像上で近似する直線を導出する画像処理装置
において、前記処理対象点に対してHough変換を実
行することにより、該処理対象点を通る直線群を示す正
弦曲線として表されたHough曲線と等価な近似円で
あって、α−β直交座標系で描かれる該近似円の円周上
の一点の座標を(αi,βi)とし、前記円周上の次の
点の座標(αi+1,βi+1)までの回転角をεとしたとき
(但し、iは正の整数)に、 前記各処理対象点ごとに αi+1=fα(αi,βi,ε) βi+1=fβ(αi,βi,ε) となる回転運動漸化式を所定回転角ごとに順次にパイプ
ライン方式で演算するDDA演算手段と、 このDDA演算手段により順次に演算されたそれぞれの
結果のうち、少なくとも前記βiの値をアドレスとし
て、得られた座標で交叉するHough曲線を持つ各処
理対象点の頻度情報を記憶する記憶手段と、 この記憶手段の頻度情報に相当する各Hough曲線の
交点情報にもとづき、前記撮像対象の各エッジを画像上
で近似する直線を導出する近似直線導出手段と を備えることを特徴とする画像処理装置。2. An image processing apparatus for deriving a straight line which connects a plurality of processing target points on an original image captured by an image capturing means and which approximates each edge of the image capturing target on the image. By executing the Hough transform on the target point, an approximate circle equivalent to a Hough curve represented as a sine curve indicating a group of straight lines passing through the target point, which is drawn in the α-β orthogonal coordinate system. When the coordinates of one point on the circumference of the approximate circle are (α i , β i ) and the rotation angle to the coordinates (α i + 1 , β i + 1 ) of the next point on the circumference is ε (Where i is a positive integer), α i + 1 = f α (α i , β i , ε) β i + 1 = f β (α i , β i , ε) for each processing target point And a DDA calculating means for sequentially calculating a rotational motion recurrence formula for each predetermined rotation angle by a pipeline method. Of each result more are sequentially computed, as an address the value of at least the beta i, a storage means for storing frequency information of each target point having a Hough curve intersects with the resulting coordinates, the storage means And an approximate straight line deriving means for deriving a straight line that approximates each edge of the imaging target on the image based on the intersection information of the Hough curves corresponding to the frequency information.
式を前記1回転角ごとにそれぞれ演算する複数の演算回
路を直列接続して構成されていることを特徴とする請求
項2記載の画像処理装置。3. The DDA calculating means is configured by connecting in series a plurality of arithmetic circuits that respectively calculate the rotational motion recurrence formula for each one rotation angle. Image processing device.
2-mとしたときに、 αi+1=αi(1−2-2m-1)−2-mβi βi+1=2-mαi+βi(1−2-2m-1) であることを特徴とする請求項2記載の画像処理装置。4. The rotational motion recurrence formula defines the rotational angle as ε =
When 2- m , α i + 1 = α i (1-2 -2m-1 ) -2 -m β i β i + 1 = 2- m α i + β i (1-2 -2m-1) The image processing device according to claim 2, wherein
を前記回転角に対応させて記憶することを特徴とする請
求項2記載の画像処理装置。5. The image processing apparatus according to claim 2, wherein the storage means stores at least the value of β i in association with the rotation angle.
処理対象点の輝度もしくはその変化割合に対応した濃淡
値データを記憶することを特徴とする請求項2記載の画
像処理装置。6. The image processing apparatus according to claim 2, wherein the storage means stores gray value data corresponding to the luminance of the processing target point in the original image or its change rate.
処理対象点の濃淡値データを、前記回転角に対応させて
記憶することを特徴とする請求項5記載の画像処理装
置。7. The image processing apparatus according to claim 5, wherein the storage means stores the grayscale value data of the processing target point in the original image in association with the rotation angle.
曲線の交点に関するデータに近傍フィルタリング処理を
する近傍フィルタを有することを特徴とする請求項2記
載の画像処理装置。8. The approximate straight line deriving means is the Hough.
The image processing apparatus according to claim 2, further comprising a neighborhood filter that performs neighborhood filtering processing on the data regarding the intersection of the curves.
曲線の交点に関するデータに前記濃淡値データを重畳
し、近傍フィルタリング処理をする近傍フィルタを有す
ることを特徴とする請求項6記載の画像処理装置。9. The approximate straight line deriving means is the Hough.
7. The image processing apparatus according to claim 6, further comprising a neighborhood filter that superimposes the grayscale value data on the intersection point of the curve and performs neighborhood filtering processing.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63112241A JPH0624029B2 (en) | 1988-05-09 | 1988-05-09 | Image processing device |
DE68923324T DE68923324T2 (en) | 1988-05-09 | 1989-05-09 | Image processing device. |
EP89304686A EP0341985B1 (en) | 1988-05-09 | 1989-05-09 | Picture processing device |
US08/125,350 US5379353A (en) | 1988-05-09 | 1993-09-22 | Apparatus and method for controlling a moving vehicle utilizing a digital differential analysis circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63112241A JPH0624029B2 (en) | 1988-05-09 | 1988-05-09 | Image processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01281579A JPH01281579A (en) | 1989-11-13 |
JPH0624029B2 true JPH0624029B2 (en) | 1994-03-30 |
Family
ID=14581777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63112241A Expired - Fee Related JPH0624029B2 (en) | 1988-05-09 | 1988-05-09 | Image processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0624029B2 (en) |
-
1988
- 1988-05-09 JP JP63112241A patent/JPH0624029B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH01281579A (en) | 1989-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5379353A (en) | Apparatus and method for controlling a moving vehicle utilizing a digital differential analysis circuit | |
JPH10214346A (en) | Hand gesture recognizing system and its method | |
JPH10214346A6 (en) | Hand gesture recognition system and method | |
CN111507908B (en) | Image correction processing method, device, storage medium and computer equipment | |
JPH03174684A (en) | Number plate recognizing device | |
Wasala et al. | Real-time HOG+ SVM based object detection using SoC FPGA for a UHD video stream | |
JPH0624029B2 (en) | Image processing device | |
CN117885089A (en) | Grabbing method, grabbing device, electronic equipment and storage medium | |
CN115115605B (en) | Method and system for realizing circle detection based on Hough transformation of ZYNQ | |
CN113628273B (en) | Map positioning method, map positioning device, computer readable storage medium and terminal equipment | |
JPH0644291B2 (en) | Image processing device | |
JP2935847B2 (en) | Image processing device | |
Lougheed et al. | 3-D imaging systems and high-speed processing for robot control | |
JPH0642261B2 (en) | Image processing method | |
Yang et al. | A general line tracking algorithm based on computer vision | |
Wang et al. | Improved Object Detection in Forward-Looking Sonar Images with Attention-YOLOv8 and Denoising Algorithms | |
Dallaire et al. | Mixed-signal VLSI architecture for real-time computer vision | |
JPH08272971A (en) | Object recognizing method | |
JP2578116B2 (en) | Straight line detection method | |
RU69284U1 (en) | DEVICE FOR DETERMINING THE LENGTH AND WIDTH OF THE OBJECT | |
Chakravathi et al. | FPGA based architecture for realtime edge detection | |
JPH0232481A (en) | Peak data extractor | |
JP2859453B2 (en) | Image thinning method | |
Herregods et al. | The determination of object type and position using high speed vision | |
Wang | A Study on Edge Tracing for Vehicle Algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |