Deteksi Kolam Renang di QGIS: 5 Metode

Untuk mendeteksi kolam renang di
, cek OpenStreetMap dulu: Vector > QuickOSM > QuickOSM…, key leisure, value swimming_pool. Jika peta jarang, threshold warna biru di raster calculator atau jalankan model segmentasi. Resolusi dasar yang menentukan.
Di mana web sering salah
Tiga jawaban berulang di forum dan tutorial, dan masing-masing bisa membuang waktu sehari.
"Jalankan NDWI di Sentinel-2 lalu hitung kolamnya." Green dan NIR ada di 10 m dan SWIR di 20 m, sementara kolam tanam baru berukuran 29 sampai 30 m². Itu sepertiga piksel. MNDWI di pinggiran kota hanya mengembalikan waduk di pinggir kota dan tidak ada apa pun di taman.
"Threshold warna biru maka kolam ketemu." Aturan warna hanya membaca warna dan tidak ada yang lain. Atap logam biru dan terpal di atas tumpukan kayu lolos, kolam berlapis gelap dan kolam hijau beralga gagal, dan kolam tertutup memang tidak ada di citra sama sekali.
"Deteksi adalah daftarnya." Administrasi pajak Prancis menjalankan ini di foto udara IGN dan tetap mengirim surat ke setiap pemilik. Deteksi adalah kandidat, dan menggabungkannya ke bidang dan nama menjadikannya data pribadi.
Jawaban singkat
| Input Anda | Metode | Biayanya |
|---|---|---|
| Area mana pun dengan mapper OSM aktif | Metode 1, QuickOSM untuk leisure=swimming_pool | Gratis, satu query |
| Ortofoto RGB 5 sampai 30 cm | Metode 2, threshold warna di raster calculator | Gratis, di inti QGIS |
| Citra dengan band inframerah-dekat atau SWIR | Metode 3, indeks air, lalu threshold | Gratis, buta terhadap kolam taman di satelit |
| Citra multispektral dan waktu satu sore | Metode 4, SCP atau dzetsaka | plugin gratis, waktu Anda menggambar area latih |
| Ortofoto RGB dan ratusan kolam | Metode 5, model segmentasi | plugin gratis butuh model sendiri atau GPU. plugin cloud ada tier gratis, lalu langganan |
Cara saya membandingkannya
Lima kriteria: input, apakah citra keluar dari mesin Anda, seberapa banyak output yang Anda cek manual, biaya, upaya pemasangan. Setiap versi, harga, dan jalur menu saya baca pada 3 September 2026 dari manual QGIS 3.44 dan dok tiap alat. Saya menjalankan metode gratis pada ortofoto pinggiran Prancis dan adegan Sentinel-2 di blok yang sama.
Kami membangun salah satu dari lima itu, yaitu Metode 5. Untuk penyapuan di mana seseorang menandatangani angka akurasi publikasi, gunakan Mapflow sebagai gantinya. Ia membawa model Swimming pools khusus, on request, dengan F1 di atas 0.95 di sebelahnya. Kami tidak memublikasikan angka untuk kolam.
Sebelum mulai
Bekerja di CRS proyeksi, karena tiga langkah di bawah memfilter luas dalam unit layer. Lalu cek resolusi. Federasi kolam Prancis menetapkan kolam tanam baru pada 29 sampai 30 m², 3.000 piksel pada ortofoto 10 cm dan sepertiga piksel pada band 10 m Sentinel-2.
Administrasi pajak Prancis menjalankan ini pada foto udara IGN. Pilot Foncier innovant-nya memajaki 20.356 kolam di sembilan departemen untuk 2022, senilai 9,8 juta euro, dan lintasan nasional 2023 menemukan 150.000 kolam kena pajak yang hilang dari daftar. Masing-masing tetap melalui surat ke pemilik.
Metode 1: Tarik kolam yang sudah dipetakan orang
OpenStreetMap membawa 3.036.801 objek bertag leisure=swimming_pool, 2.731.704 di antaranya ways dengan geometri nyata, di taginfo pada 3 September 2026.
Open QuickOSM and query
Vector > QuickOSM > QuickOSM…, yang melakukan query ke Overpass API. Key leisure, value swimming_pool, pada luas kanvas atau area administratif bernama.
Keep polygons, filter to gardens
Kolam yang dipetakan sebagai node tidak punya luas, jadi ambil layer poligon. 1.808.809 kolam ini juga membawa access=private, filter untuk kolam halaman belakang.
leisure=swimming_area adalah objek berbeda: tempat khusus berenang di danau atau laut.

