Cara Georeferensi Peta atau Gambar di QGIS
Published

Untuk melakukan georeferensi peta atau gambar di QGIS, buka Layer > Georeferencer, muat hasil pindaian dengan Open Raster, klik setidaknya empat titik yang bisa Anda kenali dan ketik koordinat aslinya, pilih Polynomial 1 dan CRS target yang terproyeksi di Transformation Settings, lalu tekan Start Georeferencing. QGIS menulis GeoTIFF dan menambahkannya ke proyek Anda.
Menempatkan titik adalah bagian yang mudah. Bagian yang dilewatkan kebanyakan tutorial adalah menilai hasilnya, karena angka yang ditampilkan QGIS bisa nol pada peta yang meleset ratusan meter. Saya melakukan georeferensi pada peta USGS San Francisco tahun 1947 dan mengukur setiap hasil terhadap titik-titik yang tidak pernah dilihat pencocokan yang saya buat. Angka-angka di bawah ini berasal dari pengujian itu.
Jawaban singkat
| Input Anda | Metode | Waktu atau biaya |
|---|---|---|
| Pindaian dengan koordinat tercetak di atasnya (graticule, tanda grid, nilai sudut) | Metode 1, ketik nilai tercetak | Gratis. 8 titik, lalu warp 34 detik pada pindaian 6.888 x 8.933 piksel |
| Pindaian tanpa koordinat, atau foto peta | Metode 1, From Map Canvas pada basemap | Gratis. Siapkan 10 titik atau lebih |
| GeoPDF dari USGS atau instansi lain | Buka langsung, posisinya sudah benar | Gratis, nol titik |
| Titik sudah dibaca, dan Anda ingin pencocokannya diperiksa otomatis | Metode 2, agen AI | 1 pesan, 99 detik dalam pengujian saya |
| Overlay visual cepat, tanpa butuh akurasi | Metode 3, plugin Freehand raster georeferencer | Plugin gratis |
Sebelum memulai
Anda memerlukan QGIS 3.26 atau lebih baru, yang menaruh Georeferencer di menu Layer. Saya memakai QGIS 3.44.7. Tutorial yang lebih lama mengarahkan Anda ke Raster > Georeferencer, tempat fitur itu berada sebelumnya, sebagai plugin GDAL Georeferencer.
Baca bagian tepi (collar) peta sebelum mengklik apa pun. Bagian itu memberi tahu tiga hal yang akan Anda ketik nanti: sistem koordinat dari nilai tercetak, datum, dan skala. Contoh saya adalah lembar (quadrangle) USGS San Francisco North, CA tahun 1947, pada skala 1:24.000, yang bisa diunduh siapa saja dari topoView. Bagian tepinya bertuliskan "Polyconic projection. 1927 North American datum", dan sudut-sudutnya memuat lintang dan bujur setiap 7'30". Peta sejarah USGS adalah domain publik.
Agar pengujiannya jujur, saya mengambil GeoTIFF USGS sendiri untuk lembar itu dan menghapus georeferensinya, sehingga yang saya muat ke QGIS adalah JPEG polos 9,2 MB berukuran 6.888 x 8.933 piksel. Itu kira-kira 300 dpi, atau 2,03 m di lapangan per piksel. Georeferensi USGS tetap di samping sebagai kunci jawaban.
Di mana sumber-sumber di web keliru
"Semakin rendah RMSE, semakin baik hasilnya." Tidak dengan thin plate spline. Transformasi itu membengkokkan gambar sampai melewati tepat setiap titik, sehingga residualnya selalu nol. Saya sengaja salah mengetik satu lintang, 37°47' alih-alih 37°47'30", lalu menjalankan kedua transformasi pada delapan titik yang sama. Polynomial 1 menunjukkan RMSE 297 m dan menumpukan 762 m di antaranya pada titik yang salah itu. Thin plate spline menunjukkan 0,00 m, dan peta meleset hingga 594 m pada titik yang tidak pernah diberikan padanya.
"Masukkan koordinat dalam WGS 84." Nilai tercetak pada peta AS yang lebih tua sering berupa NAD27, dan bagian tepi peta menyebutkan itu. Di San Francisco, lintang dan bujur yang sama dalam NAD27 dan dalam WGS 84 terpisah 93 m, 92 m di antaranya dari timur ke barat. Jika Anda mengetiknya sebagai EPSG:4326, seluruh lembar akan mendarat satu blok lebih jauh, dengan residual yang tampak sempurna, karena setiap titik bergeser bersama. Di dialog Enter Map Coordinates, atur CRS titik-titiknya sesuai yang disebut bagian tepi peta: EPSG:4267 untuk NAD27.
"Biarkan CRS target dalam satuan derajat." Boleh saja, tetapi penyesuaian affine datar dalam lintang dan bujur tidak cocok dengan cara peta terproyeksi digambar. Dengan delapan titik yang sama, Polynomial 1 menghasilkan RMSE 2,98 m dengan EPSG:4267 sebagai target, dan 0,72 m dengan NAD27 / UTM zone 10N (EPSG:26710). Pilih CRS terproyeksi pada datum peta, dan pencocokan itu juga terbaca dalam meter.
Metode 1: Georeferencer QGIS
Ini adalah alat bawaan dan yang pertama harus dipelajari. Alat ini bekerja untuk pindaian dengan koordinat tercetak maupun tanpa koordinat.
Buka pindaian
Layer > Georeferencer, lalu File > Open Raster dan pilih gambarnya. JPEG, PNG, dan TIFF semuanya bisa.
Tambahkan titik kontrol
Klik Add GCP Point, perbesar, lalu klik titik yang bisa Anda kenali dengan pasti: sudut bingkai peta, persilangan graticule, tanda grid. Dialog Enter Map Coordinates terbuka. Ketik koordinat tercetaknya. Dialog ini menerima derajat, menit, dan detik dengan spasi (-122 25 0), derajat desimal, atau meter terproyeksi. Atur CRS di bawah kolom tersebut ke yang disebut bagian tepi peta.
Atau ambil koordinat dari kanvas peta
Jika pindaian tidak memiliki koordinat, muat basemap di jendela utama QGIS terlebih dahulu (panduan basemap berisi langkah kliknya), lalu tekan From Map Canvas dan klik titik yang sama di sana. QGIS mengisi koordinat dan CRS untuk Anda.
Sebarkan titik-titiknya
Letakkan satu di dekat setiap sudut dan beberapa di tengah. Titik yang mengumpul di satu area hanya menyesuaikan area itu dan membiarkan bagian lembar lainnya bergeser. Saya memakai empat sudut bingkai peta dan empat persilangan graticule di dalamnya.

