next up previous contents index
suivant: Mise en oeuvre monter: Opérateurs différentiels précédent: Passage au discret   Table des matières   Index

Les opérateurs optimaux

Canny [Can86] modélise un contour $ C$ comme la superposition d'un saut d'amplitude $ S$ et d'un bruit blanc $ B$.

$\displaystyle C(x) = S_0S(x) + B(x).
$

La fonction $ S$ est modélisée par la fonction $ \car_{[0,+\infty)}$$ \car$ est la fonction caractéristique.

Suivant ce formalisme, le détecteur de contour idéal $ h$ est celui qui, convolué à $ C$, présente un maximum en 0. Cette contrainte n'étant pas suffisante pour déterminer $ h$, Canny impose trois conditions supplémentaires à son détecteur de contour :

La formalisation de ces trois conditions impose à la fonction $ h$ de respecter l'équation différentielle suivante :

$\displaystyle 2h(x) -2\lambda_1h''(x) + 2\lambda_2h^{(3)}(x)+\lambda_3 = 0.
$

Les conditions aux limites imposées à la fonction $ h$ permettent de fixer les paramètres $ \lambda_1,\lambda_2,\lambda_3$. Les conditions imposées par Canny permettent d'obtenir une fonction à support fini $ [-M,M]$ :

$\displaystyle h(0) = 0~~;~~ h(M) = 0~~;~~ h'(0) = S~~;~~ h'(M) = 0.
$

Malheureusement, ces conditions donnent une fonction $ h$ très coûteuse à implémenter. Partant de ce constat, Deriche [Der87] a défini d'autres conditions aux limites donnant à la fonction $ h$ un support infini :

$\displaystyle h(0) = 0~~;~~ h(+\infty) = 0~~;~~ h'(0) = S~~;~~ h'(+\infty) = 0.
$

Ces conditions initiales donnent la fonction :

$\displaystyle \fonction{h}{\RR}{\RR}{x}{ce^{-\alpha\vert x\vert}sin \omega x}.
$

L'analyse des critères donnés par Canny [Can86] montre que les meilleures performances du filtre sont obtenues pour $ \omega$ tendant vers 0. On obtient à ce moment là $ h(x)=Cxe^{-\alpha
\vert x\vert}$ avec $ C = \omega c$. Le paramètre $ C$ est un paramètre de normalisation, le paramètre $ \alpha $ contrôle quant à lui la sensibilité de l'opérateur de détection de contour. Une augmentation de $ \alpha $ favorise la détection au détriment de la localisation et vice-versa. Le paramètre $ \alpha $ joue ici exactement le même rôle que le paramètre $ \sigma$ dans la définition du gradient de la gaussienne.

Deriche construit à partir de $ h$ une fonction de lissage 1D $ l$ définie par :

$\displaystyle l(x) = \int_{0}^{x}h(x)dx = b(\alpha\vert x\vert+1)e^{-\alpha\vert x\vert}.
$

On définit alors la fonction de lissage 2D $ L(x,y)$ par :

$\displaystyle L(x,y) = l(x)l(y).
$

La fonction $ L$ joue ici le rôle de la gaussienne, et le filtrage de l'image s'obtient en convoluant celle-ci avec $ L$. Une fois l'image lissée, on peut calculer son gradient ou son laplacien. Ces deux opérations s'effectuent en convoluant l'image avec le gradient ou le laplacien de $ L$.

L'avantage des opérateurs de Deriche par rapport à ceux de Canny vient du fait que les techniques de la transformée en $ z$ [Der87], appliquées à la fonction $ L$ et à ses dérivées, permettent de calculer de façon récursive la convolution des opérateurs de Deriche avec l'image. Si, par exemple, nous effectuons la convolution d'un signal mono-dimensionnel $ x(m)$ avec la fonction échantillonnée $ l(m)$, le signal final $ y(m)$ se déduit des équations suivantes [DC87] :

\begin{displaymath}\begin{array}{lllr}
y^+(m) &=& a_0x(m) + a_1x(m-1)-b_1y^+(m-1...
...dots,1 \\
y(m) &=& y^+(m)+y^-(m)& m = 1,\dots,M\\
\end{array}\end{displaymath}

$ M$ représente la taille du signal et où les coefficients $ a_i$ et $ b_i$ se déduisent du paramètre $ \alpha $.

L'application de l'algorithme décrit par les équations précédentes nécessite 8 opérations par point quelle que soit la valeur de $ \alpha $. Les filtres de Deriche présentent donc les avantages suivants :

Shen et Castan [SC92,CZS89] ont adopté une démarche similaire à celle de Canny [Can86]. Les différences entre les deux méthodes portent sur la formalisation des critères décrivant un détecteur de contour optimal. La fonction obtenue par Shen est égale à $ \beta e^{-\beta \vert x\vert}$. Cette fonction permet de définir des opérateurs de lissage, de gradient et de laplacien et d'effectuer une transformée en $ z$ [Mon90] permettant une implémentation récursive.


next up previous contents index
suivant: Mise en oeuvre monter: Opérateurs différentiels précédent: Passage au discret   Table des matières   Index
Brun Luc 2004-03-25