Abstract
Edge detection plays a large role in digital image processing; it allows for easier identification of objects within the image from a human perspective and also opens the door for automated object detection via machine learning. One of the common edge detection algorithms, developed by John F. Canny in 1986, is a multi-stage algorithm making use of gradients within the image to calculate potential edges. Hadoop is a Java library built on the MapReduce framework and was designed to be used for distributed processing of big data projects. We, instead, choose to adapt the Canny edge detection algorithm to run via Hadoop using two methods: a streaming Python implementation and a Java implementation to compare their run times and to determine whether or not using Hadoop for such a problem is desirable over the classic sequential implementation. In Sect. 1, we introduce edge detection, explaining what it is and why it is important. In Sect. 2, we explore Canny’s algorithm. In Sect. 3, we then explain our methodology of parallelizing the sequential code and the issues which arise during the process. In Sect. 4, we display the results of our implementations. In Sect. 5 we conclude with a possible explanation of why our code does not perform as well as we had anticipated; due to memory limitations of our specific Hadoop cluster, the implementations created do not perform well for processing typical images, but do allow for the processing of very large images. We also explore possibilities for future work.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Barrow, H.G., Tenenbaum, J.M.: Interpreting line drawings as three-dimensional surfaces. Artif. Intell. 17(1–3), 75–116 (1981)
Lindeberg, T.: Encyclopaedia of Mathematics (Set). Springer (2001). Gmb H
Asghari, M.H., Jalali, B.: Physics-inspired image edge detection. In: IEEE Global Signal and Information Processing Symposium (2014)
Brejl, M., Sonka, M.: Object localization and border detection criteria design in edge-based image segmentation: automated learning from examples. IEEE Trans. Med. Imaging 19(10), 973–985 (2000)
Canny, J.F.: A computational approach to edge detection. IEEE Trans. Pattern Anal. Machine Intell. PAMI-8(6), 679–697 (1986)
White, T.: Hadoop: The Definitive Guide. O’Reilly Media, Inc. (2012)
Dean, J., Ghemawat, S.: Mapreduce: simplified data processing on large clusters. Commun. ACM 51, 107–113 (2008)
He, W., Yuan, K.: An improved canny edge detector and its realization on FPGA. In: 7th World Congress on Intelligent Control and Automation, WCICA 2008, June 2008
Ogawa, K., Ito, Y., Nakano, K.: Efficient canny edge detection using a GPU. In: 2010 First International Conference on Network and Computing (ICNC), November 2010
Brainmaps: An interactive multiresolution brain atlas. http://brainmaps.org. Accessed 21 June 2017
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Smalley, J., Oliveira, S. (2019). A Comparison of Canny Edge Detection Implementations with Hadoop. In: Arai, K., Kapoor, S., Bhatia, R. (eds) Advances in Information and Communication Networks. FICC 2018. Advances in Intelligent Systems and Computing, vol 887. Springer, Cham. https://doi.org/10.1007/978-3-030-03405-4_53
Download citation
DOI: https://doi.org/10.1007/978-3-030-03405-4_53
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-03404-7
Online ISBN: 978-3-030-03405-4
eBook Packages: EngineeringEngineering (R0)