Noyaux gaussiens de flou et de convolution
Je ne comprends pas ce qu'est un noyau de convolution et comment j'appliquerais une matrice de convolution aux pixels d'une image (je parle de faire une opération de flou gaussien sur une image).
puis-je également obtenir une explication sur la façon de créer un noyau pour une opération de flou gaussien?
je suis en lecture cet article mais je ne semble pas comprendre comment les choses sont faites...
merci à tous ceux qui prennent le temps de m'expliquer ceci :),
ExtremeCoder
3 réponses
L'idée de base est que les nouveaux pixels de l'image sont créés par une moyenne pondérée des pixels proches (tracez un cercle autour du pixel).
pour chaque pixel de l'image, vous allez créer un petit carré autour du pixel. Disons que vous prenez les 8 voisins à côté d'un pixel (y compris les diagonales même si cela n'a pas d'importance ici), et nous effectuons une moyenne pondérée pour obtenir le pixel moyen.
dans L'affaire Gaussian flou, il se décompose en deux opérations unidimensionnelles. Pour chaque pixel, prendre une certaine quantité de pixels à côté d'un pixel dans la direction de la ligne seulement. Multipliez les valeurs des pixels temps les poids calculés à partir de la distribution gaussienne (ou si vous faites cela pour un effet visuel et non pour une raison scientifique, les poids peuvent tout ce qui semble bon) et les résumer. Une autre façon de le regarder est le pixel font un vecteur et les poids font un vecteur et vous prenez le produit de point. Répétez ce processus dans la colonne direction comme un passage séparé.
un noyau de convolution est une matrice de valeurs qui spécifie comment le voisinage d'un pixel contribue à l'état de ce pixel dans l'image finale. Il y a une bonne description des bases ici. Un flou gaussien est une fonction de convolution qui utilise une fonction vraiment laide (vous avez vu la page wikipedia) pour calculer un noyau de convolution pour passer au-dessus de l'image. Vous trouverez un exemple de noyau pour un gaussien dans cette page wikipedia.
Le point de toutes les mathématiques dans il faut produire un flou doux qui ressemble au motif de dispersion produit par un écran de maille placé entre le spectateur et l'image. Vous pouvez penser que la "taille" (l'écart-type) du gaussien est liée à la distance entre l'image et l'écran.
Voici un outil génial, si vous ne voulez pas de la calculer par vous-même (comme moi):
http://www.embege.com/gauss/
EDIT
Puisque le lien semble brisé maintenant, voici un lien pour archive.org:
http://web.archive.org/web/20150217075657/http://www.embege.com/gauss