Was macht eigentlich der „Hochpass“-Filter von Photoshop unter der Haube?

Ich versuche, meinen Kopf um diesen Filter zu wickeln. Wie bei einigen anderen Filtern verstehe ich nicht, wie es funktioniert, sowohl visuell als auch in Bezug auf den Algorithmus. Ich hoffe, dass durch das Erlernen des Letzteren auch Ersteres irgendwie einrastet.

Erwäge als Nächstes zu fragen, was Brauchtum ist ;)
Wenn Sie den Algorithmus verstehen möchten, empfehle ich The Scientist and Engineer's Guide to Digital Signal Processing .
Überprüfen Sie diesen Fall: graphicdesign.stackexchange.com/questions/98558/… Es gibt eine Antwort, die im Detail zeigt, 1) wie die HP-Filterung von Photoshop intern funktioniert. 2) Das angenommene Arbeitsprinzip erzeugt dasselbe wie der HP-Filter. Die Geschichte basiert nicht auf der Demontage von Photoshop. Es enthält eine Annahme: Die HP-Filterung von Photoshop erfolgt durch Subtrahieren einer unscharfen Version desselben Bildes vom Bild.

Antworten (4)

Hochpass ist das Gegenteil von Gaußscher Unschärfe

Wenn Sie ein Bild aufnehmen und es verwischen, behalten Sie nur die "niedrigen Frequenzen". Hochpass macht das Gegenteil, er lässt nur die "hohen Frequenzen" passieren, oder was die meisten Leute "die Details" nennen. Jedes Bild kann in diese beiden Komponenten zerlegt werden.

dekonstruiertes Bild

Haben Sie eine Unscharfmaske verwendet, um ein Bild zu schärfen? Dieser Filter entspricht eigentlich dem Aufnehmen eines Bildes und dem Hinzufügen einer hochpassgefilterten Kopie. Sie können dies in Photoshop bestätigen, indem Sie den Hochpassfilter auf eine duplizierte Ebene anwenden und den Mischmodus auf Überlagern ändern.

Geben Sie hier die Bildbeschreibung ein

Möglicherweise möchten Sie hinzufügen, dass das Bild wegen seines Versatzes grau ist, um negative Werte zu vermeiden. Und Overlay ist im Grunde alles über 128 addieren und Werte darunter subtrahieren. Unsharpmask ist also im Grunde ein Verstärkungsfilter für hohe Frequenzen. Ich füge eine entsprechende Antwort hinzu, würde sie jedoch lieber zugunsten Ihrer Antwort löschen. Außerdem gibt es noch einen dritten Anwendungsfall, nämlich die Frequenztrennung.
Kleine Spitzfindigkeit: 1. Satz: „Filtert heraus“ bedeutet „eliminiert“, ein Tiefpassfilter (Blur) „filtert also nicht die tiefen Frequenzen heraus“. Hochpassfilter (lässt hohe Frequenzen passieren); Tiefpassfilter (lässt niedrige Frequenzen passieren). Ein Tiefpassfilter wird auch als „Hochpassfilter“ bezeichnet, da er hohe Frequenzen eliminiert. Und so ist es, wenn ein Hochpass ein Tiefpass ist.
joojaa- guter Kommentar. Yorik - danke, behoben.
Heiliger Strohsack. Nehmen Sie ein Bild in eine Photoshop-Datei auf. Duplizieren Sie die Ebene mit dem Bild darin. Unschärfe (Wert 10) auf Ebene 1. Hochpassfilter (Wert 10) auf Ebene 2. Ebene 2 auf 50 % Deckkraft einstellen. Fügen Sie eine Kontrastebene hinzu, stellen Sie sie auf Legacy und +50 Kontrast ein. Vergleichen Sie das mit dem Originalbild. Verblüfft. Das erklärt perfekt, was das alles bewirkt.
@DirkvB Ich habe versucht, was du gesagt hast und es hat funktioniert. Können Sie die Gründe für 50 % Deckkraft und +50 Kontrast erklären? Beachten Sie auch, dass diese Methode das Originalbild genau nachbildet, aber nicht identisch ist (führen Sie einfach eine Differenzmischung zwischen Original und diesem aus, um zu sehen, was ich meine).
Danke für den Hinweis auf die Unterschiedsmischung. Das ist großartig! Ich denke, auf hohem Niveau geht es darum, zwei Bilder zusammenzufügen, indem man jeweils die Hälfte nimmt. Du verlierst Daten von beiden, wodurch die Bandbreiten "abgeflacht" werden. "Bereiche" bezieht sich auf die Farbwerte des Pixels. Ich bin kein Spezialist (Mathematik ist nicht meine Stärke), daher kann ich nur erklären, wie es für mich sinnvoll war :) Wenn Sie zufällig eine bessere Antwort finden, teilen Sie sie!