Setiap titik yang Anda tambahkan tersimpan dalam file .points di sebelah gambar. Simpan file itu: Georeferencer memuatnya sendiri saat Anda membuka pindaian yang sama berikutnya, dan Anda bisa memperbaiki satu titik alih-alih memulai dari awal.
Pilih transformasi
Settings > Transformation Settings berisi pilihan yang paling menentukan. Manual QGIS 3.44 mencantumkan tujuh transformasi, dengan jumlah titik minimum berikut:
| Transformasi | Titik minimum | Gunakan untuk |
|---|---|---|
| Linear | 2 | Pindaian bersih yang hanya butuh pergeseran dan skala. Menulis world file, tanpa warp |
| Helmert | 2 | Sama seperti di atas ditambah rotasi |
| Polynomial 1 | 3 | Kebanyakan pindaian datar dari peta tercetak. Garis lurus tetap lurus |
| Projective | 4 | Foto peta yang diambil dari sudut miring |
| Polynomial 2 | 6 | Lembar yang menggulung atau melengkung. Mendistorsi tepi di luar titik Anda |
| Polynomial 3 | 10 | Sama, lebih kuat. Jarang sepadan |
| Thin plate spline | 10 menurut manual | Peta yang rusak atau digambar tangan dengan banyak titik. Menyembunyikan kesalahan, lihat di atas |
Aturan saya: mulai dengan Polynomial 1. Pindah ke transformasi yang lebih fleksibel hanya jika residualnya menunjukkan pola, seperti semua titik di satu sisi tertarik ke arah yang sama, dan jangan pernah hanya karena angka yang lebih tinggi terlihat lebih buruk.

