Salta para o conteúdo

Roboflow

Roboflow tem tudo o que precisas para criar e implementar modelos de visão computacional. Conecta o Roboflow em qualquer etapa do pipeline com APIs e SDKs, ou usa a interface de ponta a ponta para automatizar todo o processo, da imagem à inferência. Quer necessites de rotulagem de dados, formação de modelos ou implementação de modelos, o Roboflow fornece-te blocos de construção para trazeres soluções de visão por computador personalizadas para o teu projeto.

Concessão de licenças

Ultralytics oferece duas opções de licenciamento:

Para mais informações, consulta Ultralytics Licensing.

Neste guia, vamos mostrar como encontrar, rotular e organizar dados para usar no treinamento de um modelo personalizado Ultralytics YOLOv8 . Utiliza a tabela de conteúdos abaixo para ires diretamente para uma secção específica:

  • Recolhe dados para treinar um modelo YOLOv8 personalizado
  • Carrega, converte e rotula dados para o formato YOLOv8
  • Pré-processa e aumenta os dados para garantir a robustez do modelo
  • Gestão de conjuntos de dados para YOLOv8
  • Exporta dados em mais de 40 formatos para treino de modelos
  • Carrega os pesos personalizados do modelo YOLOv8 para teste e implementação
  • Recolhe dados para treinar um modelo YOLOv8 personalizado

Roboflow fornece dois serviços que podem ajudar-te a recolher dados para os modelos YOLOv8 : Universe e Collect.

O Universe é um repositório em linha com mais de 250 000 conjuntos de dados de visão, totalizando mais de 100 milhões de imagens.

Roboflow Universo

Com uma conta Roboflow gratuita, podes exportar qualquer conjunto de dados disponível no Universe. Para exportar um conjunto de dados, clica no botão "Transferir este conjunto de dados" em qualquer conjunto de dados.

Roboflow Exportação do conjunto de dados do universo

Para YOLOv8, selecciona "YOLOv8" como formato de exportação:

Roboflow Exportação do conjunto de dados do universo

O Universe também tem uma página que agrega todos os modelos públicos aperfeiçoados de YOLOv8 carregados em Roboflow. Podes utilizar esta página para explorar modelos pré-treinados que podes utilizar para testes ou para rotulagem automática de dados ou para criar protótipos com a inferência deRoboflow .

Se quiseres recolher imagens por ti próprio, experimenta o Collect, um projeto de código aberto que te permite recolher imagens automaticamente utilizando uma webcam na extremidade. Podes utilizar avisos de texto ou imagem com o Collect para instruir que dados devem ser recolhidos, permitindo-te captar apenas os dados úteis de que necessitas para construir o teu modelo de visão.

Carrega, converte e rotula dados para o formato YOLOv8

Roboflow Annotate é uma ferramenta de anotação online para utilização na etiquetagem de imagens para deteção, classificação e segmentação de objectos.

Para rotular dados para um modelo de deteção de objectos, segmentação de instâncias ou classificação em YOLOv8 , cria primeiro um projeto em Roboflow.

Cria um projeto Roboflow

Em seguida, carrega as tuas imagens e quaisquer anotações pré-existentes que tenhas de outras ferramentas(utilizando um dos mais de 40 formatos de importação suportados) para Roboflow.

Carrega imagens para Roboflow

Selecciona o lote de imagens que carregaste na página Anotar, para onde és levado depois de carregares as imagens. Depois, clica em "Iniciar Anotações" para etiquetar as imagens.

Para etiquetar com caixas delimitadoras, prime o botão B no teu teclado ou clica no ícone da caixa na barra lateral. Clica num ponto onde pretendes iniciar a caixa delimitadora e, em seguida, arrasta para criar a caixa:

Anotar uma imagem em Roboflow

Quando tiveres criado uma anotação, aparece uma janela a pedir-te para seleccionares uma classe para a tua anotação.

Para etiquetar com polígonos, prime o botão P no teu teclado, ou o ícone de polígono na barra lateral. Com a ferramenta de anotação de polígono activada, clica em pontos individuais da imagem para desenhar um polígono.

Roboflow oferece um assistente de etiquetas baseado em SAM com o qual podes etiquetar imagens mais rapidamente do que nunca. SAM O Segment Anything Model (Modelo de Segmento de Qualquer Coisa) é um modelo de visão por computador de última geração que pode rotular imagens com precisão. Com SAM, podes acelerar significativamente o processo de etiquetagem de imagens. Anotar imagens com polígonos torna-se tão simples como alguns cliques, em vez do tedioso processo de clicar com precisão em pontos à volta de um objeto.

Para utilizar o assistente de etiquetas, clica no ícone do cursor na barra lateral, SAM será carregado para utilização no teu projeto.

Anotar uma imagem em Roboflow com SAM-powered label assist

