\BOOKMARK [-1][]{part.1}{I Introduction}{} \BOOKMARK [0][]{chapter.1}{1 Pr\351ambule}{part.1} \BOOKMARK [0][]{chapter.2}{2 Les processeurs graphiques \(GPU\) NVidia\256}{part.1} \BOOKMARK [1][]{section.2.1}{2.1 Pourquoi ?}{chapter.2} \BOOKMARK [1][]{section.2.2}{2.2 Comment ?}{chapter.2} \BOOKMARK [2][]{subsection.2.2.1}{2.2.1 Le mat\351riel}{section.2.2} \BOOKMARK [2][]{subsection.2.2.2}{2.2.2 Le logiciel}{section.2.2} \BOOKMARK [2][]{subsection.2.2.3}{2.2.3 L'occupancy}{section.2.2} \BOOKMARK [1][]{section.2.3}{2.3 Contraintes de conception}{chapter.2} \BOOKMARK [-1][]{part.2}{II Le traitement des images}{} \BOOKMARK [0][]{chapter.3}{3 Mod\350les d'image et de bruits - notations}{part.2} \BOOKMARK [1][]{section.3.1}{3.1 Mod\350le d'image bruit\351e}{chapter.3} \BOOKMARK [1][]{section.3.2}{3.2 Mod\350les de bruit}{chapter.3} \BOOKMARK [2][]{subsection.3.2.1}{3.2.1 Le bruit gaussien}{section.3.2} \BOOKMARK [2][]{subsection.3.2.2}{3.2.2 Le speckle}{section.3.2} \BOOKMARK [2][]{subsection.3.2.3}{3.2.3 Le bruit \253 sel et poivre \273}{section.3.2} \BOOKMARK [2][]{subsection.3.2.4}{3.2.4 Le bruit de Poisson}{section.3.2} \BOOKMARK [0][]{chapter.4}{4 Les techniques de r\351duction de bruit}{part.2} \BOOKMARK [1][]{section.4.1}{4.1 Les techniques de r\351duction de bruit}{chapter.4} \BOOKMARK [2][]{subsection.4.1.1}{4.1.1 Les op\351rateurs de base}{section.4.1} \BOOKMARK [3][]{subsubsection.4.1.1.1}{4.1.1.1 Le filtre de convolution}{subsection.4.1.1} \BOOKMARK [3][]{subsubsection.4.1.1.2}{4.1.1.2 Le filtre m\351dian}{subsection.4.1.1} \BOOKMARK [3][]{subsubsection.4.1.1.3}{4.1.1.3 Le filtre bilat\351ral}{subsection.4.1.1} \BOOKMARK [3][]{subsubsection.4.1.1.4}{4.1.1.4 Les algorithmes de filtrage par dictionnaire}{subsection.4.1.1} \BOOKMARK [2][]{subsection.4.1.2}{4.1.2 Les algorithmes de filtrage par patches}{section.4.1} \BOOKMARK [1][]{section.4.2}{4.2 Les impl\351mentations sur GPU des algorithmes de filtrage}{chapter.4} \BOOKMARK [2][]{subsection.4.2.1}{4.2.1 Le filtrage par convolution}{section.4.2} \BOOKMARK [2][]{subsection.4.2.2}{4.2.2 Le filtre m\351dian}{section.4.2} \BOOKMARK [2][]{subsection.4.2.3}{4.2.3 Le filtre bilat\351ral}{section.4.2} \BOOKMARK [2][]{subsection.4.2.4}{4.2.4 Les filtres par patches}{section.4.2} \BOOKMARK [0][]{chapter.5}{5 Les techniques de segmentation des images}{part.2} \BOOKMARK [1][]{section.5.1}{5.1 Introduction}{chapter.5} \BOOKMARK [1][]{section.5.2}{5.2 Les techniques de segmentation orient\351es r\351gions}{chapter.5} \BOOKMARK [2][]{subsection.5.2.1}{5.2.1 Analyse d'histogramme}{section.5.2} \BOOKMARK [2][]{subsection.5.2.2}{5.2.2 Partitionnement de graphe}{section.5.2} \BOOKMARK [2][]{subsection.5.2.3}{5.2.3 kernel-means, mean-shift et apparent\351s}{section.5.2} \BOOKMARK [1][]{section.5.3}{5.3 Les techniques de segmentation par contours actifs, ou snakes}{chapter.5} \BOOKMARK [2][]{subsection.5.3.1}{5.3.1 M\351thodes hybrides}{section.5.3} \BOOKMARK [1][]{section.5.4}{5.4 Les impl\351mentations des techniques de segmentation sur GPU}{chapter.5} \BOOKMARK [2][]{subsection.5.4.1}{5.4.1 Calcul d'histogramme}{section.5.4} \BOOKMARK [2][]{subsection.5.4.2}{5.4.2 Partitionnement de graphe}{section.5.4} \BOOKMARK [2][]{subsection.5.4.3}{5.4.3 K-means, mean-shift et apparent\351s}{section.5.4} \BOOKMARK [2][]{subsection.5.4.4}{5.4.4 Level set et snakes}{section.5.4} \BOOKMARK [2][]{subsection.5.4.5}{5.4.5 Algorithmes hybrides}{section.5.4} \BOOKMARK [1][]{section.5.5}{5.5 Conclusion}{chapter.5} \BOOKMARK [-1][]{part.3}{III Algorithmes GPU rapides pour la r\351duction de bruit et la segmentation}{} \BOOKMARK [0][]{chapter.6}{6 La segmentation par snake polygonal orient\351 r\351gions}{part.3} \BOOKMARK [1][]{section.6.1}{6.1 Introduction}{chapter.6} \BOOKMARK [1][]{section.6.2}{6.2 Pr\351sentation de l'algorithme}{chapter.6} \BOOKMARK [2][]{subsection.6.2.1}{6.2.1 Formulation}{section.6.2} \BOOKMARK [2][]{subsection.6.2.2}{6.2.2 Optimisation des calculs}{section.6.2} \BOOKMARK [2][]{subsection.6.2.3}{6.2.3 Impl\351mentation s\351quentielle}{section.6.2} \BOOKMARK [2][]{subsection.6.2.4}{6.2.4 Performances}{section.6.2} \BOOKMARK [1][]{section.6.3}{6.3 Impl\351mentation parall\350le GPU du snake polygonal}{chapter.6} \BOOKMARK [2][]{subsection.6.3.1}{6.3.1 Pr\351-calculs des images cumul\351es}{section.6.3} \BOOKMARK [2][]{subsection.6.3.2}{6.3.2 Calcul des contributions des segments}{section.6.3} \BOOKMARK [3][]{subsubsection.6.3.2.1}{6.3.2.1 Cas particulier des segments dont la pente k v\351rifie |k|1}{subsection.6.3.2} \BOOKMARK [2][]{subsection.6.3.3}{6.3.3 Performances}{section.6.3} \BOOKMARK [2][]{subsection.6.3.4}{6.3.4 D\351termination du contour initial au sens du maximum de vraisemblance}{section.6.3} \BOOKMARK [2][]{subsection.6.3.5}{6.3.5 Conclusion}{section.6.3} \BOOKMARK [0][]{chapter.7}{7 R\351duction de bruit par recherche des lignes de niveaux}{part.3} \BOOKMARK [1][]{section.7.1}{7.1 Introduction}{chapter.7} \BOOKMARK [1][]{section.7.2}{7.2 Pr\351sentation de l'algorithme}{chapter.7} \BOOKMARK [2][]{subsection.7.2.1}{7.2.1 Formulation}{section.7.2} \BOOKMARK [3][]{subsubsection.7.2.1.1}{7.2.1.1 D\351termination du premier segment}{subsection.7.2.1} \BOOKMARK [3][]{subsubsection.7.2.1.2}{7.2.1.2 Isolines compos\351es de plusieurs segments - crit\350re d'allongement}{subsection.7.2.1} \BOOKMARK [1][]{section.7.3}{7.3 Mod\351lisation des isolines pour l'impl\351mentation parall\350le sur GPU}{chapter.7} \BOOKMARK [2][]{subsection.7.3.1}{7.3.1 Isolines \351valu\351es semi-globalement}{section.7.3} \BOOKMARK [2][]{subsection.7.3.2}{7.3.2 Isolines \340 segments pr\351-\351valu\351s - mod\350le PI-PD}{section.7.3} \BOOKMARK [2][]{subsection.7.3.3}{7.3.3 Mod\350le PI-PD hybride}{section.7.3} \BOOKMARK [3][]{subsubsection.7.3.3.1}{7.3.3.1 Le d\351tecteur de bords}{subsection.7.3.3} \BOOKMARK [1][]{section.7.4}{7.4 R\351sultats}{chapter.7} \BOOKMARK [1][]{section.7.5}{7.5 Extension aux images couleurs}{chapter.7} \BOOKMARK [2][]{subsection.7.5.1}{7.5.1 Expression du crit\350re}{section.7.5} \BOOKMARK [2][]{subsection.7.5.2}{7.5.2 R\351sultats - analyse}{section.7.5} \BOOKMARK [1][]{section.7.6}{7.6 Conclusion}{chapter.7} \BOOKMARK [0][]{chapter.8}{8 Le filtre m\351dian sur GPU}{part.3} \BOOKMARK [1][]{section.8.1}{8.1 Introduction}{chapter.8} \BOOKMARK [1][]{section.8.2}{8.2 Les transferts de donn\351es}{chapter.8} \BOOKMARK [1][]{section.8.3}{8.3 Utilisation des registres}{chapter.8} \BOOKMARK [2][]{subsection.8.3.1}{8.3.1 La s\351lection de la valeur m\351diane}{section.8.3} \BOOKMARK [2][]{subsection.8.3.2}{8.3.2 Masquage des latences}{section.8.3} \BOOKMARK [1][]{section.8.4}{8.4 R\351sultats}{chapter.8} \BOOKMARK [1][]{section.8.5}{8.5 Conclusion}{chapter.8} \BOOKMARK [0][]{chapter.9}{9 Les filtres de convolution sur GPU}{part.3} \BOOKMARK [1][]{section.9.1}{9.1 Introduction}{chapter.9} \BOOKMARK [1][]{section.9.2}{9.2 Impl\351mentation g\351n\351rique de la convolution non s\351parable sur GPU}{chapter.9} \BOOKMARK [1][]{section.9.3}{9.3 Impl\351mentation optimis\351e de la convolution non s\351parable sur GPU}{chapter.9} \BOOKMARK [1][]{section.9.4}{9.4 Cas de la convolution s\351parable}{chapter.9} \BOOKMARK [1][]{section.9.5}{9.5 Conclusion}{chapter.9} \BOOKMARK [0][]{chapter.10}{10 Conclusion g\351n\351rale}{part.3}