Ein Hochpassfilter ist ein Filter, der niederfrequente Informationen aus einem Signal entfernt. Nun gibt es viele Möglichkeiten, einen Hochpassfilter zu implementieren, aber der Hochpassfilter von Photoshop ist höchstwahrscheinlich das Ergebnis, indem das unscharfe Bild vom Original subtrahiert wird (wie von @filip erwähnt ). Einfach das gesamte Bild abzüglich der niedrigen Frequenz ist nur die hohe Frequenz.

Wenn Sie nun eine Unschärfe von einem Bild subtrahieren, erhalten Sie am Ende negative Pixel. Dies ist bei Photoshop nicht möglich. Was stattdessen getan wird, ist, dass das Ergebnis um 127 (oder 0,5, wenn Sie Gleitkommawerte haben möchten) versetzt wird, sodass Grau tatsächlich keine Wertänderung bedeutet. Der Überlagerungs- und der lineare Lichtmodus sind so konzipiert, dass sie auf diese Weise codierte Bilder invertieren (Bit, je nachdem, was Sie stückweise Multiplikation/Addition oder Addition/Subtraktion benötigen).

Wofür würden Sie das jetzt verwenden? Nun, es kann sich daran gewöhnen, Kanten zu isolieren, und der primäre Anwendungsfall besteht darin, es als Werkzeug zum Schärfen zu verwenden. Tatsächlich erledigt die Unscharfmaske dies in einem Schritt. Manchmal gibt Ihnen die unscharfe Maske jedoch nicht genügend Kontrolle über die Ergebnisse. Sie können also den Hochpassfilter verwenden, um die Zwischenstufe aufzuteilen und ihn zu manipulieren, um zu steuern, wo die Schärfung stattfinden soll und wo nicht.

Das bringt uns zu Frequenztrennungs- Workflows, sehen Sie, es kann sein, dass Ihr Bild etwas ungleichmäßig hell ist oder oft ist die Haut etwas uneben. Aber Sie möchten nicht unbedingt die Textur des Bildes zerstören. Jetzt teilen Sie also Ihr Bild in niedrige und hohe Komponenten auf. Sie können dann die niedrigen Komponenten in einer einheitlichen Moiré-Farbe malen, während Sie die Texturebene oben beibehalten. Oder Sie können das Gegenteil tun, um Fehler in der Hochfrequenzkarte zu beseitigen, während Sie das allgemeine Erscheinungsbild beibehalten. Aus Genauigkeitsgründen würden Sie höchstwahrscheinlich nicht sowohl Unschärfe als auch Hochpass verwenden, sondern manuell subtrahieren, aber dies ist immer noch dieselbe Methode, nur Unschärfe und Rundung der Ergebnisse unterscheiden sich.

Beispiel

Bild 1 : Frequenztrennung erleichtert das Reparieren alter Schuhe, zugegebenermaßen hätte ich etwas mehr Arbeit machen sollen. Originalbild von hier .

Jetzt gibt es eine Menge Magie, die Sie mit diesem Filter machen können. Aber leider müssen Sie bei vielen dieser magischen Workflows wie ein Signalverarbeitungs-Guru denken. Beispielsweise kann Hochpassfilterung als Grundlage für einen Rauschunterdrückungsalgorithmus oder als Gleichrichtungsschicht für die Entfernung von Bildhelligkeitsmaskierung usw. dienen.

Keine der bisherigen Antworten hat die Mathematik hinter dem Filter berührt. Hier ist eine ausführliche Beschreibung, aus der ich zitiere:

Frequenzfilter verarbeiten ein Bild im Frequenzbereich. Das Bild wird Fourier-transformiert, mit der Filterfunktion multipliziert und dann wieder in den räumlichen Bereich transformiert. Das Abschwächen hoher Frequenzen führt zu einem glatteren Bild im räumlichen Bereich, das Abschwächen niedriger Frequenzen verstärkt die Kanten.

An dieser Stelle sollten wir anmerken, dass ein Hochpassfilter hohe Frequenzen durchlässt und tiefe Frequenzen dämpft (dh reduziert) .

Als Ergebnis des Abschwächens (oder Blockierens) der niedrigen Frequenzen sind Bereiche mit konstanter Intensität im Eingangsbild Null im Ausgang des Hochpassfilters. Bereiche mit einem starken Intensitätsgradienten, der die hohen Frequenzen enthält, haben positive und negative Intensitätswerte in der Filterausgabe. Um das Bild auf dem Bildschirm darzustellen, wird der Ausgabe im Ortsraum ein Offset hinzugefügt und die Bildintensitäten skaliert. Daraus ergibt sich ein mittlerer Grauwert für niederfrequente Bereiche und dunkle und helle Werte für die Ränder.

(Dieses Zitat stammt etwa aus der Mitte und geht einem Beispielbild voraus, das sehr hilfreich sein sollte).

