GDAL(Geospatial Data Abstraction Library)是一个的开源栅格空间数据读取/转换库。其中还有一系列命令行工具来进行数据转换和处理。

而ORG项目是GDAL的一个分支,功能与GDAL类似,但其提供对矢量数据的支持。 也就是说,可以用ORG的库来读取、处理shapefile等矢量数据(如果想显示shapefile,还需要用其他工具)。

这里介绍GDAL和Python绑定的安装方法。

1、GDAL\OGR的Python版本的获取

二进制包

  Linux:

  • Fedora:可以直接在软件中心中搜索gdal,进行安装;
  • OpenSUSE:需要在YaST的软件源中添加地址http://download.opensuse.org/repositories/Application:/Geo/ 下的某个版本的软件源,注意,一定要选择对应版本,直接添加前面的地址是不行的(我犯的错误)。
  • Ubuntu:有个团队在维护Gdal for Ubuntu的可执行包,可以将其PPA添加到系统中以下载他们的软件,不过感觉他们更新二进制包的速度不怎么样。PPA地址为:ppa:ubuntugis/ppa 。

  其他Linux发行版中,Gdal二进制包的安装方式可能没前面说的那么简单,如果想了解详细信息,可参考http://trac.osgeo.org/gdal/wiki/DownloadingGdalBinaries 。

  Windows:

  有人为Windows维护并每天更新Gdal的二进制包。包括GDAL/OGR完整的二进制包,以及GDAL的Java、C#和Python接口。注意,Gdal的Python接口要先安装GDAL核心,然后再安装Python扩展。地址为:http://www.gisinternals.com/sdk/ (英文)。

提示:

  1.   大家既然已经接触到GDAL了,应该有一定的英文水平了,所以这里就简要介绍,没有给出每一步的详细步骤。
  2.   Linux下的二进制包,只有Java和Python接口可选,没有C#接口包(虽然Linux下有Mono)。
  3.   Mac没测试过。。。

源码编译

  GDAL的源码在此:http://trac.osgeo.org/gdal/wiki/DownloadSource

  Windows

  Windows下自行编译GDAL,可以参考李明录老师的这篇文章:http://blog.csdn.net/liminlu0314/article/details/6945452。如果遇到什么问题,可以向他请教,他为人很和善的。如果他因故没有回复,您也可以在本文下留言,我会尽量回复的。

  Linux

  Linux下自行编译比较简单,只需要安装好相应的工具,然后输入:

[plain] view plaincopy
  1. % cd gdal
  2. % ./configure
  3. % make
  4. % su
  5. Password: ********
  6. # make install
  7. # exit

  使用Linux的朋友应该能看懂。如果想编译Java或Python的扩展。需要下载相应的依赖,如Ant、Swig等。

提示:

  1. Windows下不建议自行编译,若需要支持特定格式和语言接口时,自行编译会需要安装许多软件并设置环境变量或修改makefile。这对于只想使用和研究的朋友来说无疑是个噩梦。比如想使用支持HDF的Java接口,那么编译时就需要下载GDAL本身的源码、SWIG二进制包、Ant、JDK(假设已经有了)、HDF4/5。并修改环境变量或GDAL的makefile。然后再使用VS的编译器或MinGW进行编译。这样无疑是痛苦的,所以建议除非迫不得已,否则使用前面所述的二进制包。
  2. 在Linux下,自行编译并添加依赖比较简单。
  3. MinGW编译问题,如上,笔者没有尝试过完整的编译的,所以仅仅尝试了用MinGW编译基本的GDAL包,这样做并不难,但是由于缺乏实用性。所以这样做目前看来没什么意义。
  4. 在Linux下,如果从“软件中心”安装GDAL时,需要安上devel包。Windows下,下载前述的二进制包时,如果需要进行C++开发时,需要下载目录中的lib包。例如,如果您想下载GDAL1.9.1的32位并进行C++开发,那么除了下载gdal-19-1600-core.msi ,还需要下载release-1600-gdal-1-9-mapserver-6-0-libs.zip ,后者包含GDAL的头文件和库。

2、GDAL\OGR的Python版本的安装

  Linux下,安装GDAL的二进制包并使用时很简单的。这里就说下Windows下安装GDAL的二进制包的方法。

  首先,我这里是32位的Win7,并计划使用VS2010中的C++编译器,那么我就选择GDAL Windows二进制包 下载地址中的MSVC2010 (Win32) -stable 一项,读者根据自己的配置进行选择。

  点击该选项后面一栏中的链接,如下:

这时,进入一个该机器和编译器配置下的不同软件包的下载,读者可根据自己的需要进行下载。这里我选择libs包、core包,以及Python2.7的扩展进行下则,如下:

