EDCircles: A real-time circle detector with a false detection control Cuneyt Akinlar n , Cihan Topal Department of Computer Engineering, Anadolu University, Eskisehir 26470, Turkey article info Article history: Received 9 April 2012 Received in revised form 21 September 2012 Accepted 26 September 2012 Available online 3 October 2012 Keywords: Circle detection Ellipse detection Real-time image processing Helmholtz Principle NFA abstract We propose a real-time, parameter-free circle detection algorithm that has high detection rates, produces accurate results and controls the number of false circle detections. The algorithm makes use of the contiguous (connected) set of edge segments produced by our parameter-free edge segment detector, the Edge Drawing Parameter Free (EDPF) algorithm; hence the name EDCircles. The proposed algorithm first computes the edge segments in a given image using EDPF, which are then converted into line segments. The detected line segments are converted into circular arcs, which are joined together using two heuristic algorithms to detect candidate circles and near-circular ellipses. The candidates are finally validated by an a contrario validation step due to the Helmholtz principle, which eliminates false detections leaving only valid circles and near-circular ellipses. We show through experimentation that EDCircles works real-time (10–20 ms for 640 480 images), has high detection rates, produces accurate results, and is very suitable for the next generation real-time vision applications including automatic inspection of manufactured products, eye pupil detection, circular traffic sign detection, etc. & 2012 Elsevier Ltd. All rights reserved. 1. Introduction Detection of circular objects in digital images is an important and recurring problem in image processing [1] and computer vision [2], and has many applications especially in such automa- tion problems as automatic inspection of manufactured products [3], aided vectorization of line drawing images [4,5], pupil and iris detection [68], circular traffic sign detection [911], and many others. An ideal circle detection algorithm should run with a fixed set of internal parameters for all images, i.e., require no parameter tuning for different images, be very fast (real-time if possible), detect multiple small and large circles, work with synthetic, natural and noisy images, have high detection rate and good accuracy, and produce a few or no false detections. The circle detection algorithm presented in this paper satisfies all of these properties. Traditionally, the most popular circle detection techniques are based on the famous circle Hough transform (CHT) [1216]. These techniques first compute an edge map of the image using a traditional edge detector such as Canny [17], map the edge pixels into the three dimensional Hough circle space (x, y, r) and extract circles that contain a certain number of edge pixels. Not only CHT-based techniques are very slow and memory-demanding, but they also produce many false detections especially in the presence of noise. Additionally, these methods have many parameters that must be preset by the user, which greatly limits their use. To overcome the limitations of the classical CHT-based meth- ods, many variants have been proposed including probabilistic HT [18,19], randomized HT [20,21], fuzzy HT [22], etc. There are also approaches based on HT and hypothesis filtering [2325]. All these methods try to correct different shortcomings of CHT, but are still memory-demanding and slow to be of any use in real- time applications. Apart from the CHT-based methods, there are several rando- mized algorithms for circle detection. Chen et al. [26] propose a randomized circle detection (RCD) algorithm that randomly selects four pixels from the edge map of an image, uses a distance criterion to determine whether there is a possible circle in the image. They then use an evidence-collecting step to test if the candidate circle is a real-circle. RCD produces good results, but is slow. Recently, Chung et al. [27,28] have proposed efficient sampling and refinement strategies to speed up RCD and increase the accuracy of RCD’s results. Although the new RCD variants named GRCD-R, GLRCD-R [28] have good detection rates and produce accurate results, they still are far from being real-time. Furthermore, all RCD-variants work on the edge map of an image computed by a traditional edge detector such as the Sobel filter or the Canny edge detector, which have many parameters that must be set by the user. Recently, many efforts have concentrated on using genetic algorithms and evolutionary computation techniques in circle detection [2936]. Ayala-Ramirez et al. [30] proposed a genetic algorithm (GA) for circle detection, which is capable of detecting multiple circles but fails frequently to detect small or imperfect Contents lists available at SciVerse ScienceDirect journal homepage: www.elsevier.com/locate/pr Pattern Recognition 0031-3203/$ - see front matter & 2012 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.patcog.2012.09.020 n Corresponding author. Tel.: þ90 2223213550x6553. E-mail addresses: cakinlar@anadolu.edu.tr (C. Akinlar), cihant@andolu.edu.tr (C. Topal). Pattern Recognition 46 (2013) 725–740