Desenvolver um sistema rápido e preciso para monitorar pets, usando YOLO para detectar o animal e segmentar sua forma exata em uma única passagem pela rede.
Materiais para você usar como base para o desenvolvimento
Estrutura, regras e requisitos do projeto
O objetivo deste desafio é desenvolver um sistema de monitoramento de pets que seja extremamente veloz e preciso. Utilizando a arquitetura YOLO (You Only Look Once), você irá implementar um pipeline de "Single Shot" que realiza duas tarefas em uma única passagem pela rede: localizar o animal (Detecção) e delimitar sua forma exata (Segmentação de Instância).
Observação Didática: Para otimizar o tempo de execução e facilitar o desenvolvimento, este desafio utiliza uma amostra reduzida de 500 imagens extraídas aleatoriamente do Oxford-IIIT Pet Dataset. Isso garante que você consiga validar seu pipeline rapidamente sem a necessidade de processar gigabytes de dados.
Para este desafio, não faremos o download via API. Você deve utilizar o arquivo pet_dataset.zip disponibilizado nos materiais do curso. O código abaixo demonstra como realizar a extração automatizada para o seu ambiente de trabalho:
import zipfile import os # Definição dos caminhos zip_path = 'pet_dataset.zip' extract_path = 'imagens_original_desafio_monitor_pets' # Extração do dataset reduzido (500 imagens) if os.path.exists(zip_path): with zipfile.ZipFile(zip_path, 'r') as zip_ref:
Neste desafio, você utilizará a biblioteca Ultralytics. O foco será carregar um modelo YOLO pré-treinado para segmentação (yolo-seg) e adaptá-lo para identificar cães e gatos. Você aprenderá como o modelo lida com múltiplos heads de saída: um para as coordenadas das caixas (Bounding Boxes) e outro para as máscaras de pixels (Segmentation Masks).
Veja como é simples instanciar um modelo YOLO preparado para segmentação:
from ultralytics import YOLO def get_yolo_pet_monitor(): # 1. Carregamos o modelo YOLO Nano de Segmentação (leve e rápido) # O sufixo '-seg' indica que o modelo suporta máscaras de pixels model = YOLO('yolov8n-seg.pt') return model # Exemplo de inferência
box quanto a mask.conf).Feito com 💜 por Rocketseat 👋
O objetivo deste desafio é desenvolver um sistema de monitoramento de pets que seja extremamente veloz e preciso. Utilizando a arquitetura YOLO (You Only Look Once), você irá implementar um pipeline de "Single Shot" que realiza duas tarefas em uma única passagem pela rede: localizar o animal (Detecção) e delimitar sua forma exata (Segmentação de Instância).
Observação Didática: Para otimizar o tempo de execução e facilitar o desenvolvimento, este desafio utiliza uma amostra reduzida de 500 imagens extraídas aleatoriamente do Oxford-IIIT Pet Dataset. Isso garante que você consiga validar seu pipeline rapidamente sem a necessidade de processar gigabytes de dados.
Para este desafio, não faremos o download via API. Você deve utilizar o arquivo pet_dataset.zip disponibilizado nos materiais do curso. O código abaixo demonstra como realizar a extração automatizada para o seu ambiente de trabalho:
import zipfile import os # Definição dos caminhos zip_path = 'pet_dataset.zip' extract_path = 'imagens_original_desafio_monitor_pets' # Extração do dataset reduzido (500 imagens) if os.path.exists(zip_path): with zipfile.ZipFile(zip_path, 'r') as zip_ref:
Neste desafio, você utilizará a biblioteca Ultralytics. O foco será carregar um modelo YOLO pré-treinado para segmentação (yolo-seg) e adaptá-lo para identificar cães e gatos. Você aprenderá como o modelo lida com múltiplos heads de saída: um para as coordenadas das caixas (Bounding Boxes) e outro para as máscaras de pixels (Segmentation Masks).
Veja como é simples instanciar um modelo YOLO preparado para segmentação:
from ultralytics import YOLO def get_yolo_pet_monitor(): # 1. Carregamos o modelo YOLO Nano de Segmentação (leve e rápido) # O sufixo '-seg' indica que o modelo suporta máscaras de pixels model = YOLO('yolov8n-seg.pt') return model # Exemplo de inferência
box quanto a mask.conf).Feito com 💜 por Rocketseat 👋
Use este checklist para ajudar a organizar a sua entrega
Confira os resultados esperados do projeto

Envie o projeto para ver a resolução
Ao enviar seu projeto, você poderá conferir os resultados esperados