Penilaian kesalahan perhitungan dilakukan dengan menggunakan data yang tidak diproyeksikan vs yang diproyeksikan


10

Pertanyaan ini berkembang dari satu dengan baris subjek "Menghitung Arah Aliran dan Mendefinisikan Waduk dari Data yang Diproyeksikan vs Tidak Diproyeksikan.": Menghitung Arah Aliran dan Menggambarkan Waduk dari Data DEM yang Diproyeksikan vs Tidak Diproyeksikan

Namun, ini adalah pertanyaan yang sepenuhnya terpisah, karena pertanyaan yang disebutkan di atas telah menetapkan bahwa ada masalah dengan penggunaan algoritma (misalnya, ArcGIS Flow Direction) yang mengasumsikan jarak Euclidean pada data dalam sistem koordinat geografis bola / tidak diproyeksikan.

Kita tahu bahwa proyeksi peta seperti mengambil kulit jeruk dan mencoba meratakannya di atas meja - Anda akan memiliki beberapa kesalahan yang secara inheren diperkenalkan oleh proyeksi peta. Tetapi, tampaknya manfaat memproyeksikan mengimbangi kesalahan yang terjadi, terutama ketika Anda menjalankan perhitungan yang mengasumsikan permukaan planar Cartesian / yang diproyeksikan. Dalam hal ini, algoritma yang saya minati adalah algoritma ArcGIS Flow Direction yang mengasumsikan bahwa data Anda diproyeksikan (dan ini adalah asumsi yang diambil oleh sebagian besar aplikasi berdasarkan penelitian saya) karena menggunakan pendekatan Euclidean untuk menghitung jarak.

Pertanyaan saya adalah : bagaimana seseorang dapat mengukur kesalahan yang mungkin diperkenalkan dengan menghitung arah aliran di area studi tertentu menggunakan data DEM yang tidak diproyeksikan (data DEM dalam sistem koordinat geografis) vs data yang diproyeksikan (data DEM dalam proyeksi yang sesuai seperti UTM atau sesuatu yang sesuai)?

Memang, Anda dapat memperoleh raster arah aliran menggunakan unprojected dan kemudian data DEM yang sama diproyeksikan. Tapi lalu bagaimana? Karena tujuan kami adalah memodelkan permukaan bumi seakurat yang kami bisa (dan kami tidak mengatasi kesalahan apa pun yang mungkin terjadi dalam proses pembuatan DEM asli dll. - itu adalah konstan sejauh yang saya ketahui) .... apakah kita hanya menganggap data arah aliran yang berasal dari DEM yang diproyeksikan lebih baik, dan kemudian membandingkan nilai-nilai sel individual dari dua raster untuk mengidentifikasi sel mana yang memiliki nilai arah yang berbeda (dalam konteks model D-8 normal) )? Saya kira untuk melakukan ini maka Anda harus mengambil arah aliran raster yang berasal dari data yang tidak diproyeksikan, dan kemudian menerapkan proyeksi yang sama yang digunakan dengan raster arah aliran yang diproyeksikan.

Apa yang paling masuk akal, dan apa yang harus dibandingkan dengan DEM yang tidak diproyeksikan sebagai tolok ukur akurasi?

Masuk ke detail yang diperlukan dari persamaan matematika mungkin, bagi mereka yang memahaminya, memberi Anda bukti di tingkat dasar dan cukup untuk beberapa, tetapi itu juga sesuatu yang bisa menyampaikan kesalahan kepada seseorang yang tidak memiliki informasi. pemahaman mendalam tentang matematika tetapi mungkin hanya tahu cukup geografi / GIS menjadi berbahaya akan menjadi besar (idealnya kedua level akan baik yang akan beresonansi dengan geeks hardcore geek dan pengurai GIS rata-rata). Untuk orang-orang tingkat yang lebih tinggi, mengatakan bahwa buktinya ada dalam matematika mungkin membuatnya agak terbuka untuk argumen - Saya mencari sesuatu yang lebih nyata (misalnya, mirip dengan melampirkan angka dolar untuk semacam inefisiensi dalam pemerintahan).

Setiap pemikiran atau ide tentang bagaimana seseorang dapat mengukur ini akan sangat dihargai.

Tom


1
Saya pikir ini adalah pertanyaan yang menarik, tetapi dalam konteks pemodelan hidrologi tampaknya membatasi pertanyaan Anda menjadi kesalahan dalam perbedaan antara ruang yang diproyeksikan dan yang tidak diproyeksikan terlalu ketat: kesalahan yang diperkenalkan oleh pemilihan algoritma D8 cenderung melebihi bahwa proyeksi. Apakah Anda tertarik pada akurasi dari level tinggi, atau apakah Anda memiliki alasan khusus untuk membatasinya untuk diproyeksikan vs tidak diproyeksikan?
scw

