by Gokhan Ciplak, Sedat Telceken and Cuneyt Akinlar
Circle detection in digital images is a very important problem with many applications. Although many circle detection algorithms have been proposed in the literature, each algorithm uses a small set of specially chosen images to demonstrate the proposed algorithm's effectiveness, which makes comparing the relative merits of different algorithms impossible. To solve this problem, we propose in this paper a dataset consisting of 200 images (each of size 800x600) with human annotated ground truths, with images containing circular objects from a wide variety of application areas. The proposed dataset is named the Anadolu University Circle Detection Dataset and Benchmark (AUCDB200), and is used to quantitatively compare some of the state of the art circle detection algorithms using the precision-recall metrics. We also propose a new circle detection algorithm that makes use of the circular arcs extracted by the recently proposed Orientation Transform (OT), thus the name OTCircles. Our experiments show that OTCircles gives out the best performance for AUCDB200 with an overall F-score of 0.92, and is less sensitive to noise.
by Cuneyt Akinlar
We propose a high-speed contour detector for color images that produces its contours as set of edge segments, each a chain of pixels. The proposed algorithm performs a multi-scale analysis of the input image by combining the edge segments produced by Color Edge Drawing (CED) at different scales; thus, the name CEDContours. We evaluate the performance of CEDContours both qualitatively by presenting visual experimental results, and quantitatively within the precision-recall framework of the Berkeley Segmentation Dataset and Benchmark (BSDS300 and BSDS500). Experimental results show that CEDContours with the DiZenzo gradient operator, named CEDContours-DiZenzo, surpasses many of the prominent contour detectors found in the literature (0.70 and 0.71 F-score for BSDS300 and BSDS500 respectively), and gives comparable results to the leading contour detectors, i.e., the global Probability of boundary ultrametric contour maps (gPb-ucm: 0.71 and 0.73), and the sparse code gradients (scg: 0.72 and 0.74), but runs up to 100 times faster than these contour detectors (700 milliseconds for 481x321 images as opposed to 40 seconds for gPb-ucm and 70 seconds for scg), making it suitable for high-speed image processing and computer vision applications.
We propose a high-speed contour detector for grayscale images that works by combining the edge segments produced by Edge Drawing (ED) algorithm at multiple scales, thus the name GEDContours. Unlike most contour detectors, which return soft binary contour maps, GEDContours returns its result as a set of edge segments, each a contiguous chain of pixels. We evaluate the performance of GEDContours in the context of the RUG dataset, which has 40 grayscale images each of size 512x512 with human annotated ground truth contours, and compare its results with some of the best contour detectors found in the literature using the F-score metric. Experimental results show that GEDContours is among the best contour detectors with an overall F-score of 0.7011 on the RUG dataset, and takes an average of just 0.42 seconds as opposed to 74 seconds for the global Probability of boundary ultrametric contour maps (gPb-ucm) with an overall F-score of 0.7051, and 125 seconds for the sparse code gradients (scg) with an overall F-score of 0.6997. Due to its good performance and blazing speed, we believe that GEDContours will be very useful for high speed image processing and computer vision applications.
ColorED: Color Edge and Segment Detection by Edge Drawing
by Cuneyt Akinlar and Cihan Topal
We extend our recently proposed real-time grayscale edge and segment detector, Edge Drawing (GrayED), to detect edge segments in color images. Edge Drawing for color images, named ColorED, takes in a color image, and outputs a set of edge segments, each a contiguous, 1-pixel wide chain of pixels. Detected edge segments are then passed through an ‘a contrario’ validation step due to the Helmholtz principle to eliminate perceptually invalid detections. We quantitatively evaluate ColorED with different colorspaces and vector gradient operators within the precision-recall framework of the widely-used Berkeley Segmentation Dataset and Benchmark (BSDS300), and compare its results with those of GrayED and a color version of the Canny edge detector named ColorCanny. We conclude that color edge detection is in general superior to grayscale edge detection, and that ColorED with edge segment validation (ColorEDV) greatly outperforms GrayED, ColorED, and ColorCanny while taking reasonable time to execute making it suitable for high-speed image processing and computer vision applications.
Predictive Edge Linking (PEL) is an edge linking algorithm that takes as input a binary edge map generated by a traditional edge detection algorithm and converts it to a set of edge segments; filling in one pixel gaps in the edge map, cleaning up noisy edge pixel formations and thinning multi-pixel wide edge segments in the process. PEL walks over the edge map based on the predictions generated from its past movements; thus the name Predictive Edge Linking (PEL). We evaluate the performance of PEL both qualitatively using visual experiments and quantitatively within the precision-recall framework of the Berkeley Segmentation Benchmark (BSDS 300). Both visual experiments and quantitative evaluation results show that PEL greatly improves the modal quality of binary edge maps produced by traditional edge detectors, and takes a very small amount of time to execute making it suitable for real-time image processing and computer vision applications.
Edge Drawing: A Realtime Edge/Edge Segment Detector
by Cihan Topal and Cuneyt Akinlar
Edge Drawing (ED) is a real-time, novel and unorthodox edge/edge segment detection algorithm. ED is inspired by the children's dot-to-dot boundary completion puzzles, where a child is given a dotted boundary of an object, and s/he is asked to complete the boundary by connecting the dots; i.e., by drawing edges between successive dots, hence the name Edge Drawing (ED). To work in a similar manner, ED first computes a set of gradient extrema points (dots - called the anchors) that roughly represent the boundaries of the objects in a given image. ED then uses a smart routing algorithm to connect successive dots (anchors), and produces the final edge map as a set of pixel chains in vector form.
A Realtime Parameter-Free Edge Segment Detector with a False Detection Control
by Cuneyt Akinlar and Cihan Topal
EDPF is a real-time, parameter-free edge/edge segment detection algorithm based on our novel edge detector, the Edge Drawing (ED) algorithm. EDPF works by running ED with ED's parameters set at their extremes. This produces all edge segments with numerous false detections. The detected edge segments are then validated by an "a contrario" validation step due to the Helmholtz principle, which eliminates invalid detections leaving only "meaningful" edge segments.
EDLines: A Realtime Line Segment Detector with a False
by Cuneyt Akinlar and Cihan Topal
EDLines is a real-time, parameter-free line segment detection algorithm based on the contiguous edge segments (pixel chains) produced by our novel edge detector, the Edge Drawing (ED) algorithm. EDLines has an "a contrario" validation step due to the Helmholtz principle, which lets it control the number of false detections.
EDCircles is a real-time, parameter-free circle detection algorithm based on the contiguous edge segments (pixel chains) produced by our parameter-free edge segment detector, Edge Drawing Parameter Free (EDPF) algorithm. To detect circles, we first convert the edge segments into line segments and then post-process these line segments to extract circles. We finally validate the candidate circles by an "a contrario" validation step due to the Helmholtz principle, which eliminates invalid detections leaving only valid circles.
EDContours is a high-speed contour detector that works by running our real-time parameter-free edge segment detector, Edge Drawing Parameter Free (EDPF), at different scale-space representations of an image. Combining the edge segments detected by EDPF at different scales, EDContours generates a soft contour map for a given image. EDContours works on gray-scale images, is parameter-free, runs very fast, and results in an F-measure score of 0.60 on the Berkeley Segmentation Dataset (BSDS300).
Robust CSS Corner Detector Based on Turning Angle Curvature of Image Gradients
by Cihan Topal, Kemal Ozkan, Burak Benligiray and Cuneyt Akinlar
We present a new contour-based corner detection method based on the turning angle curvature computed from the contour gradients of the image. In general, curvature is computed with the pixel locations of the extracted image contours. In most contour extraction methods, the image gradient information is already computed. The proposed algorithm makes use of this available information to compute the curvature function and takes local extremums as potential corner candidates. Afterwards, the candidates are validated by a novel validation algorithm which tries to approximate the local geometric structure of the contour with an iterative least squares estimation algorithm. Thus, we not only eliminate the false detected corners; but also estimate the corner strength precisely in terms of degrees. The experiments show that the detected corners with gradient-based turning angle curvature are more durable to affine transformations according to the ACU and LE criterions.
Parallel computing methods are very useful in speeding up algorithms that can be divided into independent subtasks. Traditional multi-processor architectures have limited use due to their high cost and difficulties of their use. Recently, Graphics Processor Units (GPUs) has opened up a new era for general purpose parallel computation. Among many GPU programming frameworks, Compute Unified Device Architecture (CUDA) seems to be the most widely used GPU architecture due to its low cost and ease of use. In this paper, we show how to implement our recently proposed novel edge segment detector, the Edge Drawing (ED) algorithm, in CUDA, and present performance studies demonstrating the performance gains in the CUDA architecture compared to a uniprocessor CPU implementation. The results show that a CUDA implementation improves the running time of ED by up to 12x and ED runs at an amazing blazing speed of about 1ms on a 512x512 image. ED is run on different CUDA cards and the performance results are presented.
Topal, Burak Benligiray
and Cuneyt Akinlar
Virtual keyboards are useful tools which both ease the effortless text entering and enable typing with very simple hardware such as a plain switch. Early virtual keyboards are designed similar to the conventional keyboards in terms of appearance. Since a conventional keyboard is designed for hand-use; usability of first virtual keyboards comes up short in utilization with pointing devices. For this reason, more useful virtual keyboards are proposed with improvements in modal and functional properties. In this study, we examine a couple of design issues for virtual keyboards to provide efficient utilization of them with pointing devices. We argue the effect of visual layout to the performance of virtual keyboards in connection with the statistical properties of the target language's vocabulary. We also propose a virtual keyboard design for a comfortable text entry experience based on our observations that we state in the paper.
2 Eylul Kampusu
E-mail: cihant [at] anadolu [dot] edu [dot] tr, cakinlar [at] anadolu [dot] edu [dot] tr
Phone: +90-222-321 3550x6470
Fax: +90-222-323 9501