Aprende a criar aplicações para drones alimentadas por IA com o Ultralytics YOLO11, que permite 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 IA estão a mudar a forma como os produtos chegam às nossas casas. Espera-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. 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.
Empresas como a Meituan e a DJI já estão a integrar a visão computacional nos seus drones. De facto, a rápida adoção de drones em várias indústrias fez com que o mercado de drones com IA disparasse para 206,9 mil milhões de dólares até 2031.
Neste artigo, vamos analisar 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. Apresentaremos um exemplo que mostra como estas tecnologias podem ser desenvolvidas e testadas antes de serem utilizadas em cenários do mundo real.
Uma parte essencial dos drones de entrega é a sua capacidade de detetar casas enquanto navegam. Para recriar esta capacidade e compreender como funciona, vamos treinar um modelo de visão por computador que consegue identificar casas em imagens captadas por um drone aéreo. Para isso, treinaremos 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 isso, precisamos de dados de vídeo de alta qualidade de um drone. O interessante é que, mesmo sem acesso a um drone real, podemos gerar imagens aéreas realistas. Vamos ver como.
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.
Precisas de uma conta Google para iniciar sessão.
Depois de iniciares sessão, podes escolher um local para o teu vídeo de drone artificial. Utilizando a barra de pesquisa no canto superior esquerdo da página, podes procurar localizações. Para este tutorial, escolhe o Canadá. Além disso, como vamos treinar um modelo para detetar casas, o teu vídeo de drone deve ter uma vista aérea de casas.
A seguir, podes definir o primeiro e o último fotogramas para capturar o movimento do disparo artificial do drone. Depois de escolheres a localização inicial para o disparo do drone, define o primeiro fotograma utilizando os diamantes azuis, como se mostra abaixo.
A seguir, podes 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 isso, desliza a barra (destacada abaixo) para a direita até um momento específico, de modo a criar o efeito de movimento para a filmagem do drone. Mais uma vez, utiliza os diamantes azuis para definir o último ponto.
Finalmente, podes guardar este projeto e renderizá-lo, clicando no botão vermelho "Render", no canto superior direito da página. Isto vai dar-te a saída de vídeo final da filmagem do drone, criando com sucesso uma filmagem artificial de 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. LabelImg é uma ferramenta de rotulagem de imagens de código aberto. Podes instalá-lo diretamente a partir do terminal utilizando o instalador de pacotes pip, executando o seguinte comando: "pip install labelImg".
Após a instalação, podes executar a ferramenta utilizando o comando "labelImg" no teu terminal ou na linha de comandos. Isto leva-te à página mostrada abaixo.
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.
Podes utilizar o seguinte comando de terminal para separar cada fotograma do vídeo da filmagem do drone:
ffmpeg -i input_video.mp4 -vf fps=1 frame_%04d.jpg
Depois de separarmos 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. Certifica-te de que guardas e verificas todas as imagens etiquetadas. Depois de anotares as imagens, podes agora passar ao treino YOLO11 utilizando estes dados.
Antes de começarmos a treinar o YOLO11, vamos organizar as nossas imagens e etiquetas. Começa por criar duas pastas: uma com o nome "train" (treinar) e a outra com o nome "valid" (válido). Divide as tuas imagens entre estas pastas. Dentro de cada uma, cria subpastas separadas para as imagens e os ficheiros de etiquetas correspondentes (formato de texto), como se mostra abaixo.
Depois, podemos começar a treinar o modelo YOLO11 da seguinte forma:
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)
O modelo YOLO11 treinado pode agora ser usado para fazer previsões através de um processo chamado 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, podes usar o modelo YOLO11 treinado num vídeo de entrada usando o seguinte código Python . Neste exemplo, vamos utilizar o mesmo vídeo de drone artificial que foi utilizado para o treino, mas podes utilizar qualquer outro ficheiro de vídeo, se preferires.
# 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 executares este código, o ficheiro de vídeo de saída com as previsões e as caixas delimitadoras será guardado.
Detetar casas para entrega de pacotes por drones é apenas um exemplo de como a visão computacional e YOLO11 podem ser aplicados. Aqui estão alguns outros usos reais da visão computacional, YOLO11 e drones aéreos:
Os drones com IA alimentados por visão computacional estão a mudar muitas indústrias, desde a entrega de encomendas até à ajuda em emergências e à agricultura. Neste guia, percorremos a criação de um vídeo de drone artificial, rotulando objectos nele, treinando YOLO11 e utilizando-o para detetar casas.
A aplicação da deteção de objectos às filmagens dos drones torna-os 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.
Junta-te à nossa comunidade e explora o nosso repositório GitHub para saberes mais sobre a IA de visão e verifica as nossas opções de licenciamento para iniciares os teus projectos de visão computacional. Estás interessado em inovações como a IA no fabrico ou a visão computacional na indústria automóvel? Visita as nossas páginas de soluções para saberes mais.
Começa a tua viagem com o futuro da aprendizagem automática