1
@scw Komentar bagus. Perhatikan, bagaimanapun, bahwa kegagalan-ke-proyek kesalahan mulai melebihi kesalahan d8 maksimum (setidaknya untuk beberapa arah aliran) pada garis lintang lebih tinggi dari 40 derajat atau lebih dan biasanya berukuran sebanding (sebagai perubahan sudut aliran) . Dengan demikian, kesalahan proyeksi dan kesalahan d8 sama-sama layak mendapat perhatian. Selanjutnya, kesalahan d8 (semacam) rata-rata keluar di semua arah, tetapi kesalahan proyeksi menciptakan bias sistematis. Dengan demikian kesalahan proyeksi bisa dibilang lebih buruk - mungkin jauh lebih buruk - daripada kesalahan d8 di hampir semua lintang.
whuber

1
Terima kasih atas komentarnya - Saya mengerti apa yang Anda katakan: D8 dan masalah dengan itu, tetapi dorongan asli untuk seluruh diskusi ini (dan posting sebelumnya yang terkait bertanya apakah lebih baik untuk memproyeksikan atau tidak memproyeksikan) semata-mata berfokus pada pertanyaan itu : apakah lebih baik memproyeksikan data Anda, atau tidak masalah? Itu sebabnya pertanyaan ini hanya berfokus pada aspek itu karena memiliki implikasi praktis untuk tim saya dan alat umum yang kami gunakan untuk melakukan pekerjaan kami.
turkishgold

Terima kasih atas pertanyaan ini dan sebelumnya. Sangat penting untuk memiliki diskusi teori / prinsip-dasar yang merupakan perangkat lunak agnostik serta "bagaimana saya bisa membuat program-x lakukan y?" . Saya hanya berharap saya lebih mampu memahami kedalaman dan detail mereka. ;-)
matt wilkie

@matt wilkie- terima kasih atas komentarnya dan saya setuju ... penting untuk memahami hal-hal seperti ini. Paket GUI seperti ArcGIS dengan "pengaturan default" pada alat dan alat kotak hitam membuat semuanya menjadi mudah untuk hanya mengklik dan menjalankan dan tidak peduli dengan detailnya. Karena itu, mengapa saya butuh waktu lama untuk mendapatkan jawaban terperinci yang saya butuhkan tentang topik ini. Sebagai profesional, kita perlu memahami apa HECK yang sedang kita lakukan!
turkishgold

Jawaban:


6

Analisis telah dilakukan dalam menjawab pertanyaan sebelumnya , tetapi mungkin sebuah ilustrasi akan membantu.

Ada dua komponen utama kesalahan: algoritma "d8", yang mewakili aliran hanya dalam delapan arah mata angin, dan efek dari proyeksi (atau tidak adanya itu). Mari kita fokus pada yang terakhir, karena ini tampaknya menjadi perhatian utama.

Kesalahan tergantung pada distorsi dalam proyeksi dan pada medan itu sendiri. Secara lokal, di atas wilayah kecil, semua distorsi proyeksi pada permukaan bumi sama dengan peregangan dalam satu arah dibandingkan dengan arah tegak lurus: inilah mengapa Indikator Jaringan (yang dihitung dengan benar) adalah elips yang sempurna, karena elips hanyalah lingkaran yang diregangkan. Medan dapat memiliki aspek apa pun (arah aliran). Untuk mengatasinya, mari kita lihat medan yang memang memiliki titik di semua arah yang mungkin dengan garis aliran sederhana: kerucut .

Kerucut 1

Overlay pada peta kontur yang diarsir oleh warna ini adalah kumpulan garis aliran yang menunjukkan arah aliran air. Anda dapat mengonfirmasi bahwa aliran ini benar dengan memeriksa bahwa garis tersebut melintasi kontur pada sudut yang tepat.

Dengan memilih unit pengukuran yang tepat dan asal yang tepat untuk sistem koordinat (di puncak kerucut), persamaan untuk ketinggian dalam hal koordinat (x, y) hanyalah

z = -Sqrt (x ^ 2 + y ^ 2).

Streamline selalu sejajar dengan gradien z (dalam arah terbalik), dihitung dengan membedakan rumus ini sehubungan dengan x dan y :

-Grad (z) = (x, y) / Sqrt (x ^ 2 + y ^ 2).

