Yer altında ve üstünde bulunan gürültüyü / aykırı değerleri gidermek için LiDAR nokta bulutunu düzenliyor musunuz?


10

İlk ve son geri dönüşleri içeren "kirli" LiDAR verilerim ve yüzey seviyesinin altında ve üzerinde kaçınılmaz olarak hatalar var. (Ekran)

resim açıklamasını buraya girin

Elimde SAGA, QGIS, ESRI ve FME var ama gerçek bir yöntem yok. Bu verileri temizlemek için iyi bir iş akışı ne olabilir? Tam otomatik bir yöntem var mı yoksa bir şekilde el ile siliyor muyum?


Point cloud verileriniz düşük / yüksek gürültüye sahip mi (las 1.4 1.4 R6 sınıf 7 ve 8)?
Aaron

Bu yazılım ürünlerinden herhangi biriyle ne denediniz ve nereden takıldınız? Odaklanmış bir soru sormak yerine seçenekleri tartışmak istiyor gibi görünüyorsunuz. GIS Sohbet Odası'nda seçenekleri tartışmak her zaman iyidir.
PolyGeo

1
Moderatör, bir şey yapmanın yöntemlerini / yollarını soran soruları olan yazılım isteyen sorularla yeniden açılmaya başladığı için oy verme. Yalnızca yazılımı listeleyen yanıtlar bu bağlamda gerçek yanıtlar değildir. POV'mi daha iyi gis.meta.stackexchange.com/questions/4380/… ' de açıklarım .
Andre Silva

1
Ayrıca, "çok geniş" tek taraflı kapanma aşırı kullanılmış gibi görünüyor: gis.meta.stackexchange.com/questions/4816/… . Davanın burada geçerli olduğunu düşünüyorum. Soruyu tekil yapan nokta bulutu içinde her türlü aykırı değerlere sahip olmaktır.
Andre Silva

Yanıtlar:


9

Aykırı değerlere sahip görünüyorsunuz:

  • i) zemin yüzeyinin altında;
  • ii) zemin yüzeyinin üzerinde ve yerüstü diğer gerçek özellikler arasında dikey olarak;
  • iii) tüm ilgi alanlarından daha yüksek yükseklikteki yer noktalarının, örneğin bulutların veya kuşların neden olduğu yerler (bu resimde gösterilmemiştir, ancak durumun böyle olabileceğini varsayıyorum).

'İ' için seçenek, temiz bir LiDAR yer noktası bulutu elde etmek için 'negatif hataları' dikkate alabilen bir zemin filtresi algoritması kullanmaktır. Evans ve Hudak (2007) 'dan Çok Ölçekli Eğrilik Sınıflandırması (MCC) algoritmasına bakınız. 4. sayfada söylendi:

Negatif blunders LiDAR verilerinde, fotonların geri gönderilen bir lazer darbesinde saçılmasından kaynaklanabilecek yaygın bir durumdur. Saçılma, yayılan bir lazer atımının uçak sensörüne dönme süresini uzatır, kat edilen mesafenin hesaplanmasını şişirir, böylece yüzey yüksekliğinin hatalı olarak çevre ölçümlerinin altında olduğu bir ölçüm hatasına neden olur. Eğrilik sınıflandırma yaklaşımlarının, farklı bir “bomba krateri” efekti oluşturmak için negatif bir fırtınanın etrafındaki kenar artefaktını genişletebilen negatif blunders çevresindeki geçerli getirileri potansiyel olarak kaldırabileceğine dikkat edilmelidir. Negatif hataları gidermek için Haugerud ve Harding, eğrilik toleransı parametresinin enterpolasyonlu hücre boyutunun dört katına ayarlanmasını ve bu negatif eğrilik eşiğini aşan getirilerin seçilmesini önerdi. Bununla birlikte, belirli koşullar altında, negatif blunders gibi görünen getirilerin aslında geçerli getiriler (örneğin, düdenler) olabileceği unutulmamalıdır. Bu nedenle, potansiyel olumsuz hataları gidermek için yukarıdaki öneri, gerektiğinde kullanıcının takdirine bağlı olarak kullanılmak üzere isteğe bağlı bir son model döngüsü olarak uygulanabilir.

Aşağıda, MCC-LIDAR kullanımına ilişkin bir örnek içeren bir gönderi bulunmaktadır:

Doğru bir DEM yapmak için doğru bir LiDAR yer noktası bulutuna sahip olduğunuzda, nokta bulutunu normalleştirmek ve DEM yüzeyinin altındaki noktaları (negatif değerlere sahip olanlar) hariç tutmak mümkündür . Aynı yaklaşımı kullanarak, bazı sabit eşiğin üzerindeki nokta sayısı 'iii' kaldırma noktalarını da ele almak mümkündür. Bkz. Örneğin:

