QGIS

**QGIS** (sebelumnya dikenal sebagai **Quantum GIS**) adalah aplikasi sistem informasi geografis (GIS) desktop sumber terbuka dan bebas lintas platform yang menyediakan tampilan, penyuntingan, dan analisis data geospasial dalam berbagai format. QGIS dapat digunakan di berbagai sistem operasi, termasuk Linux, macOS, dan Windows.

## Fungsi dan kegunaan

* **Mengelola data spasial:** Memungkinkan pengguna untuk mengelola data vektor dan raster. Data vektor dapat berupa titik, garis, dan poligon, sedangkan data raster dapat berupa gambar satelit atau foto udara.
* **Analisis geospasial:** Memiliki fitur yang canggih untuk analisis spasial, seperti membuat model, menganalisis jaringan, dan melakukan perhitungan spasial lainnya.
* **Visualisasi dan pemetaan:** Berfungsi untuk membuat peta yang dinamis, menarik, dan informatif. Peta yang sudah dibuat dapat diekspor dalam berbagai format.
* **Fleksibilitas:** Mendukung berbagai format data geospasial yang sering digunakan, seperti Shapefile (.shp), GeoTIFF, dan CSV.
* **Sumber terbuka:** Karena bersifat *open source*, QGIS terus dikembangkan oleh komunitas kontributor di seluruh dunia. Pengguna dapat menambah fungsionalitasnya dengan menginstal berbagai plugin tambahan. 

## Sejarah
Sejarah QGIS dimulai pada tahun 2002 sebagai proyek kecil yang dikembangkan oleh Gary Sherman untuk menampilkan data PostGIS di Linux. Awalnya, perangkat lunak ini dikenal dengan nama **Quantum GIS**.

Berikut adalah garis besar perkembangan sejarah QGIS:

* **Awal 2002:** Gary Sherman memulai pengembangan Quantum GIS sebagai proyek hobi pribadi. Ia menggunakan bahasa pemrograman C++ dan *toolkit* Qt untuk membuat antarmuka pengguna.
* **Mei–Juni 2002:** Proyek ini resmi dimulai dan *hosting* di SourceForge pada Juni. Tujuannya adalah menyediakan perangkat lunak GIS yang terjangkau bagi siapa pun yang memiliki komputer pribadi.
* **Juli 2002:** Rilis pertama, yang masih sangat sederhana dan hanya bisa menampilkan data PostGIS.
* **2007:** Proyek ini menjadi bagian dari ''Open Source Geospatial Foundation'' (OSGeo), sebuah yayasan yang mendukung pengembangan perangkat lunak geospasial sumber terbuka.
* **Januari 2009:** Versi 1.0 dirilis, menandai pencapaian penting dalam perkembangannya.
* **2013:** Seiring dengan rilis versi 2.0, nama "Quantum GIS" secara resmi diubah menjadi "QGIS" untuk menghindari kebingungan karena kedua nama tersebut sering digunakan secara bersamaan.
* **Pengembangan Berlanjut:** QGIS terus mengalami pembaruan dan peningkatan berkat kontribusi komunitas pengembang dan pengguna yang berdedikasi. Fitur-fitur baru terus ditambahkan, menjadikannya salah satu perangkat lunak GIS sumber terbuka yang paling populer. 

## Plugin
Beberapa plugin yang paling banyak diunduh dan digunakan oleh pengguna QGIS umumnya berfokus pada fungsionalitas inti, seperti menambahkan peta dasar, mengunduh data, dan alat digitasi. Berdasarkan data dari repositori resmi plugin QGIS, berikut adalah beberapa plugin yang sangat populer dan sering digunakan:

### QuickMapServices
**Fungsi:** Menyediakan akses mudah ke berbagai peta dasar (*basemap*) dari penyedia yang berbeda. Memungkinkan pengguna untuk dengan cepat menambahkan peta latar belakang seperti OpenStreetMap, Google Satellite, atau peta lainnya tanpa harus mengonfigurasi koneksi secara manual.

### QuickOSM
**Fungsi:** Mengunduh data dari OpenStreetMap dengan cepat untuk area yang diinginkan. Berguna bagi pengguna yang membutuhkan data vektor spesifik dari OSM, seperti jalan, bangunan, atau area tertentu. 

### QFieldSync
**Fungsi:** Mensinkronkan proyek QGIS dengan aplikasi QField, sebuah aplikasi mobile untuk survei lapangan. Mempermudah alur kerja bagi pengguna yang melakukan survei atau pengumpulan data di lapangan menggunakan perangkat seluler. 

### Shape Tools
**Fungsi:** Menambahkan berbagai alat yang berguna untuk mengedit dan memanipulasi bentuk fitur vektor. Menyediakan fitur tambahan yang melengkapi alat digitasi bawaan QGIS, sehingga meningkatkan efisiensi saat bekerja dengan data vektor. 

