ใช้ SRTM Global DEM สำหรับการคำนวณความชันหรือไม่


17

ฉันดาวน์โหลด SRTM GDEM (ความละเอียดประมาณ 90 กม.)

ฉันใช้ ArcGIS 10

ฉันได้ลองใช้ตัววิเคราะห์เชิงพื้นที่เพื่อคำนวณหาความชัน

อย่างไรก็ตามฉันไม่สามารถคำนวณความชันได้

ค่าเอาต์พุตมีเพียงสองช่วงที่ 0 และ 0.1-90

ฉันไม่แน่ใจจริงๆว่าปัญหาคืออะไร


ขึ้นอยู่กับว่าคุณกำลังวิเคราะห์ที่ไหนในโลก มีการฉายที่แตกต่างกันสำหรับแต่ละสถานที่ คุณกำลังตรวจสอบอยู่ที่ไหน
djq

5
ความละเอียดเป็นจริง ~ 90m ไม่ใช่ ~ 90km
Akheloes

เพียงแสดงความคิดเห็นหากคุณต้องการบำรุงรักษาเดสก์ท็อปคุณสามารถลงชื่อเข้าใช้ ArcGIS Online และใช้บริการการยกระดับ (โดยไม่ต้องใช้ส่วนขยาย NA) ชั้นความชันนั้นสามารถใช้เป็นชั้นอ้างอิงได้ฟรี ในออสเตรเลียเรามีข้อมูล SRTM 1 วินาที (ความละเอียด ~ 30m) blogs.esri.com/esri/arcgis/2014/07/11/…
Simon

คำตอบ:


29

นี้ดูเหมือนว่าสถานที่ที่ดีที่จะอธิบายง่ายรวดเร็วและมากขึ้นกว่าวิธีที่ถูกต้องเหมาะสมไปยังเนินเขาคำนวณหา DEM

หลักการ

พึงระลึกว่าความลาดชันของพื้นผิว ณ จุดหนึ่งนั้นเป็นอัตราส่วนที่ใหญ่ที่สุดของ "การเพิ่มขึ้น" ถึง "การวิ่ง" ที่พบได้ในตลับลูกปืนที่เป็นไปได้ทั้งหมดจากจุดนั้น ปัญหาคือเมื่อการฉายมีการบิดเบือนระดับค่าของ "การทำงาน" จะถูกคำนวณอย่างไม่ถูกต้อง ยิ่งแย่ไปกว่านั้นเมื่อความผิดเพี้ยนของเครื่องชั่งแตกต่างกันไปตามตลับลูกปืน - ซึ่งเป็นกรณีของการคาดการณ์ทั้งหมดที่ไม่เป็นไปตามที่คาดการณ์ไว้ - ความลาดชันของตลับลูกปืนจะแตกต่างกันอย่างไร การคำนวณมุมมอง)

เราสามารถแก้ปัญหานี้ได้โดยใช้การฉายตามมาตราส่วนเพื่อให้แน่ใจว่าการบิดเบือนขนาดไม่แตกต่างกับตลับลูกปืนและจากนั้นทำการแก้ไขการประมาณความชันเพื่อพิจารณาการบิดเบือนขนาด (ซึ่งแตกต่างกันไปในแต่ละจุดในแผนที่) เคล็ดลับคือการใช้การฉายภาพทั่วโลกที่ช่วยให้การแสดงออกที่เรียบง่ายสำหรับการบิดเบือนขนาดของมัน

เงื้อม Mercator เหมาะกับใบเรียกเก็บเงิน: สมมติว่าสเกลนั้นถูกต้องที่เส้นศูนย์สูตรการบิดเบือนนั้นเท่ากับเซแคนต์ของละติจูด นั่นคือระยะทางบนแผนที่ดูเหมือนจะถูกคูณด้วยเส้นตัดวงกลม สิ่งนี้ทำให้การคำนวณความชันใด ๆ เพื่อคำนวณการเพิ่มขึ้นของ: (วินาที (f) * รัน) (ซึ่งเป็นอัตราส่วน) โดยที่fคือละติจูด ในการแก้ไขปัญหานี้เราจำเป็นต้องคูณลาดที่คำนวณเป็นวินาที (f) หรือแบ่งเท่ากันโดย cos (f) นี่ให้สูตรง่ายๆกับเรา:

