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

GDAL (Geospatial Data Abstraction Library) เป็นไลบรารีตัวแปลโอเพนซอร์สและชุดของอรรถประโยชน์บรรทัดคำสั่งสำหรับการประมวลผลรูปแบบข้อมูลเชิงพื้นที่แรสเตอร์ ในฐานะห้องสมุดมันนำเสนอรูปแบบข้อมูลนามธรรมเดียวให้กับแอปพลิเคชันการโทรสำหรับทุกรูปแบบที่รองรับ นอกจากนี้ยังมาพร้อมกับโปรแกรมอรรถประโยชน์ commandline ที่มีประโยชน์มากมายสำหรับการแปลและประมวลผลข้อมูล

1
ฉันควรใช้ BIGTIFF = YES เป็นค่าเริ่มต้นเสมอหรือไม่
บางครั้งฉันเขียนสคริปต์สั้น ๆ / คำแนะนำการทำงานสำหรับเพื่อนร่วมงานที่ไม่ค่อยมีทักษะใน GDAL / การเขียนโปรแกรมโดยทั่วไป เพื่อป้องกันปัญหาใด ๆ กับสคริปต์เมื่อทำการผสาน / แปลงตำแหน่งทางภูมิศาสตร์กับ GDAL ฉันพยายามใช้ตัวเลือก BIGTIFF = YES โดยไม่คำนึงถึงขนาดของไฟล์ที่จะใช้ดังนั้นข้อผิดพลาดที่ไม่คาดคิดจะไม่ทำให้ผู้ใช้สับสน มีข้อบกพร่องในการทำเช่นนี้หรือไม่? ทำไมค่าเริ่มต้นของ BIGTIFF โดยเฉพาะอย่างยิ่งในปัจจุบันที่ไฟล์ GeoTIFF> 4 GB ค่อนข้างธรรมดา

1
PyQGIS บันทึกแรสเตอร์เป็นรูปภาพที่แสดงผลแล้วใช้เครื่องมือ GDAL ในนั้น
ฉันได้พยายามที่จะใช้รหัสจากQGIS บันทึก Raster เป็นภาพการแสดงผล iเป็นเลเยอร์แรสเตอร์: pipelayer = i pipeextent = pipelayer.extent() pipewidth, pipeheight = (pipelayer.width(), pipelayer.height()) piperenderer = pipelayer.renderer() pipeprovider = pipelayer.dataProvider() crs = pipelayer.crs().toWkt() pipe = QgsRasterPipe() pipe.set(pipeprovider.clone()) pipe.set(piperenderer.clone()) pipedFile = os.path.join(tempfile.gettempdir(), safeLayerName + '_pipe.tif') print pipedFile file_writer = QgsRasterFileWriter(pipedFile) file_writer.writeRaster(pipe, pipewidth, pipeheight, pipeextent, pipelayer.crs()) in_raster = pipedFile prov_raster …

1
ฉันจะรักษาเลเยอร์ที่จางหายไปเมื่อทำการโมเสคภาพด้วย gdal ได้หรือไม่?
ฉันกำลังทำการโมเสกภาพบางภาพด้วย gdal และต้องการปรับปรุงผลลัพธ์ขั้นสุดท้ายโดยใช้เลเยอร์อัลฟาที่ค่อยเป็นค่อยไป / ค่อยเป็นค่อยไปไปที่ขอบของภาพแต่ละภาพเพื่อลบขอบคมที่อยู่ตรงกลางของโมเสก ปัญหาที่ฉันมีอยู่ก็คือส่วนของภาพแต่ละภาพที่มีเลเยอร์ทีละส่วนกำลังปิดบังภาพที่อยู่ด้านล่างในโมเสกสุดท้ายแทนที่จะเป็นกึ่งโปร่งใสดังที่แสดงด้านล่าง: เป็นการดีที่ฉันต้องการภาพหนึ่งภาพที่จะจางหายไปในครั้งต่อไปโดยใช้ความโปร่งใสแบบค่อยเป็นค่อยไป ขั้นตอนที่ฉันดำเนินการเพื่อสร้างโมเสกมีดังนี้: เพิ่ม gcps ให้กับภาพต้นฉบับเพื่อระบุตำแหน่งทางภูมิศาสตร์และปรับทิศทางให้เหมาะสม (ทำกับแต่ละภาพตามลำดับ): gdal_translate -of GTiff -a_srs EPSG:4326 -a_srs EPSG:4326 -gcp 1616 0 -88.2728612066 40.5175787437 -gcp <etc., etc.> <original_image_with_gradual_alpha>.tif <image_with_gradual_alpha_and_gcps>.tif วางภาพลงใน geotiffs ใหม่ที่วางอย่างเหมาะสม (ทำตามแต่ละภาพ): gdalwarp -s_srs EPSG:4326 -t_srs EPSG:4326 -dstnodata 0 <image_with_gradual_alpha_and_gcps>.tif <warped_geotiff_with_alpha>.tif รวมภาพที่บิดเบี้ยวทั้งหมดเข้าด้วยกันเป็นภาพโมเสคเดียว: gdalbuildvrt -srcnodata 0 mosaic.vrt <warped_geotiff_with_alpha_root>*.tif gdal_translate mosaic.vrt …

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

