ABSTRACT: The main objective of my project is to find the edges of the grayscale image effectively with less computational complexity and also to reduce the thickness of the image edges. Edge of the image is one of the most fundamental and significant features. The classical studying of computer vision and image processing field is edge detection. Edge detection is basic tool used in many image processing applications for extracting information from image. Prewitt edge detection is gradient based edge detection method used to find edge pixels in image. We propose a design of a Prewitt edge detection algorithm to find edge pixels in gray scale image. The edges of the image is found and the computation complexity is calculated. The advantage of implementation of edge detection algorithms on a field programmable gate array (FPGA) is using large memory and embedded multipliers. Processing real time algorithms on application-specific hardware with higher performance than programmable digital signal processors is provided by FPGA. Xilinx ISE Design Suite-14 software platforms is used to design a algorithm using VHDL language.
Keywords: Edge Detection, Edges, Prewitt Edge Detection Algorithm, FPGA
FPGA contains an array of programmable logic element; these elements can be programmed for DSP functions. FPGAs have large number of internal memory banks which can be accessed in parallel that allowed FPGA hardware to execute functions in a few clock cycles whereas sequential operational processor required hundreds to thousands of clock cycles. FPGAs operate on low operational frequency. Use of FPGAs in image processing systems enables rapid prototyping, minimizes the time to market cost.
Sobel edge detection is first order derivative based method because it is computed using digital gradient of image. Sobel and Prewitt operator are used extensively for edge detection in the image processing. In gray scale image each pixel is represented by 8 bit; hence, gray level values vary from 0 to 255. An edge-detection filter can also be used to improve the appearance of blurred or anti-aliased video streams. In this work, we focus on reducing the computational complexity of the image and also the thickness of the image edges, This work also concentrates in reducing the thickness of the image edges as well. Thus the Proposed method with reduced area can be realized in FPGA and also employed in various ASIC applications.
II. SOBEL EDGE DETECTION TECHNIQUE
Sobel architecture is that when an input is given, the row and column values are counted in the register and then the convolution and addition operations are performed and the resulting value is compared with the threshold value and the output of the image’s pixel is obtained.
Figure 1: Sobel Architecture
The operator consists of a pair of 3×3 convolution kernels. One kernel is simply the other rotated by 90°.
The edges running vertically and horizontally relative to the pixel grid, for each of the two perpendicular orientations one kernel is used. The kernels can be applied separately to the input image, to produce separate measurements of the gradient component in each orientation (call these Gx and Gy). These can then be combined together to find the absolute magnitude of the gradient at each point and the orientation of that gradient. The gradient magnitude is given by:
Typically, an approximate magnitude is computed using:
which is much faster to compute.
The angle of orientation of the edge is given by:
III. PREWITT EDGE DETECTION TECHNIQUE
Prewitt edge detection is considered in this work. The Prewitt operator gives values that are symmetric around the center (x,y).The Prewitt Edge filter is use to detect edges based applying a horizontal and vertical filter in sequence. Field Programmable Gate Array (FPGA) technology becomes an alternative for the implementation of software algorithms.
This project presents FPGA based architecture for Prewitt operator using spartan-6 board to find the edges for grayscale images.The processing speed of the prewitt operator is higher than the other operator.Both filters are applied to the image and summed to form the final result.
The basic convolution filters of the form:
BLOCK DIAGRAM OF THE PROPOSED WORK:
Figure 2: Block diagram with input image
PREWITT OPERATOR METHOD:
For example, if a 3×3 window is used as such
P1 P2 P3
P4 P5 P6
P7 P8 P9
where the filter is centered on p5 with p4 being pixel[x-1][y] and p6 being pixel[x+1][y], etc. then the forumla to calculate the resulting new p5 pixel is
pixel = (p1+p2+p3-p7-p8-p9)+(p3+p6+p9-p1-p4-p7)
IV. SIMULATION AND WAVEFORM
Figure 3: Simulation waveform of prewitt operator
In the simulation when clock is given manually, the horizontal synchronization and vertical synchronization are generated automatically with the red,green,blue (RGB) output for 8bit values.
Figure 4: Simulation of Prewitt Operator with Hexadecimal value
From the simulation when clock is given manually, the horizontal synchronization and vertical synchronization are generated automatically with the red,green,blue (RGB) in which hexadecimal values are shown clearly and also the hcount and vcount values which are automatically generated.
ORIGINAL INPUT IMAGE SOBEL EDGE DETECTED
PREWITT EDGE DETECTED IMAGE
COMPARISON TABLE FOR SOBEL AND PREWITT OPERATOR :
PARAMETERS EXISTING WORK PROPOSED WORK
DEVICE USED SPARTAN-6
NO OF OCCUPIED SLICES USED : 491
AVAILABLE : 3758 USED : 1172
NO OF SLICE REGISTER USED : 451
AVAILABLE : 30064 USED : 102
AVAILABLE : 11440
NUMBER USED AS MEMORY USED : 1210
AVAILABLE : 3664 USED : 0
AVAILABLE : 1440
Table 1: Comparison Table for Sobel and Prewitt Operator
From the above table, the number of register used is reduced in proposed work than using Sobel operator for edge detection. Here the register itself acts as memory and therefore a separate memory is not required. Hence the memory used also reduced and the area is minimized by using Prewitt algorithm. As the mask value used is very small, the computation complexity is also reduced. Thereby, reducing the thickness of the image edges.
The proposed work presents the edge detection technique to detect the edges of the image with less thickness. The proposed method is to reduce the computation complexity and the time taken for the operation to complete as the calculation of mask value is less in prewitt operator. Edge of image is one of the most fundamental and significant features. With this proposed work the edges of the gray scale images are detected correctly and also with less computation complexity. This in future can be implemented in real-time and can be realized in ASIC.
...(download the rest of the essay above)