Distributed Image Processing on a Blackboard System

Distributed Image Processing on a Blackboard System

Gerald Schaefer (Loughborough University, UK) and Roger Tait (University of Cambridge, UK)
DOI: 10.4018/978-1-60566-184-1.ch021
OnDemand PDF Download:


Efficient approaches to computationally intensive image processing tasks are currently highly sought after. In this chapter, the authors show how a blackboard paradigm, originally developed for collaborative problem solving, can be used as an efficient and effective vehicle for distributed computation. Through the design of dedicated intelligent agents, typical image processing algorithms can be applied in parallel on multiple loosely coupled machines leading to a significant overall speedup as is verified in a series of experiments.
Chapter Preview


In a tightly-coupled architecture all processors share the same main memory and work, concurrently, on the same data. Consequently, this type of system largely eliminates the need for explicit message passing between concurrent tasks. Multi-threaded programming allows applications to branch into independent concurrent threads and is not restricted to shared-memory multi-processor architectures. In general, multi-threaded applications are well suited to multi-processor architectures. This is because individual threads can run concurrently on different processors. As multi-threaded applications share the same address space, they cause considerably fewer overheads than the creation of an equivalent number of processes.

In a loosely-coupled architecture, parallel image processing tasks typically consist of four main steps: image distribution, local processing, data transfer during processing, and segment accumulation. Distribution is the process of dividing an image into segments each of which is assigned to a unique processor (Taniguchi et al., 1997). Under a duplicate distribution scheme each processor is sent an exact copy of the original image. Alternatively, more complex schemes can be adopted where an image is divided into a variable sized matrix (Nicolescu and Jonker, 2000). After distribution, each processor applies local image processing to its allocated segment. When data allocated to other processors are required, they are transferred by inter-processor communication. Finally, after application of the parallel algorithm, segments are accumulated into a resulting image.

Inter-processor communication is required when data allocated to other processors are needed, and can be categorised into groups based on their pattern of data access (Seinstra, Koelma and Geusebroek, 2002). These patterns also represent a strategy for synchronisation between communicating processors. One-to-one access is common in tasks such as image brightening or colour correction, where an output pixel maps directly to a pixel in the input image. Alternatively, a one-to-many relationship exists in neighbourhood operators, such as edge detection filters, which calculate an output based on a function of the input pixel’s immediate neighbourhood. Naturally, the handling and transmission of non-contiguous data differs from data stored as contiguous blocks. Data stored randomly in memory causes additional overheads due to its packing into a contiguous buffer before transmission (Hoare, 1985).

Key Terms in this Chapter

Distributed Agents: Software entities, designed to execute as independent threads and on distributed processors, capable of acting autonomously in order to achieve a pre-defined task.

Blackboard Architecture: An artificial intelligence application based on and analogous to a group of experts seated in a room with a large blackboard working as a team to solve a common problem.

Parallel Image Processing: A distributed execution of an image processing algorithm on multiple processors.

Tightly-Coupled Hardware Architecture: Architecture that consists of one machine with several processors that share the same memory.

Loosely-Coupled Hardware Architecture: Architecture that consists of multiple separate machines each with their own processor and memory.

Complete Chapter List

