คำถามติดแท็ก raster

Raster เป็นรูปแบบข้อมูลที่ประกอบด้วยกริดปกติซึ่งมักจะจัดเก็บในรูปแบบภาพเหมือน

3
การกำหนดค่าตามเงื่อนไขให้กับเซลล์แรสเตอร์ที่อยู่ติดกัน?
ฉันมีค่าแรสเตอร์: m <- matrix(c(2,4,5,5,2,8,7,3,1,6, 5,7,5,7,1,6,7,2,6,3, 4,7,3,4,5,3,7,9,3,8, 9,3,6,8,3,4,7,3,7,8, 3,3,7,7,5,3,2,8,9,8, 7,6,2,6,5,2,2,7,7,7, 4,7,2,5,7,7,7,3,3,5, 7,6,7,5,9,6,5,2,3,2, 4,9,2,5,5,8,3,3,1,2, 5,2,6,5,1,5,3,7,7,2),nrow=10, ncol=10, byrow = T) r <- raster(m) extent(r) <- matrix(c(0, 0, 10, 10), nrow=2) plot(r) text(r) จากแรสเตอร์นี้ฉันจะกำหนดค่า (หรือเปลี่ยนค่า) ให้กับ 8 เซลล์ที่อยู่ติดกันของเซลล์ปัจจุบันตามภาพประกอบนี้ได้อย่างไร ฉันวางจุดสีแดงในเซลล์ปัจจุบันจากบรรทัดรหัสนี้: points(xFromCol(r, col=5), yFromRow(r, row=5),col="red",pch=16) ที่นี่ผลลัพธ์ที่คาดหวังจะเป็น: โดยที่ค่าของเซลล์ปัจจุบัน (เช่น 5 ในค่าแบบแรสเตอร์) จะถูกแทนที่ด้วย 0 โดยรวมแล้วจะต้องคำนวณค่าใหม่สำหรับ 8 เซลล์ที่อยู่ติดกันดังนี้: ค่าใหม่ …
12 raster  r  adjacency 

1
ทำไมช่อง @ data @ values ​​สำหรับ RasterLayer มีเพียงลอจิคัล (0) และไม่ใช่ค่าจริง
พยายามไปถึงจุดต่ำสุดของเหตุผลเมื่อฉันอ่านในแรสเตอร์ของ NDVI ช่อง @ data @ values ​​ไม่ได้มีค่าจริงจนกว่าฉันจะตั้งค่าด้วยตนเอง ตัวอย่างเช่น: NDVI <- raster("./filename.tif", crs="+proj=longlat +datum=WGS84") NDVI@data@values ## returns: logical(0) สิ่งนี้ไม่ได้เกิดขึ้นกับแรสเตอร์อื่น ๆ ที่ฉันโหลดด้วยวิธีเดียวกันดังนั้นฉันจึงสับสน ฉันหวังว่าฉันจะเฉพาะเจาะจงมากขึ้น แต่ฉันจำไม่ได้ว่าทำอะไรที่แตกต่างมาก่อน ง่ายพอที่จะรับค่าด้วยตนเองโดยใช้: NDVI1@data@values <- getValues(NDVI19east) แต่มันก็เป็นความเจ็บปวดที่ต้องทำสำหรับไฟล์ทุกไฟล์ ดังนั้นคำถามสองส่วน: ทำไมสิ่งนี้ถึงเกิดขึ้นตั้งแต่แรก? ฉันเข้าใจว่าอาจมีบางอย่างเกี่ยวกับวิธีการจัดเก็บไฟล์แรสเตอร์ (เช่นไม่ว่าจะอยู่ในหน่วยความจำหรือไม่ก็ตาม) แต่ฉันไม่เข้าใจจริง ๆ ว่าการเปลี่ยนแปลงวิธีการที่ฉันควรใช้ในการเข้าถึงข้อมูล ... มีวิธีทำให้กระบวนการนี้เป็นอัตโนมัติ (อาจใช้วิธีที่คล้ายกับ lapply) เพื่ออ่านไฟล์ในรูปแบบ RasterLayers และเข้าถึงค่าสำหรับไฟล์เหล่านั้นหรือไม่? โครงการปัจจุบันของฉันเกี่ยวข้องกับการอ่านครั้งละ 6-10 ไฟล์สำหรับ NDVI, ปริมาณน้ำฝนและตัวแปรสภาพแวดล้อมอื่น ๆ เพื่อรวมเข้าด้วยกันและทำงานซ้อนทับแบบถ่วงน้ำหนัก มันจะเป็นประโยชน์ในการทำให้กระบวนการนำเข้าข้อมูลเป็นไปโดยอัตโนมัติ
12 raster  r  memory 

