SciELO - Scientific Electronic Library Online

 
 issue30Caracterización Funcional del Almidón de Fríjol Zaragoza (Phaseolus Lunatus L.) y Cuantificación de su Almidón Resistente: Functional Characterization of Bean Zaragoza Starch (Phaseolus Lunatus L.) and Quantification of the Resistant StarchExpert System Model for Educational Personnel Selection author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

  • On index processCited by Google
  • Have no similar articlesSimilars in SciELO
  • On index processSimilars in Google

Share


TecnoLógicas

Print version ISSN 0123-7799On-line version ISSN 2256-5337

TecnoL.  no.30 Medellín Jan./June 2013

 

Artículo de Investigación/Research Paper

Edge Detection Algorithm Based on Fuzzy Logic Theory for a Local Vision System of Robocup Humanoid League

Algoritmo de Detección de Bordes Basado en Lógica Difusa para Sistemas de Visión Local de la Liga Humanoide de Robocup

Andrea K. Perez-Hernandez1, Andrés Gomez-García2, Eyberth R. Rojas-Martínez3, Carlos S. Rodríguez-Rojas4, Jorge López-Jiménez5, Juan M. Calderón-Chavez6

1Ing. electrónica, Grupo de Estudio y Desarrollo en Robótica, Facultad de Ingeniería Electrónica, Universidad Santo Tomás, Universidad, Bogotá-Colombia, andrea.perez@usantotomas.edu.co

2Ing. electrónico, Grupo de Estudio y Desarrollo en Robótica, Facultad de Ingeniería Electrónica, Universidad Santo Tomás, Bogotá-Colombia, andres.gomez@usantotomas.edu.co

3Ing. electrónico, Grupo de Estudio y Desarrollo en Robótica, Facultad de Ingeniería Electrónica, Universidad Santo Tomás, Bogotá-Colombia, eyberthrojas@usantotomas.edu.co

4Ing. electrónico, Grupo de Estudio y Desarrollo en Robótica, Facultad de Ingeniería Electrónica, Universidad Santo Tomás, Bogotá-Colombia, saithrodriguez@usantotomas.edu.co

5Ing. electrónico, MSc. en Ing. Electrónica, Grupo de Estudio y Desarrollo en Robótica, Facultad de Ingeniería Electrónica, Universidad Santo Tomás, Bogotá-Colombia, jorgelopez@usantotomas.edu.co

6Ing. electrónico, MSc. en Ing. Electrónica, Grupo de Estudio y Desarrollo en Robótica, Facultad de Ingeniería Electrónica, Universidad Santo Tomás, Bogotá-Colombia, juancalderon@usantotomas.edu.co

Fecha de recepción: 16 de abril de 2012 / Fecha de aceptación: 06 de junio de 2013


Abstract

At this paper we shown the development of an algorithm to perform edges extraction based on fuzzy logic theory. This method allows recognizing landmarks on the game field for Humanoid League of RoboCup. The proposed algorithm describes the creation of a fuzzy inference system that permit evaluate the existent relationship between image pixels, finding variations on grey levels of related neighbor pixels. Subsequently, it shows an implementation of OTSU method to binarize an image that was obtained from fuzzy process and so generate an image containing only extracted edges, validating the algorithm with Humanoid League images. Later, we analyze obtained results that evidence a good performance of algorithm, considering that this proposal only takes an extra 35% processing time that will be required by traditional methods, whereas extracted edges are 52% less noise susceptible.

Keywords: Fuzzy systems, robotics, humanoid robot, vision system.


Resumen

Este artículo presenta el desarrollo de un algoritmo para la extracción de bordes basado en la teoría de lógica difusa, mediante el cual es posible reconocer las marcas de un campo de juego para la liga humanoide de RoboCup. El algoritmo propuesto describe la creación de un sistema de inferencia difuso que permite evaluar la relación existente entre los pixeles de una imagen, encontrando así las variaciones en los niveles de gris para una vecindad de pixeles específica. Posteriormente se plantea la implementación del método OTSU para binarizar la imagen obtenida en el proceso difuso y así generar una imagen que contiene solo los bordes extraídos, validando el algoritmo en imágenes de la liga humanoide. Luego se analizan los resultados obtenidos evidenciando el buen desempeño del algoritmo, considerando que el tiempo de procesamiento de la propuesta es tan solo el 35% más del tiempo necesario en métodos tradicionales, mientras que los bordes extraídos son unos 52% menos susceptibles al ruido.

