Ultrakurzeinführung OpenCV

Slides:



Advertisements
Ähnliche Präsentationen
A/a 8bit 7bit Fehlende Namen? Prinzip Reduzierung erlaubt Wir assuren nur was wir in Ausweisen lesen.
Advertisements

Imperative Programmierung
3. Operatoren und Ausdrücke
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Variablen und Datentypen
der Universität Oldenburg
Semaphore void Passieren (semaphore &s) { if (s > 0) { s--;
FH-Hof Indirekte Adressierung Richard Göbel. FH-Hof Einfache Speicherung von Daten Eine "einfache" Deklaration definiert direkt eine Speicherplatz für.
Bilder und Rasterdaten
FOR Anweisung.
Basisinformationstechnologie WS 2003/04 T.Schaßan
Diskrete Mathematik I Vorlesung Arrays-
EXtensible Server Pages von Belrhiti El mostafa. Inhalt Was ist XSP ? Wichtige XSP Tags Erstellungsmöglichkeiten Die Basis der XSP.
DVG Gaußscher Algorithmus1 Gaußscher Algorithmus.
DVG Felder1 Felder. DVG Felder 2 Was sind Felder? Felder sind Reihungen aus endlich vielen Elementen gleichen Typs. Z.B.: Vektoren : (x.
Gaußscher Algorithmus
DVG Einfache Klassen 1 Einfache Klassen. 2DVG Einfache KlassenStrukturen Beispiel: Personendaten bestehen aus String name String name.
Schleifen mit der Turtle
Informatik Grundkurse mit Java
RelationentheorieObjektorientierte Datenbanken AIFB SS Das ODMG-Objektmodell vs. relationales Modell (1/9) ODMG-Objektmodell Literal_type Atomic_literal.
Medien- Technik Kapitel 3: Rasterbilder. Medien- Technik media type image representation Farbmodelle (CIE, RGB, HSB, CMYK) Alpha-Kanäle (Transparenzbereiche)
Random Heightmap on GPU
Matrix Multiplication on CUDA
Struktogramme IF-ELSE FOR – Schleife
Bildverarbeitungsalgorithmen Gesamtwiederholung Manfred Thaller, Universität zu Köln Köln 29. Januar 2008.
Grafikformate Nicolas Ruh.
Die Bestimmung des Optical Flow aus Bildsequenzen
GWDG – Kurs Parallelrechner-Programmierung mit MPI MPI Punkt-zu-Punkt-Kommunikation Oswald Haan
Bildbearbeitung GIMP Theorieteil
GPU Computing Burim Kameri Fachhochschule Hannover (FHH)
GPU Computing Burim Kameri Fachhochschule Hannover (FHH)
Die Zählschleife int s = 0 for (int k=1; k
Einführung in die Programmiersprache C 4
Parallel Matrix Multiplication
Parallel Programming Parallel Matrix Multiplication
Informatik 1 Letzte Übung.
Technische Informatik Reihungen – Felder - Arrays.
Informatik I for D-MAVT
Bildbearbeitung Nicolas Ruh.
Astro-AG der VHS Buxtehude
Arduino Kurs Abend 2.
Praxismodul 7 Agenda für heute, 15. Juni, 2006 Dateiformate
Datentypen Überblick Datentypen Einfache / fundamentale Datentypen
1 GEOMETRIE Geometrie in der Technik H. Pottmann TU Wien SS 2007.
Vorlesung 3. if else Anweisung if (Ausdruck) Anweisung1 else Anweisung2 Ausdruck hat einen von 0 verschiedenen Wert, so wird Anweisung 1 ausgeführt. Bei.
Vorlesung 5. #include double fv(double x) { return sin(x); } int main(){ int i,N=10; double a=1,b=2,del,x,sum,f,integral; for(i=1,sum=0.0,del = (b-a)/N;i
Informatik II Grundlagen der Programmierung Programmieren in C printf() mit variabler Feldbreite Hochschule Fulda – FB ET Sommersemester 2014
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
Didaktik der Analytischen Geometrie und Linearen Algebra
A) Erklären Sie den Datentyp char. b) Erklären Sie den Datentyp Struct c) Erklären Sie die Wirkungsweise des Operators & bei Anwendung im Zusammenhang.
Lisa Blum - Kathrin Kunze - Michael Kreil
Java-Kurs - 3. Übung Hausaufgabe Arrays For-Schleifen.
Diskrete Mathematik I Vorlesung 2 Arrays.
Softwaretechnologie für Fortgeschrittene Teil Thaller Stunde III: Bildverarbeitung III Köln 2. Dezember.
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Hinweis Heutige Übung zum Thema Floyd Donnerstag keine Vorlesung.
Grafikformate Nicolas Ruh.
Variablen und Datentypen
...ist die kleinste darstellbare Datenmenge. Es wird in der Informatik, der Informationstechnik und in der Nachrichtentechnik entweder durch 0 oder durch.
EINFÜHRUNG IN DIE BILDVERARBEITUNG Grafiktypen Rastergrafiken (bitmaps) Vektorengrafiken.
JPEG Kodierung Farbraum- wechsel Chroma- Subsampling DCTQuantisierung Beispie l 8x8 Pixel Segment ZigZag Huffmann.
oder: wie Computer die Welt sehen
Digitale Bilder IT-Zertifikat der Phil.-Fak.: Advanced IT Basics
Bildverarbeitung Digitales Bild
oder: wie Computer die Welt sehen
Datentypen: integer, char, string, boolean
Fotoapparate Compactflash SDHC-Karte SD-Karte Flash-Scpeicherkarte.
Ultrakurzeinführung OpenCV Feature Detektoren
Variable: typ varName = Wert Kiste: Art Aufschrift  Inhalt
Lego Mindstorms Java mal anders
Schleifen Datenfelder (Arrays) Verzweigungen
 Präsentation transkript:

Ultrakurzeinführung OpenCV (und ein bisschen Bildverarbeitung)

cv::Mat Enthält Daten verschiedener Formate (z.B float32, double64, uchar8 etc.) Kann mehrere Kanäle enthalten -> RGB-Bilder als 3-kanalige Matrix

Bild einlesen cv::Mat bild = cv::imread(file.path, cv::IMREAD_ANYDEPTH | cv::IMREAD_ANYCOLOR) cv::IMREAD_ANYDEPTH -> erlaubt 16-bit cv::IMREAD_ANYCOLOR -> erlaubt Graubilder

Operationen pro Pixel Grauwertbilder (z.B. Tiefenbild) bild.at<float>(y, x) = 5; float wert = bild.at<float>(y, x); Farbbilder bild.at<cv::Vec3b>(y, x)[0] = 5; //1. Kanal (B) bild.at<cv::Vec3b>(y, x)[1] = 5; //2. Kanal (G) bild.at<cv::Vec3b>(y, x)[2] = 5; //3. Kanal (R) bild.at<cv::Vec3b>(y, x) = cv::Vec3b(0, 255, 0) int wert = bild.at<cv::Vec3b>(y, x)[0];

Operationen (ganzes Bild) for (int idxX = 0; idxX < bild.cols; idxX++) { for (int idxY = 0; idxY < bild.rows; idxY++) if(bild.at<float>(idxY, idxX) > threshVal) bild.at<float>(idxY, idxX) = 0; } cv::threshold(bild, threshBild, threshVal, 1, cv::THRESH_TOZERO_INV);

Operationen (ganzes Bild) cv::Mat kernel = cv::Mat::ones(3, 3, CV_32FC1); kernel = kernel / 9; cv::Mat filteredMat; cv::filter2D(bild, filteredMat, -1, kernel); cv::Laplacian(bild, filteredMat, -1);