1
ชุดข้อมูล ArcGIS Raster Mosaic และ GDAL VRT ควรใช้เมื่อใด
ArcGIS สก์ท็อปมีที่Raster Mosaic ชุดข้อมูล , QGIS และเพื่อน ๆ มีตาราง Raster เสมือน สกิมของเอกสารเปิดเผยความคล้ายคลึงกันมาก พวกเขาทั้งสองสร้างหรือเปิดใช้งานการแสดงข้อมูลทางเลือกที่อยู่ที่อื่นโดยไม่ต้องสร้างภาพใหม่ ตัวอย่างรวมถึงการสร้างภาพที่ไร้รอยต่อเดียวจากไทล์จำนวนมากโดยไม่ต้องสร้างภาพเดี่ยวนั้นหรือแชนเนลผสมและจับคู่หรือเลือกเอาช่วงค่าจากผลลัพธ์และอื่น ๆ ความคล้ายคลึงกันนั้นขยายไปไกลแค่ไหน? RMD เปิดใช้งานสิ่งต่าง ๆ ที่ VRT ไม่สามารถทำได้หรือไม่? พวกเขาคืออะไร คุณสามารถทำอะไรกับ VRTs ที่คุณไม่สามารถทำได้ด้วย RMD ในระยะสั้นสมมติว่ามีการเข้าถึงและความสะดวกสบายเท่ากันโดยใช้ทั้งสองกลุ่มเครื่องมือเมื่อใดที่คนควรใช้ชุดข้อมูล Raster Mosaic และเมื่อใดที่ Virtual Raster Tables เรียงลำดับของวัน

1
ทฤษฎีเกี่ยวกับจำนวน GCP เมื่ออ้างอิงทางภูมิศาสตร์คืออะไร
แค่สงสัยก็จะดีกว่าเสมอที่มีมากกว่า 3 GCPs หรือไม่ GCPs ควรกระจายอย่างสม่ำเสมอหรือไม่? ฉันจะหาแหล่งข้อมูลทั่วไปเกี่ยวกับทฤษฎีนี้ได้ที่ไหน นอกเหนือจากการลองผิดลองถูกซึ่งสอนให้ฉันรู้ว่าอะไรทำงานได้ในเวลานั้นและไม่ควรทำอะไรในกรณีที่กำหนด ไม่สำคัญ แต่สนใจเพียง

3
GDAL และ Python: จะรับพิกัดสำหรับเซลล์ทั้งหมดที่มีค่าเฉพาะได้อย่างไร
ฉันมีArc / Info Binary Grid --- โดยเฉพาะแรสเตอร์การไหลของ ArcGIS --- และฉันต้องการระบุเซลล์ทั้งหมดที่มีค่าเฉพาะ (หรืออยู่ในช่วงของค่า) ในที่สุดฉันต้องการไฟล์รูปร่างของคะแนนที่แสดงถึงเซลล์เหล่านี้ ฉันสามารถใช้ QGIS เพื่อเปิด hdr.adf และรับผลลัพธ์นี้เวิร์กโฟลว์คือ: QGIS> เมนู Raster> Raster Calculator (ทำเครื่องหมายคะแนนทั้งหมดด้วยมูลค่าเป้าหมาย) QGIS> เมนู Raster> รูปหลายเหลี่ยม QGIS> เมนูเวกเตอร์> เมนูย่อยเรขาคณิต> รูปหลายเหลี่ยม centroids แก้ไขเซนทรอยด์เพื่อลบโพลีเซนทรอยด์ที่ไม่ต้องการ (เหล่านั้น = 0) วิธีการนี้ "ทำงานได้" แต่มันไม่ได้ดึงดูดความสนใจฉันเพราะมันสร้างไฟล์ 2 ไฟล์ที่ฉันต้องลบแล้วฉันต้องลบบันทึกที่ไม่ต้องการออกจาก shapefile ของ centroids (นั่นคือ = 0) คำถามที่มีอยู่วิธีการเรื่องนี้ แต่มันเหมาะสำหรับ ArcGIS …
12 python  raster  gdal 

