Pular para o conteúdo
AI Segmentation
QGIS
Tutorial

Detecção de piscinas no QGIS: 5 métodos

Publicado em Atualizado em

Casas suburbanas com quintais vistas do alto, antes e depois da detecção automática de piscinas (after)
Casas suburbanas com quintais vistas do alto, antes e depois da detecção automática de piscinas (before)
ImagemDetectado
Arraste para comparar
Uma passagem automática sobre um quarteirão suburbano em Long Island, em imagens do Google Satellite. Quarenta piscinas contornadas em magenta, incluindo as pequenas sob árvores. Arraste a alça para comparar.

Para detectar piscinas em QGIS, consulte o OpenStreetMap primeiro: Vetor > QuickOSM > QuickOSM…, chave leisure, valor swimming_pool. Onde o mapa é falho, rode um modelo de segmentação ou limiarize o azul na calculadora raster. A resolução do terreno decide qual usar.

Sua entradaMétodoCusto
Qualquer área com mapeadores OSM ativosMétodo 1, QuickOSM em leisure=swimming_poolGrátis, uma consulta
Ortofoto RGB e centenas de piscinasMétodo 2, um modelo de segmentaçãoPlugins gratuitos exigem seu próprio modelo ou uma GPU. Plugins em nuvem têm faixas gratuitas, depois assinatura
Ortofoto RGB de 5 a 30 cmMétodo 3, limiar de cor na calculadora rasterGrátis, no núcleo do QGIS
Imagem com banda de infravermelho próximo ou SWIRMétodo 4, um índice de água, depois um limiarGrátis, cego para piscinas de jardim no satélite
Imagem multiespectral e uma tarde livreMétodo 5, SCP ou dzetsakaPlugins gratuitos, seu tempo desenhando áreas de treino

Cada versão, preço e caminho de menu foi conferido em 3 de setembro de 2026 no manual do QGIS 3.44 e na documentação de cada ferramenta.

Método 1: Puxe as piscinas que alguém já mapeou

O OpenStreetMap tem 3.036.801 objetos marcados com leisure=swimming_pool, 2.731.704 deles como ways com geometria real, no taginfo em 3 de setembro de 2026.

Abra o QuickOSM e faça a consulta

Vetor > QuickOSM > QuickOSM…, que consulta a API Overpass. Chave leisure, valor swimming_pool, na extensão da tela do mapa ou em uma área administrativa nomeada.

Fique com os polígonos e filtre os quintais

Uma piscina mapeada como nó não tem área, então use a camada de polígonos. 1.808.809 dessas piscinas também levam access=private, o filtro para piscinas de quintal.

leisure=swimming_area é outro objeto: um local designado para nadar em um lago ou no mar.

Um quarteirão suburbano em imagem de satélite com polígonos de piscina do OSM em azul sobre três piscinas, e outras sete piscinas visíveis sem polígono nenhum.
Três piscinas mapeadas, sete não. Os mapeadores desenham piscinas públicas e de hotéis. As piscinas privadas de quintal são as que ninguém se dá ao trabalho de mapear, e as que um órgão fiscal procura.

Use quando: você precisa de piscinas públicas e comerciais.

Pule quando: o trabalho é achar o que ninguém declarou.

Método 2: Um modelo de segmentação

Um modelo de segmentação lê forma e contexto, e é assim que separa uma piscina de uma lona da mesma cor. Nós construímos um desses, AI Segmentation. Esta seção trata da nossa própria ferramenta.

Instale e entre na conta

Gerenciador de complementos, QGIS 3.22 ou posterior. Sem GPU, sem pesos de modelo. Uma conta, uma franquia gratuita, depois € 39 por mês sem impostos.

Desenhe uma área, digite a palavra e filtre

Digite swimming pool e execute. Os polígonos voltam no SRC do projeto, com área, perímetro e um índice de confiança. Ordene e apague o que estiver errado.

