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

OGR Simple Features Library เป็นไลบรารีโอเพ่นซอร์ส C ++ (และเครื่องมือบรรทัดคำสั่ง) ที่ให้การเข้าถึงรูปแบบไฟล์เวกเตอร์

1
รับค่าพิกเซลของแรสเตอร์ GDAL ภายใต้จุด OGR โดยไม่ต้อง NumPy?
ฉันกำลังทำงานกับแบบจำลองการคำนวณของความหลากหลายของเรณูป่าในภูมิประเทศ ตัวแบบเสร็จสมบูรณ์แล้วและตอนนี้ฉันกำลังดิ้นรนกับขั้นตอนหลังการประมวลผล ฉันมีเรณูซัพพลาย GDAL ของฉันที่มีลักษณะคล้ายนี้ (สีที่เบากว่าหมายถึงการเยี่ยมชมของเรณูที่พิกเซล): และฉันมี OGR รูปร่างไฟล์ของจุดที่เป็นตัวแทนของตัวอย่างสถานที่ในแนวนอน: ฉันกำลังพยายามวิเคราะห์จุดพิกเซลภายใต้จุดเหล่านี้ แต่ต้องทำเช่นนั้นฉันต้องสามารถแยกค่าของพิกเซลที่อยู่ใต้จุดใดจุดหนึ่งได้ เป็นไปได้หรือไม่ที่จะแยกค่าของพิกเซลภายใต้จุดโดยใช้ OGR และ GDAL ผ่าน Python เท่านั้น ฉันต้องการหลีกเลี่ยงการอ่านแรสเตอร์ทั้งหมดลงในหน่วยความจำReadAsArray()เพราะเอาท์พุทแรสเตอร์ของฉันมีขนาดใหญ่มาก (ใหญ่เกินไปที่จะใส่ลงในหน่วยความจำ) ฉันสังเกตเห็นโพสต์นี้ซึ่งคล้ายกัน แต่ต้องมีการเรียกบรรทัดคำสั่ง
45 python  gdal  ogr  pixel 

9
สร้างจุดที่อยู่ภายในรูปหลายเหลี่ยม
ฉันมีคุณสมบัติรูปหลายเหลี่ยมและต้องการสร้างคะแนนภายใน ฉันต้องการสิ่งนี้สำหรับงานการจัดหมวดหมู่เดียว การสร้างคะแนนแบบสุ่มจนกว่าจะมีใครอยู่ภายในรูปหลายเหลี่ยมจะไม่ทำงานเพราะมันไม่สามารถคาดเดาได้จริง ๆ ว่าเวลาที่ใช้
30 python  qgis  polygon  ogr 

2
ใช้ OGR และหุ่นดีขึ้นอย่างมีประสิทธิภาพหรือไม่ [ปิด]
ฉันกำลังมองหาคำแนะนำบางอย่างเกี่ยวกับวิธีทำให้โค้ดไพ ธ อนของฉันมีประสิทธิภาพมากขึ้น ปกติแล้วประสิทธิภาพไม่สำคัญสำหรับฉัน แต่ตอนนี้ฉันกำลังทำงานกับไฟล์ข้อความของสถานที่ในสหรัฐอเมริกาที่มีมากกว่า 1.5 ล้านคะแนน ด้วยการตั้งค่าที่กำหนดจะใช้เวลาประมาณ 5 วินาทีในการรันการทำงานในจุดเดียว ฉันต้องทำให้ตัวเลขนี้ลง ฉันใช้ python GIS สามแพ็คเกจในการดำเนินการที่แตกต่างกันเล็กน้อยในจุดและส่งออกไฟล์ข้อความที่คั่นด้วยใหม่ ฉันใช้ OGR เพื่ออ่านรูปร่างเขตแดนของเคาน์ตีและเข้าถึงเรขาคณิตของขอบเขต หุ่นดีตรวจสอบเพื่อดูว่ามีจุดอยู่ในมณฑลใด ๆ เหล่านี้ ถ้ามันอยู่ภายในเดียวฉันใช้ Python Shapefile Library เพื่อดึงข้อมูลแอ็ตทริบิวต์จาก. dbf ขอบเขต ฉันจะเขียนข้อมูลบางอย่างจากทั้งสองแหล่งลงในไฟล์ข้อความ ฉันสงสัยว่าการไร้ประสิทธิภาพอยู่ในการวนรอบ 2-3 ชั้น ... ไม่ค่อยแน่ใจว่าจะทำอย่างไรกับมัน ฉันกำลังมองหาความช่วยเหลือโดยเฉพาะกับใครบางคนที่ประสบกับการใช้งานแพ็กเกจทั้งสามนี้เพราะนี่เป็นครั้งแรกที่ฉันได้ใช้มัน import os, csv from shapely.geometry import Point from shapely.geometry import Polygon from shapely.wkb import loads …