1
GDAL RasterizeLayer ไม่ได้เผารูปหลายเหลี่ยมทั้งหมดเป็น Raster?
ฉันพยายามเบิร์นไฟล์ไปยังแรสเตอร์โดยใช้ RasterizeLayer ของ GDAL ฉันสร้างพื้นที่แรสเตอร์ที่น่าสนใจจากรูปร่างที่แตกต่างกันก่อนกำหนดขนาดพิกเซลที่เฉพาะเจาะจง AOI นี้ทำหน้าที่เป็นฐานสำหรับการแรสเตอร์ต่อไปนี้ทั้งหมด (จำนวน collumns และแถวเดียวกัน, การฉายภาพและ geotransform เดียวกัน) ปัญหาเกิดขึ้น แต่เมื่อฉันไปเผารูปร่างเพื่อแรสเตอร์ของตัวเองตามขนาดพิกเซลและประมาณการเดียวกัน ลิงค์ด้านล่าง (มีตัวแทนไม่เพียงพอที่จะโพสต์ภาพ) แสดงไฟล์รูปร่างดั้งเดิมในผิวสีแทนและสีชมพูเข้มที่ RasterizeLayer เขียนข้อมูล สีชมพูอ่อนเป็นค่า nodata สำหรับข้อมูลแรสเตอร์สีชมพูเข้ม สีเทาคือ AOI ตามการเบิร์นไฟล์รูปร่างเสร็จสมบูรณ์ เมื่อพิจารณาถึงขอบเขตของรูปหลายเหลี่ยม shapefile ฉันคาดว่าจะเห็นค่าการเบิร์นที่มุมด้านล่างทั้งสองรวมทั้งพิกเซลสองพิกเซลที่อยู่ใต้ข้อมูลที่แสดง เห็นได้ชัดว่านี่ไม่ใช่กรณี ดังต่อไปนี้เป็นรหัสที่ฉันใช้ในการสร้างสิ่งเหล่านี้ รูปร่างทั้งหมดถูกสร้างขึ้นโดยใช้ QGIS และถูกสร้างขึ้นทั้งหมดในการฉายภาพเดียวกัน (ควรสังเกตว่าการ gridding ในภาพที่แสดงเป็นเพียงเพื่อให้ความคิดเกี่ยวกับขนาดพิกเซลที่ฉันใช้) from osgeo import ogr from osgeo import gdal aoi_uri = 'AOI_Raster.tif' aoi_raster = …

1
การแปลงข้อมูล Raster เป็นข้อมูลรูปหลายเหลี่ยม
ฉันพยายามแปลงข้อมูลแรสเตอร์เป็นข้อมูลรูปหลายเหลี่ยม ก่อนหน้านี้ฉันใช้ shapefile.py เพื่อสร้างข้อมูลจุดบน lat / lon เดี่ยว ๆ บน raster แต่นั่นจะสร้างข้อมูลขนาดใหญ่และการสืบค้นมันจะเป็นปัญหาใหญ่ ดังนั้นจะดีกว่าถ้าฉันสามารถแปลงข้อมูลแรสเตอร์เป็นข้อมูลรูปหลายเหลี่ยม ฉันสามารถค้นหาSAGAได้ แต่ดูเหมือนว่าจะสามารถแปลงไฟล์ . grdได้เท่านั้น มีวิธีแปลงรูปแบบ GeoTIFF หรือชุดข้อมูลแรสเตอร์โดยทั่วไปเป็นรูปหลายเหลี่ยมหรือไม่? อัปเดต: การใช้ gdal_polygonize.py ฉันกำลังเรียกใช้โค้ดต่อไปนี้ gdal_polygonize.py ~/development/Biodiversity/biodiversity/GeoTIFF/bio11.tif -f "ESRI Shapefile" bio11.shp แต่ฉันได้รับข้อผิดพลาดดังต่อไปนี้ รุ่น gdal ของฉันคือ 1.9.0 Traceback (most recent call last): File "/usr/bin/gdal_polygonize.py", line 34, in <module> import gdal, ogr, osr …