Dois números da nossa tabela de ajuste, lidos em execução. Uma rodada de piscina pede cerca de 0,13 m por pixel em blocos de no máximo 300 m, porque a piscina se dissolve no terraço em qualquer resolução mais grosseira. A revisão abre em 0,20 de confiança para swimming pool, contra 0,30 para building, já que máscaras de piscina pontuam menos que telhados.

Um quarteirão residencial em imagem aérea no QGIS, cada piscina de quintal preenchida com sua própria cor, telhados e jardins intocados.
Uma área, uma palavra, sobre imagem de 20 cm. Cada piscina é um polígono próprio, com área, editável como qualquer feição vetorial.

Um limite: piscina coberta nunca chega ao modelo, então volta como perda. Ambos os modos em nuvem enviam imagens aos nossos servidores na União Europeia.

Dois painéis dos mesmos três jardins. Na imagem de inverno, duas piscinas têm contorno de detecção em ciano, enquanto uma piscina circulada sob uma capa bege não tem nenhum. Na imagem de verão, aquele ponto circulado é água azul aberta.
Mesmos jardins, duas imagens. A piscina circulada está sob uma capa no inverno e a execução a ignora. No bloco todo, o mesmo prompt retornou 58 piscinas na imagem de verão e 2 na de inverno, embora as duas imagens venham de provedores diferentes, além de estações diferentes.

Quatro outros fazem esse trabalho, conferidos em 3 de setembro de 2026.

FerramentaO que você instalaGPUContaA imagem sai da sua máquinaSuporte a piscinasCusto
DeepnessGerenciador de plugin, seus pacotes Python, um modelo ONNXOpcional, CPU funcionaNãoNãoQualquer modelo que você fornecerGrátis
Geo-SAMGerenciador de plugin, dependências, pesos do modeloOpcionalNãoNãoUm objeto por clique ou caixaGrátis
samgeoUm pacote Python, sem painel no QGISRecomendadaNãoNãoProgramável, sem classe de piscinaGrátis
MapflowGerenciador de pluginNãoSimSim no serviço em nuvem, on-premise para empresasUm modelo Swimming pools, sob demandaCréditos, pago
AI Segmentation (nossa)Gerenciador de pluginNãoSimSim nos dois modos em nuvem, não para o modelo localDigite swimming poolFranquia gratuita, depois € 39 por mês sem impostos

Use quando: mais piscinas do que você contornaria à mão.

Pule quando: a imagem não pode sair da sua máquina. Use Deepness ou Geo-SAM.

Para uma varredura em que alguém assina um número publicado de acurácia, use Mapflow. Ele entrega um modelo dedicado Swimming pools, sob demanda, com F1 acima de 0,95 ao lado. Nós não publicamos número para piscinas.

Método 3: Limiarize o azul na calculadora raster

Trabalhe em um SRC projetado, pois três etapas abaixo filtram por área em unidades da camada.

O mais próximo que o núcleo do QGIS chega. Abra Raster > Calculadora Raster…, onde as bandas são nome_da_camada@número_da_banda. Em uma ortofoto RGB, isto mantém o azul claro e saturado:

("ortho@3" > 90) AND ("ortho@3" - "ortho@1" > 25) AND ("ortho@3" - "ortho@2" > 10)

Esses números são meus, de uma ortofoto a 20 cm. Amostre vinte pixels de piscina e vinte pixels de telhado, depois ajuste.

Poligonize com Raster > Converter > Raster para vetor (poligonizar)… e depois filtre com native:extractbyexpression: $area > 6 AND $area < 400 para o tamanho, e minha própria razão 4 * pi() * $area / ($perimeter ^ 2) > 0.5 para a forma, já que o QGIS não traz nenhuma função de compacidade.

Uma ortofoto suburbana com uma máscara vermelha da calculadora raster cobrindo todas as piscinas, um telhado metálico azul e uma lona azul sobre uma pilha de lenha.
A regra acima, sobre imagem de 20 cm. Ela acha todas as piscinas abertas. Também acha um telhado metálico azul e uma lona.

