Cara menemukan daerah aliran sungai untuk setiap titik di jaringan sungai menggunakan DEM?

8

Perbarui # 1: Terima kasih, Micha, saya telah mengikuti instruksi Anda dan berhasil menggunakan modul dalam GRASS.

Saya menggunakan r.watershed untuk mendapatkan raster baskom dan garis drainase : masukkan deskripsi gambar di sini

dan saya menggunakan r.water.outlet untuk mendapatkan daerah aliran sungai dari satu outlet : masukkan deskripsi gambar di sini

Saya mendapatkan seluruh area cekungan dari titik outlet hijau, tetapi yang saya inginkan adalah bagian kecil dari area cekungan asli, seperti ini : bagian B adalah yang saya inginkan masukkan deskripsi gambar di sini

Foto skematik ini menunjukkan gagasan tentang apa yang saya inginkan: masukkan deskripsi gambar di sini

Dapatkah saya mencapai tujuan ini menggunakan r.water.outlet atau modul lain dalam GRASS? Atau yang bisa saya lakukan adalah menggunakan alat intersect di alat Geoprocessing di QGIS?


Sebagai judul, saya ingin mencari daerah aliran sungai, tetapi menggunakan QGIS.

Saya memiliki beberapa file berikut untuk dikerjakan:

  1. stream shapefile jaringan (polyline)
  2. titik shapefile terpotong dari polyline shapefile
  3. seluruh pulau (aliran ada di dalam pulau) DEM (Saya punya 2 jenis: .lan & .tiff)

Saya ingin menemukan total daerah aliran sungai yang terletak di bagian hulu dari setiap titik dalam jaringan, inilah diagram skematiknya: masukkan deskripsi gambar di sini

garis hijau, merah, dan kuning melampirkan daerah aliran sungai dari setiap titik (di sini saya hanya mengambil 3 poin sebagai contoh), dan saya ingin menghitung luasnya.

Saya sudah mendapatkan file DEM, dan saya harus memotong wilayah yang berisi alirannya, haruskah saya membuat poligon terlebih dahulu? Dapatkah saya langsung menggunakan formulir ini (.lan atau .tiff) untuk bekerja dengan GRASS?

Heinz
sumber

Jawaban:

3

Anda pasti akan membutuhkan elevasi raster (DEM) untuk melakukan apa yang Anda inginkan. Dengan DEM Anda dapat menggunakan dua modul GRASS untuk mendapatkan masing-masing area drainase untuk titik-titik di sepanjang jaringan sungai sebagai berikut: Pertama, hitung kisi arah aliran dari DEM dengan r.watershed:

r.watershed elev=DEM thresh=<your threshold> drain=flow_dir_grid

Lihat manual r.watershed untuk perincian lebih lanjut. Loop berikutnya melalui nilai-nilai XY dari titik-titik di sepanjang jaringan sungai untuk menghitung setiap DAS dengan modul r.water.outlet.

r.water.outlet drain=flow_dir_grid basin=basin1 easting=X1 northing=Y1

Detail di halaman manu r.water.outlet

Untuk melakukan perulangan, Anda mungkin bisa mendapatkan beberapa gagasan dalam posting ini

Micha
sumber
sekarang saya menggunakan r.watershed dan mengalami masalah ini :gis.stackexchange.com/questions/83795/…
Heinz
1
Sepertinya, dari kesalahan yang Anda tautkan, Anda mencoba menggunakan format tif secara langsung. Itu bukan cara kerja GRASS. Anda pertama-tama mengimpor tiff raster ke GRASS menggunakan modul r.in.gdal. Kemudian gunakan raster GRASS dalam perintah r.watershed.
Micha
Terima kasih lagi! Tapi saya dulu menggunakan GRASS dalam bentuk gui di sextante toolbox di bawah antarmuka QGIS, dan saya tidak bisa menemukan modul r.in.gdal di toolbox, bagaimana saya bisa berhasil menggunakan r.watersheds?
Heinz
sekarang saya terjebak dalam masalah posting ini :gis.stackexchange.com/questions/84456/… , bisakah Anda memberi saran? Terima kasih!
Heinz
1
Perintah r.watershed membutuhkan setidaknya dua parameter input: raster DEM (sebagai peta GRASS) dan ambang (integer). Anda juga menentukan setidaknya satu (mungkin lebih) parameter keluaran: akumulasi aliran, arah drainase, bak dan aliran. Anda menentukannya di GUI atau di baris perintah. Bisakah saya menyarankan Anda melihat halaman manual GRASS?
Micha