5
วิธีเพิ่มฟิลด์แอททริบิวไปยัง Shapefile ที่มีอยู่ผ่าน Python โดยไม่ต้องใช้ ArcGIS
ฉันมีสคริปต์ Python ที่เพิ่มฟิลด์คุณสมบัติให้กับ Shapefile หากไม่มีอยู่ นี่เป็นเรื่องง่ายที่จะทำกับ ArcGIS (แบบกราฟิกหรือผ่าน Python) แต่ฉันกำลังมองหาบางอย่างที่ไม่ได้ขึ้นอยู่กับ ArcGIS ฉันพยายามนี้ไม่ประสบความสำเร็จกับ OGR ตั้งแต่ Shapefile ของฉันมีคุณสมบัติ ฉันดูที่pyshpแต่ในทำนองเดียวกันไม่มีวิธีแก้ไข schema หลังจากสร้างแล้ว ฉันไม่ได้ลองกับshapefile (สำหรับ Python)แต่ฉันไม่เห็นคุณลักษณะนี้ที่โฆษณา ฉันยังไม่สามารถดูวิธีนี้สามารถทำได้โดยการ tinkering กับไฟล์ DBF ผ่านdbfpy ไม่มีใครมีความคิดใด ๆ
24 python  shapefile  ogr  dbf 

1
File Geodatabase API สามารถแจกจ่ายต่อได้หรือไม่
ขณะนี้ Geodatabase API ไฟล์ของ Esri สามารถใช้กับ GDAL / OGR - http://www.gdal.org/ogr/drv_filegdb.htmlแต่แต่ละคนดูเหมือนว่าจะต้องลงชื่อเข้าใช้ Esri และดาวน์โหลดไฟล์ API แยกต่างหาก สำหรับตัวอย่างนี้มีการอ้างอิงในบล็อกโพสต์ที่นี่และในGDAL สร้างบันทึก ข้อตกลงใบอนุญาตก่อนที่จะดาวน์โหลด API ที่แสดงโดย Esri อยู่ที่: http://resources.arcgis.com/node/agreement/3193 ข้อ 47 ฯ : ผู้รับอนุญาตอาจพัฒนาและแจกจ่ายซอฟต์แวร์หรือเว็บแอปพลิเคชันที่ใช้ Esri File Geodatabase API ให้กับผู้ใช้ปลายทางของผู้รับอนุญาต การสนทนาที่ดีที่สุดเกี่ยวกับใบอนุญาตอยู่ที่โพสต์บล็อกของ Paul Ramseyตั้งแต่เดือนมกราคม 2554 การดำเนินการนี้เสร็จสิ้นด้วยการอัปเดตครั้งสุดท้ายที่: อัปเดต 4: อีเมลที่ได้รับจาก Esri ยืนยันว่าจะมีการตรวจสอบใบอนุญาตขั้นสุดท้ายเพื่อให้แน่ใจว่าไม่มีความคลุมเครือและมันสะท้อนถึงเจตนาของพวกเขาที่ว่า API จะสามารถใช้งานได้โดยแอปพลิเคชันใด ๆ ดังนั้นในกรณีที่ใบอนุญาตปัจจุบันมีความคลุมเครือใด ๆ ก็ไม่ควรพิจารณาธงสีแดงที่ใบสุดท้ายจะ ดังนั้น …