1
ทำความเข้าใจกับตัวกรองความโค้งของการวิเคราะห์ภูมิประเทศแบบแรสเตอร์ QGIS หรือไม่?
ฉันได้อ่านซอร์สโค้ดของตัวกรองแรสเตอร์ QGis-1.7.4 หลายตัวซึ่งคำนวณความชันด้านและความโค้ง มีสูตรในตัวกรองการคำนวณความโค้งทั้งหมดที่ทำให้ฉันเป็น ไฟล์ต้นฉบับอยู่ใน QGis เวอร์ชันปัจจุบันโดยมีพา ธ ต่อไปนี้: QGIS-1.7.4 / src / วิเคราะห์ / แรสเตอร์ / qgstotalcurvaturefilter.cpp จุดประสงค์ของตัวกรองนี้คือการคำนวณความโค้งทั้งหมดของพื้นผิวในหน้าต่างเก้าเซลล์ รหัสฟังก์ชั่นมีดังนี้: float QgsTotalCurvatureFilter::processNineCellWindow( float* x11, float* x21, float* x31, float* x12, float* x22, float* x32, float* x13, float* x23, float* x33 ) { ... some code deleted ... double dxx = …

4
การรวมรูปหลายเหลี่ยมเข้ามุมเข้าด้วยกันในคุณสมบัติเดียว
ฉันสร้างเลเยอร์หลายเหลี่ยมจากแรสเตอร์และมี ID การจำแนกประเภทเดียว (และเอเคอร์คำนวณ) สำหรับรูปหลายเหลี่ยมแต่ละอัน ฉันต้องการที่จะ "ละลาย" คุณสมบัติการสัมผัสทั้งหมดเป็นรูปหลายเหลี่ยมขนาดใหญ่ พื้นที่ 3 ด้านที่ล้อมรอบด้วยสีแดง (ด้านล่าง) ประกอบด้วยรูปหลายเหลี่ยม / พิกเซลสีเขียวที่แตะที่จุดของสี่เหลี่ยมเท่านั้น (จากมุมมองของผู้ใช้ปลายทาง) รูปหลายเหลี่ยมสีเขียวทั้งหมดภายในพื้นที่วงกลมควรเชื่อมต่อและจัดการเป็นรูปหลายเหลี่ยมเดียวเนื่องจากไม่มี "ตัวแบ่ง" ที่คุณสมบัติ / เซลล์ไม่ได้สัมผัส อะไรจะเป็นวิธีที่ดีที่สุดในการบรรลุ "การเข้าร่วม" หรือ "การยุบ" คุณสมบัติทั้งหมดเหล่านี้โดยใช้ ArcGIS ฉันมีส่วนเสริม ArcInfo และ Spatial Analyst หากมีวิธีการที่ดีกว่าสำหรับการทำเช่นนี้ใน Spatial Analyst ฉันสามารถประมวลผลรูปหลายเหลี่ยมด้วยวิธีนั้นได้เช่นกัน

1
เปลี่ยนแผนที่แรสเตอร์ของประเภทที่อยู่อาศัยแบบสุ่มหรือไม่
ฉันมีแรสเตอร์ประเภทที่อยู่อาศัยสำหรับพื้นที่เฉพาะในสกอตแลนด์ ฉันต้องสร้างสถานการณ์ที่อยู่อาศัยในอนาคตด้วยการเปลี่ยนแปลงที่อยู่อาศัยเพื่อประเมินความมีชีวิตของประชากรนกชนิดนี้ ตัวอย่างเช่นในอนาคตอาจมีการทำป่าไม้เพิ่มขึ้น 10% ในพื้นที่ ฉันต้องการแก้ไขแผนที่ปัจจุบันโดยการสุ่มเพิ่มป่าไม้เป็นบล็อกขนาดที่แน่นอน ตอนนี้ฉันกำลังคิดถึงการเลือกจุดสุ่มจากแรสเตอร์ซึ่งระบุพื้นที่ที่ป่าไม้อาจเกิดขึ้นและเพิ่มขนาดบล็อกที่ถูกต้องโดยใช้ออโตมาตาเซลลูล่าร์ สิ่งนี้ดูเหมือนจะเป็นวิธีที่ดีที่สุดในการดำเนินเรื่องนี้ มีวิธีที่ดีกว่านี้ไหม? หากนี่เป็นวิธีที่ดีที่สุดที่มีอยู่ฉันจะทำสิ่งนี้ได้อย่างไรโดยเฉพาะอย่างยิ่ง R (ฉันกำลังดูฟังก์ชัน rpoints ใน "spatstat" พร้อมกับแพ็คเกจ CellularAutomata) ฉันยังสามารถเข้าถึง GRASS, QGis และ ArcMap 10 หากมีวิธีที่ง่ายกว่า
12 raster  r 

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

4
เปรียบเทียบแบบจำลองการยกระดับดิจิทัลสองรูปแบบ (DEM) จากไฟล์ LAS หรือไม่
ฉันมีไฟล์ LiDAR สองไฟล์ (.las) ไฟล์หนึ่งเป็นต้นฉบับแล้วสมมุติว่ามีจุด X และอีกอันคือสำเนาของไฟล์. Atlas แรก แต่มีจุด Y โดยที่ Y น้อยกว่า X ตอนนี้ฉันต้องการเปรียบเทียบแบบจำลองการยกระดับแบบดิจิทัล (DEMs) ของไฟล์. Atlas สองไฟล์นี้และเห็นภาพว่ามันแตกต่างกันอย่างไร ฉันต้องการได้รับข้อมูลเช่น RMSE ค่าเบี่ยงเบนมาตรฐานและการเปรียบเทียบประเภทอื่น ๆ ฉันจะขอบคุณถ้าใครสามารถบอกฉันว่าซอฟต์แวร์และวิธีการรับข้อมูลการเปรียบเทียบ

7
วิธีแปลงแรสเตอร์ให้ชี้ใน QGIS
ฉันต้องการแปลง Raster เป็น Point Vector ใน QGIS เป็นไปได้ไหม? QGIS มีตัวเลือกในการแปลงเป็นรูปหลายเหลี่ยม แต่ฉันไม่พบเครื่องมือใด ๆ ที่จะแปลงเป็นจุด ใครช่วยฉันได้บ้าง
12 qgis  raster 

6
เป็นไปไม่ได้ที่จะหาผลรวมของแรสเตอร์เนื่องจากพิกเซลของข้อมูล
ฉันมีชุดแรสเตอร์ (.vrt) พร้อมข้อมูลความชื้นในดินทุกวัน ฉันต้องการที่จะรวมพิกเซลของแรสเตอร์ทั้งหมดเพื่อให้มีการวัดตามเดือน อย่างไรก็ตามโลกทั้งใบไม่ได้ครอบคลุมในแต่ละวันซึ่งส่งผลให้เกิดค่านิยมในสถานที่ที่มีการวัดสำหรับวันอื่น ๆ สิ่งที่ฉันต้องการทำคือผลรวมของค่าแรสเตอร์แต่ละอัน อย่างไรก็ตามดูเหมือนว่าในแต่ละครั้งที่พิกเซล nodata อยู่ในผลรวมพิกเซลที่ได้จะถูกจัดประเภทเป็นโนดาต้าโดยตรง ฉันอยากจะมีสิ่งที่ตรงกันข้าม: ไม่สนใจคุณค่าของสิ่งที่มีอยู่ทั้งหมดและรวมส่วนที่เหลือ ฉันคิดถึงวิธีแก้ปัญหา 2 วิธี: การรวม rasters โดยไม่สนใจค่าของโหนด การแปลงพิกเซลโนดาต้าให้เป็นค่า 0 จากนั้นรวมแรสเตอร์ทั้งหมด น่าเสียดายที่ฉันไม่พบเครื่องมือใด ๆ ในการทำเช่นนี้ มีใครช่วยฉันบ้าง
12 raster  gdal  qgis-2 

3
Python ที่เทียบเท่ากับ gdalbuildvrt
มีวิธีในการทำงานเช่นเดียวกับยูทิลิตี gdalbuildvrt โดยใช้การผูก GDAL Python หรือไม่ จนถึงตอนนี้ฉันยังไม่พบวิธีการอื่นนอกเหนือจากการสร้าง vrt ของชุดข้อมูลเดียวและแก้ไข xml ด้วยตนเอง ฉันต้องการสร้าง vrt จากหลายภาพแรสเตอร์ เป็นไปได้ไหมถ้าใช้ Python แท้? ตัวเลือกอื่น ๆ ของฉันคือใช้ subprocess เพื่อเรียก gdalbuildvrt

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