Gunakan saat: Anda butuh kolam publik dan komersial.
Lewati saat: tugasnya menemukan yang tidak pernah dideklarasikan.
Metode 2: Threshold biru di raster calculator
Yang paling dekat dari inti QGIS. Buka Raster > Raster Calculator…, di mana band ditulis sebagai layer_name@band_number. Pada ortofoto RGB ini menyimpan biru terang yang jenuh:
("ortho@3" > 90) AND ("ortho@3" - "ortho@1" > 25) AND ("ortho@3" - "ortho@2" > 10)
Angka itu milik saya, dari ortofoto 20 cm. Sampel dua puluh piksel kolam dan dua puluh piksel atap, lalu geser.
Polygonize dengan Raster > Conversion > Polygonize (Raster to Vector), lalu filter dengan native:extractbyexpression: $area > 6 AND $area < 400 untuk ukuran, dan rasio saya sendiri 4 * pi() * $area / ($perimeter ^ 2) > 0.5 untuk bentuk, karena QGIS tidak membawa fungsi kekompakan.

Nilai RGB bergeser dengan sudut matahari dan eksposur, jadi threshold yang disetel pada satu jalur terbang rusak di jalur berikut. Hue dan saturasi lebih tahan, lewat modul Processing Toolbox i.rgb.his, yang "transforms raster maps from RGB (Red-Green-Blue) color space to HIS (Hue-Intensity-Saturation) color space".
Tidak ada aturan yang tahu benda biru itu apa.
- Bayangan. Lereng atap yang teduh terbaca biru gelap. Naikkan batas bawah dan Anda kehilangan kolam di bawah pohon.
- Atap biru dan terpal. Terang, biru, sering bentuknya pas.
- Kolam dasar gelap dan hijau. Liner hitam terbaca sebagai aspal, alga sebagai rumput. Aturan saya melewatkan keduanya.
- Kolam tertutup. Memang tidak ada di citra sama sekali.

Gunakan saat: satu ortofoto konsisten yang akan Anda cek manual.
Lewati saat: mosaik dari beberapa penerbangan.
Metode 3: Indeks air, pada citra yang punya band-nya
Air menyerap inframerah-dekat hampir total, jadi ia menjadi hitam di NIR sementara atap biru tetap terang.
- NDWI, McFeeters 1996:
(Green - NIR) / (Green + NIR). Pada Sentinel-2,(B3 - B8) / (B3 + B8). - MNDWI, Xu 2006:
(Green - SWIR) / (Green + SWIR). Pada Sentinel-2,(B3 - B11) / (B3 + B11). Menukar NIR dengan SWIR menekan lahan terbangun, intinya di pinggiran kota.
Threshold di atas nol, polygonize, filter seperti pada Metode 2. Rodríguez-Cuenca dan Alonso menyetel Normalized Difference Swimming Pools Index untuk tugas ini pada 2014.
Sentinel-2 memberikan B3 dan B8 di 10 m dan B11 di 20 m, jadi kolam 30 m² tidak pernah lepas dari taman. MNDWI di blok permukiman hanya mengembalikan waduk di pinggir kota dan tidak ada yang lain.

Gunakan saat: ortofoto Anda punya band NIR pada 50 cm atau lebih rinci. Ia mengalahkan warna telak.
Lewati saat: RGB tiga band, atau Sentinel-2 dan Anda menginginkan kolam taman.
Metode 4: Latih klasifier pada citra sendiri
Klasifier mempelajari piksel kolam Anda dari contoh yang Anda gambar, jadi ia tahan terhadap mosaik yang merusak threshold tetap.
Semi-Automatic Classification Plugin oleh Luca Congedo adalah pilihan umum. Buat training input (.scpx) di SCP dock, gambar ROI, lalu jalankan SCP > Band processing > Classification di jendela utama. Enam algoritma, dari Minimum Distance sampai Random Forest. Versi 9.0.4 terbit 11 Juli 2026 tetapi menyatakan minimum QGIS 3.99, jadi QGIS 3.x tetap memasang 8.5.0.
dzetsaka 5.0.11, oleh Nicolas Karasiak, lebih ringan: sebelas klasifier, dan Gaussian Mixture Model-nya berjalan tanpa scikit-learn.
Gambar juga kelas atap-biru dan kelas bayangan. Klasifier hanya menolak yang Anda tunjukkan.

Gunakan saat: beberapa penerbangan atau musim, dan Anda akan memakai ulang alur kerja.
Lewati saat: satu ortofoto, satu lintasan. Keduanya mengklasifikasi piksel, bukan objek, jadi Anda tetap melakukan polygonize dan filter.
Metode 5: Model segmentasi
Model segmentasi membaca bentuk dan konteks, caranya ia membedakan kolam dari terpal dengan warna sama. Kami membangun salah satunya, AI Segmentation. Bagian ini tentang alat kami sendiri.
Install and sign in
Manajer plugin, QGIS 3.22 atau lebih baru. Tanpa GPU, tanpa bobot model. Sebuah akun, jatah gratis, lalu 39 euro per bulan belum termasuk PPN.
Draw a zone, type the word, filter
Ketik swimming pool dan jalankan. Poligon kembali dalam CRS proyek dengan luas, keliling, dan skor confidence. Urutkan, lalu hapus yang salah.
Dua angka dari tabel tuning kami, dibaca saat runtime. Run kolam meminta sekitar 0,13 m per piksel dalam tile maksimal 300 m, karena kolam melebur ke terasnya pada yang lebih kasar. Review terbuka pada confidence 0,20 untuk swimming pool melawan 0,30 untuk building, karena masker kolam skornya lebih rendah daripada atap.

