You are on page 1of 4

International Journal of Advanced Research in Computer Science and Software Engineering

Research Paper Available online at: www.ijarcsse.com

Volume 2, Issue 6, June 2012

ISSN: 2277 128X

Edge Detection of Digital Images Using Fuzzy Rule Based Technique


Bijuphukan Bhagabati
System Analyst, AMTRON, India

Chumi Das
Programmer, AMTRON, India

Abstract: Edge detection is an essential feature of digital image processing. It is an approach used most frequently in image segmentation based on abrupt changes in intensity. Edge pixels are pixels at which the intensity of an image function changes abruptly, and edges are sets of connected edge pixels. In this paper we propose a very simple but novel method for edge detection without determining threshold value. Fuzzy logic is a widely used tool in image processing since it gives very efficient result. We develop a fuzzy inference system in MATLAB in order to get a simple fuzzy rules based edge detection technique. The technique uses the smallest possible 2*2 mask that slides over the whole image pixel by pixel. This fuzzy inference system highlights edge pixels using fuzzy rules. It has 4 inputs corresponding to 4 pixels of instantaneous scanning matrix and has one output identifying the pixel under consideration whether it is edge pixel. The rule base includes only ten fuzzy rules to classify the pixels. The results obtained by this method are compared with those of the existing standard algorithms and comparatively found better results. Keywords: Edge detection, Image Segmentation, Image Processing, Computer Vision, Fuzzy rule I. INTRODUCTION Today Computer Vision has an important role in our life and has many different application areas [1], [2]. Vision is the process of discovering what is present in the world and where it is by looking. Computer Vision is the study of analysis of pictures and videos in order to achieve results similar to those as by human. Computer vision is concerned with modeling and replicating human vision. It includes methods for acquiring, processing, analysing, and understanding images and, in general, high-dimensional data from the real world in order to produce numerical or symbolic information [8]. In computer vision, Object Recognition is a task of finding a given object in an image or video sequence. It is a challenging task in computer vision systems. Humans recognize a multitude of objects in images with little effort, despite the fact that the image of the objects may vary somewhat in different viewpoints, in many different sizes / scale or even when they are translated or rotated. In order to recognize objects, in computer vision, a digital image is divided into multiple segments (sets of pixels). Image segmentation is generally used to locate objects and boundaries in images. Precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain visual characteristics. Segmentation simplifies and/or changes the representation of an image into something that is more meaningful and easier to analyze. Segmentation subdivides an image into its constituent regions or objects. Considerable care needs to be taken to improve the probability of accurate segmentation as it eventually

determines the success or failure of the computerized analysis procedures. Several image segmentation techniques have been defined so far [3], [4]. Edge detection is one of the image segmentation techniques. It itself is a key research work in image processing, image analysis, image pattern recognition, and computer vision techniques. In recent years the application of edge detection is widely used in different areas. It is also widely used in the area of biomedical image segmentation [4]. Edge detection is a segmentation method based on detecting sharp, local changes in intensity. Edge is one of the most essential features of an image. Edge pixels are pixels at which the intensity of an image function changes abruptly and edges are sets of connected edge pixels. According to [8] three edge profiles exist -step, ramp and roof edge. Many different edge detection methods are there [5]. In this paper we have proposed a fuzzy rule based softcomputing approach for edge detection. Er Kiranpreet Kaur, Er Vikram Mutenja and Er Inderjeet Singh Gill have proposed a Fuzzy Inference System (FIS) for edge detection [1]. However, they have used threshold value and 16 nos. of fuzzy rules. To trace the edges and for further refinement, the resultant image from FIS is subjected to first and second derivatives. Shashank Mathur and Anil Ahlawat have applied fuzzy logic for edge detection [6]. They have used a 3X3 window masking and their method was not rule based. Yasar Becerikli and Tayfun M. Karan have also proposed a fuzzy approach for edge detection using a 3X3 mask [7].

2012, IJARCSSE All Rights Reserved

Page | 259

