Sony Advertising
Amazon
Forum für die Fotosysteme von Sony und KonicaMinolta
  SonyUserforum - Forum für die Fotosysteme
von Sony und KonicaMinolta
 
Registrieren Rund ums Bild Galerie Objektiv-Datenbank Kalender Forenregeln Nützliches

Startseite » Forenübersicht » Treffpunkt » Café d`Image » Bildverarbeitungsalgorithmen
Antwort
 
Themen-Optionen Ansicht
Alt 20.01.2012, 22:02   #1
fhaferkamp
Moderator
 
 
Registriert seit: 14.04.2006
Ort: Bissendorf, Landkreis Osnabrück
Beiträge: 4.257
Ich habe hier ein Buch von meinem Ex-Prof aus dem Studium gefunden, das man sich herunterladen kann: http://www.rob.cs.tu-bs.de/content/0...uch_150dpi.pdf
Ist allerdings schon etwas älter und behandelt eher die theoretischen Grundlagen der digitalen Bildsignalverarbeitung.
__________________
Gruß Frank

„In der Informatik geht es genau so wenig um Computer, wie in der Astronomie um Teleskope.“
(Edsger W. Dijkstra)
fhaferkamp ist offline   Mit Zitat antworten
Sponsored Links
Alt 21.01.2012, 12:31   #2
hans-peter

Themenersteller
 
 
Registriert seit: 22.01.2005
Ort: München
Beiträge: 244
Zitat:
Zitat von fhaferkamp Beitrag anzeigen
Ich habe hier ein Buch von meinem Ex-Prof aus dem Studium gefunden, das man sich herunterladen kann: http://www.rob.cs.tu-bs.de/content/0...uch_150dpi.pdf
Ist allerdings schon etwas älter und behandelt eher die theoretischen Grundlagen der digitalen Bildsignalverarbeitung.
Danke, das ist ja schon mal was. Interessant, das auch "mein" Prof. Marko da Co-Author ist, merkt man auch an seinem Lieblingsthema Fouriertransformation

Da wird mir auch klar warum Programme wie Digikam (optionale) Abhängigkeiten zu heftigen mathem. Bilbliotheken wie Lapack hat.

Mich hätten allerdings eher weniger die Signalverarbeitungsseite interessiert, mehr Algorithmen wie sie esid kurz beschrieben hat. Also Schärfen, Kontrastmanipulationen, Vergrößern/Verkleinern, Weißabgleich usw.

HP
hans-peter ist offline   Mit Zitat antworten
Alt 21.01.2012, 23:57   #3
fhaferkamp
Moderator
 
 
Registriert seit: 14.04.2006
Ort: Bissendorf, Landkreis Osnabrück
Beiträge: 4.257
Zum Thema Schärfen könnte das folgende Buch vielleicht ganz interessant sein: http://www.amazon.com/gp/product/B00...SIN=B002NQSMWW

Ich habe eine Empfehlung dazu auf folgender Seite gefunden: http://www.cambridgeincolour.com/tut...sharpening.htm

Es ist wohl nicht ganz einfach, die von Dir gesuchten Informationen frei im Netz zu finden. Spannend fände ich die genaue Funktionsweise aktueller Algorithmen dieser Art auch, aber das sind bestimmt eher gut gehütete Geheimnisse z. B. im Adobe-Entwicklungslabor.
__________________
Gruß Frank

„In der Informatik geht es genau so wenig um Computer, wie in der Astronomie um Teleskope.“
(Edsger W. Dijkstra)
fhaferkamp ist offline   Mit Zitat antworten
Alt 22.01.2012, 00:01   #4
alberich
 
 
Registriert seit: 25.08.2006
Ort: Anus Mundi
Beiträge: 4.384
http://www.imatest.com/docs/sharpening/
alberich ist offline   Mit Zitat antworten
Alt 22.01.2012, 11:01   #5
Blitz Blank
 
 
Registriert seit: 26.11.2007
Beiträge: 2.731
Zitat:
Zitat von fhaferkamp Beitrag anzeigen
Es ist wohl nicht ganz einfach, die von Dir gesuchten Informationen frei im Netz zu finden. Spannend fände ich die genaue Funktionsweise aktueller Algorithmen dieser Art auch, aber das sind bestimmt eher gut gehütete Geheimnisse z. B. im Adobe-Entwicklungslabor.
Was Adobe angeht, sicher, aber wer Quelltext lesen kann sollte sich GIMP einmal ansehen, das ist Open Source und das gilt auch für die frei verfügbaren Filter.
Einige davon sind in Script-Fu (Scheme) geschrieben, einige in C.

Ein guter Startpunkt ist m.E. USM, zur Beschreibung der Arbeitsweise (natürlich neben vielen zur Anwendung) findet sich einiges im Netz.

Frank
Blitz Blank ist offline   Mit Zitat antworten
Sponsored Links
Alt 22.01.2012, 11:25   #6
fhaferkamp
Moderator
 
 
Registriert seit: 14.04.2006
Ort: Bissendorf, Landkreis Osnabrück
Beiträge: 4.257
Zitat:
Zitat von Blitz Blank Beitrag anzeigen
Was Adobe angeht, sicher, aber wer Quelltext lesen kann sollte sich GIMP einmal ansehen, das ist Open Source und das gilt auch für die frei verfügbaren Filter.
Einige davon sind in Script-Fu (Scheme) geschrieben, einige in C.
Danke für den ergänzenden Tipp, daran hatte ich auch schon gedacht, aber ich weiß nicht, ob der TE das kann bzw. möchte. Zudem sind die Algorithmen dann meist auf Geschwindigkeit getrimmt und dementsprechend nicht gerade einfach im Quellcode zu verstehen. Hast Du Dir mal eine FFT (Fast Fourier Transformation) im Quellcode angesehen? Wenn man nicht weiß, was der Algorithmus grundsätzlich tut, dürfte das Verstehen eher schwierig werden.
Es geht für die meisten Leser hier bestimmt erst mal um die Unterschiede der verschiedenen Algorithmen: Welches Verfahren hat welche Eigenschaften und wofür ist welcher Algorithmus besser geeignet?
__________________
Gruß Frank

„In der Informatik geht es genau so wenig um Computer, wie in der Astronomie um Teleskope.“
(Edsger W. Dijkstra)
fhaferkamp ist offline   Mit Zitat antworten
Alt 22.01.2012, 14:36   #7
hans-peter

Themenersteller
 
 
Registriert seit: 22.01.2005
Ort: München
Beiträge: 244
Quelltext anschauen kann ich, habe ich tatsächlich auch schon gemacht (digikam). Da sind aber die Algorithmen nicht beschrieben, und dann wirds sehr mühsam. Das ist kein guter Weg, es sei denn die Algorithmen sind explizit beschrieben.

HP
hans-peter ist offline   Mit Zitat antworten
Alt 22.01.2012, 20:23   #8
Neonsquare
 
 
Registriert seit: 12.08.2008
Ort: Nürnberg
Beiträge: 4.198
@hans-peter
Ich kann diese Bibliothek zum anschauen sehr empfehlen:

https://github.com/slyrus/opticl

"opticl is designed to be a high-performance, but relatively lightweight, library for representing, processing, loading, and saving 2-dimensional pixel-based images."

Die Bibliothek ist in Common Lisp geschrieben, was zwar für viele Anfangs ungewohnt ist, sich am Ende aber als großer Vorteil erweist: Common Lisp ist sehr High-Level und eher funktional orientiert. Der Code ist also eher "mathematisch" - damit näher an den Textbüchern. Ebenso ist der Code auf die eigentliche Aufgabe konzentriert und enthält nicht Unmengen an Speicherverwaltungskrampf wie bei C oder C++. Last not least ist der Code recht überschaubar kurz - was eben vor allem an der Konzentration auf das Wesentliche und den High-Level Features von Common Lisp liegt.

z. B. beim Thema Schärfen:
Opticl hat die Funktion SHARPEN-IMAGE folgendermaßen definiert:

Code:
(defun sharpen-image (img)
  (trim-image
    (discrete-convolve img *sharpen-kernel*) 1 1))
"Schärfen" ist hier also eine diskrete Dekonvolution mit einer speziellen Matrix, dem "*sharpen-kernel*". Wie sieht diese Matrix aus?

Code:
(defparameter *sharpen-kernel*
  (normalize-array #2A((-1 -4 -1)
                       (-4 26 -4)
                       (-1 -4 -1))
                   :element-type 'double-float))
Beim Konvolutionskernel handelt sich also um eine quadratische, symmetrische 3x3 Matrix. Interessant dazu auch der Gauss-Kernel:

Code:
(defparameter *gaussian-kernel*
  (normalize-array #2A((1 2 1)
                       (2 4 2)
                       (1 2 1))
                   :element-type 'double-float))
Die Funktion DISCRETE-CONVOLVE ist erstmal etwas länger, weil sie einige Zweige enthält, die für bestimmte Bildtypen (8 Bit RGB, 16 bit RGB usw.) optimiert sind. Die hätte man eigentlich besser in eigene Funktionen aufgeteilt und per Inline optimiert. Der letzte Zweig enthält aber die generische Fassung des Algorithmus. Das sind dann ca. 20 Zeilen die den Algorithmus beschreiben wie jeder Pixel des Zielbildes berechnet wird Anhand der Bildmatrix und des Kernels.

Das schöne daran ist auch, dass man bei Common Lisp mit den Funktionen interaktiv auf der Kommandozeile arbeiten kann. So kann man mit Opticl einfach mal schnell ein Bild einlesen und dann direkt damit herumspielen.

Gruß,
Jochen

Geändert von Neonsquare (22.01.2012 um 20:30 Uhr)
Neonsquare ist offline   Mit Zitat antworten
Antwort
Startseite » Forenübersicht » Treffpunkt » Café d`Image » Bildverarbeitungsalgorithmen


Forenregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:26 Uhr.