使用GDAL库中的RPC校正问题】的更多相关文章

最近将GDAL库更新至1.11版本之后,发现之前写的RPC像方改正模型校正的结果偏差特别大(更新版本之前结果和PCI处理的结果一致).所以初步判断是GDAL库的bug,经过各个参数修改发现原来是指定的DEM采样方式导致的. 当指定DEM的采样方式为最邻近时,校正结果偏差很大,当DEM采样方式为双线性采样和三次立方卷积采样时,处理的结果与之前的结果一样.截图如图1所示,红色区域为对比区域,如图2所示. 图1 PCI校正结果全图 图2  图1中的红色区域按实际像素放大显示结果 下面是使用gdalwa…
GDAL库中目前提供了对WFS服务发布的数据进行获取,目前发现对于中文的服务名称或者图层名为中文,GDAL不能正确识别.通过调试发现,其原因有下面两点: 1.输入的URL路径没有使用UTF8编码而从网页获取的内容全部都是由UTF8编码组成,造成图层名使用EQUAL进行比较的时候出现错误. 2.输入的URL路径使用%开始的UTF8编码,而GDAL没有对%的转义编码进行转义导致,GDAL直接认为%XX是一个字符串,而不认为是一个UTF8编码导致. 首先对获取的图层名不支持中文的问题进行修改,主要内容…
GDAL2.0版本的更新日志中提到了对RPC校正的优化,今天测试了一下,发现提升的速度还是蛮快的,测试的数据是一个IRS-P5的数据. 单线程测试 首先使用一个线程进行测试,使用下面的批处理进行运行,将OPENCL禁用,测试结果见图1. echo %time% F:\gdal1112\gdalwarp.exe -rpc -t_srs WGS84 -r cubic -wm 1024 -et 0 -wo USE_OPENCL=FALSE F:\Data\711_214_26sep2006_p5\P5…
作者:朱金灿 来源:http://blog.csdn.net/clever101 gdal库实现投影转换之类的功能实际上底层都是调用prj4库的功能.如果gdal使用非静态的方式集成prj4库,实际上是采用动态加载prj4库来调用它的接口的.我在gdal库的三个使用心得中提出一个问题:gdal库是如何找到prj4库的路径.今天研究了一下gdal库的源码,弄明白了这个问题.原来有一个ogr选项--PROJSO来专门设置prj4库的全路径的.代码如下: std::string strPrjLibFu…
最近在做基于RPC的像方改正模型,方便对数据进行测试,修改了GDAL库中的RPC纠正模型,使之可以支持RPC像方改正参数. 下面是RPC模型的公式,rn,cn为归一化之后的图像行列号坐标,PLH为归一化后的经度纬度高程. 将上面的公式变形,使用偏移系数和缩放系数带入,可以得到图像的行列号坐标与经纬度坐标之间的坐标转换关系.整理后的公式如下所示,下标带s的为缩放系数,下标为0的表示偏移系数,rc为图像行列号,此处的PLH为地面经纬度坐标,P1-P4为有理函数的多项式系数. 使用像方改正模型的公式如…
近期在做基于RPC的像方改正模型.方便对数据进行測试,改动了GDAL库中的RPC纠正模型,使之能够支持RPC像方改正參数. 以下是RPC模型的公式,rn,cn为归一化之后的图像行列号坐标,PLH为归一化后的经度纬度高程. 将上面的公式变形,使用偏移系数和缩放系数带入,能够得到图像的行列号坐标与经纬度坐标之间的坐标转换关系.整理后的公式例如以下所看到的.下标带s的为缩放系数,下标为0的表示偏移系数,rc为图像行列号,此处的PLH为地面经纬度坐标.P1-P4为有理函数的多项式系数. 使用像方改正模型…
GDAL进度信息编写 GDAL库中的算法以及读写数据的时候一般都会提供两个与进度信息相关的参数,下面分别进行描述: GDALProgressFunc pfnProgress void * pProgressArg GDALProgressFunc pfnProgress GDALProgressFunc pfnProgress这个是一个回调函数,GDALProgressFunc的定义如下所示: typedef int (CPL_STDCALL *GDALProgressFunc)(double…
0.目的 GDAL库中提供了四五种读取Jpeg2000的驱动,但是各个驱动读取数据的效率各不相同,下面就针对三种读取jpeg2000的效率进行测试. GDAL库中提供的读取Jpeg2000的驱动有下面六个,具体的说明请移步GDAL官网查看.地址为:http://www.gdal.org/formats_list.html. JPEG2000 - Implementation of the JPEG-2000 part 1 JP2ECW – ERDAS JPEG2000 (.jp2) JP2KAK…
GDAL库对于C#的支持问题还是蛮多的,对于中文路径的支持就是其中之一(另一个就是通过OGR库获取图形的坐标信息). 关于C#支持中文路径,看过我之前博客的应该都不陌生,如果使用的是我修改过的GDAL库,可以通过设置下面的代码即可让C#直接支持中文路径.如果使用官方的库,不用设置直接应该就可以支持中文路径. // 注册所有的驱动 Ogr.RegisterAll(); // 为了支持中文路径,请添加下面这句代码 OSGeo.GDAL.Gdal.SetConfigOption("GDAL_FILEN…
很多时候都需要调试GDAL库,尤其是像学习GDAL库中的某些算法是如何实现的时候,调试就必不可少了. 首先说明用C++的调试.以VS2008为例进行说明. 编译DEBUG版本的GDAL库,这个可以参考我之前的博客.可以用命令行编译,也可以用IDE编译,但是实质都是一样,修改 nmake命令的参数.也就是给nmake命令后加一句DEBUG=1即可. 编译完成之后,应该会在gdal的源码目录中生成下面几个文件,如下图. 调试时用到的文件主要就是pdb文件,请确保pdb文件存在,大小应该在30M以上说…