คำนวณความชัน (ตามที่เพิ่มขึ้น: วิ่งหรือเปอร์เซ็นต์) โดยใช้เส้นโครงของ Mercator แล้วหารผลลัพธ์ด้วยโคไซน์ของละติจูด

ขั้นตอนการทำงาน

เมื่อต้องการทำเช่นนี้กับกริดที่กำหนดเป็นองศาทศนิยม (เช่น SRTM DEM) ให้ทำตามขั้นตอนต่อไปนี้:

  1. สร้างกริดละติจูด (นี่เป็นเพียงตารางพิกัด y)

  2. คำนวณโคไซน์ของมัน

  3. ทำโครงงานทั้ง DEM และโคไซน์ของละติจูดโดยใช้การฉาย Mercator ซึ่งสเกลเป็นจริงที่ Equator

  4. หากจำเป็นให้แปลงหน่วยระดับความสูงเพื่อให้สอดคล้องกับหน่วยของพิกัดที่คาดการณ์ไว้ (โดยปกติคือเมตร)

  5. คำนวณความชันของ DEM ที่คาดการณ์ไว้ไม่ว่าจะเป็นความชันบริสุทธิ์หรือเปอร์เซ็นต์ ( ไม่ใช่มุม)

  6. หารความชันนี้ด้วยตารางโคไซน์ (ละติจูด) ที่คาดการณ์

  7. หากต้องการให้ปฏิเสธตารางลาดชันไปยังระบบพิกัดอื่น ๆ เพื่อทำการวิเคราะห์หรือทำแผนที่เพิ่มเติม

ข้อผิดพลาดในการคำนวณความชันจะสูงถึง 0.3% (เนื่องจากขั้นตอนนี้ใช้แบบจำลองดินทรงกลมแทนที่จะเป็นรูปวงรีรูปไข่ซึ่งแบนราบลง 0.3%) ข้อผิดพลาดนั้นมีขนาดเล็กกว่าข้อผิดพลาดอื่น ๆ ที่เข้าสู่การคำนวณความชันและอาจถูกละเลยได้


การคำนวณระดับโลกอย่างเต็มที่

การฉายภาพ Mercator ไม่สามารถจัดการกับทั้งสองขั้ว สำหรับการทำงานในพื้นที่ขั้วโลกให้พิจารณาใช้การประมาณภาพสเตริโอ Stereographic ด้วยขนาดจริงที่ขั้ว การบิดเบือนขนาดเท่ากับ 2 / (1 + sin (f)) ใช้นิพจน์นี้แทนวินาที (f) ในเวิร์กโฟลว์ โดยเฉพาะแทนการคำนวณกริด cosine (ละติจูด) คำนวณกริดที่มีค่าเป็น (1 + sin (ละติจูด)) / 2 ( แก้ไข : ใช้ - ระดับความสูงสำหรับขั้วโลกใต้ตามที่กล่าวไว้ในความคิดเห็น) จากนั้นดำเนินการตรงตามเดิม

สำหรับการแก้ปัญหาระดับโลกที่สมบูรณ์ลองพิจารณาแบ่งตารางภาคพื้นดินออกเป็นสามส่วน - หนึ่งรอบแต่ละขั้วและอีกหนึ่งรอบ ๆ เส้นศูนย์สูตร - ทำการคำนวณความชันแยกต่างหากในแต่ละส่วนโดยใช้การฉายภาพที่เหมาะสม สถานที่ที่เหมาะสมในการแยกโลกอยู่ตามวงกลมของละติจูดที่ละติจูด 2 * ArcTan (1/3) ซึ่งประมาณ 37 องศาเนื่องจากในละติจูดเหล่านี้ปัจจัยการแก้ไข Mercator และ Stereographic จะเท่ากัน (มีค่าทั่วไป จาก 5/4) และมันจะดีเพื่อลดขนาดของการแก้ไขที่ทำ ในการตรวจสอบการคำนวณกริดควรอยู่ในข้อตกลงอย่างใกล้ชิดที่ทับซ้อนกัน (จำนวนเล็กน้อยของความไม่แน่นอนของจุดลอยตัวและความแตกต่างเนื่องจากการ resampling ของกริดที่ฉายควรเป็นแหล่งที่มาของความคลาดเคลื่อน)