Palabras clave: Sistemas difusos, robótica, robots humanoides, sistema de visión.


1. Introduction

The developments applied to robots able to perform human activities such as locomotion, vision, among others, has been addressed from various research fields. Therefore it has become a fundamental part of global initiatives which seeks to promote the study and development of autonomous robots with human characteristics. An initiative with the largest global interested population is RoboCup Soccer, where making robots to play soccer seeks to promote the development of intelligent systems capable to perform cooperative works (Asada et al., 1998; Cheng, 2006).

Among categories that have been raised as part of this initiative it is the Humanoid league. This category is divided by the size of competing robot. It has three sub-categories: KidSize, TeenSize and AdultSize. All categories of Humanoid robots have local vision system and the proposed challenge is the same (Zickler, 2010), develop a robot team able to play soccer overcoming technical problems of mobility and vision, but differ in size allowed for robots; finding in KidSize size limitation from 30 to 60 cm, for TeenSize from 100 to 120 cm and AdultSize from 130 cm onwards.

To introduce solutions to problems of vision is necessary to look for an algorithm capable to detect edge into an image captured by the player, as a tool for locating robot into play field. In addition increases perception of ball and other reference objects to help its spatial location (Cheng, 2006).

Beginning on the theory of edge detection based on the difference between intensity of a reference pixel and each one of neighboring pixels, we use fuzzy logic theory to implement the proposed algorithm. As processing has significant advantages because it is less susceptible to noise on image and considering that the robot works in varying conditions, it is possible that images contain a high noise level, so a fuzzy logic method is more suitable for this case (Chacón et al., 2002; Chi et al., 1996).

Therefore, to develop the algorithm based on fuzzy logic theory, that let us obtain edges of an image taken by a humanoid robot of RoboCup initiative, we made a study of related work and projects developed around the world about fuzzy algorithms that allows edges extraction, thus achieving determine performance indicators based on processing time and computational results of the currently algorithms.

After analyzing this information, the approach and formulation of proposed algorithm was made, thus, identifying input and output fuzzy sets, the set of rules and defuzzification and binarization methods that were employed. Subsequently some tests were conducted of edge detection algorithm on different images of humanoid league measuring computational performance in terms of processing time and results compared to other algorithms such as Sobel, Prewitt and Canny, finally we performed analysis of all processed information in the algorithm to obtain conclusions associated to proposed method.

2. Background

The application of fuzzy logic theory to solve problems associated to digital images processing, has become an interest research field around the world at last years. So it is possible to find many works with applications on image processing using fuzzy logic, by using a variety of functions, concepts and rule sets. In specific case of edges detection, have recently been published articles by various authors in which some methods are described as tools to analysis of information contained in a grayscale image.

At these articles (Alshennawy & Aly, 2009; Aborisade, 2010; Suliman et.al, 2011; Rahmankhan & Thakur, 2012), edges extraction methods are described without an specific application, so showed results on these sources strongly depends on authors criteria, about their expected processing performance. However, the main approach of these proposals it is similar. These algorithms start from a creation of pixels mask, through analyzes of every single image layer, allowing subsequently evaluate every mask using a fuzzy inference system; with differences in evaluation address of masks, definition of sets and the number of rules necessary to perform the analysis.

On the other hand, there are articles (Kaur et al., 2010; Harne & Atique, 2011; Surykant, 2012) that describe the implementation of algorithms to edge extracting by using MATLAB, the fundamental theory it is similar to before mentioned, but computational performance according to obtained results shows that is necessary to use other programming environments, in order to improve speed of some processes of the algorithm.

