ปรับ DEM ให้เรียบโดยใช้ GRASS


45

ฉันมี SRTM DEM และฉันต้องการสร้างความโล่งใจแบบแรเงาจากมัน ฉันสร้างความโล่งใจแบบแรเงาใน GRASS และผลลัพธ์ก็ดีมาก แต่ค่อนข้างหยาบเพราะพื้นที่ใกล้แบนและ DEM นั้นมีความละเอียด 90 ม.

สิ่งที่ฉันต้องการคือการทำให้ DEM นุ่มนวลขึ้นเพื่อสร้างภาพเงาที่นุ่มนวล มีอัลกอริทึมหรือวิธีการแก้ไขที่จะทำเช่นนั้น?

นี่คือความโล่งใจที่แรเงาเพื่อให้ได้ความคิดฉันต้องการที่จะแผ่กระแทกขนาดเล็กเหล่านี้:

ภาพ


คำตอบ:


43

วิธีการเกี่ยวกับ John Stevenson r.denoiseจากwiki GRASS AddOns :

r.denoise denoises (เนียน / despeckles) ข้อมูลภูมิประเทศ DEMs โดยเฉพาะอย่างยิ่งที่ได้มาจากข้อมูลเรดาร์ (รวม SRTM) โดยใช้อัลกอริทึม denoising Xianfang ดวงอาทิตย์ มันถูกออกแบบมาเพื่อรักษาขอบคมและ denoise กับการเปลี่ยนแปลงเล็กน้อยกับข้อมูลต้นฉบับ

mdenoise

ฉันอ่านเพิ่มเติมจากเว็บไซต์นี้ (ซึ่งฉันให้เครดิตสำหรับภาพเคลื่อนไหวด้านบนด้วย) ว่าวิธีการทั่วไปที่มากกว่านั้นก็คือการใช้ไฟล์ Esri ASCII Grid สถานที่ตั้งของmdenoise(ดาวน์โหลดได้จากเว็บไซต์ของดวงอาทิตย์ ) จะต้องอยู่ในตัวแปรเส้นทางของคุณ (เช่นผู้ใช้ Windows: ลดลงMDenoise.exeในbinโฟลเดอร์ที่มี OSGeo4w หรือ FWTools ติดตั้ง) จากนั้นตัวอย่างเช่นคุณสามารถใช้คำสั่งเชลล์ต่อไปนี้เพื่อประมวลผลไฟล์กริด ASCII:

# gdal_translate -of AAIGrid my_dem.tif my_dem.asc      # convert to .asc
mdenoise -i my_dem.asc -n 5 -t 0.99 -o my_dem_DN.asc    # denoise
# gdal_translate -of GTiff my_dem_DN.asc my_dem_DN.tif  # convert back to .tif

Denoise อยู่ภายใต้ลิขสิทธิ์ GNU ดูที่นี่


python / gdal portage ใด ๆ
Hugolpz

1
คุณสามารถเรียกใช้คำสั่งใดก็ได้จาก Python
Mike T

ฉันหมายถึงงูหลามที่ไม่ต้องการอาร์
Hugolpz

1
สิ่งนี้ไม่จำเป็นต้องใช้อาร์จาก Python ใช้os.system('mdenoise ...')เพื่อเรียกใช้ไฟล์ปฏิบัติการ
Mike T

เพื่อชี้แจง: ที่นี่หมายถึงแรสเตอร์ คำสั่งมาจาก GRASS GIS ไม่ใช่จาก R.
bugmenot123

11

Tom Patterson ผู้ทำแผนที่ชั้นนำของ US National Parks Service มีบทเรียนที่ยอดเยี่ยมเกี่ยวกับการทำงานกับข้อมูล DEM เพื่อให้ได้ภาพที่สวยงาม ส่วนหนึ่งของกระบวนการทำงานของเขาเกี่ยวข้องกับการใช้Natural Scene Designerและ Adobe Photoshop

สำหรับเวิร์กโฟลว์ของฉันเองฉันต้องการใช้ GDAL เพื่อลองขนาดของ DEM อีกครั้งก่อนที่จะแสดงผลสีเทา สิ่งนี้มักจะช่วยลดจำนวนรายละเอียดและเสียงรบกวนไม่ต้องพูดถึงขนาดไฟล์ ฉันมีการสอนเกี่ยวกับ Githubที่แสดงให้เห็นถึงวิธีการทำเช่นนี้

โดยทั่วไปกระบวนการคือการระบุความกว้างและ / หรือความสูงใหม่ (เป็นพิกเซล) สำหรับ DEM เอาต์พุตที่มีขนาดเล็กกว่าขนาดไฟล์ต้นฉบับ ตัวอย่างเช่นการทำ:

gdalwarp -ts 3000 0 -r bilinear kings_canyon_2228.tif kings_canyon_2228_rs.tif

จะลดความกว้างของ DEM เป็น 3000 พิกเซลจากความกว้างดั้งเดิมของ 3800 พิกเซล การตั้งค่าความสูงเป็น 0 จะทำให้ GDAL กำหนดความสูงที่ดีที่สุดของไฟล์ใหม่ตามอัตราส่วนของต้นฉบับ


7

ฉันใช้เครื่องมือลดสัญญาณรบกวนเวฟเล็ตปลั๊กอิน GIMP และฉันได้รับผลลัพธ์ที่ดีและรวดเร็ว:

GIMP Plugin การลดสัญญาณรบกวนเวฟเล็ต

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่


ฉันปรับ raster (hillshade) ของฉันให้ราบรื่น แต่ไฟล์ (tiff) สูญเสียการอ้างอิงเชิงพื้นที่ ดังนั้นเมื่อฉันใส่มันลงในโครงการ qgis ของฉันสิ่งหนึ่งไม่ได้ซ้อนทับอย่างถูกต้องกับเลเยอร์อื่น เกิดขึ้นกับคุณหรือไม่
Diogo Caribé

มีวิธีการระบุตำแหน่งทางภูมิศาสตร์ซ้ำอีกครั้ง
Hugolpz

ใช่ใน QGIS ส่งออก hillshade ในเมนู raster และ expor เป็น PNG
SamTux

6

คุณสามารถเรียกใช้ตัวกรองแบบง่าย ๆ บน DEM - พูดตัวกรองค่าเฉลี่ยของหน้าต่างแบบเคลื่อนไหว 5x5


3

ใน ArcMap ฉันชอบที่จะใช้เครื่องมือ Spatial Analyst> focal Statistics เพื่อทำให้ lidar ราบรื่นก่อนที่จะสร้างรูปทรง ... นี่อาจช่วยในกรณีของคุณ มันเป็นฟังก์ชั่นที่คล้ายกับโพสต์ด้านบนที่ฉันเชื่อ


โอ๊ะอ่านเพียงส่วนหนึ่งหญ้า ... ดีฉันแน่ใจว่ามีการดำเนินการที่คล้ายกัน ...
aug_aug
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.