Dua pengaturan pada dialog itu menyelamatkan Anda dari masalah di kemudian hari. Resampling method mengubah tampilan piksel hasil warp: nearest neighbour mempertahankan warna asli, cubic lebih enak dibaca pada pindaian. Selain itu, keluaran tidak terkompresi secara bawaan: JPEG 9,2 MB saya menjadi GeoTIFF 187 MB. Buka Raster creation options dan pilih profil kompresi jika file akan dipindahkan.
Baca residualnya
Setelah Anda memiliki lebih banyak titik daripada yang dibutuhkan transformasi, QGIS menampilkan residual setiap titik di tabel GCP dan galat rata-rata di status bar, keduanya dalam piksel untuk pindaian tanpa koordinat.

Untuk menilai angka dalam piksel, ubah ke meter dan bandingkan dengan yang bisa dijamin peta itu sendiri.
- Meter per piksel. Kalikan penyebut skala dengan ukuran satu piksel pindaian. Pada 300 dpi satu piksel adalah 0,0847 mm, jadi pada peta 1:24.000 satu piksel mencakup 2,03 m. 0,447 piksel saya berarti 0,9 m.
- Apa yang bisa dijanjikan peta. US National Map Accuracy Standards mensyaratkan 90 persen titik yang terdefinisi dengan baik pada lembar 1:24.000 berada dalam 1/50 inci, yang oleh USGS disebut 12,2 m. Aturan praktis yang lebih ketat adalah lebar garis yang digambar, 0,2 mm di atas lembar, yang setara 4,8 m pada 1:24.000.
- Titik yang tidak pernah dilihat pencocokan. Residual hanya mengatakan bahwa titik-titik saling sepakat. Saya mengeluarkan delapan tanda graticule di sepanjang tepi dari pencocokan dan mengukur di mana hasilnya menempatkannya: meleset rata-rata 1,0 m, paling parah 1,6 m.
Jadi georeferensi menambah galat sekitar satu meter pada peta yang hanya menjanjikan 12 m. Pada lembar lama, hampir selalu peta yang menjadi batasnya, bukan klik Anda.
Start Georeferencing kemudian menulis GeoTIFF dalam 34 detik dan menambahkannya ke proyek. Di atas OpenStreetMap, jalan-jalan tahun 1947 menimpa persis di atas jalan hari ini:


Gunakan saat: Anda ingin hasil yang bisa dipertanggungjawabkan, dengan residual, file .points, dan GeoTIFF yang bisa dibaca GIS mana pun.
Lewati saat: Anda hanya butuh latar belakang kasar selama beberapa menit. Metode 3 lebih cepat untuk itu.
Metode 2: Titik kontrol diperiksa agen AI
Kami mengembangkan AI Agent, plugin QGIS gratis dengan panel obrolan yang menjalankan langkah-langkah di proyek terbuka Anda. Bagian ini tentang alat kami sendiri. Alat ini memiliki fitur georeferensi yang menerima titik kontrol sebagai pasangan piksel dan koordinat, menyesuaikan salah satu transformasi Georeferencer melalui GDAL, dan mengembalikan residual setiap titik dalam meter yang dinilai terhadap skala peta.
Alat ini juga bisa menempatkan pindaian tanpa titik sama sekali, dengan membaca nama tempatnya dan mencocokkannya dengan peta referensi: peta lama Edinburgh dalam panduan AI Agent mendarat dengan galat median 5,9 m. Cara itu butuh nama yang bisa dibaca, dan lembar yang sangat tua sering gagal. Untuk peta dengan graticule tercetak, titik adalah rute yang lebih pasti, dan membacanya cepat: gambar tanpa koordinat duduk di QGIS dengan kolom piksel sebagai x dan minus baris sebagai y, sehingga status bar menampilkan piksel di bawah kursor Anda. Saya memuat pindaian, mempertahankan salah ketik dari pengujian di atas pada titik 8, dan mengirim satu pesan:
Lakukan georeferensi pada layer sf-north-1947-scan. Ini adalah lembar USGS San Francisco North dari tahun 1947, skala 1:24.000, koordinat dalam NAD27. Saya membaca titik kontrol berikut pada pindaian (kolom piksel, baris → lintang, bujur): 1. 1022, 792 → 37°52'30"N, 122°30'W (sudut barat laut) [...] 8. 4632, 5344 → 37°47'N, 122°25'W. Apakah hasilnya cukup akurat untuk peta skala 1:24.000?
Prosesnya memakan waktu 99 detik, ditampilkan di panel sebagai 14 tindakan. Agen membaca layer, menyesuaikan kedelapan titik dalam Python untuk memeriksanya, menemukan bahwa titik 8 berada 925 m dari posisi yang ditunjukkan barisnya, mengeluarkannya, dan menulis GeoTIFF dari tujuh titik lainnya dalam NAD27 / UTM zone 10N.
Ia bertanya sekali, sebelum menjalankan pemeriksaan Python-nya sendiri. Jawabannya memberikan RMSE 0,73 m dengan maksimum 0,95 m terhadap toleransi 4,8 m, dan menambahkan bahwa ini mengukur kesepakatan antar titik, bukan akurasi mutlak peta.

