Masques

Les fonctions relatives aux masques peuvent être classées en trois groupes :

Création

Les masques peuvent être créés par différentes fonctions de marquage, parmi lesquelles on trouve le marquage de grains (Marquer par seuil, Marquer par segmentation), les fonctions de marquage de défauts (Masquer les points aberrants, Marquer les défauts linéaires) et les fonctions de marquage de motifs (Masquer par corrélation, Analyse des facettes, Carte d'incertitude). En complément, quelques fonctions d'édition de masque permettent de créer des masques en partant de zéro.

Les masques sont aussi utilisés pour marquer les pixels invalides présents dans les fichiers importés depuis les formats permettant de faire la distinction entre les pixels valides ou invalides, car Gwyddion n'utilise pas la notion de pixels invalides.

Application

De manière générale, la zone masquée est considérée comme celle étant d'intérêt, c'est-à-dire celle sur lesquelles on effectue des opérations. Cela s'applique pour les fonctions statistiques telles que l'outil de calcul des statistiques. La function supprimer les données sous le masque remplace les données situées sous le masques, tandis que l'outil de suppression des grains peut effectuer le même type de remplacement sur des grains individuels. Il existe plusieurs fonctions d'analyse des propriétés des grains, voir la section statistiques des grains.

Certaines fonctions peuvent proposer d'utiliser ou d'exclure le masque pour le calcul (ou aussi ignorer le masque), par exemple les fonctions de mise à niveau. Le choix n'est proposé que lorsqu'un masque est présent sur les données.

Édition

Quelques fonctions de base sur les masques, par exemple l'inversion ou la suppression complète, sont disponibles dans le menu Traitement des donnéesMasque. On trouve parmi les fonctions plus avancées l'outil de suppression des grains et le filtrage des grains qui donnent différentes manières de supprimer des parties du masque, ainsi que l'éditeur de masque et marquer avec, orientés vers l'édition de masque.

Cette section décrit les opérations générales sur les masques n'ayant pas de lien avec une application spécifique.

Opérations basiques

On trouve dans le menu Traitement des donnéesMasque les fonctions inverser le masque, qui désélectionne les pixels marqués et vice versa, et supprimer le masque, qui enlève la totalité du masque. Ces fonctions sont aussi disponibles dans l'outil d'édition du masque décrit plus bas.

La fonction extraire le masque crée une nouvelle image à partir du masque des données en cours d'utilisation. L'image aura une valeur de 1 pour les pixels masqués et 0 pour les autres.

Il est parfois utile de copier le masque vers de nombreuses images. Cette opération peut être réalisée à l'aide la fonction distribuer.... Elle peut soit copier le masque vers tous les canaux d'un fichier ou tous les canaux de tous les fichiers ouverts. La fonction évite de remplacer le masque des images cibles si la case conserver les masques existants est activée. Notez que le masque ne peut être copié que vers les images ayant les mêmes dimensions en pixels. Les images ayant des dimensions différentes sont ainsi automatiquement exclues.

Éditeur de masque

L'éditeur de masque est l'outil universel de modification du masque. Il propose deux groupes de fonctions : l'édition du masque en dessinant directement dans la fenêtre de données, et les opérations sur le masque telles que l'inversion, la dilatation et l'érosion.

La modification directe du masque est contrôlée par les boutons du groupe éditeur. Elle peut être réalisée de deux manières : en sélectionnant les formes qui seront ensuite remplies ou effacées (en utilisant l'option formes), ou en faisant du dessin à la main à l'aide des outils de dessins (option outils de dessin).

Les boutons de la ligne mode définissent la manière dont les formes dessinées dans la fenêtre de données modifieront le masque :

Définir

Le masque est défini par la forme dessinée, après avoir supprimé le masque précédemment présent.

Ajouter

Le masque est étendu par la forme dessinée (si aucun masque n'existe celui-ci est alors créé).

Soustraire

La forme dessinée est soustraite au masque présent. Cette fonction n'a aucun effet si aucun masque n'est présent.

Intersection

Le masque est défini par l'intersection entre la forme dessinée et le masque déjà présent. Cette fonction n'a aucun effet si aucun masque n'est présent.

Les boutons de la ligne forme contrôlent la forme dessinée sur le masque. Les formes disponibles sont le rectangle, l'ellipse et la ligne.

Les outils de dessin à la main peuvent être sélectionnés avec les boutons de la ligne outil

Pinceau

Dessin à la main avec un pinceau de taille définie par le paramètre rayon. Cette fonction peut être lente sur les ordinateurs un peu anciens ou sur les grandes images.

Gomme

Effacement à la main avec une gomme de taille définie par le paramètre rayon. Cette fonction peut être lente sur les ordinateurs un peu anciens ou sur les grandes images.

Remplir

Remplissage des parties non masquées contiguës d'une image.

Vider

Vidage des parties masquées contiguës d'une image.

Les opérations globales sur les masques, c'est-à-dire l'inversion, la suppression et le remplissage complet des données par un masque, sont disponibles dans la ligne actions. On trouve parmi les opérations supplémentaires :

Dilater

Etend le masque du nombre de pixels défini par quantité sur chaque côté. Pour être plus précis, le masque est étendu d'un pixel sur chaque côté, et l'opération est répétée le nombre de fois défini par Quantité.

Normalement, la dilatation ne distingue pas les parties individuelles du masque. Dans le cas d'une dilatation importante, des parties peuvent se toucher et donc fusionner. Cette conséquence peut être évitée avec le paramètre empêcher la fusion des grains lors d'une dilatation, qui empêche que des parties du masque fusionnent si elles ne sont séparées que d'un pixel.

Lorsque le masque est fortement étendu, il devient important de définir la manière dont on mesure la distance à partir du bord du masque car cela détermine la forme vers laquelle les petits grains vont converger. Cet aspect est contrôlé par l'option type de distance. Les différents types sont décrits au paragraphe transformée de distance. On utilisera de préférence la distance euclidienne.

Éroder

Réduit le masque du nombre de pixels défini par quantité sur chaque côté. Pour être plus précis, le masque est réduit d'un pixel sur chaque côté, et l'opération est répétée le nombre de fois défini par Quantité.

L'érosion peut avoir lieu à partir des bords de l'image. Cet aspect est contrôlé par le paramètre éroder à partir du bord.

Remplir les vides

Rend les grains connectés, c'est-à-dire sans trou, en remplissant les trous présents dans ceux-ci. La case remplir les vides à connexions multiples permet de déterminer si uniquement les trous simples seront remplis, c'est-à-dire les trous étant eux-mêmes simplement connectés, ou tous les trous, peu importe leur topologie.

Explication de la connectivité des vides pour remplir les vides. Sans l'option remplir les vides à connexions multiples seuls les vides dans le masque du milieu seront remplis. En activant cette option tous les vides seront remplis.

Marquer avec

Traitement des donnéesMasqueMarquer avec

La fonction marquer avec permet de créer ou modifier un masque à l'aide d'un autre masque ou de données de dimensions identiques. Les opérations disponibles sont les mêmes que celles de l'éditeur de masque : création, union, soustraction et intersection. La source utilisée pour l'autre masque peut être l'une des suivantes :

Masque

Il s'agit du cas le plus simple, un masque est combiné avec un autre en utilisant les opérations logiques spécifiées.

Données

Dans le mode données, un autre champ de données est utilisé comme masque source. Le masque est constitué des pixels se situant dans une plage de valeurs définie relativement à la plage totale de valeurs des données. Pour utiliser les pixels situés en dehors d'une certaine plage, il suffit de définir une limite haute inférieure à la limite basse.

Présentation

Le mode présentation diffère seulement du mode données par le fait qu'une présentation est utilisée en lieu et place de données.

Il s'agit d'une exception à la règle qui dit que les présentations ne sont jamais utilisées pour des traitements ultérieurs. il peut être parfois intéressant de marquer, par exemple, les bords détectés sur les données, bien que la présentation correspondante visualise une quantité n'ayant pas de sens physique.

Opérations morphologiques

Des opérations morphologiques classiques peuvent être appliquées sur les masques en utilisant la fonction Traitement des donnéesMasqueOpération morpholgique.... Toutes les opérations prennent le masque en premier opérande ainsi qu'un élément dit structurant en second opérande, celui-ci déterminant l'effet exact. L'élément structurant peut être choisi parmi différentes formes basiques prédéfinies (disque, octogone, carré, losange) ou défini en utilisant un autre masque.

Les formes de base sont toutes symétriques. Lorsqu'un autre masque est utilisé en tant qu'élément structurant celui-ci peut être asymétrique ou avoir des bords vides. Dans ce cas l'élément structurant aura les dimensions complètes de l'image du masque sélectionné, en incluant les bords vides. Cette image complète est considérée comme centrée. Si vous souhaitez supprimer les bords vides du masque structurant, il vous suffit d'activer l'option tronquer les bords vides. L'élément structurant sera alors encore considéré comme centré, mais cette fois après la suppression des bords vides.

Les opérations suivantes sont proposées :

Érosion

l'Erosion supprime les petits détails et réduits la taille des plus gros éléments – d'une quantité et suivant une forme déterminées par l'élément structurant. Plus précisément, si l'élément structurant est placé sur un pixel du masque et qu'il est entièrement contenu dans le masque, alors le pixel du masque est conservé. Tous les autres pixels du masque sont supprimés.

Dilatation

La dilatation remplit les petits trous et augmente la taille des éléments – d'une quantité et suivant une forme déterminées par l'élément structurant. Plus précisément, si l'élément structurant est tourné de 180 degrés et placé sur chaque pixel du masque, le résultat de la dilatation est l'union de tous ces éléments structurants décalés les uns des autres.

Ouverture

L'ouverture est une érosion suivie d'une dilatation. La dilatation corrige l'effet de l'érosion qui précède là où le masque correspond aux éléments structurants. Au final les petites bosses et les grains qui ne correspondent pas sont supprimés, tandis que les autres sont gardés intacts. La forme du masque est ainsi nettoyée et simplifiée.

Fermeture

La fermeture est une dilatation suivie d'une érosion. L'érosion corrige l'effet de la dilatation qui précède là où le masque correspond aux éléments structurants. Au final les petits creux et entailles qui ne correspondent pas sont supprimés, tandis que les autres sont gardés intacts. La forme du masque est ainsi simplifiée.

Ouverture ASF

Un simple filtre d'ouverture ou de fermeture peut parfois être trop brutal pour la correction de défauts de différentes tailles. Le filtre séquentiel alternant(ASF, alternating sequential filter) consiste en une séquence de fermetures et d'ouvertures en augmentant progressivement la taille de l'élément structurant jusqu'à la valeur spécifiée. Il préserve mieux la forme des détails ne devant pas être supprimés par l'ouverture. La dernière opération de ce filtre est une ouverture.

Fermeture ASF

Un simple filtre d'ouverture ou de fermeture peut parfois être trop brutal pour la correction de défauts de différentes tailles. Le filtre séquentiel alternant(ASF, alternating sequential filter) consiste en une séquence d'ouvertures et de fermetures en augmentant progressivement la taille de l'élément structurant jusqu'à la valeur spécifiée. Il préserve mieux la forme des détails ne devant pas être supprimés par la fermeture. La dernière opération de ce filtre est une fermeture.

Carte de distances

La carte de distances donne pour chaque pixel sa distance par rapport au bord du grain (masque). Cette fonction est accessible dans Traitement des donnéesMasqueCarte de distances. Cette opération est, d'une certaine manière, complémentaire à la segmentation. La carte de distances peut être calculée à l'aide de la véritable distance euclidienne

ainsi que selon d'autres types classiques tels que la distance de Manhattan (4 voisins)

ou celle de Tchebychev (8 voisins)

, qui peuvent être utiles à des fins ditactiques. Plusieurs distances octogonales sont aussi disponibles, elles sont calculées en prenant alternativement les distances de Manhattan et de Tchebychev, on obtient alors les variantes 4-8 et 8-4 en fonction de la première étape utilisée. Pour terminer, la distance octogonale sans variante est aussi disponible, il s'agit de la moyenne des deux variantes précédentes.

Lorsque la carte est appliquée à l'intérieur des grains, la distance vaut zéro en-dehors de ceux-ci, et augmente vers leurs «centres». À l'inverse, elle peut être appliquée à l'extérieur des grains, dans ce cas la valeur est plus élevée pour les pixels les plus éloignés des grains. Il est aussi possible de calculer une carte signée pour les deux côtés, avec des valeurs positives à l'intérieur des grains, et négatives à l'extérieur.

L'option éroder à partir des bords contrôle le comportement du calcul sur les bords de l'image. Lorsqu'elle est activée, les bords de l'image sont considérés comme étant aussi les bords d'un grain (si le bord est marqué). De cette manière, les bords de l'image ne peuvent se voir attribuer une valeur élevée. En étant désactivée, les grains sont considérés comme s'étendant à l'infini en dehors de l'image. Les pixels en bord d'image peuvent dans ce cas avoir des valeurs de distance élevées.

Exemple de carte de distance euclidienne : masque source affiché en blanc sur noir, carte de distances intérieures, carte de distance extérieures (avec une échelle de gris inversée pour la comparaison), et la carte de distances signées.

Affinage

L'affinage est une autre opération morphologique classique. Elle est accessible dans Traitement des donnéesMasqueAffiner. Cette fonction réduit le masque à un squelette constitué de fines lignes caractéristiques de la forme globale du masque. Si le bord du masque est assez tourmenté l'affinage pourra résulter en une quantité importante de petits brins supplémentaires. Il est ainsi parfois utile d'appliquer une opération de simplification (telle qu'une ouverture ou une fermeture) avant d'appliquer l'affinage.

Notez que cette fonction ne s'applique qu'au masque. Elle n'utilise aucune information de la surface sous-jacente. Ainsi, bien que le masque affiné puisse se superposer aux crêtes ou aux vallées de parties marquées de la topographie, il ne s'agit en général que de coïncidences.

Exemple d'affinage de masque : topographie de la flexion d'un film polymère (à gauche) ; la même image avec le masque couvrant les bosses présentes en surface (au centre) ; le même masque après affinage (à droite).