3
เป็นไปได้หรือไม่ที่จะรับค่า EPSG จากคลาส OSR SpatialReference โดยใช้ OGR Python API
เมื่ออ่านเลเยอร์จากการเชื่อมต่อ OGR PostGIS ฉันจะได้รับ SpatialReference ของเลเยอร์ แต่เป็นไปได้หรือไม่ที่จะรับค่า EPSG มีเอกสารเกี่ยวกับเรื่องนี้หรือไม่? ตัวอย่างเช่น: lyr = conn.GetLayerByName(tbl) # Where conn is OGR PG connection srs = ly.GetSpatialRef() print srs ผลตอบแทน: PROJCS["OSGB 1936 / British National Grid", GEOGCS["OSGB 1936", DATUM["OSGB_1936", SPHEROID["Airy 1830",6377563.396,299.3249646, AUTHORITY["EPSG","7001"]], AUTHORITY["EPSG","6277"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.01745329251994328, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4277"]], UNIT["metre",1, AUTHORITY["EPSG","9001"]], PROJECTION["Transverse_Mercator"], PARAMETER["latitude_of_origin",49], PARAMETER["central_meridian",-2], PARAMETER["scale_factor",0.9996012717], …
21 python  postgis  ogr 


2
เอกสารประกอบ API สำหรับ Gdal / Ogr ด้วย C #
ฉันต้องการกำหนดการฉายภาพให้กับ shapefile ในแอปพลิเคชัน C # ของฉันสำหรับสิ่งนี้ฉันกำลังใช้การเชื่อมโยง Gdal / OGR / OSR C # และเพิ่ม osr_csharp.dll และการอ้างอิง ogr_csharp.dll แต่ฉันกำลังเผชิญกับความยากลำบากบางอย่างในขณะที่เขียนรหัสสำหรับการกำหนดการฉายภาพให้กับรูปร่างไฟล์ ฉันต้องการที่จะรู้ว่ามีเอกสาร API สำหรับสิ่งนี้ซึ่งสามารถช่วยให้ฉันเข้าใจชั้นเรียน / วิธีการของห้องสมุดเหล่านี้ หรือถ้าใครมีรหัสบางส่วนสำหรับกำหนดการฉายภาพให้กับรูปร่างไฟล์แล้วมันจะเป็นประโยชน์อย่างมากสำหรับฉัน

1
OGR หมายถึงอะไร
มีคำสั่งและไลบรารีมากมายที่ฉันเห็นอ้างอิงหรือนำหน้าด้วย OGR OGR หมายถึงอะไร ogrinfo ogr2ogr
20 ogr 

2
แปลงวัตถุรูปหลายเหลี่ยมเชิงพื้นที่เป็นกรอบข้อมูลโดยใช้ R
เป้าหมายของฉันคือการแก้ไข shapefile ที่มีอยู่โดยการผสานรูปหลายเหลี่ยมบางอย่าง หลังจากนำเข้ารูปร่างไฟล์และใช้คำสั่ง UnionSpatialPolygons ฉันได้รับโครงร่างรูปหลายเหลี่ยมที่ฉันต้องการ อย่างไรก็ตามตอนนี้เป็นวัตถุ SpatialPolygons ไม่ใช่ SpatialPolygonsDataFrame ดังนั้นฉันจึงไม่สามารถส่งออกไปยังรูปร่างไฟล์โดยใช้ writeOGR ฉันจะแก้ไขปัญหานี้ได้อย่างไร
18 shapefile  cartography  r  ogr 

8
ติดตั้ง GDAL และ OGR สำหรับ Python หรือไม่
โพสต์นี้เป็นวิกิพีเดียชุมชน แก้ไขคำตอบที่มีอยู่เพื่อปรับปรุงโพสต์นี้ ขณะนี้ไม่ยอมรับคำตอบใหม่ ฉันกำลังพัฒนารหัสบางส่วนใน Python และฉันต้องการใช้การผูกหลามของ GDAL / OGR ขั้นต่ำที่ฉันต้องติดตั้งเพื่อใช้การผูกหลามของ GDAL และ OGR คืออะไร วิธีที่ง่ายที่สุดในการติดตั้ง GDAL / OGR คือถ้าฉันต้องการใช้จาก Python เท่านั้น? ฉันกำลังมองหาคำตอบที่ใช้ได้กับทั้ง mac และ windows GDAL อยู่ในรายการ Python Package Index (PyPi) แต่ฉันไม่เข้าใจวิธีติดตั้งการพึ่งพา (libgdal และไฟล์ส่วนหัวสำหรับทั้ง libgdal และ numpy) บางทีทั้งหมดที่ฉันต้องทำคือติดตั้ง numpy แล้วหา libgdal ที่ไหนสักแห่งและถ้าเป็นเช่นนั้นที่ไหน การติดตั้ง windows จำเป็นต้องใช้ Windows Binaries นอกเหนือจาก libgdal และเป็นไฟล์ส่วนหัวหรือไม่? …
18 python  gdal  ogr 