Volume 2, Issue 6, June 2012 In this paper a method for detecting edges of digital images using fuzzy logic is developed. Fuzzy logic is a widely used tool in image processing since it gives very efficient result. In the present work a Fuzzy Inference System (FIS) is designed in MATLAB. A fuzzy rule based technique is developed for detection of edges without using a threshold value. A 2x2 window of pixels, the smallest possible window, is used as a scanning mask. The mask slides over the whole image pixel by pixel and highlights the edge pixels. The fuzzy rule base comprising of only 10 rules are capable of detecting the edges in an image. The rule base indentifies the pixels belonging to Edge set. The results obtained by applying this method are compared with that of the Sobel algorithm, the standard edge detection method. The results are found to be very significant, precise and accurate. II. FUZZY INFERENCE SYSTEM The new fuzzy rule based edge detection system is developed by designing a Fuzzy Inference System (FIS) of Mamdani type using MATLAB toolbox. The algorithm detects edges of an input image by using a window mask of 2x2 size that slides over the whole image horizontally pixel by pixel. The FIS is implemented by considering four inputs which correspond to four pixels P1, P2, P3 and P4 of the 2*2 mask in Figure-1 and one output variable. P1 x(i-1,j-1) P3 x(i,j-1) P2 x(i-1,j) P4 x(i,j)

www.ijarcsse.com

Figure 2: Fuzzy input membership functions

Figure 3: Fuzzy output membership function FIS Input Image Image fuzzification me Evaluation of rules using fuzzy logic Image Defuzzification Output Image

Figure 1: 2*2 mask

In the first phase of the FIS, the fuzzification of input is performed by defining two trapezoidal membership functions called Black and White as shown in Figure-2. On evaluation of these two functions, all the image pixels (crisp set) are classified into Black or White fuzzy sets. Once the pixels are fuzzified, in the second phase of the FIS, a rule base is evaluated to get the output. A triangular membership function for the output is defined called as Edge as shown in Figure-3. In the rule base of the FIS, 10 numbers of rules have been defined to apply implication on the inputs. The inference rules depend on the weights of 3 neighbors i.e. P1, P2 and P3 and P4 itself, if the weights are degree of Black or degree of White. These weights are combined using AND operator as defined in the rule base. The output of applying implication is again fuzzy. These fuzzy output of all rules are combined into a single fuzzy set by aggregating them with the OR (max) operation. In the final phase of the FIS, the output fuzzy set Edge is defuzzified to get a crisp set and the desired final output. Here the defuzzification operation is performed by calculating the centroid. In order to resolve a single crisp value from the aggregated fuzzy output set we calculate the center of the area under the curve. The block diagram of the FIS designed here is depicted in the Figure 4.

Figure 4: Basic Block diagram

The rule base used in the FIS comprises the following 10 fuzzy rules for considering the weights of the 3 neighbors P1, P2 and P3 with P4. 1. If P1 is Black and P2 is Black and P3 is Black and P4 is White then P4 is Edge 2. If P1 is Black and P2 is Black and P3 is White and P4 is White then P4 is Edge 3. If P1 is Black and P2 is White and P3 is Black and P4 is White then P4 is Edge 4. If P1 is White and P2 is Black and P3 is Black and P4 is White then P4 is Edge 5. If P1 is White and P2 is White and P3 is White and P4 is Black then P4 is Edge 6. If P1 is White and P2 is White and P3 is Black and P4 is Black then P4 is Edge 7. If P1 is Black and P2 is White and P3 is White and P4 is Black then P4 is Edge

2012, IJARCSSE All Rights Reserved

Page | 260

