地理国情普查中解译样本数据检查技术探讨

2015-12-14 01:51:08夏正清谢艳玲赵克江
测绘工程 2015年8期
关键词:国情普查实例

夏正清,谢艳玲,赵克江

(贵州省第一测绘院,贵州 贵阳550025)

遥感影像解译样本数据是地理国情普查项目的重要组成部分,国务院地理国情普查领导小组办公室在《第一次全国地理国情普查实施方案》中明确指出:开展外业调查时,需采集遥感影像解译样本数据,并建立遥感影像解译样本数据库。遥感影像解译时,对地理环境的正确认知是保证解译结果正确的基本前提[1]。

VBA(Visual Basic for Applications)是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言,是VB的子集,是应用程序扩展的重要方法,在ArcGIS中可通过其提供的VBA实现用户定制功能。本文即是通过VBA,调用ArcGIS及Office的相关接口函数,实现遥感影像解译样本数据的自动检查及人机互检功能,从而最大化提供地理国情普查项目中遥感解译样本数据的质检效率和准确率。

GDAL全称为Geospatial Data Abstraction Library,是一个在X/MIT许可协议下读写栅格数据和矢量数据的开源库,它利用抽象数据模型来表达所支持的各种格式[2]。GDAL作为GIS领域的开源库,它提供了对各种格式的栅格数据及矢量数据的读写、转换、处理等功能,并公布了相关的源代码,为用户从底层进行功能扩展提供了便利。GDAL从2007年发布1.1.0版本以来,至今已经到了1.11.1版本,本文使用的GDAL版本为2014年4月25日发布的1.11.0版本。

1 遥感影像解译样本检查内容

文献[1]指出“利用具有对照关系的地面照片和遥感影像为主的解译样本数据,可以为遥感影像解译者建立对相关地域的正确认识提供支持,也可在解译结果的质量控制方面发挥重要作用,同时也为长期监测积累实地参考资料”。为了保证遥感影像解译样本数据的正确性及完整性,需要做如下方面的检查(见表1[1,3])。

表1 遥感影像解译样本检查内容

2 检查程序设计

2.1 功能设计

针对1节中提及的各项检查内容,设计了检查程序的各项功能,主要目的是:对于自动检查可按照一定的表格自动输出错误记录及位置;对于人工检查可提供交互式的检查界面,并将错误类别加入程序,使检查更加规范,便于成果评分。

2.1.1 数据概查

对样本解译数据库(SMPDATA.mdb)中的3个表进行检查(分别为PHOTO、SMPIMG、PHOTO_IMG),检查内容为各字段类型是否正确,各字段值填写是否正确及符合规范。如PHID值是否正确、PHTM格式是否正确。检查结果输出到Excel表格中,本检查主要完成表1中的第3项检查。

2.1.2 样本数量检查

程序自动按照PHOTO表中的CC字段值进行统计,将其统计结果输出为Excel表格,人工通过对测区的地物分布状况及面积对该结果进行识别,判断是否符合表1中的第1项规定。

2.1.3 交互及自动检查

通过程序提供的交互检查窗口(如图1所示),可实现表1中第2,4,5项的检查。

2.1.4 实例标绘位置检查

通过PHOTO表中的LONG(经度)及LAT(纬度)值计算其直角坐标,并通过直角坐标计算该值在影像中的行列号,读取该点的RGB值判断是否标绘正确。

2.1.5 实例四角坐标正确性检查

通过读取遥感影像的四角直角坐标与SMPIMG数据库中四角坐标进行比对,如小于一个像元则判断正确。

2.2 主要技术实现[4-12]

2.2.1 交互显示照片及实例影像

由于VBA的Image控件并不支持.tif格式图像的显示,本文使用了附加控件“Microsoft Office Document Imaging Viewer Control”,该控件依赖于安装的Office版本。VBA自带Image控件可显示jpg格式的照片。

显示地面照片:Image1.Picture=LoadPicture("C:\SMPDATA\PHOTO\" & TextBox4.Value);

显示遥感实例:MiDocView1.FileName="C:\SMPDATA\SMPIMG\"& TextBox5.Value;

通过获取照片的长度和宽度,计算照片像素并显示,如小于200万像素给出提示。

图1 程序界面

2.2.2 自动生成1∶1万地形图幅号

为了便于统计,需将样本点定位到其所在图幅号。通过SMPDATA.mdb数据库中PHOTO表的LONG(经度)和LAT(纬度)字段值,计算该样本点所在图幅号,计算公式及步骤如下:

①计算1∶1百万地形图图幅号的行号:a=Int(LAT/4)+1,将其转换为大写英文字母表示;②计算1∶1百万地形图图幅号的列号:b=Int(LONG/6)+31,以实际计算数值表示;③计算1∶1万地形图在1∶1百万地形图下的行号:c=(4/dLat)-Int(Mod(LAT/4)/dLat),dLat值为2.5,计算结果保证数值为3位数字,不足的在前补0;④计算1∶1万地形图在1∶1百万地形图下的列号:d=Int(Mod(LONG/6)/dLong)+1,dLong值为3.75,计算记过保证数值为3位数字,不足的在前补0;⑤组合以上结果并加入1∶1万标识码“G”即得1∶1万图幅号。

2.2.3 样本数统计与对比检查

为检查样本数量是否符合要求以及所采集样本是否在地表覆盖中有对应的地类与其对应,需以SMPDATA中的CC值和LCA图层中的CC值进行统计。

1)以SMPDATA数据库为基础进行样本统计。方法如下:①在ArcGIS的VBA中对SMPDATA数据库中PHOTO表的CC值进行分类统计,统计出每个CC码对应的样本个数,以此判断是否满足数量要求;②通过上一步骤中得到的CC码,统计LCA图层中对应的个数,若在LCA中无对应项则记录为0,以此判断一致性。统计LCA中CC码的核心代码:

