Que fait réellement le filtre «High Pass» de Photoshop sous le capot?

18

J'essaie d'enrouler ma tête autour de ce filtre. Comme certains autres filtres, je trouve que je ne comprends pas comment cela fonctionne, à la fois visuellement et en termes d'algorithme. J'espère qu'en apprenant ce dernier, le premier cliquera également.

Adi
la source
1
Pensez à demander quelle est la coutume pour la prochaine;)
joojaa
Si vous voulez comprendre l'algorithme, je suggère le Guide du scientifique et de l'ingénieur pour le traitement numérique du signal .
Phil Frost
Vérifiez ce cas: graphicdesign.stackexchange.com/questions/98558/… Il y a une réponse qui montre en détail 1) comment le filtrage HP de Photoshop fonctionne en interne 2) le principe de fonctionnement supposé crée le même que le filtre HP. L'histoire n'est pas basée sur le démontage de Photoshop. Il contient une hypothèse: le filtrage HP de Photoshop se fait en soustrayant de l'image une version floue de la même image.
user287001

Réponses:

28

Le passe-haut est l'opposé du flou gaussien

Si vous prenez une image et la brouillez, vous ne gardez que les "basses fréquences". Le passe-haut fait le contraire, il ne laisse passer que les "hautes fréquences", ou ce que la plupart des gens appellent "les détails". Toute image peut être déconstruite en ces deux composants.

image déconstruite

Avez-vous utilisé un masque flou pour rendre une image plus nette? Ce filtre équivaut en fait à prendre une image et à y ajouter une copie filtrée passe-haut. Vous pouvez le confirmer dans Photoshop en appliquant le filtre passe-haut sur un calque dupliqué et en modifiant le mode de fusion en superposition.

entrez la description de l'image ici

filip
la source
5
Vous voudrez peut-être ajouter que l'image est grise en raison de son décalage pour éviter les valeurs négatives. Et la superposition consiste essentiellement à ajouter quoi que ce soit au-dessus de 128 et à soustraire les valeurs ci-dessous. Donc, le flou est en fait un boost du filtre hautes fréquences. J'ajoute une réponse à cet effet mais préférerais la supprimer au profit de votre réponse. Il existe également un troisième cas d'utilisation qui est la séparation de fréquence.
joojaa
2
Problème mineur: 1ère phrase: "Filtre hors" signifie "élimine", donc un filtre passe-bas (flou) ne "filtre pas les basses fréquences". Filtre passe-haut (laisse passer les hautes fréquences); filtre passe-bas (laisse passer les basses fréquences). Un filtre passe-bas est également appelé "filtre coupe-haut" car il élimine les hautes fréquences. Et il en va de même pour un passe-haut étant un coupe-bas.
Yorik
joojaa- bon commentaire. Yorik - merci, corrigé.
filip
2
Merde. Prenez une image dans un fichier Photoshop. Dupliquez le calque contenant l'image. Flou (valeur 10) sur le calque 1. Filtre passe-haut (valeur 10) sur le calque 2. Réglez le calque 2 sur une opacité de 50%. Ajoutez un calque de contraste, définissez-le sur hérité et +50 de contraste. Comparez cela à l'image originale. L'esprit soufflé. Cela explique parfaitement ce que tout cela fait.
Dirk v B
@DirkvB J'ai essayé ce que vous avez dit et cela a fonctionné. Pourriez-vous expliquer le raisonnement derrière une opacité de 50% et un contraste de +50? À noter également, cette méthode recrée de près l'image d'origine, mais elle n'est pas identique (il suffit d'exécuter un mélange de différence entre l'original et celui-ci pour voir ce que je veux dire).
Doug Richardson
7

Un filtre passe-haut est un ajusteur qui supprime les informations de basse fréquence d'un singnal. Maintenant, il existe de nombreuses façons d'implémenter un filtre passe-haut, mais le filtre passe-haut de photoshop est très probablement le résultat en soustrayant l'image floue de l'original (comme mentionné par @filip ). Tout simplement l'image moins la basse fréquence n'est que la haute fréquence.

Maintenant, si vous soustrayez un flou d'une image, vous vous retrouverez avec des pixels négatifs. Ce n'est pas possible pour Photoshop. Donc, ce qui est fait à la place, c'est que le résultat est compensé par 127 (ou 0,5 si vous voulez des valeurs en virgule flottante), donc gris signifie en fait aucun changement de valeur. Le mode superposition et lumière linéaire sont conçus pour fonctionner en sens inverse des images codées de cette façon (bit selon ce dont vous avez besoin multiplication / addition ou addition / soustraction par morceaux).

Maintenant, pourquoi utiliseriez-vous cela? Eh bien, il peut s'habituer à isoler les bords, et le cas d'utilisation principal est de l'utiliser comme un outil d'affûtage. En fait, le masque flou fait cela en une seule étape. Parfois, cependant, le masque flou ne vous donne pas assez de contrôle sur les résultats. Vous pouvez donc utiliser le filtre passe-haut pour séparer la phase intermédiaire et la manipuler pour contrôler où vous voulez que la netteté se produise et où cela ne se produit pas.

