Hellworm
Themenersteller
Edit: Habs endlich auch für windwos zum laufen gebracht. Siehe unten
Vor einer weile habe ich die Olympus E500 gekauft. Natürlich wusste ich das sie nicht das beste Rauschverhalten hat. Ich hatte aber nicht vor mit hohen ISO-Werten zu arbeiten (und habs bisher auch selten gemacht). Bei ein paar Aufnahmen musste ich aber dann doch auf die hohe Empfindlichkeit zurückgreifen und hab anschließend nach einem weg gesucht das Rauschen zu entfernen. Dabei ist mir der große Mangel an guter auch nur überhaupt brauchbarer Software für diesen Bereich auf Linux aufgefallen. Das einzige was ich gefunden habe ist dieser exzellente Videofilter von Alexander G. Balakhnin aka Fizick. Lange rede kurzer Sinn, ich habe den filter auf linux portiert, so dass er jetzt Bilder im ppm-Format läd und speichert und ein paar Funktionen hinzugefügt.
Features:
- Blockweises Entrauschen mit einem optimalen Wiener Filter im Fourierraum
- Arbeitet im Lab-Farbraum
- Filterstärke lässt sich abhängig von der Helligkeit und für jeden Farbkanal einzeln regeln
- Blockgröße lässt sich für jeden Farbkanal einzeln wählen
Beschränkungen:
- liest und schreibt nur 8bit-rgb-ppm datein und nimmt für die Bilder den sRGB-Farbraum an
- nur unter Linux getestet
Zur installation:
Linux:
es werden die Entwicklungspakete von lcms und fftw3 benötigt (Unter debian: liblcms1-dev und fftw3-dev). Sind diese installiert dann einfach den angehängten Quellcode herunterladen, entpacken und mit
gcc gdenoise.c -o gdenoise -lfftw3f -llcms -O3
oder
gcc gdenoise.c -o gdenoise -lfftw3f -llcms -O3 -fvariable-expansion-in-unroller -funroll-loops -ftracer -ftree-vectorize -funsafe-loop-optimizations -fprefetch-loop-arrays -msse -mfpmath=sse -march=PROZESSORTYP
compilieren.
Danach unter Umständen nach /usr/local/bin kopieren oder direkt ausführen.
Windows:
Die zip dateien (Achtung!dlls nicht vergessen) im Anhang herunterladen, entpacken, die dlls nach windows\system32 kopieren und die exe aus der kommandozeile (ausführen->cmd) aufrufen.
Benutzung:
gdenoise ist ein Programm für die Kommandozeile. Wenn man es mit "-h" aufruft erscheint eine kurze Hilfe.
Hier die ausfühliche Version:
Allgemein: gdenoise -o outfile.ppm infile.ppm
Argumente:
-v gibt einige informationen und den Fortschritt aus.
-b [Blockgröße] Die Blockgröße muss zwischen 8 und 64 liegen und ein mehrfaches von 2 sein. Wenn für die Farbkanäle andere Werte benutzt werden sollen kann man sie mit doppelpunkte abgetrennt hinter die erste Zahl schreiben. "-b 8:32:64" würde für die Helligkeit die Blockgröße 8, für den Farbkanal a die größe 32 und für kanal b die größe 64 benutzen.
Größere blocke bedeuten ein besseres entrauschen aber dafür mehr Artefakte um kanten im Bild.
-s [Filterstärke] Je größer desto mehr rauschen wird entfernt. Kann ebenfalls für die Farbkanäle zusätzlich angegeben werden. Außerdem kann man nochmal 3 Zahlen anhängen um abhängig von der Helligkeit zu filtern. Die zweiten Zahlen geben dann die stärke im weißen bereichen, die ersten in schwarzen an.
-s2 [Filterstärke] für Tiefere Frequenzen. Erlaubt es Tiefe Frequenzen, das heisst "grobes" Rauschen anders zu filtern als das restliche. Syntax genauso wie bei -s.
-lab [1-3] Damit lassen sich nur die einzelnen Lab-kanäle in Graustufen ausgeben: 1-helligkeit, 2/3-Farbe
-p <xoffset>:<yoffset>:<breite>:<höhe> Filtert nur ein Teil des Bildes
-slow [1-6] je größer desto langsamer für ein bisschen höhere Qualität. default:3
-h --help Gibt eine Kurzhilfe aus
Tipps:
- Farbrauschen lässt sich sehr gut und fast ohne störende Nebeneffekte entfernen. Generell sollten die Farbkanäle stärker und mit größeren Blockgrößen gefiltert werden
- mit -lab lassen sich die einzelnen Kanäle anzeigen, das ist besonders nütlich für das Feintuning.
Ich hoffe dieses programm wird ein paar Leuten nützlich sein. Außerdem möchte ich mich noch mal bei Fizick bedanken ohne dessen großartigen Filter dieses programm nie zustande gekommen wäre.
Versionen:
0.1.1
- Bugfix: Filterstärke war bei den Farbkanälen nicht von der Helligkeit abhängig
- Feature: neuer Parameter -p um nur einen Teil zu filtern
- Feature: neuer Parameter -s2 für Tiefe frequenzen
- Feature: neuer Parameter -slow um Qualität/Geschwindigeit zu regeln.
0.1
- erste Veröffentlichung
Vor einer weile habe ich die Olympus E500 gekauft. Natürlich wusste ich das sie nicht das beste Rauschverhalten hat. Ich hatte aber nicht vor mit hohen ISO-Werten zu arbeiten (und habs bisher auch selten gemacht). Bei ein paar Aufnahmen musste ich aber dann doch auf die hohe Empfindlichkeit zurückgreifen und hab anschließend nach einem weg gesucht das Rauschen zu entfernen. Dabei ist mir der große Mangel an guter auch nur überhaupt brauchbarer Software für diesen Bereich auf Linux aufgefallen. Das einzige was ich gefunden habe ist dieser exzellente Videofilter von Alexander G. Balakhnin aka Fizick. Lange rede kurzer Sinn, ich habe den filter auf linux portiert, so dass er jetzt Bilder im ppm-Format läd und speichert und ein paar Funktionen hinzugefügt.
Features:
- Blockweises Entrauschen mit einem optimalen Wiener Filter im Fourierraum
- Arbeitet im Lab-Farbraum
- Filterstärke lässt sich abhängig von der Helligkeit und für jeden Farbkanal einzeln regeln
- Blockgröße lässt sich für jeden Farbkanal einzeln wählen
Beschränkungen:
- liest und schreibt nur 8bit-rgb-ppm datein und nimmt für die Bilder den sRGB-Farbraum an
- nur unter Linux getestet
Zur installation:
Linux:
es werden die Entwicklungspakete von lcms und fftw3 benötigt (Unter debian: liblcms1-dev und fftw3-dev). Sind diese installiert dann einfach den angehängten Quellcode herunterladen, entpacken und mit
gcc gdenoise.c -o gdenoise -lfftw3f -llcms -O3
oder
gcc gdenoise.c -o gdenoise -lfftw3f -llcms -O3 -fvariable-expansion-in-unroller -funroll-loops -ftracer -ftree-vectorize -funsafe-loop-optimizations -fprefetch-loop-arrays -msse -mfpmath=sse -march=PROZESSORTYP
compilieren.
Danach unter Umständen nach /usr/local/bin kopieren oder direkt ausführen.
Windows:
Die zip dateien (Achtung!dlls nicht vergessen) im Anhang herunterladen, entpacken, die dlls nach windows\system32 kopieren und die exe aus der kommandozeile (ausführen->cmd) aufrufen.
Benutzung:
gdenoise ist ein Programm für die Kommandozeile. Wenn man es mit "-h" aufruft erscheint eine kurze Hilfe.
Hier die ausfühliche Version:
Allgemein: gdenoise -o outfile.ppm infile.ppm
Argumente:
-v gibt einige informationen und den Fortschritt aus.
-b [Blockgröße] Die Blockgröße muss zwischen 8 und 64 liegen und ein mehrfaches von 2 sein. Wenn für die Farbkanäle andere Werte benutzt werden sollen kann man sie mit doppelpunkte abgetrennt hinter die erste Zahl schreiben. "-b 8:32:64" würde für die Helligkeit die Blockgröße 8, für den Farbkanal a die größe 32 und für kanal b die größe 64 benutzen.
Größere blocke bedeuten ein besseres entrauschen aber dafür mehr Artefakte um kanten im Bild.
-s [Filterstärke] Je größer desto mehr rauschen wird entfernt. Kann ebenfalls für die Farbkanäle zusätzlich angegeben werden. Außerdem kann man nochmal 3 Zahlen anhängen um abhängig von der Helligkeit zu filtern. Die zweiten Zahlen geben dann die stärke im weißen bereichen, die ersten in schwarzen an.
-s2 [Filterstärke] für Tiefere Frequenzen. Erlaubt es Tiefe Frequenzen, das heisst "grobes" Rauschen anders zu filtern als das restliche. Syntax genauso wie bei -s.
-lab [1-3] Damit lassen sich nur die einzelnen Lab-kanäle in Graustufen ausgeben: 1-helligkeit, 2/3-Farbe
-p <xoffset>:<yoffset>:<breite>:<höhe> Filtert nur ein Teil des Bildes
-slow [1-6] je größer desto langsamer für ein bisschen höhere Qualität. default:3
-h --help Gibt eine Kurzhilfe aus
Tipps:
- Farbrauschen lässt sich sehr gut und fast ohne störende Nebeneffekte entfernen. Generell sollten die Farbkanäle stärker und mit größeren Blockgrößen gefiltert werden
- mit -lab lassen sich die einzelnen Kanäle anzeigen, das ist besonders nütlich für das Feintuning.
Ich hoffe dieses programm wird ein paar Leuten nützlich sein. Außerdem möchte ich mich noch mal bei Fizick bedanken ohne dessen großartigen Filter dieses programm nie zustande gekommen wäre.
Versionen:
0.1.1
- Bugfix: Filterstärke war bei den Farbkanälen nicht von der Helligkeit abhängig
- Feature: neuer Parameter -p um nur einen Teil zu filtern
- Feature: neuer Parameter -s2 für Tiefe frequenzen
- Feature: neuer Parameter -slow um Qualität/Geschwindigeit zu regeln.
0.1
- erste Veröffentlichung
Zuletzt bearbeitet: