YOLO Vision 2026:

Exportar Anotações do LabelMe para o formato YOLO e Ultralytics Platform#

LabelMe é uma ferramenta de anotação de imagens offline com uma aplicação Python de código aberto. Não há nenhuma ligação ao LabelMe em tempo real ou chave de API para configurar na Ultralytics Platform. A integração completa é um fluxo de trabalho local: anota no LabelMe, converte as anotações JSON do LabelMe para o formato YOLO com o LabelMe Toolkit e carrega o ZIP resultante como um conjunto de dados da Platform.

1. Anotar as Imagens no LabelMe#

Instala o LabelMe utilizando a aplicação para computador ou o pacote Python de código aberto e, em seguida, abre o diretório que contém as tuas imagens. O LabelMe guarda as anotações de cada imagem num ficheiro JSON correspondente.

Para o fluxo de trabalho de deteção YOLO neste guia, desenha retângulos à volta de cada objeto e atribui um nome de classe. O guia de iniciação ao LabelMe abrange a abertura de imagens, o desenho de formas e o salvamento de anotações, enquanto o guia de conjuntos de dados do LabelMe abrange a revisão e a preparação de um conjunto de dados anotado completo.

O teu diretório de origem deve conter as imagens e os ficheiros JSON do LabelMe:

your_dataset/
├── image_001.jpg
├── image_001.json
├── image_002.jpg
└── image_002.json

2. Instalar o LabelMe Toolkit#

Instala o LabelMe Toolkit seguindo o guia de instalação do toolkit do LabelMe. O toolkit e as suas exportações são executados localmente.

O LabelMe Pro é necessário para a exportação

export-to-yolo faz parte do LabelMe Pro Toolkit e a transferência do seu instalador requer início de sessão no LabelMe. Este é um requisito do produto LabelMe; o ZIP resultante pode ser carregado em qualquer plano da Platform.

Verifica a instalação e lista todas as etiquetas encontradas no conjunto de dados de origem:

labelmetk --version
labelmetk list-labels your_dataset/

Revisa a saída antes de exportar. As etiquetas omitidas de --class-names são ignoradas e a ordem que forneces torna-se a ordem de ID de classe YOLO.

3. Exportar para o Formato YOLO#

Executa export-to-yolo com o diretório de origem e uma lista de nomes de classes separados por vírgulas:

labelmetk export-to-yolo your_dataset/ --class-names crack,normal

Substitui crack,normal pelas etiquetas devolvidas por list-labels. O LabelMe escreve o resultado em your_dataset.export/:

your_dataset.export/
├── classes.txt
├── images/
│   ├── image_001.jpg
│   └── image_002.jpg
└── labels/
    ├── image_001.txt
    └── image_002.txt

classes.txt preserva os nomes das classes na mesma ordem utilizada pelos ficheiros de etiquetas YOLO. Mantém-no na raiz da exportação.

Este fluxo de trabalho cria um conjunto de dados de deteção

O LabelMe Toolkit exporta retângulos como caixas delimitadoras YOLO. Também reduz polígonos e máscaras às suas caixas delimitadoras alinhadas aos eixos, pelo que export-to-yolo não preserva a geometria de segmentação. Desenha retângulos ao preparares um conjunto de dados de deteção com este fluxo de trabalho.

4. Criar o Arquivo ZIP#

Comprime o conteúdo de your_dataset.export/, e não o diretório à volta do mesmo. No macOS ou Linux:

cd your_dataset.export
zip -r ../your_dataset.zip classes.txt images labels

No Windows PowerShell:

Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zip

Abre o ZIP antes de o carregar e confirma que classes.txt, images/ e labels/ estão na sua raiz. Um wrapper your_dataset.export/ extra impede que a Platform encontre a lista de classes raiz.

5. Carregar para a Ultralytics Platform#

  1. Abre Settings > Integrations > LabelMe.
  2. Clica em Upload export.
  3. Carrega your_dataset.zip e conclui a criação do conjunto de dados.
  4. Aguarda a conclusão do processamento e, em seguida, revisa as imagens, classes e anotações.
  5. Edita as anotações, treina um modelo e implementa-o a partir do mesmo espaço de trabalho.

Ultralytics Platform LabelMe Dataset Import

O LabelMe e a exportação YOLO permanecem inteiramente offline. Apenas o ficheiro ZIP que selecionas no diálogo de carregamento é enviado para a Platform.

Solução de Problemas#

  • As classes têm os nomes class0, class1 e assim sucessivamente: confirma que classes.txt está presente na raiz do ZIP.
  • Faltam algumas anotações: executa labelmetk list-labels your_dataset/ novamente e inclui todas as etiquetas necessárias em --class-names.
  • Os polígonos tornaram-se caixas: este é o comportamento documentado de export-to-yolo do LabelMe; converte formas que não sejam retângulos em caixas delimitadoras.
  • O conjunto de dados não tem imagens: confirma que o diretório images/ exportado está incluído no ZIP.
  • A Platform não consegue encontrar as classes: remove qualquer diretório externo do arquivo para que classes.txt, images/ e labels/ sejam as entradas de nível superior.

Para o fluxo de trabalho local completo, consulta o guia de treino YOLO do LabelMe e a referência de export-to-yolo.

Contribuidores

Comentários