1. 算法功能简介

正射校正是对影像空间和几何畸变进行校正生成多中心投影平面正射图像的处理过程。它除了能纠正一般系统因素产生的几何畸变外,还可以消除地形引起的几何畸变

PIE支持算法功能的执行,下面对正射校正算法功能进行介绍。

2. 算法功能实现说明

2.1. 实现步骤

第一步

算法参数设置

第二步

算法执行

第三步

结果显示

2.2. 算法参数

算法名称

正射校正

C#算法DLL

PIE.CommonAlgo.dll

C#算法名称

PIE.CommonAlgo.PIEOrthoAlgo

参数结构体

DataPreOrtho_Exchange_Info

参数说明

FileName

String

输入文件

(*.tif;*.tiff;*.bmp;*.img;*.jpg;*.ldf)

Demfile

String

输入的DEM文件(可选) 覆盖影像范围

ConstDem

Float

设置高程常值(可选) 这个是把一个地区看做是一个平坦地区,所以可以取一个常数,一般取340

RPBFileName

String

正射校正的RPC文件路径

(*.txt/*.RPB)

DestFileName

String

输出文件(*.tif;*.tiff; *.img)

ErroFile

String

有控制点时,可以输出精度报告文件

OutPixelX

Float

输入影像的X方向分辨率

高分一

0.00008  (多光谱)

0.00002  (全色)

0.00016  (WFV)

高分二

0.000032  (多光谱)

0.000008  (全色)

OutPixelY

float

输入影像的Y方向分辨率

高分一

0.00008  (多光谱)

0.00002  (全色)

0.00016  (WFV)

高分二

0.000032  (多光谱)

0.000008  (全色)

gcpWKT

String

输入控制点的坐标系

destWKT

String

默认是WGS84坐标系,可以选择

GCP

IList<PIE.CommonAlgo

.Struct_GCP>

控制点(由ptID控制点索引号、ptType控制点类型Control、x像素坐标、y像素坐标、X地理坐标、Y地理坐标、Z地理坐标,ex误差,ey误差组成)

proSrcULX

Int

处理范围(这个是针对GF1数据的,从XML里获取是否是MSS的数据(根据Xml里的ImageGSD分辨率大小判断是MSS还是PAN),如果是则四周去掉2行进行处理,这个是为了后续拼接效果做的,GF1数据一般四周2行都有一些问题。

proSrcULY

Int

处理范围

proSrcWidth

Int

处理范围

SrcHeight

Int

处理范围

GcpFileName

String

控制点文件路径(可选)

imageResampling

Int

重采样类型

(最近邻点法0/双线性1/三次卷积法2)

FuncName

String

功能名称

FileType

String

根据输出类型获得文件编码类型

.tif/.tiff——GTiff

.img—————HFA

其他—————ENVI

2.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/10.算法调用/图像预处理/ PIE.ImagePreprocessing. PIEOrthoAlgo

数据路径

百度云盘地址下/PIE示例数据/栅格数据/01.GF1/ GF1_PMS1_E116.5_N39.4_20131127_L1A0000117600-MSS1.tiff

GF1_PMS1_E116.5_N39.4_20131127_L1A0000117600-MSS1.rpb

视频路径

百度云盘地址下/PIE视频教程/10.算法调用/图像预处理/正射校正算法.avi

示例代码

          /// <summary>
///正射校正算法测试,本算法实现了将GF1_PMS1_E116.5_N39.4_20131127_L1A0000117600-MSS1.tiff进行最近邻域法正射校正
/// </summary>
public override void OnClick()
{
#region 1、参数设置
PIE.CommonAlgo.DataPreOrtho_Exchange_Info info= new PIE.CommonAlgo.DataPreOrtho_Exchange_Info();
info.FileName = @"D:\Data\ GF1_PMS1_E116.5_N39.4_20131127_L1A0000117600-MSS1.tiff ";
info.RPBFileName = @"D:\Data\ GF1_PMS1_E116.5_N39.4_20131127_L1A0000117600-MSS1.rpb";
info.DestFileName = @"D:\Data\result3.tif";
info.OutPixelX = 0.00008F;
info.OutPixelY = 0.00008F;
string path = @"D:\Data\result2.tif";
IRasterDataset rDataset = DatasetFactory.OpenDataset(path, OpenMode.ReadOnly) as IRasterDataset; info.destWKT = SpatialReferenceFactory.CreateSpatialReference((int)GeoCSType.GeoCSType_WGS1984).ExportToWkt();
info.proSrcULX=;
info.proSrcULY=;
info.proSrcWidth=rDataset.GetRasterXSize()-;
info.SrcHeight=rDataset.GetRasterYSize()-;
info.imageResampling = ;
info.FileType = "Gtiff"; PIE.SystemAlgo.ISystemAlgo algo = PIE.SystemAlgo.AlgoFactory.Instance().CreateAlgo("PIE.CommonAlgo.dll", "PIE.CommonAlgo.PIEOrthoAlgo");
if (algo == null) return;
#endregion //2、算法执行
PIE.SystemAlgo.ISystemAlgoEvents algoEvents = algo as PIE.SystemAlgo.ISystemAlgoEvents;
algo.Name = "正射校正";
algo.Params = info;
bool result = PIE.SystemAlgo.AlgoFactory.Instance().ExecuteAlgo(algo); //3、结果显示
ILayer layer = PIE.Carto.LayerFactory.CreateDefaultLayer(@"D:\Data\result3.tif");
m_HookHelper.ActiveView.FocusMap.AddLayer(layer); m_HookHelper.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
}

2.4.示例截图

PIE SDK正射校正的更多相关文章

  1. 基于GPU的高分一号影像正射校正的设计与实现

    一 RPC正射校正的原理 影像正射校正的方法有很多,主要包含两大类:一类是严格的几何纠正模型,另一类是近似几何纠正模型.当遥感影像的成像模型和有关参数已知时,可以根据严格的成像模型来校正图像,这种方法 ...

  2. Python实现多线程调用GDAL执行正射校正

    python实现多线程参考http://www.runoob.com/python/python-multithreading.html #!/usr/bin/env python # coding: ...

  3. PIE SDK地图平移校正

    地图平移校正,当加载两幅空间参考一样的影像,其中一幅影像有点偏移,这时就以另一幅影像为基准将其进行平移校正,然后保存,再次加载就不会出现偏移了. 下面来介绍下实现的主要代码: 首先通过选中目录树中的要 ...

  4. PIE SDK 文章目录索引

    1.PIE SDK介绍 1.1.  PIE软件介绍 1.2.  PIE SDK介绍 1.3.  PIE支持项目介绍 1.4.  PIE.NET-SDK插件式二次开发介绍 1.5.  PIE.NET-S ...

  5. PIE SDK Command&&Tool工具命令一览表

    PIE SDK Command&&Tool工具命令一览表 编号 模板 名称(中文) Command&Tool 程序集 备注 1 数据管理 加载栅格数据 PIE.Controls ...

  6. PIE SDK彩色空间变换

    1. 算法功能简介 使用彩色空间变换工具可以将三波段红.绿.蓝图像变换到一个特定的彩色空间,并且能从所选彩色空间变换回 RGB.两次变换之间,通过对比度拉伸,可以生成一个色彩增强的彩色合成图像.此外, ...

  7. PIE SDK傅里叶变换

    1.算法功能简介 傅里叶变换能把遥感图像从空域变换到只包含不同频域信息的频域中.原图像上的灰度突变部位(如物体边缘).图像结构复杂的区域.图像细节及干扰噪声等,经傅里叶变换后,其信息大多集中在高频区: ...

  8. PIE SDK同态滤波

    1.算法功能简介 同态滤波是减少低频增加高频,从而减少光照变化并锐化边缘或细节的图像滤波方法. 同态滤波的流程为:空间域图像→对数运算→傅里叶正变换→同态滤波――傅里叶逆变换→指数运算→同态滤波结果. ...

  9. PIE SDK最小噪声变换

    1.算法功能简介 最小噪声分离变换是用于判定图像数据内在的维数(即波段数),分离数据中的噪声,减少随后处理中的计算需求量. MNF 本质上是两次层叠的主成分变换.第一次变换(基于估计的噪声协方差矩阵) ...

随机推荐

  1. HDU 3368 Reversi (暴力,DFS)

    题意:给定一个8*8的棋盘,然后要懂黑白棋,现在是黑棋走了,问你放一个黑子,最多能翻白子多少个. 析:我是这么想的,反正才是8*8的棋盘,那么就暴吧,反正不会超时,把每一个格能暴力的都暴力,无非是上, ...

  2. Eclipse下Android的NDK开发环境配置

    编辑2016年7月26日——增加了下载网址,修改了一些错误. 摸索了一周,走了很多弯路,磕磕绊绊,总算是弄好了NDK的开发环境,在这里总结一下吧. 一.Android NDK开发环境 首先下载安装JR ...

  3. OkHttp3的简单使用(二)

    OkHttp3的简单封装 public class OkHttpUtil { public static final String TAG="OkHttpUtil"; privat ...

  4. angular 子路由

    const routes: Routes = [ { path: '', redirectTo: '/home', pathMatch: 'full' }, { path: 'home', compo ...

  5. C# 由范式编程==运算符引发对string内存分配的思考

    今天在看C#编程指南时(类型参数的约束http://msdn.microsoft.com/zh-cn/library/d5x73970.aspx)看到一段描述: 在应用 where T : class ...

  6. virtueBox实现虚拟机的复制和粘贴

    1.在设备--共享粘贴板--勾选双向. 2.在设备--拖放--勾选双向. 3.在设备--安装增强功能,然后进入虚拟机安装增强功能即可.

  7. Mysql初识数据库《三》数据库概述

    1 什么是数据(Data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机 在计算机中描述一个事物 ...

  8. 基于CAS的单点登录实战(2)-- 搭建cas的php客户端

    在这之前已经搭好了CAS服务端 基于CAS的单点登录实战(1)-- 搭建cas服务器 PHP-Client php-Client是官方支持的,去官网下个最新版就好了.phpCAS 接入很简单,解压放到 ...

  9. web渗透测试(上传漏洞)

    一句话木马—— 一句话木马短小精悍,而且功能强大,隐蔽性非常好,在入侵中扮演着强大的作用. 黑客在注册信息的电子邮箱或者个人主页等插入类似如下代码: <%execute request(“val ...

  10. html->head->body

    ps:大师兄的博客链接http://www.imdsx.cn/ http://ui.imdsx.cn/html/ html 相当于一个人 css 相当于为这个人穿上漂亮的衣服,化妆 js    相当于 ...