\select@language {french}
-\contentsline {chapter}{\numberline {1}Introduction}{7}{chapter.1}
-\contentsline {chapter}{\numberline {2}Les processeurs graphiques (GPU) NVidia\textregistered }{11}{chapter.2}
-\contentsline {section}{\numberline {2.1}Pourquoi ?}{11}{section.2.1}
-\contentsline {section}{\numberline {2.2}Comment ?}{12}{section.2.2}
-\contentsline {subsection}{\numberline {2.2.1}Le mat\IeC {\'e}riel}{12}{subsection.2.2.1}
-\contentsline {subsection}{\numberline {2.2.2}Le logiciel}{13}{subsection.2.2.2}
-\contentsline {subsection}{\numberline {2.2.3}l'Occupancy}{14}{subsection.2.2.3}
-\contentsline {chapter}{\numberline {3}Le traitement des images bruit\IeC {\'e}es}{17}{chapter.3}
-\contentsline {section}{\numberline {3.1}Mod\IeC {\`e}le d'image bruit\IeC {\'e}e}{18}{section.3.1}
-\contentsline {section}{\numberline {3.2}Mod\IeC {\`e}les de bruit}{18}{section.3.2}
-\contentsline {subsection}{\numberline {3.2.1}Le bruit gaussien}{18}{subsection.3.2.1}
-\contentsline {subsection}{\numberline {3.2.2}Le speckle}{18}{subsection.3.2.2}
-\contentsline {subsection}{\numberline {3.2.3}Le bruit ``sel et poivre''}{19}{subsection.3.2.3}
-\contentsline {subsection}{\numberline {3.2.4}Le bruit de Poisson}{19}{subsection.3.2.4}
-\contentsline {section}{\numberline {3.3}Les techniques de r\IeC {\'e}duction de bruit}{19}{section.3.3}
-\contentsline {subsection}{\numberline {3.3.1}Les op\IeC {\'e}rateurs de base}{21}{subsection.3.3.1}
-\contentsline {subsubsection}{\numberline {3.3.1.1}Le filtre de convolution}{21}{subsubsection.3.3.1.1}
-\contentsline {subsubsection}{\numberline {3.3.1.2}Le filtre m\IeC {\'e}dian}{21}{subsubsection.3.3.1.2}
-\contentsline {subsubsection}{\numberline {3.3.1.3}Le filtre bilat\IeC {\'e}ral}{22}{subsubsection.3.3.1.3}
-\contentsline {subsubsection}{\numberline {3.3.1.4}Les algorithmes de filtrage par dictionnaire}{24}{subsubsection.3.3.1.4}
-\contentsline {subsection}{\numberline {3.3.2}Les algorithmes de filtrage par patches}{24}{subsection.3.3.2}
-\contentsline {section}{\numberline {3.4}Les impl\IeC {\'e}mentations GPU des algorithmes de filtrage}{26}{section.3.4}
-\contentsline {subsection}{\numberline {3.4.1}Le filtrage par convolution}{26}{subsection.3.4.1}
-\contentsline {subsection}{\numberline {3.4.2}Le filtre m\IeC {\'e}dian}{26}{subsection.3.4.2}
-\contentsline {subsection}{\numberline {3.4.3}Le filtre bilat\IeC {\'e}ral}{27}{subsection.3.4.3}
-\contentsline {subsection}{\numberline {3.4.4}Les filtres par patches}{29}{subsection.3.4.4}
-\contentsline {section}{\numberline {3.5}Les techniques de segmentation}{29}{section.3.5}
-\contentsline {subsection}{\numberline {3.5.1}Analyse d'histogramme}{30}{subsection.3.5.1}
-\contentsline {subsection}{\numberline {3.5.2}Partitionnement de graphe}{32}{subsection.3.5.2}
-\contentsline {subsection}{\numberline {3.5.3}kernel-means, mean-shift et apparent\IeC {\'e}s}{33}{subsection.3.5.3}
-\contentsline {subsection}{\numberline {3.5.4}Les contours actifs, ou \textit {snakes}}{35}{subsection.3.5.4}
-\contentsline {subsection}{\numberline {3.5.5}M\IeC {\'e}thodes hybrides}{37}{subsection.3.5.5}
-\contentsline {section}{\numberline {3.6}Les impl\IeC {\'e}mentations GPU des techniques de segmentation}{37}{section.3.6}
-\contentsline {subsection}{\numberline {3.6.1}Calcul d'histogramme}{38}{subsection.3.6.1}
-\contentsline {subsection}{\numberline {3.6.2}Partitionnement de graphe}{38}{subsection.3.6.2}
-\contentsline {subsection}{\numberline {3.6.3}K-means, mean-shift et apparent\IeC {\'e}s}{39}{subsection.3.6.3}
-\contentsline {subsection}{\numberline {3.6.4}Snakes et Level set}{41}{subsection.3.6.4}
-\contentsline {subsection}{\numberline {3.6.5}Algorithmes hybrides}{44}{subsection.3.6.5}
-\contentsline {section}{\numberline {3.7}Conclusion}{45}{section.3.7}
-\contentsline {chapter}{\numberline {4}La segmentation par snake polygonal orient\IeC {\'e} r\IeC {\'e}gions}{47}{chapter.4}
-\contentsline {section}{\numberline {4.1}Pr\IeC {\'e}sentation de l'algorithme}{47}{section.4.1}
-\contentsline {subsection}{\numberline {4.1.1}Formulation}{47}{subsection.4.1.1}
-\contentsline {subsection}{\numberline {4.1.2}Optimisation des calculs}{48}{subsection.4.1.2}
-\contentsline {subsection}{\numberline {4.1.3}Impl\IeC {\'e}mentation s\IeC {\'e}quentielle}{50}{subsection.4.1.3}
-\contentsline {subsection}{\numberline {4.1.4}Performances}{51}{subsection.4.1.4}
-\contentsline {section}{\numberline {4.2}Impl\IeC {\'e}mentation parall\IeC {\`e}le GPU du snake polygonal}{54}{section.4.2}
-\contentsline {subsection}{\numberline {4.2.1}pr\IeC {\'e}-calculs des images cumul\IeC {\'e}es}{54}{subsection.4.2.1}
-\contentsline {subsection}{\numberline {4.2.2}Calcul des contribution des segments}{55}{subsection.4.2.2}
-\contentsline {subsubsection}{\numberline {4.2.2.1}Cas particulier des segments dont la pente $k$ v\IeC {\'e}rifie $|k|\leq 1$}{59}{subsubsection.4.2.2.1}
-\contentsline {subsection}{\numberline {4.2.3}Performances}{59}{subsection.4.2.3}
-\contentsline {subsection}{\numberline {4.2.4}Discussion sur l'initialisation}{61}{subsection.4.2.4}
-\contentsline {subsection}{\numberline {4.2.5}Conclusion}{62}{subsection.4.2.5}
-\contentsline {chapter}{\numberline {5}Le filtrage des images sur GPU}{67}{chapter.5}
-\contentsline {section}{\numberline {5.1}Algorithme de r\IeC {\'e}duction de bruit par recherche des lignes de niveaux}{67}{section.5.1}
-\contentsline {section}{\numberline {5.2}Filtre m\IeC {\'e}dian}{67}{section.5.2}
-\contentsline {section}{\numberline {5.3}Filtres de convolution}{67}{section.5.3}
-\contentsline {chapter}{\numberline {6}Conclusion g\IeC {\'e}n\IeC {\'e}rale}{69}{chapter.6}
+\contentsline {chapter}{\numberline {1}Introduction}{9}{chapter.1}
+\contentsline {chapter}{\numberline {2}Les processeurs graphiques (GPU) NVidia\textregistered }{13}{chapter.2}
+\contentsline {section}{\numberline {2.1}Pourquoi ?}{13}{section.2.1}
+\contentsline {section}{\numberline {2.2}Comment ?}{14}{section.2.2}
+\contentsline {subsection}{\numberline {2.2.1}Le mat\IeC {\'e}riel}{14}{subsection.2.2.1}
+\contentsline {subsection}{\numberline {2.2.2}Le logiciel}{15}{subsection.2.2.2}
+\contentsline {subsection}{\numberline {2.2.3}l'Occupancy}{16}{subsection.2.2.3}
+\contentsline {chapter}{\numberline {3}Le traitement des images bruit\IeC {\'e}es}{19}{chapter.3}
+\contentsline {section}{\numberline {3.1}Mod\IeC {\`e}le d'image bruit\IeC {\'e}e}{20}{section.3.1}
+\contentsline {section}{\numberline {3.2}Mod\IeC {\`e}les de bruit}{20}{section.3.2}
+\contentsline {subsection}{\numberline {3.2.1}Le bruit gaussien}{20}{subsection.3.2.1}
+\contentsline {subsection}{\numberline {3.2.2}Le speckle}{20}{subsection.3.2.2}
+\contentsline {subsection}{\numberline {3.2.3}Le bruit ``sel et poivre''}{21}{subsection.3.2.3}
+\contentsline {subsection}{\numberline {3.2.4}Le bruit de Poisson}{21}{subsection.3.2.4}
+\contentsline {section}{\numberline {3.3}Les techniques de r\IeC {\'e}duction de bruit}{21}{section.3.3}
+\contentsline {subsection}{\numberline {3.3.1}Les op\IeC {\'e}rateurs de base}{23}{subsection.3.3.1}
+\contentsline {subsubsection}{\numberline {3.3.1.1}Le filtre de convolution}{23}{subsubsection.3.3.1.1}
+\contentsline {subsubsection}{\numberline {3.3.1.2}Le filtre m\IeC {\'e}dian}{23}{subsubsection.3.3.1.2}
+\contentsline {subsubsection}{\numberline {3.3.1.3}Le filtre bilat\IeC {\'e}ral}{24}{subsubsection.3.3.1.3}
+\contentsline {subsubsection}{\numberline {3.3.1.4}Les algorithmes de filtrage par dictionnaire}{26}{subsubsection.3.3.1.4}
+\contentsline {subsection}{\numberline {3.3.2}Les algorithmes de filtrage par patches}{26}{subsection.3.3.2}
+\contentsline {section}{\numberline {3.4}Les impl\IeC {\'e}mentations GPU des algorithmes de filtrage}{28}{section.3.4}
+\contentsline {subsection}{\numberline {3.4.1}Le filtrage par convolution}{28}{subsection.3.4.1}
+\contentsline {subsection}{\numberline {3.4.2}Le filtre m\IeC {\'e}dian}{28}{subsection.3.4.2}
+\contentsline {subsection}{\numberline {3.4.3}Le filtre bilat\IeC {\'e}ral}{29}{subsection.3.4.3}
+\contentsline {subsection}{\numberline {3.4.4}Les filtres par patches}{31}{subsection.3.4.4}
+\contentsline {section}{\numberline {3.5}Les techniques de segmentation}{31}{section.3.5}
+\contentsline {subsection}{\numberline {3.5.1}Analyse d'histogramme}{32}{subsection.3.5.1}
+\contentsline {subsection}{\numberline {3.5.2}Partitionnement de graphe}{34}{subsection.3.5.2}
+\contentsline {subsection}{\numberline {3.5.3}kernel-means, mean-shift et apparent\IeC {\'e}s}{35}{subsection.3.5.3}
+\contentsline {subsection}{\numberline {3.5.4}Les contours actifs, ou \textit {snakes}}{37}{subsection.3.5.4}
+\contentsline {subsection}{\numberline {3.5.5}M\IeC {\'e}thodes hybrides}{39}{subsection.3.5.5}
+\contentsline {section}{\numberline {3.6}Les impl\IeC {\'e}mentations GPU des techniques de segmentation}{39}{section.3.6}
+\contentsline {subsection}{\numberline {3.6.1}Calcul d'histogramme}{40}{subsection.3.6.1}
+\contentsline {subsection}{\numberline {3.6.2}Partitionnement de graphe}{40}{subsection.3.6.2}
+\contentsline {subsection}{\numberline {3.6.3}K-means, mean-shift et apparent\IeC {\'e}s}{41}{subsection.3.6.3}
+\contentsline {subsection}{\numberline {3.6.4}Snakes et Level set}{43}{subsection.3.6.4}
+\contentsline {subsection}{\numberline {3.6.5}Algorithmes hybrides}{46}{subsection.3.6.5}
+\contentsline {section}{\numberline {3.7}Conclusion}{47}{section.3.7}
+\contentsline {chapter}{\numberline {4}La segmentation par snake polygonal orient\IeC {\'e} r\IeC {\'e}gions}{49}{chapter.4}
+\contentsline {section}{\numberline {4.1}Pr\IeC {\'e}sentation de l'algorithme}{49}{section.4.1}
+\contentsline {subsection}{\numberline {4.1.1}Formulation}{49}{subsection.4.1.1}
+\contentsline {subsection}{\numberline {4.1.2}Optimisation des calculs}{50}{subsection.4.1.2}
+\contentsline {subsection}{\numberline {4.1.3}Impl\IeC {\'e}mentation s\IeC {\'e}quentielle}{52}{subsection.4.1.3}
+\contentsline {subsection}{\numberline {4.1.4}Performances}{53}{subsection.4.1.4}
+\contentsline {section}{\numberline {4.2}Impl\IeC {\'e}mentation parall\IeC {\`e}le GPU du snake polygonal}{56}{section.4.2}
+\contentsline {subsection}{\numberline {4.2.1}pr\IeC {\'e}-calculs des images cumul\IeC {\'e}es}{56}{subsection.4.2.1}
+\contentsline {subsection}{\numberline {4.2.2}Calcul des contribution des segments}{57}{subsection.4.2.2}
+\contentsline {subsubsection}{\numberline {4.2.2.1}Cas particulier des segments dont la pente $k$ v\IeC {\'e}rifie $|k|\leq 1$}{61}{subsubsection.4.2.2.1}
+\contentsline {subsection}{\numberline {4.2.3}Performances}{61}{subsection.4.2.3}
+\contentsline {subsection}{\numberline {4.2.4}Discussion sur l'initialisation}{63}{subsection.4.2.4}
+\contentsline {subsection}{\numberline {4.2.5}Conclusion}{64}{subsection.4.2.5}
+\contentsline {chapter}{\numberline {5}R\IeC {\'e}duction de bruit par recherche des lignes de niveaux}{71}{chapter.5}
+\contentsline {section}{\numberline {5.1}Pr\IeC {\'e}sentation de l'algorithme}{71}{section.5.1}
+\contentsline {subsection}{\numberline {5.1.1}Formulation}{71}{subsection.5.1.1}
+\contentsline {subsubsection}{\numberline {5.1.1.1}Isolines \IeC {\`a} un seul segment}{72}{subsubsection.5.1.1.1}
+\contentsline {subsubsection}{\numberline {5.1.1.2}Isolines compos\IeC {\'e}es de plusieurs segments - crit\IeC {\`e}re d'allongement}{73}{subsubsection.5.1.1.2}
+\contentsline {section}{\numberline {5.2}Impl\IeC {\'e}mentation parall\IeC {\`e}le}{75}{section.5.2}
+\contentsline {subsection}{\numberline {5.2.1}Isolines \IeC {\'e}valu\IeC {\'e}es semi-globalement}{75}{subsection.5.2.1}
+\contentsline {subsection}{\numberline {5.2.2}Isolines \IeC {\`a} segments pre-\IeC {\'e}valu\IeC {\'e}s - mod\IeC {\`e}le PI-PD}{76}{subsection.5.2.2}
+\contentsline {subsection}{\numberline {5.2.3}Mod\IeC {\`e}le PI-PD hybride}{79}{subsection.5.2.3}
+\contentsline {subsubsection}{\numberline {5.2.3.1}Le d\IeC {\'e}tecteur de zone \IeC {\`a} faible pente}{80}{subsubsection.5.2.3.1}
+\contentsline {section}{\numberline {5.3}R\IeC {\'e}sultats}{83}{section.5.3}
+\contentsline {section}{\numberline {5.4}Conclusion}{84}{section.5.4}
+\contentsline {chapter}{\numberline {6}Le filtre m\IeC {\'e}dian sur GPU}{89}{chapter.6}
+\contentsline {section}{\numberline {6.1}Introduction}{89}{section.6.1}
+\contentsline {section}{\numberline {6.2}Les transferts de donn\IeC {\'e}es}{89}{section.6.2}
+\contentsline {section}{\numberline {6.3}Utilisation des registres}{90}{section.6.3}
+\contentsline {subsection}{\numberline {6.3.1}La s\IeC {\'e}lection de la valeur m\IeC {\'e}diane}{91}{subsection.6.3.1}
+\contentsline {subsection}{\numberline {6.3.2}Masquage des latences}{92}{subsection.6.3.2}
+\contentsline {section}{\numberline {6.4}R\IeC {\'e}sultats}{95}{section.6.4}
+\contentsline {section}{\numberline {6.5}Conclusion}{97}{section.6.5}
+\contentsline {chapter}{\numberline {7}Les filtres de convolution sur GPU}{99}{chapter.7}
+\contentsline {section}{\numberline {7.1}Introduction}{99}{section.7.1}
+\contentsline {section}{\numberline {7.2}Impl\IeC {\'e}mentation g\IeC {\'e}n\IeC {\'e}rique de la convolution non s\IeC {\'e}parable}{99}{section.7.2}
+\contentsline {section}{\numberline {7.3}Impl\IeC {\'e}mentation optimis\IeC {\'e}e de la convolution non s\IeC {\'e}parable}{101}{section.7.3}
+\contentsline {section}{\numberline {7.4}Cas de la convolution s\IeC {\'e}parable}{104}{section.7.4}
+\contentsline {section}{\numberline {7.5}Conclusion}{107}{section.7.5}
+\contentsline {chapter}{\numberline {8}Conclusion g\IeC {\'e}n\IeC {\'e}rale}{109}{chapter.8}