EagleEye

From HP-SEE Wiki

Revision as of 13:03, 30 June 2011 by Compphys (Talk | contribs)
Jump to: navigation, search

Contents

General Information

  • Application's name: EagleEye - Feature Extraction from Satellite Images Using a Hybrid Computing Architecture
  • Virtual Research Community: Computational Physics
  • Scientific contact: Emil Slusanschi, emil.slusanschi@cs.pub.ro
  • Technical contact: Nicolae Tapus, nicolae.tapus@cs.pub.ro
  • Developers: Razvan Dobre, Alexandru Herisanu, Alexandru Olteanu, Emil Slusanschi
  • Institution: University Politehnica of Bucharest / Computer Science and Engineering, Romania
  • Web site: http://cluster.grid.pub.ro/

Short Description

The topic of analyzing aerial and satellite images for the purpose of extracting useful features has always been an interesting area of research in the field of machine vision. From identifying terrain features like forests, agricultural land, waterways and analyzing their evolution over time, to locating man-made structures like roads and buildings, the possible applications are numerous.

Problems Solved

The purpose of the application is to use the Cell B.E. hybrid architecture to speed up the tasks, by employing relatively simple algorithms yielding good results. Two different subtasks are treated: identifying straight roads (based on the Hough transform), and terrain identification (using the technique of texture classification). These techniques give good results and are sufficiently intensive computational to take advantage of parallelization and Cell B.E. acceleration. However, in order to obtain good results, powerful computationally intensive algorithms must be used. Also, the large datasets usually processed require significant time and computer resources. To address this problem, parallel computing is employed. By splitting the load on multiple nodes, computation time is reduced and, depending on the algorithms used, the application can scale in an almost linear fashion. The IBM Cell Broadband Engine (Cell B.E.) is used as a middle ground between the two categories of general purpose CPUs and dedicated signal processors. It has one Power Processor Element (PPE) and 8 Synergistic Processor Elements (SPEs). The SPEs are optimized for running compute intensive single-instruction, multiple-data (SIMD) applications. By converting the processing algorithms to the Cell B.E. SIMD architecture and running them on its 8 SPEs, a significant speed up is achieved as compared to a general purpose X86 CPU. The downside is that in order to take advantage of the Cell B.E. capabilities the original code cannot just be recompiled, but the algorithm must also be adapted to the new architecture. This is usually not a trivial matter and takes a significant amount of time and engineering.


Scientific and Social Impact

The application will allow for automatic detection and classification of features in large datasets of high-resolution satellite images. The analysis of satellite images with the ability to features like forests, agricultural land, and waterways will allow for the development of applications with significantly improved capabilities.

Collaborations and Beneficiaries

Romanian National Meteorological Agency: http://www.meteoromania.ro/index.php?id=0&lang=en

Technical Features and HP-SEE Implementation

  • Primary programming language: C/C++
  • Parallel programming paradigm: Cell/B.E. Programming, GPU Programming, PThreds, OpenMP, MPI
  • Main parallel code: Feature extraction code, 3D Visualization Code
  • Pre/post processing code: None
  • Application tools and libraries: OpenCV
  • Number of cores required: 224
  • Minimum RAM/core required: 2GB/Core
  • Storage space during a single run: 50-70GB
  • Long-term data storage: 70-100GB

Usage Example

The first algorithm from which we started can be split up into four parts: applying a median filter on the original image, grayscale conversion, applying Canny edge detection on the blurred black and white image and applying the Hough transform on the image resulted from canny edge detection. The result is a set of line segments representing possible roads that get mapped onto the original image. The execution flow is presented in the following picture:

EagleEye Algorithm 1.jpg

An improved implementation adapts the Canny Edge Detector thresholds based on the input images. The median �filter size is between 5 and 13 with a �fixed step of two. Also, the Hough transform parameters are derived in very simple manner from the median filter size: segment size is �filter size plus 5, while maximum segment distance is 2 (static assignment). Also, the criteria function for selecting and linking segments in the Hough transform still has some hard coded parameters. The Segment Selection step only fi�lters a small number of false positives. Linking road segments that are far apart is di�cult in this stage because of the large number of false positives obtained from the Hough transform step. Also, a metric for linking road segments and �filtering out lines between �fields that are closer seems di�cult to achieve at this point. The improved algorithm is displayed in the following diagram:

EagleEye Algorithm 2.jpg

Publications

  • „Towards efficient video compression using scalable vector graphics on the Cell/B.E.”, A. Sandu, E. Slusanschi, A. Murarasu, A. Serban, A. Herisanu, T. Stoenescu, International Conference on Software Engineering, IWMSE '10: Proceedings of the 3rd International Workshop on Multicore Software Engineering, Cape Town, South Africa, 2010, pag. 26-31. ISBN: 978-1-60558-964-0.
  • „Cell GAF - a genetic algorithms framework for the cell Broadband Engine”, M. Petcu, C. Raianu, E. Slusanschi, Proceedings of the 2010 IEEE 6th International Conference on Intelligent Computer Communication and Processing, Cluj-Napoca, Romania, ISBN: 978-1-4244-8228-3, 2010.
  • „Parallel Numerical Simulations in Aerodynamics”, Marius Poke, E. Slusanschi, Damian Podareanu, Alexandru Herisanu, to appear in Proceedings of the 18th International Conference on Control Systems and Computer Science (CSCS18), May, 2011.
  • „Airflow Simulator Heat Transfer Computer Simulations of the NCIT-Cluster Datacenter”, A. Stroe, E. Slusanschi, A. Stroe, S. Posea, to appear in Proceedings of the 18th International Conference on Control Systems and Computer Science (CSCS18), May, 2011.
  • „Mapping data mining algorithms on a GPU architecture: A study”, A. Gainaru, S. Trausan-Matu, E. Slusanschi, to appear in Proceedings of the 19th International Symposium on Methodologies for Intelligent Systems, Warsaw, Poland, June 2011.
Personal tools