Nouvelle version : heliAlgo™ 1.6.0

Partager cet article

Table des matières

Avec la version actuelle 1.6.0, la bibliothèque d’algorithmes Heliotis (« heliAlgos ») a été étendue et améliorée techniquement.

La bibliothèque fournit des algorithmes centraux pour l’évaluation, l’étalonnage et l’analyse de qualité des données de mesure 3D interférométriques et peut être intégrée directement dans des applications existantes. Nombre de ces fonctions sont également utilisées en interne dans nos outils de référence et de production et sont mises à la disposition des utilisateurs sous forme de modules stables et testés.

Les heliAlgos étant souvent sous-estimés ou peu utilisés jusqu’à présent, nous souhaitons profiter de cette nouvelle version pour présenter brièvement la bibliothèque et résumer les principales nouveautés.

Que sont les heliAlgos ?

La bibliothèque d’algorithmes étend le SDK heliInspect avec des algorithmes de traitement 3D prêts à l’emploi qui couvrent des tâches plus complexes et spécifiques aux appareils Heliotis. De nombreuses méthodes vont au-delà des algorithmes conventionnels issus de divers frameworks de vision dans la mesure où elles intègrent des connaissances sur les données spécifiques à Heliotis.

Au lieu de développer ses propres algorithmes de base, il est possible d’utiliser directement les implémentations existantes, par exemple pour :

  • Analyse de mise au point et du système
  • Traitement de phase et déroulement de phase
  • Paramètres de rugosité et de surface conformes ISO
  • Nettoyage des données
  • Étalonnage et assemblage

L’intégration s’effectue directement au niveau du code. Des wrappers sont disponibles pour :

  • C / C++
  • CLR (C#, LabVIEW)
  • Python
  • Rust (nouveau)
  • Halcon
  • AuroraVision

Les algorithmes peuvent ainsi être intégrés directement dans les pipelines existants.

Nouveautés de la version 1.6.0

La version actuelle apporte plusieurs améliorations techniques, notamment en matière d’intégration et de robustesse.

Bindings Rust

De nouveaux bindings Rust natifs sont désormais disponibles.
Cela permet d’intégrer la bibliothèque d’algorithmes directement dans des applications Rust modernes et sécurisées en mémoire, sans wrappers C/FFI supplémentaires.

Cela facilite notamment l’utilisation dans :

  • les services backend performants
  • les applications embarquées/edge
  • les nouvelles stacks de vision avec Rust
Prise en charge étendue de Python

Python est désormais officiellement pris en charge de la version 3.8 à 3.14.

Interface Halcon révisée

L’interface Halcon a été adaptée aux conventions HALCON courantes.

Les paramètres optionnels sont désormais définis via :

  • GenParamName
  • GenParamValue

définis.

Cela garantit :

  • des signatures d’opérateur plus cohérentes
  • une meilleure lisibilité
  • une extensibilité simplifiée
Améliorations de l’assemblage

Le module d’assemblage a été étendu sur la base des retours des utilisateurs.

Parmi les nouveautés figurent notamment :

  • Critères d’amplitude minimale
  • Nombre minimum de pixels valides

Ces métriques de qualité supplémentaires augmentent la robustesse en cas de :

  • signaux faibles
  • zones de bordure
  • surfaces hétérogènes

En particulier pour les grandes surfaces ou les scans en mosaïque, cela conduit à des résultats d’assemblage plus stables.

Expérimental : Extraction améliorée de surface enveloppe

Un nouveau mode d’extraction de surface enveloppe a été introduit dans le groupe « Experimental ».

Objectifs :

  • précision accrue
  • meilleure robustesse
  • reconstruction de surface plus stable

Le mode convient particulièrement en combinaison avec des procédés basés sur la phase et de correction des vibrations, afin d’obtenir une reconstruction 3D plus précise et cohérente.

Fonctions techniques principales de la bibliothèque heliAlgo

Outre les nouveautés, la bibliothèque contient toujours des fonctions éprouvées pour les évaluations 3D typiques.

Analyse du système et détermination de la mise au point
  • Calcul MTF sur les images d’amplitude
  • détermination automatique du plan de mise au point optimal
  • analyse MTF régionale pour la détection de désalignements dans le système optique

Adapté aux vérifications du système, aux réglages et à la surveillance en ligne.

Déroulement de phase avec prise en charge de l’amplitude
  • Quality-Guided Path Unwrapping
  • utilisation combinée des informations de phase et d’amplitude
  • résultats plus robustes au niveau des marches et des transitions de matériaux

Permet des reconstructions stables même pour des topographies difficiles.

Paramètres de rugosité et de surface conformes ISO

Implémentations conformes à :

  • ISO 16610 (Filtres)
  • ISO 21920 (Profil)
  • ISO 25178 (Surfacique)

Calcul direct des valeurs caractéristiques de rugosité et de structure sans logiciel supplémentaire.

Préparation des données et étalonnage
  • Suppression des valeurs aberrantes
  • Suppression de forme polynomiale
  • Correction de la normale de surface
  • correction de distorsion latérale
  • Assemblage
  • Correction de décalage I/Q

Ces fonctions réduisent les erreurs systématiques et augmentent la reproductibilité.

Conclusion

Avec la version 1.6.0, la bibliothèque d’algorithmes Heliotis est encore améliorée tant sur le plan fonctionnel que de l’intégration.

Pour les développeurs, cela signifie :

  • moins d’implémentations propres
  • intégration plus rapide
  • algorithmes robustes et testés
  • métriques de performance cohérentes avec la production
  • utilisation directe en C++, C#, Python, Rust ou Halcon

Si vous n’utilisez pas encore les heliAlgos, il vaut la peine de consulter la version actuelle : de nombreuses étapes d’évaluation typiques peuvent ainsi être simplifiées immédiatement ou complètement remplacées.