Un abonnement JoVE est requis pour visualiser ce contenu. Connectez-vous ou commencez votre période d'essai gratuite.

Article de méthode

Une architecture matérielle adaptative en résolution pour la détection de contours de Sobel en temps réel, permettant une mise à l'échelle sous-linéaire des ressources

58 vues

⸱

DOI :

10.3791/71589

⸱

28 août 2026

 ,  , 

Dans cet article

Résumé

Ce travail présente une implémentation sur plateforme hétérogène Ultra96-V2, basée sur un FPGA, de l'algorithme de détection de contours de Sobel, en évaluant l'utilisation des ressources, la consommation d'énergie et la vitesse pour des résolutions d'image allant de 256 × 256 à 2560 × 1440. L'architecture proposée démontre une évolution sous-linéaire de l'utilisation des ressources pour les applications de traitement d'image en temps réel.

Résumé

La détection de contours est un domaine clé de la vision par ordinateur et est devenue une composante essentielle de diverses applications. Elle permet d'identifier les contours, qui constituent des caractéristiques fondamentales des images et représentent des attributs importants facilitant l'extraction d'informations clés et distinctives à partir des images. L'implémentation matérielle de la détection de contours doit être rapide, utiliser un minimum de ressources, consommer peu d'énergie et s'adapter à différentes résolutions d'image. Cet article présente une implémentation de la détection de contours de Sobel adaptée à des résolutions d'image variables, allant d'une image basse résolution à une image haute définition complète, en utilisant une plateforme moderne de circuit logique programmable hétérogène (FPGA), l'Ultra96-V2. Les résultats montrent qu'environ 5 % des ressources embarquées du FPGA, notamment les tables de correspondance (LUT), les bascules (FF), les processeurs de traitement numérique du signal (DSP) et la mémoire en bloc (BRAM), sont utilisées pour les images basse résolution, contre environ 23 % pour les images haute résolution. Cela indique que l'augmentation de l'utilisation des ressources lors du passage d'une basse à une haute résolution est inférieure à 20 %. De plus, la dissipation de puissance est d'environ 2 W pour la résolution maximale, et la fréquence de fonctionnement maximale atteint 136 MHz pour les images haute résolution et 166 MHz pour les images basse résolution, soit une diminution de seulement 18 % en fréquence. L'architecture proposée permet une évolution sous-linéaire des ressources, avec une augmentation inférieure à 20 % de l'utilisation des ressources et une réduction inférieure à 20 % de la vitesse et de la consommation d'énergie lors du traitement d'un nombre de pixels augmenté de 56 fois, tirant parti des avantages de l'architecture FPGA hétérogène moderne. Par conséquent, la capacité d'adaptation à la résolution combinée à une faible évolution des ressources rend la conception proposée particulièrement adaptée aux applications de détection de contours en temps réel nécessitant un traitement d'image de haute qualité.

Introduction

La détection de contours est devenue un élément essentiel dans presque toutes les techniques de vision par ordinateur utilisées aujourd'hui dans divers domaines d'application1. La détection de contours constitue une étape d'extraction de caractéristiques et permet de récupérer des détails informatifs et distinctifs à partir d'images, ce qui peut être appliqué dans un large éventail de scénarios2. Les contours présents dans une image indiquent des régions où une variation brusque de l'intensité se produit ; ils fournissent ainsi des informations importantes et distinctives sur cette image. Ce processus facilite l'élimination des détails superflus et non pertinents, en conservant uniquement les éléments essentiels et uniques pouvant être traités ultérieurement pour l'application spécifique.

L'importance de la détection de contours est mise en évidence par son application dans diverses tâches, notamment la segmentation d'images, la détection et la reconnaissance d'objets, l'extraction de caractéristiques, l'amélioration d'images, l'identification d'objets, l'imagerie médicale, la surveillance, l'automatisation industrielle, la conduite autonome, la réalité augmentée et la robotique2,3,4,5,6, comme illustré dans Figure 1.

De nombreuses méthodes de détection de contours existent, notamment celles de Sobel, Prewitt, Roberts, Canny, et d'autres. Parmi ces techniques, la détection de contours de Sobel se distingue par son application simple, sa faible complexité de mise en œuvre et sa grande précision dans la détection des contours3,4,5,6. Les gradients de l'image sont déterminés par l'algorithme de détection de contours de Sobel dans les directions horizontale et verticale à l'aide des noyaux Gx et Gy respectivement, comme indiqué ci-dessous2,4.

