PointCloudSplitter
Utilisations typiques
- Séparer un nuage de points en sous ensembles selon la valeurs de composants ou par plages de valeurs.
- Isoler des points dans un nuage de points selon la valeurs ou plages de valeurs de composants, ou selon les premières/dernières valeurs.
Comment fonctionne-t-il ?
PointCloudSplitter reçoit des entités de nuages de points et les divise en nuages de points individuels, sur la base des valeurs ou plages de valeurs des composants.
Le découpage peut être effectué sur n'importe quel composant numérique, avec deux types de découpe :
- Unique : Toutes les valeurs uniques qui existent pour le composant sélectionné seront automatiquement identifiées, et un nuage de points sera généré pour chaque valeur. En option, il est possible de choisir des Valeurs uniques à conserver et seules ces valeurs de composants généreront des entités de sortie.
- Par plage : Des plages de valeurs sont spécifiées, et un nuage de points est produit pour chaque plage. Les plages peuvent être générées. Au moins une plage doit être spécifiée. Tous les points qui se situent en dehors de toutes les plages spécifiées se voient attribuer une valeur par défaut.
Le Transformer dispose également des options Découper par Uniquement le premier retourné et Uniquement le dernier retourné, qui ne conservent que le premier et le dernier retour, respectivement, et rejettent tous les autres points. L'option Découper par Couleur fonctionne sur des plages de valeurs RVB.
Dans tous les cas, un attribut de sortie peut être ajouté aux entités identifiant la valeur de découpe.
Exemples
Dans cet exemple, nous allons diviser un nuage de points en plusieurs parties, en fonction des valeurs de sa composante de classification. Notez que le nuage de points d'entrée possède bien une composante de classification, mais que nous ne savons pas quelles valeurs exactes peuvent exister dans l'entité.
Le nuage de points est connecté au PointCloudSplitter.
Dans les paramètres, Découper par est défini sur classification, et le paramètre Type de découpe est Unique. Nous conservons le nom par défaut de l'attribut en sortie _split_value.
Notez que Valeurs uniques à conserver est vide - et donc toutes les valeurs seront éditées.
Cinq entités sont produites, indiquant que cinq valeurs uniques ont été trouvées pour la classification dans le nuage de points d'entrée. En examinant la sortie Split dans la vue table de FME Data Inspector, nous pouvons voir les valeurs attribuées à l'attribut _split_value.
Pour examiner une de ces valeurs, on connecte un AttributeFilter, et on filtre selon _split_value, et on recherche la valeur 6 (buildings).
Le nuage de points en sortie contient tous les points d'origine ayant une valeur de classification de 6, stockée dans l'attribut _split_value .
Notes
- PointCloudFilter fournit une fonctionnalité similaire. Il peut diviser les nuages de points avec des expressions plus complexes, et fournit plusieurs ports de sortie, un par critère de filtrage. Cependant, il ne fractionne pas sur l'identification automatique de valeurs uniques ou n'effectue pas de filtrage simple par premier/dernier retour, comme le fait le PointCloudSplitter.
Choisir un Transformer Nuages de points
FME possède une gamme de Transformers spécialisés dans le traitement de données nuages de points.
Pour plus d'informations sur les propriétés et géométrie des nuages de points, vois Nuages de points (IFMEPointCloud).
Combine les entités en un seul nuage de points. Les géométries de nuages de points et de nuages non ponctuels sont prises en charge. |
|
Ajoute de nouveaux composants de valeurs constantes à un nuage de points. |
|
Copie les valeurs des composants sélectionnés dans des composants soit nouveaux soit existants. |
|
Conserve seulement les composants nuages de points spécifiés, supprimant tous les autres. |
|
Supprime les composants spécifiés d'un nuage de points. |
|
Renomme un composant existant. |
|
Modifie le type de données de composants nuages de points et convertit les valeurs des composants si besoin est. |
|
Lit les entités du nuage de points à des fins de test, y compris toute opération accumulée sur le nuage de points. Aucune opération supplémentaire n'est effectuée, et rien n'est fait avec les entités. |
|
Crée un nuage de points selon une taille et une densité avec des valeurs de composants par défaut |
|
Calcule des expressions sur chaque point dans une entité nuage de points, comme des opérations algébriques et des déclarations conditionnelles, et définit les valeurs de chaque composant nuage de points. |
|
Sérialise la géométrie d'une entité raster dans un attribut Blob, encodant le contenu selon un choix de formats nuages de points binaires classiques. |
|
Sépare les nuages de points en plusieurs entités, en se basant sur l'évaluation d'expressions comprenant des valeurs de composants, et crée un port de sortie distinct pour chaque expression définie. |
|
Fusionne les nuages de points en joignant les points où les valeurs des composants sélectionnés correspondent (clé de jonction), y compris les composants x, y, z et autres. Les valeurs des composantes sont transférées entre les nuages de points et la sortie est filtrée en fonction de la réussite de la correspondance et de la duplication. |
|
Définit les valeurs des composantes du nuage de points en superposant un nuage de points sur une trame. Les valeurs des composantes de chaque point sont interpolées à partir des valeurs de la bande à l'emplacement du point. |
|
Extrait les propriétés géométriques d'une entité de nuage de points et les expose en tant qu'attributs, en vérifiant éventuellement leur existence, en récupérant les propriétés des composants et en trouvant les valeurs minimales et maximales. Les étendues peuvent également être recalculées et mises à jour. |
|
Décode un attribut binaire contenant des nuage de points encodés stockés en tant que blobs, puis remplace la géométrie de l’entité avec le nuage de point décodé. |
|
Réduit le nombre de points dans un nuage de points en conservant sélectivement les points en fonction de la forme du nuage de points. Les points simplifiés et supprimés sont produits comme deux nuages de points discrets. |
|
Tri les points d'un nuage de points en fonction des valeurs de ses composants |
|
Découpe un nuage de points en plusieurs entités, chacune ayant des valeurs homogènes pour les composants ayant servi de critère de découpage. |
|
Calcule des statistiques sur les composants des nuages de points et ajoute les résultats sous la forme d'attributs. |
|
Prend un nuage de points en entrée et le reconstruit dans une maille. |
|
Réduit le nombre de points dans (amincit) un nuage de points en conservant les points à un intervalle fixe, un nombre maximum de points, ou une quantité définie de premiers ou de derniers points. Les points restants sont éliminés. |
|
Convertit des nuages de points en points ou géométries multi-points, retenant optionnellement des valeurs d'attributs et composants. |
|
Applique une échelle, un décalage ou une transformation matricielle pour recalculer des valeurs de composants et supprimer des valeurs de transformation |
Configuration
Ports en entrée
Ce Transformer n'accepte que les entités de type nuage de points.
Ports de sortie
Une ou plusieurs entités du nuage de points, comme indiqué dans les paramètres.
Les entités non nuages de points sont dirigées vers le port <Rejected>, de même que les nuages de points invalides.
Les entités rejetés auront un attribut fme_rejection_code avec l'une des valeurs suivantes :
INVALID_GEOMETRY_TYPE
INVALID_FEATURE_COMPONENTS
MISSING_FEATURE_COMPONENTS
Gestion des entités rejetées : ce paramètre permet d'interrompre la traduction ou de la poursuivre lorsqu'elle rencontre une entité rejetée. Ce paramètre est disponible à la fois comme option par défaut de FME et comme paramètre de traitement.
Paramètres
Découper par |
Spécifiez le ou les composants sur lesquels le nuage de points sera séparé. Il peut s'agir d'un nom de composant unique ou de l'une des valeurs spéciales suivantes :
Les composants uniques peuvent être divisés en utilisant le Type de découpe Plage ou Unique. |
||||||||||
Type de découpe |
Sélectionnez le type de découpe :
|
Si le Type de découpe est Plage, le tableau spécifie les plages de valeurs pour produire le nuage de points en sortie.
Une entité sera produite pour chaque plage spécifiée, pour autant qu'au moins un point s'y trouve. Si les plages se chevauchent, les points ne seront attribués qu'à la première plage à laquelle ils correspondent (dans l'ordre de la table).
Les points qui ne correspondent à aucune plage ressortent en nuage de points uniques avec la valeur par défaut assignée.
De |
La valeur de départ de la plage que vous classez. Ce champ n'accepte que des chiffres et doit être inférieur à la valeur "à" correspondante.
|
Vers |
La valeur finale de la plage que vous classifiez. Ce champ n'accepte que des chiffres et doit être supérieur à la valeur correspondante de De.
|
Valeur en sortie |
Valeur affectée aux attributs sortants de chaque plage. Les valeurs doivent être de type numériques ou chaînes de caractères. Par défaut : Un nuage de points sera produit pour les points qui ne correspondent à aucune plage. Cette valeur de sortie par défaut est attribuée à l'attribut en sortie de cette entité. |
Si le Type de découpe est Unique, le tableau spécifie les valeurs devant être conserver dans le nuage de points en sortie.
Valeurs uniques à conserver |
Optionnel : Entrer des valeurs spécifiques à produire dans le nuage de points en sortie. Tous les points qui ne correspondent pas seront rejetés. Limiter le découpage aux valeurs désirées en sortie permet d'améliorer les performances. Si vide, toutes les valeurs uniques sont identifiées et chacune produit une nouvelles entité en sortie. |
Output |
Le nom de l'attribut à ajouter à tous les nuages de points en sortie, qui identifiera la valeur qui l'a créé.
|
Éditer les paramètres des Transformers
À l'aide d'un ensemble d'options de menu, les paramètres du Transformer peuvent être attribués en faisant référence à d'autres éléments du traitement. Des fonctions plus avancées, telles qu'un éditeur avancé et un éditeur arithmétique, sont également disponibles dans certains Transformers. Pour accéder à un menu de ces options, cliquez sur à côté du paramètre applicable. Pour plus d'informations, voir Options de menus et paramètres de Transformer.
Définir les valeurs
Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple est de simplement taper une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types comme des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres d'espace de travail. Il existe un certain nombre d'outils et de raccourcis qui peuvent aider à construire des valeurs, généralement disponibles dans le menu contextuel déroulant adjacent au champ de valeur.
Utilisation de l'éditeur de texte
L'éditeur de texte fournit un moyen efficace de construire des chaînes de textes (dont les expressions régulières) à partir de données source diverses, telles que des attributs, des paramètres et des constantes, et le résultat est directement utilisé dans le paramètre.
Utilisation de l'éditeur arithmétique
L'éditeur arithmétique fournit un moyen simple de construire des expressions mathématiques à partir de plusieurs données source, telles que des attributs et des fonctions, et le résultat est directement utilisé dans un paramètre.
Valeur conditionnelle
Définit des valeurs selon un ou plusieurs tests.
Fenêtre de définition de conditions
Contenu
Les expressions et chaînes de caractères peuvent inclure des fonctions, caractères, paramètres et plus.
Lors du paramétrage des valeurs - qu'elles soient entrées directement dans un paramètre ou construites en utilisant l'un des éditeurs - les chaînes de caractères et les expressions contenant des fonctions Chaîne de caractères, Math, Date et heure ou Entité FME auront ces fonctions évaluées. Par conséquent, les noms de ces fonctions (sous la forme @<nom_de_fonction>) ne doivent pas être utilisés comme valeurs littérales de chaîne de caractères.
Ces fonctions manipulent les chaînes de caractères. | |
Caractères spéciaux |
Un ensemble de caractères de contrôle est disponible dans l'éditeur de texte. |
Plusieurs fonctions sont disponibles dans les deux éditeurs. | |
Fonctions Date/heure | Les fonctions de dates et heures sont disponibles dans l'Editeur texte. |
Ces opérateur sont disponibles dans l'éditeur arithmétique. | |
Elles retournent des valeurs spécifiques aux entités. | |
Les paramètres FME et spécifiques au projet peuvent être utilisés. | |
Créer et modifier un paramètre publié | Créer ses propres paramètres éditables. |
Options - Tables
Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.
Réordonner
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
|
Couper, Copier et Coller
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
Copier, copier et coller peuvent être utilisés au sein d'un Transformer ou entre Transfromers. |
Filtre
|
Commencez à taper une chaîne de caractères, et la matrice n'affichera que les lignes correspondant à ces caractères. Recherche dans toutes les colonnes. Cela n'affecte que l'affichage des attributs dans le Transformer - cela ne change pas les attributs qui sont sortis. |
Importer
|
Le bouton d'import remplit la table avec un jeu de nouveaux attributs lus depuis un jeu de données. L'application spécifique varie selon les Transformers. |
Réinitialiser/Rafraîchir
|
Réinitialise la table à son état initial, et peut fournir des options additionnelles pour supprimer des entrées invalides. Le comportement varie d'un Transformer à l'autre. |
Note : Tous les outils ne sont pas disponibles dans tous les Transformers.
Références
Comportement |
|
Stockage des entités |
Non |
Dépendances | Aucun |
Alias | |
Historique |
FME Community
FME Community iest l'endroit où trouver des démos, des tutoriaux, des articles, des FAQ et bien plus encore. Obtenez des réponses à vos questions, apprenez des autres utilisateurs et suggérez, votez et commentez de nouvelles entités.
Rechercher tous les résultats sur ce Transformer sur FME Community.
Les exemples peuvent contenir des informations sous licence Open Government - Vancouver et/ou Open Government - Canada.
Mots clefs : points, nuage, nuages de points, sonar LIDAR