Crie, implante e execute facilmente aplicativos de visão computacional.
Confira nossa solução de agentes hospedados
Pipeless é uma estrutura de código aberto que cuida de tudo que você precisa para desenvolver e implantar aplicativos de visão computacional em apenas alguns minutos. Isso inclui paralelização de código, pipelines multimídia, gerenciamento de memória, inferência de modelo, gerenciamento multistream e muito mais. Pipeless permite que você envie aplicativos que funcionam em tempo real em minutos, em vez de semanas/meses .
Pipeless é inspirado em tecnologias modernas sem servidor. Você fornece algumas funções e o Pipeless se encarrega de executá-las para novos frames de vídeo e tudo o que está envolvido.
Com o Pipeless você cria caixas independentes que chamamos de “estágios”. Cada estágio é um micro pipeline que executa uma tarefa específica. Em seguida, você pode combinar estágios dinamicamente por stream, permitindo processar cada stream com um pipeline diferente sem alterar seu código e sem reiniciar o programa. Para criar um estágio você simplesmente fornece uma função de pré-processo, um modelo e uma função de pós-processo.
Você pode carregar modelos padrão do setor , como YOLO, ou modelos personalizados em um dos tempos de execução de inferência suportados apenas fornecendo um URL. O Pipeless fornece alguns dos tempos de execução de inferência mais populares, como o ONNX Runtime, permitindo executar inferências com alto desempenho em CPU ou GPU prontos para uso.
Você pode implantar seu Pipeless e seus aplicativos em dispositivos de borda e IoT ou na nuvem. Existem diversas ferramentas para implantação, incluindo imagens de contêiner.
A seguir está um conjunto não exaustivo de recursos relevantes que o Pipeless inclui:
Comece agora!
Junte-se à nossa comunidade e contribua para facilitar a vida dos desenvolvedores de visão computacional!
--build
ao script de instalação para compilar a partir do código-fonte, de modo que o Pipeless vincule à sua versão instalada do Python (ou atualize sua versão e use um binário pré-construído, que é mais simples).gst-launch-1.0 --gst-version
. Instruções de instalação aqui curl https://raw.githubusercontent.com/pipeless-ai/pipeless/main/install.sh | bash
Encontre mais informações e opções de instalação aqui.
Em vez de instalar localmente, você pode alternativamente usar o docker e economizar tempo de instalação de dependências:
docker run miguelaeh/pipeless --help
Para usá-lo com CUDA:
docker run miguelaeh/pipeless:latest-cuda --help
Para usar com TensorRT use:
docker run miguelaeh/pipeless:latest-tensorrt --help
Encontre toda a documentação do contêiner aqui.
Inicie um projeto:
pipeless init my_project --template scaffold
cd my_project
Iniciar sem tubulação:
pipeless start --stages-dir .
Forneça um fluxo:
pipeless add stream --input-uri "https://pipeless-public.s3.eu-west-3.amazonaws.com/cats.mp4" --output-uri "screen" --frame-path "my-stage"
O código gerado é um modelo vazio que estrutura um estágio para que ele não faça nada. Por favor, vá para os exemplos para completar essa etapa.
Você também pode usar o shell interativo para criar o projeto:
Verifique o guia de primeiros passos completo ou mergulhe na documentação completa.
Você pode encontrar alguns exemplos no diretório de examples
. Basta copiar essas pastas dentro do seu projeto e brincar com elas.
Encontre aqui a lista completa de exemplos e guias passo a passo.
Implantamos o Pipeless em vários dispositivos diferentes para que você possa ter uma ideia geral de seu desempenho. Encontre os resultados na seção de benchmark dos documentos.
Mudanças notáveis indicam mudanças importantes entre versões. Por favor, verifique a lista completa de mudanças notáveis.
Obrigado pelo seu interesse em contribuir! Contribuições são bem-vindas e incentivadas. Enquanto trabalhamos na criação de diretrizes de contribuição detalhadas, aqui estão algumas etapas gerais para começar:
git checkout -b feature-branch
.git commit -m 'Add new feature'
.git push origin feature-branch
.Agradecemos sua ajuda para tornar este projeto melhor!
Observe que, para mudanças importantes ou novos recursos, é uma boa ideia discuti-los primeiro em uma edição para que possamos coordenar esforços.
Este projeto está licenciado sob a Licença Apache 2.0.
A Licença Apache 2.0 é uma licença permissiva de código aberto que permite usar, modificar e distribuir este software para fins pessoais ou comerciais. Ele vem com certas obrigações, incluindo fornecer atribuição aos autores originais e incluir o texto original da licença em suas distribuições.
Para obter o texto completo da licença, consulte a Licença Apache 2.0.