2
แปลง timeseries stack ของ GTiff raster เป็น NetCDF เดี่ยว
ย้ายจากรายชื่อผู้รับจดหมาย gdal-dev: ในวันจันทร์ที่ 2 ก.ย. 2013 เวลา 19:09 น. David Shean เขียนว่า: สวัสดีรายการฉันพยายามที่จะทำแพคเกจชุด rasters ของ GTiff ที่มีการฉาย / ขอบเขต / ความละเอียดที่เหมือนกันเป็นไฟล์ NetCDF เดียวสำหรับการกระจาย ฉันใช้เวลาในชั่วโมงที่ผ่านมาเพื่อปรึกษา doc ออนไลน์และเล่นกับ gdal_translate, gdalbuildvrt และ gdalwarp โดยไม่ประสบความสำเร็จ มีวิธีง่ายๆในการทำเช่นนี้โดยใช้ยูทิลิตี้บรรทัดคำสั่ง gdal ที่มีอยู่? ฉันคิดว่าฉันจะถามก่อนที่จะใช้โซลูชันที่กำหนดเองโดยใช้ NetCDF Python API ขอบคุณ เดวิด ในวันอังคารที่ 3 กันยายน 2013 เวลา 10:15 น. Etienne Tourigny เขียนว่า: …
12 python  gdal  netcdf 

3
ชุดข้อมูล Gdal.ReadAsArray () ขัดข้อง Python
ฉันใช้ Python 2.6.5 (32 บิต) กับ Numpy 1.3 และ Gdal 1.9.1 ติดตั้งบน Windows 7 64 บิต ฉันพยายามอ่านชุดข้อมูลแรสเตอร์ 800 MB Imagine (.img) ในอาร์เรย์ Numpy เพื่อทำพีชคณิตแบบแรสเตอร์ แต่ทันทีที่ฉันเรียกใช้รหัสต่อไปนี้ Python.exe จึงล้มเหลว from osgeo import gdal g = gdal.Open(r'path\to\dataset', gdal.GA_Readonly) b = g.GetRasterBand(1) data = b.ReadAsArray() Python.exe ขัดข้องขณะb.ReadAsArray()โทร ฉันได้ทำการค้นหาโดย Google และพบบทความจาก Gdal 1.6 ที่กล่าวถึงปัญหานี้กับ Windows …
12 gdal  numpy  python-2.6  array 

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 

5
การติดตั้ง GEOS และหุ่นดีบน Windows
เมื่อพยายามติดตั้ง Shapely บนคอมพิวเตอร์ Windows 64 บิตของฉันฉันไม่สามารถทำให้ไลบรารี GEOS ทำงานได้ จนถึงตอนนี้ฉันได้เรียกใช้ตัวติดตั้ง OSGeo4W ซึ่งฉันติดตั้ง GDAL (ฉันเชื่อว่ามีไลบรารีทางภูมิศาสตร์รวมอยู่ในแพ็คเกจนั้น) หลังจากนั้นฉันตรวจสอบและฉันมี geos_c.dll ในC:\OSGeo4W\binไดเรกทอรีของฉันแต่ฉันไม่ได้ทำตามขั้นตอนการกำหนดค่าบางอย่างหรือไลบรารีไม่ทำงาน ฉันต้องการหุ่นดีในการทำงานดังนั้นฉันจึงวิ่งpip install shapelyหลังจากติดตั้ง GDAL และดูเหมือนว่าจะใช้งานได้ (แม้ว่าจะไม่สามารถหาไลบรารี C สำหรับ GEOS) ในรหัสของฉันฉันสามารถนำเข้า Shapely แต่เมื่อฉันพยายามที่จะใช้มันฉันได้รับข้อผิดพลาดบอกฉัน"geos.dll"ไม่พบ
12 qgis  python  gdal  shapely 

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
มีวิธีในการเพิ่มข้อยกเว้น GDAL ใน Python อย่างถูกต้องหรือไม่?
ฉันทำงานกับ GDAL ใน Python และต้องการให้ GDAL เพิ่มข้อยกเว้นเพื่อให้ฉันสามารถทำสิ่งที่มีประโยชน์กับพวกเขาได้ เช่นหากไฟล์ไม่สามารถเปิดด้วย gdal.Open () ฉันต้องการที่จะโยนข้อยกเว้นแทน gdal กลับไม่มี ฉันต้องการวิธีจับข้อผิดพลาดแทนที่จะถูกทิ้งไปยัง sys.stdout ขณะนี้ฉันได้ลองใช้gdal.UseExceptions()ฟังก์ชั่น แต่พบปัญหา เมื่อgdal.UseExceptions()มีการตั้งค่าดูเหมือนว่าจะซ่อนข้อผิดพลาดบางอย่างและไม่ยกข้อยกเว้นพวกเขา ตัวอย่างเช่นERROR 5: Access window out of range in RasterIO() Requested (1,15) of size 25x3 on raster of 26x17หายไปและไม่มีข้อยกเว้นยก มันดูอันตรายทีเดียว ขอบคุณสำหรับความคิดใด ๆ
12 python  gdal  ogr  osgeo 

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 …