Der Artikel, den ich verlinkt habe, ist sehr lesenswert und enthält einige recht klare Beispiele (klicken Sie auf die Bilder). Es ist zu lang, um es zusammenzufassen, und stützt sich auf die darin enthaltenen Zahlen.

und nur für den Laien: abschwächen bedeutet "die Kraft, den Wert oder die Wirkung verringern"
@Yorik das ist mir nicht eingefallen. Es ist ein Wort, das ich täglich in meiner Arbeit verwende. Bearbeitet
@ChrisH Die Fourier-Transformation ist eine Möglichkeit, einen Hochpassfilter zu implementieren (allerdings nicht die einzige), aber ich bin mir aus früheren Experimenten ziemlich sicher, dass Photoshop einen Fourier nicht direkt durchführt, sondern stattdessen eine Unschärfe subtrahiert. Es kann jedoch sein, dass neuere Photoshops tatsächlich Fourier für die Unschärfe verwenden (Vor-CS-, CC-Versionen haben dies anscheinend nicht getan), da es eine Abkürzung für die Berechnung der Unschärfe bietet .... Aber FFT hat seinen Anteil an Problemen und könnte das sein PS spritzt eigentlich nur einen Faltungskern ohne diese Optimierung in der Schleife. Also habe ich tatsächlich erklärt, wie der Filter gemacht wird.
@joojaa Das Subtrahieren einer Unschärfe ist jedoch das, was die unscharfe Maske bewirkt, und es gibt beide Optionen, daher habe ich meine Zweifel. Wenn ich Photoshop hätte, würde ich versuchen zu testen (obwohl die Form des Filters in der Fourier-Domäne unbekannt ist, wenn es schwierig wäre, eindeutig zu beweisen, was verwendet wird). Alles, was ich in Gimp testen könnte, würde nicht viel helfen.
@ChrisH Nun, Sie erhalten beide aus derselben Operation und Codebasis. Nur Higpass war in der Vergangenheit nützlicher, als Sie keine zerstörungsfreien Bearbeitungen vornehmen konnten. Aber die Operationen liefern genau die gleichen Ergebnisse oder zumindest haben sie die gleichen Ergebnisse erzielt, als ich das letzte Mal vor etwa 1,5 Jahren getestet habe. Ebenso könnten Sie eine unscharfe Maske mit einem Fourier oder einer der anderen frequenzbereichsbezogenen Transformationen durchführen. Sie sind mathematisch äquivalent, obwohl sie in diskreten Lösungen unterschiedliche Grenzbedingungen haben können.
Ziemlich sicher, dass es sich um einen Faltungskern handelt, nicht um eine FT. Siehe zum Beispiel den "benutzerdefinierten" Filter, mit dem Sie den Kernel direkt definieren können. Alle anderen Filter bauen nur die Kernel für Sie mit einigen menschenfreundlichen Parametern.
@OrangeDog Ich kann es nicht ausschließen, aber nur weil einige Filter definitiv einen Faltungskern verwenden, heißt das nicht, dass alle dies tun. Faltungsbasierte Hochpassfilter können rauschanfällig sein, aber ich sehe, dass dort einige Verbesserungen vorgenommen werden müssen
@ChrisH- und Fourier-Transformationen bei diskreten Daten sind ebenfalls anfällig für Rauschen.
@OrangeDog sind sie in der Tat; Ich benutze sie die ganze Zeit. Welcher Ansatz für Rauschen schlechter ist, hängt wahrscheinlich von der Art des Rauschens und des Signals ab
Sicherlich ist für große Bilder auf Computern eine Faltung auch viel schneller als ein FT-Prozess. Es ist nur ein einziger Durchlauf des Bildes und kann manchmal an Ort und Stelle durchgeführt werden, ohne dass eine weitere Kopie des Puffers zugewiesen werden muss.
@OrangeDog das ist sicherlich wahr.

High Pass ist ein Schärfungsfilter. Man könnte sagen, es ist eine Mischung aus "Kanten erkennen" und "Schärfen". Scharfzeichnen erkennt plötzliche Änderungen zwischen Pixelhelligkeit oder -farbe und ändert sie dann. Helle Teile sind also heller und dunklere dunkler.

Aber die Hochpass-Aufgabe besteht darin, nur die Kanten zu bemerken. Die Radiuseinstellung teilt dem Filter mit, wie viele Pixel um die erkannte Kante herum in das gefilterte Bild (Schicht) eingeschlossen werden sollen.

Nun, dieser Filter ist nicht dafür ausgelegt, für sich selbst verwendet zu werden (deshalb, denke ich, befindet er sich in einem anderen Katalog), Sie sollten das gefilterte Bild mit dem Basisbild verwenden, indem Sie Mischmodi oder ähnliches verwenden, um die Kanten auf dem Bild hervorzuheben. Aus diesem Grund ist der "nicht enthaltene" Teil des Bildes neutral grau. Sie wirken sich also im Mischmodus nicht auf die Farben aus.