Gx met en évidence les contours dans la direction ×, et Gy met en évidence les contours dans la direction y12,13. Lorsqu’ils sont combinés, ils définissent complètement tous les contours d'une image6. La convolution avec le noyau et le processus de fenêtre glissante sont utilisés pour appliquer la détection de contours de Sobel à une image. Un à un, des fenêtres de, par exemple, 3 par 3 pixels sont extraites de l'image, et chaque fenêtre est convoluée avec la matrice de filtre afin d'obtenir la nouvelle valeur du pixel central. L'image entière est traitée de cette manière de nouveau. Deux noyaux de ce type sont utilisés dans la détection de contours de Sobel : un pour extraire les contours dans la direction x et un autre pour la direction y. Pour obtenir tous les contours, ces deux résultats sont ensuite combinés. La détection de contours de Sobel produit des résultats précis et fiables, qui peuvent être encore améliorés par un prétraitement4,5,15. La détection complète de contours de Sobel est illustrée dans Figure 2.

Bien que toute la littérature publiée apporte des contributions significatives dans le domaine de la détection de contours, toutes les principales recherches rapportées ont porté sur des résolutions d'images faibles, alors que les travaux présentés dans cet article s'appuient sur différentes résolutions d'images, allant des images de faible résolution (256 × 256) à la résolution d'image haute définition complète (HD) (2560 × 1440). Par conséquent, étudier l'implémentation matérielle de l'algorithme de détection de contours de Sobel pour différentes résolutions d'images est essentiel pour comprendre l'efficacité de cette implémentation dans des scénarios en temps réel comportant des résolutions d'images variées. Le circuit logique programmable sur site (Field Programmable Gate Array, FPGA) est reconnu comme une plateforme adaptée aux implémentations matérielles, en raison de sa pertinence pour le développement rapide de prototypes et de ses avantages tels que la reconfigurabilité, qui permet de modifier facilement la conception sans devoir changer toute la configuration matérielle6,7,8,9,10,11,12,13. De plus, les FPGA offrent la possibilité de traitement parallèle et de pipeline ; une fois les métriques de performance optimisées et la plateforme validée, la conception peut évoluer vers la production effective de circuits intégrés spécifiques (Application Specific Integrated Circuits, ASICs)14,15. Une autre caractéristique importante des FPGA est leur reconfigurabilité, qui permet aux concepteurs de modifier la conception du produit à tout moment sans avoir à remplacer aucun composant matériel. Il suffit de reprogrammer la puce, ce qui prend très peu de temps ou d'effort, à condition que le concepteur maîtrise bien les langages de description matérielle tels que VHDL/Verilog4,6,13,16,17. Pour l'analyse de l'implémentation sur FPGA, les principaux paramètres pris en compte sont la vitesse (fréquence maximale), l'utilisation des ressources et l'efficacité énergétique. Tableau 1, qui illustre la quantité croissante de littérature publiée dans le domaine des FPGA, montre clairement comment les publications sur les FPGA ont évolué entre 2006 et 2024. Cela illustre nettement que le domaine de recherche sur les FPGA s'est désormais orienté vers des applications en temps réel, la réalité augmentée, l'informatique en périphérie et d'autres applications haut de gamme13,14,15,16,17,18,19,20,21,22,23.

Tableau 2 met en évidence les travaux réalisés dans la littérature existante relatifs à l'implémentation de la détection de contours de Sobel sur FPGA depuis 2020 à 2025. Tableau 2 mentionne la carte FPGA utilisée, les algorithmes implémentés, la méthodologie de conception, les résultats, les métriques, le domaine d'application et les défis de chaque article référencé.