Cela nous amène aux flux de travail de séparation des fréquences , voyez qu'il se peut que votre image soit légèrement inégalement claire ou bien souvent la peau soit quelque peu inégale. Mais vous ne voulez pas exactement détruire la texture de l'image. Alors maintenant, vous divisez votre image en composants bas et hauts. Vous pouvez ensuite peindre les composants bas pour une couleur uniforme moiré, tout en conservant la couche de texture sur le dessus. Ou vous pouvez faire l'inverse pour éliminer les défauts de la carte haute fréquence tout en conservant l'aspect général. Pour des raisons de précision, il est fort probable que vous n'utilisiez pas à la fois le flou et le passe-haut, mais que vous soustrayiez manuellement, mais c'est toujours la même méthode, mais le flou et l'arrondi des résultats diffèrent.

Exemple

Image 1 : La séparation des fréquences facilite la réparation des vieilles chaussures, j'aurais dû faire un peu plus de travail. Image originale d' ici .

Maintenant, il y a BEAUCOUP de magie que vous pouvez faire avec ce filtre. Mais malheureusement, bon nombre de ces flux de travail magiques peuvent vous obliger à penser comme un gourou du traitement du signal. Par exemple, le filtrage passe-haut peut fonctionner comme base pour un algorithme de réduction du bruit ou comme couche de rectification pour l'élimination de la brume masquée par la luminosité de l'image, etc.

joojaa
la source
5

Jusqu'à présent, aucune des réponses n'a abordé les mathématiques derrière le filtre. Voici un résumé détaillé dont je cite:

Les filtres de fréquence traitent une image dans le domaine fréquentiel. L'image est transformée de Fourier, multipliée par la fonction de filtre, puis re-transformée dans le domaine spatial. L'atténuation des hautes fréquences se traduit par une image plus lisse dans le domaine spatial, l'atténuation des basses fréquences améliore les bords.

À ce stade, nous devons noter qu'un filtre passe-haut passe les hautes fréquences et atténue (c.-à-d. Réduit) les basses fréquences .

Du fait de l'atténuation (ou du blocage) des basses fréquences, les zones d'intensité constante dans l'image d'entrée sont nulles à la sortie du filtre passe-haut. Les zones à fort gradient d'intensité, contenant les hautes fréquences, ont des valeurs d'intensité positive et négative dans la sortie du filtre. Afin d'afficher l'image à l'écran, un décalage est ajouté à la sortie dans le domaine spatial et les intensités de l'image sont mises à l'échelle. Il en résulte une valeur de gris moyen pour les zones de basse fréquence et des valeurs sombres et claires pour les bords.

(Cette citation est à peu près à mi-parcours et précède un exemple d'image qui devrait être très utile).

L'article que j'ai lié vaut la peine d'être lu et contient des exemples assez clairs (cliquez sur les images). Il est trop long pour résumer et s'appuie sur les chiffres qui y figurent.

Chris H
la source
et juste pour le profane: atténuer signifie "réduire la force, la valeur ou l'impact"
Yorik
@Yorik qui ne m'est pas venu à l'esprit. C'est un mot que j'utilise quotidiennement dans mon travail. Modifié
Chris H
3
@ChrisH La transformation de Fourier est un moyen d'implémenter un filtre passe-haut (pas le seul cependant), mais je suis à peu près sûr de l'expérimentation passée que Photoshop ne fait pas directement un Fourier mais soustrait plutôt un flou à la place. Cependant, il se peut que les nouveaux ateliers photos utilisent réellement Fourier pour le flou (les versions pré CS, CC ne le faisaient apparemment pas) car il offre un raccourci pour calculer le flou .... Mais la FFT a son lot de problèmes et pourrait être que PS est en fait juste en train d'éclater un noyau de convolution sans cette optimisation dans la boucle. Donc, en fait, Filip a expliqué comment le filtre est effectué.
joojaa
@joojaa soustraire un flou est ce que fait le masque flou, et les deux options existent, donc j'ai des doutes. Si j'avais Photoshop, j'essaierais de tester (bien que la forme du filtre dans le domaine de Fourier soit inconnue s'il serait difficile de prouver de manière décisive ce qui est utilisé). Tout ce que je pourrais tester dans le gimp n'aiderait pas beaucoup.
Chris H
1
Les transformations @ChrisH et Fourier sur des données discrètes sont également sujettes au bruit.
OrangeDog
0

High Pass est un filtre à affûtage. On pourrait dire que c'est un mélange de "détecter les bords" et "d'affûtage". La netteté détecte les changements soudains entre la luminosité ou la couleur des pixels, puis les modifie. Les parties brillantes sont donc plus lumineuses et les parties sombres plus foncées.

Mais la tâche passe-haut consiste à ne remarquer que les bords. Le paramètre de rayon indique au filtre combien de pixels autour du bord détecté doivent être inclus dans l'image filtrée (couche).

Maintenant, ce filtre n'est pas conçu pour être utilisé sur lui-même (c'est pourquoi, je pense, qu'il est dans un catalogue différent), vous devez utiliser l'image filtrée avec l'image de base, en utilisant les modes de fusion ou similaire, pour faire apparaître les bords de l'image. C'est pourquoi la partie "non incluse" de l'image est gris neutre. Ils n'affectent donc pas les couleurs en mode de fusion.

SZCZERZO KŁY
la source