Valores RGB mudam com ângulo de sol e exposição, então um limiar ajustado em uma faixa de voo quebra na seguinte. Matiz e saturação aguentam melhor, via o módulo da Caixa de Ferramentas de Processamento i.rgb.his, que “transforma mapas raster do espaço de cor RGB (Red-Green-Blue) para o espaço de cor HIS (Hue-Intensity-Saturation)”.

Nenhuma regra sabe o que é a coisa azul.

  • Sombra. Telhados sombreados parecem azul-escuro. Suba o piso e você perde piscinas sob árvores.
  • Telhados azuis e lonas. Claros, azuis, muitas vezes com o formato certo.
  • Piscinas escuras e verdes. Revestimento preto parece asfalto, alga parece gramado. Minha regra perdeu ambas.
  • Piscinas cobertas. Nem estão na imagem.
Três recortes fechados lado a lado: uma lona azul sobre um jardim, uma água de telhado sombreada, e uma piscina de fundo escuro em um jardim.
A lona e a sombra passam na regra de cor, mas não deveriam. A piscina de fundo escuro não passa, mas deveria. Recortes de imagens de 20 cm sobre Cape Coral, Florida.

Use quando: uma ortofoto consistente que você vai conferir à mão.

Pule quando: um mosaico de vários voos.

Método 4: Um índice de água, em imagem com as bandas

Depois confira a resolução. A federação francesa de piscinas indica 29 a 30 m² para uma piscina enterrada nova, 3.000 pixels em uma ortofoto a 10 cm e um terço de pixel em uma banda Sentinel-2 a 10 m.

Água absorve infravermelho próximo quase por completo, então fica preta no NIR enquanto um telhado azul continua claro.

  • NDWI, McFeeters 1996: (Green - NIR) / (Green + NIR). No Sentinel-2, (B3 - B8) / (B3 + B8).
  • MNDWI, Xu 2006: (Green - SWIR) / (Green + SWIR). No Sentinel-2, (B3 - B11) / (B3 + B11). Trocar NIR por SWIR suprime a área construída, que é o ponto em um subúrbio.

Limiarize acima de zero, poligonize, filtre como no Método 3. Rodríguez-Cuenca e Alonso ajustaram um Normalized Difference Swimming Pools Index para esse trabalho em 2014.

Sentinel-2 entrega B3 e B8 a 10 m e B11 a 20 m, então uma piscina de 30 m² nunca se separa do jardim. MNDWI sobre um quarteirão residencial retorna o reservatório na saída da cidade e nada mais.

Dois painéis do mesmo subúrbio: uma ortofoto de 20 cm com onze piscinas visíveis, e o MNDWI do Sentinel-2 da mesma extensão, em um cinza uniforme sem nenhuma piscina visível.
Onze piscinas à esquerda, nenhuma à direita. Mesma extensão, mesma semana. Uma piscina de 30 m² nunca chega como objeto a um sensor de 10 m.

Use quando: sua ortofoto tem banda NIR a 50 cm ou melhor. Ganha da cor com folga.

Pule quando: RGB de três bandas, ou Sentinel-2 para piscinas de jardim.

Método 5: Treine um classificador na sua própria imagem

Um classificador aprende seus pixels de piscina a partir de exemplos que você desenha, então sobrevive a um mosaico que quebra um limiar fixo.

Semi-Automatic Classification Plugin de Luca Congedo é a escolha usual. Crie um training input (.scpx) no dock do SCP, desenhe as ROIs e depois execute SCP > Band processing > Classification na janela principal. Seis algoritmos, de Minimum Distance a Random Forest. A versão 9.0.4 foi lançada em 11 de julho de 2026, mas declara um mínimo de QGIS 3.99, então o QGIS 3.x ainda instala a 8.5.0.

dzetsaka 5.0.11, de Nicolas Karasiak, é mais leve: onze classificadores, e seu Gaussian Mixture Model roda sem scikit-learn.

