GeoFoto Copy

Plugin em Python para QGIS que copia fotos georreferenciadas associadas a feições selecionadas.

Organiza imagens em pastas de destino por códigos/identificadores (ex: R-1) e exibe progresso e log do processo.

GeoFoto Copy - Tela Principal

Sobre o Projeto

O GeoFoto Copy é um plugin para QGIS desenvolvido em Python (PyQt5) que automatiza a cópia de fotos georreferenciadas a partir de uma camada vetorial. Ele permite selecionar feições no mapa, ler o nome do arquivo a partir de um campo da camada (padrão: Name), buscar essas imagens em uma pasta de origem e copiá-las para uma pasta de destino organizada por placas ou identificadores.

O plugin exibe uma barra de progresso, mantém um log com o status de cada arquivo (copiado / não encontrado) e salva os caminhos usados em config.ini para reutilização posterior.

Funcionalidades principais:

Por que criei esse plugin

No meu trabalho, precisávamos copiar fotos georreferenciadas específicas que continham determinados tipos de placa de trânsito. Até então, o processo era totalmente manual: verificávamos o nome da foto na camada, procurávamos o arquivo na pasta de origem e copiávamos para a pasta de destino, o que consumia muito tempo e podia gerar erros.

Para automatizar essa tarefa, tive a ideia de criar o GeoFoto Copy. Com ele, podemos:

Além disso, este plugin pode ser expandido para funcionalidades futuras, como:

Tecnologias Usadas

Python QGIS PyQt5 os shutil configparser Shapefile / Camadas Vetoriais

Como Usar

  1. Instale o plugin copiando a pasta para a pasta de plugins do QGIS ou usando o repositório GitHub.
  2. Abra o QGIS e carregue a camada vetorial com o campo Name contendo os nomes das fotos.
  3. Selecione as feições correspondentes às fotos que deseja copiar.
  4. Abra o plugin pelo menu GeoFoto Copy.
  5. Escolha a pasta de origem das fotos e a pasta de destino.
  6. Digite o código/nome da placa ou feição, que será criada como subpasta dentro do destino.
  7. Clique em Iniciar Cópia e acompanhe o progresso no log e barra de status.

Exemplo de Uso

Por exemplo, se você tem uma camada com o campo Name contendo IMG_001.jpg, IMG_002.jpg e IMG_003.jpg, selecionando duas feições e executando o plugin com placa R-1, ele criará a pasta destino/R-1/ e copiará apenas os arquivos encontrados, exibindo no log quais foram copiados e quais não foram encontrados.

Screenshots

Dialog do Plugin

Dialog com seleção de pastas, campo placa, barra de progresso e log

Log do Plugin

Log mostrando arquivos copiados e não encontrados

Pasta de Destino

Exemplo da pasta de destino contendo a subpasta da placa

← Voltar para Portfólio