1
วิธีการเปลี่ยนค่าฟิลด์ของ Shapefile โดยใช้ GDAL / OGR
ฉันกำลังพยายามเปลี่ยนค่าฟิลด์ของ shapefile อย่างไรก็ตามมันจะไม่เปลี่ยนค่า เกิดอะไรขึ้นกับรหัสของฉัน import ogr driver = ogr.GetDriverByName('ESRI Shapefile') fn = 'dist.shp' dataSource = driver.Open(fn, 0) layer = dataSource.GetLayer() feature = layer.GetNextFeature() dist = 233 while feature: feature.SetField("dist", dist) layer.SetFeature(feature) feature = layer.GetNextFeature() dataSource.Destroy()

4
วิธีหยุด writeOGR ไม่ให้ย่อชื่อฟิลด์เมื่อใช้ไดรเวอร์“ ESRI Shapefile”
ขณะนี้ฉันกำลังใช้สคริปต์ต่อไปนี้เพื่อเพิ่มข้อมูลคุณลักษณะจากตารางไปยังรูปร่างหลายไฟล์: library(rgdal) specieslist <- read.csv("SpeciesList1.txt", header=F) attdata <- read.table("TestAtt.csv", sep = ",", header=T) for (n in 1:dim(specieslist)[1]) { speciesname <- specieslist[n,1] shp <- readOGR("Mesoamerica_modified_polygons", speciesname) shp$ENGL_NAME<-attdata[n,2] writeOGR(shp, "PolygonsV2", speciesname, driver="ESRI Shapefile") } ฉันได้รับคำเตือนต่อไปนี้เมื่อสิ้นสุด: 1: In writeOGR(shp, "PolygonsV2", speciesname, driver = "ESRI Shapefile") : Field names abbreviated for ESRI Shapefile driver …

4
รับจุดยอดทั้งหมดของรูปหลายเหลี่ยมโดยใช้ OGR และ Python
ฉันมีปัญหาเล็กน้อยกับ Python OGR API สิ่งที่ฉันพยายามทำคือหาพิกัดทั้งหมดของจุดสุดยอดแต่ละอันของวงแหวนรอบนอกของรูปหลายเหลี่ยม นี่คือสิ่งที่ฉันมี: import osgeo.ogr import glob path = "/home/woo/maps/" out = path + 'output.txt' file = open(out,'w') for filename in glob.glob(path + "*.shp"): ds = osgeo.ogr.Open(filename) layer1 = ds.GetLayer(0) print layer1.GetExtent() for feat in layer1: geom = feat.GetGeometryRef() ring = geom.GetGeometryRef(0) points = ring.GetPointCount() #Not sure …

1
การเลือกคุณสมบัติตามคุณสมบัติโดยใช้ ogr2ogr?
ฉันกำลังเขียน shapefile หลังจากประมวลผลบางอย่าง; อย่างไรก็ตามในขั้นตอนสุดท้ายฉันต้องทำการเลือกบางอย่างโดยคุณสมบัติจาก Shapefile ฉันใช้คำสั่งในเชลล์โดยมีวัตถุประสงค์เพื่อใช้ในสคริปต์ Python เมื่อทำงาน ogr2ogr -f "ESRI Shapefile" -select * where ID="1" outfile.shp infile.shp ฉันได้รับข้อความแสดงข้อผิดพลาด: FAILURE: Unable to open datasource `Downloads' with the following drivers. ฉันทำอะไรผิดได้

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