2)以LCA图层为基础进行样本统计。方法如下:①读取LCA图层中的CC值并进行统计;②通过上一步骤得到的CC值,读取SMPDATA数据库中PHOTO表的CC值进行统计,如在PHOTO表中无对应记录则记录为0,以此判断一致性。以上两种统计分别对应不同的按钮控件,并将统计结果以Excel格式输出,便于检查者查看。

2.2.4 交互式检查

交互检查通过查看照片与实例的对应关系,以及交互面板中显示的其它信息,如拍摄距离、拍摄位置描述等。人工综合判断错误,并在下拉列表框中选择相应的错误描述,选择顺序为:质量元素→选择质量子元素→选择错误类别→选择错误描述,见图2。通过交互式检查,其结果将存入数据库中,以此作为质量评分的基础数据。可输出excel格式的质量检查记录表及质量等级评分表。

图2 交互式检查记录对话框

2.2.5 实例标注位置检查[11]

文献[1]中要求照片拍摄点位置要以显著颜色(黑、白、蓝或红等)的十字丝进行标注,同时应标注拍摄点的视角,见图3。传统的检查方式是将PHOTO表中的经纬度展绘为Shape格式的点,并与ArcGIS的逐一叠加影像实例查看,该方法费时费力。本文通过C++结合GDAL开源代码,开发了不借助于ArcGIS即可实现标注位置检查的新技术,详细步骤如下:

①读取PHOTO表中的经纬度,并进行高斯正算,将其转换为投影直角坐标(因裁剪的实例影像均为高斯-克吕格投影坐标)[12],东坐标及北坐标分别用X及Y表示;

②通过直角坐标求取行列号,行列号分别用col及row表示。

其中double*GeoTrans为GDAL中读取影像的六参数,GeoTrans[0]和 GeoTrans[3]表示 X方向和Y方向最小值(像元中心点);GeoTrans[1]和GeoTrans[5]表示X方向和Y方向分辨率;Geo-Trans[2]和GeoTrans[4]表示X 方向和Y 方向旋转角度(一般为0)。

③通过行列号读取该栅格的像元值。B,1,1,GDT_Float32,0,0);

R[0],G[0],B[0]即为拍摄位置点在实例影像中的3波段像元值。

④检查像元值是否与标注十字丝位置一致。因标注位置要求使用特殊颜色值显示,只需计算R[0]+G[0]+B[0]的值是否为0,255,511或765即可自动判断该点是否与十字丝一致。

图3 实例位置标注图

2.2.6 实例四角坐标检查

文献[1]中要求将裁剪的实例影像的四角坐标以经纬度格式存入到SMPIMG表中,因裁剪软件或人为操作会导致影像的实际坐标与数据库中的坐标不一致,需通过自动检查的方式实现检查。实现技术方法如下:

①读取影像的四角投影直角坐标。

以上代码读取西北角坐标,通过影像大小及分辨率即可读取东南坐标:

通过西北及东南坐标,即可得到西南及东北角坐标。

②在数据库中读取与影像同名的四角经纬度坐标,使用高斯正算公式转换为投影直角坐标,使用C++程序编写。

③通过比较①和②的绝对值,如果小于一个像元值距离则正确,否则错误,结果输出到Excel表中,并给出实例文件名及误差实际大小。

3 检查结果及效率分析

3.1 检查流程

3.1.1 程序配置

本检查程序需要软件:ArcGIS 10.1,Office 2003。

本检查程序涉及数据库:SMPDATA及YBJC,将SMPDATA数据库放置到SMPDATA文件夹下,该文件夹下还有另外两个文件夹,分别为PHOTO及SMPIMG,分别存储地面照片及遥感影像实例,该目录组织必须符合文献[1]的相关规定。将SMPDATA文件夹和YBJC数据库放置到程序指定目录下。

3.1.2 程序执行

