VisionLab-IA-Soft
Serveur d'inférence WOPR
Notre server d'inference WOPR permet aux équipes de déployer n'importe quel modèle d'IA issu de
multiples frameworks de deep learning et de machine learning, tels que TensorRT, PyTorch, ONNX, et bien d'autres.
Notre server d'inference prend en charge l'inférence sur le cloud, les datacenters et les systèmes embarqués GPU NVIDIA.
Il offre des performances optimisées pour de nombreux types de requêtes, notamment en temps réel, par lots, d'ensembles et de streaming vidéo.
La figure ci-dessous illustre l'architecture générale du serveur d'inférence WOPR.
Le référentiel de modèles est un système de fichiers contenant les modèles que le WOPR met à disposition pour l'inférence.
Les requêtes d'inférence parviennent au serveur via HTTP/REST, gRPC ou API C, puis sont acheminées vers le planificateur approprié à chaque modèle.
WOPR implémente plusieurs algorithmes de planification et de traitement par lots, configurables pour chaque modèle.
Le planificateur de chaque modèle peut, en option, regrouper les requêtes d'inférence par lots, puis les transmettre au backend correspondant au type de modèle.
Ce dernier effectue l'inférence à partir des données d'entrée fournies dans les requêtes regroupées afin de produire les résultats attendus.
Ces résultats sont ensuite renvoyés.
Les modèles servis par le WOPR peuvent être interrogés et contrôlés par une API de gestion de modèles dédiée, disponible via le protocole HTTP/REST ou GRPC, ou via l'API C.
Les indicateurs de disponibilité et de fonctionnement, ainsi que les mesures d'utilisation, de débit et de latence, facilitent l'intégration du WOPR dans des frameworks
de déploiement tels que Kubernetes.

Network Video Recorder / IP
Network Video Recorder / IP est un serveur média temps réel. C'est un outil polyvalent qui permet de publier, lire,
enregistrer et redistribuer des flux vidéo sur un réseau. Il est souvent décrit comme un "routeur média" qui convertit
automatiquement les flux entre différents protocoles. Sa principale force est la prise en charge de nombreux protocoles,
ce qui facilite l'intégration avec une grande variété d'équipements et de logiciels.
Il supporte notamment :
- RTSP (port 8554) : pour les caméras IP, VLC, etc.
- RTMP (port 1935) : pour OBS Studio, Facebook Live, etc.
- HLS (port 8888) : pour une diffusion via navigateur web.
- WebRTC (ports 8889/8189) : pour une faible latence dans le navigateur.
- SRT (port 8890) : pour une diffusion fiable sur des réseaux instables.
- MPEG-TS : pour les flux UDP.

Detection C++ (Edge)
Detection C++ (Edge) est un pipeLine IA complet d'analyse vidéo en temps réel, allant de l'acquisition de flux vidéo à l'extraction d'informations intelligentes.
De l'acquisition des flux (fichiers, RTSP, caméras) au décodage, au prétraitement des images, à l'inférence de réseaux de neurones via TensorRT, et enfin au suivi d'objets.
Ce pipeline génère des métadonnées (comme des boîtes englobantes ou des identifiants uniques) qui peuvent être visualisées, sauvegardées ou envoyées à des systèmes cloud
via des protocoles comme Kafka ou autres. Detection C++ (Edge) est optimisé pour fonctionner sur un large éventail de matériels, depuis les dispositifs embarqués NVIDIA Jetson
jusqu'aux GPU de centre de données, et permet le développement d'applications en C/C++ ou en Python.


VisionLab-IA Detection NetCore
VisionLab-IA Detection NetCore offre un écosystème riche et performant pour construire des pipelines de vision par ordinateur
qui sont des chaînes de traitement automatisées où les données visuelles (images ou flux vidéo) sont capturées,
transformées et analysées successivement pour en extraire des informations.
Notre serveur média Network Video Recorder / IP gére l'acquisition des flux vidéo,
par exemple depuis des caméras IP via RTSP, et les convertir en un format accessible.
VisionLab-IA Detection NetCore peut alors, grâce à des bibliothèques dédiées, effectuer la détection d'objets, qui consiste à
localiser et classifier des éléments spécifiques dans une image en s'appuyant sur des accélérateurs comme ONNX Runtime pour
des inférences rapides, y compris en temps réel sur des flux vidéo.
Parallèlement, des bibliothèques de traitement d'image haute performance sont utilisées dans le pipeline pour les étapes de
prétraitement (redimensionnement, recadrage, normalisation) qui sont cruciales pour optimiser la précision des modèles de détection,
tout en gérant efficacement les ressources système.