Les auteurs4 ont recommandé d'utiliser la méthode de détection des contours de Sobel à 8 directions afin d'améliorer la précision de la détection des contours ; toutefois, ils ont signalé une consommation plus élevée de ressources pour la méthodologie proposée. Navinkumar et al. utilisent une technique permettant de réduire les opérations mathématiques complexes de multiplication et de racine carrée impliquées dans la détection traditionnelle des contours de Sobel, afin d'économiser les ressources embarquées et d'accroître la vitesse9. Les auteurs17 ont décrit l'utilisation de l'algorithme de détection des contours de Sobel pour identifier les voies dans les systèmes avancés d'aide à la conduite. Leur objectif était d'accélérer la détection tout en réduisant le temps de traitement. Dans l'ensemble, l'utilisation de la détection des contours a été proposée comme une méthode fiable pour l'extraction de la région d'intérêt à l'avenir, ce qui pourrait s'avérer très utile dans diverses applications où la zone requise d'une image doit être extraite tout en ignorant toute information inutile. Les défis signalés comprennent collectivement une utilisation plus élevée des ressources et de la mémoire, une sensibilité au bruit, un coût computationnel élevé et une évolutivité limitée pour les images de haute résolution4,5,6,11,12,13,21,22,23.

Dans ce travail, l'implémentation classique de l'algorithme de détection de contours de Sobel est réalisée sur la carte FPGA Ultra96-V2, pour différentes résolutions d'image allant d'une faible résolution de 256 × 256 à une résolution haute définition complète de 2560 × 1440. L'Ultra96-V2 est une carte qui combine les capacités de programmation FPGA avec le traitement puissant d'Arm (Cortex-A53/R5) pour des applications hautes performances. Cette carte a été initialement lancée en 2018 et utilise le nœud technologique FinFET en 16 nm18.

Pour garantir la reproductibilité, l'implémentation complète a été réalisée à l'aide d'une chaîne d'outils standard comprenant Vivado HLS 2019.2 pour la synthèse de haut niveau (HLS) et Vivado 2019.2 pour le placement-et-routage, ainsi que l'image PYNQ publiée par les ressources Ultra96-V2. Le code HLS a été utilisé pour obtenir l'IP (propriété intellectuelle) de détection de contours de Sobel, qui a été exportée et intégrée dans la suite de conception Vivado. L' IP a été implémentée dans la partie PL (logique programmable), tandis que la partie PS (système de traitement) du FPGA était chargée des transferts de données et des mécanismes de contrôle. L'interfaçage entre le PS et le PL a été réalisé via le protocole AXI. Toutes les métriques indiquées — fréquence, utilisation des ressources et consommation d'énergie — proviennent des rapports post-implémentation, et non des estimations HLS. Les paramètres d'implémentation sont restés constants, et seules les résolutions d'image ont été modifiées au cours des expériences.

Les réalisations importantes de ce travail concernent la faible consommation d'énergie, l'utilisation réduite des ressources et la haute vitesse. Les résultats indiquent moins de 20 % d'utilisation des ressources embarquées (18 % de tables de correspondance (LUT), 11 % de bascules (FF), 3 % de mémoire et 10 % de DSP) pour les images haute résolution, ce qui montre une grande disponibilité pour intégrer un traitement bien plus important sur ces images, comme on s'y attend dans tout système de vision par ordinateur, la détection de contours n'étant qu'une étape intermédiaire. De plus, la dissipation de puissance est d'environ 2 W, et la fréquence maximale de fonctionnement est de 144 MHz. Les résultats montrent que multiplier les tailles d'images par environ 56 augmente l'utilisation des ressources d'à peine 20 %. La vitesse et la dissipation de puissance sont également dégradées d'environ 20 % seulement. Cette analyse étudie de manière approfondie l'algorithme sous un angle différent, qui n'a pas été rapporté dans la littérature antérieure, indiquant ainsi que l'implémentation convient bien aux applications en temps réel, sans nécessité de limiter les images à de petites tailles ou à une résolution inférieure, ce qui réduirait forcément la quantité d'information nécessaire aux étapes ultérieures après la détection de contours.

La nouveauté de ce travail ne réside pas dans l'algorithme lui-même, mais dans l'évaluation des performances de l'algorithme traditionnel de détection de contours de Sobel à différentes résolutions d'image sur des architectures FPGA hétérogènes modernes, en tirant parti des avantages des techniques d'implémentation basées sur le HLS. Les principales contributions de cet article résident principalement dans l'application d'une méthodologie hybride implémentée sur un FPGA, permettant une répartition efficace de la charge de travail entre les sections PS et PL de l'architecture, ce qui permet à la conception de s'adapter facilement à différentes résolutions. Une autre contribution consiste à mener des expérimentations afin d'évaluer comment l'évolution de l'utilisation des ressources varie en fonction des changements de résolution d'image, ce qui aide à comprendre les performances dans différents contextes et pour diverses applications.

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Protocole

