Criar aplicações de drones com IA com o Ultralytics YOLO11

Abirami Vina

4 min ler

18 de abril de 2025

Saiba como criar aplicações de drones alimentadas por IA com o Ultralytics YOLO11, permitindo a deteção de objectos em tempo real e tarefas de visão computacional baseadas em drones.

As compras na loja e as compras em linha podem parecer semelhantes, mas dependem de uma logística diferente. As lojas precisam de reabastecer as prateleiras, enquanto as encomendas em linha dependem de entregas ao domicílio. Graças aos avanços tecnológicos, ambas as experiências de compra estão a ser reformuladas em paralelo.

Por exemplo, está a ocorrer uma grande mudança nas entregas. Os drones com inteligência artificial estão a mudar a forma como os produtos chegam às nossas casas. Prevê-se que estes drones inteligentes façam cerca de 808 milhões de entregas na próxima década, transformando os céus na mais recente rota de entrega do comércio quotidiano.

Os drones de entrega utilizam a inteligência artificial (IA) e a visão por computador, um subcampo da IA que é utilizado para analisar dados visuais, para navegar e contornar obstáculos. Os modelos de visão por computador, como o Ultralytics YOLO11, podem ajudar os drones a detetar e seguir objectos em tempo real, permitindo-lhes compreender melhor e interagir com o seu ambiente.

Fig. 1. Um drone de entregas a levar uma encomenda para o seu destino.

Empresas como a Meituan e a DJI já estão a integrar a visão computacional nos seus drones. Na verdade, a rápida adoção de drones em vários setores fez com que o mercado de drones de IA disparasse para US $ 206,9 bilhões até 2031. 

Neste artigo, analisaremos mais detalhadamente a forma como os modelos de visão por computador, como o Ultralytics YOLO11, podem ser utilizados em aplicações baseadas em drones, como as entregas por drones. Iremos analisar um exemplo que mostrará como estas tecnologias podem ser desenvolvidas e testadas antes de serem utilizadas em cenários do mundo real.

Utilização do Ultralytics YOLO11 em drones para detetar casas

Uma parte essencial dos drones de entrega é a sua capacidade de detetar casas enquanto navegam. Para recriar esta capacidade e compreender o seu funcionamento, vamos treinar um modelo de visão por computador capaz de identificar casas em imagens captadas por um drone aéreo. Para isso, treinaremos o YOLO11 de forma personalizada, o que envolve o ajuste fino de um modelo YOLO11 pré-treinado para reconhecer e detetar casas usando exemplos rotulados.

Para o fazer, precisamos de dados de vídeo de alta qualidade de um drone. Curiosamente, mesmo sem acesso a um drone real, podemos gerar imagens aéreas realistas. Vamos ver como.

Criar uma imagem artificial de um drone com o Google Earth Studio

O Google Earth Studio é uma ferramenta de animação baseada na Web que pode ser utilizada pelos utilizadores para criar conteúdos estáticos e animados utilizando as imagens de satélite e 3D do Google Earth. Podemos utilizá-lo para criar imagens aéreas realistas.

O primeiro passo é abrir o Google Earth Studio e criar um projeto, como se mostra abaixo. 

Necessita de uma conta Google para iniciar sessão.

Fig. 2. Criar um projeto no Google Earth Studio.

Depois de iniciar sessão, pode escolher um local para o seu vídeo de drone artificial. Utilizando a barra de pesquisa no canto superior esquerdo da página, pode procurar localizações. Para este tutorial, vamos escolher o Canadá. Além disso, como vamos treinar um modelo para detetar casas, o nosso vídeo de drone deve ter uma vista aérea de casas.

Fig. 3. Seleção de uma localização utilizando o Google Earth Studio.

De seguida, podemos definir o primeiro e o último período de tempo para capturar o movimento do disparo artificial do drone. Depois de escolher a localização inicial para o disparo do drone, defina o primeiro fotograma utilizando os diamantes azuis, como se mostra abaixo. 

Fig. 4. Definição da primeira moldura utilizando os losangos azuis.