อ้างอิง

จอห์นพีไนเดอร์, แผนที่ประมาณการ - คู่มือการทำงาน USGS Professional Paper 1395, 1987


7
ฉันพบว่าตัวเองอยู่ในตำแหน่งอย่างที่เคยทำบ่อยครั้งที่ขอบคุณ whuber อีกครั้งเพื่ออธิบายวิธีแก้ปัญหารวมทั้งให้เหตุผลที่สร้างมันขึ้นมา หมวกของฉันปิดให้คุณครับ
matt wilkie

ขอบคุณ @ แมท ฉันไม่ได้ตั้งใจจะแนะนำก่อนหน้านี้ว่าควรยกเลิกคำตอบ (ตอนนี้ถูกลบ) ของคุณแล้ว: ในความเป็นจริงฉัน upvoted เพราะคุณแบ่งปันลิงก์ไปยังการอ้างอิง USGS ที่น่าสนใจที่สามารถใช้กับผู้อ่านจำนวนมาก (ความคิดเห็นของฉันมีความสำคัญเพียงข้อความรองในกระดาษนั้นไม่ใช่กระดาษเอง)
whuber

อ่า ขอขอบคุณสำหรับการชี้แจง. ฉันได้รับการบูรณะคำตอบที่คนไว้วางใจมีข้อมูลเพียงพอในด้านหน้าของพวกเขาในขณะนี้ที่จะทำให้การเลือกข้อมูล :)
แมตต์วิลคี

2
มาจากภูมิหลังภาษาฝรั่งเศสฉันใช้เวลาสักครู่ในการแปลคำศัพท์ที่จำเป็นเพื่อทำความเข้าใจกับคำตอบที่ดีกว่านี้ดังนั้นฉันคิดว่าการทิ้งลิงค์นี้เป็นความช่วยเหลือที่ดีสำหรับมือใหม่เช่นตัวเอง: webhelp.esri.com/arcgisdesktop/9.2/ ......
Akheloes