1. Implémentation de la détection de contours de Sobel dans l'outil HLS

  1. Ouvrez l'outil Vivado HLS 2019.2 et créez un projet. Sélectionnez la carte FPGA Ultra96-V2.
  2. Écrivez le code en langage évolué en utilisant le langage C++ pour la détection de contours par l'opérateur de Sobel, avec un paramètre de taille d'image généralisé et non fixe.
    NOTE : La largeur et la hauteur de l'image ne sont pas fixes et sont définies comme paramètres généraux dans le code, afin de pouvoir être facilement modifiées lors d'un changement de résolution d'image, sans avoir à effectuer des modifications à plusieurs endroits.
  3. Écrivez le code de banc d'essai pour l'algorithme de détection de contours par Sobel en C++.
    NOTE : Le banc d'essai est conçu pour fournir les images d'entrée sur lesquelles le code est testé.
  4. Cliquez sur « exécuter la simulation C » pour simuler le code et vérifier sa correction fonctionnelle. Fournissez une image d'entrée au banc d'essai, puis examinez l'image de sortie générée, qui doit présenter les contours détectés.
  5. Cliquez sur « exécuter la synthèse C » pour synthétiser le code HLS et exporter l'IP de détection de contours par Sobel.
    NOTE : Le processus de synthèse consiste essentiellement à mapper la conception codée vers des composants matériels, rendant ainsi la conception compatible et prête pour une implémentation matérielle.
  6. Vérifiez les rapports de temps et d'utilisation des ressources générés par l'outil, et assurez-vous que le temps estimé ne dépasse pas le temps cible.
    NOTE : Tous ces résultats provenant de la plateforme HLS sont uniquement des estimations ; les paramètres réels ne sont déterminés qu'une fois la conception implémentée sur un FPGA.
  7. Cliquez sur « exporter l'IP » pour exporter l'IP correspondant à la procédure de détection de contours par Sobel.
    NOTE : Cette IP est utilisée à l'étape suivante lors de la conception du diagramme en blocs pour l'implémentation FPGA dans l'outil Vivado.

2. Mise en œuvre de la détection de contours de Sobel sur la plateforme FPGA Ultra96-V2 à l'aide d'un IP HLS extrait

  1. Ouvrez l'outil de conception Vivado et créez un nouveau projet. Sélectionnez la carte cible comme étant Ultra96-V2, puis cliquez sur « Create a new block design ».
  2. Importez l'IP de détection de contours de Sobel exportée depuis l'outil HLS. Ajoutez les autres blocs nécessaires pour compléter l'interface entre la partie PS et la partie PL.
    NOTE : Le diagramme en blocs utilise également d'autres IP importantes, telles que l'IP Zynq Ultrascale, le Smart Connect et la remise à zéro du processeur, entre autres, afin d'établir l'interface entre PS et PL en utilisant le protocole Advanced eXtensible Interface (AXI).
  3. Cliquez sur « validate design » pour valider la conception du bloc. Assurez-vous qu'aucune erreur de conception n'est signalée par l'outil. S'il y a des erreurs, suivez les instructions de correction, puis validez à nouveau.
    NOTE : Cette étape permet de s'assurer qu'il n'y a pas de connexions manquantes dans le diagramme en blocs, mais elle ne vérifie pas la justesse fonctionnelle de la conception du bloc.
  4. Cliquez sur « create the HDL wrapper » pour obtenir un code HDL généralisé correspondant à la conception du bloc.
  5. Cliquez sur « run synthesis » pour synthétiser la conception et détecter d'éventuelles erreurs signalées. Si aucune erreur n'est détectée, l'outil indique une synthèse réussie. Après une synthèse réussie, consultez les rapports de synthèse relatifs au chronogramme afin de rechercher d'éventuelles violations temporelles.
  6. Pour vérifier les violations temporelles, assurez-vous qu'aucun délai n'est indiqué en texte rouge, car cela signifie que le temps utilisé dépasse la cible attribuée, indiquant ainsi des violations.
  7. Cliquez sur « run implementation » pour implémenter la conception et évaluer les rapports relatifs au chronogramme, à la consommation d'énergie et à l'utilisation des ressources.
  8. Générez le fichier « .bit » afin de programmer la carte FPGA.
    NOTE : Le diagramme en blocs pour la détection de contours de Sobel sur Ultra96-V2 est illustré dans la Figure 3. Comme mentionné précédemment, ce diagramme en blocs est essentiellement nécessaire pour établir une interface entre la partie PS et la partie PL de la carte FPGA.