Daha sonra, AlecZ'in LAStools tarafından tavsiye lasnoiseedilen cevabı tarafından ele alınan 'ii' ile bizi terk ediyor. Ayrıca 'iii' ve belki de 'i' nin bir kısmını da ele alacaktır (LAStools olsa da bir lisans gerektirir). Pdal en: Diğer araçlar özellikle aykırı burada öne sürüldü / kaldırma kontrol etmek için yaratılmış filters.outlieraracını Charlie Parr cevap nasıl alet çalıştığı hakkında ayrıntılı bir açıklama vardır ve avantajla Pdal ücretsiz bir yazılımdır.

Ardından, otomatik işlemden kalanlar (aykırı değer varsa) manuel olarak kaldırılabilir. Örneğin:


Evans, Jeffrey S .; Hudak, Andrew T. 2007. Ormanlık ortamlarda ayrık dönüş LiDAR'ın sınıflandırılması için çok ölçekli bir eğrilik algoritması . Jeobilim ve Uzaktan Algılama üzerine IEEE İşlemleri. 45 (4): 1029-1038.


3

Ben tavsiye edeceğiz Pdal nokta veri abstratction kütüphanesi. Benzer bir filtreleme sorunu için PDAL kullanarak iyi bir başarı elde ettim. PDAL'i seviyorum çünkü açık kaynak kodlu, Python desteği sağlıyor ve işlemeyi yeniden oluşturmamı ve filtreleme parametrelerimi takip etmemi kolaylaştırıyor. Ben de birkaç adım (örneğin kırpma sonra filtre sonra ihracat) birlikte zincir ve aynı anda onları yürütmek 'boru hatları' var çünkü seviyorum. Gerçekten, gerçekten büyük nokta bulutlarınız varsa PDAL diğer bazı çözümler (LASTools, QTM, vb.) Kadar hızlı olmayabilir.

Aşağıdakilere benzer bir PDAL ardışık düzeniyle çıkış noktaları sorununu çözebilirsiniz:

{
"pipeline": [
    "input_utm.las",
    {
        "type":"filters.crop",
        "bounds":"([401900,415650],[7609100,7620200])"
    },
    {
        "type":"filters.outlier",
        "method":"statistical",
        "mean_k":12,
        "multiplier":2.0
    },
    {
        "type":"filters.range",
        "limits":"Classification![7:7]"
    },
    {
      "filename":"output.tif",
      "resolution":1.0,
      "output_type":"mean",
      "radius":3.0,
      "bounds":"([401900,415650],[7609100,7620200])",
      "type": "writers.gdal"
    }
    ]
}

Bu boru hattı bir LAS'ta okur, belirli bir UTM derecesine göre kırpar, ardından tüm dış noktaları işaretleyen bir filtre gerçekleştirir, daha sonra sadece dış olmayan noktaları (yani Sınıflandırma bayrağı! = 7) tutan ikinci bir filtre gerçekleştirir, ardından 1 m çözünürlükte GeoTIFF. İstatistiksel filtre, bir noktanın komşularından 'çok uzak' ve dolayısıyla bir aykırı olup olmadığını test etmek için en yakın komşu ortalama mesafe hesaplamasını gerçekleştirir.

Gönderen belgeler :

resim açıklamasını buraya girin


