Image Mosaicing Using Binary Edge Detection Algorithm in a Cloud-Computing Environment

Image Mosaicing Using Binary Edge Detection Algorithm in a Cloud-Computing Environment

Abdullah Alamareen (Jordan University of Science and Technology, Irbid, Jordan), Omar Al-Jarrah (Jordan University of Science and Technology, Irbid, Jordan) and Inad A. Aljarrah (Computer Engineering Department, Jordan University of Science and Technology, Irbid, Jordan)
DOI: 10.4018/IJITWE.2016070101
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

Image Mosaicing is an image processing technique that arises from the need of having a more realistic view of the real world wider than the view captured by the lenses of the available cameras. In this paper, a sequence of images will be mosaiced using binary edge detection algorithm in a cloud-computing environment to improve processing speed and accuracy. The authors have used Platform as a Service (PaaS) to provide a number of nodes in the cloud to run the computational intensive image processing and stitching algorithms. This increased the processing speed as most of image processing algorithms deal with every single pixel in the image. Message Passing Interface (MPI) is used for message passing among the compute-nodes in the cloud and a MapReduce technique is used for image distribution and collection, where the root node is used as reducer and the others as mappers. After applying the algorithm on different sequence of images and different machines on JUST cloud, the authors have achieved high mosaicing accuracy, and the execution time has been improved when comparing it with sequential execution on the images.
Article Preview

1. Introduction

In the field of image processing, image mosaicing, also known as panoramic imaging is the process of finding the exact overlapping area between two images and combining them to form a single image (Sharma, et al., 2013). The main step of image mosaicing is the stereo pairs matching, which is finding pairs of points in the two images that refer to the same vision. After finding these points and determining the overlapping region, the stitching process of the two images in one image is performed.

Most of the mosaicing algorithms are constructed to mosaic only two images, but nowadays the need of mosaicing sequence of images has increased and become one of the important topics in the image processing field. For example, it can be used to build a full map of a country for the purpose of a virtual tour. The process of mosaicing images comprises four steps: feature extraction, finding the corresponding points, establishing the homography between those points, and finally stitching the images in one image (Murali, & Madanapalle, 2012; Cho, YunKoo & Jaeyeon, 2003) . The extraction of the stereo pairs is called image alignment. There are different methods to implement image alignment such as the correlation that uses the pixels values in each image (Kim, & Jeffrey, 2004), the frequency domain coefficient (Reddy, Srinivasa & Biswanath, 1996), corner or edge detection (Rocha, Ricardo, & Aurélio, 2000), features description that use high level feature to match the images (Szeliski, 2010) and binary edge detection (Aljarrah, et al., 2014).

Mosaicing sequence of images takes a long time to produce the final image when the mosaic algorithm is implemented on a single node because most of the image processing algorithms deal with every single pixel in the image (Giess, et al., 2014). Consequently, there is a need to parallelize the mosaic algorithm to speed-up the computational time and reduce the waiting time.

Cloud computing is a new computing paradigm that dynamically provides various resources using self-services over the internet in a pay-as-you-go basis. It allows on demand dynamic provisioning of infrastructure, platform, and software resources from any location over the world (Plummer, et al., 2008). Clouds can be classified as public, private, and hybrid. Cloud computing can offer Hardware as a Service (HaaS), Software as a Service (SaaS), and Platform as a Service (PaaS) (Plummer, et al., 2008). It provides a good solution to distribute the computations on a set of nodes.

There are many techniques to distribute and collect data among different nodes in the cloud; MapReduce is considered as one of the most widely used techniques (Yamamoto, 2012). MapReduce is a programing model used for processing large data set, which consists of three main steps: map, shuffle, and reduce. In MapReduce, the data is distributed to all mappers and each one works alone.

After the mappers complete their work, the results are sent with their keys to the reducer, which will produce the final result. There are many ways to exchange data between mappers and the reducer and one of these ways is Message Passing Interface (MPI) (Barney, 2009). It is a library designed for message passing between different nodes in a parallel computing environment.

Complete Article List

Search this Journal:
Reset
Open Access Articles: Forthcoming
Volume 13: 4 Issues (2018): 1 Released, 3 Forthcoming
Volume 12: 4 Issues (2017)
Volume 11: 4 Issues (2016)
Volume 10: 4 Issues (2015)
Volume 9: 4 Issues (2014)
Volume 8: 4 Issues (2013)
Volume 7: 4 Issues (2012)
Volume 6: 4 Issues (2011)
Volume 5: 4 Issues (2010)
Volume 4: 4 Issues (2009)
Volume 3: 4 Issues (2008)
Volume 2: 4 Issues (2007)
Volume 1: 4 Issues (2006)
View Complete Journal Contents Listing