### Digitizing Tools
**Fungsi:** Serangkaian alat tambahan untuk membantu proses digitasi (menggambar fitur) dengan lebih efisien. Mirip dengan *Shape Tools*, plugin ini memberikan kemampuan ekstra untuk mempercepat dan menyederhanakan proses digitalisasi data geografis.
### Point sampling tool
**Fungsi:** Mengekstrak nilai dari lapisan raster atau medan digital ke titik-titik sampel. Digunakan untuk analisis yang melibatkan ekstraksi data dari model elevasi atau citra satelit ke lapisan titik. 

### Freehand raster georeferencer
**Fungsi:** Memungkinkan pengguna melakukan georeferencing (menambahkan informasi spasial) pada citra raster dengan metode gambar tangan. Menyediakan cara yang fleksibel untuk menempatkan peta atau citra yang tidak memiliki referensi spasial ke posisi geografis yang tepat. 

## Integrasi Python
Meskipun inti QGIS dibangun dengan bahasa pemrograman C++, Python bertindak sebagai lapisan yang memungkinkan pengguna untuk menyesuaikan, memperluas, dan mengotomatisasi fungsionalitas QGIS secara programatis. Hubungan ini dikenal sebagai **PyQGIS**.

### Cara Python berintegrasi dengan QGIS
* **PyQGIS API**: QGIS menyediakan *[[Antarmuka pemrograman aplikasi|Application Programming Interface]]* (API) Python yang kaya, disebut PyQGIS, yang mencakup hampir semua operasi yang dapat dilakukan melalui antarmuka grafis QGIS. API ini berfungsi sebagai "pembungkus" untuk API C++ QGIS, membuatnya dapat diakses dengan mudah oleh kode Python.
* **Konsol Python Bawaan**: QGIS dilengkapi dengan konsol Python interaktif yang memungkinkan pengguna menjalankan perintah Python secara langsung. Ini sangat berguna untuk melakukan pemrosesan data cepat, eksperimen skrip, dan *debugging*.
* **Plugin Python**: Sebagian besar plugin QGIS, termasuk yang paling populer, dikembangkan menggunakan Python. Dengan PyQGIS, pengembang dapat membuat alat kustom yang terintegrasi secara mudah ke dalam antarmuka QGIS.
* **Otomatisasi Alur Kerja (Scripting)**: Python memungkinkan pengguna untuk mengotomatisasi tugas-tugas GIS yang berulang. Alih-alih melakukan langkah-langkah secara manual, pengguna dapat menulis skrip Python untuk menjalankan proses seperti pembersihan data, analisis spasial, dan pembuatan peta.
* **Kerangka Kerja Pemrosesan (Processing Framework)**: Pengguna dapat menulis skrip Python yang berfungsi sebagai algoritma pemrosesan. Skrip ini dapat diakses melalui kotak peralatan pemrosesan QGIS, sehingga bisa digabungkan dalam model grafis atau dijalankan dalam mode *batch*.
* **Aplikasi Mandiri**: Selain skrip di dalam QGIS, PyQGIS juga memungkinkan pengembang untuk membuat aplikasi mandiri (stand-alone) yang menggunakan komponen QGIS, seperti jendela peta atau *backend* data.
* **Integrasi dengan Pustaka Lain**: Python dalam QGIS dapat diintegrasikan dengan pustaka Python populer lainnya seperti *geopandas*, *shapely*, dan *rasterio* untuk memperluas kemampuan analisis dan manipulasi data geospasial. 

## Fitur Kecerdasan Buatan (AI)
QGIS tidak menyertakan fitur kecerdasan buatan (*Artificial IntelligenceI*) dan pembelajaran mesin (*Machine Learning*) secara bawaan dalam perangkat lunak intinya. Namun, fungsionalitas ini dapat ditambahkan dan diakses melalui sistem *plugin* dan integrasi dengan skrip Python. Ini memungkinkan pengguna untuk memanfaatkan teknologi AI dan ML tanpa harus menjadi ahli dalam bidang tersebut. Konsep utamanya adalah mengintegrasikan model-model pemelajaran mendalam (*deep learning)* yang sudah dilatih sebelumnya (sering disebut *pre-trained models*) ke dalam alur kerja analisis geospasial di QGIS. Dengan demikian, meskipun tidak terintegrasi secara bawaan, QGIS menawarkan ekosistem yang kuat untuk mengaplikasikan AI dan ML melalui *plugin*, yang memberikan pengguna berbagai alat canggih untuk analisis geospasial.

Terdapat beberapa *plugin* QGIS yang memanfaatkan AI, pemelajaran mesin, atau teknologi sejenis untuk berbagai keperluan analisis geospasial. Plugin-plugin ini berfokus pada tugas yang berbeda, dari klasifikasi citra hingga vektorisasi otomatis.

