- 博客(170)
- 资源 (16)
- 收藏
- 关注
原创 GDAL中MEM格式的简单使用示例
GDAL库中提供了一种内存文件格式——MEM。如何使用MEM文件格式,主要有两种,一种是通过别的文件使用CreateCopy方法来创建一个MEM;另外一种是图像数据都已经存储在内存中了,然后使用内存数据块来构造一个MEM。第一种方式比较简单,这里主要说明下第二种方式。 首先看看MEM的说明文档,地址为:www.gdal.org/frmt_mem.html。从里面我们可以看到MEM文件支持几乎所有的
2014-02-21 18:21:42 5430 14
原创 使用C#版本GDAL读取复数图像
GDAL的C#版本虽然在很多算法接口没有导出,但是在读写数据中的接口基本上都是完全导出了。使用ReadRaster和WriteRaster方法来进行读写,同时对这两个方法进行了重载,对于常用的数据类型可以不用指定数据类型直接进行读取即可。但是对于复数类型就有点复杂了。下面就针对GDAL如何来读取复数数据来进行一个简单的说明。 我们知道,在使用GDAL读取数据的时候使用的是ReadRaster这个函
2014-02-18 20:52:38 5440 3
原创 Python+Visual Studio
一直在找一个比较好的Python IDE,无奈找来找去都不太好用,由于经常用Visual Studio,所以很希望找到一个能够在VS中的Python扩展。今天发现了一个很给力的VS扩展,可以在VS中方便的编写、调试Python代码,PTVS(Python Tools for Visual Studio),官方网址为:http://pytools.codeplex.com/,同时这里有一个使用的视频
2014-02-11 19:53:36 4853
原创 GDAL库中WFS服务中含有中文不能获取数据的问题
GDAL库中目前提供了对WFS服务发布的数据进行获取,目前发现对于中文的服务名称或者图层名为中文,GDAL不能正确识别。通过调试发现,其原因有下面两点: 1、输入的URL路径没有使用UTF8编码而从网页获取的内容全部都是由UTF8编码组成,造成图层名使用EQUAL进行比较的时候出现错误。 2、输入的URL路径使用%开始的UTF8编码,而GDAL没有对%的转义编码进行转义导致,GDAL直接认为%XX
2014-01-18 11:43:20 2910
原创 QGIS编译
一、准备工作1、下载QGIS源码最新版本的QGIS源码需要从git上下载。最新的发布版是2.0,下载地址见下。https://github.com/qgis/QGIS/tree/release-2_0。打开网页,在右侧有个Download ZIP即可下载2.0的源码zip包,选择一个地方保存即可,如下图。 2、下载、安装和编译QGIS的依赖库这里只说明安装QGIS必须的依赖库,其他的可选的这里都不
2013-12-18 19:36:35 27149 108
原创 CSDN2013年度博客之星评选
亲爱的3Ser,大家好!很荣幸我能够成为CSDN 2013年度博客之星评选的候选人,希望大家移步到此处,为我投上一票。在过去的一年里,感谢大家对我的支持,2014年我会继续努力,为大家分享更多更好的3S知识! 此外,市面上第一本关于GDAL的书籍正在排版印刷中,估计再有一个月左右即可面试,再次感谢大家的支持。 投票地址:http://vote.blog.csdn.net/blogstar
2013-12-16 18:44:46 2126 3
原创 Ceres-Solver库入门
示例1:求极值 首先我们以Ceres库官网中的Hello World例子来进行说明。这里例子的目的是为了计算方程取得最小值时x的值。从这个方程很容易看出来当x=10时,f(x)取得最小值0。这个方程虽然没有什么实际意义,但是为了演示Ceres库还是很不错的例子。 1、编写一个g(x)=10-x的残差方程。代码如下:structCostFunctor { template bool o
2013-11-18 18:29:53 15106 9
原创 ceres-solver库使用示例
上一篇博客大致说明了下ceres-solver库的编译,然后形成了一个二次开发的库,下面就是用这个二次开发库来写一个简单(其实不太简单)的DEMO来演示ceres-solver库的强大。我们以求解一个非线性的方程(椭球方程)的系数为例子。下面是椭球方程的公式。 我们要求解的就是。为了演示,我通过程序生成了一个单位球上面的一系列坐标,也就是上面的abc均为1,偏移量均为0。为了验证ceres-sol
2013-11-13 19:16:04 9277 4
原创 ceres-solver库编译说明
0、 ceres-solver简介 Ceres Solver是一个C++环境下的非线性最小二乘问题的求解工具包,可用来建模并解决大型复杂的非线性最小二乘问题。这个工具包已经广泛被用于很多商业软件中。在google project里面有它的主页: http://code.google.com/p/ceres-solver/。 在Google,使用 Ceres Solver 来估
2013-11-13 19:00:55 14203 13
转载 October 23, 2013 - Fires and smoke in eastern China
October 23, 2013 - Fires and smoke in eastern ChinaSatellite:AquaDate Acquired:10/12/2013Resolutions:1km (556.1 KB)500m (2.1 MB)250m (5.1 MB)Bands Used:1,4,3Credit:Jeff SchmaltzMODIS Land Rapid Respon
2013-10-30 18:48:48 2142
转载 Pollution over East China : Image of the Day
acquired October 16, 2002download large image (2 MB, JPEG, 6000x4600)acquired October 16, 2002download GeoTIFF file (93 MB, TIFF, 6224x6224)acquired October 16, 2002download Google Earth file (KML)Thi
2013-10-30 18:47:35 1969
原创 谈谈PCI的GXL
最近在测试PCI的GXL,对测试的结果大致列举一下。何为GXL: GXL( Geoimaging Accelerator, GXL )是PCI公司面向海量影像自动化生产提出的新一代解决方案产品,主要用于航空影像和卫星影像数据的自动化生产。 GXL系统根据客户处理数据的规模和处理速度需求设计系统处理节点数目。通常系统设计中,GXL处理服务器包括日常工作响应的常规服务器和在紧急情况下启动的备份服务器两
2013-10-18 19:07:31 4756 5
原创 使用GDAL将下载的Google卫星图像转为带坐标的tif
网上有很多下载Google地图的卫片的软件,一般下载下来的图像都是jpg格式的,另外附带一个坐标信息的描述文件。这样的数据不能直接拿来在遥感或者GIS软件中使用,因为图像里面没有投影和坐标信息,所以就需要将这个描述文件中的坐标信息导入到影像中。下面就如何使用gdal提供的工具来完成这个功能,当然也可以自己写程序。首先看看输入数据都有什么,这里只有一个jpg图像和一个txt文件,jpg图像如下,原始
2013-09-11 20:46:49 13389 21
原创 Linux下使用GDAL进行开发(automake使用)
首先写三个源代码文件,分别是GDALTest.cpp、Fun.cpp和Fun.h,将这三个存放在一个叫GDALTest的文件夹中,然后打开终端,切换到该目录,如下图所示(注:这个图是最后截图的,所以文件夹下面有好多文件,开始应该就只有三个)。 三个文件的内容分别如下,这篇文章主要还是想试试使用automake来生成Linux下的编译脚本,所以就写了三个文件,如果想直接用gcc编译的话,直接写一个c
2013-09-11 19:47:06 5234 8
原创 Linux下编译GDAL
一、准备工作从官网下载GDAL、PROJ.4和GEOS,将其存放在/home/liml/Work/3rdPart目录并解压,如下图所示。下载地址请自行Google。注:使用的系统是CentOS6.4 X64版本,其他的Linux系统都是一样的。接下来检查系统中是否安装了开发环境和编译环境,在终端输入gcc、g++、make回车,如果提示命令不存在,就说明系统没有安装编译环境,请先安装编译环境,下面
2013-09-11 19:31:12 17220 21
原创 Ubuntu下编译SHTOOLS
SHTOOLS是使用Fortran语言写的一个专门用于处理球谐函数的一个开源库,更多的介绍请猛戳这里,关于这个库的安装和使用,都在官网上有详细的说明,虽然很详细,但是编译的时候还是比较费劲,下面将我在Ubuntu下编译的步骤记录下。 首先SHTOOLS需要依赖三个库,分别是FFTW库,BLAS库和LAPACK库。FFTW库是傅立叶变换的库,只能用一句很好很强大来说明了,前段时间自己写了一个图像的傅
2013-08-15 21:05:36 3378 5
原创 使用MTL库求解最小二乘解
最小二乘计算最优解不管是哪个行业肯定都用到的非常多。对于遥感图像处理中,尤其是对图像进行校正处理,关于控制点的几种校正模型中,都用到最小二乘来计算模型的系数。比如几何多项式,或者通过GCP求解RPC系数,以及RPC的间接优化等都是离不开最小二乘的。下面使用MTL库编写的最小二乘求解AX=B形式的X最优解。 关于MTL库的类型定义可以参考之前写的求解特征值和特征向量那篇博客。地址为:http://b
2013-07-25 20:29:59 3551 5
原创 浅析GDAL库C#版本支持中文路径问题
GDAL库对于C#的支持问题还是蛮多的,对于中文路径的支持就是其中之一(另一个就是通过OGR库获取图形的坐标信息)。 关于C#支持中文路径,只要是文件名中的汉字个数是偶数,完全没有影响,读取和创建都正常,如果文件名中的汉字个数是奇数,肯定不能读取和创建。
2013-07-23 19:56:43 5450 4
原创 GDAL库调试(包括跨语言调试)
很多时候都需要调试GDAL库,尤其是像学习GDAL库中的某些算法是如何实现的时候,调试就必不可少了。 首先说明用C++的调试。以VS2008为例进行说明。 编译DEBUG版本的GDAL库,这个可以参考我之前的博客。可以用命令行编译,也可以用IDE编译,但是实质都是一样,修改 nmake命令的参数。也就是给nmake命令后加一句DEBUG=1即可。 编译完成之后,应该会在gdal的源码目录中生成下面
2013-07-23 19:39:52 6612 18
原创 使用GDAL工具对FY3系列卫星数据进行校正
本文档主要对如何使用GDAL提供的工具对FY3系列卫星数据进行校正处理。FY3系列卫星提供的数据一般是以HDF5格式下发,一个典型的FY3A和FY3B的数据文件名如下:FY3A_MERSI_GBAL_L1_20100321_0150_1000M_MS.HDFFY3B_MERSI_GBAL_L1_20130620_0600_1000M_MS.HDF 下面分为三个部分来对FY3系列数据校正进行处理,
2013-06-26 19:40:57 9268 18
原创 GDAL工具使用示例(一)
GDAL提供的工具都是非常的实用,后续打算写一系列的博文来对GDAL提供的工具进行简单的说明,并结合实际的例子进行演示,希望对数据处理的同学有用。 首先说明一下需要准备的数据,我这里使用的是SRTM的DEM数据,至于下载方式可以找我之前的博客。数据截图如下,下载的原始数据都是ZIP文件。也就是下图中的10个zip文件。 今天首先对gdalinfo和gdalbuildvrt这两个工具做个说明。gd
2013-06-04 21:58:27 7827 10
原创 使用OGR创建弧形图形
很多时候我们需要在矢量文件中记录一些弧形图形,由于目前OGR中没有支持通过圆心半径等方式来保存矢量图形,所以对于这些矢量图形必须要计算出弧线上的点坐标来进行存储,如果自己按照圆弧的算法来创建这些点确实有些麻烦,OGR中提供了一个叫approximateArcAngles的函数来对圆弧点坐标进行计算,使用起来非常方便,下面是该函数的一个简单说明。函数原型为:创建一段椭圆弧段。指定一个原点坐标、椭圆的
2013-06-02 13:47:02 4681 4
原创 基于GDAL实现的PCA变换(主成分分析)
主成分分析(Principal Component Analysis,PCA), 将多个变量通过线性变换以选出较少个数重要变量的一种多元统计分析方法。又称主分量分析。在实际课题中,为了全面分析问题,往往提出很多与此有关的变量(或因素),因为每个变量都在不同程度上反映这个课题的某些信息。主成分分析首先是由K.皮尔森对非随机变量引入的,尔后H.霍特林将此方法推广到随机向量的情形。信息的大小通常用离差平
2013-05-21 20:28:25 8828 7
原创 使用MTL库求解矩阵特征值和特征向量
关于矩阵的特征值和特征向量求解,大部分的数学运算库都进行了提供,下面是使用MTL库的接口进行封装。#include #include #include #include #include /*! 对角阵 */typedef mtl::matrix , mtl::dense::type DiagMatrix;/*! 对称阵 */typedef mtl::matrix , mtl::
2013-05-21 20:10:05 4353 5
原创 GDAL对于raw数据支持的一个bug
下面的GDAL版本针对最新的1.10.0而言,对于GDAL1.9.2问题依旧。 最近在处理卫星的长条带数据,图像的行数差不多200w行左右,格式的raw格式。可以使用VRT文件来很方便的对raw数据进行管理。比如要提取raw数据中的某一部分等等。由于处理的数据是1536列的16bit数据,并对raw数据进行提取。比如指定从多少行开始,到多少行结束。关于VRT数据进行管理raw数据可以参考《使用GD
2013-05-17 20:17:46 3042
原创 关于GDAL计算图像坐标的几个问题
使用GDAL处理地理图像时,不可避免的会遇到一个问题,图像的地理坐标问题,因为有了这个地理坐标,地理图像才和普通图像有了最本质的区别,那么在使用GDAL时,如果处理与地理坐标相关的信息呢?下面进行简单的说明。1:如何使用行列号计算图像的地理坐标?或者如何通过地理坐标来定位在图像的某个位置?2:如何获取图像的四至范围?或者如果通过指定的地理范围计算图像的所在区域? 要解决上面三个问题,首先需要知道和
2013-05-13 20:52:07 9634 26
原创 使用PROJ4库将地心直角坐标(XYZ)转为地心大地坐标(BLH)
地心空间(直角)坐标系--定义为原点O与地球质心重合,Z轴指向地球北极,X轴指向格林尼治子午面与地球赤道的交点,Y轴垂直于XOZ平面构成右手坐标系。地心空间直角坐标系是坐标系的一种,测量学上用于描述任一点的位置。 地心大地坐标系--定义为地球椭球的中心与地球质心(质量中心)重合,椭球的短轴与地球自转轴重合。地心大地经度L,是过地面点的椭球子午面与格林尼治天文台子午面的夹角;地心大地纬度B,是过点的
2013-05-08 20:42:57 11370 2
原创 使用OGR2OGR将S57数据转为shp格式
S57海图数据中包含了大量的图层,在目前ArcMap软件作为必备的GIS软件之一,所以还是shp格式处理起来可能比较方便(这里的方便仅仅是对于某些人觉得shp最常见,用的最广泛而言,其实我本人觉得shp不好的地方就是一个数据要多个文件组成,有点不爽)。所以可能需要把S57的数据转为shp数据。下面使用gdal提供的ogr2ogr工具来进行转换,希望对大家有用。 首先我们使用ogrinfo查看s57
2013-04-26 21:50:55 9841 19
原创 GDAL读取jpg文件中GPS坐标信息
在目前很多相机都支持在拍照的时候保留GPS信息,这些信息一般都是存储在jpg图像的exif信息中。下面内容主要说明如何使用GDAL库来读取jpg图像中的GPS信息并解析经纬度坐标。 首先,还是最常用的工具,gdalinfo,来查看这个GPS信息到底在什么地方。下面是使用gdalinfo输出的信息,图1为截图。Driver: JPEG/JPEG JFIFFiles: C:\Users\LiMinl
2013-04-26 21:18:44 7025
原创 GDAL读取S-57海图数据中文属性值乱码问题解决(续)
上篇博文中的代码使用了函数wcstombs来进行处理,今天发现GDAL库里面提供了宽字节转单字节的函数,名字叫CPLRecodeFromWChar(这个函数需要libiconv库的支持,也就是在编译GDAL的时候需要把libiconv库一起编译)。本以为C#语言也可以使用,结果很悲剧的发现,C#的提供的接口中没有相关的函数,看来使用C#的同学有点悲剧了。需要说明的是,需要先用函数CPLRecode
2013-04-25 19:23:01 6275 13
原创 GDAL读取S-57海图数据中文属性值乱码问题解决
使用GDAL读取S-57海图数据时,对于属性表中的中文属性值读出来是乱码。如图1所示。图1 S57海图数据中文乱码字段 通过调试代码发现,S-57文件中的中文是按照宽字节存储在文件中,而GDAL在读取时统一按照单字节来读取,这样就直接导致了中文属性值的乱码。比如这里有个字段属性值为“北京市”,读出来显示为“S琋^”,对应的十六进制为“0x17 0x53 0xac 0x4e 0x02 0x5e
2013-04-24 21:40:18 5476 5
原创 GDAL读写矢量文件——Python
在Python中使用OGR时,先要导入OGR库,如果需要对中文的支持,还需要导入GDAL库,具体代码如下。Python创建的shp结果如图1所示。图1 Python创建矢量结果#-*- coding: cp936 -*-try: from osgeo import gdal from osgeo import ogrexceptImportError:
2013-04-20 19:36:41 13068 14
原创 GDAL读写矢量文件——C#
在C#中使用OGR读写矢量数据时,需要引用“using OSGeo.OGR;”。同时为了处理中文路径和中文字段,需要在开始设置下面两个属性,代码如下://为了支持中文路径,请添加下面这句代码(大多数情况下不需要这句)//OSGeo.GDAL.Gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8","NO");//为了使属性表字段支持中文,请添加下面这句OSG
2013-04-20 19:27:54 11889 38
原创 GDAL读写矢量文件——Java
关于Java配置GDAL库参考之前的博文。在Java中使用OGR读写矢量数据时,需要导入ogr库,如果需要对中文路径的支持还有空间参考的支持,需要导入gdal和osr库,代码如下:importorg.gdal.osr.*;importorg.gdal.ogr.*;importorg.gdal.gdal.*;1.读取矢量staticvoid ReadVectorFile(){ Strin
2013-04-20 19:18:54 8643 34
原创 GDAL中的SURF算法
在去年的时候,在GDAL的邮件列表中发现有人提出要在GDAL中添加自动提取匹配点(GCP)的算法,在经过了将近半年的时间,GDAL中的匹配算法终于有了实质性的进展。在目前GDAL的开发版本(GDAL1.10beta)中已经提交,该匹配算法是基于SURF算法来实现的。 实现该算法的人叫Andrew Migal,邮件地址为:migal.drew@gmail.com。同时在实现SURF算法的时候,And
2013-04-05 14:01:37 4785 12
原创 SURF算法学习心得
本文主要内容来自下面两篇博客:http://www.yongblog.com/archives/123.htmlhttp://www.cnblogs.com/blue-lg/archive/2012/07/17/2385755.htmlSURF算法是对SIFT算法的一种改进,主要是在算法的执行效率上,比Sift算法来讲运行更快!参考资料:Surf算法论文及实现源码。SURF (Speeded Up
2013-04-05 12:54:25 4548 4
转载 SIFT算法学习心得
文章转自:http://www.yongblog.com/archives/256.html这篇文章主要介绍 SIFT 算法。希望通过对 SIFT 算法的总结来更加深入地了解“尺度不变特征变换”,除此之外,也加深来对 SURF 算法的理解。附件:SIFT—Scale Invariant Feature Transform1 SIFT 发展历程及主要思想SIFT算法由D.G.Lowe 1999年提出
2013-04-05 12:28:07 2569 1
转载 遥感图像处理流程
一.预处理 1.降噪处理 由于传感器的因素,一些获取的遥感图像中,会出现周期性的噪声,我们必须对其进行消除或减弱方可使用。 (1)除周期性噪声和尖锐性噪声 周期性噪声一般重叠在原图像上,成为周期性的干涉图形,具有不同的幅度、频率、和相位。它形成一系列的尖峰或者亮斑,代表在某些空间频率位置最为突出。一般可以用带通或者槽形滤波的方法来消除。 消除尖峰噪声,特别是
2013-04-03 19:05:58 28498 7
原创 mtl库在GCC编译器下的使用
最近一直在改造算法库,将其移植到Linux平台下。使用GCC编译器是发现MTL库中出现一大堆的问题。使用的MTL库下载地址为:http://osl.iu.edu/research/mtl/download.php3。在上面的网页中,需要下载下面三个压缩包,其中第一个是MTL库的源代码,第二个是在Visual Studio平台下编译的补丁包,第三个是gcc编译器的补丁包。http://osl.iu.
2013-03-26 20:20:34 2907 2
GDAL2.0.2 C# VS2013 X64 修改中文乱码
2017-01-06
GDAL1.11 X86 X64
2014-05-05
GDAL110 全套 C\C++ C# Java Python
2013-07-24
GDAL110版本对应的C#完美支持中文路径
2013-07-24
GDAL 1.10全套增加FileGDB支持
2013-07-13
GDAL 1.10开发库(VS2008SP1编译)
2013-05-10
GDAL1.92 修改S57中文乱码
2013-04-25
GDAL1.9.2 全套
2013-01-21
GDAL1.9 C++ C# python版本
2012-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人