Desenhe também uma classe de telhado azul e uma classe de sombra. Um classificador só rejeita o que você mostrou.

Dois painéis do mesmo subúrbio: uma ortofoto de 20 cm, e uma classificação por distância mínima dela com a classe de piscina em ciano, onde um telhado cinza-azulado aparece maior do que qualquer uma das duas piscinas reais ao lado.
Uma classificação por distância mínima da mesma ortofoto de 20 cm, com a classe de piscina treinada nas 58 piscinas deste bloco. No bloco todo, 46% dos pixels que ela chama de piscina não são piscina, e a maior parte disso é telhado cinza-azulado, como o do meio aqui.

Use quando: vários voos ou estações, e você vai reutilizar o fluxo.

Pule quando: uma ortofoto, uma passagem. Ambos classificam pixels, não objetos, então você ainda polygoniza e filtra.

Os cinco métodos lado a lado

O que você temMétodo
Uma cidade bem mapeada, piscinas públicas bastamMétodo 1, QuickOSM
Centenas de piscinas e sem paciência para falsos positivosMétodo 2, um modelo de segmentação
Uma ortofoto RGB melhor que 30 cmMétodo 3, limiar de cor, depois filtre
Uma ortofoto com banda NIRMétodo 4, NDWI
Sentinel-2 ou qualquer coisa a 10 mNenhum deles para piscinas de jardim. Busque imagem mais fina
Vários voos, um fluxo para repetirMétodo 5, SCP ou dzetsaka

O que lembrar

Resolução decide primeiro, depois as bandas, depois quanto de conferência manual você aguenta.

Uma piscina de 30 m² nunca se separa do jardim a 10 m, então Sentinel-2 é o sensor errado para piscinas de quintal, qualquer que seja o índice.

Um limiar de cor retorna tudo que é azul no quarteirão, então filtre por área e compacidade antes de olhar o resultado.

Piscina coberta está fora da imagem, então nenhum método desta página a acha e nenhum preço muda isso.

Uma detecção é uma candidata. Qualquer que seja o método, abra os dez polígonos de menor confiança antes de agir sobre a camada.

Experimente gratuitamente no QGIS, sem cartão

Perguntas frequentes

O QGIS detecta piscinas sozinho?

Não como recurso. O núcleo do QGIS dá a calculadora raster, polygonize e os filtros vetoriais, que é o Método 3. Reconhecer uma piscina como objeto exige um plugin.

Dá para achar piscinas de quintal em imagem Sentinel-2?

Não. Verde e NIR são bandas de 10 m e SWIR é de 20 m, então uma piscina de 30 m² é um terço de pixel. Use imagem aérea a 30 cm ou melhor.

Por que telhados azuis voltam como piscinas?

Um telhado metálico pintado é mais claro e mais azul que água de piscina, e uma regra de cor só lê cor. Filtre por área e compacidade, migre para NDWI ou use um modelo.

Que acurácia devo esperar?

Um número só seria falso, pois muda com sua imagem e a estação. Piscinas abertas a 20 cm voltam bem, piscinas cobertas passam batido em tudo aqui, e telhados azuis são o que você apaga à mão.

Uma detecção já é uma lista de piscinas sobre as quais posso agir?

A administração fiscal francesa rodou isso em fotografia do IGN e mesmo assim mandou carta a cada proprietário. Seu piloto Foncier innovant tributou 20.356 piscinas em nove departamentos em 2022, no valor de 9,8 milhões de euros, e a passagem nacional de 2023 achou 150.000 piscinas tributáveis fora do cadastro. Uma detecção é uma candidata, e juntá-la a um lote e a um nome a transforma em dado pessoal.

Para a etapa de filtragem completa, leia como detectar contornos de edificações no QGIS. Para a limpeza por trás de qualquer máscara, raster para vetor no QGIS. Para repetir a mesma passagem de detecção e filtragem sobre as imagens de um município inteiro, o AI Agent executa as etapas a partir de uma instrução dentro do QGIS. O hub de IA do QGIS tem o resto.