1)ArcGIS中VBA检查部分。VBA在其它计算机中使用时需要对其进行移植,方法如下:①在ArcGIS的VBA中编写完相关代码后,将“窗体”及“模块”导出,分别为 UserForm1.frm和 ArcID.bas;②在无该程序的电脑上导入UserForm1.frm和ArcID.bas,并响应UIButtonControl的Click事件,加入 UserForm1.Show (0);③保存为 ArcGIS的MXD模版文件即可,MXD模版文件在使用过程中有版本限制,不同版本需要重新按照如上方法进行移植。

2)实例影像检查部分。该部分检查程序使用C++及开源的GDAL库进行编写,直接运行exe文件即可,不需借助任何其它GIS平台。

3.1.3 检查流程及结果

1)数据准备。为了能在ArcMap中查看样本点分布情况,需通过SMPDATA数据库中PHOTO表的LONG及LAT字段值生成YBD.shp点文件。

2)数据库概查。将在C盘生成“SMPDATA数据库概查结果.xls”文件。

3)样本数量统计。将在C盘生成“CC统计结果(基于样本库).xls”和“CC 统计结果(基 于LCA).xls”两个文件。

4)人机交互式检查。通过程序提供的交互式检查窗口,查看地面照片与其对应影像实例,对出现问题的通过选择错误描述的方式将其添加到数据库中,最后按图幅号来批量输出检查结果,将在C盘生成“检查统计结果.xls”和“检查评分结果.xls”文件。

5)影像实例检查。程序自动检查影像实例中的标绘位置及四角坐标,检查结果为2个txt文件,对于前者给出错误的影像名称及行列号,后者则给出错误影像名称及错误坐标的位置及误差。

3.2 效率分析

3.2.1 质量分析

自动检查无人工干预,如字段长度、类型、文件命名、字段值正确性等均由程序控制,检查质量完全符合相关技术规定。影像实例检查准确,结果定位精确。交互式检查提供了规范的错误描述用语,并通过图幅号进行定位,检查结果也存入到数据库中,保证了数据的规范性及可追溯性。

3.2.2 速度分析

自动检查在1 000条记录的情况下,完成概查及样本数量统计耗时20s;完成影像实例检查耗时约60s。人机交互完成1 000条记录约5h,检查内容包括表1中的第2,4,5项。

4 结论

本文为实现地理国情普查项目遥感影像解译样本成果的检查,通过两种技术实现了自动及交互检查,在提高检查效率的同时保证了检查结果的正确性及精准性。首先在ArcGIS中使用VBA实现了解译样本数据的自动及交互式检查;其次,通过C++语言及GDAL开源库,实现了影像实例的自动检查。通过3.2.2中的速度分析,本文所述技术可在5h内实现一个县的样本解译数据全面检查。通过本单位一检和二检中的实践使用表明,该技术在检查项目的全面性、检查结果的正确性及检查结果的规范化等方面表现突出。本文所述技术也可推广到其它项目中使用,如基础测绘中DOM检查、DEM检查等。

[1]国务院第一次全国地理国情普查领导小组办公室.GDPJ06-2013遥感影像解译样本数据技术规定[S].2014.

[2]李民录.GDAL源码剖析与开发指南[M].北京:人民邮电出版社,2014.

[3]国务院第一次全国地理国情普查领导小组办公室.GDPJ09-2013地理国情普查检查验收与质量评定规定[S].2013.

[4]BILL S.VBScript揭秘[M].高长剑,张方,译.北京:电子工业出版社,1998.

[5]刘炳文,许蔓舒.Visual BASIC程序设计教材[M].北京:清华大学出版社,2011.

[6]Kang-tsung,Chang.基于 VBA的 ArcObjects编程-面向任务的方法[M].陈健飞,蔡砥,译.北京:科学出版社,2010.

[7]杨波.关于地理国情普查外业调查与核查的分析和探讨[J].测绘与空间地理信息,2014,37(12):193-195.

[8]杜蕾.遥感影像解译在地理国情普查中的应用[J].测绘工程,2014,23(6):46-49.

[9]杨志刚,赵喜春.遥感影像解译样本数据的检查方法[J].测绘与空间地理信息,2014,37(6):195-197.

[10]侯志彬.CORS技术在油田用地变更调查中的应用[J].交通科技与经济,2014,16(5):119-121.

[11]姚领田.精通 MFC[M].北京:人民邮电出版社,2007.

[12]孔祥元,郭际明.控制测量学(下册)[M].武汉:武汉大学出版社,2006.

猜你喜欢
国情普查实例
立即全面普查 警惕二代粘虫发生
今日农业(2022年13期)2022-09-15 01:17:58
胡春华强调:确保脱贫攻坚普查取得圆满成功
今日农业(2021年4期)2021-11-27 08:41:35
家国情 诗词魂
中华诗词(2020年10期)2020-07-22 05:37:10
推广生物乙醇汽油:迫切且合乎国情
能源(2017年11期)2017-12-13 08:12:36
关于农业文化遗产普查与保护的思考
地理国情监测知识支持库初步设计
遥感信息(2015年3期)2015-12-13 07:26:50
特定国情教情中的中小学校自主权
学习调查要“四会”
完形填空Ⅱ
完形填空Ⅰ