3. Programmation de la carte FPGA

  1. Pour préparer la carte SD, téléchargez le fichier image PYNQ (.img) pour la carte Ultra96-V216 et installez le fichier téléchargé sur la carte SD.
  2. Mettez sous tension la carte en mode de démarrage à partir de la carte SD en sélectionnant les positions des commutateurs conformément au manuel de référence Ultra96-V216.
  3. Visitez l'URL http://192.168.3.1 et saisissez le nom d'utilisateur et le mot de passe, tous deux « xilinx », lorsque vous y êtes invité.
    REMARQUE : Il est recommandé d'utiliser le navigateur Google Chrome afin d'éviter tout problème technique.
  4. Accéder à la plateforme Jupyter et écrire un code Python pour la partie PS afin de lire les images ou vidéos d'entrée et d'envoyer l'image lue à la partie PL pour traitement.
  5. Écrire un code pour la tâche d'enregistrement des images traitées depuis PL vers PS et d'affichage du résultat.
    REMARQUE : Pour afficher les résultats sur Ultra96-V2, la plateforme PYNQ est utilisée, ce qui permet de visualiser facilement les images de sortie simplement à l’aide de codes Python et des bibliothèques OpenCV.
    Figure 4 montre les étapes de l'approche Ultra96-V2 telles que démontrées dans cette section, ainsi que les sorties obtenues.

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Résultats

Cette section présente les résultats obtenus lors de la conception de la détection de contours de Sobel sur Ultra96-V2. Figure 5 ci-dessous montre les images d'entrée et de sortie obtenues par simulation HLS. Les images utilisées sont des images standard de taille 512 × 512. Ces résultats démontrent que le code HLS écrit pour la détection de contours de Sobel est fonctionnellement correct. Les contours doivent être clairement visibles sur les images résultantes.

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Discussion

Cet article se concentre sur l'exécution de l'algorithme de détection de contours de Sobel, qui constitue un élément essentiel dans diverses applications relevant de plusieurs domaines de la vision par ordinateur et du traitement d'images2,3,4,5,6. La mise en œuvre de la détection de contours de Sobel est réalisée à l'aide de l'outil Vivado HLS, permettant ainsi de coder dans des ...

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Déclarations de divulgation

Les auteurs déclarent qu'ils n'ont aucun conflit d'intérêts. Aucun outil d'intelligence artificielle (IA) n'a été utilisé lors de la rédaction de cet article.

Remerciements

Les auteurs n'ont aucune reconnaissance à formuler. Cette recherche n'a reçu aucun financement externe.

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Matériaux

Liste des matériaux utilisés dans cet article
NomEntrepriseNuméro de catalogueCommentaires
Carte FPGA Ultra96-V2 Xilinx Présentée en 2018Plateforme matérielle utilisée pour implémenter l'algorithme de détection de piétons
Vivado HLS AMD2019.2Outil de synthèse de haut niveau utilisé pour programmer au niveau élevé le code de détection de piétons dans l'article afin d'exporter l'Intellectual Property (IP)
Vivado AMD2019.2Outil de programmation FPGA utilisé pour programmer la carte FPGA Ultra96 v2 avec l'algorithme de détection de contours de Sobel 

