Advertisement

Soft Computing

, Volume 20, Issue 3, pp 1231–1248 | Cite as

Genetic programming for edge detection: a Gaussian-based approach

  • Wenlong FuEmail author
  • Mark Johnston
  • Mengjie Zhang
Methodologies and Application

Abstract

Gaussian-based filtering techniques have been popularly applied to edge detection. However, how to effectively tune parameters of Gaussian filters and how to effectively combine different Gaussian filters are still open issues. In this study, a new genetic programming (GP) approach is proposed to automatically tune parameters of Gaussian filters and automatically combine different types of Gaussian filters to extract edge features. In general, it is time-consuming for GP to evolve edge detectors using a large training image dataset. To efficiently evolve edge detectors from a large training image dataset, we propose sampling techniques (randomly selecting training images) to evolve Gaussian-based edge detectors. A sampling technique only using part of a set of images obtains similar performance to the training data using all of these images. The evolved edge detectors from the proposed sampling technique perform better than the Gaussian gradient and rotation invariant surround suppression. Based on the analysis of GP evolving edge detectors, it is suggested that combining Gaussian filters should be based on different types of Gaussian filters, and the Gaussian gradient should be considered as a major filter in these combinations.

Keywords

Edge detection Genetic programming Sampling Feature extraction 

References

  1. Arbeláez P, Maire M, Fowlkes C, Malik J (2011) Contour detection and hierarchical image segmentation. IEEE Trans Pattern Anal Mach Intell 33(5):898–916CrossRefGoogle Scholar
  2. Basu M (2002) Gaussian-based edge-detection methods: a survey. IEEE Trans Syst Man Cybern Part C Appl Rev 32(3):252–260CrossRefGoogle Scholar
  3. Bennamoun M, Boashash B, Koo J (1995) Optimal parameters for edge detection. Proc IEEE Int Conf Syst Man Cybern 2:1482–1488Google Scholar
  4. Bergholm F (1987) Edge focusing. IEEE Trans Image Process 9:726–741Google Scholar
  5. Bolis E, Zerbi C, Collet P, Louchet J, Lutton E (2001) A GP artificial ant for image processing: preliminary experiments with EASEA. In: Proceedings of the 4th European conference on genetic programming, pp 246–255Google Scholar
  6. Canny J (1986) A computational approach to edge detection. IEEE Trans Pattern Anal Mach Intell 8(6):679–698CrossRefGoogle Scholar
  7. Dollar P, Tu Z, Belongie S (2006) Supervised learning of edges and object boundaries. Proc IEEE Comput Soc Conf Comput Vis Pattern Recognit 2:1964–1971Google Scholar
  8. Ebner M (1997) On the edge detectors for robot vision using genetic programming. In: Proceedings of Horst-Michael Gro\(\beta \). Workshop SOAVE 97—Selbstorganisation von Adaptivem Verhalten, pp 127–134Google Scholar
  9. Espejo PG, Ventura S, Herrera F (2010) A survey on the application of genetic programming to classification. IEEE Trans Syst Man Cybern Part C Appl Rev 40:121–144CrossRefGoogle Scholar
  10. Fink M (2004) Object classification from a single example utilizing class relevance metrics. In: Proceedings of the neural information processing systemsGoogle Scholar
  11. Fu W, Johnston M, Zhang M (2011) Genetic programming for edge detection: a global approach. In: Proceedings of the 2011 IEEE congress on evolutionary computation, pp 254–261Google Scholar
  12. Fu W, Johnston M, Zhang M (2012a) Automatic construction of invariant features using genetic programming for edge detection. In: Proceedings of the Australasian joint conference on artificial intelligence, pp 144–155Google Scholar
  13. Fu W, Johnston M, Zhang M (2012b) Genetic programming for edge detection based on figure of merit. In: Proceedings of the genetic and evolutionary computation conference, pp 1483–1484Google Scholar
  14. Fu W, Johnston M, Zhang M (2012c) Genetic programming for edge detection using blocks to extract features. In: Proceedings of the genetic and evolutionary computation conference, pp 855–862Google Scholar
  15. Fu W, Johnston M, Zhang M (2012d) Genetic programming for edge detection via balancing individual training images. In: Proceedings of the IEEE congress on evolutionary computation, pp 2597–2604Google Scholar
  16. Fu W, Johnston M, Zhang M (2012e) Soft edge maps from edge detectors evolved by genetic programming. In: Proceedings of the IEEE congress on evolutionary computation, pp 24–31Google Scholar
  17. Fu W, Johnston M, Zhang M (2013a) Automatic construction of gaussian-based edge detectors using genetic programming. In: Proceedings of the European conference on applications of evolutionary computation, pp 365–375Google Scholar
  18. Fu W, Johnston M, Zhang M (2013b) Genetic programming for edge detection using multivariate density. In: Proceedings of the genetic and evolutionary computation conference, pp 917–924Google Scholar
  19. Fu W, Johnston M, Zhang M (2013c) Triangular-distribution-based feature construction using genetic programming for edge detection. In: Proceedings of the IEEE congress on evolutionary computation, pp 1732–1739Google Scholar
  20. Ganesan L, Bhattacharyya P (1997) Edge detection in untextured and textured images: a common computational framework. IEEE Trans Syst Man Cybern Part B Cybern 27(5):823–834CrossRefGoogle Scholar
  21. Golonek T, Grzechca D, Rutkowski J (2006) Application of genetic programming to edge detector design. In: Proceedings of the international symposium on circuits and systems, pp 4683–4686Google Scholar
  22. Grigorescu C, Petkov N, Westenberg M (2003) Contour detection based on nonclassical receptive field inhibition. IEEE Trans Image Process 12(7):729–739CrossRefGoogle Scholar
  23. Grigorescu C, Petkov N, Westenberg MA (2004) Contour and boundary detection improved by surround suppression of texture edges. Image Vis Comput 22(8):609–622CrossRefGoogle Scholar
  24. Harding S, Banzhaf W (2008) Genetic programming on GPUs for image processing. Int J High Perform Syst Architect 1(4):231–240CrossRefGoogle Scholar
  25. Harris C, Buxton B (1996) Evolving edge detectors with genetic programming. In: Proceedings of the first annual conference on genetic programming, pp 309–314Google Scholar
  26. Hollingworth G, Smith S, Tyrrell A (1999) Design of highly parallel edge detection nodes using evolutionary techniques. In: Proceedings of the seventh euromicro workshop on parallel and distributed processing, pp 35–42Google Scholar
  27. Holm S (1979) A simple sequentially rejective multiple test procedure. Scand J Stat 6(2):65–70MathSciNetzbMATHGoogle Scholar
  28. Kadar I, Ben-Shahar O, Sipper M (2009) Evolution of a local boundary detector for natural images via genetic programming and texture cues. In: Proceedings of the 11th annual conference on genetic and evolutionary computation, pp 1887–1888Google Scholar
  29. Kokkinos I (2010) Boundary detection using F-measure-, filter- and feature- (F3) boost. In: Proceedings of the 11th European conference on computer vision: part II, pp 650–663Google Scholar
  30. Kunt M (1982) Edge detection: a tutorial review. Proc IEEE Int Conf Acoust Speech Signal Process 7:1172–1175CrossRefGoogle Scholar
  31. Lacroix V (1990) The primary raster: a multiresolution image description. In: Proceedings of the 10th international conference on pattern recognition, vol I, pp 903–907Google Scholar
  32. Lam L, Lee SW, Suen C (1992) Thinning methodologies—a comprehensive survey. IEEE Trans Pattern Anal Mach Intell 14(9):869–885CrossRefGoogle Scholar
  33. Li FF, Fergus R, Perona P (2006) One-shot learning of object categories. IEEE Trans Pattern Anal Mach Intell 28(4):594–611CrossRefGoogle Scholar
  34. Lindeberg T (1996) Edge detection and ridge detection with automatic scale selection. In: Proceedings of 1996 IEEE computer society conference on computer vision and pattern recognition, pp 465–470Google Scholar
  35. Marr D, Hildreth E (1980) Theory of edge detection. Proc R Soc Lond Ser B Biol Sci 207(1167):187–217CrossRefGoogle Scholar
  36. Martin D, Fowlkes C, Malik J (2004) Learning to detect natural image boundaries using local brightness, color, and texture cues. IEEE Trans Pattern Anal Mach Intell 26(5):530–549CrossRefGoogle Scholar
  37. Miller E, Matsakis N, Viola P (2000) Learning from one example through shared densities on transforms. Proc IEEE Conf Comput Vis Pattern Recognit 1:464–471Google Scholar
  38. Papari G, Petkov N (2011) Edge and line oriented contour detection: state of the art. Image Vis Comput 29:79–103CrossRefGoogle Scholar
  39. Poli R (1996) Genetic programming for image analysis. In: Proceedings of the first annual conference on genetic programming, pp 363–368Google Scholar
  40. Quintana MI, Poli R, Claridge E (2006) Morphological algorithm design for binary images using genetic programming. Genet Program Evol Mach 7:81–102CrossRefGoogle Scholar
  41. Schunck B (1987) Edge detection with Gaussian filters at multiple scales. In: Proceedings of the IEEE workshop on computer vision, representation and control, pp 208–210Google Scholar
  42. Song DM, Li B (1998) Derivative computation by multiscale filters. Image Vis Comput 16(1):43–53CrossRefGoogle Scholar
  43. Song W, Feng G, Tiecheng L (2006) Evaluating edge detection through boundary detection. EURASIP J Appl Signal Process 2006:1–15zbMATHGoogle Scholar
  44. Wang J, Tan Y (2010) A novel genetic programming based morphological image analysis algorithm. In: Proceedings of the 12th annual conference on genetic and evolutionary computation, pp 979–980Google Scholar
  45. Zhang Y, Rockett PI (2005) Evolving optimal feature extraction using multi-objective genetic programming: a methodology and preliminary study on edge detection. In: Proceedings of the genetic and evolutionary computation conference, pp 795–802Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  1. 1.School of Mathematics, Statistics and Operations ResearchVictoria University of WellingtonWellingtonNew Zealand
  2. 2.School of Engineering and Computer ScienceVictoria University of WellingtonWellingtonNew Zealand

Personalised recommendations