• Neuer Gutscheincode unseres Partners Schutzfolien24:
    DSLR-Forum2025
    Dauerhaft 10% Rabatt auf alle Displayschutzfolien und Schutzgläser der Eigenmarken
    "Upscreen", "Screenleaf", BROTECT" und "Savvies".
    Der Code ist für alle Geräteklassen gültig.
  • Mitmachen beim DSLR-Forum Fotowettbewerb Juli 2025.
    Thema: "Unscharf"

    Jeden Monat attraktive Gewinnprämien, gesponsert von unserem Partner PixelfotoExpress.
    Alle Infos zum Juli-Wettbewerb hier!
  • In eigener Sache!

    Liebe Mitglieder, liebe Besucher und Gäste
    ich weiß, es ist ein leidiges Thema, aber ich muss es ansprechen: Werbung, Werbeblocker und Finanzierung des Forums.
    Bitte hier weiterlesen ...

  • Nicht erreichbare Adressen im Benutzerkonto
    Wir bekommen zurzeit eine große Anzahl an E-Mails, die das System zum Beispiel als Benachrichtigungen an Nutzer verschickt,
    als unzustellbar zurück, weil z.B. die Adressen nicht erreichbar sind oder das Postfach gar nicht existiert.
    Stellt doch bitte sicher, dass die Benachrichtigungen, die ihr vom System erwartet, auch zugestellt werden können.
    Nicht erreichbare E-Mail-Adressen sind dazu wenig hilfreich.
    Danke!
WERBUNG

denoising... selfmade :)

hboy

Themenersteller
********** jetzt hatte ich den Text geschrieben und weggeclickt...
also...

nochmal ;)

hatte heute n Nachmittag Zeit und hab 144 Bilder bearbeitet... das mit neat image durchclicksen macht einen Wahnsinnig. Wie ich doch auf so sharewaremurks stehe -.-
Wieso nicht mal n Denoising-Algorithmus schreiben, man hat ja sonst nix zu tun *g*
Im Grunde isses ne ganz einfache Geschichte. Das Rauschen ist ein hochfrequenter Anteil in der Bildinformation. Den kann man rausfiltern. Und wie macht man das, richtig, Weichzeichner drüber. Da bleibt allerdings nich viel vom Bild übrig ;) irgendwie muss man das Bild in Hintergrund und Rauschen zerlegen. Ein Problemchen ist, dass bei den hochfrequenten Anteilen die ganzen Details mit drin stecken die ein Bild scharf machen. So what ?

Meine Software arbeitet nicht mal mit Farbbildern, das wäre nochmal komplizierter das Bild in Alpha und Chrominanz aufzutrennen. Also SW.

Die Funktionalität baut sich auf wie folgt:
1. Filterung
Mit nem Weichzeichner allein ists ja nicht getan. Und ich wollte mich mal an DFT ( Diskrete Fouriertransformation, hä? -> google can ;) oder http://de.wikipedia.org/wiki/Fourier-Transformation) machen. Gesagt getan, schon bald waren die Koeffizienzen erzeugt und ein Bild gefiltert. Bald mache ich 2-dimensionale Fouriertransformation, hab sie jetzt aber in zwei 1-dimensionale Transformationen aufgebröselt. Effekt des Tiefpassfilters ist, dass das Bild schön Glatt wird. Vor allem das Rauschen ist damit weg.

2. Maskierung
Aus der Differenz des gefilterten und des Originalbildes ergibt sich ein Wert. Es wird eine Maske erzeugt, die festlegt, welche Pixel aus dem Quellbild, welche aus dem gefilterten übernommen werden. liegt die Differenz unter dem Schwellwert, wird das gefilterte Bild genommen, damit ist das Rauschen weg. Ist ein Wert über der Grenze, wird das Originalpixel übernommen. Damit bleiben die Details die wirklich ins Bild gehören großteils erhalten.

3. Rekombination
Zukünftig wird die Maske noch geglättet, damit nicht einzelne Pixel durchpieksen ;) Dabei kann man noch die Kanten finden und hervorheben.
Dann muss man nur noch gefiltertes und Orignialbild über die Maske zusammenrechnen und fertig :)

Hoffe euch hats gefallen. Danke fürs lesen :)

PS: ja ich weiß, die Bilder sind nicht der Bringer :D aber es geht ja um die Basics. Zum Verglichen eignen sich die Details beim Blatt links oben und die flauen Flächen die vom Rauschen befallen waren :)
 
Zuletzt bearbeitet:
Respekt, starkes Projekt, einfach mal was zu machen, um zu sehen, was dabei herauskommen kann. Mir fallen da Wellenfronten rund um alle Kanten auf.
 
Nachtrag:
hab das mit der geglätteten Maske jetzt mal versucht. Und schon sind die krümelchen weg. Mit den Filterartefakten gibts aber immer noch probleme :(
morgen weiter dran schrauben
 
lol dann eben noch nich bett. neue Bilderli:
Die Maske wird mit den Komparatorwerten erstellt und danach bilinear gefiltert. Das filtern ist ziemlich schnell *überleg* vielleicht nehm ich ja einen FIR Filter oder bilineares filtern....mmmmh
 
einen Vergleich habe ich noch. Hab jetzt zusätzlich zu dem Fourierfilter mal alternativ einen bilinearen Filter implementiert... gnadenlos schnell :)
 
solche Puzzlearbeiten machen immer Spaß - kenne ich :D

Aber das NeatImage-Ergebnis finde ich dennoch am besten in dem Vergleich.

Bei Deinem Algorithmus sehe ich viele Wellen um die Objekte - das soll bestimmt nicht so sein?
 
*sollte* nicht sein ja... hab noch die Hüllkurve optimiert aber die artefakte bleiben beim fourierfilter :/ "you can't fool maths, maths fools you!" wie man so schön sagt. Bis ich dahintersteige woher die Artefakte kommen, ist der bilineare Filter das Mittel der Wahl, auch wenns des öfteren danebenhaut.
Neat Image kostet aber geld, das muss schon was bieten ;)
Dafür werde ich dann ein Feature reinpacken dass man die Maske in echtzeit modifizieren und previewen kann, also noch ein Wischfingerchentool mit dem man krümelchen rausbügeln kann. Die treten auch bei neat image auf und stören mich sehr :)
 
hboy,
interessantes Projekt. Nur am Rande bemerkt, ich kenne neat image nicht da ich picturecooler verwende (freeware). Da geht naemich auch Batchverarbeitung eines ganzen Verzeichnisses :)
Gruss
Stephan
 
WERBUNG
Zurück
Oben Unten