2
TRI, TPI หรือ Roughness
ฉันกำลังทำงานในการฉายการเลือกไซต์ซึ่งฉันจะไม่สามารถทำการสังเกตการณ์ในแหล่งกำเนิดได้ องค์ประกอบหลักของกระบวนการคัดเลือกคือความทนทานของภูมิประเทศที่อยู่ข้างใต้ ฉันวางแผนที่จะใช้ GDALdem เพื่อสร้างแผนที่ความทนทานที่ได้รับ ฉันได้อ่านทั้งWilson และคณะ 2007 กระดาษและเอกสาร GDALdem ในขณะที่ทั้งคู่นำเสนอข้อมูลเชิงลึกเกี่ยวกับอัลกอริทึมที่ใช้ในการสร้างดัชนีเฉพาะกระดาษวิลสันเท่านั้นที่เสนอการประเมินความเหมาะสมของดัชนี มันเป็นสิ่งสำคัญเพราะฉันไม่สามารถทำการสังเกตการณ์ในแหล่งกำเนิดได้ดัชนีนั้นถูกเลือกเพื่อประเมินความขรุขระของพื้นผิว จากประสบการณ์ของคุณคุณใช้ดัชนีใดสำหรับแอปพลิเคชันใดและเพราะอะไร

7
การติดตั้ง GEOS, PROJ, GDAL / OGR เป็น python virtualenv บน Mac OS X
ฉันพยายามตั้งค่า virtualen python แยกเพื่อทำงานกับโครงการ GIS ใน Mac OS X ของฉันดูเหมือนว่าฉันจะต้องติดตั้ง GEOS, PROJ, GDAL / OGR จากเว็บไซต์ kyngchaos ที่นี่http://www.kyngchaos.com/ ซอฟต์แวร์ / กรอบงานและไม่ใช่ easy_install ลงใน virtualenv ของฉัน ถูกต้องหรือไม่ การดาวน์โหลดที่มีอยู่ใน kyngchaos คือตัวติดตั้ง pkg และไม่ใช่เพียงแค่ไข่หรือ bdist ของโมดูลหลาม ดังนั้นฉันไม่แน่ใจว่าตัวติดตั้งกำลังทำอะไรกับสภาพแวดล้อมนอกเหนือจากการคัดลอกไฟล์ไปยัง/Library/Framework/geos.frameworkโฟลเดอร์ ฉันจะไปเกี่ยวกับการติดตั้ง GEOS, PROJ, GDAL / OGR เฉพาะลงใน pen virtualenv ใหม่ของฉันได้อย่างไร ฉันขอขอบคุณความช่วยเหลือ / ข้อเสนอแนะของคุณในเรื่องนี้
12 gdal  ogr  osx 

3
gdalmerge สร้างไฟล์ที่มีขนาดใหญ่เกินไป
ฉันพยายามรวมไฟล์ geotiff 60 ไฟล์เป็นไฟล์ขนาดใหญ่ไฟล์เดียวเพื่อให้สามารถเรียงไทล์ผลิตภัณฑ์จากไฟล์ geotiff ขนาดใหญ่ที่เกิดขึ้นโดยใช้ gdal2tiles กระบวนการผสานทำงานได้ แต่ด้วยเหตุผลบางประการมันจะสร้างไฟล์ที่มีขนาด 78GB แทนที่จะเป็น 19GB ที่คาดไว้ ไม่แน่ใจว่าเกิดอะไรขึ้น เหตุผลที่ลองทำเช่นนั้นเพราะการปูแผ่น Geotiffs 60 อันทีละแผ่นทำให้ฉันมีพื้นที่สีขาวบนเส้นขอบแผนที่

1
GDAL รูปหลายเหลี่ยมในงูหลามการสร้างรูปหลายเหลี่ยมว่างเปล่า?
ฉันมีปัญหาในการใช้ฟังก์ชัน Polygonize ใน python ตัวอย่างตำราสำหรับการนี้สามารถพบได้ที่นี่ ส่วนที่เกี่ยวข้องของรหัสของฉันคือ: sourceRaster = gdal.Open('myraster.tif') band = sourceRaster.GetRasterBand(1) bandArray = band.ReadAsArray() outShapefile = "polygonized" driver = ogr.GetDriverByName("ESRI Shapefile") if os.path.exists(outShapefile+".shp"): driver.DeleteDataSource(outShapefile+".shp") outDatasource = driver.CreateDataSource(outShapefile+ ".shp") outLayer = outDatasource.CreateLayer("polygonized", srs=None) gdal.Polygonize( band, None, outLayer, -1, [], callback=None ) outDatasource.Destroy() sourceRaster = None ฉันรู้ว่าวงดนตรีมีข้อมูลที่เกี่ยวข้องนี่เป็นตัวอย่างของbandArray: array([[ 4., 4., 3., …
12 python  gdal 

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