De seguida, podemos escolher o último fotograma para determinar o destino do drone. Isto ajudar-nos-á a criar um efeito de movimento para a filmagem do drone. Para o fazer, deslize a barra (destacada abaixo) para a direita até uma hora específica, de modo a criar o efeito de movimento para a filmagem do drone. Mais uma vez, utilize os diamantes azuis para definir o último ponto.

Fig. 5. Definir o último fotograma deslocando a barra.

Por fim, pode guardar este projeto e renderizá-lo clicando no botão vermelho "Render" no canto superior direito da página. Isto dar-lhe-á a saída de vídeo final da filmagem do drone, criando com êxito uma filmagem artificial do drone.

Fig. 6. Renderização do vídeo de saída final.

Como rotular os dados do drone?

Agora que criámos um vídeo artificial de drone, o próximo passo é etiquetar ou anotar as casas nele contidas. Também precisamos de separar os fotogramas individuais do vídeo. 

Para começar, vamos instalar o LabelImg. O LabelImg é uma ferramenta de rotulagem de imagens de código aberto. Você pode instalá-lo diretamente do terminal usando o instalador de pacotes pip, executando o seguinte comando: "pip install labelImg".

Após a instalação, pode executar a ferramenta utilizando o comando "labelImg" no seu terminal ou na linha de comandos. Isto levá-lo-á à página mostrada abaixo.

Fig. 7. A interface da ferramenta LabelImg.

Entretanto, podemos utilizar um conversor de vídeo para imagem online ou uma ferramenta chamada FFmpeg para dividir o vídeo em fotogramas. O FFmpeg é uma coleção de bibliotecas e ferramentas para processar conteúdo multimédia, como áudio, vídeo, legendas e metadados relacionados. 

Pode utilizar o seguinte comando de terminal para separar cada fotograma do vídeo da filmagem do drone:

Depois de separar os fotogramas da filmagem do drone, podemos começar a etiquetar os objectos (casas) neles contidos. Navegando para a pasta de imagens através da ferramenta LabelImg, podemos etiquetar os objectos em cada imagem. Certifique-se de que guarda e verifica todas as imagens etiquetadas. Depois de anotar as imagens, podemos agora passar ao treino do YOLO11 utilizando estes dados.

Fig. 8. Um exemplo de gravação de imagens anotadas.

Fluxo de trabalho de treino do modelo YOLO11

Antes de começarmos a treinar o YOLO11, vamos organizar as nossas imagens e etiquetas. Comece por criar duas pastas: uma com o nome "train" (treino) e a outra com o nome "valid" (válido). Divida as suas imagens entre estas pastas. Dentro de cada uma delas, crie subpastas separadas para as imagens e os ficheiros de etiquetas correspondentes (formato de texto), como se mostra abaixo.

Fig. 9. Um exemplo de criação de pastas de imagens e etiquetas.

Em seguida, podemos começar a treinar o modelo YOLO11 da seguinte forma:

  • Passo 1: Instale o pacote Ultralytics Python. Você pode fazer isso executando o comando "pip install ultralytics" em seu terminal. Se você encontrar algum problema de instalação, confira nosso guia de solução de problemas para obter dicas e truques para ajudá-lo a resolvê-los.
  • Passo 2: Depois de instalar o pacote com sucesso, crie um ficheiro com o nome 'data.yaml'. Este é um arquivo de configuração crucial para o treinamento do modelo. No arquivo data.yaml, inclua as seguintes informações: o caminho para o conjunto de dados de treinamento, o caminho para o conjunto de dados de validação, o número de classes (nc) e uma lista de nomes de classes (names), como mostrado abaixo.
Fig. 10. Um exemplo de um ficheiro data.yaml.

  • Etapa 3: Depois que o arquivo 'data.yaml' estiver configurado, você pode começar a treinar seu modelo usando o seguinte código Python. Esse código carrega o modelo YOLO11 pré-treinado e o treina de acordo com suas configurações.
from ultralytics import YOLO

# Load a YOLO11 model
model = YOLO("yolo11n.pt")  # choose your model, e.g., YOLO11 nano