1
@AndreSilva düzenledi! esasen bir noktanın (ortalama_k) komşuları olması için 'normal' bir mesafenin ne olduğunu sorar ve bir noktaya olan mesafe çok uzaksa (ortalama çarpanın üstünde (çarpan) * sigma'dan büyükse) o zaman işaretlenir aykırı
Charlie Parr

1

OP çözümleri açık kaynak ile sınırlamadığı için Quick Terrain Modeler'ı ( QT Modeler ) öneririm . Lisans gerektirir. Nokta bulutunu QT'ye yükleyin ve istediğiniz profil görünümünü elde etmek için eğin, kaldırmak istediğiniz kümeyi lastik bantlayın ve sil tuşuna basın.


1

Sadece enterpolasyonlu bir rasterde odak varyansı kullanma şansım oldu. Daha sonra noktalarınıza varyans değerlerini atar ve yerel çekirdek tahminden büyük hareketleri temsil eden yerel olarak yüksek varyansları kaldırmak için bir eşik kullanırsınız.

Enterpolasyonlu yüzeyin çözünürlüğünün, nokta (lar) seviyesinde yerel varyasyonu yakalayabilecek kadar küçük bir tane olduğundan emin olmanız gerekir. Çekirdeğin boyutu da bir etkiye sahip olacaktır, ancak tek aykırı değerler için 3x3'lük bir pencere yeterli olmalıdır. Orada duymak ve birkaç nokta daha kaybedebilirsiniz, ancak, lidar ile yedeklemek için yeterli veri var.


1

Lastools tam olarak ihtiyacınız olanı sağlar - tüm bu noktaları sizin için kaldıracak otomatik komut dosyaları. Ancak bunun için bir lisans maliyeti vardır, ancak bu hızlı bir şekilde normal bir görev olarak yapmak istediğiniz bir işlemse , araç setindeki lasnoise komut dosyasını kullanmak mükemmel bir seçenektir.

@Andre Silva'nın belirttiği gibi ArcGIS, LAS Veri Kümesi Oluştur coğrafi işleme aracını çalıştırdıktan sonra kullanabileceğiniz bir las araç setine sahiptir. Oradan, bu gürültü noktalarını yeniden sınıflandırmak veya silmek için manuel olarak girebilirsiniz. Dezavantajı, muhtemelen las dosyalarını manuel olarak ve bir lisans maliyetiyle görselleştirmek / analiz etmek / değiştirmek için en iyi program olan QT Modeler (@auslander tarafından önerilen) kadar sezgisel veya etkili bir süreç olmamasıdır. ArcMap, nokta bulutunuzu düzenlerken görünür noktaların sayısını sınırlandıracaktır, bu da büyük olasılıkla gürültülü alanlara yakınlaştırmanız, bunları kaldırmanız veya yeniden sınıflandırmanız ve ardından manuel temizleme işleminin bir parçası olarak hareket etmeniz gerekecektir. Ama bu işi halledecek.


1

As Andre Silva söyledi , MCC-LİDAR zemin noktaları ayıklamak için iyi bir seçenektir ama (hatta daha az 500 milyon puan veya) çok büyük bir PointCloud varsa benim deneyim, mücadele edecek. Başka bir deyişle, bir hata döndürür ve ayarları değiştirseniz bile (ölçek ve eğrilik parametreleri) algoritmayı çalıştırmaz. Ayrıca, deneyimlerime göre, bazı "negatif blunders" verilerde tutar.

Bunun için alternatifim pointcloud'u tersine çevirmektir (toprağın altındaki noktalar yükselir ve yukarıdaki yer düşer). Bunu elde etmek için, verileri R'ye yüklerim ve yüksekliği ters çeviririm, sonra MCC-LIDAR'ı çalıştırırım ve verileri tersine çeviririm. Bunu muhtemelen QGIS veya ArcGIS'de yapabilirsiniz, ancak veri kümenizin boyutuna bağlı olarak, biraz zaman alabilir.

PDAL takım zemini de daha büyük veri kümeleriyle daha iyi çalıştığı için iyi bir seçenektir, ancak yine de, zeminin altındaki bazı noktalar hala korunacaktır. Veri kümesini tersine çevirmek bu sorunu çözmeye yardımcı olacaktır.

Yer üstü noktalar için en iyi yaklaşımım manuel temizlik ve bunu bulduğum en iyi açık kaynak aracı CloudCompare'de. SegmentÜst çubuk menüsünde seçim yaparsınız ve seçilen noktaları veya diğerlerini kaldırabilirsiniz. Bunun için daha önce LAStools'u kullandım ( lasviewaraç) ama 3D arayüzün çalışma şekli kullanıcı dostu değil.


Olumsuz blunders kaldırmak için nokta bulutunu tersine çeviren ilginç bir yaklaşım. R'ye 500 milyon puanlık bir pointcloud yüklemek kolay mıydı?
Andre Silva

Birkaç dakika sürebilir. Ben genellikle kullanmak için iş parçacığı sayısı ile oynayabilir data.table geliştirme paketinden fread kullanarak bir ASCII dosyadan yüklemek.
Andre

1

GreenValley International'ın teknik desteğiyim, amiral gemisi yazılımımız LiDAR360'daki Outlier Removal aracı bu hataları olabildiğince gidermek ve bu nedenle veri kalitesini artırmak için kullanılabilir.

Algoritma önce kullanıcı tanımlı bir mahallede her noktanın komşu noktalarını arayacak ve noktadan komşu noktalara olan ortalama mesafeyi hesaplayacaktır. Daha sonra, tüm noktalar için bu ortalama mesafelerin ortalama ve standart sapması hesaplanır. Bir noktanın komşularına ortalama mesafesi maksimum mesafeden büyükse (maksimum mesafe = ortalama + n * standart sapma, burada n kullanıcı tanımlı bir çoklu sayıdır), bir aykırı değer olarak kabul edilir ve orijinalden kaldırılır nokta bulutu.

resim açıklamasını buraya girin


-1

Bir Açık Kaynak seçeneği olarak, 3D Ormanı otomatik olarak filtrelemek için bazı güzel araçların yanı sıra nokta bulutlarını temizlemek için manuel araçlara sahiptir. İhtiyacınız olan sonucu elde etmek için farklı filtre parametrelerini denemeniz gerekebilir. Orman noktası bulutlarına yönlendirilmiş olsa da, birçok araç herhangi bir nokta bulutunda yararlıdır.

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.