Yükseklik profili örnek noktası algoritması


10

Bir yükseklik profili oluştururken, alttaki taramadan örnekler alınmalıdır. Amaç maksimum kalitede bir profil oluşturmaksa, numune noktalarının yerleri nasıl belirlenmelidir? Bu örnek noktaların enterpolasyonu için nasıl bir yaklaşım izlenmelidir?

Yanıtlar:


6

Maksimum kalitede bir profil oluşturmak istiyorsanız , algoritmanız temel olarak sorgu yolunuzla kesişen her bir hücreyi içermelidir ve daha sonra basit bir 2B eğri uydurma problemi haline gelir . Bununla birlikte, sadece bu noktaların bir alt kümesini örneklemek ve daha görsel olarak hoş bir profil oluşturmak istiyorsanız, coğrafi hesaplamadan elde edilen bu makalenin, örnekleme yüksekliği ve arkasındaki matematik için çok farklı enterpolasyon tekniği olduğunu fark edebilirsiniz.


7

Bir yükseklik profili, iki yüzeyin kesişimini hesaplar . Bunlardan biri, bir yol tarafından belirlenen dikey bir sayfadır. (Yani, (x, y) yol üzerinde ve z herhangi bir sayı olan tüm koordinatlardan (x, y, z) oluşur. Diğeri raster DEM tarafından temsil edilen yüzeydir. Bu haliyle, eğrideki noktaların üzerinde bulunan z değerlerinin bulunması anlamına gelir. Bu, rasterden değerlerin enterpolasyonu sorunuyla aynı olmasını sağlar. Özellikle, (uzunluk, yükseklik) bir eğri tespit ederek ve basit tek boyutlu bir sorun birçok özelliği paylaşmaktadır, veriler, bu bir değilaynı durum. Bu şekilde görüntülemek, eğrinin her iki tarafındaki raster verilerinin tam 2D ​​boyutundaki bilgilerden yararlanamayacağınız için, optimal olmayan yükseklik profilleri üretme olasılığı yüksektir.

Açıkça görülüyor ki, enterpolasyon yüzeylerine bağlı tüm hususlar burada önemlidir . Her biri farklı kullanımlar için uygun olan ve her biri kendi "kalitesine" sahip, avantajları ve dezavantajları olan birçok rakip yöntem vardır. Bunlar şunları içerir (ancak bunlarla sınırlı değildir):

Bunların tümü , herhangi bir veri noktasıyla çakışması zorunlu olmayan rastgele bir konum (x, y) verildiğinde verilerden z (x, y) değerini tahmin etmek için kullanılan algoritmalardır . Bu arada bir raster veri kümesi şu şekilde çizilir : ekrandaki veya kağıttaki (harita) belirli bir pikseldeki (u, v) rengi belirlemek için, pikselin dünya koordinatları (x, y) hesaplanır, z (x, y) değeri enterpolatör kullanılarak hesaplanır ve bu değer rampa veya arama tablosu kullanılarak bir renge dönüştürülür. (Verimlilik için, birçok CBS'nin bu prosedürü her pikselde gerçekleştirmediğinden şüpheleniyorum: bunun yerine, piksellerin düzenli bir alt örneğini alıyorlar, renklerini buluyorlar ve ardından ekran veya kağıt üzerinde rengin basit bir enterpolasyonunu yapıyorlar.)

Pikselleri enterpolasyon için düzenli bir düzlemsel konum örneği belirleme olarak düşünebiliriz. Bir yükseklik profili oluşturmak da benzer bir değerlendirme gerektirir: "pikselleri" yol boyunca nerede bulabilirim? Cevap, harita yapımı için ilgili soruyu cevaplayacağımız şekilde geliştirilmiştir: hangi ölçeğe ihtiyacınız var? Büyük ölçeklerde (yakınlaştırılmış yol) çok daha yakın örneklemeye ihtiyacınız vardır; küçük ölçeklerde daha geniş aralıklarla numune alabilirsiniz. Zekiyseniz, örneklemeyi z değerlerinin en hızlı değiştiği, en büyük eğriliğe sahip olduğu veya aşırı değerlere ulaştığı noktalara odaklamak için uyarlanabilir veya özyinelemeli yöntemleri bile kullanabilirsiniz. Zeki değilseniz veya en iyi temsile ihtiyacınız yoksa, d (0) <d (1) <... <d (n) yolunda eşit aralıklı değerler kümesi oluşturabilirsiniz yol boyunca ve yakındaki raster değerlerinden karşılık gelen z (0), z (1), ..., z (n) kotlarını enterpolat edin. Daha sonra (d (0), z (0)), ..., (d (n), z (n)) ve z (i + 1) - z (i) varyasyonlarının eğrinin uygunluğunun önemli olmadığı kadar küçük olduğunu varsayarsak, genellikle bir eğri - etrafındaki bir çeşit eğride adil olurlar. (Uyarlamalı yöntemler bu varyasyonları inceler ve aralarında büyük varyasyonların göründüğü daha fazla enterpolasyonlu değerler elde eder.)

Bu bizi sorunun merkezine götürür: ilk örnek mesafeleri ne olmalıdır? Yanıt, yükseklik profilinin amaçlanan ölçeğine, DEM değerlerinin doğruluğuna, eğrinin DEM konumlarına kaydedildiği doğruluğa ve profil boyunca ve yakınındaki yüksekliklerin değişim hızına bağlıdır. Genel olarak, daha büyük ölçekler (yani, yakınlaştırma), yüksekliklerde ve coğrafi referanslarda daha iyi doğruluklar ve daha yüksek varyasyon oranları daha yakın aralık gerektirir. Bunlar karmaşık şekillerde etkileşime girdiğinden , en iyi aralık için genel bir kural yoktur . Bununla birlikte, başlangıç ​​olarak, raster hücre boyutundan daha ince olan herhangi bir aralığın sizi fazla satın almamasını bekleyebilirsiniz. Böylece,bu nispeten dar aralığı kullanarak yükseklik profilini hesaplamayı göze alabiliyorsanız, devam edip bunu yapabilirsiniz . Aşırı olabilir, ama ne olacak?

Bu yöntemlerin en iyi şekilde enterpolasyonlu yükseklik değerlerini doğru şekilde üreteceğini unutmayın . Bunlar hemen hemen her zaman raster temsil ettiği yüksekliklerin bozulmuş bir versiyonudur . Örneğin, dağlık bölgelerdeki birçok DEM tepe noktalarının yüksekliğine ulaşmaz, çünkü tepe noktaları genellikle raster hücreleri arasında kalır. Alt tepe yükseklikleri arasında enterpolasyon yaptığınızda, genellikle tepe yüksekliğinden daha az olacak şekilde bir çeşit ağırlıklı ortalama elde edersiniz. Böylece, tam olarak bir dağ tepe noktasından geçen bir yolun yükseklik profili nadiren tepe yüksekliğine ulaşacaktır. (Kübik evrişim ve bazı kriging türleri (kriging ile stokastik simülasyon dahil)) bu sorunun hafif formlarının üstesinden gelebilir. Eğer ekstremitelerin ortalamasını aşan bir "en iyi uyum" için oturmak yerine, yükselme profilinin istatistiksel özelliklerini yeniden oluşturmak istiyorsanız, onlara bakın.


teşekkürler whuber. Boşluğun sabitlenmesi gerekiyor mu?
Matthew Snape

1
@Matthew Boşluk, bahsettiğim gibi yüksekliklere ve değişikliklerine uyarlanabilir. Rastgele boşluklar veya keyfi boşluklar gibi diğer boşlukların kalitesini değerlendirmek zordur. Bununla birlikte, örnek noktaların bazılarını yerleştirmek için harici bilgilerin kullanılmasıyla ilgili hiçbir şey yoktur. Bir akış katmanınız varsa, yol boyunca yüksekliğin yerel minimasını örneklediğinizden emin olmak için tüm akış geçişlerini noktalarınıza dahil edebilirsiniz. Bazı özel amaçlar için eşit yükseklik aralıkları iyi çalışır.
whuber

Ancak bazı noktalarda profil çizgisi kısa bir mesafede birkaç hücreden geçecektir. Diğerlerinde profil çizgisi daha az geçecektir (eksenle seyahat ediyorsanız). Elbette sabit bir aralık bunu hesaba katmayacak mı?
Matthew Snape

@Matt Mesele şu ki, sadece hücrelerden geçilmesi önemli değildir. Herhangi bir uzamsal enterpolasyon prosedürü, yol üzerindeki sonsuz sayıda noktada bir yükseklik tahmini sağlayabilir. Bu sorununuzu tek bir boyutta azaltır: enterpolatör mesafenin bir fonksiyonu olarak yükseklik sağlar (Kartezyen koordinatlarında grafik oluşturabilirsiniz) ve sorun bu grafiği örneklemektir. Başka bir deyişle, bir enterpolatör seçtikten sonra, "y = f (x) fonksiyonum var. Bunu en iyi nasıl çizebilirim?" Benim tavsiyem (a) iyi bir enterpolatör ve (b) iyi bir grafik seçmek!
whuber
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.