In addition to these works, there are some highlighted articles that describe specific industrial process applications or commercial applications. Some of these cases are edge detection algorithms of image segmentation (Senthilkumaran & Rajesh, 2009) and for segmentation a brain portion from the Magnetic Resonance Image head scan images (Somasundaram & Ezhilarasan, 2012), highlighting the importance of these algorithms by considering that currently the medical imaging is an area which still needs to be investigated.

3. Fuzzy edge detection

We decided to use fuzzy logic for edge detection inspired by human reasoning and hoping to get a development similar to human system.

3.1 Proposed algorithm

The processing of captured images involves multiple procedures, so it is necessary to extract important features that will be used to develop an application. In the particular case of a humanoid robot, the system is constantly obtaining images that can be used to carry a set of important tasks, namely a) determine the position of the ball on the field, b) define play spaces and c) locate itself and its opponents into the field. These tasks can be all performed by processing the captured images and are a key aspect to create strategies according to the current state of each element.

One of processes that can be applied to image is edge extraction. It represents an important step because it allows an initial distribution into the field. The image preprocessing is to convert the color image to grayscale, and considering that the edges are pixels that have a significant variation in gray level; it is possible to determine a chain of pixels representing the edges. For a reference pixel Ixy is the difference with neighboring elements by establishing a matrix as shown in Fig. 1.

In where an estimation of a difference or a variation between elements, was performed according to (1) to (8).

To perform edge extraction using fuzzy logic theory is necessary to determine a fuzzy set to evaluate the degree of membership of each difference, called input membership function, μ_IN. Later it was determined another fuzzy set that assigns an output value, called the output membership function, μ_OUT. The equation that describes the membership function of a fuzzy set X is explained below in (9) and (10).

Where c represents the bell center,  is the opening and b is slope for discourse universe Z. Fig. 2. Shows input membership function corresponding to variation of gray level.

The choice of rules is based on variation of gray level of a reference pixel Ixy with each of its neighbors, by defining the following rule base:

IF d1 is Low AND d2 is Low
THEN pixel Ixy is white.

Taking this as a base rule, we proceed to make a set of 8 rules with the conditions described in Table 1.

Where i is expressed in (11):

The output membership function shown in Fig. 3, which assesses the input membership degree. Thus a maximum variation is represented by black color or value 0 and the absence of variation is represented by white color with value 255.

The evaluation of each rule in the output membership function generates one area, for a total of 8 sub-areas of which are necessary to determine a weighted. For these we calculate the maximum between found areas, thus this will be the total area to define and perform defuzzification process to a point value to facilitate the decision process. This value is obtained by the method of defuzzification of bisector of area (BOA) described in (12).

Where (13), (14) and ZBOA is a line that divides the region between α and β in two parts with same area.

For edges extraction, the output obtained of defuzzification process is an image that contains edges resulting from the proposed algorithm, which are in range of 0 to 255, where edges are close to 0. Therefore, it is necessary binarize the image through a threshold using (15), so that any value that is below the threshold φ is considered edge, otherwise the pixel is discarded.

The algorithm used to determine φ value that allows a proper selection of edges is Otsu, widely used for optimal selection of thresholds automatically (Gómez et al., 2010; Otsu, 1994). Considering that the application of Otsu enables a dynamic selection, according to illumination conditions and threshold for binarize the image. At Fig. 4 it is shown flowchart for described algorithm.

4. Results and discussion

We have designed a set of experiments in order to assess the performance of the proposed algorithm. In the experiments, a humanoid robot carries a camera and takes pictures of its environment. In general, each picture has different characteristics in terms of illumination, environment and external noise, which allows us to fully assess the algorithm’s capabilities when faced to a variety of conditions. The experiments run in an Intel Core i7 processor with 8GB RAM and 64-bit Windows operating system.

In the first experiment we have selected an image with few sources of external noise to the field and clearly defined lines as we can see in Fig. 5(a). We have applied the fuzzy-based border extraction method to the picture to obtained the Fig. 5(b) with a pixel-value distribution of 0 – 255 as described above. This new image needs to be binarized in order to isolate and identify the borders.

