English
Language : 

IA64250 Datasheet, PDF (11/21 Pages) InnovASIC, Inc – Histogram/Hough Transform Processor
IA64250
Histogram/Hough Transform Processor
Data Sheet
As of Production Ver. 01
Hough Transform Computation:
During Hough Transform computation, the ACC RAM stores the projection image, and the LUT
RAM is loaded with the function listed in the Modified Hough Transform Parameterization Table.
Case
1a
1b
1c
1d
Φ
0 ≤ Φ < 45
45 ≤ Φ < 90
90 ≤ Φ < 135
135 ≤ Φ < 180
r(X,Y,Φ)
X tanΦ + Y
Y cotΦ + X
(YMAX - Y) cot (180 - Φ) + X
(XMAX - X) tan (180 - Φ) + Y
LUT[i]
itanΦ
icotΦ
(YMAX - I) cot (180 - Φ)
(XMAX - I) tan (180 - Φ)
CX,RX
Controls
X
Y
Y
X
CY,RY
Controls
Y
X
X
Y
During initialization, the LUT is loaded with the appropriate transfer function to compute
either f(x) or f(y). Once the LUT is loaded, the X and Y counters are used to generate the
proper memory addresses. The X counter is incremented at each valid pixel and reset at the
beginning of each line. The Y counter is incremented at the beginning of each line and reset
at the beginning of each frame. The control signals for these two counters are generated in
the controller block. As each pixel location along a line is addressed, the grey value at that
point is added to the partial sum in the memory location.
Intensity Averaging:
Another computational mode is possible by generating ACC RAM addresses differently. An
example of this is to compute the average intensity of an image as a function of position.
Consider a 512 X 512 pixel image divided into 256 blocks (16 X 16) of 32 X 32 pixels each.
To compute the average intensity, the Y counter would be incremented every 32 pixels and
reset at the beginning of each line. The X counter would be incremented every 32 lines and
reset at the beginning of a frame. The proper addresses will be generated by multiplying the
X counter output by 16 (this is done via the LUT). After processing, the first 256 locations
of the ACC RAM will hold the accumulated intensity in each 32 X 32 region. Setting sel(3:0)
= 10 will give the average intensity in each region.
Pixel Location:
Pixel location is used to determine the X and Y coordinates of up to 64 specific pixels or
group of pixels in an image. When performing pixel location, the user first loads one of the
LUTs with a table indicating which pixels are of interest. Each pixel in the table is assigned a
6 bit flag that allows the user to distinguish groups of pixels.
Each time an interesting pixel (as specified in the LUT) is found, the X, Y, and flag values
are stored in the ACC RAM at the address given by the FP counter. The FP counter is then
incremented. Note that only 512 values can be stored at any instance. In the event that
more values are stored, the first RAM locations will be overwritten.
Pixel location uses the LUT and the X and Y counters to store a six-bit code and location
information about pixels of interest. The X and Y counters hold the coordinates of the grey
value on the DI pins and are controlled in the same manner described in the Hough
transform section. DI addresses the LUT producing a one-bit tag and a six bit flag
associated with the grey value. If the tag bit is high and DV is high the six bit flag and X, Y
Copyright © 2000
innovASIC

The End of Obsolescence™
ENG211001219-01
Page 11 of 21
www.innovasic.com
Customer Support:
1-888 -824-4184