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...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Jaromír BRAMBOR4.5. MODÈLE FORMEL DU TRAITEMENT EN PIPELINE GRAPHIQUEdonnées <strong>de</strong>scriptives, les vertex V. Chaque forme a un nombre défini <strong>de</strong>s vertex associés qui donnent à<strong>la</strong> forme <strong>de</strong>s valeurs concrètes et <strong>la</strong> définisse précisément. On inclut dans les vertex également les informationssupplémentaires telles que <strong>la</strong> couleur, les coordonnées <strong>de</strong> <strong>la</strong> texture liée avec cette forme, dansle graphisme 3D il <strong>pour</strong>rait s’agir <strong>de</strong>s paramètres <strong>de</strong> <strong>la</strong> surface, etc.type Commands= ( [ Shape ] , [ V ] )4.5.2 Primitive <strong>de</strong> calcul avec le pipeline graphiquePour formaliser le fonctionnement du pipeline graphique, nous allons définir quelques fonctions quiutiliseront les types définis préa<strong>la</strong>blement et vont donner les correspondants formels aux blocs opérationnelsdu pipeline graphiques et à <strong>la</strong> façon <strong>de</strong> leur fonctionnement. Le tableau 4.2 présente une listecomplète <strong>de</strong> ces fonctions.Nom <strong>de</strong> <strong>la</strong> Nom Désignation Signature <strong>de</strong> typefonction du type— Sampler Échantillonage <strong>de</strong>s textures (TX → TXP → C)vprocessor — Processeur <strong>de</strong>s vertex (Env → VProg → [V] → [V])— VProg Vertex programme (Env → V → V)fprocessor — Processeur <strong>de</strong>s fragments (Env → FProg → [F] → [F])— FProg Fragment programme (Env → F → F)rprocessor — Opérations du framebuffer (Env → RProg → FB → [F] → FB)— RProg Raster programme (Env → FB → F → FB)TAB. 4.2 : Signatures <strong>de</strong> type <strong>de</strong>s primitives du calcul du pipeline graphique et les GPU4.5.2.1 Échantillonnage <strong>de</strong>s texturesL’échantillonnage <strong>de</strong>s textures est une <strong>de</strong>s opérations utilisées dans <strong>de</strong>ux unités - l’unité <strong>de</strong> traitement<strong>de</strong>s vertex et l’unité <strong>de</strong> traitement <strong>de</strong>s fragments. Elle se présente à l’utilisateur par les samplers, les blocsconfigurables d’accès à <strong>la</strong> mémoires <strong>de</strong>s textures. Dans cette thèse, nous définissons les samplers comme<strong>de</strong>s fonctions du type Sampler qui, <strong>pour</strong> une texture TX et une position TXP données, extraient uneinformation à partir <strong>de</strong> cette texture. Le résultat d’échantillonnage se présente par le vecteur <strong>de</strong> couleurs<strong>de</strong> sortie C.type Sampler = ( TX → TXP → C )Le fonctionnement exact <strong>de</strong>s fonctions d’échantillonnage est dépendant <strong>de</strong>s capacités matérielles <strong>de</strong>sprocesseurs graphiques et est configurable selon nos besoins. Ces capacités sont <strong>la</strong>rgement suffisantes<strong>pour</strong> notre travail et nous n’en allons utiliser que certaines configurations.La première <strong>de</strong>s fonctions d’échantillonnage que nous allons utiliser en <strong>la</strong> <strong>morphologie</strong> <strong>mathématique</strong>est <strong>la</strong> fonction smpBor<strong>de</strong>r qui nous retourne les points <strong>de</strong> <strong>la</strong> texture tx correspondant à <strong>la</strong> coordonnéetp si cette coordonnée est présente dans l’étendue d’in<strong>de</strong>xation <strong>de</strong> <strong>la</strong> texture, sinon, elle nousretourne <strong>la</strong> valeur <strong>de</strong> bord associée à <strong>la</strong> texture.smpBor<strong>de</strong>r :: SamplersmpBor<strong>de</strong>r tx tp | inbounds2D(bounds$ar) tp = ar !tp| otherwise = getTXBFromTX$txwherear = getArFromTX$tx4.5.2.2 Traitement <strong>de</strong>s vertexLes vertex sont traités dans une unité <strong>de</strong> traitement que nous appelons le processeur <strong>de</strong>s vertex et quiest définie dans notre formalisme fonctionnel par <strong>la</strong> fonction vprocessor. Son fonctionnement exact est81

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

Saved successfully!

Ooh no, something went wrong!