### Plugin untuk pemelajaran mendalam (''deep learning'')
**Deepness**: Plugin ini merupakan plugin dengan model terlatih (*Pre-trained Models*) sehingga pengguna sudah tidak perlu melatih model *deep learning* dari nol, yang membutuhkan daya komputasi tinggi dan data pelatihan yang besar. Sebaliknya, plugin seperti Deepness menyediakan "*Model Zoo*", yaitu repositori berisi model-model yang sudah dilatih oleh pengembang untuk berbagai tugas, seperti:

* **Segmentasi citra**: Mengklasifikasikan setiap piksel dalam citra satelit atau foto udara untuk mengidentifikasi objek tertentu (misalnya, bangunan, jalan, tutupan lahan).
* **Deteksi objek**: Mengidentifikasi dan membuat kotak pembatas (*bounding box*) di sekitar objek tertentu (misalnya, mobil, pesawat) dalam citra.

Setelah plugin diinstal, pengguna dapat mengunduh model yang diperlukan dari Model Zoo ke dalam lingkungan QGIS. Plugin akan secara otomatis mengelola semua dependensi yang diperlukan agar model tersebut dapat berjalan. Pengguna kemudian memasukkan data raster, seperti citra satelit atau foto udara, sebagai data masukan. Plugin akan memproses data ini dengan memecahnya menjadi ubin-ubin (*tiles*) kecil dan menerapkan model *deep learning* yang telah dipilih untuk setiap ubin. Model *deep learning* akan melakukan proses inferensi, yaitu menggunakan model yang sudah dilatih untuk membuat prediksi berdasarkan data yang belum pernah dilihat sebelumnya. Hasilnya berupa informasi yang diekstrak dari citra, seperti: 

* Layer vektor yang berisi poligon bangunan yang terdeteksi.
* Layer raster baru yang menunjukkan hasil klasifikasi tutupan lahan.

Hasil dari proses *deep learning* ini kemudian ditampilkan sebagai layer baru di QGIS. Pengguna dapat memvisualisasikannya, menganalisisnya lebih lanjut, atau mengintegrasikannya dengan data spasial lain untuk berbagai tujuan, seperti analisis tata ruang atau pemantauan lingkungan.

Dengan demikian, QGIS menjadi platform yang memfasilitasi penggunaan *deep learning* untuk analisis geospasial dengan menyederhanakan alur kerjanya melalui plugin, sehingga pengguna dapat fokus pada analisis data, bukan pada kompleksitas pemrograman AI.

### Plugin untuk klasifikasi citra

* **Semi-Automatic Classification Plugin (SCP)**: Plugin ini sangat populer untuk analisis citra penginderaan jauh. SCP menyediakan alat yang kuat untuk klasifikasi citra, termasuk teknik *machine learning* dan *deep learning*, serta fitur pra-pemrosesan dan pasca-pemrosesan citra.
* **QLearn**: Plugin ini memungkinkan pengguna untuk melatih model segmentasi *neural network* (arsitektur UNet) dan melakukan prediksi pada data raster. Pengguna dapat melatih model di dalam QGIS tanpa harus meninggalkan aplikasi.
* **Artificial Intelligence Forecasting Remote Sensing (AIRS)**: Plugin ini berfokus pada peramalan deret waktu (time series forecasting) menggunakan model *deep learning*. AIRS menyederhanakan proses pelatihan dan prediksi, serta visualisasi hasilnya.

### Plugin untuk digitasi dan vektorisasi

* **Bunting Labs AI Vectorizer**: Plugin ini menggunakan *machine learning* untuk secara otomatis memvektorisasi garis dan poligon dari peta raster. Alat ini sangat membantu untuk mendigitasi peta-peta lama atau peta yang dipindai dengan lebih cepat.
* **Raster Tracer**: Plugin ini juga membantu proses digitasi secara semi-otomatis. Pengguna dapat mengklik titik awal dan titik akhir pada garis kurva di peta raster, dan plugin ini akan secara otomatis menelusuri garis tersebut.

### Plugin untuk gaya peta

* **AIAMAS - AI-Assisted Map Styler**: Plugin ini menggunakan model bahasa besar (*Large Language Model/LLM*) untuk menyarankan simbol dan warna yang sesuai untuk *layer* vektor. Fitur ini mempercepat proses simbologi, meskipun bukan analisis spasial.

### Plugin asisten AI

* **Kue Plugin**: Plugin ini berfungsi sebagai *chatbot* AI di dalam QGIS yang memungkinkan pengguna berinteraksi dengan QGIS menggunakan perintah bahasa alami (*natural language*). Pengguna dapat meminta plugin ini untuk melakukan tugas seperti memilih fitur, memfilter *layer*, atau menambahkan peta dasar.

## Lihat pula

* ArcGIS
* Google Earth
* Google My Maps
* GRASS GIS (''Geographic Resources Analysis Support System'')
* HEC-HMS & HEC-RAS
* LIDAR (''Light Detection and Ranging'')
* MapServer
* PySheds

## Pranala luar
* 
* Blog QGIS
* QGIS Podcast
* QGIS Blogposts
* QGIS - Map Showcase (Flickr)
* QGIS - Screenshots (Flickr)

## Referensi