2 points par seolgu 2026-02-03 | Aucun commentaire pour le moment. | Partager sur WhatsApp

Il s’agit d’un framework basé sur k3s, conçu pour réaliser du traitement vidéo à fps élevé sur des appareils peu puissants comme le Raspberry Pi.
L’extensibilité horizontale est mise en œuvre en distribuant des trames vidéo consécutives à plusieurs nœuds de traitement via Redis, puis en les regroupant ensuite.

En pratique, nous avons confirmé que la vitesse d’exécution de YOLOv5, limitée à seulement 4 fps sur un seul Raspberry Pi 4B, augmentait linéairement jusqu’à 16–17 fps lorsqu’elle était répartie sur 4 nœuds.

Le système se compose d’un Producer qui génère les trames, d’un Consumer chargé du traitement, et d’un Gateway qui agrège et affiche les résultats.
Le Gateway peut être étendu à plusieurs systèmes en remplaçant librement l’interface, et Redis, qui joue le rôle de broker intermédiaire, est lui aussi conçu pour pouvoir être personnalisé avec d’autres protocoles.

Caractéristiques principales

  • commande edgeflow : avec une seule commande, la construction d’image, le push et le déploiement sur un cluster k3s sont effectués d’un seul coup.
  • pipeline intuitif : la syntaxe link().to() permet de composer le pipeline de manière intuitive.
  • gestion flexible : il est possible de gérer les dépendances indépendamment pour chaque nœud et, s’il n’y a pas de changement de dépendances, d’appliquer immédiatement le code à un pod en cours d’exécution sans rebuild.
  • garantie de l’ordre : pour résoudre le problème de désordre des trames lors du traitement distribué, un Jitter Buffer est intégré au Gateway.
  • tests en local : même sans cluster Kubernetes, il est possible de reproduire le pipeline en environnement local via une approche multi-processus.

État d’avancement

Au stade du prototype, nous avons réussi à faire remonter directement une véritable caméra Raspberry Pi à l’intérieur d’un pod, et nous travaillons actuellement à reproduire cette fonctionnalité de manière stable dans le framework.


Nous faisons actuellement évoluer le projet pour interconnecter plusieurs systèmes. Il reste encore beaucoup de points à améliorer, mais tout retour sur les systèmes distribués ou sur la conception de pipelines de traitement vidéo serait pour moi extrêmement enrichissant. Merci de votre lecture.

Vous trouverez plus de détails et un tutoriel rapide via le lien ci-dessous.
Github: https://github.com/seolgugu/edgeflow

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.