Mevcut, coğrafi referanssız bir pdf için coğrafi referans mümkün mü?


18

Öncelikle bir görüntüye dönüştürmeden doğrudan bir pdf coğrafi referans için olup olmadığını merak ediyordum. ArcGIS 10.1'e erişimim var ancak bunun mümkün olduğunu gösteren hiçbir bilgi bulamadım. Bir çözümü varsa, diğer açık kaynaklı yazılımları denemeye hazırım.

Site planlarını çoğunlukla AutoCAD'den oluşturulan PDF biçiminde alırım. Şu anda pdf'i ArcMap'e aktarmak, coğrafi referans vermek ve daha sonra ayak izi oluşturmak gibi şeyleri dijitalleştirmek için jpg olarak kaydediyorum. Sadece jpg adımına geçiş atlamak için bir yol olup olmadığını merak ediyorum.



1
Pek soru değil, ancak orijinal kaynak AutoCAD ise, ogr2ogr dxf dosyalarını şekil dosyalarına dönüştürür. Örnek için bu gönderiye bakın . Ne yazık ki örnek coğrafi referanslama bayraklarını kapsamaz, ancak gdal-dev posta listesi çok aktiftir ve coğrafi referans bayraklarının nasıl ayarlanacağı hakkında bir sorunuz varsa birisi hızlı bir şekilde cevap verecektir.
Llaves

Yanıtlar:


5

Evet, http://mappingcenter.esri.com/index.cfm?fa=ask.answers&q=2237

TerraGo'nun ArcMap uzantısı GeoPDF dosyalarını yazmanıza ve okumanıza izin verir http://www.terragotech.com/products/terrago-publisher/publisher-for-arcgis


GeoPDF yerine normal bir PDF almak istersem bu işe yarar mı?
Sarah

Normal pdf ithal edecek, sadece herhangi bir uzamsal referans olmayacak.
Mapperz

2
Uzantı PDF'ye coğrafi referans vermenize izin veriyor mu?
Sarah

Bu da maliyet olmadan yapılabilir :) nasıl olduğunu görmek için aşağıdaki cevabımı kontrol edin
DarkCygnus

4

Bu sorunun eski olduğunu biliyorum, ama son zamanlarda bu sorunu yaşadım ve sonunda bunu yapmanın bir yolu vardı.

Bu, gdalbir PDF sürücüsüne sahip olan Osgeo'ları kullanarak gerçekleştirilebilir . Temel olarak şöyle bir şey yapabilirsiniz:

from osgeo import gdal
#Open your Unreferenced PDF
src = gdal.Open("originalFile.pdf")

Sonra PDF'ye eklemek istediğiniz Projeksiyon Sistemi ve Geotransform'u bir şekilde elde edin veya hesaplayın. Örneğin, bunları bir GeoTiff'ten çıkarabiliriz:

#Open the Tiff to obtain its data from
geoTiff = gdal.Open("someMap.tif")
#Obtain its Projection system and its Geotransform
coords = geoTiff.GetProjection()
gt = geoTiff.GetGeoTransform()

Son olarak, projeksiyonu ve coğrafi dönüşümü PDF'nize ayarlayın ve ardından PDF Sürücüsü ile bir kopya oluşturun:

src.SetProjection(coords)
src.SetGeoTransform(gt)
#Instantiate a PDF driver and save your Referenced copy
pdf_driver = gdal.GetDriverByName("PDF")
dst = pdf_driver.CreateCopy("referencedFile.pdf", src, 1)

Sonuç, sol üst köşesinin gtProjeksiyon Sistemi kullanılarak bir yere yerleştirilmesi için coğrafi referans verilen bir PDF'dir coords. Bu, QGis veya ArcGis'te PDF açarak veya gdalinforeferans verilen PDF'deki komutu kullanarak doğrulanabilir .


3

Dikkat edilmesi gereken önemli bir nokta: GeoPDF , Geospatial PDF ile aynı değildir .

Jeo-uzamsal PDF, PDF'yi coğrafi olarak referanslamak için kullanılan bazı jeo-uzamsal etiketlerle donatılmış "sıradan" bir PDF'dir (bu etiketler Adobe'nin ISO 32000'e önerilen coğrafi uzamsal uzantıları olarak tanımlanır).

Bu etiketleri PDF'ye uygulamak için açık kaynaklı bir çözüm olup olmadığından emin değilim. Açık kaynaklı bir yol, bir PDF kitaplığı kullanmak (bu amaçla iText'i kullandım) ve kodu kendiniz yazmak olabilir, ancak bu zordur, çünkü test etmek için kullanabileceğiniz birçok ücretsiz Geospatial PDF görüntüleyici / okuyucu yoktur. ve coğrafi referansın geçerli olduğundan emin olun.

Benim durumumda Avenza'nın PDF harita mağazası için harita hazırlamak için bir çözüm üzerinde çalıştım . Elde edilen PDF'leri test etmek için GDAL kullandım , ancak daha sonra bu haritaları (GDAL tarafından onaylandı) Avenza'ya gönderdiğimde, Geospatial PDF ayrıştırıcısının bu haritaları yutabilmesi için hala çözülmesi gereken bazı sorunlar vardı.


Teşekkürler ama bu aradığımdan biraz daha karmaşık görünüyor. Ben sadece arcmap özellikleri sayısallaştırmak için bir pdf coğrafi başvuru yolu olup olmadığını merak ediyordum.
Sarah

1

gdal_translateGeoPDF'yi coğrafi başvurulan bir tif dosyasına dönüştürmek için kullanabilirsiniz . Metodunuz ile bu yöntem arasındaki temel fark, coğrafi referansın korunmasıdır.

Komutum şuydu:

gdal_translate --config GDAL_PDF_DPI 300 -co "TFW=YES" pdf_name.pdf tif_name.tif

Windows'ta benim için çalışmadığını, bu yüzden OSGeo-Live sanal makinesini kullandığını unutmayın.

Bunu birçok pdf türüyle test etmedim, ancak USGS'ninkiyle harika çalıştı.


Bu cevap faydalı görünse de, Soruda sorulanlarla hiçbir ilgisi yoktur. OP'nin referansı açıklanmamış bir PDF'si vardır ve referans vermek ister (coğrafi referanslı PDF'den bir tiff yapmak için değil). Cevabınızı açıklığa kavuşturmak ister misiniz?
DarkCygnus

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.