12.07.2015 Views

Algorithmes de la morphologie mathématique pour - Pastel - HAL

Algorithmes de la morphologie mathématique pour - Pastel - HAL

Algorithmes de la morphologie mathématique pour - Pastel - HAL

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Jaromír BRAMBORtations sur les GPU et diverses implémentations sur les GPP, y compris les algorithmes exploitant lescapacités SIMD, ont révélé que <strong>pour</strong> les images <strong>de</strong> gran<strong>de</strong> taille qui dépassent <strong>la</strong> capacité <strong>de</strong> <strong>la</strong> mémoirecache <strong>de</strong> notre architecture GPP, les processeurs graphiques montrent les meilleures performances.Dans le chapitre suivant, le chapitre 6, nous avons présenté les algorithmes rapi<strong>de</strong>s <strong>pour</strong> les GPPqui exploitent les capacités SIMD <strong>de</strong> l’architecture multimédia et qui sont <strong>de</strong>stinés au changement <strong>de</strong>l’axe <strong>de</strong> stockage <strong>de</strong>s données paquetées. Nous avons présenté les algorithmes qui utilisent les fonctionsshuffle, présentes dans tous les jeux d’instructions multimédia, qui effectuent l’opération choisie<strong>de</strong> changement <strong>de</strong> stockage dans Nlog 2 N applications <strong>de</strong>s fonctions shuffle. Quatre algorithmes qui effectuentle changement souhaité et dont le principe <strong>de</strong> fonctionnement est très proche ont été présentés :<strong>la</strong> transposition par diagonale / anti-diagonale, <strong>la</strong> rotation <strong>de</strong> + π 2 et <strong>de</strong> − π 2. Nous avons souligné quedans les applications pratiques il s’agira le plus souvent <strong>de</strong> <strong>la</strong> transposition par diagonale qui assurera lechangement <strong>de</strong> stockage <strong>de</strong>s données paquetées.Le chapitre 7 a été consacré aux algorithmes qui dépen<strong>de</strong>nt du sens <strong>de</strong> parcours prédéfini <strong>de</strong> l’image.Nous avons présenté <strong>la</strong> particu<strong>la</strong>rité <strong>de</strong> ces parcours lors du travail avec les données paquetées qui exigentune approche différente <strong>pour</strong> <strong>la</strong> construction <strong>de</strong> tels algorithmes que celle utilisée habituellement <strong>pour</strong> leséléments <strong>de</strong> base <strong>de</strong> l’image. Nous avons notamment exploré l’idée <strong>de</strong> quatre parcours directionnels lorsdu travail avec l’élément structurant <strong>de</strong> <strong>la</strong> forme du disque unité sur <strong>la</strong> grille carrée en 4-voisinage. Pourl’adapter au travail avec les vecteurs paquetés, nous faisons appel à <strong>la</strong> transposition par diagonale quenous utilisons comme moyen <strong>de</strong> changement <strong>de</strong> l’axe <strong>de</strong> stockage <strong>de</strong> données afin d’accé<strong>de</strong>r aux donnéesdans le sens perpendicu<strong>la</strong>ire à celui <strong>de</strong> leur stockage dans <strong>la</strong> mémoire. Nous avons également explorél’idée d’effectuer ce changement <strong>de</strong> stockage à l’échelle <strong>de</strong>s macro blocs, évitant ainsi les opérations<strong>de</strong> transfert <strong>de</strong> données entre le processeur et <strong>la</strong> mémoire lors du stockage <strong>de</strong>s résultats intermédiaires.Les exemples <strong>de</strong>s opérations qui utilisent <strong>la</strong> structure <strong>de</strong>s algorithmes ont été décrits dans ce chapitre.Nous avons présenté <strong>la</strong> fonction distance en tant qu’algorithme non-géodésique et dont le résultat estconnu après une application <strong>de</strong> l’algorithme <strong>de</strong> propagation. Nous avons présenté également les nivellements,qui sont les filtres morphologiques et qui ont le caractère géodésique, que l’on emploie dans lesapplications <strong>de</strong> filtrage <strong>de</strong>s images préservant les contours <strong>de</strong>s objets.Dans le chapitre 8 qui était consacré aux algorithmes <strong>de</strong> <strong>la</strong> di<strong>la</strong>tation / l’érosion par les élémentsstructurants <strong>de</strong> <strong>la</strong> forme <strong>de</strong>s segments, nous avons exploré les stratégies <strong>de</strong> <strong>la</strong> parallélisation à l’échelle<strong>de</strong>s données paquetées. Pour <strong>la</strong> construction d’un algorithme SIMD qui employait l’idée <strong>de</strong> l’algorithme<strong>de</strong> van Herk-Gil-Werman, nous avons réutilisé toutes les idées présentées dans les chapitres précé<strong>de</strong>ntsdédiés aux algorithmes : <strong>la</strong> propagation <strong>de</strong> <strong>la</strong> valeur à l’intérieur <strong>de</strong>s macro blocs, l’application <strong>de</strong> l’algorithmesur les macro blocs qui ne dépend pas d’un sens <strong>de</strong> parcours particulier et <strong>la</strong> transposition <strong>de</strong>l’image que nous avons utilisée <strong>pour</strong> changer l’axe <strong>de</strong> stockage <strong>de</strong>s données lors <strong>de</strong> l’application <strong>de</strong>l’élément structurant qui nécessite l’accès aux données dans le sens perpendicu<strong>la</strong>ire à celui <strong>de</strong> l’axe <strong>de</strong>stockage <strong>de</strong> données dans <strong>la</strong> mémoire.Le chapitre 9 a été dédié à l’explication <strong>de</strong> <strong>la</strong> problématique <strong>de</strong> l’expression <strong>de</strong> <strong>la</strong> complexité d’unalgorithme <strong>pour</strong> <strong>de</strong>s fins pratiques. Nous y avons démontré que l’expression <strong>de</strong> <strong>la</strong> complexité re<strong>la</strong>tiveau temps du calcul par le O, utilisé le plus souvent dans <strong>la</strong> littérature, n’est pas appropriée dans lesconditions pratiques où nous estimons principalement le temps du calcul et où les coûts <strong>de</strong>s accès à <strong>la</strong>mémoire et les coûts <strong>de</strong>s opérations arithmétiques varient. Nous avons proposé d’exprimer <strong>la</strong> complexitéd’une manière plus explicite qui mentionne ces différents coûts expressément et qui est exprimée par<strong>la</strong> fonction Θ. Dans ce même chapitre, nous montrons également que <strong>la</strong> problématique <strong>de</strong> l’estimationdu temps du calcul <strong>pour</strong> les GPU n’est pas aussi directe car il s’agit d’une architecture distribuée. Nousdiscutons les temps <strong>de</strong>s transferts <strong>de</strong>s données entre les GPP et les GPU et l’influence <strong>de</strong> l’API.Contribution <strong>de</strong> cette thèseL’apport principal <strong>de</strong> cette thèse est <strong>la</strong> présentation d’un sujet important du point <strong>de</strong> vue pratique etl’exploration <strong>de</strong>s capacités SIMD d’une architecture multimédia <strong>pour</strong> assurer l’exécution <strong>de</strong>s algorithmes193

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!