Zonal Statistics ทำงานอย่างไร


10

ฉันสับสนเล็กน้อยเกี่ยวกับการทำงานของเครื่องมือสถิติโซนใน QGIS (ทั้งเครื่องมือ 'สถิติสถิติ' ภายใต้เครื่องมือ Raster จากกล่องเครื่องมือทางภูมิศาสตร์ของ QGIS หรือเครื่องมือ 'สถิติ Raster จากรูปหลายเหลี่ยม' ภายใต้ SAGA Vector <-> เครื่องมือแรสเตอร์ )

โดยทั่วไปฉันมีเลเยอร์แผนที่แรสเตอร์และรูปหลายเหลี่ยมขนาดเล็กในชั้นแยกต่างหาก ฉันต้องการกำหนดค่าของรูปหลายเหลี่ยมด้านล่างแต่ละรูปหลายเหลี่ยม ในกรณีที่รูปหลายเหลี่ยมซ้อนกันหลาย ๆ เซลล์แรสเตอร์ฉันแค่ต้องการให้มีค่าสูงสุด

แต่ผลลัพธ์ไม่สมเหตุสมผลและฉันไม่สามารถเข้าใจเหตุผลของผลลัพธ์เหล่านั้นได้ (ซึ่งเห็นได้ชัดว่าไม่ใช่จำนวนสูงสุดของเซลล์แรสเตอร์แบบขีดเส้นใต้):

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

ความคิดใด ๆ ที่ฉันทำผิดหรือสิ่งที่ฉันยังไม่ได้พิจารณา? ผลกับ API หลามในqgis.analysis.QgsZonalStatistics()( ตามคำถามนี้ที่นี่ ) ที่ดีมาก แต่จะมีเพียงcount, meanและsum... แต่ด้วยเหตุผลบางอย่างไม่มีหรือmaxmin


1
เพิ่งลองสิ่งนี้ใน ArcMap โดยการแปลง Raster ของฉันเป็นคะแนนและดูเหมือนว่าเครื่องมือ QGIS Zonal Stats กำลังทำแบบเดียวกันภายในและใช้เฉพาะกรณีที่จุดตัดรูปหลายเหลี่ยม อย่างไรก็ตามดูเหมือนจะไม่มีตัวเลือกการจับคู่ที่เหมาะสมใน QGIS (สิ่งที่เทียบได้กับเครื่องมือ Spatial Join ของ ArcMap เช่น INTERSECT, WITHIN_A_DISTANCE, CLOSEST, ... )
GeoEki

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

ดูgis.stackexchange.com/a/281753/18189สำหรับคำอธิบายเกี่ยวกับวิธีการทำงานของอัลกอริทึม Zonal stats QGIS
dbaston

คำตอบ:


4

อัปเดตในเดือนเมษายน 2018 และ QGIS 2.18

ปลั๊กอินสถิติ Zonalเวอร์ชันปัจจุบันสามารถให้:

Count: to count the number of pixels
Sum: to sum the pixel values
Mean: to get the mean of pixel values
Median: to get the median of pixel values
StDev: to get the standard deviation of pixel values
Min: to get the minimum of pixel values
Max: to get the maximum of pixel values
Range: to get the range (max - min) of pixel values
Minority: to get the less represented pixel value
Majority: to get the most represented pixel value
Variety: to count the number of distinct pixel values

คำตอบเดิม

ในระยะสั้นแนวทางนี้กับ QGIS เท่าที่ฉันรู้ว่าเป็นไปไม่ได้ที่จะดูพิกเซลแรสเตอร์สูงสุดตามผลลัพธ์ เฉพาะการนับค่าเฉลี่ยและผลรวม ฉันได้ให้ทรัพยากรบางอย่างที่ครอบคลุมสิ่งนี้

นี่คือหน้าเอกสารสำหรับปลั๊กอินZonal Statistics

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

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

เปิดใช้งานปลั๊กอินสถิติโซน นี่เป็นปลั๊กอินหลักเพื่อติดตั้งไว้แล้ว ดูการใช้ปลั๊กอินเพื่อรู้วิธีเปิดใช้งานปลั๊กอินหลัก

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

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

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

เมื่อการประมวลผลเสร็จสิ้นให้เลือกเลเยอร์เขต ใช้เครื่องมือระบุและคลิกที่รูปหลายเหลี่ยมเขตใด ๆ คุณจะเห็นแอตทริบิวต์ใหม่สามรายการที่เพิ่มเข้าไปในเลเยอร์: ZS_count, ZS_mean และ ZS_sum แอตทริบิวต์เหล่านี้มีจำนวนพิกเซลแรสเตอร์ค่าเฉลี่ยของค่าพิกเซลแรสเตอร์และผลรวมของค่าพิกเซลแรสเตอร์ตามลำดับ เนื่องจากเราสนใจอุณหภูมิเฉลี่ยสนาม ZS_mean จึงเป็นสนามที่ใช้

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


2

ตั้งแต่ QGIS 3.0 (อาจเป็นไปได้ก่อนหน้านี้ฉันไม่แน่ใจ) มีสถิติดังต่อไปนี้:

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