ค้นหาจุดตัดของแรสเตอร์สองแห่ง


9

ฉันมีภาพแรสเตอร์สองภาพจัดเป็นบูลีน (1 หรือ 2) พวกเขาทับซ้อนกันในพื้นที่ที่กำหนด

ฉันต้องการแรสเตอร์ที่เป็นเพียงส่วนที่ทับซ้อนกัน

การใช้ Arcinfo 10. คำตอบสามารถใช้วิธีแรสเตอร์เท่านั้นไม่แปลงเป็นรูปหลายเหลี่ยมคะแนน ฯลฯ ...สำหรับการอ้างอิงนี่เป็นภาพหน้าจอ


คำตอบทั้งสองถูกต้องข้อแรกมีความหรูหรามากกว่า แต่ฉันตัดสินใจให้เครดิตครั้งที่สองเพราะมันมีประโยชน์มากที่สุดสำหรับฉัน
Thad

คำตอบ:


8

ดูเหมือนว่าจะเป็นการดำเนินการที่เรียบง่าย ใช้คลิป (การจัดการข้อมูล)เครื่องมือ

จากเอกสารความช่วยเหลือ:

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

นี่ควรจะง่ายกว่าความต้องการของคุณจริง ๆ เพราะมันใช้ฟังก์ชั่นหลักและไม่ควรต้องการส่วนขยายSpatial Analystเพราะวิธีการอื่น ๆ

-------------- แก้ไข

ในทางตรงกันข้ามถ้าเป้าหมายของคุณคือการสร้างแรสเตอร์ที่แสดงให้เห็นว่าทั้งสองปัจจัยการผลิตที่เป็นโมฆะหรือคนใดคนหนึ่งมีมูลค่าหรือทั้งสองมีมูลค่าแล้วคุณจะใช้Raster คูณ สิ่งนี้จะสร้างเอาท์พุทแรสเตอร์ที่มีค่าซึ่งเป็นผลคูณของค่าของอินพุตแรสเตอร์ โปรดทราบว่าสิ่งต่อไปนี้ต้องการส่วนขยาย Spatial Analyst

ตัวอย่างเช่นในกรณีของคุณด้วย raster แบบบูล

Raster 1:  1,2  
Raster 2:  1,2

Output Raster:  Possible combinations:  1x1,1x2,2x1,2x2 with output values: 1,2,4  
Value 1:  Both Boolean False  
Value 2:  1 or the other, Boolean True  
Value 4:  Both Boolean True

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

ตัวอย่าง:

Raster 1: 1,2 - Use [Raster Addition][4], with a constant of 1 - Output Raster 3  
Raster 2: 1,2 - Use [Multiply Raster][5], with constant of 2 - Output Raster 4  
Raster 3: 2,3  
Raster 4: 2,4

Now, multiply Raster 3 and Raster 4  
Output Raster:  Possible Combinations:  2x2,3x2,4x2,4x3 with output values: 4,6,8,12

Value 4:  Both Boolean False  
Value 6:  Raster 3 True, Raster 4 False  
Value 8:  Raster 4 True, Raster 3 False  
Value 12: both Boolean True

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

หวังว่านี่จะช่วยได้


ฉันยังคงได้รับข้อผิดพลาดในขอบเขตการส่งออก หรือหน้ากากมีข้อผิดพลาด น่าผิดหวังมาก .... อย่าเคยเจอกับสิ่งนี้มาก่อน
พระธาตุ

NVM ฉันคิดว่าฉันมีปัญหาการฉายภาพ เช่นฟังก์ชั่นเหล่านี้ไม่รองรับการฉายภาพทันที ... ดังนั้นจึงไม่ซ้อนทับกันกับฟังก์ชั่นที่เกี่ยวข้อง
พระธาตุ

@Thad - จากนั้นฉันจะลองปฏิเสธ rasters อันใดอันหนึ่งเพื่อให้เหมาะกับการฉายภาพของอีกฝ่าย ใช้เครื่องมือProject Rasterที่พบในเครื่องมือการจัดการข้อมูล หรือใช้รหัสไพ ธ อนเพื่อเขียนโปรแกรมเป็นส่วนหนึ่งของเวิร์กโฟลว์ของคุณ
Spatial

ใช่ฉันทำอย่างนั้นและมันก็ทำงานได้อย่างสมบูรณ์แบบ
Thad

9

ฉันคิดว่าใน rasters ของคุณคุณมีค่า 1 สำหรับสีขาว (ในพื้นที่ทางโนดาต้า) และ 2 สำหรับสีฟ้า / สีเขียว

ดังนั้นคุณจำเป็นต้องได้รับพื้นที่ที่ rasters ทั้งสองมีค่า 2

สิ่งนี้สามารถทำได้อย่างง่ายดายด้วยRaster Calculatorใน ArcGIS

นิพจน์จะมีลักษณะดังนี้:

("raster1" == 2) & ("raster2" == 2)

หรือ

Con(("raster1" == 2) & ("raster2" == 2), 1, 0)

PS เครื่องมือนี้ต้องใช้ส่วนขยาย Spatial Analyst


0

ฉันคิดว่าวิธีนี้สามารถช่วยคุณได้:

  1. arctoolbox >> Data management tools >> Raster >> Rasterprocessing >> Clip ลากและวางแรสเตอร์ของคุณในอินพุทและเอาท์พุท (ไม่ว่าอันไหน) ตอนนี้คุณมี shapefile จากพื้นที่ทับซ้อนของคุณ (เราเรียกมันว่า overlap.shp)
  2. ใช้สารสกัดโดยหน้ากากสำหรับทั้ง arctoolbox >> Spatial analyst tools >> Extraction >> Extract by maskแรสเตอร์:: อินพุต: Raster 1, ข้อมูลหน้ากาก: overlap.shp ตอนนี้คุณมีแรสเตอร์ของการซ้อนทับแรสเตอร์ 1 (เราเรียกมันว่าเหลื่อมกัน 1) arctoolbox >> Spatial analyst tools >> Extraction >> Extract by mask: input: Raster 2. mask data: the overlap.shp ตอนนี้คุณมีแรสเตอร์ของการซ้อนทับแรสเตอร์ 1 (เราเรียกมันว่าเหลื่อมกัน 2)
  3. ขั้นตอนสุดท้ายarctoolbox >> Spatial analyst tools >> Map algebra:: ลากแล้วปล่อย overlap2 & overlap1

ตอนนี้คุณสามารถทำอะไรก็ได้ ทุกสถิติที่คุณต้องการ

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