Saya mengalami masalah yang sama dengan yang Anda alami di metode kedua. Saya mengekspor Raster ke Vektor dan mencoba dan menggunakan v.generalise dan saya mendapatkan poligon yang paling halus dengan batas 'langkah' sesekali yang tampaknya tidak terpengaruh oleh algoritma.
Saya menemukan proses yang bekerja untuk tugas saya, tidak yakin apakah ini cara terbaik tetapi saya pikir saya akan membagikannya jika itu membantu Anda.
Yang saya mulai adalah grid ascii dari BoM yang terlihat seperti ini:
Apa yang saya inginkan mirip dengan apa yang diproduksi BoM seperti ini:
Saya dapat mencapai hasil (yang saya senang) dengan menggunakan langkah-langkah berikut.
- Muat kisi (dalam kasus saya Kisi ASCII dari BoM) ke QGIS.
- Direkam ulang menjadi kelas diskrit. (Memproses Toolbox> Rumput> Raster> r.recode)
- Jalankan filter mayoritas untuk 'membersihkan'. (Memproses Toolbox> SAGA> Filter Raster> Filter Mayoritas)
- Membuat kontur dari grid yang difilter pada interval 1, dan menyimpannya dalam atribut 'kelas' (karena kelas saya 1,2,3,4, dll). (Menu 'Raster'> Ekstraksi> Kontur)
- Kontur output agak digeneralisasi, tetapi saya menggunakan v.generalisasi dengan algoritma 'ular' untuk memuluskannya (Memproses Toolbox> Rumput> Vektor> v.generalisasi)
- Saya kemudian mengkonversi garis menjadi poligon. (Pemrosesan Toolbox> QGIS geoalgorithms> Vector Geometry Tools> Lines to Polygons)
- Akhirnya saya harus mengubah satu bagian poligon menjadi beberapa bagian, sehingga semua poligon menarik dengan baik. (Memproses Kotak Alat> geoalgoritma QGIS> Alat Geometri Vektor> Singleparts ke Mulitpart).
Setelah menata keluaran saya di bawah ini:
Saya juga akan tertarik mendengar jika seseorang tahu cara yang lebih sederhana. Awalnya saya berpikir mirip dengan @Rx_ bahwa saya hanya bisa mengubah raster saya ke vektor kemudian menggeneralisasi dan saya akan selesai. Apa yang harus saya lakukan jauh lebih lama.