Saya memeriksa GeoTIFF-nya dengan cara yang sama seperti punya saya, pada delapan tanda tepi yang tidak pernah dilihatnya: meleset rata-rata 1,0 m, paling parah 1,6 m, sama seperti Georeferencer. Bedanya adalah salah ketik itu. Di Georeferencer saya harus menemukannya sendiri di kolom residual, dan dengan thin plate spline saya tidak akan menemukannya sama sekali.
Ia juga meninggalkan titik-titiknya sebagai file .points di sebelah keluaran, sehingga pencocokan yang sama bisa dibuka di Georeferencer jika Anda ingin memindahkan satu titik dengan tangan. Setiap pesan meninggalkan checkpoint di panel, dan satu klik membatalkan seluruh proses. Paket gratis memiliki 10 pesan per bulan tanpa API key dan tanpa kartu.
Gunakan saat: Anda sudah memiliki titik dan ingin pencocokan, pemeriksaan outlier, dan penilaian akhir dalam satu langkah, atau Anda melakukan georeferensi banyak lembar sekaligus.
Lewati saat: peta tidak memiliki nama tempat yang terbaca maupun titik yang bisa Anda baca, seperti sketsa yang digambar tangan. Menempatkan titik secara manual dengan Metode 1 adalah satu-satunya jalan saat itu.
Metode 3: Overlay manual dengan plugin
Plugin Freehand raster georeferencer, versi 0.8.3 saat saya membaca dokumentasinya, memungkinkan Anda menjatuhkan gambar di atas peta lalu menggeser, memutar, dan menskalakannya dengan tangan sampai sejajar, seperti yang Anda lakukan di Google Earth. Hasilnya langsung tampil di atas layer-layer Anda yang lain, dan plugin mengekspor gambar beserta world file setelah selesai.
README-nya jelas tentang keterbatasannya: hanya transformasi affine, tanpa rubber sheeting, tanpa residual, dan hanya file BMP, JPEG, PNG, dan TIFF. Anda tidak mendapat angka yang memberi tahu seberapa jauh melesetnya.
Gunakan saat: Anda perlu menaruh denah pindaian secara kasar untuk menelusuri beberapa fitur atau menunjukkan kepada klien di mana lokasi suatu hal dulu.
Lewati saat: ada yang akan mengukur pada hasilnya. Gunakan Metode 1.
Yang perlu diingat
- Di QGIS 3.26 dan yang lebih baru, alatnya ada di
Layer > Georeferencer. Mulailah dengan empat titik yang tersebar baik, Polynomial 1, dan CRS target terproyeksi pada datum peta itu sendiri. - RMSE nol tidak membuktikan apa pun: thin plate spline selalu mencapainya, dan dalam pengujian saya, ia melakukannya pada peta yang meleset 594 m.
- Ubah residual ke meter (piksel x ukuran lapangan satu piksel) dan bandingkan dengan yang dijanjikan peta, 12,2 m untuk lembar USGS 1:24.000.
- Periksa hasilnya pada titik yang Anda keluarkan dari pencocokan. Punya saya meleset rata-rata 1,0 m pada lembar San Francisco 1947.
- Ketik titik-titik dalam datum yang disebut bagian tepi peta. NAD27 berjarak 93 m dari WGS 84 di San Francisco, jadi lembar USGS 1947 memakai EPSG:4267.
Pertanyaan yang sering diajukan
Di mana Georeferencer di QGIS?
Di QGIS 3.26 dan yang lebih baru, ia berada di bawah Layer > Georeferencer. Di versi lama, ia berada di Raster > Georeferencer, disediakan oleh plugin GDAL Georeferencer, yang harus diaktifkan di pengelola plugin. Jika tidak ada menu yang menampilkannya, mungkin sebuah plugin atau profil kustomisasi telah mengubah menu Anda.
Berapa banyak titik kontrol yang saya butuhkan?
Minimumnya 2 untuk Linear dan Helmert, 3 untuk Polynomial 1, 4 untuk Projective, 6 untuk Polynomial 2, dan 10 untuk Polynomial 3, dan manual QGIS meminta 10 atau lebih untuk thin plate spline. Dalam praktik, gunakan sekitar dua kali minimum, sebar ke sudut-sudut, dan sisihkan beberapa lagi sebagai titik pemeriksaan. Saya memakai 8 untuk Polynomial 1 dan 8 lagi untuk memeriksa.
Polynomial, Helmert, atau thin plate spline: mana yang mana?
Helmert untuk pindaian bersih dan datar yang hanya butuh rotasi dan penskalaan. Polynomial 1 untuk hampir semua peta tercetak, karena ia juga menyerap sedikit geseran (shear) dari pemindai. Thin plate spline hanya untuk peta yang rusak atau digambar tangan dengan banyak titik bagus, lalu periksa pada titik yang tidak Anda pakai, karena residualnya selalu nol.
Berapa RMSE yang baik?
RMSE yang kecil dibandingkan dengan yang bisa dijamin peta. Ubah ke meter dan bandingkan dengan 0,2 mm dikali penyebut skala (4,8 m pada 1:24.000) atau dengan standar resmi peta (12,2 m untuk lembar USGS 1:24.000). Di bawah satu piksel pada pindaian bersih adalah wajar. Satu titik dengan residual jauh di atas yang lain biasanya salah ketik atau salah klik, bukan peta yang buruk.
Bagaimana cara melakukan georeferensi pada PDF?
Pertama periksa apakah PDF itu sudah tergeoreferensi. Peta topografi USGS dan banyak denah instansi berupa GeoPDF, dan QGIS membukanya langsung pada posisi yang tepat: PDF San Francisco 1947 termuat dengan koordinatnya dan tanpa titik kontrol, dirender oleh GDAL pada 150 dpi kecuali Anda menyetel GDAL_PDF_DPI lebih tinggi. PDF biasa tidak memiliki koordinat: ekspor halamannya ke PNG atau TIFF pada 300 dpi, lalu gunakan Metode 1.
Bagaimana cara melakukan georeferensi pada peta tanpa koordinat?
Gunakan fitur yang tidak berubah sejak peta digambar, seperti persimpangan jalan, jembatan, gereja, dan sudut garis pantai, lalu ambil koordinatnya dengan From Map Canvas pada basemap atau pada orthofoto nasional Anda. Sebarkan 10 atau lebih di seluruh lembar. Perkirakan residual yang lebih besar daripada dengan grid tercetak, karena peta lama dan dunia hari ini tidak lagi sejalan di semua tempat.
Pusat AI QGIS mengumpulkan apa yang bisa dan tidak bisa dilakukan AI di dalam QGIS, dan panduan AI Agent mencakup sisa plugin tersebut. Setelah peta lama terpasang pada posisinya, Anda bisa mengunduh data OpenStreetMap untuk membandingkannya dengan jalan hari ini, mengambil citra Sentinel-2 untuk area yang sama, atau mengubah pindaian menjadi vektor.
, buka 