Search this Book:
Editorial Advisory Board
Table of Contents
Ruth E. Shaw
Emmanuel Udoh, Frank Zhigang Wang
Emmanuel Udoh
Chapter 1
Emmanuel Udoh, Frank Zhigang Wang, Vineet R. Khare
This chapter presents a historical record of the advent of Grid with a recourse to some basic definitions commonly accepted by most researchers. It... Sample PDF
Overview of Grid Computing
Chapter 2
Eric Aubanel
The problem of load balancing parallel applications is particularly challenging on computational grids, since the characteristics of both the... Sample PDF
Resource-Aware Load Balancing of Parallel Applications
Chapter 3
Enis Afgan, Purushotham Bangalore
Grid computing has emerged as the next generation computing platform. Because of the resource heterogeneity that exists in the grid environment... Sample PDF
Assisting Efficient Job Planning and Scheduling in the Grid
Chapter 4
Kuo-Chan Huang, Po-Chi Shih, Yeh-Ching Chung
Most current grid environments are established through collaboration among a group of participating sites which volunteer to provide free computing... Sample PDF
Effective Resource Allocation and Job Scheduling Mechanisms for Load Sharing in a Computational Grid
Chapter 5
Tevfik Kosar
As the data requirements of scientific distributed applications increase, the access to remote data becomes the main performance bottleneck for... Sample PDF
Data-Aware Distributed Batch Scheduling
Chapter 6
Gianni Pucciani, Flavia Donno, Andrea Domenici, Heinz Stockinger
Data replication is a well-known technique used in distributed systems in order to improve fault tolerance and make data access faster. Several... Sample PDF
Consistency of Replicated Datasets in Grid Computing
Chapter 7
Ming Wu, Xian-He Sun
Rapid advancement of communication technology has changed the landscape of computing. New models of computing, such as business-on-demand, Web... Sample PDF
Quality of Service of Grid Computing
Chapter 8
QoS in Grid Computing  (pages 75-83)
Zhihui Du, Zhili Cheng, Xiaoying Wang, Chuang Lin
This chapter first summarizes popular terms of QoS related concepts and technologies in grid computing, including SLA, End-to-End QoS Provision and... Sample PDF
QoS in Grid Computing
Chapter 9
Kris Bubendorfer, Ben Palmer, Ian Welch
A Grid resource broker is the arbiter for access to a Grid’s computational resources and therefore its performance and functionality has a... Sample PDF
Trust and Privacy in Grid Resource Auctions
Chapter 10
Sandro Fiore, Alessandro Negro, Salvatore Vadacca, Massimo Cafaro, Giovanni Aloisio, Roberto Barbera
Grid computing is an emerging and enabling technology allowing organizations to easily share, integrate and manage resources in a distributed... Sample PDF
An Architectural Overview of the GRelC Data Access Service
Chapter 11
Man Wang, Zhihui Du, Zhili Cheng
Resource Management System (RMS), which manages the Grid resources and matches the applications’ requests to the proper resources, is one of the... Sample PDF
Adaptive Resource Management in Grid Environment
Chapter 12
Vineet R. Khare, Frank Zhigang Wang
The need for a dynamic and scalable expansion of the grid infrastructure and resources and other scalability issues in terms of execution efficiency... Sample PDF
Bio-Inspired Grid Resource Management
Chapter 13
Yuhui Deng, Frank Zhigang Wang, Na Helian
Storage Grid is a new model for deploying and managing the heterogeneous, dynamic, large-scale, and geographically distributed storage resources.... Sample PDF
Service Oriented Storage System Grid
Chapter 14
Dominic Cherry, Maozhen Li, Man Qi
This chapter presents MediaGrid, a distributed storage system for archiving broadcast media contents. MediaGrid utilizes storage resources donated... Sample PDF
A Distributed Storage System for Archiving Broadcast Media Content
Chapter 15
Maozhen Li, Man Qi, Bin Yu
The computational grid is rapidly evolving into a service-oriented computing infrastructure that facilitates resource sharing and large-scale... Sample PDF
Service Discovery with Rough Sets
Chapter 16
Irfan Habib, Ashiq Anjum, Richard McClatchey
Due to some barriers to adoption we have not seen a proliferation of Grid Computing technologies throughout e-Science or other domains. This chapter... Sample PDF
On the Pervasive Adoption of Grid Technologies: A Grid Operating System
Chapter 17
Kurt Vanmechelen, Jan Broeckhove, Wim Depoorter, Khalid Abdelkader
As grid computing technology moves further up the adoption curve, the issues of dealing with conflicting user requirements formulated by different... Sample PDF
Pricing Computational Resources in Grid Economies
Chapter 18
Rosario M. Piro
Large, geographically distributed and heterogeneous computing infrastructures, such as the Grid, often span multiple organizations and... Sample PDF
Resource Usage Accounting in Grid Computing
Chapter 19
Frans Arickx, Jan Broeckhove, Peter Hellinckx, David Dewolfs, Kurt Vanmechelen
Quantum structure or scattering calculations often belong to a class of computational problems involving the aggregation of a set of matrices... Sample PDF
Grid-Based Nuclear Physics Applications
Chapter 20
Gabriel Aparicio, Fernando Blanco, Ignacio Blanquer, César Bonavides, Juan Luis Chaves, Miguel Embid, Álvaro Hernández
In the last years an increasing demand for Grid Infrastructures has resulted in several international collaborations. This is the case of the EELA... Sample PDF
Developing Biomedical Applications in the Framework of EELA
Chapter 21
Gerald Schaefer, Roger Tait
Efficient approaches to computationally intensive image processing tasks are currently highly sought after. In this chapter, the authors show how a... Sample PDF
Distributed Image Processing on a Blackboard System
Chapter 22
Daniele Andreotti, Armando Fella, Eleonora Luppi
The BaBar experiment uses data since 1999 in examining the violation of charge and parity (CP) symmetry in the field of high energy physics. This... Sample PDF
Simulated Events Production on the Grid for the BaBar Experiment
Chapter 23
Diego Liberati
A framework is proposed that creates, uses, and communicates information, whose organizational dynamics allows performing a distributed cooperative... Sample PDF
A Framework for Semantic Grid in E-Science
Chapter 24
Roberto Barbera, Valeria Ardizzone, Leandro Ciuffo
The Grid INFN virtual Laboratory for Dissemination Activities (GILDA) is a fully working Grid test-bed devoted to training and dissemination... Sample PDF
Grid INFN Virtual Laboratory for Dissemination Activities (GILDA)
Chapter 25
Dirk Gorissen, Tom Dhaene, Piet Demeester, Jan Broeckhove
The simulation and optimization of complex systems is a very time consuming and computationally intensive task. Therefore, global surrogate modeling... Sample PDF
Grid Enabled Surrogate Modeling
Chapter 26
Patrik Skogster
Grid computing is becoming as essential part of different business analysis. In traditional business computing infrastructures data transfer occurs... Sample PDF
GIS Grids and the Business Use of GIS Data
Chapter 27
Gokop Goteng, Ashutosh Tiwari, Rajkumar Roy
The emerging grid technology provides a secured platform for multidisciplinary experts in the security intelligence profession to collaborate and... Sample PDF
Grid Computing: Combating Global Terrorism with the World Wide Grid
Chapter 28
Salvatore Scifo
This chapter focuses on the efforts to design and develop a standard pure Java API to access the metadata service of the EGEE Grid middleware, and... Sample PDF
Accessing Grid Metadata through a Web Interface
Chapter 29
Jyotsna Sharma
Efforts in Grid Computing, both in academia and industry, continue to grow rapidly worldwide for research, scientific and commercial purposes.... Sample PDF
Grid Computing Initiatives in India
Chapter 30
Hai Jin, Li Qi, Jie Dai, Yaqin Luo
A grid system is usually composed of thousands of nodes which are broadly distributed in different virtual organizations. Owing to geographical... Sample PDF
Dynamic Maintenance in ChinaGrid Support Platform
About the Contributors