For this purpose, we have used the Otsu’s method mainly due to its capability to automatically select a threshold to binarize the image without having to manually analyze the particular illumination conditions. This is shown in Fig. 5(c). We can see that the algorithm correctly extract the image borders, these are continuous and take 1,26 seconds overall.

We have also implemented a more traditional method, the Canny’s edge detector algorithm. The result of applying it to the image is shown in Fig. 5(d), which takes 0,93 seconds to complete, making it faster than the proposed fuzzy-based method. However, we can appreciate non-continuous lines and lines that should not be classified as borders. Additionally, we have subtracted the two images generated by both methods in order to find the amount of additional pixels generated by the traditional method, showing 63% of misclassified borders.

The second experiment was performed using the image in Fig. 6(a). For this set up, we have compared the performance of the proposed algorithm with that of the Prewitt method. The results are shown in Fig. 6(b) and Fig. 6(c) respectively. For the former, we have measured a processing time of 1,17 seconds while the latter took 0,84 seconds, with an advantage of 39,3% over the proposed method. However, we have found that the traditional method generates 45,2% of additional misclassified lines when the images are subtracted.

For the final experiment we chose a picture with low illumination levels, Fig. 7(a). This creates low contrast between objects and the field lines making the border detection task harder. We have applied the fuzzy-based method and the traditional Sobel method and the results are shown in Fig. 7(b) and Fig. 7(c) respectively. It is noteworthy that despite the difficulty of the task at hand, the fuzzy-based method is able to detect a fair amount of borders in the image. The traditional method fails in identifying most of the borders within the image including the ball. The amount of identified borders by the traditional method is 38,7% below the expected.

One important challenge in the humanoid leagues of RoboCup is one related to the identification of poles, one located at each side of the field. This is a key element for the self-location of each robot within the field because it allows them to acknowledge the location of their own field and the enemy’s filed. Each pole consists of two yellow stripes and one blue stripe as shown in Fig. 8(a) and it differs on the color pattern. The difficulty in this task is related to the lack of contrast between the landmarks in the pole and the image background. This is clearly evidenced by errors in the binarization process.

Fig. 8(b) and Fig. 8(c) show the result of applying the fuzzy-based algorithm and the Canny’s method to the image respectively. The fuzzy-based algorithm takes 1,28 seconds while the traditional method takes 1,05 seconds, 31% less than the former. It is noteworthy that Canny’s algorithm makes it impossible to identify the pole, while the fuzzy-based algorithm is able to successfully identify the important landmark. Canny’s method generates 48,9% of misclassified borders compared to the proposed algorithm.

5. Conclusions

By comparing the results obtained from the application of traditional and fuzzy methods to perform edge extraction, it is possible to demonstrate the good performance that presents the algorithm. Despite of proposed algorithm takes an average of 35% of additional processing time, but permits elimination 52% of undesired edges.

The Otsu application to binarize a resultant image from fuzzy process, enable the algorithm to be less susceptible to luminance variations due to automatic adjust according to intensity of present pixels on image. In this way, the image obtained by the fuzzy inference system does not deteriorate and ensures to get edges according to parameters assigned to the system membership functions. According to performance measurements taken, the fuzzy algorithm successfully accomplishes the proposed goal. This was possible because the study of all the neighbor pixels is performed in a single process and thereby determines the presence of edges in all directions.

Considering that images used for the analysis and testing of the proposed algorithm were taken by a robot of humanoid league of RoboCup, we can state that the validation of proposed fuzzy method was successful. Due to we studied real environmental situations such as illumination variations and the presence of external agents in game field, to ensure that it is possible to identify landmarks (lines), the ball and opponent robots clearly.

When we analyzed images with low contrast between objects, we can obtain some errors in edge detection; this is due to minimum difference between intensity values of pixels, so it is necessary to have a suitable lighting system. However, compared to other methods, the proposed algorithm has a lower percentage of loss in edges which are desired to identify.

