Ultralytics YOLOv5, toolkit de visão computacional baseado em PyTorch para detecção de objetos, segmentação de instâncias e classificação de imagens, com recursos de treinamento e exportação.
Tencent/ncnn
Framework de inferência de redes neurais de alto desempenho em C++ para executar modelos de deep learning em dispositivos móveis, embarcados e desktop.
Alternativa open source a:TensorFlow Lite
Core ML
- Estrelas
- 23,985
- Forks
- 4,532
- Issues abertas
- 1,268
- Último commit
- ontem
O que é?
ncnn é um framework de inferência de redes neurais escrito em C++ para implantar modelos treinados em celulares, PCs, navegadores e dispositivos de edge computing. Não tem dependências de runtime de terceiros e roda na CPU com otimizações ARM NEON ou em GPUs Vulkan.
Modelos do PyTorch e ONNX são convertidos pela ferramenta pnnx para os formatos .param e .bin do ncnn e, em seguida, carregados por uma API em C++, C ou Python. O projeto oferece suporte a grafos com múltiplas entradas e saídas, inferência quantizada em fp16 e int8 e camadas personalizadas. As instruções de build abrangem Linux, Windows, macOS, Android, iOS, HarmonyOS, WebAssembly e várias placas embarcadas.
Segundo a documentação, o projeto é usado em vários aplicativos da Tencent, incluindo QQ, Qzone e WeChat. Ele também oferece exemplos de modelos CNN clássicos, como YOLO e MobileNet, além de cargas de trabalho mais recentes, como LLM e demos de geração de imagens.
Recursos principais
- 01Roda na CPU com otimizações ARM NEON e agendamento multicore, ou em GPUs Vulkan.
- 02Não tem dependências de runtime de terceiros.
- 03Converte modelos do PyTorch e ONNX com a ferramenta pnnx.
- 04Oferece APIs em C++, C e Python.
- 05Oferece suporte à inferência quantizada em fp16 e int8 e a camadas personalizadas.
- 06Permite builds para Android, iOS, HarmonyOS, Windows, Linux, macOS e WebAssembly.
Casos de uso
- Executar modelos de detecção de objetos ou de faces dentro de um aplicativo móvel.
- Implantar um modelo do PyTorch em uma placa embarcada sem um runtime pesado.
- Executar inferência de redes neurais em um navegador via WebAssembly.
- Adicionar recursos de IA a um aplicativo desktop em C++.
Início rápido
- 1
Instale o pnnx em um ambiente PyTorch
pip3 install pnnx - 2
Exporte um modelo PyTorch para ncnn com pnnx.export
- 3
Carregue o modelo gerado e execute a inferência com a API C++ ou Python do ncnn
Antes de usar
- Para compilar o ncnn para várias plataformas, é necessário seguir o guia separado de compilação na wiki.
- A licença não está atribuída nos metadados, embora o selo do README indique BSD 3-Clause; confira o LICENSE.txt antes de usar.
Tópicos
Perguntas frequentes
- O que é ncnn?
- Framework de inferência de redes neurais de alto desempenho em C++ para executar modelos de deep learning em dispositivos móveis, embarcados e desktop. ncnn é um framework de inferência de redes neurais escrito em C++ para implantar modelos treinados em celulares, PCs, navegadores e dispositivos de edge computing. Não tem dependências de runtime de terceiros e roda na CPU com otimizações ARM NEON ou em GPUs Vulkan.
- ncnn é gratuito? Qual é a licença?
- ncnn é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- ncnn ainda é mantido?
- Manutenção ativa. O último commit de ncnn foi em 20 de out. de 2026.
- Para que posso usar ncnn?
- Executar modelos de detecção de objetos ou de faces dentro de um aplicativo móvel. Implantar um modelo do PyTorch em uma placa embarcada sem um runtime pesado. Executar inferência de redes neurais em um navegador via WebAssembly. Adicionar recursos de IA a um aplicativo desktop em C++.
- Como instalar ncnn?
- Instale o pnnx em um ambiente PyTorch: pip3 install pnnx Exporte um modelo PyTorch para ncnn com pnnx.export Carregue o modelo gerado e execute a inferência com a API C++ ou Python do ncnn
- Onde consigo ncnn?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Tencent/ncnn
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Visualizador de modelos de redes neurais, deep learning e machine learning, com suporte a ONNX, TensorFlow, PyTorch, Core ML e muitos outros formatos.
Stack de inferência on-device do PyTorch para executar modelos exportados em celulares, laptops, navegadores e microcontroladores.
Framework Python para comprimir redes neurais com quantização, pruning e esparsidade, acelerando a inferência no OpenVINO, PyTorch e ONNX.
Implementação em PyTorch do Vision Transformer (ViT) e de muitas variantes para classificação de imagens e outras tarefas de visão computacional.
Biblioteca de tensores e framework de deep learning em Rust para treinamento e inferência em backends CUDA, ROCm, Metal, Vulkan, WebGPU e CPU.