Références

  1. Rani N. Image processing techniques: a review. J Today Ideas Tomorrow Technol. 2017;5(1):40-9.
  2. Gonzalez RC. Digital image processing. Pearson Education; India; 2009.
  3. Jena KK, Mishra S, Mishra S. An edge detection approach for fractal image processing. In: Examining Fractal Image Processing and Analysis. IGI Global; 2020. p. 1-22.
  4. Gayathri AG, Remya AS. VLSI implementation of improved Sobel edge detection algorithm [conference presentation]. Presented at: 2021 International Conference on Communication, Control and Information Sciences (ICCISc); 2021 Jun 16. Available from: https://ieeexplore.ieee.org/
  5. Obaid MT. Efficient Implementation of Sobel Edge Detection with ZYNQ-7000 [Master's thesis]. Purdue University.
  6. Asharani P, et al. A inventive method for door detection on FPGA using Sobel edge algorithm [conference presentation]. Presented at: 2022 2nd International Conference on Intelligent Technologies (CONIT); 2022 Jun 24. Available from: https://ieeexplore.ieee.org/
  7. Shylashree N, Anil Naik M, Sridhar V. Design and implementation of image edge detection algorithm on FPGA. Int J Circuits Syst Signal Process. 2022;16:628-36.
  8. Zhou G, Guo S, Chen Z. FPGA-based improved Sobel operator edge detection. Front Comput Intell Syst. 2023;5(2):6-11.
  9. Navinkumar K, Logesh R, VishnuBabu P, Ananthalakshmi AV. FPGA implementation of Sobel edge detection algorithm. EAI Endorsed Trans Internet Things. 2024;10.
  10. Ravichandran S, et al. Parallel processing of Sobel edge detection on FPGA: enhancing real-time image analysis. Sensors. 2025;25(12):3649.
  11. Baloch A, et al. Hardware synthesize and performance analysis of intelligent transportation using Canny edge detection algorithm. Int J Eng Manuf. 2021;11(4):22-32.
  12. Patel CS, Solanki N, Tailor N. Analysis of edge detection using Zynq based SoC FPGA. Turk Online J Qual Inq. 2021;12(7).
  13. Kashyap S, Bhandari AK, Giri P. Low resource FPGA implementation based efficient image edge detector architecture. Multimed Tools Appl. 2024;83(9):25595-615.
  14. Dakshayani V, et al. Design of a Gabor filter-based image denoising hardware model. Electronics. 2022;11(7):1063.
  15. Belmessaoud NM, Bentoutou Y, El-Mezouar MC. FPGA implementation of feature detection and matching using ORB. Microprocess Microsyst. 2022;94:104666.
  16. Castells-Rufas D, et al. A survey of FPGA-based vision systems for autonomous cars. IEEE Access. 2022;10:132525-63.
  17. Vedavyas Y, Vasavi S, Harsha SS, Subhash MS. An FPGA-based adaptive real-time quality enhancement system for drone imagery. SN Comput Sci. 2022;4(1):84.
  18. Avnet. Ultra96-V2 Single Board Computer Hardware User's Guide. Revision 1.0. Avnet; 2020 May.
  19. Singh G, et al. Optimizing IoT capabilities: leveraging FPGA for superior performance, efficiency and security [conference presentation]. Presented at: 2024 5th International Conference for Emerging Technology (INCET); 2024 May 24. Available from: https://ieeexplore.ieee.org/
  20. Kaur A. A survey on FPGA implementations in embedded augmented reality applications [conference presentation]. Presented at: 6th Edition of International Conference on Wireless Networks and Embedded Systems (WECON); 2018 Nov 16. Available from: https://ieeexplore.ieee.org/
  21. Kalaiselvi A, Sajina S, Nithish S, Sowmiya M. Implementation of Sobel edge detection. Int Res J Mod Eng Technol Sci. 2023;5(3):701-11.
  22. Narasimhamurthy CG, Kulkarni S. Fast architecture for low level vision and image enhancement for reconfigurable platform [conference presentation]. Presented at: 2021 International Conference on Advances in Electrical, Computing, Communication and Sustainable Technologies (ICAECT); 2021 Feb 19. Available from: https://ieeexplore.ieee.org/
  23. Pujare A, Sawant P, Sharma H, Pichhode K. Hardware implementation of Sobel edge detection algorithm [conference presentation]. Presented at: ITM Web of Conferences; 2020. Available from: https://www.itm-conferences.org/

Accès restreint. Veuillez vous connecter ou commencer un essai pour afficher ce contenu.

Réimpressions et autorisations

Explorer plus d’articles

Détection de contours en temps réelRésolution d'image adaptativeArchitecture FPGAImplémentation matérielleFPGA Ultra96-V2Traitement d'imagesVision par ordinateur