Title: Speeding Up Canny Edge Detection Using Shared Memory Processing

Issue Number: Vol. 7, No. 3
Year of Publication: Sep - 2017
Page Numbers: 68-76
Authors: Soha S. Zaghloul, Njood S. Alassmi
Journal Name: International Journal of New Computer Architectures and their Applications (IJNCAA)
- Hong Kong
DOI:  http://dx.doi.org/10.17781/P002313


Image processing is a computational operation that requires many CPU cycles for simple image transformation. It takes every pixel of an image to perform a transformation to a new image. The image can be divided into smaller chunks, with same transformation operations being implemented on each. Thus, image processing is a good candidate for running on a parallel processor to improve the speed of computation when there are multiple images to be processed. In fact, this research focuses on Canny edge detection as a case study of probing parallelism. This work presents the design and implementation of sequential and parallel edge detection algorithms that are capable of producing high-quality results and performing at high speed. Therefore, this research aims to improve the Canny edge detection algorithm in terms of speed and scalability with different sizes of images. The algorithm is implemented using Java language with the Parallel Java library. In the first phase of the project, the Canny is implemented on a sharedmemory processor. It is found that there is a valuable gained speedup with respect to the sequential version. In addition, it is found that more parallelism is explored in larger image sizes with Canny edge detector.