Créez, déployez et exécutez facilement des applications de vision par ordinateur.
Découvrez notre solution d'agents hébergés
Pipeless est un framework open source qui prend en charge tout ce dont vous avez besoin pour développer et déployer des applications de vision par ordinateur en quelques minutes seulement. Cela inclut la parallélisation du code, les pipelines multimédias, la gestion de la mémoire, l'inférence de modèle, la gestion multi-flux, etc. Pipeless vous permet de livrer des applications qui fonctionnent en temps réel en quelques minutes au lieu de semaines/mois .
Pipeless s'inspire des technologies modernes sans serveur. Vous fournissez certaines fonctions et Pipeless se charge de les exécuter pour les nouvelles images vidéo et tout ce que cela implique.
Avec Pipeless, vous créez des boîtes autonomes que nous appelons des « étapes ». Chaque étape est un micro pipeline qui effectue une tâche spécifique. Ensuite, vous pouvez combiner dynamiquement des étapes par flux, ce qui vous permet de traiter chaque flux avec un pipeline différent sans modifier votre code et sans redémarrer le programme. Pour créer une étape, vous fournissez simplement une fonction de pré-traitement, un modèle et une fonction de post-traitement.
Vous pouvez charger des modèles standard de l'industrie , tels que YOLO, ou des modèles personnalisés dans l'un des environnements d'exécution d'inférence pris en charge simplement en fournissant une URL. Pipeless fournit certains des environnements d'exécution d'inférence les plus populaires, tels que l'environnement d'exécution ONNX, vous permettant d'exécuter des inférences avec des performances élevées sur un processeur ou un GPU prêt à l'emploi.
Vous pouvez déployer votre Pipeless et vos applications sur des appareils Edge et IoT ou sur le cloud. Il existe plusieurs outils pour le déploiement, notamment des images de conteneurs.
Ce qui suit est un ensemble non exhaustif de fonctionnalités pertinentes incluses par Pipeless :
Commencez maintenant !
Rejoignez notre communauté et contribuez à faciliter la vie des développeurs de vision par ordinateur !
--build
au script d'installation pour créer à partir des sources afin que Pipeless soit lié à votre version Python installée (ou mettez à jour votre version et utilisez un binaire pré-construit, ce qui est plus simple).gst-launch-1.0 --gst-version
. Instructions d'installation ici curl https://raw.githubusercontent.com/pipeless-ai/pipeless/main/install.sh | bash
Trouvez plus d’informations et d’options d’installation ici.
Au lieu d'installer localement, vous pouvez également utiliser Docker et gagner du temps lors de l'installation des dépendances :
docker run miguelaeh/pipeless --help
Pour l'utiliser avec CUDA :
docker run miguelaeh/pipeless:latest-cuda --help
À utiliser avec TensorRT, utilisez :
docker run miguelaeh/pipeless:latest-tensorrt --help
Retrouvez toute la documentation du conteneur ici.
Initier un projet :
pipeless init my_project --template scaffold
cd my_project
Démarrer sans canal :
pipeless start --stages-dir .
Fournir un flux :
pipeless add stream --input-uri "https://pipeless-public.s3.eu-west-3.amazonaws.com/cats.mp4" --output-uri "screen" --frame-path "my-stage"
Le code généré est un modèle vide qui échafaude une étape afin qu'il ne fasse rien. Veuillez consulter les exemples pour terminer cette étape.
Vous pouvez également utiliser le shell interactif pour créer le projet :
Consultez le guide de démarrage complet ou plongez dans la documentation complète.
Vous pouvez trouver quelques exemples dans le répertoire examples
. Copiez simplement ces dossiers dans votre projet et jouez avec eux.
Retrouvez ici la liste complète des exemples et des guides étape par étape.
Nous avons déployé Pipeless sur plusieurs appareils différents afin que vous puissiez avoir une idée générale de ses performances. Retrouvez les résultats dans la section benchmark de la documentation.
Les changements notables indiquent des changements importants entre les versions. Veuillez consulter la liste complète des changements notables.
Merci de votre intérêt à contribuer ! Les contributions sont les bienvenues et encouragées. Pendant que nous travaillons à la création de directives de contribution détaillées, voici quelques étapes générales pour commencer :
git checkout -b feature-branch
.git commit -m 'Add new feature'
.git push origin feature-branch
.Nous apprécions votre aide pour améliorer ce projet !
Veuillez noter que pour les changements majeurs ou les nouvelles fonctionnalités, c'est une bonne idée d'en discuter d'abord dans un numéro afin que nous puissions coordonner les efforts.
Ce projet est sous licence Apache License 2.0.
La licence Apache 2.0 est une licence open source permissive qui vous permet d'utiliser, de modifier et de distribuer ce logiciel à des fins personnelles ou commerciales. Il comporte certaines obligations, notamment celle de fournir l'attribution aux auteurs originaux et d'inclure le texte de licence original dans vos distributions.
Pour le texte complet de la licence, veuillez vous référer à la licence Apache 2.0.