Koefisien 1 / Sqrt (x ^ 2 + y ^ 2) tidak mengubah arah, jadi kita bisa mengabaikannya untuk tujuan memahami arus. Jadi, di lokasi mana pun (x, y), garis merampingkan menunjuk ke arah (x, y).

Kerucut 2

Efek dari bentangan horizontal pada koordinat (dengan faktor 2 pada gambar ini) adalah merentangkan semua kontur (tanpa mengubah level kontur: ketinggian tidak terpengaruh oleh proyeksi). Meskipun (tentu saja) kontur mewakili lingkaran yang benar, mereka tidak lagi terlihat seperti lingkaran yang benar di peta. Namun demikian, ketika garis arus dihitung dalam koordinat ini, mereka harus melintasi kontur pada sudut yang tepat seperti sebelumnya.

Efek dari regangan adalah menempatkan ketinggian pada titik koordinat mana saja (x, y) pada koordinat baru (regangan x, y). Pertimbangkan ini secara terbalik: ketinggian pada koordinat (X, Y) = (peregangan x, y) harus menjadi nilai z yang dihitung pada (x, y) = (X / peregangan, Y). Oleh karena itu persamaan permukaan yang tampak dalam proyeksi ini adalah

z = -Sqrt ((x / stretch) ^ 2 + y ^ 2).

Membedakan, kami menghitung

-Grad (z) = (x / stretch ^ 2, y) / Sqrt ((x / stretch) ^ 2 + y ^ 2).

Sekali lagi faktor umum tidak penting; dengan demikian, di lokasi mana pun (x, y), garis arus yang dihitung menunjuk ke arah (x / regangan ^ 2, y) . Ini adalah rumus yang digunakan untuk menggambar garis aliran pada gambar sebelumnya. Anda dapat melihat mereka melintasi kontur dengan benar di sudut kanan.

Kerucut 3

Gambar ketiga ini memproyeksikan ulang gambar sebelumnya. Permukaan ditampilkan sekali lagi tanpa distorsi. Namun, garis aliran tampaknya tidak lagi melintasi kontur pada sudut kanan. Ini adalah kasus bahkan dalam gambar sebelumnya: karena distorsi di dalamnya, sudut hanya tampak sudut kanan. Persimpangan tidak benar selama ini. Itu sebabnya tidak memproyeksikan (atau menggunakan proyeksi nonconformal) adalah kesalahan. Pertanyaannya adalah seberapa besar kesalahan itu. Beberapa mengklaim itu konsekuensi kecil (setidaknya pada lintang rendah ke sedang).

Proyeksi ulang ini (untuk menghilangkan distorsi pada peta) memindahkan titik pada (x * stretch, y) kembali ke (x, y). Arah aliran yang sebelumnya dihitung pada titik ini disimpan dalam kisi (sebagai kode sudut atau arah): tidak berubah. Oleh karena itu arah aliran yang dihitung pada (x, y) adalah (x / peregangan ^ 2, y).

Ini menghitung efek dari proyeksi ulang pada semua kemungkinan arah aliran, seperti yang ditunjukkan oleh perbedaan antara grafik pertama dan terakhir. Inilah hamparan mereka, tanpa plot kontur untuk pengalih perhatian:

Hamparan perbandingan aliran

Proyeksi ulang mempengaruhi arah secara berbeda tergantung pada bagaimana aliran diorientasikan sehubungan dengan sumbu utama dari Tissot Indicatrix. Ini adalah fungsi kuadrat dari distorsi linear relatif dalam proyeksi. Karena itu, itu melebih-lebihkan bahkan sejumlah kecil distorsi. (Faktor dua diilustrasikan di sini agak ekstrim tetapi realistis: itu adalah distorsi yang diperkenalkan oleh kegagalan memproyeksikan - yaitu, menggunakan koordinat geografis sebagai koordinat peta - pada garis lintang 60 derajat.)

Dengan sedikit trigonometri seseorang dapat menggunakan hasil ini untuk menghitung kesalahan sudut dalam arah aliran sebagai fungsi dari arah yang benar. Berikut adalah grafik kesalahan yang terkait dengan penggunaan sistem koordinat geografis (tidak diproyeksikan) pada garis lintang 20, 30, 40, 50, dan 60 derajat. (Tentu saja kesalahan yang lebih besar dikaitkan dengan garis lintang yang lebih tinggi.)

Alur kesalahan sudut

"Arah sejati" ada di derajat timur utara. Perbedaan sudut positif terjadi ketika arah nyata (dihitung tanpa memproyeksikan lat, lon) berlawanan dengan arah yang benar.

Ingat, Anda harus menambahkan kesalahan D8 di atas semua ini!

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.