Exportação RKNN para Ultralytics YOLO11 Models
Ao implantar modelos de visão computacional em dispositivos incorporados, especialmente aqueles alimentados por processadores Rockchip, é essencial ter um formato de modelo compatível. A exportação de modelos Ultralytics YOLO11 para o formato RKNN garante desempenho otimizado e compatibilidade com o hardware da Rockchip. Este guia orienta-o na conversão dos seus modelos YOLO11 para o formato RKNN, permitindo uma implementação eficiente nas plataformas Rockchip.
Nota
Este guia foi testado com o Radxa Rock 5B, que é baseado no Rockchip RK3588 e no Radxa Zero 3W, que é baseado no Rockchip RK3566. Espera-se que funcione noutros dispositivos baseados em Rockchip que suportem rknn-toolkit2, tais como RK3576, RK3568, RK3562, RV1103, RV1106, RV1103B, RV1106B e RK2118.
O que é o Rockchip?
Reconhecida por fornecer soluções versáteis e eficientes em termos de energia, a Rockchip projeta System-on-Chips (SoCs) avançados que alimentam uma ampla gama de eletrônicos de consumo, aplicações industriais e tecnologias de IA. Com arquitetura baseada em ARM, Unidades de Processamento Neural (NPUs) integradas e suporte multimédia de alta resolução, os SoCs Rockchip permitem um desempenho de ponta para dispositivos como tablets, smart TVs, sistemas IoT e aplicações de IA de ponta. Empresas como Radxa, ASUS, Pine64, Orange Pi, Odroid, Khadas e Banana Pi oferecem uma variedade de produtos baseados em SoCs Rockchip, ampliando ainda mais seu alcance e impacto em diversos mercados.
Kit de ferramentas RKNN
O RKNN Toolkit é um conjunto de ferramentas e bibliotecas fornecidas pela Rockchip para facilitar a implantação de modelos de aprendizagem profunda em suas plataformas de hardware. RKNN, ou Rockchip Neural Network, é o formato proprietário usado por essas ferramentas. Os modelos RKNN são projetados para aproveitar ao máximo a aceleração de hardware fornecida pela NPU (Unidade de Processamento Neural) da Rockchip, garantindo alto desempenho em tarefas de IA em dispositivos como RK3588, RK3566, RV1103, RV1106 e outros sistemas alimentados por Rockchip.
Principais caraterísticas dos modelos RKNN
Os modelos RKNN oferecem várias vantagens para implantação em plataformas Rockchip:
- Optimizado para NPU: Os modelos RKNN são especificamente otimizados para serem executados nas NPUs do Rockchip, garantindo o máximo desempenho e eficiência.
- Baixa latência: O formato RKNN minimiza a latência da inferência, o que é fundamental para aplicações em tempo real em dispositivos de ponta.
- Personalização específica da plataforma: Os modelos RKNN podem ser adaptados a plataformas Rockchip específicas, permitindo uma melhor utilização dos recursos de hardware.
Flash OS para hardware Rockchip
O primeiro passo depois de deitar as mãos a um dispositivo baseado em Rockchip é fazer flash de um SO para que o hardware possa arrancar num ambiente de trabalho. Neste guia, indicaremos os guias de iniciação dos dois dispositivos que testámos, que são o Radxa Rock 5B e o Radxa Zero 3W.
Exportar para RKNN: Convertendo seu modelo YOLO11
Exportar um modelo Ultralytics YOLO11 para o formato RKNN e executar a inferência com o modelo exportado.
Nota
Certifique-se de que utiliza um PC Linux baseado em X86 para exportar o modelo para o RKNN, uma vez que a exportação em dispositivos baseados em Rockchip (ARM64) não é suportada.
Instalação
Para instalar os pacotes necessários, execute:
Para obter instruções detalhadas e melhores práticas relacionadas com o processo de instalação, consulte o nosso guia de instalaçãoUltralytics . Ao instalar os pacotes necessários para YOLO11, se encontrar alguma dificuldade, consulte o nosso guia de Problemas comuns para obter soluções e dicas.
Utilização
Nota
Atualmente, a exportação só é suportada para modelos de deteção. No futuro, será disponibilizado mais suporte para modelos.
Utilização
from ultralytics import YOLO
# Load the YOLO11 model
model = YOLO("yolo11n.pt")
# Export the model to RKNN format
# Here name can be one of rk3588, rk3576, rk3566, rk3568, rk3562, rv1103, rv1106, rv1103b, rv1106b, rk2118
model.export(format="rknn", args={"name": "rk3588"}) # creates '/yolo11n_rknn_model'
Para mais informações sobre o processo de exportação, visite a página de documentaçãoUltralytics sobre exportação.
Implementação de modelos RKNN exportados YOLO11
Depois de exportar com êxito os seus modelos Ultralytics YOLO11 para o formato RKNN, o próximo passo é implementar estes modelos em dispositivos baseados em Rockchip.
Instalação
Para instalar os pacotes necessários, execute:
Utilização
Utilização
Referências
YOLO11 Os benchmarks abaixo foram executados pela equipa Ultralytics no Radxa Rock 5B baseado no Rockchip RK3588 com rknn
velocidade e precisão de medição do formato do modelo.
Modelo | Formato | Estado | Tamanho (MB) | mAP50-95(B) | Tempo de inferência (ms/im) |
---|---|---|---|---|---|
YOLO11n | rknn | ✅ | 7.4 | 0.61 | 99.5 |
YOLO11s | rknn | ✅ | 20.7 | 0.741 | 122.3 |
YOLO11m | rknn | ✅ | 41.9 | 0.764 | 298.0 |
YOLO11l | rknn | ✅ | 53.3 | 0.72 | 319.6 |
YOLO11x | rknn | ✅ | 114.6 | 0.828 | 632.1 |
Nota
A validação do parâmetro de referência acima foi efectuada utilizando o conjunto de dados coco8
Resumo
Neste guia, você aprendeu a exportar modelos Ultralytics YOLO11 para o formato RKNN para aprimorar sua implantação em plataformas Rockchip. Também foi apresentado ao kit de ferramentas RKNN e às vantagens específicas do uso de modelos RKNN para aplicativos de IA de borda.
Para mais informações sobre a utilização, consulte a documentação oficial do RKNN.
Além disso, se quiser saber mais sobre outras integrações de Ultralytics YOLO11 , visite a nossa página de guia de integração. Encontrará aí muitos recursos e informações úteis.