Satu batas: kolam tertutup tidak pernah sampai ke model, jadi ia kembali terlewat. Kedua mode cloud mengirim citra ke server kami di Uni Eropa.

Empat lainnya mengerjakan tugas ini, dibaca 3 September 2026.
| Alat | Yang Anda pasang | GPU | Akun | Citra keluar dari mesin Anda | Dukungan kolam | Biaya |
|---|---|---|---|---|---|---|
| Deepness | Manajer plugin, paket Python-nya, model ONNX | Opsional, CPU jalan | Tidak | Tidak | Model apa pun yang Anda pasok | Gratis |
| Geo-SAM | Manajer plugin, dependensi, bobot model | Opsional | Tidak | Tidak | Satu objek per klik atau kotak | Gratis |
| samgeo | Paket Python, tanpa panel QGIS | Dianjurkan | Tidak | Tidak | Scriptable, tanpa kelas kolam | Gratis |
| Mapflow | Manajer plugin | Tidak | Ya | Ya | Model Swimming pools, on request | Kredit, berbayar |
| AI Segmentation (milik kami) | Manajer plugin | Tidak | Ya | Ya di kedua mode cloud, tidak untuk model lokal | Ketik swimming pool | Jatah gratis, lalu 39 euro per bulan belum termasuk PPN |
Gunakan saat: kolam lebih banyak daripada yang mau Anda digitasi manual.
Lewati saat: citra tidak boleh keluar dari mesin Anda. Gunakan Deepness atau Geo-SAM.
Lima metode bersisian
| Yang Anda punya | Metode |
|---|---|
| Kota terpetakan baik, kolam publik cukup | Metode 1, QuickOSM |
| Satu ortofoto RGB lebih rinci dari 30 cm | Metode 2, threshold warna, lalu filter |
| Ortofoto dengan band NIR | Metode 3, NDWI |
| Sentinel-2 atau apa pun di 10 m | Tidak ada untuk kolam taman. Cari citra lebih rinci |
| Beberapa penerbangan, alur kerja yang akan diulang | Metode 4, SCP atau dzetsaka |
| Ratusan kolam dan tanpa sabar untuk false positive | Metode 5, model segmentasi |
Yang perlu diingat
Resolusi menentukan dulu, lalu band, lalu seberapa banyak cek manual yang bisa Anda serap.
Kolam 30 m² tidak pernah lepas dari tamannya pada 10 m, jadi Sentinel-2 adalah sensor yang salah untuk kolam halaman belakang apa pun indeksnya.
Threshold warna mengembalikan setiap benda biru di blok, jadi filter luas dan kekompakan sebelum Anda melihat hasilnya.
Kolam tertutup hilang dari citra, jadi tidak ada metode di halaman ini yang menemukannya dan tidak ada harga yang mengubah itu.
Deteksi adalah kandidat. Apa pun yang Anda jalankan, buka sepuluh poligon confidence terendah sebelum siapa pun bertindak atas layer itu.
Try it free in QGIS, no card needed
Pertanyaan yang sering ditanyakan
Bisakah QGIS mendeteksi kolam renang sendiri?
Bukan sebagai fitur. Inti QGIS memberi Anda raster calculator, polygonize, dan filter vektor, yaitu Metode 2. Mengenali kolam sebagai objek butuh plugin.
Bisakah saya menemukan kolam halaman belakang di citra Sentinel-2?
Tidak. Green dan NIR adalah band 10 m dan SWIR 20 m, jadi kolam 30 m² adalah sepertiga piksel. Gunakan foto udara pada 30 cm atau lebih baik.
Mengapa atap biru terus kembali sebagai kolam?
Atap logam dicat lebih terang dan lebih biru daripada air kolam, dan aturan warna hanya membaca warna. Filter luas dan kekompakan, pindah ke NDWI, atau gunakan model.
Apakah legal mendeteksi kolam renang dari foto udara?
Gabungkan deteksi ke bidang dan nama pemilik maka ia menjadi data pribadi, yang di UE butuh dasar hukum di bawah GDPR. Administrasi pajak punya dasar yang ditulis dalam undang-undang. Perusahaan swasta biasanya tidak, jadi tanya petugas perlindungan data Anda sebelum join, dan jangan pernah biarkan output model menjadi langkah terakhir sebelum tagihan.
Akurasi seperti apa yang bisa saya harapkan?
Satu angka akan salah, karena ia bergerak dengan citra dan musim Anda. Kolam terbuka pada 20 cm kembali dengan baik, kolam tertutup terlewat oleh semua di sini, dan atap biru adalah yang Anda hapus manual.
Untuk langkah pemfilteran selengkapnya, baca mendeteksi footprint bangunan di QGIS. Untuk pembersihan di balik masker apa pun, raster ke vektor di QGIS. Sisanya ada di QGIS AI hub.
Baca selanjutnyaAI Segmentation QGIS: Panduan Lengkap


