2016-10-14 65 views
4

我需要在python中打開.jp2光柵文件。GDAL:python中缺少jp2驅動程序

我安裝GDAL後these instructions

使用命令行運行gdalinfo --formats列出了JP2OpenJPEG驅動程序。 gdalinfo filename.jp2返回預期的輸出。

但是在Python import gdal data=gdal.Open('filename.jp2')

不返回任何東西(.TIFF作品)。

還有2個其他應用程序使用GDAL安裝,所以我認爲Python是使用錯誤的GDAL安裝。

我在R上的同樣的問題,但我可以指出,與 library(gdalUtils) gdal_chooseInstallation('JP2OpenJPEG')

右側安裝有沒有辦法指向蟒蛇正確安裝或添加的驅動程序JP2?


的Windows 10

的Python 2.7

GDAL 2.1.0

+0

你好,可能是一個長鏡頭,但你得使用GDAL的另一個地方安裝將R包rgdal? – Mark

+0

gdal_chooseInstallation()從包gdalUtils – unnic

回答

0

我是在同一平臺上,並面臨着同樣的問題。

我想我找到了一個解決方法是:

安裝OSGEO4W https://trac.osgeo.org/osgeo4w/這將安裝GDAL與JP2驅動程序。

正確設置您的環境變量。看看OSGEO在bin \ O4W_ENV.bat中的作用,確保你將這些添加到你的Path變量中%OSGEO4W_ROOT%\bin;%WINDIR%\system32;%WINDIR%;%WINDIR%\WBem 該命令重要的是,確保你在PATH變量中按順序存在它們,否則你可能會遇到問題。

爲了測試做gdalinfo --format JP2OpenJPEG

由於與PATH變量i再次添加OSGEO家在我的劇本蟒蛇可以胡來。

# set environment osgeo_home_bin = "C:\\OSGeo4W64\\bin" # the path order matters so make sure OSGEO4W64 is the first one os.environ['PATH'] = ''.join([osgeo_home_bin,";",os.environ['PATH']])

+0

感謝您的貢獻。如上所述,我已經通過重新安裝gdal來獲得jp2驅動程序。問題在於它無法通過python訪問。 – unnic

+0

你的PATH變量是怎樣的?使瘡%OSGEO4W_ROOT%\ bin;是在前面,當我啓動anaconda時,它與路徑變量混淆,所以我必須在我的python腳本中重新添加它,像這樣#set environment 'osgeo_home_bin =「C:\\ OSGeo4W64 \\ bin」 #path順序很重要,所以使痠疼OSGEO4W64是第一個 os.environ ['PATH'] =''.join([osgeo_home_bin,「;」,os.environ ['PATH']])' – Atti