Treine seu próprio conjunto de dados com Yolov5 e faça o deploy no reTerminal DM

Introdução
A detecção de objetos, um aspecto fundamental da visão computacional, envolve identificar objetos em imagens e encontra aplicação em inúmeros campos, como vigilância, saúde e carros autônomos. Os Single-Stage Object Detectors são uma categoria específica de modelos que simplificam essa tarefa ao prever diretamente as categorias de objetos e as coordenadas das bounding boxes, sem exigir uma etapa inicial de proposta de região. Essa abordagem simplificada é especialmente valiosa em aplicações em tempo real. Notavelmente, a família de modelos YOLO (You Only Look Once) exemplifica essa eficiência, oferecendo detecção rápida de objetos sem comprometer a precisão.
Primeiros Passos
Antes de iniciar este projeto, você precisa preparar seu hardware e software com antecedência, conforme descrito aqui.
Preparação de hardware
| reTerminal DM | Coral USB Accelerator |
|---|---|
![]() | ![]() |
Preparação de software
Recomendamos instalar a versão mais recente do Raspberry Pi OS 64 bits a partir do site oficial. Se você preferir instalar um novo Raspbian OS, siga as etapas descritas neste guia.
Roboflow

Roboflow é uma plataforma abrangente de visão computacional que oferece uma ampla gama de ferramentas e serviços para simplificar o processo de desenvolvimento e implantação de modelos de visão computacional. Um de seus recursos de destaque é o forte suporte a conjuntos de dados personalizados com anotações. Os usuários podem facilmente fazer upload de seus próprios conjuntos de dados, completos com anotações, para treinar e ajustar modelos de visão computacional. Portanto, crie uma conta nele.
Ultralytics

Ultralytics é uma plataforma de ponta e organização de pesquisa que se especializa em visão computacional e deep learning. Ela é conhecida por suas contribuições para a área, particularmente no desenvolvimento da família de modelos de detecção de objetos YOLO (You Only Look Once), como o YOLOv5. A Ultralytics oferece uma variedade de ferramentas de última geração e software open source para detecção de objetos, classificação de imagens e muito mais, tornando a visão computacional avançada acessível a pesquisadores e desenvolvedores. Sua dedicação à inovação e a soluções orientadas por desempenho tem recebido atenção e reconhecimento significativos na comunidade de visão computacional, tornando a Ultralytics um recurso de referência para quem busca expandir os limites do que é possível no campo do deep learning e do reconhecimento visual.
Escolha um conjunto de dados no Roboflow
- Passo 1 Acesse o site fornecido e navegue até o conjunto de dados de sua escolha usando a função de busca. Roboflow
- Passo 2 Depois de selecionar um conjunto de dados, clique em Download this Dataset
- Passo 3 Selecione o formato de download YOLOv5.
- Passo 4 Selecione show download code e pressione Continue.
- Passo 5 Na seção "Jupyter", você encontrará um trecho de código. Copie esse trecho para a área de transferência.
Treine seu conjunto de dados personalizado
- Passo 1 Acesse o link do GitHub fornecido e clique em Open in Colab Github Link
Antes de implantar um modelo em dispositivos com recursos limitados, como o Raspberry Pi, geralmente é essencial realizar a conversão e quantização do modelo para garantir desempenho ideal. Esse processo envolve várias etapas: converter um modelo PyTorch (no formato .pt) para um modelo TensorFlow Lite (TFLite) com quantização, especificamente para o tipo de dado uint8. Você pode treinar seu conjunto de dados personalizado e convertê-lo em um modelo TFLite usando este notebook do Colab. Nós descrevemos um processo passo a passo para treinamento dentro do ambiente Colab. Siga essas instruções, obtenha o arquivo data.yaml e o arquivo best-int8.tflite e retorne a este wiki para mais orientações.
Prepare seu reTerminal DM
- Passo 1 No Terminal, execute estes comandos um por um.
sudo git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt
sudo apt-get install python3-tflite-runtime
- Passo 2 Cole o arquivo Data.yaml e o arquivo best-int8.tflite dentro da pasta yolov5
Inferência com detect.py
- Passo 1 Abra o reTerminal e navegue até a pasta yolov5
cd yolov5
- Passo 2 Inferência com detect.py
python detect.py --weight best-int8.tflite --img 224 --source <your source > --nosave --view-img --data data.yaml
Você pode explorar o site oficial do Ultralytics no GitHub em https://github.com/ultralytics/yolov5 para aprender como usar o script detect.py e descobrir as várias fontes que você pode utilizar para fornecer imagens ou fluxos de vídeo ao modelo YOLOv5.
Execute no Edge TPU

A implantação do modelo YOLOv5n em um Edge TPU representa uma sinergia dinâmica entre detecção de objetos de última geração e computação de borda de alto desempenho. Essa combinação potencializa aplicações em IA de borda, como reconhecimento de objetos em tempo real em ambientes com recursos limitados, tornando-se inestimável para tarefas como vigilância de segurança, análise de varejo e sistemas autônomos. O design eficiente do YOLOv5n se harmoniza perfeitamente com a aceleração de hardware do Edge TPU, oferecendo detecção de objetos rápida e precisa na borda da rede, onde baixa latência e processamento em tempo real são fundamentais.
- Inferência com detect.py
python detect.py --weight best-int8_edgetpu.tflite --img 224 --source <your source > --nosave --view-img --data data.yaml
Recursos
-
[Web Page] Documentação Oficial do Yolov5
-
[Web Page] Roboflow
Suporte técnico
Obrigado por escolher nossos produtos! Estamos aqui para oferecer diferentes tipos de suporte para garantir que sua experiência com nossos produtos seja a mais tranquila possível. Oferecemos vários canais de comunicação para atender a diferentes preferências e necessidades.