6. Acknowledgments

The development of this work was possible thanks to the cooperation and support of BioRobotics Laboratory of South Florida University, Dr. Alfredo Weitzenfeld and Eng. Martin Llofriu.

References

Aborisade, D., (2010). Fuzzy Logic Based Digital Image Edge Detection, Global Journal of Computer Science and Technology, 10, 78-83.         [ Links ]

Alshennawy, A., Aly, A., (2009). Edge Detection in Digital Images Using Fuzzy Logic Technique, International Journal of Electrical and Computer Engineering, 5, 415-423.         [ Links ]

Asada, M., Noda, I., Matsubara, H., (1998). RoboCup: robot world cup, IEEE Robotics & Automation Magazine, 5, 30-36.         [ Links ]

Chacón, M., Aguilar, L., Delgado, A., (2002). Definition and Applications of a Fuzzy Image Procesing Scheme, Proceedings of 2002 IEEE 10th Digital Signal processing workshop and 2nd signal processing education workshop, 102-107, Chihuahua, Mexico.         [ Links ]

Cheng, X., Zhang, J., Ke, J., (2006). Robocup is a Stage which Impulse the Research of Basic Technology in Robot, IEEE International Conference on Robotics and Biomimetics, 965-970, Kunming, China.         [ Links ]

Chi, Z., Yan, H., Pham, T., (1996). Fuzzy Algorithms: With Aplications To Image Processing And Pattern Recognition, 10, 1-14, World Scientific Publishing Co, Hong Kong, China.         [ Links ]

Gómez, A., Pérez, K., Pico, M., Ochoa, I., Calderón, J., (2010). Automatic Image Segmentation by K-means and Otsu, VII International Conference on Electrical and Electronics Engineering Reseach, Aguas Calientes, Mexico.         [ Links ]

Harne, R., Atique, M., (2011). Edge Detection in Digital Images Using Fuzzy Logic and Fis Editor in Matlab, International Journal of Advanced Engineering Technology, 2, 26-28.         [ Links ]

Kaur, K., Mutenja, V., Singh, I., (2010). Fuzzy Logic Based Image Edge Detection Algorithm in MATLAB, International Journal of Computer Applications, 1(22), 55-58.         [ Links ]

Otsu, N., Kurita, T., Abdelmalek, N., (1994). A thresholding method using the mixture of normal density functions, Proceedings ISSIPNN '94 International Symposium on Speech Image Processing and Neural Networks, 304-307, Hong Kong, China.         [ Links ]

Rahmankhan, A., Thakur, K., (2012). An Efficient Fuzzy Logic Based Edge Detection Algorithm for Gray Scale Image, International Journal of Emerging Technology and Advanced Engineering, 2, 245-250.         [ Links ]

Senthilkumaran, N., Rajesh, R., (2009). Edge Detection Techniques for Image Segmentation - A Survey of Soft Computing Approaches, International Journal of Recent Trends in Engineering, 1(2), 250-254.         [ Links ]

Somasundaram, K., Ezhilarasan, K., (2012). Edge Detection using Fuzzy Logic and Thresholding, National Conference on Digital Signal and Image Processing 2012, 157-160, Gandhigram, India.         [ Links ]

Suliman, C., Boldişor C., Băzăvan, R., Moldoveanu, F., (2011). A Fuzzy Logic Based Method For Edge Detection, Bulletin of the Transilvania University of Braşov, 4(53), 159-164.         [ Links ]

Surykant, N., (2012). Edge Detection using Fuzzy Logic in Matlab, International Journal of Advanced Research in Computer Science and Software Engineering, 2, 38-40.         [ Links ]

Zickler, S., Laue, T., Birbach, O., Wongphati, M., Veloso, M., (2010). SSL-Vision: The Shared Vision System for the RoboCup Small Size League, RoboCup 2009 LNCS 5949, 425-436.         [ Links ]

Creative Commons License All the contents of this journal, except where otherwise noted, is licensed under a Creative Commons Attribution License