Volume 2, Issue 6, June 2012 8. If P1 is White and P2 is Black and P3 is White and P4 is Black then P4 is Edge 9. If P1 is Black and P2 is Black and P3 is White and P4 is Black then P4 is Edge 10. If P1 is Black and P2 is White and P3 is Black and P4 is Black then P4 is Edge III. ALGORITHM 1) Read the M x N input gray image say X 2) Set the initial 2x2 mask as P1= X(1,1), P2=X(1,2), P3=X(2,1) and P4=X(2,2) 3) Map the input pixels to fuzzy set using membership functions White and Black 4) The firing strength of rule is calculated using AND operator (i.e. MIN) 5) Determine the shape of the output membership functions on the basis of the firing strength of the rule using MIN method 6) The output fuzzy sets returned by the above step for each rule are combined using MAX operator. 7) Defuzzify the output fuzzy values using centroid 8) Slide the mask window to the next pixel and repeat step 3 to step 7 until last pixel X(M,N) is checked row wise. 9) IV. EXPERIMENTS The new approach developed for edge detection has been tested for different images. The algorithm is able to detect very sharp and distinct edges for different kind of images. Some sample images are shown in Figure 5(a) and 6(a). The edges detected by this algorithm for these images are shown in 5(b) and 6(b) respectively. Some results generated by the algorithm are also compared with pre existing standard algorithms like Sobel Edge Detection Algorithm in MATLAB toolbox. It is observed that our algorithm is able to generate better result. One such sample image and the result of the Sobel method and our algorithm are shown in Figure 7(a), 7(b) and 7(c) respectively. The algorithm is also tested with different image formats like JPG, PNG, BMP and it works suitably with all these variety of image formats.

www.ijarcsse.com

Figure 5(b): Edges detected by the algorithm

Figure 6(a): Sample Image-2

Figure 6(b): Edges detected by the algorithm

Figure 5(a): Sample Image -1

2012, IJARCSSE All Rights Reserved

Page | 261

Volume 2, Issue 6, June 2012

www.ijarcsse.com V. CONCLUSIONS Fuzzy image processing is a powerful tool as the fuzzy sets provide a framework for incorporating human knowledge in the solution of problems whose formulation is based on imprecise concepts. In this paper, using the fuzzy logic a very simple and very efficient edge detection method is developed. The algorithm uses a 2x2 window mask, which is of smallest size, thus it minimizes the computation. Besides this no threshold value need to be determined in this algorithm. The algorithm is able to detect edges of various images and produces comparatively better results than some standard edge detection algorithms. The algorithm developed here exhibits huge scope of application in image segmentation and computer vision in general. As presently the algorithm is able to detect edges of gray images only, this work may be extended for colour images suitably. Further optimization of the FIS can be done by using other soft computing techniques such as ANN, GA etc.

Figure 7(a): Sample Image-3

Figure 7(b): Edge detected using Sobel method

REFERENCES [1] Er Kiranpreet Kaur , Er Vikram mutenja , Er Indrajeet Singh Gill , Fuzzy Logic Based Image Edge detection Algorithm in MATLAB, International Journal of Computer Application(0975-8887), Vol. 22. [2] S. Nagendram, G. Divya, L. Avinash Bharadwaj, P. Dharanijam A Novel Method of Exploring Human Reasoning Power in Image Analysis, International Journal of Science and Advanced Technology, Vol. 1, Issue 8, Oct 2011. [3] NR Pal and SK Pal, A review on image segmentation techniques, Pattern Recognition, Vol. 26, PP. 12771294, Issue 9, September 1993 [4] K.S. Fu, J.K. Mui, A Survey on Image Segmentation, Pattern Recognition , Vol. 13, PP 3-16, Issue 1, 1981. [5] N. Senthilkumaran and R. Rajesh, Edge Detection Techniques for Image Segmentation A Survey of Soft Computing Approaches, International Journal of Recent Trends in Engineering, Vol. 1, No. 2, May 2009 [6] Shashank Mathur, Anil Ahlawat, Application of Fuzzy Logic on Image Edge Detection, International Conference on Intelligent Information and Engineering Systems, June-July 2008. [7] Yasar Becerikli, Tayfun M. Karan, A New Fuzzy Approach for Edge Detection, Computational Intelligence and Bio-Inspired Systems, June 2005. [8] R. C. Gonzalez and R. E. Wood, Digital Image Processing, 3rd Ed., Prentice Hall, 2009

Figure 7(c): Edge detected by the algorithm

2012, IJARCSSE All Rights Reserved

Page | 262