Link to this sectionExportar 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á conexão ao vivo com o LabelMe ou chave de API para configurar na Ultralytics Platform. A integração completa é um fluxo de trabalho local: anotar no LabelMe, converter as anotações JSON do LabelMe para o formato YOLO com o LabelMe Toolkit e carregar o ZIP resultante como um conjunto de dados da Platform.
Link to this section1. Anotar as Imagens no LabelMe#
Instala o LabelMe usando o app para desktop ou o pacote Python de código aberto, depois 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 inicial do LabelMe abrange a abertura de imagens, desenho de formas e salvamento de anotações, enquanto o guia de conjuntos de dados do LabelMe abrange a revisão e 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.jsonLink to this section2. 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 rodam localmente.
export-to-yolo faz parte do LabelMe Pro Toolkit, e transferir o seu instalador requer iniciar 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 IDs de classe YOLO.
Link to this section3. Exportar para o Formato YOLO#
Executa export-to-yolo com o diretório de origem e uma lista separada por vírgulas de
nomes de classes:
labelmetk export-to-yolo your_dataset/ --class-names crack,normalSubstitui crack,normal pelas etiquetas retornadas 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.txtclasses.txt preserva os nomes das classes na mesma ordem usada pelos ficheiros de etiquetas YOLO. Mantém-no na raiz da
exportação.
O LabelMe Toolkit exporta retângulos como caixas delimitadoras YOLO. Ele também reduz polígonos e máscaras para as suas
caixas delimitadoras alinhadas aos eixos, portanto export-to-yolo não preserva a geometria de segmentação. Desenha retângulos ao
preparar um conjunto de dados de deteção com este fluxo de trabalho.
Link to this section4. Criar o Arquivo ZIP#
Compacta o conteúdo de your_dataset.export/, e não o diretório à volta deles. No macOS ou Linux:
cd your_dataset.export
zip -r ../your_dataset.zip classes.txt images labelsNo Windows PowerShell:
Compress-Archive -Path .\your_dataset.export\* -DestinationPath .\your_dataset.zipAbre o ZIP antes de 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.
Link to this section5. Carregar para a Ultralytics Platform#
- Abre Settings > Integrations > LabelMe.
- Clica em Upload export.
- Carrega
your_dataset.zipe conclui a criação do conjunto de dados. - Aguarda a conclusão do processamento e, em seguida, revisa as imagens, classes e anotações.
- Edita as anotações, treina um modelo e implanta-o a partir do mesmo espaço de trabalho.
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.
Link to this sectionSolução de Problemas#
- As classes chamam-se
class0,class1e assim por diante: confirma queclasses.txtestá presente na raiz do ZIP. - Algumas anotações estão em falta: executa
labelmetk list-labels your_dataset/novamente e inclui cada etiqueta necessária em--class-names. - Os polígonos tornaram-se caixas: este é o comportamento documentado do
export-to-yolodo LabelMe; ele converte formas que não são retângulos em caixas delimitadoras. - O conjunto de dados não tem imagens: confirma que o diretório exportado
images/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/elabels/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.