Nombreuses améliorations des OpenMV Cam, nouveau firmware, capture et analyse à 120 FPS en bien plus

Partager sur facebook
Partager sur twitter
Partager sur linkedin
Partager sur pinterest
Partager sur email
Partager sur telegram

Table des matières

L’équipe de développement d’OpenMV a profité du confinement pour apporter de (très) nombreuses améliorations au firmware. Il est maintenant possible de piloter les caméras depuis toutes les interfaces y compris en I2C ou SPI. D’autres améliorations sont en cours de finalisation et seront publiées prochainement. La vitesse de capture et d’analyse d’image sera possible à 120 FPS sur la H7 et probablement aussi sur les anciennes générations. Les filtres seront plus rapides (1000% pour le filtre médian). Enfin, il sera bientôt possible de développer en temps réel en WiFi.

 

L’essentiel du stock étant encore inaccessible à cause des restrictions de circulation entre Hongkong et Shenzhen, les expéditions reprennent doucement.

Nouvelle bibliothèque d’interface OpenMV Cam, pilotage I2C / SPI

Jusqu’à maintenant OpenMV déconseillait d’utiliser les bus I2C ou SPI pour contrôler ses caméras Ce ne plus le cas désormais. Toutes les interfaces des caméras OpenMV Cam sont désormais utilisables depuis la version v3.6.2 du firmware publiée sur OpenMV IDE ces derniers jours. On pourra par exemple transférer le tampon de trame non compressé d’une caméra OpenMV à une autre caméra OpenMV via le bus SPI, UART, I2C ou CAN.

Un exemple d’utilisation disponible sur GitHub montre comment utiliser la bibliothèque.

  • Async Serial (UART) – jusqu’à 7,5 Mb/s sur la Cam H7
  • Bus I2C – jusqu’à 1 Mb/s sur la Cam H7
  • Bus SPI – jusqu’à 20 Mb/s (40/80 Mb/s également possible) sur la Cam H7
  • Bus CAN – jusqu’à 1 Mb/s sur la Cam H7
  • Port COM virtuel USB (VCP) – jusqu’à 12 Mb/s sur les modèles M4 / M7 / H7
  • WiFi – 12 Mb/s et plus sur les modèles M4 / M7 / H7 via le shield WiFi officiel

Une bibliothèque d’interface pour Arduino et Raspberry Pi permettant de contrôler la caméra OpenMV en I2C, SPI et Async Serial est en cours de développement.

Voici une petite démonstration en vidéo

 

Plusieurs exemples (ici sur GitHub) développés à l’aide de la nouvelle librairie montrent comment utiliser l’OpenMV Cam en tant que coprocesseur de vision industrielle pour effectuer des tâches telles que la recherche de visages, de personnes, la détection de balises, la détection de code QR, la détection de codes à barres, la détection de matrice de données, le suivi des couleurs, ainsi que sur SPI, UART, I2C et CAN.

Bientôt une capture et analyse d’image à 120 FPS

Les développeurs travaillent également sur l’amélioration de la vitesse de capture vidéo. Cette vidéo publiée il y a quelques jours montre l’avancé des travaux sur l’optimisation de la vitesse de transmission du flux vidéo du capteur optique OV5640 qui équipe l’OpenMV Cam H7 Plus de dernière génération.

On peut voir le suivi d’un objet illuminé avec un éclairage par infrarouge (IR) à haute résolution. Le tracking est réalisée sur une image 2592×1944 pixels à une fréquence de 120 FPS (images / seconde). Les  générations plus anciennes devraient également bénéficier de cette amélioration de performance.

Cette optimisation sera disponible dans une prochaine mise à jour du firmware. Les développeurs travaillent encore sur le gain de vitesse et l’amélioration de la qualité de l’image en JPEG à des résolutions plus élevées.

Filtre médian 1000% fois plus rapide

La vitesse du filtre médian a été amélioré grâce aux travaux de Larry Bank. En particulier, vous pouvez maintenant faire des filtres médians 7×7 sur la caméra OpenMV. La vitesse de traitement qui était auparavant inférieure à 1 image/s fonctionne maintenant à 16 FPS avec une résolution QVGA.

Larry a optimisé de nombreux filtres (Mean, Median, Mode, Midpoint, Morph, Bilateral, Erode et Dilate) rendant ces derniers beaucoup plus utilisables pour vos applications embarquées.

La programmation WiFi prochainement disponible

Durant la campagne de financement initiale d’OpenMV Cam H7 sur kickstarter en juillet 2019, la société pensait pouvoir proposer le développement en temps réel via le shield WiFi. Cependant, avec une vitesse de transfert ne dépassant pas 250 Ko/s, il avait été décidé d’abandonner cette fonctionnalité.

Cependant, lors du développement de la bibliothèque d’interface OpenMV Cam, Kwabena Agyeman a découvert pourquoi les performances étaient si mauvaises à l’aide du logiciel d’analyse réseau WireShark. Le problème provenait du driver du module WINC1500 utilisé pour la connectivité WiFi. Après avoir optimisé le drivers, les performances ont bondi à 15Mb/s offrant ainsi une bande passante largement suffisante pour faire du développement et de la mise au point en WiFi depuis l’IDE OpenMV.

Cette amélioration sera publiée dans une mise à jour prochaine. Pour en profiter, il faudra acheter le shield WiFi officiel ou compatible.

Nouveaux fabricants compatibles

L’OpenMV Cam étant distribuée sous licence Open Hardware, plusieurs fabricants produisent des modèles compatibles. L’offre en carte d’extension s’étoffe également avec de nouveaux shields compatibles.