มันเป็นวิธีการที่ยอดเยี่ยมและฉันได้ใช้วิธีแก้ปัญหาของคุณเพื่อสร้างแรสเตอร์แบบลาดชันทั่วโลกแล้ว คำแนะนำอย่างหนึ่งจากประสบการณ์จริง: เนื่องจากค่าละติจูดทางทิศใต้ของเส้นศูนย์สูตรเป็นลบคุณต้องใช้ค่าละติจูดแบบสัมบูรณ์ในสมการต่อไปนี้: (1 + sin (ละติจูด) / 2
Saleika

18

คำตอบเดิม

ฉันเดาว่าหน่วยแนวนอนสำหรับแรสเตอร์ของคุณอยู่ในหน่วยองศาหรือส่วนโค้ง คุณจำเป็นต้องปฏิเสธภาพแรสเตอร์นี้เป็นการฉายภาพเชิงพื้นที่ที่หน่วยแนวนอนและแนวตั้งของคุณเหมือนกัน (เช่นถ้าหน่วยแนวตั้งเป็นหน่วยเมตรฉันแนะนำให้ใช้ UTM ซึ่งมีหน่วยแนวนอนเป็นเมตร)

ในการปฏิเสธการแรสเตอร์ด้วย ArcCatalog / ArcGIS ให้ดูใน:

ArcToolbox> เครื่องมือการจัดการข้อมูล> การฉายและการแปลง> Raster> Project Raster

เลือกการอ้างอิงเชิงพื้นที่ที่คาดการณ์ซึ่งครอบคลุมพื้นที่ที่คุณสนใจเช่นลองใช้โซน UTM มีตัวเลือกอื่น ๆ อีกมากมายซึ่งจะเป็นเอกสารที่ดีที่สุดในคู่มือการใช้งาน หมายเหตุคุณไม่สามารถสร้างชุดข้อมูลความลาดเอียงสำหรับทั้งโลก (ถ้านั่นคือสิ่งที่คุณพยายามจะทำ)

คำตอบที่ดีกว่าการใช้ GDAL กับเครื่องชั่ง

ตอนนี้ข้อมูล SRTM พร้อมใช้งานทั่วโลกแล้วฉันสามารถดูและทำงานกับไฟล์ได้ gdaldemยูทิลิตี้จาก GDALสามารถคำนวณความลาดชันและ hillshade ใช้ขนาดตัวเลือกสำหรับสัดส่วนของหน่วยแนวตั้งแนวนอน คู่มือแนะนำ 111120 m / °สำหรับบางอย่างเช่นกระเบื้อง SRTM ตัวอย่างเช่นจากเชลล์ OSGeo4W:

$ gdaldem slope -s 111120 -compute_edges N44E007.hgt N44E007_slope.tif

-compute_edgesตัวเลือกที่จะทำให้ขอบอย่างราบรื่นมากขึ้นถ้าคุณต้องการที่จะปักครอสติกระเบื้องไม่กี่ร่วมกัน หรือคำนวณกระเบื้องสำหรับพื้นที่ขนาดใหญ่ ข้อเสียของเทคนิค "สเกล" คือระยะทางในทิศทาง EW และ NS ไม่เท่ากันยกเว้นที่เส้นศูนย์สูตรดังนั้นสำหรับแผ่นกระเบื้องที่อยู่ใกล้กับเสามากขึ้น


มันคุ้มค่าที่จะเน้นความคิดเห็นสุดท้ายของคุณ: นี่เป็นทางออกที่ไม่ดีสำหรับจุดที่ไม่ได้อยู่ใกล้เส้นศูนย์สูตร นี่ไม่ใช่เรื่องเล็ก ๆ ของ "การบิดเบือนความจริงผิด ๆ ": ผลลัพธ์จะผิดอย่างไม่มีการลดลงโดยเฉพาะอย่างยิ่งในสถานที่ที่ใกล้กับเสามากกว่าเส้นศูนย์สูตร เอกสารสำหรับgdaldemรัฐ "สำหรับสถานที่ที่ไม่ได้อยู่ใกล้เส้นศูนย์สูตรจะดีที่สุดในการปฏิเสธตารางของคุณโดยใช้ gdalwarp ก่อนที่จะใช้ gdaldem" น่าเสียดายที่ชุดข้อมูลนั้นไม่สามารถใช้งานได้ทั่วโลกยกเว้นว่าคุณแบ่งเป็นชุดเล็ก ๆ (74 UTM zone หรืออาจ?) ฉายภาพเหล่านั้นคำนวณความลาดชันและทำให้ผลลัพธ์เป็นโมเสค
whuber

7

พูดง่ายๆก็คือไม่มี ตามคำนิยามระบบพิกัดที่ยึดตามองศาจะไม่ถูกคาดการณ์ ในการพูดจาทั่วไปเราบอกว่า WGS84 เป็นการฉายภาพ "ทางภูมิศาสตร์" แต่นั่นไม่จริงเพียงเพื่อความสะดวก

ฉันคิดว่าฉันจำได้ว่าได้อ่านเกี่ยวกับซอฟต์แวร์หรือกระบวนการสำหรับการทำงานอย่างถูกต้องกับแบบจำลองระดับความสูงในพื้นที่ทางภูมิศาสตร์ที่ไม่ได้คาดการณ์ แต่ฉันไม่สามารถหาได้ในขณะนี้ ไม่ว่าในกรณีใดมันจะเป็นการทดลองหรือสร้างด้วยตัวเองจากกระบวนการของรหัส


Ahhh, พบ: การพัฒนาชุดข้อมูลความลาดเอียงระดับโลกสำหรับการประเมินการเกิดดินถล่มที่เกิดจากแผ่นดินไหว (USGS) หน้า 4 อธิบายปัญหาได้ดี

... ความยาวของหนึ่งองศาจะแตกต่างกันไปขึ้นอยู่กับตำแหน่งขนลุกขนพองของมัน ที่เส้นศูนย์สูตรหนึ่งองศาโดยหนึ่งองศาบล็อกเป็นสี่เหลี่ยมจัตุรัสที่สมเหตุสมผลเมื่อแปลงเป็นหน่วยเมตร (111,321 เมตรในทิศทาง x-110,567 เมตรในทิศทาง y ... แต่ใกล้กับเสาระยะทางใน ทิศทาง x ขยายตัวเล็กลงเนื่องจากฟังก์ชันของโคไซน์ของละติจูดเนื่องจากการบรรจบกันของเส้นเมอริเดียนแพคเกจ GIS ส่วนใหญ่ ArcGIS รวมใช้งานได้เฉพาะกับพิกเซลสี่เหลี่ยมจัตุรัสและใช้การปรับขนาด x, y หรือ z ไม่สามารถใช้ยูนิตร่วมได้

บทความนี้อธิบายการคำนวณและเครื่องมือซอฟต์แวร์เฉพาะ ( , , ) ที่ใช้ในการแก้ปัญหาพื้นฐานนี้ กระดาษไม่ได้มีรหัส แต่ถ้าถามอย่างพวกเขาอาจแบ่งปัน ไม่ว่าในกรณีใด ๆ ฉันอาจถามว่าผลลัพธ์อยู่ที่ใดการเป็น USGS มันอาจออนไลน์อยู่ที่ไหนซักแห่ง :)


1
ข้อเสนอแนะของกระดาษนั้นว่าการฉายภาพระยะทางเท่ากันของ azimuthal สามารถใช้ในการคำนวณความลาดชันได้เข้าใจผิดและผิด มันจะให้ความลาดเอียงที่ถูกต้องใกล้กับจุดกำเนิดของเส้นโครง แต่พวกมันก็จะมีความแม่นยำน้อยลงเมื่อระยะห่างจากจุดกำเนิดเพิ่มขึ้น
whuber

ขอบคุณสำหรับการชี้ให้เห็นว่า ผู้อ่านโปรดอ่านgis.stackexchange.com/a/40464/108เช่นกันเพื่อความสมดุล
matt wilkie

2

พารามิเตอร์ Global DEM (ซึ่งสูตรส่วนใหญ่อิงตามสมมติฐานของปริภูมิแบบยุคลิด) สามารถรับได้อย่างมีประสิทธิภาพโดยใช้ระบบ EQUI7 GRID (Bauer-Marschallinger และคณะ 2014) EQUI7 GRID แบ่งโลกออกเป็น 7 ส่วนซึ่งทั้งหมดนี้ถูกฉายในระบบฉายภาพที่มีความยาวเท่ากันและสูญเสียความแม่นยำน้อยที่สุด ดูตัวอย่าง en DEMทั่วโลกที่ความละเอียด 250 ม.ใน EQUI7 GRID ที่นี่คุณสามารถค้นหาโค้ดตัวอย่างที่แสดงวิธีหาพารามิเตอร์ DEM ทั่วโลกโดยใช้ SAGA GIS เมื่อคุณได้รับพารามิเตอร์ DEM ในระบบ EQUI7 GRID แล้วคุณสามารถแปลงกลับแผนที่ทั้งหมดเป็นlonglatพิกัดWGS84 แล้วสร้างโมเสคระดับโลกโดยใช้ GDAL


คุณช่วยอธิบายวิธีนี้ตอบคำถามได้อย่างไร หากคุณกำลังเสนอให้ใช้การคาดการณ์ที่มีความยาวเท่ากันสำหรับการคำนวณความชันโปรดทราบว่านั่นเป็นวิธีการแก้ปัญหาที่ไม่ดีนักเนื่องจากมีการบิดเบือนเมตริกเชิงสัมพัทธ์ขนาดใหญ่ที่เกิดขึ้นเมื่อมีการเคลื่อนออกจากจุดศูนย์กลางของการฉาย แม้ว่าการมุ่งเน้นไปที่เจ็ดการคาดการณ์เช่นนี้ต่อมวลชนบนบกจะช่วยบรรเทาปัญหานั้นได้ แต่ก็ยังไม่ใช่ตัวเลือกที่ดีที่สุด
whuber

กระดาษโดยBauer-Marschallinger และคณะ (2014)อธิบายว่าทำไมการคาดคะเนเหล่านี้จึงถูกเลือกให้แสดงถึงมวลดินแดนโลก (สันนิษฐานว่ามีการสูญเสียความแม่นยำขั้นต่ำ) ฉันยอมรับว่าการฉายภาพสองมิติใด ๆ ในที่สุดจะนำไปสู่การเสียรูป แต่เท่าที่ฉันรู้ EQUI7 คือการประนีประนอมที่ดีระหว่างการสูญเสียความแม่นยำและ comodity (พีชคณิต 2D) ต้องบอกว่ารูปหกเหลี่ยมถูกนำมาใช้อีกครั้งเพื่อแสดงพื้นผิวโลก (แม้ว่าการวิเคราะห์ DEM ด้วยรูปหกเหลี่ยม 3D ยังคงเป็นปัญหา)
Tom Hengl

ขอบคุณสำหรับการอ้างอิง. นามธรรมของมันชี้ให้เห็นว่ามันแก้ปัญหาที่แตกต่างกันอย่างมากนั่นคือ "การลดการสุ่มตัวอย่างข้อมูลในท้องถิ่นให้น้อยที่สุดที่ปรากฏในระหว่างการฉายภาพดาวเทียมทั่วไปไปยังตารางแรสเตอร์ปกติ" ที่ไม่ได้หมายความว่ามันจะทำงานได้ดีสำหรับวัตถุประสงค์อื่น ๆ เช่นการประเมินความลาดชัน
whuber

แน่นอนว่า EQUI7 ไม่ได้แก้ปัญหาในการประเมินความลาดชันในพื้นที่อย่างแม่นยำ แต่อาจเป็นวิธีที่หรูหรากว่าการใช้การฉาย Mercator ที่แนะนำข้างต้น ในที่สุดหากใครต้องการประเมินความลาดชันอย่างสมบูรณ์แบบตัวเลือกเดียวก็น่าจะ (1) ใช้การประมาณการในท้องถิ่น (ระยะทางเท่ากัน) ต่อแผ่นขนาดเล็ก (เช่น 100 คูณ 100 กม.) ด้วยการซ้อนทับ 10-20% ดังที่กล่าวไว้ในVerdin และคณะ (2007)หรือ (2) เพื่อใช้ตารางหกเหลี่ยม ( แพ็คเกจ dggridR )
Tom Hengl

ปัญหาไม่แม่นยำ - มันอยู่ในการสร้างความลาดชันและแง่มุมที่เป็นระบบ เนื่องจากการประมาณระยะทางที่เท่ากันบิดเบี้ยวไปในทิศทางมุมฉากกับ geodesics ที่เกิดขึ้นที่จุดศูนย์กลางของมันมุมมองจะผิดเสมอ (แม้ว่าความแม่นยำสมเหตุสมผลใกล้กับจุดศูนย์กลางที่การบิดเบือนทั้งหมดอยู่ในระดับต่ำ) และข้อผิดพลาดในเนินเขาจะเติบโตอย่างรวดเร็ว การใช้การคาดการณ์ในท้องถิ่นจำนวนมากจะใช้งานได้ แต่เป็นสิ่งที่ตรงกันข้ามกับความสง่างามที่คุณให้คุณค่า
whuber

-2

ความลาดชันเพิ่มขึ้น / วิ่ง คำนวณการเพิ่มขึ้นและการคำนวณและคุณมีคำตอบ มันง่ายในการคำนวณระยะห่างระหว่างพิกัดทางภูมิศาสตร์ สิ่งนี้จะแนะนำข้อผิดพลาดการสุ่มตัวอย่างน้อยกว่าเมื่อเทียบกับการแปลงเป็น UTM ฯลฯ

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