Ultralytics YOLOv5 es un kit de herramientas de visión artificial basado en PyTorch para detectar objetos, segmentar instancias y clasificar imágenes, con funciones de entrenamiento y exportación.
Tencent/ncnn
Framework de inferencia de redes neuronales de alto rendimiento en C++ para ejecutar modelos de deep learning en dispositivos móviles, integrados y de escritorio.
Alternativa open source a:TensorFlow Lite
Core ML
- Estrellas
- 23,985
- Forks
- 4,532
- Issues abiertos
- 1,268
- Último commit
- ayer
¿Qué es?
ncnn es un framework de inferencia de redes neuronales escrito en C++ para desplegar modelos entrenados en teléfonos, PC, navegadores y dispositivos edge. No tiene dependencias de ejecución de terceros y funciona en CPU con optimizaciones ARM NEON o en GPU Vulkan.
Los modelos de PyTorch y ONNX se convierten con la herramienta pnnx al formato .param y .bin de ncnn y luego se cargan mediante una API de C++, C o Python. El proyecto admite grafos con múltiples entradas y salidas, inferencia cuantizada fp16 e int8 y capas personalizadas. Las instrucciones de compilación abarcan Linux, Windows, macOS, Android, iOS, HarmonyOS, WebAssembly y varias placas integradas.
Según la documentación, varias aplicaciones de Tencent utilizan el proyecto, entre ellas QQ, Qzone y WeChat. También incluye ejemplos de modelos CNN clásicos, como YOLO y MobileNet, además de cargas de trabajo más recientes, como demos de LLM y generación de imágenes.
Funciones clave
- 01Funciona en CPU con optimizaciones ARM NEON y planificación multinúcleo, o en GPU Vulkan.
- 02No tiene dependencias de ejecución de terceros.
- 03Convierte modelos de PyTorch y ONNX con la herramienta pnnx.
- 04Ofrece API de C++, C y Python.
- 05Admite inferencia cuantizada fp16 e int8 y capas personalizadas.
- 06Se compila para Android, iOS, HarmonyOS, Windows, Linux, macOS y WebAssembly.
Casos de uso
- Ejecutar modelos de detección de objetos o rostros dentro de una aplicación móvil.
- Desplegar un modelo de PyTorch en una placa integrada sin un entorno de ejecución pesado.
- Ejecutar inferencias de redes neuronales en un navegador mediante WebAssembly.
- Añadir funciones de IA a una aplicación de escritorio en C++.
Inicio rápido
- 1
Instala pnnx en un entorno de PyTorch
pip3 install pnnx - 2
Exporta un modelo de PyTorch a ncnn con pnnx.export
- 3
Carga el modelo generado y ejecuta la inferencia con la API de C++ o Python de ncnn
Antes de usarlo
- Para compilar ncnn para muchas plataformas, hay que seguir la guía independiente de compilación de la wiki.
- La licencia no está asignada en los metadatos, aunque la insignia del README indica BSD 3-Clause; consulta LICENSE.txt antes de usarlo.
Temas
Preguntas frecuentes
- ¿Qué es ncnn?
- Framework de inferencia de redes neuronales de alto rendimiento en C++ para ejecutar modelos de deep learning en dispositivos móviles, integrados y de escritorio. ncnn es un framework de inferencia de redes neuronales escrito en C++ para desplegar modelos entrenados en teléfonos, PC, navegadores y dispositivos edge. No tiene dependencias de ejecución de terceros y funciona en CPU con optimizaciones ARM NEON o en GPU Vulkan.
- ¿ncnn es gratuito? ¿Qué licencia tiene?
- ncnn es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿ncnn sigue mantenido?
- Mantenimiento activo. El último commit de ncnn fue el 20 oct 2026.
- ¿Para qué puedo usar ncnn?
- Ejecutar modelos de detección de objetos o rostros dentro de una aplicación móvil. Desplegar un modelo de PyTorch en una placa integrada sin un entorno de ejecución pesado. Ejecutar inferencias de redes neuronales en un navegador mediante WebAssembly. Añadir funciones de IA a una aplicación de escritorio en C++.
- ¿Cómo se instala ncnn?
- Instala pnnx en un entorno de PyTorch: pip3 install pnnx Exporta un modelo de PyTorch a ncnn con pnnx.export Carga el modelo generado y ejecuta la inferencia con la API de C++ o Python de ncnn
- ¿Dónde consigo ncnn?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/Tencent/ncnn
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Visor de modelos de redes neuronales, deep learning y machine learning, compatible con ONNX, TensorFlow, PyTorch, Core ML y muchos otros formatos.
Stack de inferencia en el dispositivo de PyTorch para ejecutar modelos exportados en teléfonos, laptops, navegadores y microcontroladores.
Framework de Python para comprimir redes neuronales mediante cuantización, pruning y sparsity, y acelerar la inferencia en OpenVINO, PyTorch y ONNX.
Implementación en PyTorch del Vision Transformer (ViT) y muchas de sus variantes para clasificación de imágenes y otras tareas de visión.
Biblioteca de tensores y framework de deep learning en Rust para entrenamiento e inferencia con backends CUDA, ROCm, Metal, Vulkan, WebGPU y CPU.