Passa o rato sobre qualquer objeto na imagem e o SAM recomenda uma anotação. Podes passar o cursor do rato para encontrar o local certo para anotar e, em seguida, clicar para criar a anotação. Para alterar a tua anotação para ser mais ou menos específica, podes clicar dentro ou fora da anotação que o SAM criou no documento.

Também podes adicionar etiquetas a imagens a partir do painel Etiquetas na barra lateral. Pode aplicar etiquetas a dados de uma determinada área, tirados de uma câmara específica e muito mais. Pode depois utilizar estas etiquetas para procurar nos dados imagens que correspondam a uma etiqueta e gerar versões de um conjunto de dados com imagens que contenham uma determinada etiqueta ou conjunto de etiquetas.

Adicionar etiquetas a uma imagem em Roboflow

Os modelos alojados em Roboflow podem ser utilizados com o Label Assist, uma ferramenta de anotação automática que utiliza o teu modelo YOLOv8 para recomendar anotações. Para usar o Label Assist, primeiro carrega um modelo YOLOv8 para Roboflow (consulte as instruções mais adiante neste guia). Em seguida, clica no ícone da varinha mágica na barra lateral esquerda e selecciona o teu modelo para utilização no Label Assist.

Escolhe um modelo e, em seguida, clica em "Continuar" para ativar o Assistente de Etiquetas:

Ativar o assistente de etiquetas

Quando abre novas imagens para anotação, o Label Assist acciona e recomenda anotações.

ALabel Assist recomenda uma anotação

Gestão de conjuntos de dados para YOLOv8

Roboflow fornece um conjunto de ferramentas para compreender conjuntos de dados de visão computacional.

Primeiro, pode utilizar a pesquisa de conjuntos de dados para encontrar imagens que correspondam a uma descrição de texto semântico (ou seja, encontrar todas as imagens que contenham pessoas) ou que correspondam a uma etiqueta especificada (ou seja, a imagem está associada a uma etiqueta específica). Para utilizar a pesquisa de conjuntos de dados, clica em "Conjunto de dados" na barra lateral. Em seguida, introduz uma consulta de pesquisa utilizando a barra de pesquisa e os filtros associados na parte superior da página.

Por exemplo, a seguinte consulta de texto encontra imagens que contêm pessoas num conjunto de dados:

Procura uma imagem

Podes limitar a tua pesquisa a imagens com uma determinada etiqueta utilizando o seletor "Etiquetas":

Filtra imagens por etiqueta

Antes de começares a treinar um modelo com o teu conjunto de dados, recomendamos a utilização de Roboflow Health Check, uma ferramenta Web que fornece uma perspetiva do teu conjunto de dados e de como podes melhorar o conjunto de dados antes de treinares um modelo de visão.

Para utilizar o Health Check, clica na ligação da barra lateral "Health Check". Aparecerá uma lista de estatísticas que mostra o tamanho médio das imagens no teu conjunto de dados, o equilíbrio das classes, um mapa de calor de onde estão as anotações nas tuas imagens e muito mais.

Roboflow Análise do exame de saúde

O Health Check pode recomendar alterações para ajudar a melhorar o desempenho do conjunto de dados. Por exemplo, a funcionalidade de equilíbrio de classes pode mostrar que existe um desequilíbrio nas etiquetas que, se resolvido, pode aumentar o desempenho do teu modelo.

Exportação de dados em mais de 40 formatos para treino de modelos

Para exportar os teus dados, precisas de uma versão do conjunto de dados. Uma versão é um estado do teu conjunto de dados congelado no tempo. Para criar uma versão, clica primeiro em "Versões" na barra lateral. Em seguida, clica no botão "Criar nova versão". Nesta página, poderás escolher aumentos e passos de pré-processamento a aplicar ao teu conjunto de dados:

Criar uma versão do conjunto de dados em Roboflow

Para cada aumento que seleccionares, aparece uma janela pop-up que te permite afinar o aumento de acordo com as tuas necessidades. Aqui está um exemplo de ajuste de um aumento de brilho dentro dos parâmetros especificados:

Aplicar aumentos a um conjunto de dados

Quando a versão do teu conjunto de dados tiver sido gerada, podes exportar os teus dados para uma série de formatos. Clica no botão "Exportar conjunto de dados" na página da versão do conjunto de dados para exportar os dados:

Exportar um conjunto de dados

Agora estás pronto para treinar YOLOv8 num conjunto de dados personalizado. Segue este guia escrito e o vídeo do YouTube para obteres instruções passo a passo ou consulta a documentaçãoUltralytics .

Carrega pesos personalizados do modelo YOLOv8 para teste e implantação

Roboflow oferece uma API infinitamente escalável para modelos implantados e SDKs para uso com NVIDIA Jetsons, Luxonis OAKs, Raspberry Pis, dispositivos baseados em GPU e muito mais.

