Le livre blanc de Matrox Imaging Bibliothèque vision ou outil de développement intégré (IDE) spécifique pour la vision Bibliothèque vision ou outil de développement intégré (IDE) spécifique pour la vision: (Traduction du document «Matrox Imaging White Paper: Vision library or vision specific IDE: Which is right for you?») Résumé Les logiciels commerciaux de vision industrielle sont actuellement classés en deux catégories: la bibliothèque de vision conventionnelle et l outil de développement intégré (IDE) pour la vision. Déterminer quel logiciel est adapté à votre projet dépend de plusieurs facteurs: une utilisation simple, la productivité, la flexibilité, la performance, l'exhaustivité et la maintenance. Ce livre blanc utilise ces facteurs pour comparer les deux approches de développement de logiciels et établir clairement les avantages et les inconvénients de chacun. La discussion suppose que les outils de vision disponibles dans les deux types de logiciels sont similaires, sinon identiques, et n explorent pas les écarts possibles avec ces outils. En outre, la discussion ne tient pas compte de la plateforme matérielle sur laquelle fonctionne sur les applications de vision, elles peuvent devenir fausses l une sans l autre. Page 1/5
Une utilisation simple Le développement d'une application utilisant une bibliothèque de vision exige de bonnes connaissances - certains vont même prétendre avoir des connaissances d experts - et des expériences professionnelles avec un langage de programmation traditionnel comme C/C++, C # ou Visual Basic. Il est également important pour vous d'être très familier avec les outils de développement associés: éditeur de code, compilateur, éditeur de liens et débogueur. Beaucoup dans le domaine confirmeraient, cependant, que l'acquisition et le maintien de ces compétences peut être difficile à atteindre et coûteux. En revanche, travailler avec un outil de développement intégré spécifique IDE, nécessite une connaissance rudimentaire des principes de programmation: contrôle de flux, les variables et expressions conditionnelles/logiques. L'ensemble minimal des compétences requises, rend l outil de développement intégré IDE accessible à un public technique beaucoup plus large. Figure 1 - Développement d'une application utilisant une bibliothèque de vision en écrivant du code de programme traditionnel (à gauche). Création d'une application à l'aide d un outil de développement intégré IDE en connectant et configurant des blocs d'opération (à droite). Page 2/5
Productivité En combien de temps devenez-vous productif avec une bibliothèque vision? Cela dépend fortement de votre connaissance en programmation traditionnelle et de l'expérience, ainsi que de la qualité et l'intuitivité de l'interface de programmation d'application (API) de la bibliothèque vision et de sa documentation. Faire bon usage d'une bibliothèque vision nécessite une étude attentive des exemples de programmation fournis et de la documentation. Et il est extrêmement bénéfique pour vous de profiter des diverses options de formation offertes par le fournisseur du logiciel avant de commencer le développement d'applications. Vous devez également investir le temps nécessaire pour bien concevoir l'architecture de l'application initiale du programme car cela est essentiel pour sa réutilisation efficace dans des projets ultérieurs. Travailler avec une bibliothèque de vision se traduit généralement par un temps de développement global mesuré en semaines ou en mois. Un outil de développement intégré spécifique vision IDE est, contrairement à une bibliothèque de vision, conçu pour relier et configurer rapidement des opérations nécessaires à une application de vision typique: obtenir l'image suivante pour afficher le(s) objet(s) ou la /les fonction(s) d'intérêt, analyser / mesurer / lire / décoder, prendre la bonne ou la mauvaise décision, et communiquer les résultats. La simplicité de cette approche rend le démarrage d'un projet -même en partant de zéro- simple. L'automatisation des applications habituelles requises (par exemple, l analyse d une région basée sur le résultat d'une opération de localisation) simplifie et accélère ainsi le développement du projet. Et, la modification de l'application sur un site de déploiement est moins lourde en raison de la nature globale de l'environnement de développement du logiciel. Travailler avec un outil de développement intégré spécifique IDE exige, en moyenne, un laps de temps de développement mesuré en jours ou en semaines. Flexibilité Une bibliothèque de vision vous offre la plus grande flexibilité pour gérer les applications qui nécessitent une décision importante et complexe, avec l'utilisation importante de traitement d image personnalisé ou d'autres algorithmes (par exemple, les mathématiques) à côté des outils de vision prêt à l emploi, et la nécessité de consolider et de travailler sur plusieurs vues de plusieurs caméras. Pour réitérer, tel que discuté dans la section précédente, un outil de développement intégré IDE est le mieux adapté aux applications qui respectent le modèle d'utilisation prévue. S écarter de ce modèle peut être difficile et compliqué. De plus, l'ajout de traitement d images personnalisée ou autres, exige une programmation essentiellement traditionnelle. Page 3/5
Performance Une bibliothèque de vision offre toujours la meilleure performance, car elle fonctionne à un niveau proche du hardware. En fait, un outil de développement intégré IDE utilise une bibliothèque vision d'une forme ou une autre. Travailler avec une bibliothèque fournit également plus de possibilités de réglage des performances, y compris la parallélisation des tâches manuelles et de déchargement, et permet l'utilisation la plus efficace de la mémoire et de la réutilisation des ressources informatiques. Un outil de développement intégré IDE a une surcharge de performance inhérente, mais son ampleur dépend de la qualité de sa mise en œuvre. Et, en général, l utilisation de la mémoire n'est pas le plus optimal en raison du besoin de l'ide pour maintenir la flexibilité. L'exhaustivité Lorsque vous décidez d'utiliser une bibliothèque vision, la mise en œuvre d autres fonctions de l'application (par exemple, l interface opérateur et la communication avec l'automate et l'équipement d entreprise) nécessite une programmation supplémentaire qui est soit personnalisée, soit basée sur des bibliothèques tierces. Avec un outil de développement intégré IDE, la configuration de la fonctionnalité secondaire (par exemple, l interface opérateur et la communication externe) est une caractéristique clé de l'ide. Cependant, les fonctionnalités avancées de vision sont volontairement cachées ou non exposées pour assurer la simplicité et la facilité de l'utilisation. Figure 2 Création d'une interface opérateur lors de l'utilisation d'une bibliothèque vision nécessitant l'utilisation d'outils distincts et complémentaires de programmation (à gauche). Un outil de développement intégré IDE intégrant la possibilité de créer une interface opérateur à partir d'un modèle prêt à l emploi. Ce qui est bon pour vous? Page 4/5
La maintenance Une fois une application développée utilisant une bibliothèque de vision et déployée, toute révision ou adaptation peut être important(e) en fonction de sa complexité ainsi que la qualité de sa mise en œuvre et la documentation. De plus, le transfert de cette responsabilité à un autre programmeur peut être un processus long et difficile. Ce n'est pas comme un projet développé utilisant un outil de développement intégré IDE, qui est plus facile à transférer ou partager. Le verdict Choisir entre une bibliothèque vision, comme la bibliothèque Matrox Imaging Library (MIL), ou un outil de développement intégré IDE, comme Design Assistant de Matrox Imaging, dépend des circonstances et des objectifs de l'application. Si vous êtes disposé et en mesure d'investir dans l'obtention et le maintien d un savoir-faire traditionnel, et si vous avez besoin de votre système de vision pour offrir des niveaux inégalés de performances et de fonctionnalités, vous ne vous tromperez pas en utilisant une bibliothèque de vision. Un utilisateur typique de la bibliothèque vision est un fabricant d'équipements d'origine (OEM) qui intègre la vision dans une machine d'ensemble destinés à être vendus en quantités importantes pendant de nombreuses années. Si à la place, vous avez besoin de passer d'un projet de vision à l'autre rapidement et souvent, tout en offrant des niveaux actuels de performance et de capacité, un outil de développement intégré IDE est le mieux adapté à vos besoins. Les utilisateurs d outil de développement intégré IDE sont souvent des intégrateurs de systèmes avec un personnel technique multidisciplinaire, sur des installations ponctuelles ou des projets ayant un modeste nombre d installations dupliquées. Certains fournisseurs de logiciels commerciaux de vision, comme Matrox Imaging, comprennent ces besoins divergents et offrent des produits qui répondent à ces deux types d'utilisateurs. Pour en savoir plus sur la Matrox Imaging Library (MIL), visitez http://www.techway.fr/fiche-detaillee?id_categorie=3&id_sous_categorie=13&id_produit=8 http://www.matrox.com/imaging/en/products/software/mil/. Pour en savoir plus sur Design Assistant de Matrox, visitez http://www.techway.fr/fiche-detaillee?id_categorie=3&id_sous_categorie=10&id_produit=3 http://www.matrox.com/imaging/en/products/smart_cameras/iris_gt/development/. Ce qui est bon pour vous? Page 5/5