Top Banner
Die erste deutsche Scilab-Konferenz Die Image Processing Design Toolbox Dr. Eng. (J) Harald Galda
18

Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Nov 02, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Die erste deutsche Scilab-Konferenz

Die Image Processing Design ToolboxDr. Eng. (J) Harald Galda

Page 2: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Entwicklung von Algorithmen der Bildverarbeitung

❖ Unterscheidung Objekte - Hintergrund

❖ Operatoren (z. B. Filter) auswählen und parametrieren

❖ Ergebnisse visualisieren

Page 3: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Besonderheiten der Bildverarbeitung

❖ Bilder sind 2D- oder 3D-Signale ⇒ große Datenmengen

❖ Beurteilung der Korrektheit nur durch Visualisierung

❖ Parameter finden durch Versuch und Irrtum

Page 4: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Implementierung

❖ Direkt in Scilab?

❖ Programmierung einfach

❖ Rechenzeit viel zu lang

❖ Mit C, C++ oder C#?

❖ Rechenzeit kurz

❖ Programmierung zeitaufwändig

Page 5: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Implementierung

❖ Das beste aus beiden Welten:

❖ Schnittstelle zu Scilab

❖ Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Page 6: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Funktionalität

❖ Bilder von Festplatte laden

❖ Bilder anzeigen

❖ Bilder analysieren, z. B. Histogramm

❖ Operationen, z. B. Filterung, Blobanalyse

❖ Bilder auf Festplatte speichern

Page 7: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Bilder laden und anzeigen

Page 8: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Bilder laden und anzeigen

GrauwertbildFarbbild Bild in Falschfarben

Page 9: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Bilder interaktiv analysieren

GUI für interaktive Bildanalyse aufrufen

Page 10: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Bilder interaktiv analysieren

Position und Grauwert von Pixel unter Mauszeiger

Page 11: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Bilder interaktiv analysieren

Rechteck mit Maus markieren Histogramm des markierten Bereichs

Page 12: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Blobanalyse

Page 13: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Blobanalyse

Schwellwertbild Objektbild

Page 14: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Blobanalyse

Suche nach den beiden größten Objekten

Page 15: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Blobanalyse

Kumuliertes Histogrammder Anzahl von Pixeln

Resultat: die zwei größten Objekte

Page 16: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Blobanalyse

Zu jedem Objekt wird Boundingbox berechnet.

Page 17: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Blobanalyse

Page 18: Image Processing Design - atoms.scilab.orgatoms.scilab.org/toolboxes/IPD/8.3.2/files/Vortrag.pdfSchnittstelle zu Scilab Intern in C und C++ programmiert, hauptsächlich mit OpenCV

Wo herunterladen?

❖ atoms.scilab.org/toolboxes/IPD

❖ Verfügbar für Windows, 32 Bit und 64 Bit

❖ Tutorial über IPD-Toolbox und Grundlagen der Bildverarbeitung