# Train the model with your data and settings
model.train(data="data.yaml", epochs=100, imgsz=640)
  • Passo 4: Quando o treino estiver concluído, deverá ver um resultado semelhante ao mostrado abaixo. Isto significa que treinou com sucesso o seu modelo YOLO11 para aplicações baseadas em drones.
Fig. 11. O resultado apresentado após o treino do modelo.

Execução de previsões utilizando o Ultralytics YOLO11 em drones

O modelo YOLO11 treinado pode agora ser utilizado para fazer previsões através de um processo designado por inferência. A inferência envolve a utilização de um modelo para analisar dados novos e não vistos com base no que aprendeu durante o treino. Neste caso, o modelo pode ser utilizado para encontrar e rotular objectos específicos, como casas, em imagens ou vídeos, desenhando caixas delimitadoras à sua volta.

Para executar uma previsão, pode utilizar o modelo YOLO11 treinado num vídeo de entrada utilizando o seguinte código Python. Neste exemplo, vamos utilizar o mesmo vídeo de drone artificial que foi utilizado para o treino, mas pode utilizar qualquer outro ficheiro de vídeo, se preferir.

# Import library
from ultralytics import YOLO

# Load the YOLO model
model = YOLO("best.pt")  # Choose your custom-trained model

# Predict the results from the model
results = model.predict(source="path/to/original/video.mp4", show=True, save=True)

Depois de executar este código, o ficheiro de vídeo de saída com as previsões e as caixas delimitadoras será guardado.

Fig. 12. Um fotograma do ficheiro de vídeo de saída. 

Integração do Ultralytics YOLO11 em drones para várias aplicações

A deteção de casas para entrega de pacotes por drones é apenas um exemplo de como a visão computacional e o YOLO11 podem ser aplicados. Eis algumas outras utilizações reais da visão por computador, YOLO11 e drones aéreos:

  • Vigilância e segurança: Os drones com IA podem ser utilizados para monitorizar grandes áreas em tempo real. Podem detetar intrusões, seguir actividades suspeitas e reforçar a segurança nas fronteiras nacionais, bem como em grandes eventos públicos. 
  • Resposta a catástrofes e busca e salvamento: Equipados com câmaras térmicas e de deteção de objectos, os drones podem ajudar a localizar sobreviventes em zonas de catástrofe. Podem também avaliar os danos e fornecer bens de emergência.
  • Agricultura e agricultura de precisão: Os drones integrados com visão computacional podem ser utilizados para analisar a saúde das culturas e detetar doenças, ajudando os agricultores a aumentar os rendimentos e a reduzir os custos. 
  • Cartografia e análise geoespacial: Ao recolher mapas 3D de alta resolução, os drones com IA podem ajudar no planeamento urbano e nos levantamentos topográficos. Fornecem avaliações do terreno mais rápidas e mais exactas do que os métodos tradicionais. 

Principais conclusões

Os drones com IA alimentados por visão computacional estão a mudar muitas indústrias, desde a entrega de encomendas à ajuda em emergências e na agricultura. Neste guia, percorremos a criação de um vídeo de drone artificial, rotulando objectos nele, treinando o YOLO11 e utilizando-o para detetar casas.

A aplicação da deteção de objectos às filmagens dos drones torna estes drones mais inteligentes, permitindo-lhes reconhecer e seguir objectos automaticamente em tempo real. À medida que a tecnologia melhora, é provável que os drones com IA desempenhem um papel ainda mais importante na realização de entregas mais rápidas, na melhoria da segurança e na ajuda à resposta a catástrofes.

Junte-se à nossa comunidade e explore o nosso repositório GitHub para saber mais sobre a IA de visão e verifique as nossas opções de licenciamento para iniciar os seus projectos de visão computacional. Interessado em inovações como a IA no fabrico ou a visão computacional na indústria automóvel? Visite nossas páginas de soluções para descobrir mais. 

Vamos construir juntos o futuro
da IA!

Comece a sua viagem com o futuro da aprendizagem automática

Comece gratuitamente
Ligação copiada para a área de transferência