Comprendre les paramètres du filtre bilatéral

8

Permettez-moi de vous montrer un extrait du livre Computer Vision de Szeliski sur le filtre bilatéral. Je ne sais pas comment interpréter ces définitions de noyau:

entrez la description de l'image ici

Dans la somme réelle, quelles sont les valeurs k et lprendre? Par exemple, pour un noyau de taille 5x5kprendre des valeurs entre inf négatif et positif? ou entre 1 et 5 (par exemple dans la programmation matlab)? Ou prend-il des valeurs de -2 à 2?

Que signifient également ces doubles barres dans la définition du noyau de plage?

impossible de traiter l'image
la source
en utilisant l'implémentaion de filtre bilatéral, les résultats de l'itération montrent de meilleurs résultats en comparaison avec d'autres méthodes, mais je ne comprends pas comment modifier les paramètres dans l'équation générale.

Réponses:

3

Une petite discussion des détails que vous avez demandés:

  1. Le filtre bilatéral est contrôlé par deux paramètres: σd et σr.

• Comme paramètre de plage σr augmente, le filtre bilatéral se rapproche du flou gaussien car la plage gaussienne est plus plate, c'est-à-dire presque constante sur l'intervalle d'intensité couvert par l'image.

• Augmenter le paramètre spatial σd lisse les fonctions plus grandes.

Une caractéristique importante du filtrage bilatéral est que les poids sont multipliés, ce qui implique que dès qu'un des poids est proche de 0, aucun lissage ne se produit. Par exemple, une grande gaussienne spatiale couplée à une gaussienne à plage étroite réalise un lissage limité bien que le filtre ait une grande étendue spatiale. Le poids de la gamme impose une stricte conservation des contours.

"La norme ou les doubles barres indiquent la distance gaussienne dans l'équation. Cette distance est définie par Gσ (|| p - q ||), où σ est un paramètre définissant l'extension du voisinage."

Puisque (i, j) et (k, l) ne sont que des points spatiaux sur une image, ils varieront du début de l'image à la fin de l'image. Cela dépend généralement de votre mesure d'indexation, par exemple dans une matrice, vous devez varier de 0 à 5 pour une image 5x5. Les valeurs réelles de k, l importent peu. C'est la valeur relative qui importe beaucoup plus.

Naresh
la source
2

Généralement, dans le traitement d'image, un noyau de filtre est centré sur le pixel de destination, donc dans votre exemple, k et l prendrait les valeurs 2,1,0,1,2.

Le symbole à double barre verticale est généralement utilisé pour désigner une sorte de norme . Dans votre cas, depuis (je suppose)f(i,j) et f(k,l) sont des valeurs scalaires, je suppose f(i,j)f(k,l)2 fait référence à l'amplitude au carré de la différence entre les deux valeurs de pixels.

Jason R
la source
Merci. ce sont des images en couleur. donc f (i, j) -f (k, l) est un vecteur.
impossible de traiter l'image
J'ai lu sur les filtres bilatéraux et je suis confus quant à la mise en œuvre. J'ai posé une question ici dsp.stackexchange.com/questions/61988/… . Il vous sera très utile de partager votre compréhension du filtre bilatéral.
Suhail Gupta