\contentsline {figure}{\numberline {2.2}{\ignorespaces Comparaison des performances des GPUs Nvidia et des CPU Intel (d'apr\IeC {\`e}s \cite {CUDAPG}).}}{14}{figure.2.2}
\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Nombre maximum th\IeC {\'e}orique d'op\IeC {\'e}rations en virgule flottante par seconde en fonction de l'ann\IeC {\'e}e et de l'architecture.}}}{14}{figure.2.2}
\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Bande passante th\IeC {\'e}orique maximale des diverses architectures.}}}{14}{figure.2.2}
-\contentsline {figure}{\numberline {2.3}{\ignorespaces Organisation des GPU d'architecture Fermi, comme le C2070 (d'apr\IeC {\`e}s www.hpcresearch.nl).}}{15}{figure.2.3}
+\contentsline {figure}{\numberline {2.3}{\ignorespaces Organisation des GPUs d'architecture Fermi, comme le C2070 (d'apr\IeC {\`e}s www.hpcresearch.nl).}}{15}{figure.2.3}
\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Organisation en groupes de SMs }}}{15}{figure.2.3}
\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Constitution d'un SM.}}}{15}{figure.2.3}
\contentsline {figure}{\numberline {2.4}{\ignorespaces Repr\IeC {\'e}sentation d'une grille de calcul en 2D et des blocs de threads, \IeC {\`a} 2 dimensions, qui la composent.}}{16}{figure.2.4}
\addvspace {10\p@ }
-\contentsline {figure}{\numberline {3.1}{\ignorespaces Images 256$\times $256 en niveau de gris 8 bits utilis\IeC {\'e}es pour l'illustration des propri\IeC {\'e}t\IeC {\'e}s des filtres. a) l'image de r\IeC {\'e}f\IeC {\'e}rence non bruit\IeC {\'e}e. b) l'image corrompue par un bruit gaussien d'\IeC {\'e}cart type $\sigma =25$. c) l'image corrompue par un bruit impulsionnel \IeC {\`a} 25\%.}}{22}{figure.3.1}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Sans bruit}}}{22}{figure.3.1}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Bruit gaussien $\sigma =25$, PSNR=22.3~dB MSSIM=0.16}}}{22}{figure.3.1}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Bruit impulsionnel 25\%, PSNR=9.48~dB MSSIM=0.04}}}{22}{figure.3.1}
-\contentsline {figure}{\numberline {3.2}{\ignorespaces Filtrage par convolution.}}{23}{figure.3.2}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Moyenneur 3$\times $3, PSNR=27.6dB MSSIM=0.34}}}{23}{figure.3.2}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Moyenneur 5$\times $5, PSNR=27.7dB MSSIM=0.38}}}{23}{figure.3.2}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Filtre gaussien 3$\times $3, PSNR=27.4dB MSSIM=0.33}}}{23}{figure.3.2}
-\contentsline {figure}{\numberline {3.3}{\ignorespaces R\IeC {\'e}duction du bruit impulsionnel par filtre m\IeC {\'e}dian.}}{24}{figure.3.3}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {M\IeC {\'e}dian 3$\times $3 une passe, PSNR=26.4~dB MSSIM=0.90}}}{24}{figure.3.3}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {M\IeC {\'e}dian 3$\times $3 deux passes, PSNR=34.4~dB MSSIM=0.98}}}{24}{figure.3.3}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {M\IeC {\'e}dian 5$\times $5 une passe, PSNR=35.1~dB MSSIM=0.98}}}{24}{figure.3.3}
-\contentsline {figure}{\numberline {3.4}{\ignorespaces R\IeC {\'e}duction de bruit gaussien par filtrage bilat\IeC {\'e}ral de voisinage 5$\times $5. $\sigma _S$ et $\sigma _I$ sont les \IeC {\'e}carts type des fonctions gaussiennes de pond\IeC {\'e}ration spatiale et d'intensit\IeC {\'e}.}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$\sigma _S=1.0$ et $\sigma _I=0.1$, PSNR=25.6~dB MSSIM=0.25}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$\sigma _S=1.0$ et $\sigma _I=0.5$, PSNR=28.0~dB MSSIM=0.36}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$\sigma _S=1.0$ et $\sigma _I=1.0$, PSNR=27.9~dB MSSIM=0.36}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$\sigma _S=2.0$ et $\sigma _I=0.1$, PSNR=26.7~dB MSSIM=0.29}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {$\sigma _S=2.0$ et $\sigma _I=0.5$, PSNR=27.9~dB MSSIM=0.39}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {$\sigma _S=2.0$ et $\sigma _I=1.0$, PSNR=27.5~dB MSSIM=0.38}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {$\sigma _S=5.0$ et $\sigma _I=0.1$, PSNR=26.8~dB MSSIM=0.29}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {$\sigma _S=5.0$ et $\sigma _I=0.5$, PSNR=26.8~dB MSSIM=0.37}}}{26}{figure.3.4}
-\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {$\sigma _S=5.0$ et $\sigma _I=1.0$, PSNR=25.9~dB MSSIM=0.36}}}{26}{figure.3.4}
-\contentsline {figure}{\numberline {3.5}{\ignorespaces Filtrage par d\IeC {\'e}composition en ondelettes et seuillage dur des coefficients inf\IeC {\'e}rieurs au seuil $T$.}}{27}{figure.3.5}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$T=20$, PSNR=26.9~dB MSSIM=0.30}}}{27}{figure.3.5}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$T=35$, PSNR=27.6~dB MSSIM=0.36}}}{27}{figure.3.5}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$T=70$, PSNR=26.7~dB MSSIM=0.37}}}{27}{figure.3.5}
-\contentsline {figure}{\numberline {3.6}{\ignorespaces Filtrage par NL-means pour diff\IeC {\'e}rentes combinaisons des param\IeC {\`e}tres de similarit\IeC {\'e} $f$ et de non localit\IeC {\'e} $t$.}}{27}{figure.3.6}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$f=2$ et $t=2$, PSNR=28.5~dB MSSIM=0.37}}}{27}{figure.3.6}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$f=2$ et $t=5$, PSNR=28.6~dB MSSIM=0.38}}}{27}{figure.3.6}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$f=5$ et $t=2$, PSNR=29.0~dB MSSIM=0.39}}}{27}{figure.3.6}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$f=5$ et $t=5$, PSNR=29.0~dB MSSIM=0.40}}}{27}{figure.3.6}
-\contentsline {figure}{\numberline {3.7}{\ignorespaces Filtrage par BM3D, PSNR=29.3~dB MSSIM=0.41}}{28}{figure.3.7}
-\contentsline {figure}{\numberline {3.8}{\ignorespaces Performances relatives des filtres m\IeC {\'e}dians impl\IeC {\'e}ment\IeC {\'e}s sur GPU dans libJacket/ArrayFire, PCMF et BVM et ex\IeC {\'e}cut\IeC {\'e}s sur deux mod\IeC {\`e}les de g\IeC {\'e}n\IeC {\'e}rations diff\IeC {\'e}rentes.}}{29}{figure.3.8}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Sur GPU GTX260. Courbe tir\IeC {\'e}e de \cite {5402362}}}}{29}{figure.3.8}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Sur GPU C2075. Courbe tir\IeC {\'e}e de \cite {sanchez2013highly}}}}{29}{figure.3.8}
-\contentsline {figure}{\numberline {3.9}{\ignorespaces Illustration du pr\IeC {\'e}-chargement en m\IeC {\'e}moire partag\IeC {\'e}e mis en \oe uvre dans \cite {zheng2011performance} pour l'impl\IeC {\'e}mentation, entre autres, du filtre bilat\IeC {\'e}ral. a) en vert le bloc de threads associ\IeC {\'e} aux pixels centraux. b-e) les blocs de pixels successivement pr\IeC {\'e}-charg\IeC {\'e}s en m\IeC {\'e}moire partag\IeC {\'e}e. f) la configuration finale de la ROI en m\IeC {\'e}moire partag\IeC {\'e}e.}}{31}{figure.3.9}
-\contentsline {figure}{\numberline {3.10}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par analyse simple d'histogramme. Colonne de gauche : image d'entr\IeC {\'e}e. Colonne centrale : histogramme des niveaux de gris. Colonne de droite : r\IeC {\'e}sultat de la segmentation.}}{33}{figure.3.10}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image initiale comportant deux zones : le fond et le cochon (la cible)}}}{33}{figure.3.10}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Histogramme des niveaux de gris}}}{33}{figure.3.10}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image binaire repr\IeC {\'e}sentant la segmentation. Seuil estim\IeC {\'e} \IeC {\`a} 101 apr\IeC {\`e}s 4 it\IeC {\'e}rations.}}}{33}{figure.3.10}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Image initiale bruit\IeC {\'e}e}}}{33}{figure.3.10}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Histogramme des niveaux de gris}}}{33}{figure.3.10}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Image binaire repr\IeC {\'e}sentant la segmentation. Seuil estim\IeC {\'e} \IeC {\`a} 99 apr\IeC {\`e}s 5 it\IeC {\'e}rations.}}}{33}{figure.3.10}
-\contentsline {figure}{\numberline {3.11}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par simplification de graphe de type \textit {Normalized cut} pour un nombre $s$ de segments variant de 2 \IeC {\`a} 5.}}{35}{figure.3.11}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$s = 2$}}}{35}{figure.3.11}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$s = 3$}}}{35}{figure.3.11}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$s = 4$}}}{35}{figure.3.11}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$s = 5$}}}{35}{figure.3.11}
-\contentsline {figure}{\numberline {3.12}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par algorithme \textit {k-means} pour un nombre $s$ de segments variant de 2 \IeC {\`a} 5. Chaque couleur est associ\IeC {\'e}e \IeC {\`a} un segment. Les couleurs sont choisies pour une meilleure visualisation des diff\IeC {\'e}rents segments.}}{36}{figure.3.12}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$s = 2$}}}{36}{figure.3.12}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$s = 3$}}}{36}{figure.3.12}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$s = 4$}}}{36}{figure.3.12}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$s = 5$}}}{36}{figure.3.12}
-\contentsline {figure}{\numberline {3.13}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par algorithme \textit {mean-shift} pour un rayon de voisinage $r$ de 100, 50, 35 et 25 pixels permettant d'obtenir un nombre $s$ de segments variant respectivement de 2 \IeC {\`a} 5. Le volume minimal admis pour un segment est fix\IeC {\'e} \IeC {\`a} 100 pixels. Chaque couleur est associ\IeC {\'e}e \IeC {\`a} un segment. Les couleurs sont choisies pour une meilleure visualisation des diff\IeC {\'e}rents segments.}}{37}{figure.3.13}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$r=100 \Rightarrow s = 2$}}}{37}{figure.3.13}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$r=50 \Rightarrow s = 3$}}}{37}{figure.3.13}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$r=35 \Rightarrow s = 4$}}}{37}{figure.3.13}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$r=25 \Rightarrow s = 5$}}}{37}{figure.3.13}
-\contentsline {figure}{\numberline {3.14}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par algorithme dit du \textit {snake}, dans sa version originale. Les param\IeC {\`e}tres d'\IeC {\'e}lasticit\IeC {\'e}, de raideur et d'attraction ont \IeC {\'e}t\IeC {\'e} fix\IeC {\'e}s respectivement aux valeurs 5, 0.1 et 5. }}{38}{figure.3.14}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Les \IeC {\'e}tats initial et suivant chacune des trois premi\IeC {\`e}res it\IeC {\'e}rations}}}{38}{figure.3.14}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {L'\IeC {\'e}tat du contour apr\IeC {\`e}s la septi\IeC {\`e}me it\IeC {\'e}ration}}}{38}{figure.3.14}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {L'\IeC {\'e}tat du contour apr\IeC {\`e}s la dixi\IeC {\`e}me it\IeC {\'e}ration}}}{38}{figure.3.14}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {L'\IeC {\'e}tat du contour apr\IeC {\`e}s la centi\IeC {\`e}me it\IeC {\'e}ration. C'est le contour final.}}}{38}{figure.3.14}
-\contentsline {figure}{\numberline {3.15}{\ignorespaces \IeC {\'E}volution du nombre de pixels actifs pour les it\IeC {\'e}ration successives de l'impl\IeC {\'e}mentation de l'algorithme push-relabel de \cite {graphcutscuda}. Les petites images montrent la localisation des pixels actifs apr\IeC {\`e}s chaque it\IeC {\'e}ration, en blanc.}}{41}{figure.3.15}
-\contentsline {figure}{\numberline {3.16}{\ignorespaces Segmentation d'une image couleur de 512$\times $512 pixels par l'impl\IeC {\'e}mentation GPU quick-shift de \cite {fulkerson2012really}.}}{43}{figure.3.16}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image originale}}}{43}{figure.3.16}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$\tau =10$ et $\sigma =2$}}}{43}{figure.3.16}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$\tau =10$ et $\sigma =10$}}}{43}{figure.3.16}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$\tau =20$ et $\sigma =10$}}}{43}{figure.3.16}
-\contentsline {figure}{\numberline {3.17}{\ignorespaces Segmentation d'une image couleur de 2256$\times $3008 pixels.}}{44}{figure.3.17}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image originale}}}{44}{figure.3.17}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image segment\IeC {\'e}e par mean-shift standard}}}{44}{figure.3.17}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image segment\IeC {\'e}e par mean-shift kd-tree}}}{44}{figure.3.17}
-\contentsline {figure}{\numberline {3.18}{\ignorespaces Segmentation d'images issues d'examens IRM par la m\IeC {\'e}thode des level set \IeC {\`a} bande \IeC {\'e}troite.}}{45}{figure.3.18}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Cerveau 256$\times $256$\times $256 en 7~s}}}{45}{figure.3.18}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Reins et aorte, 256$\times $256$\times $272 en 16~s}}}{45}{figure.3.18}
-\contentsline {figure}{\numberline {3.19}{\ignorespaces Segmentation d'une image d'\IeC {\'e}paule en 1024$^2$ pixels issue d'un examen IRM par l'impl\IeC {\'e}mentation du snake GVF de \cite {snakegvf06}. Le contour est repr\IeC {\'e}sent\IeC {\'e} en rougeet le contour final est obtenu en 11~s. Le trac\IeC {\'e} initial du contour a \IeC {\'e}t\IeC {\'e} artificiellement \IeC {\'e}paissi pour le rendre visible \IeC {\`a} l'\IeC {\'e}chelle de l'imppression}}{46}{figure.3.19}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Contour initial}}}{46}{figure.3.19}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Contour final}}}{46}{figure.3.19}
-\contentsline {figure}{\numberline {3.20}{\ignorespaces Extraction de contour par la version GPU de l'algorithme gPb. Les images sont issues de la base BSDS \cite {martin2001database}}}{47}{figure.3.20}
\addvspace {10\p@ }
-\contentsline {figure}{\numberline {4.1}{\ignorespaces \IeC {\`A} gauche : d\IeC {\'e}termination des vecteurs $f_{in}$ et $f_{out}$. \IeC {\`A} droite : code de Freeman d'un vecteur en fonction de sa direction, l'origine \IeC {\'e}tant suppos\IeC {\'e}e au pixel central, en noir. }}{51}{figure.4.1}
-\contentsline {figure}{\numberline {4.2}{\ignorespaces \IeC {\'E}volution du contour lors de la segmentation d'une image de 512$^2$ pixels. La convergence est obtenue \IeC {\`a} l'it\IeC {\'e}ration 14 apr\IeC {\`e}s 44~ms pour un total de 256 n\oe uds.}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Initialisation : 4 n\oe uds}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {It\IeC {\'e}ration 1 : 8 n\oe uds 3~ms}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {It\IeC {\'e}ration 2 : 16 n\oe uds 1~ms}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {It\IeC {\'e}ration 3, 32 n\oe uds 1~ms}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {It\IeC {\'e}ration 7 : 223 n\oe uds 3~ms}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {It\IeC {\'e}ration 10 : 244 n\oe uds 3~ms}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {It\IeC {\'e}ration 13 : 256 n\oe uds 3~ms}}}{54}{figure.4.2}
-\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {It\IeC {\'e}ration 14 : 256 n\oe uds 3~ms}}}{54}{figure.4.2}
-\contentsline {figure}{\numberline {4.3}{\ignorespaces Influence du contour initial sur la segmentation. Le contour final 1 est celui de la figure \ref {fig-snakecpu-cochon512}.}}{55}{figure.4.3}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Initialisation 2 }}}{55}{figure.4.3}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Contour final 2 : 273 n\oe uds 87~ms}}}{55}{figure.4.3}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Contour final 1 : 256 n\oe uds 44~ms}}}{55}{figure.4.3}
-\contentsline {figure}{\numberline {4.4}{\ignorespaces Segmentation de l'image de test en 4000$^2$ pixels. Le trac\IeC {\'e} du contour a \IeC {\'e}t\IeC {\'e} artificiellement \IeC {\'e}paissi pour le rendre visible \IeC {\`a} l'\IeC {\'e}chelle de l'impression.}}{56}{figure.4.4}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$d_{max}=16$ et $l_{min}=8$, 1246 n\oe uds en 1.3~s}}}{56}{figure.4.4}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$d_{max}=128$ et $l_{min}=32$, 447 n\oe uds en 0.7~s}}}{56}{figure.4.4}
-\contentsline {figure}{\numberline {4.5}{\ignorespaces Segmentation de l'image de test en 4000$^2$ pixels avec une cible de petite taille. Le contour initial est la transcription celui utilis\IeC {\'e} \IeC {\`a} la figure \ref {fig-snakecpu-cochon512}. Le trac\IeC {\'e} du contour a \IeC {\'e}t\IeC {\'e} artificiellement \IeC {\'e}paissi pour le rendre visible \IeC {\`a} l'\IeC {\'e}chelle de l'impression.}}{56}{figure.4.5}
-\contentsline {figure}{\numberline {4.6}{\ignorespaces \IeC {\'E}volution du co\IeC {\^u}t relatif des trois fonctions les plus consommatrices en temps de calcul en fonction de la taille de l'image \IeC {\`a} traiter.}}{57}{figure.4.6}
-\contentsline {figure}{\numberline {4.7}{\ignorespaces Calcul des images cumul\IeC {\'e}es $S_x$ et $S_x^2$ en trois \IeC {\'e}tapes successives. a) cumul partiel bloc par bloc et m\IeC {\'e}morisation de la somme de chaque bloc. b) cumul sur le vecteur des sommes partielles. c) ajout des sommes partielles \IeC {\`a} chaque \IeC {\'e}l\IeC {\'e}ment des blocs cumul\IeC {\'e}s.}}{59}{figure.4.7}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {D\IeC {\'e}tail des op\IeC {\'e}rations effectu\IeC {\'e}es par le \textit {kernel} \texttt {compute\_block\_prefixes()}. La valeur $bs$ correspond au nombre de pixels de chaque bloc, qui est aussi le nombre de threads ex\IeC {\'e}cut\IeC {\'e} par chaque bloc de la grille de calcul.}}}{59}{figure.4.7}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {D\IeC {\'e}tail des op\IeC {\'e}rations effectu\IeC {\'e}es par le \textit {kernel} \texttt {scan\_blocksums()}.}}}{59}{figure.4.7}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {D\IeC {\'e}tail des op\IeC {\'e}rations effectu\IeC {\'e}es par le \textit {kernel} \texttt {add\_sums2prefixes()}.}}}{59}{figure.4.7}
-\contentsline {figure}{\numberline {4.8}{\ignorespaces Structuration des donn\IeC {\'e}es en m\IeC {\'e}moire du GPU pour l'\IeC {\'e}valuation en parall\IeC {\`e}le de l'ensemble des \IeC {\'e}volutions possibles du contour.}}{60}{figure.4.8}
-\contentsline {figure}{\numberline {4.9}{\ignorespaces Comparaison des cycles de d\IeC {\'e}placement des n\oe uds. Ligne du haut : version s\IeC {\'e}quentielle. Ligne du bas : version parall\IeC {\`e}le. Les segments en rouge sont des segments du contour non \IeC {\'e}valu\IeC {\'e}s, alors que ceux en pointill\IeC {\'e}s sont les paires ayant re\IeC {\c c}u les meilleures \IeC {\'e}valuations parmi les 8 d\IeC {\'e}placements possibles des n\oe uds correspondant.}}{61}{figure.4.9}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Contour de r\IeC {\'e}f\IeC {\'e}rence.}}}{61}{figure.4.9}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {D\IeC {\'e}placement du n\oe ud $N_1$. Le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{61}{figure.4.9}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {D\IeC {\'e}placement du n\oe ud $N_2$. Le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{61}{figure.4.9}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {D\IeC {\'e}placement en parall\IeC {\`e}le de tous les n\oe uds. Les segments du contour n'ont pas \IeC {\'e}t\IeC {\'e} \IeC {\'e}valu\IeC {\'e}s. On ne peut pas dire, a priori si le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{61}{figure.4.9}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {D\IeC {\'e}placement en parall\IeC {\`e}le des n\oe uds impairs. Le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{61}{figure.4.9}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {D\IeC {\'e}placement en parall\IeC {\`e}le des n\oe uds pairs. Un seul segment n'a pas \IeC {\'e}t\IeC {\'e} \IeC {\'e}valu\IeC {\'e}.}}}{61}{figure.4.9}
-\contentsline {figure}{\numberline {4.10}{\ignorespaces D\IeC {\'e}termination des coefficients $C(i,j)$ des pixels du contour.}}{63}{figure.4.10}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Quadrants 1 et 4}}}{63}{figure.4.10}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Quadrants 2 et 3}}}{63}{figure.4.10}
-\contentsline {figure}{\numberline {4.11}{\ignorespaces Segmentations de grandes images, avec le contour intial transpos\IeC {\'e} de celui de la figure \ref {fig-snakecpu-cochon512}. a) image du cochon en 100~MP. b) image satellite de l'\IeC {\^\i }le de Montserrat en 150~MP.}}{64}{figure.4.11}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {5 it\IeC {\'e}rations en 0,59~s}}}{64}{figure.4.11}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {3 it\IeC {\'e}rations en 0,35~s}}}{64}{figure.4.11}
-\contentsline {figure}{\numberline {4.12}{\ignorespaces D\IeC {\'e}termination intelligente du contour initial en deux phases successives. a) La premi\IeC {\`e}re \IeC {\'e}tape repose sur un \IeC {\'e}chantillonnage horizontal. b) La seconde \IeC {\'e}tape repose sur un \IeC {\'e}chantillonnage vertical. }}{65}{figure.4.12}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {D\IeC {\'e}termination de $j_L$ et $j_H$.}}}{65}{figure.4.12}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {D\IeC {\'e}termination de $i_L$ et $i_H$.}}}{65}{figure.4.12}
+\contentsline {figure}{\numberline {4.1}{\ignorespaces Images 256$\times $256 en niveau de gris 8 bits utilis\IeC {\'e}es pour l'illustration des propri\IeC {\'e}t\IeC {\'e}s des filtres. a) l'image de r\IeC {\'e}f\IeC {\'e}rence non bruit\IeC {\'e}e. b) l'image corrompue par un bruit gaussien d'\IeC {\'e}cart type $\sigma =25$. c) l'image corrompue par un bruit impulsionnel \IeC {\`a} 25\%.}}{28}{figure.4.1}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Sans bruit}}}{28}{figure.4.1}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Bruit gaussien $\sigma =25$, PSNR=22.3~dB MSSIM=0.16}}}{28}{figure.4.1}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Bruit impulsionnel 25\%, PSNR=9.48~dB MSSIM=0.04}}}{28}{figure.4.1}
+\contentsline {figure}{\numberline {4.2}{\ignorespaces Filtrage par convolution.}}{29}{figure.4.2}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Moyenneur 3$\times $3, PSNR=27.6dB MSSIM=0.34}}}{29}{figure.4.2}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Moyenneur 5$\times $5, PSNR=27.7dB MSSIM=0.38}}}{29}{figure.4.2}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Filtre gaussien 3$\times $3, PSNR=27.4dB MSSIM=0.33}}}{29}{figure.4.2}
+\contentsline {figure}{\numberline {4.3}{\ignorespaces R\IeC {\'e}duction du bruit impulsionnel par filtre m\IeC {\'e}dian.}}{29}{figure.4.3}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {M\IeC {\'e}dian 3$\times $3 une passe, PSNR=26.4~dB MSSIM=0.90}}}{29}{figure.4.3}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {M\IeC {\'e}dian 3$\times $3 deux passes, PSNR=34.4~dB MSSIM=0.98}}}{29}{figure.4.3}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {M\IeC {\'e}dian 5$\times $5 une passe, PSNR=35.1~dB MSSIM=0.98}}}{29}{figure.4.3}
+\contentsline {figure}{\numberline {4.4}{\ignorespaces R\IeC {\'e}duction de bruit gaussien par filtrage bilat\IeC {\'e}ral de voisinage 5$\times $5. $\sigma _S$ et $\sigma _I$ sont les \IeC {\'e}carts type des fonctions gaussiennes de pond\IeC {\'e}ration spatiale et d'intensit\IeC {\'e}.}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$\sigma _S=1.0$ et $\sigma _I=0.1$, PSNR=25.6~dB MSSIM=0.25}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$\sigma _S=1.0$ et $\sigma _I=0.5$, PSNR=28.0~dB MSSIM=0.36}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$\sigma _S=1.0$ et $\sigma _I=1.0$, PSNR=27.9~dB MSSIM=0.36}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$\sigma _S=2.0$ et $\sigma _I=0.1$, PSNR=26.7~dB MSSIM=0.29}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {$\sigma _S=2.0$ et $\sigma _I=0.5$, PSNR=27.9~dB MSSIM=0.39}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {$\sigma _S=2.0$ et $\sigma _I=1.0$, PSNR=27.5~dB MSSIM=0.38}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {$\sigma _S=5.0$ et $\sigma _I=0.1$, PSNR=26.8~dB MSSIM=0.29}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {$\sigma _S=5.0$ et $\sigma _I=0.5$, PSNR=26.8~dB MSSIM=0.37}}}{31}{figure.4.4}
+\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {$\sigma _S=5.0$ et $\sigma _I=1.0$, PSNR=25.9~dB MSSIM=0.36}}}{31}{figure.4.4}
+\contentsline {figure}{\numberline {4.5}{\ignorespaces Filtrage par d\IeC {\'e}composition en ondelettes et seuillage dur des coefficients inf\IeC {\'e}rieurs au seuil $T$.}}{32}{figure.4.5}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$T=20$, PSNR=26.9~dB MSSIM=0.30}}}{32}{figure.4.5}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$T=35$, PSNR=27.6~dB MSSIM=0.36}}}{32}{figure.4.5}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$T=70$, PSNR=26.7~dB MSSIM=0.37}}}{32}{figure.4.5}
+\contentsline {figure}{\numberline {4.6}{\ignorespaces Filtrage par NL-means pour diff\IeC {\'e}rentes combinaisons des param\IeC {\`e}tres de similarit\IeC {\'e} $f$ et de non localit\IeC {\'e} $t$.}}{33}{figure.4.6}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$f=2$ et $t=2$, PSNR=28.5~dB MSSIM=0.37}}}{33}{figure.4.6}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$f=2$ et $t=5$, PSNR=28.6~dB MSSIM=0.38}}}{33}{figure.4.6}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$f=5$ et $t=2$, PSNR=29.0~dB MSSIM=0.39}}}{33}{figure.4.6}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$f=5$ et $t=5$, PSNR=29.0~dB MSSIM=0.40}}}{33}{figure.4.6}
+\contentsline {figure}{\numberline {4.7}{\ignorespaces Filtrage par BM3D, PSNR=29.3~dB MSSIM=0.41}}{33}{figure.4.7}
+\contentsline {figure}{\numberline {4.8}{\ignorespaces Performances relatives des filtres m\IeC {\'e}dians impl\IeC {\'e}ment\IeC {\'e}s sur GPU dans libJacket/ArrayFire, PCMF et BVM et ex\IeC {\'e}cut\IeC {\'e}s sur deux mod\IeC {\`e}les de g\IeC {\'e}n\IeC {\'e}rations diff\IeC {\'e}rentes.}}{34}{figure.4.8}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Sur GPU GTX260. Courbe tir\IeC {\'e}e de \cite {5402362}}}}{34}{figure.4.8}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Sur GPU C2075. Courbe tir\IeC {\'e}e de \cite {sanchez2013highly}}}}{34}{figure.4.8}
+\contentsline {figure}{\numberline {4.9}{\ignorespaces Illustration du pr\IeC {\'e}-chargement en m\IeC {\'e}moire partag\IeC {\'e}e mis en \oe uvre dans \cite {zheng2011performance} pour l'impl\IeC {\'e}mentation, entre autres, du filtre bilat\IeC {\'e}ral. a) en vert le bloc de threads associ\IeC {\'e} aux pixels centraux. b-e) les blocs de pixels successivement pr\IeC {\'e}-charg\IeC {\'e}s en m\IeC {\'e}moire partag\IeC {\'e}e. f) la configuration finale de la ROI en m\IeC {\'e}moire partag\IeC {\'e}e.}}{36}{figure.4.9}
\addvspace {10\p@ }
-\contentsline {figure}{\numberline {5.1}{\ignorespaces D\IeC {\'e}tail des motifs et de leur repr\IeC {\'e}sentation interne, pour la taille $d=5$. }}{72}{figure.5.1}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Les 8 premi\IeC {\`e}res lignes de la table $P_5$ dont les \IeC {\'e}l\IeC {\'e}ments sont les positions relatives des pixels de chaque motif par rapport au pixel central.}}}{72}{figure.5.1}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Motifs des 8 premiers segments candidats de longueur 5 pixels. Les pixels noirs repr\IeC {\'e}sentent le pixel trait\IeC {\'e} (ou pixel central), qui n'appartient pas au motif. Les pixels gris sont ceux qui constituent le motif.}}}{72}{figure.5.1}
-\contentsline {figure}{\numberline {5.2}{\ignorespaces Exemple de la r\IeC {\'e}partition des pixels dans la r\IeC {\'e}gion $\omega $ pour le calcul de la vraisemblance, pour $n=6$.}}{73}{figure.5.2}
-\contentsline {figure}{\numberline {5.3}{\ignorespaces Allongement du segment $S^n$. Deux candidats $S^{p'}$ et $S^{p''}$ sont \IeC {\'e}valu\IeC {\'e}s au travers du crit\IeC {\`e}re GLRT de l'\IeC {\'e}quation \textup {\hbox {\mathsurround \z@ \normalfont (\ignorespaces \ref {GLRT}\unskip \@@italiccorr )}} que seul $S^{p''}$ s'av\IeC {\`e}re satisfaire. a) Repr\IeC {\'e}sentation dans le plan de l'image. b) \IeC {\'E}volution des niveaux de gris en fonction de la position des pixels dans les lignes bris\IeC {\'e}es ainsi form\IeC {\'e}es.}}{74}{figure.5.3}
-\contentsline {figure}{\numberline {5.4}{\ignorespaces Processus de s\IeC {\'e}lection lors de l'allongement d'une isoline comportant initialement deux segment $s_1$ et $s_2$. Dans cet exemple $d=5$ et $\Delta d_{max}=2$. Chaque segment \IeC {\'e}valu\IeC {\'e} est soumis au crit\IeC {\`e}re GLRT. Si au moins un des segments pr\IeC {\'e}sente un test GLRT positif, alors l'allongement est r\IeC {\'e}alis\IeC {\'e} avec le segment qui forme l'isoline la plus vraisemblable.}}{76}{figure.5.4}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Isoline comprenant deux segments $s_1$ et $s_2$.}}}{76}{figure.5.4}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Premier segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,0}$.}}}{76}{figure.5.4}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Deuxi\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,1}$.}}}{76}{figure.5.4}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Troisi\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,2}$.}}}{76}{figure.5.4}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Quatri\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,3}$.}}}{76}{figure.5.4}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Cinqui\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,4}$.}}}{76}{figure.5.4}
-\contentsline {figure}{\numberline {5.5}{\ignorespaces Images non bruit\IeC {\'e}es de la base d'images en niveaux de gris de S. Lansel.}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {airplane}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {boat}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {barbara}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {couple}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {elaine}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {fingerprint}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {goldhill}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {lena}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {man}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(j)}{\ignorespaces {mandrill}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(k)}{\ignorespaces {peppers}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(l)}{\ignorespaces {stream}}}{77}{figure.5.5}
-\contentsline {subfigure}{\numberline {(m)}{\ignorespaces {zelda}}}{77}{figure.5.5}
-\contentsline {figure}{\numberline {5.6}{\ignorespaces Histogramme des \IeC {\'e}carts angulaires entre la direction primaire de l'isoline optimale et celle de l'isoline s\IeC {\'e}lectionn\IeC {\'e}e, pour l'image du singe (Mandrill). Pour la tr\IeC {\`e}s grande majorit\IeC {\'e} des pixels, le mode de s\IeC {\'e}lection de l'isoline ne g\IeC {\'e}n\IeC {\`e}re pas d'erreur sur la direction du premier segment.}}{78}{figure.5.6}
-\contentsline {figure}{\numberline {5.7}{\ignorespaces Histogrammes des \IeC {\'e}carts angulaires entre la direction primaire de l'isoline optimale et celle de l'isoline s\IeC {\'e}lectionn\IeC {\'e}e, pour les images de l'ensemble de test de S. Lansel. La r\IeC {\'e}partition des erreurs est semblable dans toutes ces images, mais \IeC {\'e}galement dans toute image naturelle.}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Airplane}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Barbara}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Boat}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Couple}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Elaine}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Finger}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {Goldhill}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {Lena}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {Man}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(j)}{\ignorespaces {Peppers}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(k)}{\ignorespaces {Stream}}}{78}{figure.5.7}
-\contentsline {subfigure}{\numberline {(l)}{\ignorespaces {Zelda}}}{78}{figure.5.7}
-\contentsline {figure}{\numberline {5.8}{\ignorespaces Exemple d'application du proc\IeC {\'e}d\IeC {\'e} d'allongement \IeC {\`a} une isoline comprenant initialement 2 segments. la longueur des segments est $d=5$. Le proc\IeC {\'e}d\IeC {\'e} se r\IeC {\'e}p\IeC {\`e}te jusqu'\IeC {\`a} ce que le test GLRT \IeC {\'e}choue.}}{79}{figure.5.8}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Isoline avec 2 segments $s_1$ et $s_2$ d\IeC {\'e}j\IeC {\`a} valid\IeC {\'e}s.}}}{79}{figure.5.8}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {La direction de $s_3$ est l'\IeC {\'e}l\IeC {\'e}ment $(i_2,j_2)$ de $I_{\Theta }$.}}}{79}{figure.5.8}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Le motif de $s_3$ est lu dans $p_5$ et appliqu\IeC {\'e} en $(i_2,j_2)$. $C_x$ et $C_{x^2}$ sont donn\IeC {\'e}es par $I_{\Sigma }(i_2,j_2)$ et le test GLRT est effectu\IeC {\'e}.}}}{79}{figure.5.8}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Si l'allongement est valid\IeC {\'e}, $s_3$ est d\IeC {\'e}finitivement int\IeC {\'e}gr\IeC {\'e}.}}}{79}{figure.5.8}
-\contentsline {figure}{\numberline {5.9}{\ignorespaces Situation de la r\IeC {\'e}gion servant \IeC {\`a} illustrer le comportant du mod\IeC {\`e}le PI-PD dans les zones \IeC {\`a} faible pente (LSR).}}{82}{figure.5.9}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image de r\IeC {\'e}f\IeC {\'e}rence non bruit\IeC {\'e}e.}}}{82}{figure.5.9}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {La r\IeC {\'e}gion de 11$\times $11 pixels \IeC {\'e}tudi\IeC {\'e}e.}}}{82}{figure.5.9}
-\contentsline {figure}{\numberline {5.10}{\ignorespaces Comportement du mod\IeC {\`e}le PI-PD dans les zones de faible et \IeC {\`a} forte pente. On constate un manque de robustesse dans les zones \IeC {\`a} faible pente : les directions ne sont pas reproduites d'un tirage \IeC {\`a} l'autre, contrairement \IeC {\`a} celles de la zone de transition.}}{83}{figure.5.10}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image de r\IeC {\'e}f\IeC {\'e}rence.}}}{83}{figure.5.10}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image corrompue par le tirage de bruit $n^{\circ }1$}}}{83}{figure.5.10}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image corrompue par le tirage de bruit $n^{\circ }2$}}}{83}{figure.5.10}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Directions d\IeC {\'e}termin\IeC {\'e}es par le PI-PD pour le tirage $n^{\circ }1$}}}{83}{figure.5.10}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Directions d\IeC {\'e}termin\IeC {\'e}e par le PI-PD pour le tirage $n^{\circ }2$}}}{83}{figure.5.10}
-\contentsline {figure}{\numberline {5.11}{\ignorespaces Motif de d\IeC {\'e}tection des zones \IeC {\`a} faible pente, pour le cas $\Theta =\Theta _4=45^{\circ }$. L'\IeC {\'e}l\IeC {\'e}vation des pixels permet juste de les distinguer selon 3 classes : l'\IeC {\'e}l\IeC {\'e}vation 1 est associ\IeC {\'e}e aux pixels de la r\IeC {\'e}gion $H$, l'\IeC {\'e}l\IeC {\'e}vation 0.5 est associ\IeC {\'e}e \IeC {\`a} ceux de la r\IeC {\'e}gion $L$ et l'\IeC {\'e}l\IeC {\'e}vation 0 d\IeC {\'e}signe les pixels n\IeC {\'\i }ntervnant pas dans la d\IeC {\'e}tection.}}{84}{figure.5.11}
-\contentsline {figure}{\numberline {5.12}{\ignorespaces Classification des pixels d'une image bruit\IeC {\'e}e, pour une valeur de seuil $T2=2$ du d\IeC {\'e}tecteur. b) Les pixels en noir sont ceux \IeC {\`a} qui le PI-PD sera appliqu\IeC {\'e}. Les pixels en blancs se verront appliquer une moyenne sur tout ou partie du voisinage.}}{84}{figure.5.12}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image bruit\IeC {\'e}e}}}{84}{figure.5.12}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Classification des pixels. }}}{84}{figure.5.12}
-\contentsline {figure}{\numberline {5.13}{\ignorespaces Comparaison des rendus des traitements compar\IeC {\'e}s. Rang\IeC {\'e}e du haut : les images compl\IeC {\`e}tes. Rang\IeC {\'e}e du bas : Zooms sur une zone de l'\IeC {\'\i }mage au dessus.}}{85}{figure.5.13}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image \textit {airplane} bruit\IeC {\'e}e.}}}{85}{figure.5.13}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image \textit {airplane} filtr\IeC {\'e}e par moyenneur 5$\times $5.}}}{85}{figure.5.13}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image \textit {airplane} filtr\IeC {\'e}e par PI-PD hybride avec $l=5$, $n=25$, $T_{max}=2$ et $T2_{max}=2$.}}}{85}{figure.5.13}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Image \textit {airplane} filtr\IeC {\'e}e par PI-PD hybride.}}}{85}{figure.5.13}
-\contentsline {figure}{\numberline {5.14}{\ignorespaces Images non bruit\IeC {\'e}es de la base tid2008.}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {I01}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {I02}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {I03}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {I04}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {I05}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {I06}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {I07}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {I08}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {I09}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(j)}{\ignorespaces {I10}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(k)}{\ignorespaces {I11}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(l)}{\ignorespaces {I12}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(m)}{\ignorespaces {I13}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(n)}{\ignorespaces {I14}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(o)}{\ignorespaces {I15}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(p)}{\ignorespaces {I16}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(q)}{\ignorespaces {I17}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(r)}{\ignorespaces {I18}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(s)}{\ignorespaces {I19}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(t)}{\ignorespaces {I20}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(u)}{\ignorespaces {I21}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(v)}{\ignorespaces {I22}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(w)}{\ignorespaces {I23}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(x)}{\ignorespaces {I24}}}{88}{figure.5.14}
-\contentsline {subfigure}{\numberline {(y)}{\ignorespaces {I25}}}{88}{figure.5.14}
-\contentsline {figure}{\numberline {5.15}{\ignorespaces Exemples de r\IeC {\'e}sultat de traitement par PI-PD RVB et par CBM3D pour deux images de la base tid2008 (une image naturelle et l'image de synth\IeC {\`e}se). Il peut \IeC {\^e}tre n\IeC {\'e}cessaire de zoomer sur le document num\IeC {\'e}rique pour visualiser les d\IeC {\'e}tails.}}{89}{figure.5.15}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image I09 bruit\IeC {\'e}e, PSNR-HVS-M=23,70~dB.}}}{89}{figure.5.15}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image I09 filtr\IeC {\'e}e par PI-PD, PSNR-HVS-M=27,62~dB.}}}{89}{figure.5.15}
-\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image I09 filtr\IeC {\'e}e par CBM3D, PSNR-HVS-M=33,26~dB.}}}{89}{figure.5.15}
-\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Image I25 bruit\IeC {\'e}e, PSNR-HVS-M=24,46~dB.}}}{89}{figure.5.15}
-\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Image I25 filtr\IeC {\'e}e par PI-PD, PSNR-HVS-M=24,62~dB.}}}{89}{figure.5.15}
-\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Image I25 filtr\IeC {\'e}e par CBM3D, PSNR-HVS-M=31,09~dB.}}}{89}{figure.5.15}
+\contentsline {figure}{\numberline {5.1}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par analyse simple d'histogramme. Colonne de gauche : image d'entr\IeC {\'e}e. Colonne centrale : histogramme des niveaux de gris. Colonne de droite : r\IeC {\'e}sultat de la segmentation.}}{41}{figure.5.1}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image initiale comportant deux zones : le fond et le cochon (la cible)}}}{41}{figure.5.1}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Histogramme des niveaux de gris}}}{41}{figure.5.1}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image binaire repr\IeC {\'e}sentant la segmentation. Seuil estim\IeC {\'e} \IeC {\`a} 101 apr\IeC {\`e}s 4 it\IeC {\'e}rations.}}}{41}{figure.5.1}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Image initiale bruit\IeC {\'e}e}}}{41}{figure.5.1}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Histogramme des niveaux de gris}}}{41}{figure.5.1}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Image binaire repr\IeC {\'e}sentant la segmentation. Seuil estim\IeC {\'e} \IeC {\`a} 99 apr\IeC {\`e}s 5 it\IeC {\'e}rations.}}}{41}{figure.5.1}
+\contentsline {figure}{\numberline {5.2}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par simplification de graphe de type \textit {Normalized cut} pour un nombre $s$ de segments variant de 2 \IeC {\`a} 5.}}{43}{figure.5.2}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$s = 2$}}}{43}{figure.5.2}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$s = 3$}}}{43}{figure.5.2}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$s = 4$}}}{43}{figure.5.2}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$s = 5$}}}{43}{figure.5.2}
+\contentsline {figure}{\numberline {5.3}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par algorithme \textit {k-means} pour un nombre $s$ de segments variant de 2 \IeC {\`a} 5. Chaque couleur est associ\IeC {\'e}e \IeC {\`a} un segment. Les couleurs sont choisies pour une meilleure visualisation des diff\IeC {\'e}rents segments.}}{44}{figure.5.3}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$s = 2$}}}{44}{figure.5.3}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$s = 3$}}}{44}{figure.5.3}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$s = 4$}}}{44}{figure.5.3}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$s = 5$}}}{44}{figure.5.3}
+\contentsline {figure}{\numberline {5.4}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par algorithme \textit {mean-shift} pour un rayon de voisinage $r$ de 100, 50, 35 et 25 pixels permettant d'obtenir un nombre $s$ de segments variant respectivement de 2 \IeC {\`a} 5. Le volume minimal admis pour un segment est fix\IeC {\'e} \IeC {\`a} 100 pixels. Chaque couleur est associ\IeC {\'e}e \IeC {\`a} un segment. Les couleurs sont choisies pour une meilleure visualisation des diff\IeC {\'e}rents segments.}}{44}{figure.5.4}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$r=100 \Rightarrow s = 2$}}}{44}{figure.5.4}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$r=50 \Rightarrow s = 3$}}}{44}{figure.5.4}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$r=35 \Rightarrow s = 4$}}}{44}{figure.5.4}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$r=25 \Rightarrow s = 5$}}}{44}{figure.5.4}
+\contentsline {figure}{\numberline {5.5}{\ignorespaces Segmentation d'une image en niveaux de gris de 128 $\times $ 128 pixels par algorithme dit du \textit {snake}, dans sa version originale. Les param\IeC {\`e}tres d'\IeC {\'e}lasticit\IeC {\'e}, de raideur et d'attraction ont \IeC {\'e}t\IeC {\'e} fix\IeC {\'e}s respectivement aux valeurs 5, 0.1 et 5. }}{46}{figure.5.5}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Les \IeC {\'e}tats initial et suivant chacune des trois premi\IeC {\`e}res it\IeC {\'e}rations}}}{46}{figure.5.5}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {L'\IeC {\'e}tat du contour apr\IeC {\`e}s la septi\IeC {\`e}me it\IeC {\'e}ration}}}{46}{figure.5.5}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {L'\IeC {\'e}tat du contour apr\IeC {\`e}s la dixi\IeC {\`e}me it\IeC {\'e}ration}}}{46}{figure.5.5}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {L'\IeC {\'e}tat du contour apr\IeC {\`e}s la centi\IeC {\`e}me it\IeC {\'e}ration. C'est le contour final.}}}{46}{figure.5.5}
+\contentsline {figure}{\numberline {5.6}{\ignorespaces \IeC {\'E}volution du nombre de pixels actifs pour les it\IeC {\'e}rations successives de l'impl\IeC {\'e}mentation de l'algorithme push-relabel de \cite {graphcutscuda}. Les petites images montrent la localisation des pixels actifs apr\IeC {\`e}s chaque it\IeC {\'e}ration, en blanc.}}{49}{figure.5.6}
+\contentsline {figure}{\numberline {5.7}{\ignorespaces Segmentation d'une image couleur de 512$\times $512 pixels par l'impl\IeC {\'e}mentation GPU quick-shift de \cite {fulkerson2012really}.}}{51}{figure.5.7}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image originale}}}{51}{figure.5.7}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$\tau =10$ et $\sigma =2$}}}{51}{figure.5.7}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {$\tau =10$ et $\sigma =10$}}}{51}{figure.5.7}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {$\tau =20$ et $\sigma =10$}}}{51}{figure.5.7}
+\contentsline {figure}{\numberline {5.8}{\ignorespaces Comparaison des segmentations d'une image couleur de 2256$\times $3008 pixels r\IeC {\'e}alis\IeC {\'e}es par \textit {mean-shift} standard et par le \textit {mean-shift kd tree} de \cite {xiao2010efficient}.}}{51}{figure.5.8}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image originale}}}{51}{figure.5.8}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image segment\IeC {\'e}e par mean-shift standard}}}{51}{figure.5.8}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image segment\IeC {\'e}e par mean-shift kd-tree}}}{51}{figure.5.8}
+\contentsline {figure}{\numberline {5.9}{\ignorespaces Segmentation d'images issues d'examens IRM par la m\IeC {\'e}thode des level set \IeC {\`a} bande \IeC {\'e}troite.}}{53}{figure.5.9}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Cerveau 256$\times $256$\times $256 en 7~s}}}{53}{figure.5.9}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Reins et aorte, 256$\times $256$\times $272 en 16~s}}}{53}{figure.5.9}
+\contentsline {figure}{\numberline {5.10}{\ignorespaces Segmentation d'une image d'\IeC {\'e}paule en 1024$^2$ pixels issue d'un examen IRM par l'impl\IeC {\'e}mentation du snake GVF de \cite {snakegvf06}. Le contour est repr\IeC {\'e}sent\IeC {\'e} en rouge et le contour final est obtenu en 11~s. Le trac\IeC {\'e} initial du contour a \IeC {\'e}t\IeC {\'e} artificiellement \IeC {\'e}paissi pour le rendre visible \IeC {\`a} l'\IeC {\'e}chelle de l'impression.}}{53}{figure.5.10}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Contour initial}}}{53}{figure.5.10}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Contour final}}}{53}{figure.5.10}
+\contentsline {figure}{\numberline {5.11}{\ignorespaces Extraction de contour par la version GPU de l'algorithme gPb. Les images sont issues de la base BSDS \cite {martin2001database}}}{55}{figure.5.11}
\addvspace {10\p@ }
-\contentsline {figure}{\numberline {6.1}{\ignorespaces Application de la s\IeC {\'e}lection de m\IeC {\'e}diane par oubli. a) \IeC {\`a} une fen\IeC {\^e}tre de $3\times 3$ pixels. b) Maximisation de l'ILP (Instruction Level Parallelism) pour l'identification des extrema. }}{96}{figure.6.1}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {\IeC {\'E}tapes de la s\IeC {\'e}lection par oubli pour un filtre 3$\times $3.}}}{96}{figure.6.1}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Premi\IeC {\`e}re \IeC {\'e}tape d'identification des extrema pour un filtre 5$\times $5.}}}{96}{figure.6.1}
-\contentsline {figure}{\numberline {6.2}{\ignorespaces Gestion des \IeC {\'e}l\IeC {\'e}ments communs aux fen\IeC {\^e}tres de deux pixels centraux voisins dans un filtre m\IeC {\'e}dian 5$\times $5. La liste initiale comprend les 14 premiers \IeC {\'e}l\IeC {\'e}ments communs, puis les 7 premi\IeC {\`e}res \IeC {\'e}tapes de s\IeC {\'e}lection sont conduites en commun avant que les 5 derni\IeC {\`e}res le soient en parall\IeC {\`e}le, mais de mani\IeC {\`e}re disjointe.}}{98}{figure.6.2}
-\contentsline {figure}{\numberline {6.3}{\ignorespaces Comparaison des d\IeC {\'e}bits (MP/s) atteints par notre impl\IeC {\'e}mentation not\IeC {\'e}e PRMF, avec les principales solutions de r\IeC {\'e}f\IeC {\'e}rence. De gauche \IeC {\`a} droite : PCMF, BVM, PRMF, ArrayFire (impossible en 4096$\times $4096)}}{99}{figure.6.3}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {image 512$\times $512 pixels.}}}{99}{figure.6.3}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {image 4096$\times $4096 pixels.}}}{99}{figure.6.3}
+\contentsline {figure}{\numberline {6.1}{\ignorespaces \IeC {\`A} gauche : d\IeC {\'e}termination des vecteurs $f_{in}$ et $f_{out}$. \IeC {\`A} droite : code de Freeman d'un vecteur en fonction de sa direction, l'origine \IeC {\'e}tant suppos\IeC {\'e}e au pixel central, en noir. }}{62}{figure.6.1}
+\contentsline {figure}{\numberline {6.2}{\ignorespaces \IeC {\'E}volution du contour lors de la segmentation d'une image de 512$^2$ pixels. La convergence est obtenue \IeC {\`a} l'it\IeC {\'e}ration 14 apr\IeC {\`e}s 44~ms pour un total de 256 n\oe uds.}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Initialisation : 4 n\oe uds}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {It\IeC {\'e}ration 1 : 8 n\oe uds 3~ms}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {It\IeC {\'e}ration 2 : 16 n\oe uds 1~ms}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {It\IeC {\'e}ration 3, 32 n\oe uds 1~ms}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {It\IeC {\'e}ration 7 : 223 n\oe uds 3~ms}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {It\IeC {\'e}ration 10 : 244 n\oe uds 3~ms}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {It\IeC {\'e}ration 13 : 256 n\oe uds 3~ms}}}{66}{figure.6.2}
+\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {It\IeC {\'e}ration 14 : 256 n\oe uds 3~ms}}}{66}{figure.6.2}
+\contentsline {figure}{\numberline {6.3}{\ignorespaces Influence du contour initial sur la segmentation. Le contour final 1 est celui de la figure \ref {fig-snakecpu-cochon512}.}}{66}{figure.6.3}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Initialisation 2 }}}{66}{figure.6.3}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Contour final 2 : 273 n\oe uds 87~ms}}}{66}{figure.6.3}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Contour final 1 : 256 n\oe uds 44~ms}}}{66}{figure.6.3}
+\contentsline {figure}{\numberline {6.4}{\ignorespaces Segmentation de l'image de test en 4000$\times $4000 pixels. Le trac\IeC {\'e} du contour a \IeC {\'e}t\IeC {\'e} artificiellement \IeC {\'e}paissi pour le rendre visible \IeC {\`a} l'\IeC {\'e}chelle de l'impression.}}{67}{figure.6.4}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {$d_{max}=16$ et $l_{min}=8$, 1246 n\oe uds en 1.3~s}}}{67}{figure.6.4}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {$d_{max}=128$ et $l_{min}=32$, 447 n\oe uds en 0.7~s}}}{67}{figure.6.4}
+\contentsline {figure}{\numberline {6.5}{\ignorespaces Segmentation de l'image de test en 4000$\times $4000 pixels avec une cible de petite taille. Le contour initial est la transcription de celui utilis\IeC {\'e} \IeC {\`a} la figure \ref {fig-snakecpu-cochon512}. Le trac\IeC {\'e} du contour a \IeC {\'e}t\IeC {\'e} artificiellement \IeC {\'e}paissi pour le rendre visible \IeC {\`a} l'\IeC {\'e}chelle de l'impression.}}{67}{figure.6.5}
+\contentsline {figure}{\numberline {6.6}{\ignorespaces \IeC {\'E}volution du co\IeC {\^u}t relatif des trois fonctions les plus consommatrices en temps de calcul en fonction de la taille de l'image \IeC {\`a} traiter.}}{68}{figure.6.6}
+\contentsline {figure}{\numberline {6.7}{\ignorespaces Calcul des images cumul\IeC {\'e}es $S_x$ et $S_x^2$ en trois \IeC {\'e}tapes successives. a) cumul partiel bloc par bloc et m\IeC {\'e}morisation de la somme de chaque bloc. b) cumul sur le vecteur des sommes partielles. c) ajout des sommes partielles \IeC {\`a} chaque \IeC {\'e}l\IeC {\'e}ment des blocs cumul\IeC {\'e}s.}}{70}{figure.6.7}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {D\IeC {\'e}tail des op\IeC {\'e}rations effectu\IeC {\'e}es par le \textit {kernel} \texttt {compute\_block\_prefixes()}. La valeur $bs$ correspond au nombre de pixels de chaque bloc, qui est aussi le nombre de threads ex\IeC {\'e}cut\IeC {\'e} par chaque bloc de la grille de calcul.}}}{70}{figure.6.7}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {D\IeC {\'e}tail des op\IeC {\'e}rations effectu\IeC {\'e}es par le \textit {kernel} \texttt {scan\_blocksums()}.}}}{70}{figure.6.7}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {D\IeC {\'e}tail des op\IeC {\'e}rations effectu\IeC {\'e}es par le \textit {kernel} \texttt {add\_sums2prefixes()}.}}}{70}{figure.6.7}
+\contentsline {figure}{\numberline {6.8}{\ignorespaces Structuration des donn\IeC {\'e}es en m\IeC {\'e}moire du GPU pour l'\IeC {\'e}valuation en parall\IeC {\`e}le de l'ensemble des \IeC {\'e}volutions possibles du contour.}}{72}{figure.6.8}
+\contentsline {figure}{\numberline {6.9}{\ignorespaces Comparaison des cycles de d\IeC {\'e}placement des n\oe uds. Ligne du haut : version s\IeC {\'e}quentielle. Ligne du bas : version parall\IeC {\`e}le. Les segments en rouge sont des segments du contour non \IeC {\'e}valu\IeC {\'e}s, alors que ceux en pointill\IeC {\'e}s sont les paires ayant re\IeC {\c c}u les meilleures \IeC {\'e}valuations parmi les 8 d\IeC {\'e}placements possibles des n\oe uds correspondant.}}{73}{figure.6.9}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Contour de r\IeC {\'e}f\IeC {\'e}rence.}}}{73}{figure.6.9}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {D\IeC {\'e}placement du n\oe ud $N_1$. Le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{73}{figure.6.9}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {D\IeC {\'e}placement du n\oe ud $N_2$. Le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{73}{figure.6.9}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {D\IeC {\'e}placement en parall\IeC {\`e}le de tous les n\oe uds. Les segments du contour n'ont pas \IeC {\'e}t\IeC {\'e} valid\IeC {\'e}s. On doit recalculer le crit\IeC {\`e}re apr\IeC {\`e}s les d\IeC {\'e}placements pour savoir s'il a \IeC {\'e}t\IeC {\'e} am\IeC {\'e}lior\IeC {\'e}.}}}{73}{figure.6.9}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {D\IeC {\'e}placement en parall\IeC {\`e}le des n\oe uds impairs. Le crit\IeC {\`e}re est am\IeC {\'e}lior\IeC {\'e}.}}}{73}{figure.6.9}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {D\IeC {\'e}placement en parall\IeC {\`e}le des n\oe uds pairs. Un seul segment n'a pas \IeC {\'e}t\IeC {\'e} \IeC {\'e}valu\IeC {\'e}.}}}{73}{figure.6.9}
+\contentsline {figure}{\numberline {6.10}{\ignorespaces D\IeC {\'e}termination des coefficients $C(i,j)$ des pixels du contour.}}{75}{figure.6.10}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Quadrants 1 et 4}}}{75}{figure.6.10}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Quadrants 2 et 3}}}{75}{figure.6.10}
+\contentsline {figure}{\numberline {6.11}{\ignorespaces Segmentations d'une image de 100~MP en 0,59~s pour 5 it\IeC {\'e}rations. Le contour initial conserve les proportions de celui de la figure \ref {fig-snakecpu-cochon512}. }}{76}{figure.6.11}
+\contentsline {figure}{\numberline {6.12}{\ignorespaces D\IeC {\'e}termination intelligente du contour initial en deux phases successives. a) La premi\IeC {\`e}re \IeC {\'e}tape repose sur un \IeC {\'e}chantillonnage horizontal. b) La seconde \IeC {\'e}tape repose sur un \IeC {\'e}chantillonnage vertical.}}{77}{figure.6.12}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {D\IeC {\'e}termination de $j_L$ et $j_H$.}}}{77}{figure.6.12}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {D\IeC {\'e}termination de $i_L$ et $i_H$.}}}{77}{figure.6.12}
\addvspace {10\p@ }
-\contentsline {figure}{\numberline {7.1}{\ignorespaces Multiplicit\IeC {\'e} des implications des pixels de la zone d'int\IeC {\'e}r\IeC {\^e}t d'un thread dans les calculs de convolution. Le nombre de calculs dans lequel est impliqu\IeC {\'e} un pixel est inscrit en son centre. Le premier pixel du paquet, ou pixel de base, est rep\IeC {\'e}r\IeC {\'e} par ses coordonn\IeC {\'e}es $(x, y)$ ; le dernier a pour coordonn\IeC {\'e}es $(x+7,y)$}}{106}{figure.7.1}
-\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Cas d'un masque de taille 3$\times $3 ($k=1$) o\IeC {\`u} l'on d\IeC {\'e}nombre 6 colonnes centrales, soit 18 pixels de multiplicit\IeC {\'e} maximale 3.}}}{106}{figure.7.1}
-\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Cas d'un masque de taille 5$\times $5 ($k=2$) o\IeC {\`u} l'on d\IeC {\'e}nombre 4 colonnes centrales, soit 20 pixels de multiplicit\IeC {\'e} maximale 5.}}}{106}{figure.7.1}
+\contentsline {figure}{\numberline {7.1}{\ignorespaces D\IeC {\'e}tail des motifs et de leur repr\IeC {\'e}sentation interne, pour la taille $a=5$. }}{82}{figure.7.1}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Les 8 premi\IeC {\`e}res lignes de la table $P_5$. Les \IeC {\'e}l\IeC {\'e}ments sont les positions relatives des pixels de chaque motif par rapport au pixel central.}}}{82}{figure.7.1}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Motifs des 8 premiers segments associ\IeC {\'e}s aux 8 premi\IeC {\`e}res lignes de $P_5$. Les pixels noirs repr\IeC {\'e}sentent le pixel trait\IeC {\'e} (ou pixel central), qui n'appartient pas au motif. Les pixels gris sont ceux qui constituent le motif.}}}{82}{figure.7.1}
+\contentsline {figure}{\numberline {7.2}{\ignorespaces Exemple de la r\IeC {\'e}partition des pixels dans la r\IeC {\'e}gion $\omega $ pour le calcul de la vraisemblance, pour $n=6$ ($a=5$).}}{83}{figure.7.2}
+\contentsline {figure}{\numberline {7.3}{\ignorespaces Allongement du segment $S^n$. Deux candidats $S^{p'}$ et $S^{p''}$ sont \IeC {\'e}valu\IeC {\'e}s au travers du crit\IeC {\`e}re GLRT de l'\IeC {\'e}quation \textup {\hbox {\mathsurround \z@ \normalfont (\ignorespaces \ref {GLRT}\unskip \@@italiccorr )}} que seul $S^{p''}$ s'av\IeC {\`e}re satisfaire. a) Repr\IeC {\'e}sentation dans le plan de l'image. b) \IeC {\'E}volution des niveaux de gris en fonction de la position des pixels dans les lignes bris\IeC {\'e}es ainsi form\IeC {\'e}es.}}{84}{figure.7.3}
+\contentsline {figure}{\numberline {7.4}{\ignorespaces Processus de s\IeC {\'e}lection lors de l'allongement d'une isoline comportant initialement deux segments $s_1$ et $s_2$. Dans cet exemple $a=5$ et $\Delta d_{max}=2$. Chaque segment \IeC {\'e}valu\IeC {\'e} est soumis au crit\IeC {\`e}re GLRT. Si au moins un des segments pr\IeC {\'e}sente un test GLRT positif, alors l'allongement est r\IeC {\'e}alis\IeC {\'e} avec le segment qui forme l'isoline la plus vraisemblable.}}{86}{figure.7.4}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Isoline comprenant deux segments $s_1$ et $s_2$.}}}{86}{figure.7.4}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Premier segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,0}$.}}}{86}{figure.7.4}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Deuxi\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,1}$.}}}{86}{figure.7.4}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Troisi\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,2}$.}}}{86}{figure.7.4}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Quatri\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,3}$.}}}{86}{figure.7.4}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Cinqui\IeC {\`e}me segment \IeC {\'e}valu\IeC {\'e}, associ\IeC {\'e} au motif $p_{5,4}$.}}}{86}{figure.7.4}
+\contentsline {figure}{\numberline {7.5}{\ignorespaces Images non bruit\IeC {\'e}es de la base d'images en niveaux de gris de S. Lansel.}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {airplane}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {boat}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {barbara}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {couple}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {elaine}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {fingerprint}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {goldhill}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {lena}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {man}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(j)}{\ignorespaces {mandrill}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(k)}{\ignorespaces {peppers}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(l)}{\ignorespaces {stream}}}{87}{figure.7.5}
+\contentsline {subfigure}{\numberline {(m)}{\ignorespaces {zelda}}}{87}{figure.7.5}
+\contentsline {figure}{\numberline {7.6}{\ignorespaces Histogramme des \IeC {\'e}carts angulaires entre la direction primaire de l'isoline optimale et celle du segment s\IeC {\'e}lectionn\IeC {\'e} par PI-LD avec $q=1$ (sans allongement), pour l'image du singe (Mandrill). Pour la tr\IeC {\`e}s grande majorit\IeC {\'e} des pixels, l'\IeC {\'e}cart est nul.}}{87}{figure.7.6}
+\contentsline {figure}{\numberline {7.7}{\ignorespaces Histogrammes des \IeC {\'e}carts angulaires entre la direction primaire de l'isoline optimale et celle de l'isoline s\IeC {\'e}lectionn\IeC {\'e}e, pour les images de l'ensemble de test de S. Lansel. La r\IeC {\'e}partition des erreurs est semblable dans toutes ces images, mais \IeC {\'e}galement dans toute image naturelle.}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Airplane}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Barbara}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Boat}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Couple}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Elaine}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Finger}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {Goldhill}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {Lena}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {Man}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(j)}{\ignorespaces {Peppers}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(k)}{\ignorespaces {Stream}}}{88}{figure.7.7}
+\contentsline {subfigure}{\numberline {(l)}{\ignorespaces {Zelda}}}{88}{figure.7.7}
+\contentsline {figure}{\numberline {7.8}{\ignorespaces Exemple d'application du proc\IeC {\'e}d\IeC {\'e} d'allongement \IeC {\`a} une isoline comprenant initialement 2 segments. la longueur des segments est $a=5$. Le proc\IeC {\'e}d\IeC {\'e} se r\IeC {\'e}p\IeC {\`e}te jusqu'\IeC {\`a} ce que le test GLRT \IeC {\'e}choue.}}{89}{figure.7.8}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Isoline avec 2 segments $s_1$ et $s_2$ d\IeC {\'e}j\IeC {\`a} valid\IeC {\'e}s.}}}{89}{figure.7.8}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {La direction de $s_3$ est l'\IeC {\'e}l\IeC {\'e}ment $(i_2,j_2)$ de $I_{\Theta }$.}}}{89}{figure.7.8}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Le motif de $s_3$ est lu dans $p_5$ et appliqu\IeC {\'e} en $(i_2,j_2)$. $C_x$ et $C_{x^2}$ sont donn\IeC {\'e}es par $I_{\Sigma }(i_2,j_2)$ et le test GLRT est effectu\IeC {\'e}.}}}{89}{figure.7.8}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Si l'allongement est valid\IeC {\'e}, $s_3$ est d\IeC {\'e}finitivement int\IeC {\'e}gr\IeC {\'e}.}}}{89}{figure.7.8}
+\contentsline {figure}{\numberline {7.9}{\ignorespaces Situation de la r\IeC {\'e}gion servant \IeC {\`a} illustrer le comportant du mod\IeC {\`e}le PI-PD dans les zones \IeC {\`a} faible pente (LSR).}}{90}{figure.7.9}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image de r\IeC {\'e}f\IeC {\'e}rence non bruit\IeC {\'e}e.}}}{90}{figure.7.9}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {La r\IeC {\'e}gion de 11$\times $11 pixels \IeC {\'e}tudi\IeC {\'e}e.}}}{90}{figure.7.9}
+\contentsline {figure}{\numberline {7.10}{\ignorespaces Comportement du mod\IeC {\`e}le PI-PD dans les zones de faible et \IeC {\`a} forte pente. On constate un manque de robustesse dans les zones \IeC {\`a} faible pente : les directions ne sont pas reproduites d'un tirage \IeC {\`a} l'autre, contrairement \IeC {\`a} celles de la zone de transition.}}{93}{figure.7.10}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image de r\IeC {\'e}f\IeC {\'e}rence.}}}{93}{figure.7.10}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image corrompue par le tirage de bruit $n^{\circ }1$}}}{93}{figure.7.10}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image corrompue par le tirage de bruit $n^{\circ }2$}}}{93}{figure.7.10}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Directions d\IeC {\'e}termin\IeC {\'e}es par le PI-PD pour le tirage $n^{\circ }1$}}}{93}{figure.7.10}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Directions d\IeC {\'e}termin\IeC {\'e}e par le PI-PD pour le tirage $n^{\circ }2$}}}{93}{figure.7.10}
+\contentsline {figure}{\numberline {7.11}{\ignorespaces Motif de d\IeC {\'e}tection des zones \IeC {\`a} faible pente, pour le cas $\Theta =\Theta _4=45^{\circ }$. L'\IeC {\'e}l\IeC {\'e}vation des pixels permet juste de les distinguer selon 3 classes : l'\IeC {\'e}l\IeC {\'e}vation 1 est associ\IeC {\'e}e aux pixels de la r\IeC {\'e}gion $T$, l'\IeC {\'e}l\IeC {\'e}vation 0.5 est associ\IeC {\'e}e \IeC {\`a} ceux de la r\IeC {\'e}gion $B$ et l'\IeC {\'e}l\IeC {\'e}vation 0 d\IeC {\'e}signe les pixels n'intervenant pas dans la d\IeC {\'e}tection.}}{94}{figure.7.11}
+\contentsline {figure}{\numberline {7.12}{\ignorespaces Classification des pixels d'une image bruit\IeC {\'e}e, pour une valeur de seuil $T2=2$ du d\IeC {\'e}tecteur. b) Les pixels en noir sont ceux \IeC {\`a} qui le PI-PD sera appliqu\IeC {\'e}. Les pixels en blancs se verront appliquer une moyenne sur tout ou partie du voisinage.}}{94}{figure.7.12}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image bruit\IeC {\'e}e}}}{94}{figure.7.12}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Classification des pixels. }}}{94}{figure.7.12}
+\contentsline {figure}{\numberline {7.13}{\ignorespaces Comparaison des rendus des traitements compar\IeC {\'e}s. Rang\IeC {\'e}e du haut : les images compl\IeC {\`e}tes. Rang\IeC {\'e}e du bas : Zooms sur une zone de l'\IeC {\'\i }mage au dessus.}}{95}{figure.7.13}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image \textit {airplane} bruit\IeC {\'e}e.}}}{95}{figure.7.13}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image \textit {airplane} filtr\IeC {\'e}e par moyenneur 5$\times $5.}}}{95}{figure.7.13}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image \textit {airplane} filtr\IeC {\'e}e par PI-PD hybride avec $a=5$, $q=5$, $T_{max}=2$ et $T2_{max}=2$.}}}{95}{figure.7.13}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Image \textit {airplane} filtr\IeC {\'e}e par BM3D.}}}{95}{figure.7.13}
+\contentsline {figure}{\numberline {7.14}{\ignorespaces Images non bruit\IeC {\'e}es de la base tid2008.}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {I01}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {I02}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {I03}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {I04}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {I05}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {I06}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(g)}{\ignorespaces {I07}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(h)}{\ignorespaces {I08}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(i)}{\ignorespaces {I09}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(j)}{\ignorespaces {I10}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(k)}{\ignorespaces {I11}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(l)}{\ignorespaces {I12}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(m)}{\ignorespaces {I13}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(n)}{\ignorespaces {I14}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(o)}{\ignorespaces {I15}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(p)}{\ignorespaces {I16}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(q)}{\ignorespaces {I17}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(r)}{\ignorespaces {I18}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(s)}{\ignorespaces {I19}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(t)}{\ignorespaces {I20}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(u)}{\ignorespaces {I21}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(v)}{\ignorespaces {I22}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(w)}{\ignorespaces {I23}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(x)}{\ignorespaces {I24}}}{98}{figure.7.14}
+\contentsline {subfigure}{\numberline {(y)}{\ignorespaces {I25}}}{98}{figure.7.14}
+\contentsline {figure}{\numberline {7.15}{\ignorespaces Exemples de r\IeC {\'e}sultat de traitement par PI-PD RVB et par CBM3D pour deux images de la base tid2008 (une image naturelle et l'image de synth\IeC {\`e}se). Il peut \IeC {\^e}tre n\IeC {\'e}cessaire de zoomer sur le document num\IeC {\'e}rique pour visualiser les d\IeC {\'e}tails.}}{99}{figure.7.15}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Image I09 bruit\IeC {\'e}e, PSNR-HVS-M=23,70~dB.}}}{99}{figure.7.15}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Image I09 filtr\IeC {\'e}e par PI-PD, PSNR-HVS-M=27,62~dB.}}}{99}{figure.7.15}
+\contentsline {subfigure}{\numberline {(c)}{\ignorespaces {Image I09 filtr\IeC {\'e}e par CBM3D, PSNR-HVS-M=33,26~dB.}}}{99}{figure.7.15}
+\contentsline {subfigure}{\numberline {(d)}{\ignorespaces {Image I25 bruit\IeC {\'e}e, PSNR-HVS-M=24,46~dB.}}}{99}{figure.7.15}
+\contentsline {subfigure}{\numberline {(e)}{\ignorespaces {Image I25 filtr\IeC {\'e}e par PI-PD, PSNR-HVS-M=24,62~dB.}}}{99}{figure.7.15}
+\contentsline {subfigure}{\numberline {(f)}{\ignorespaces {Image I25 filtr\IeC {\'e}e par CBM3D, PSNR-HVS-M=31,09~dB.}}}{99}{figure.7.15}
+\addvspace {10\p@ }
+\contentsline {figure}{\numberline {8.1}{\ignorespaces Application de la s\IeC {\'e}lection de m\IeC {\'e}diane par oubli \IeC {\`a} une fen\IeC {\^e}tre de $3\times 3$ pixels. }}{106}{figure.8.1}
+\contentsline {figure}{\numberline {8.2}{\ignorespaces Premi\IeC {\`e}re \IeC {\'e}tape d'identification des extrema pour un filtre 5$\times $5, avec maximisation de l'ILP (Instruction Level Parallelism) pour l'identification des extrema.}}{107}{figure.8.2}
+\contentsline {figure}{\numberline {8.3}{\ignorespaces Gestion des \IeC {\'e}l\IeC {\'e}ments communs aux fen\IeC {\^e}tres de deux pixels centraux voisins dans un filtre m\IeC {\'e}dian 5$\times $5. La liste initiale comprend les 14 premiers \IeC {\'e}l\IeC {\'e}ments communs, puis les 7 premi\IeC {\`e}res \IeC {\'e}tapes de s\IeC {\'e}lection sont conduites en commun avant que les 5 derni\IeC {\`e}res le soient en parall\IeC {\`e}le, mais de mani\IeC {\`e}re disjointe.}}{108}{figure.8.3}
+\contentsline {figure}{\numberline {8.4}{\ignorespaces Comparaison des d\IeC {\'e}bits (MP/s) atteints par notre impl\IeC {\'e}mentation not\IeC {\'e}e PRMF, avec les principales solutions de r\IeC {\'e}f\IeC {\'e}rence. De gauche \IeC {\`a} droite : PCMF, BVM, PRMF, ArrayFire (impossible en 4096$\times $4096)}}{110}{figure.8.4}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {image 512$\times $512 pixels.}}}{110}{figure.8.4}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {image 4096$\times $4096 pixels.}}}{110}{figure.8.4}
+\addvspace {10\p@ }
+\contentsline {figure}{\numberline {9.1}{\ignorespaces Multiplicit\IeC {\'e} des implications des pixels de la zone d'int\IeC {\'e}r\IeC {\^e}t d'un thread dans les calculs de convolution. Le nombre de calculs dans lequel est impliqu\IeC {\'e} un pixel est inscrit en son centre. Le premier pixel du paquet, ou pixel de base, est rep\IeC {\'e}r\IeC {\'e} par ses coordonn\IeC {\'e}es $(x, y)$ ; le dernier a pour coordonn\IeC {\'e}es $(x+7,y)$}}{116}{figure.9.1}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {Cas d'un masque de taille 3$\times $3 ($k=1$) o\IeC {\`u} l'on d\IeC {\'e}nombre 6 colonnes centrales, soit 18 pixels de multiplicit\IeC {\'e} maximale 3.}}}{116}{figure.9.1}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {Cas d'un masque de taille 5$\times $5 ($k=2$) o\IeC {\`u} l'on d\IeC {\'e}nombre 4 colonnes centrales, soit 20 pixels de multiplicit\IeC {\'e} maximale 5.}}}{116}{figure.9.1}
+\contentsline {figure}{\numberline {9.2}{\ignorespaces G\IeC {\'e}n\IeC {\'e}rateur de codes sources pour les filtres GPU rapides.}}{125}{figure.9.2}
+\contentsline {subfigure}{\numberline {(a)}{\ignorespaces {S\IeC {\'e}lection des param\IeC {\`e}tres.}}}{125}{figure.9.2}
+\contentsline {subfigure}{\numberline {(b)}{\ignorespaces {T\IeC {\'e}l\IeC {\'e}chargement des fichiers.}}}{125}{figure.9.2}
\addvspace {10\p@ }