Ferienakademie 2013 kurs 5 multi core multi performance
Download
1 / 14

- PowerPoint PPT Presentation


  • 64 Views
  • Uploaded on

Ferienakademie 2013 – Kurs 5 Multi-Core = Multi-Performance. Sascha Roloff , Frank Hannig , Jürgen Teich Friedrich-Alexander- Universität Erlangen- Nürnberg Erlangen, 10. Juli 2013. Praktischer Teil. 1. Woche : Vornehmlich Vorträge 2. Woche : Programmieraufgabe Programmieraufgabe

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '' - ciara


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Ferienakademie 2013 kurs 5 multi core multi performance

Ferienakademie 2013 – Kurs 5Multi-Core = Multi-Performance

SaschaRoloff, Frank Hannig, JürgenTeichFriedrich-Alexander-Universität Erlangen-Nürnberg

Erlangen, 10. Juli 2013


Praktischer teil
PraktischerTeil

  • 1. Woche: VornehmlichVorträge

  • 2. Woche: Programmieraufgabe

  • Programmieraufgabe

    • Ziel: ImplementierungeinerKette von Bildverarbeitungsalgorithmenin derProgrammiersprache X10

    • Bearbeitung in Teams

      • 2-3 Studenten pro Team

      • Jedes Team implementiert und testeteinenAlgorithmusseparat

    • Integration zueinerKette

      • Teams arbeitengemeinsam an der Integration derAlgorithmen

      • AbspracheüberAustauschderDatenstrukturen

      • TestendergesamtenAlgorithmenkette


Die anwendung objekterkennung
Die Anwendung: Objekterkennung

  • TypischesAnwendungsszenarioausderRobotik

    • RobotererkennteinObjekt und kannihmfolgen(object detection, object tracking)

Fehl-Erkennungen

ErkanntesObjektimSuchbild

ObjektimReferenzbild

Merkmale


Die algorithmen
Die Algorithmen

  • Harris Corner Detection

    • ErkennungderEckeneinesBildes

    • VerwendungalsMerkmale (Features) fürnachfolgendeAlgorithmen

  • SIFT Feature Description

    • SIFT – Scale-Invariant Feature Transform

    • Umwandlungder Harris Corner Features in SIFT Features

  • SIFT Feature Matching

    • Vergleichder SIFT Features des Suchbildesmit den SIFT Features des Referenzbildes und Finden des passendstenKandidaten

Harris Corner Detection

SIFTFeature

Description

SIFT Feature Matching

Camera

Image

Object

Location

Object Recognition Algorithm


Die programmiersprache x10
Die Programmiersprache: X10

  • NeuartigeparalleleProgrammiersprache von IBM

    • Syntax: Mischungaus Java und Scala

  • BietetSprachkonstruktefürParallelität

    • Thread-level Parallelität (gemeinsamerSpeicher)

    • Verteilung von Daten (verteilterSpeicher)

    • Synchronisation, Atomarität

public class Test{

public static def main(args:Array[String](1)) {

finish for(p inPlace.places()) async at (p) {

Console.OUT.println(„Hello, World from “+here.id);

}

}

}


Implementierung und integration
Implementierung und Integration

  • ImplementierungderAlgorithmen in X10

    • Erstsequentiell, dann parallel (wenngenugZeitvorhanden)

  • KopplungderAlgorithmenübereine X10 Task (Aktor) Bibliothek

SIFTFeature

Description in X10

Harris Corner Detection in X10

SIFTFeature Matching in X10

Camera

Image

Harris Corner Features

SIFT Features

Object Position

actor2

actor1

actor3

channel

channel

func2

func1

func3

activities


Die plattform
Die Plattform

  • TestenderAlgorithmenkette auf einerSimulationsplattform

SIFT

Detection

Harris Corner

Camera Images

SIFT

Matching


Vorbereitungen f r die implementierung
Vorbereitungenfür die Implementierung

  • Laptop mitinstalliertem Linux

    • KeinevirtuelleMaschine

    • Linux-spezifischeFunktionenfür Simulation benötigt

  • TestenderProgrammiersprache X10 auf eigenem Laptop

    • Download von der X10 Webseite (x10-lang.org)

    • Version 2.3.1

    • Eclipse-basierteEntwicklungsumgebung X10DT (x86, x86_64)

    • Vorkompilierter Compiler (x86, x86_64)


Detailliertere beschreibung der algorithmen
DetailliertereBeschreibungderAlgorithmen


Harris corner
Harris Corner

sobelX

calculate

autocorrelation matrix

get max response

thresholding response

Harris Corner

SIFT Features

Image Source

sink

src

sobelY

Create corresponding activities for execution on the allocated resources (= claim(actorHarris Corner))

Edges may have FIFO semantic.

Pointers can be exchanged instead of concrete data.


Harris corner1
Harris Corner

sobelX

calculate

autocorrelation matrix

get max response

thresholding response

sink

src

sobelY

Eigenvaluesof M:

1.)

2.)

3.)


Sift feature descriptor
SIFT Feature Descriptor

img

keypoints

keypoints

Harris Corner

SIFT features

image source

calc orientation(s) per keypoint (additional orientations = additional keypoints) based on 36 bin histogram

sobelX

calc descriptor per keypoint relative to its orientation

calc angles and magnitudes of pixels around each keypoint

sink

src

sobelY

img


Sift feature descriptor1
SIFT Feature Descriptor

keypoints

sobelX

calc angles and magnitudes of the gradients of pixels around each keypoint

calc orientation(s) per keypoint (additional orientations = additional keypoints)

calc descriptor per keypoint relative to its orientation

sink

src

sobelY

img

Histogram with 36 bins (1 bin represents 10 degrees) build upon angles and magnitudes of pixel gradients in region around the keypoint (e.g. 16x16)

Result: maximal orientation;

but possibly also further peak orientations  new keypoints

Angle and magnitudes of pixel orientations (=gradients) can be obtained based on Sobel X/Y (which form x and y of the gradient)

descriptor of keypointrelative to its orientation based upon orientations of pixels in 16x16 regions around keypoint collected in 4x4 histograms with 8 bins (128 dimensions)


Sift feature matching
SIFT Feature Matching

Feature matching

SIFT descriptors

Harris Corner

SIFT features

find nearest neighbor feature in model (represented as kdTree for fast search) for each SIFT descriptor

register matches (not on the feature vector but on the coordinates); e.g., using RANSAC

SIFT

descriptors

filter matches;

only accept good (close) matches

src

sink

model