Avez-vous aimé cet article ?
[Total: 1 Moyenne: 5]
Partager sur facebook
Partager sur twitter
Partager sur linkedin
Partager sur pinterest
Partager sur email
Partager sur telegram

Vous avez aimé ce projet ? Ne manquez plus aucun projet en vous abonnant à notre lettre d’information hebdomadaire!

quel modèle esp8266 choisir
Quel modèle d'ESP8266EX choisir en 2020 ?
guide choix esp32 development board
Quel ESP32 choisir en 2020 ?

Vous rencontrez un problème avec ce sujet ?

Peut-être que quelqu’un a déjà trouvé la solution, visitez le forum avant de poser votre question

Nous serions ravis de connaître votre avis

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Calculateurs
×
Calculateur loi d'Ohm
Tension (U) - en Volt
Courant (I) - en Ampère
Résistance (R) - en Ohms
Puissance (P) - en Watts

Ce calculateur permet de calculer les relations entre le courant, la tension, la résistance et la puissance dans les circuits résistifs.

Saisir au moins deux valeurs puis cliquer sur calculer pour calculer les valeurs restantes. Réinitialisez après chaque calcul.

Rappel sur la Loi d'Ohm
La loi d'Ohm explique la relation entre la tension, le courant et la résistance en déclarant que le courant traversant un conducteur entre deux points est directement proportionnel à la différence de potentiel entre les deux points.
La loi d'Ohm s'écrit U = IR, où U est la différence de tension, I est le courant en ampère et R est la résistance en Ohms (symbole Ω).
Loi d'Ohm (U=RI)
×
Déchiffrer le code couleur d'une résistance à 4 bandes
Bande 1 Bande 2 Multiplicateur Tolérance
   

Résistance:  

1 000 Ω ±5%

Comment déchiffrer le code couleur d'une résistance à 4 anneaux
Formule : ab*cΩ ±d%
Les deux premières bandes (a, b) permettent de déterminer le chiffre significatif. La première bande correspond au chiffre de la dizaine, le second anneau le chiffre de l'unité. Par exemple Brun(1), Noir (0) donne le nombre 10.
La troisième bande (c) est un coefficient multiplicateur. Par exemple, l'anneau rouge est un coefficient multiplicateur de 100, ce qui donne 10 X 100 = 1000Ω.
Le quatrième anneau (d) indique la tolérance de la valeur nominale de la résistance. Par exemple l'anneau Or correspond à ±5%. Donc le fabricant de la résistance s'engage à ce que sa valeur soit comprise entre 950 Ω et 1050 Ω.
Déchiffrer code couleur 4 bandes
×
Déchiffrer le code couleur d'une résistance à 5 bandes
Bande 1 Bande 2 Bande 3 Multiplicateur Tolérance

Résistance:  

1 000 Ω ±5%

Comment déchiffrer le code couleur d'une résistance à 5 anneaux
Formule : abc*dΩ ±e%
Les trois premières bandes permettent de déterminer le chiffre significatif. La première bande correspond au chiffre de la dizaine, le second anneau le chiffre de l'unité. Par exemple Brun(1), Noir (0), Noir (0) donne le nombre 100
La quatrième bande est un coefficient multiplicateur. Par exemple, l'anneau brun correspond au coefficient multiplicateur 10, ce qui donne 100 X 10 = 1000Ω.
Le cinquième anneau indique la tolérance de la valeur nominale de la résistance. Par exemple l'anneau Or correspond à ±5%. Donc le fabricant de la résistance s'engage à ce que la valeur de la résistance soit comprise entre 950 Ω et 1050 Ω.
Déchiffrer code couleur 5 bandes
×
Calculateur de résistance série pour une ou plusieurs LED
Tension d'alimentation en Volt
Tension directe en Volt
Courant en mA
Résistance calculée en Ω
Puissance estimée en W

Ce calculateur permet de déterminer la résistance requise pour piloter une ou plusieurs LED connectées en série à partir d'une source de tension à un niveau de courant spécifié.

Remarque. Il est préférable d'alimenter le circuit avec une puissance nominale comprise entre 2 et 10 fois la valeur calculée afin d'éviter la surchauffe
Couleur Longueur d'onde (nm) Tension (V) pour LED ⌀3mm Tension(V) pour LED ⌀5mm
Rouge 625-630  1,9-2,1 2,1-2,2
Bleu 460-470 3,0-3,2 3,2-3,4
Vert 520-525 2,0-2,2 2,0-2,2
Jaune 585-595 2,0-2,2 3,0-3,2
Blanc 460-470 3,0-3,2 1,9-2,1
Résistance en série pour une ou plusieurs LED
×
Calculateur durée de vie d'une batterie
Capacité de la batterie
Consommation de l'appareil ou objet connecté

Ce calculateur estime la durée de vie d'une batterie, en fonction de sa capacité nominale et du courant ou de la puissance qu'une charge en tire.

La durée de vie de la batterie est une estimation idéalisée. La durée de vie réelle peut varier en fonction de l'état de la batterie, de son âge, de la température, du taux de décharge et d'autres facteurs. C'est le mieux que vous pouvez espérer obtenir.

Autonomie de la batterie = capacité de la batterie en mAh / courant de charge en mA

Durée de vie batterie
Publicité
À lire aussi
Composants
Sur le Forum
Domotique et objets connectés à faire soi-même
Domotique et objets connectés à faire soi-même
Vous avez aimé ce tutoriel

Ne manquez plus les prochains projets

Recevez chaque semaine le récapitulatif des tutoriels et projets.

Vous pouvez vous désabonner à tout moment.