]> AND Private Git Repository - these_gilles.git/blob - THESE/these.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
00bad4e8853937047cbb732d2be02956c91aeda1
[these_gilles.git] / THESE / these.tex
1 \documentclass[french]{spimufcphdthesis}
2 \usepackage[utf8]{inputenc}
3 \usepackage[T1]{fontenc}
4              
5 \usepackage{graphicx}
6 \usepackage{color, xcolor}
7 \usepackage[ruled,lined,linesnumbered]{algorithm2e}
8 \usepackage{multirow}
9 \usepackage{placeins}
10   
11 \usepackage{amsmath}
12 \usepackage{booktabs}  
13 \usepackage{textcomp}
14 \usepackage{listings}
15
16 \let\OLDlstinputlisting\lstinputlisting
17 \renewcommand{\lstinputlisting}[2][]{\FloatBarrier\OLDlstinputlisting[#1]{#2}\FloatBarrier} 
18
19
20 \lstset{morekeywords={HALF4,HALF3,float2,float3,float4,half,half2,half3,half4,tex2D,dim3,endif,threadIdx,blockIdx,blockDim,gridDim,Dim3,__host__,__global__,__shared__,float}}
21 \lstset{
22   language=C,
23   columns=fixed,
24   basicstyle=\footnotesize\ttfamily,
25   numbers=left,
26   firstnumber=1,
27   numberstyle=\tiny,
28   stepnumber=5,             
29   numbersep=5pt,              
30   tabsize=3,                  
31   extendedchars=true,         
32   breaklines=true,       
33   keywordstyle=\textbf,
34   frame=single,         
35   % keywordstyle=[1]\textbf,   
36   %identifierstyle=\textbf,
37   commentstyle=\color{white}\textbf,
38   stringstyle=\color{white}\ttfamily,
39   % xleftmargin=17pt,
40   % framexleftmargin=17pt,
41   % framexrightmargin=5pt,
42   % framexbottommargin=4pt,
43   backgroundcolor=\color{lightgray},
44   basicstyle=\scriptsize,
45   texcl=true
46   }
47
48 %%--------------------
49 %% Set the title, subtitle, defense date, and
50 %% the registration number of the PhD thesis.
51 %% The optional parameter is the subtitle of the PhD thesis.
52 %% The first mandatory parameter is the title of the PhD thesis.
53 %% The second mandatory parameter is the date of the PhD defense.
54 %% The third mandatory parameter is the reference number given by
55 %% the University Library after the PhD defense.
56 \declarethesis[]{Algorithmes rapides pour le traitement des images bruitées sur GPU}{17 novembre 2013}{XXX}
57       
58 %%--------------------  
59 %% Set the author of the PhD thesis
60 \addauthor[gilles.perrot@univ-fcomte.fr]{Gilles}{Perrot}
61     
62 %%--------------------
63 %% Add a member of the jury
64 %% \addjury{Firstname}{Lastname}{Role in the jury}{Position}
65 \addjury{Incroyable}{Hulk}{Rapporteur}{Professeur à l'Université de Gotham City \\ Commentaire secondaire}
66 \addjury{Super}{Man}{Examinateur}{Professeur à l'Université de Gotham City}
67 \addjury{Bat}{Man}{Directeur de thèse}{Professeur à l'Université de Gotham City}
68    
69 %%--------------------
70 %% Set the laboratory where the thesis was made
71 \addlaboratory{Institut FEMTO-ST, département DISC}
72   
73 %%-------------------- 
74 %% Set the English abstract
75 \thesisabstract[english]{
76 %Recent graphical processing units (GPU), bring parallel computing capabilities to almost every developper, 
77 In theory, modern graphical processing units (GPUs) make parallel programming accessible to all, and have triggered widespread interest  among researchers or developers  of all disciplines, with the hope of dramatically increasing processing speeds. Nevertheless, obtaining such processing speeds as expected cannot be done without considerable designing efforts : as an answer, we propose in this thesis, two GPU-based methods leading to fast implementations of several algorithms targeted to processing noisy images. One of them consists in porting the segmentation algorithm named \textit{snake}, with the effect of extending  its processing capacity and performance. A second involves an innovative GPU-specific algorithm, based on searching for level lines within gray-level or color images to reduce gaussian noise, whose signal-to-noise ratio is particularly interesting.
78 Through extremely fine-tuned management of the different memory types available on GPUs, we have also conferred unprecedent flow rates to the median filter, making it able to process over 5 million pixels per second. Eventually, we extended the above methods to the more generic convolution filter, and showed they out-perform the fastest implementations known to date, with over 7 million pixels per second. In addition, we provide an on-line application that enables any developer to automatically generate operational source code of our filters.
79
80 %%--------------------   
81 %% Set the English keywords. They only appear if
82 %% there is an English abstract
83 \thesiskeywords[english]{GPU, Filtering, Image, Segmentation}
84     
85 %% --------------------
86 %% Set the French abstract
87 \thesisabstract[french]{
88  Les cartes graphiques modernes (GPU) mettent, en théorie, la programmation parallèle à la portée de tous. Ces facilités ont éveillé l'intérêt des chercheurs et développeurs de toutes disciplines, qui ont tenté de tirer parti des performances élevées de ces matériels. Cependant; d'importants efforts de conception sont souvent nécessaires à l'obtention des vitesses de traitement espérées.
89 Dans cette thèse, nous proposons des méthodes conduisant à des implémentations rapides de plusieurs algorithmes destinés au traitement des images fortement bruitées. La première est une transposition sur GPU d'un algorithme de segmentation dit du \textit{snake} dont la capacité de traitement a été étendue et les performances améliorées. La seconde décrit un algorithme original, basé sur la recherche des lignes de niveaux et conçu spécifiquement pour les GPUs, qui réduit le bruit gaussien dans les images en niveaux de gris ou en couleur et dont le rapport qualité/vitesse est particulièrement intéressant. En concevant une gestion fine des mémoires du GPU, nous avons également conféré un débit de traitement inégalé au filtre médian, pouvant dépasser les 5 milliards de pixels à la seconde. Enfin nous avons étendu l'application de ces techniques à un opérateur beaucoup plus générique, le filtre de convolution, et montré qu'elles permettaient de surpasser les implémentations les plus rapides connues jusqu'alors avec un maximum au delà des 7 milliards de pixels à la seconde. Nous mettons aussi à disposition une application en ligne permettant à tout développeur de générer les codes sources opérationnels des filtres que nous avons décrits.               
90 }
91
92  
93 %%--------------------
94 %% Set the French keywords. They only appear if
95 %% there is an French abstract
96 \thesiskeywords[french]{GPU, Filtrage, Image, Segmentation}
97  
98 %%--------------------
99 %% Change the speciality of the PhD thesis
100 \Set{speciality}{Informatique}
101  
102 %%--------------------
103 %% Change the institution
104 \Set{universityname}{Universit\'e de Franche-Comt\'e}
105  
106 %%--------------------
107 %% Change the header and the foot of the pages
108 %% Left header
109 %\lhead{}
110 %% Center header
111 %\chead{}
112 %% Right header
113 %\rhead{}
114 %% Left footer
115 %\lfoot{}
116 %% Center footer
117 %\cfoot{} 
118 %% Right footer
119 %\rfoot{}
120
121
122 %\declareupmtheorem{rq}{Remarque}{Liste des remarques}
123
124
125 \newcommand{\kl}{\includegraphics[scale=0.7]{kernLeft.png}~}
126 \newcommand{\kr}{\includegraphics[scale=0.7]{kernRight.png}}
127 \usepackage{bbold}
128 \def\indentit{\mbox{l\hspace{-0.55em}1}}
129
130    
131 \begin{document}
132     
133 \tableofcontents
134                                                                          
135 %-------------------- 
136 % The content of the PhD thesis
137 % objectifs, cadre  
138 % annonce du plan  
139 \chapter{Introduction}          
140 \input{Chapters/chapter1/chapter1.tex}
141 \chapter{Les processeurs graphiques (GPU) NVidia\textregistered}\label{ch-GPU}
142 \input{Chapters/chapter1b/chapter1b.tex}
143 \part*{Le traitement des images}
144 \section*{Introduction} 
145 \input{Chapters/chapter2/chapter2.tex}
146 \chapter{Modèles d'image et de bruits - notations}
147 \input{Chapters/chapter2/chapter2b.tex}
148 \chapter{Les techniques de réduction de bruit\label{ch-filtrage}}
149 \input{Chapters/chapter2/chapter2c.tex}
150 \chapter{Les techniques de segmentation des images}
151 \input{Chapters/chapter2/chapter2d.tex}
152
153 \part*{Algorithmes GPU rapides pour la réduction de bruit et la segmentation}
154 \chapter{La segmentation par snake polygonal orienté régions\label{ch-snake}}
155 \input{Chapters/chapter3/chapter3.tex}     
156
157 \chapter{Réduction de bruit par recherche des lignes de niveaux\label{ch-lniv}}
158 \input{Chapters/chapter4/chapter4.tex}
159
160 \chapter{Le filtre médian sur GPU\label{ch-median}} 
161 \input{Chapters/chapter5/chapter5.tex}
162
163 \chapter{Les filtres de convolution sur GPU\label{ch-convo}}
164 \input{Chapters/chapter6/chapter6.tex} 
165 % présentation, rôle   
166 % détails : convo NON SEP, convo SEP, discussion Shared mem
167 % résultats, conclusion  
168 % intégrer logiciels dans sections
169 \chapter{Conclusion générale}
170 \input{Chapters/chapter1/conclusion.tex}
171
172 %\pagebreak
173 %\section*{Remerciements}
174 %\input{Chapters/chapter1/rem.tex}
175
176 %--------------------
177 % Bibliography, indexes...
178 \bibliographystyle{plain}
179 \bibliography{biblio}
180 \listoffigures
181 \listoftables
182   
183 \appendix
184  
185 \end{document}