首先安装Core,这里使用了默认安装,也就是GDAL将安装到C:\Program Files\GDAL目录下。

  1. 设置新的环境变量,变量名为GDAL_DATA,值为C:\Program Files\GDAL\gata-data;
  2. 将C:\Program Files\GDAL添加到环境变量的PATH中,注意,尽量将这个目录添加到PATH环境变量中的起始位置,以免发生其他问题(重要!)。
  3. 双击安装Python接口包。
  4. 测试使用。

这样,Gdal的Python接口就安装完成了,本文不完善的地方将会进行改进。

GDAL/ORG之Python获取与安装相关推荐

  1. python 获取浏览器安装位置,并使用指定浏览器打开指定网页

    说明 本程序基于Windows注册表实现了浏览器安装位置的查找功能和使用指定浏览器打开网页的功能. 使用 get_browser_path 函数可获取对应名称的浏览器的安装位置,使用 open_url ...

  2. Python获取Windows软件安装路径

    场景 在未知情况下, 获取Windows系统下用户的某个软件安装路径(我这里是:CST DESIGN ENVIRONMENT_AMD64.exe) 方法 通过Windows注册表获取软件安装路径 im ...

  3. Python工具库安装

    1.Python工具库下载 (1)查询安装Python的版本信息. 按键 Win+R,在弹出的"运行"对话框中输入cmd,在弹出的Dos系统中,输入python,即可查询得到Pyt ...

  4. Python:Scrapy的安装和入门案例

    Scrapy的安装介绍 Scrapy框架官方网址:http://doc.scrapy.org/en/latest Scrapy中文维护站点:http://scrapy-chs.readthedocs. ...

  5. ros web_video_server的使用及Python获取实时画面

    网络上看有人使用的是 uvc_camera 来提供视频源,但根据 http://wiki.ros.org/Sensors/Cameras 的列表可知,uvc_camera已不再维护,当然也可以直接参考 ...

  6. Windows下Python 3.6 安装BeautifulSoup库

    " 介绍Python库BeautifulSoup安装." 01 - BeautifulSoup库介绍 Beautiful Soup是Python的一个库,支持Python 2和Py ...

  7. python获取matplotlib、tensorflow、pandas、numpy等的版本version

    python获取matplotlib.tensorflow.pandas.numpy的版本version python包.库之间会发生版本冲突.那么你就需要查明版本,然后确定是降级还是升级: 使用__ ...

  8. Python_note8 程序设计方法学+Python第三方库安装+os库

    实例13 体育竞技分析 自顶向下,解决复杂问题的有效方法,将一个小问题表达为若干小问题组成的形式,使用同样方法进一步解决小问题直至可以用计算机简单解决:自底向上 理解自顶向下的设计思维:分而治之:理解 ...

  9. python中的doc_基于Python获取docx/doc文件内容代码解析

    这篇文章主要介绍了基于Python获取docx/doc文件内容代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 整体思路: 下载文件并修改后缀 ...

最新文章

  1. python3.6安装教程-Ubuntu16.04安装python3.6详细教程
  2. 图:DFS(深度优先搜索)图解分析代码实现
  3. curl请求本地域名问题
  4. MSSQL数据库全库批量替换
  5. css布局笔记(二)Flex
  6. android 滚动画画,Android利用ViewPager实现可滑动放大缩小画廊效果
  7. 字符大小端aix linux,Go交叉编译的那些事
  8. java pic 通信_dsPic33E:RS485通信问题
  9. 数字用户线(Digital Subscriber Line,DSL)
  10. iOS----UIScrollView
  11. 盘点一款黑客必备的强大网络工具集——netwox
  12. 旋转式直流无刷Maxon电机与copley驱动器调试
  13. 飞信2008内测版下载
  14. 电路串联和并联图解_电路的串联和并联有什么区别
  15. poi excel 添加水印
  16. C# OpenCvSharp 连通区域最小衔接矩形+最小标注信息(minx,miny,Width,Height)
  17. 魔术表演的核心秘密(六)——从障眼法到错误引导和案例分享
  18. 定点 浮点 神经网络 量化_神经网络模型量化论文小结
  19. 织梦html5博客模板,HTML5响应式清爽博客文章织梦模板 v1.0
  20. CleanMyMac X mac2021系统优化清理软件激活云盘分享推荐

热门文章

  1. go语音protobuf_golang 使用 protobuf 的教程
  2. sle linux lftp禁止匿名登陆_软件测试常用linux命令整理
  3. 工业级交换机大致可以分为哪几类?
  4. hdmi光端机运用于多媒体信息发布系统案例介绍
  5. NB-IoT在智慧城市中的应用
  6. python装饰器的顺序_python中多个装饰器的执行顺序详解
  7. java中对象字节数_JAVA中求解对象所占字节大小
  8. layui登录页面写入数据_layui基本使用(动态获取数据,并把需要的数据传到新打开的窗口)...
  9. JAVA类的继承、覆写和final关键字
  10. linux下用c语言打印hellword,用C语言写一个Helloworld_实现第一步编译运行