Podes implementar os modelos YOLOv8 carregando os pesos YOLOv8 para Roboflow. Podes fazer isto com algumas linhas de código Python . Cria um novo arquivo Python e adiciona o seguinte código:

import roboflow  # install with 'pip install roboflow'

roboflow.login()

rf = roboflow.Roboflow()

project = rf.workspace(WORKSPACE_ID).project("football-players-detection-3zvbc")
dataset = project.version(VERSION).download("yolov8")

project.version(dataset.version).deploy(model_type="yolov8", model_path=f"{HOME}/runs/detect/train/")

Neste código, substitui a ID do projeto e a ID da versão pelos valores da tua conta e do teu projeto. Saiba como recuperar sua chave de API Roboflow .

Quando executares o código acima, ser-te-á pedido para te autenticares. Em seguida, o teu modelo será carregado e será criada uma API para o teu projeto. Esse processo pode levar até 30 minutos para ser concluído.

Para testar seu modelo e encontrar instruções de implantação para SDKs compatíveis, vai para a guia "Implantar" na barra lateral Roboflow . Na parte superior desta página, aparecerá um widget com o qual podes testar o teu modelo. Podes utilizar a tua webcam para testes em direto ou carregar imagens ou vídeos.

Executa a inferência numa imagem de exemplo

Também podes utilizar o teu modelo carregado como assistente de etiquetagem. Esta funcionalidade utiliza o teu modelo treinado para recomendar anotações em imagens carregadas para Roboflow.

Como avaliar os modelos YOLOv8

Roboflow fornece uma série de características para utilização na avaliação de modelos.

Depois de teres carregado um modelo para Roboflow, podes aceder à nossa ferramenta de avaliação de modelos, que fornece uma matriz de confusão que mostra o desempenho do teu modelo, bem como um gráfico interativo de análise vetorial. Estas funcionalidades podem ajudar-te a encontrar oportunidades para melhorar o teu modelo.

Para aceder a uma matriz de confusão, vai à página do teu modelo no painel de controlo Roboflow e, em seguida, clica em "Ver avaliação detalhada":

Inicia uma avaliação do modelo Roboflow

Aparecerá uma janela pop-up com uma matriz de confusão:

Uma matriz de confusão

Passa o cursor sobre uma caixa na matriz de confusão para ver o valor associado à caixa. Clica numa caixa para ver as imagens na respectiva categoria. Clica numa imagem para ver as previsões do modelo e os dados da verdade terrestre associados a essa imagem.

Para obter mais informações, clica em Análise de vetor. Isto mostrará um gráfico de dispersão das imagens no teu conjunto de dados, calculado utilizando o CLIP. Quanto mais próximas as imagens estiverem no gráfico, mais semelhantes elas são, semanticamente. Cada imagem é representada como um ponto com uma cor entre branco e vermelho. Quanto mais vermelho for o ponto, pior foi o desempenho do modelo.

Um gráfico de análise vetorial

Podes utilizar a Análise Vetorial para:

  • Encontra grupos de imagens;
  • Identifica os clusters onde o modelo tem um desempenho fraco, e;
  • Visualiza pontos comuns entre imagens em que o modelo tem um desempenho fraco.

Recursos de aprendizagem

Queres saber mais sobre a utilização do Roboflow para criar modelos YOLOv8 ? Os seguintes recursos podem ser úteis para o teu trabalho.

  • Treina YOLOv8 num conjunto de dados personalizado: Segue o nosso bloco de notas interativo que te mostra como treinar um modelo YOLOv8 num conjunto de dados personalizado.
  • Autodistill: Utiliza modelos de visão de grandes bases para rotular dados para modelos específicos. Podes rotular imagens para utilização na formação YOLOv8 modelos de classificação, deteção e segmentação com o Autodistill.
  • Supervisão: Um pacote Python com utilitários úteis para trabalhar com modelos de visão computacional. Podes utilizar a supervisão para filtrar detecções, calcular matrizes de confusão e muito mais, tudo em poucas linhas de código Python .
  • Roboflow Blogue: O blogue Roboflow apresenta mais de 500 artigos sobre visão computacional, abrangendo tópicos desde como treinar um modelo YOLOv8 até às melhores práticas de anotação.
  • Roboflow Canal do YouTube: Navega por dezenas de guias aprofundados de visão computacional no nosso canal do YouTube, abrangendo tópicos desde o treino de modelos YOLOv8 até à etiquetagem automática de imagens.

Apresentação do projeto

Abaixo estão alguns dos muitos comentários que recebemos sobre a utilização conjunta dos sites YOLOv8 e Roboflow para criar modelos de visão computacional.

Mostra a imagem Mostra a imagem Mostra a imagem



Criado em 2023-11-12, Atualizado em 2024-05-08
Autores: Burhan-Q (1), glenn-jocher (8), capjamesg (1)

Comentários