APP下载

基于QGIS和OpenCV的水土保持监测方法的实现

2023-06-25黄天龙邢旭峰黄妙芬陈伊晴吕煜城谭俊涛

现代信息科技 2023年10期

黄天龙 邢旭峰 黄妙芬 陈伊晴 吕煜城 谭俊涛

摘  要:针对如何利用计算机视觉库OpenCV处理遥感数据,进行水土保持监测,提高水土保持监测效率和准确性的热点问题,通过对数据采集、图层处理和图像处理的研究,提出了一种基于QGIS和OpenCV的水土保持监测方法。研究结果表明,该方法能够有效处理遥感数据,提高水土保持监测效率和准确性。研究成果对遥感数据处理具有重要参考价值,有助于提高水土保持监测技术的应用水平。

关键词:水土保持监测;OpenCV;QGIS;遥感数据处理

中图分类号:TP391;S157 文献标识码:A  文章编号:2096-4706(2023)10-0113-05

Abstract: Aiming at the hot issue how to use the computer vision library OpenCV to process remote sensing data, carry out soil and water conservation monitoring, and improve the efficiency and accuracy of soil and water conservation monitoring, through the research on data acquisition, layer processing and image processing, a soil and water conservation monitoring method based on QGIS and OpenCV is proposed. The research results show that the method can effectively process remote sensing data and improve the efficiency and accuracy of soil and water conservation monitoring. The research results have important reference value for remote sensing data processing and help to improve the application level of soil and water conservation monitoring technology.

Keywords: soil and water conservation monitoring; OpenCV; QGIS; remote sensing data processing

0  引  言

水土流失是一个全球性的环境问题,主要是指由于水蚀和风蚀,土壤表面肥沃层逐渐流失,造成土地荒芜,生态系统失衡。此外,水土流失还会造成水体污染、洪涝灾害等一系列严重的环境问题。这些问题对农业生产、水资源利用和生态环境产生了很大的影响。

由于水土流失已成为全球性的环境挑战,因此水土保持监测非常重要。水土保持监测不仅有助于及时发现和分析水土流失,预测其发展趋势,而且为制定科学合理的水土保持规划和决策提供重要数据支撑,为保护土地资源和维护生态平衡做出贡献,为促进可持续发展提供坚实保障[1,2]。

我国常用的水土保持监测方法主要有调查监测法、遥感监测法、地面观测法、资料分析法等[3-5]。遥感监测法是利用卫星遥感技术监测分析,识别土壤侵蚀程度和规模,为治理提供数据支持[6]。该方法具有数据采集速度快、数据量大等优点,但需要对数据进行复杂的处理和分析,增加了操作的复杂性和成本。

OpenCV是一个流行的计算机视觉库,它为图像处理提供了各种算法和功能,包括对象检测、跟踪、图像分割、特征提取等[7-9]。李越[10]总结了近年来该技术在国内的应用情况,通过时间的纵向分析和技术视角的横向分析,阐述了当前该技术在图像处理领域的研究重点和发展趋势。

为了降低遥感监测的复杂性和成本,近年来,越来越多的学者和专家开始探索如何利用计算机视觉技术辅助遥感监测。本文针对该问题使用OpenCV,旨在提高水土保持监测效率和准确性,探索更好地处理遥感数据的新方法及其在实际领域的应用[11]。

1  数据采集

朱照宇等[12]对粤西地区几种表层土壤进行了137Cs同位素示踪研究。研究结果表明,自20世纪60年代中期以来,湖光岩受人类活动破坏较小,水土流失较少;而粤西其他地区的表层土壤则被大量侵蚀。张争胜等[13]的研究结果表明,雷州半岛中部的杨家、唐家、纪家、白沙等乡镇水土流失严重。因

此,本文以湖光岩及以上四个乡镇为研究对象,进行数据采集。

为了更准确地选取湖光岩及上述四个乡镇的卫星图像,使用德国数据制作公司Geofabrik(Geofabrik是一家德国地理数据公司,专注于為OSM地图数据提供技术服务和支持,它是OSM地图数据的主要供应商)提供的包括土地利用数据和水域数据在内的中国OSM数据。此外,使用开源AreaCity项目(AreaCity项目是一个开源项目,用于爬取和分析中国省市的数据)获得乡镇边界数据。

为了操作上述数据,使用QGIS开源地理信息系统(GIS)软件,它提供一系列地图制作和空间数据分析功能。如矢量数据处理、栅格数据处理、制图、空间分析等。

将上述数据载入QGIS,具体步骤如下:

1)添加土地利用数据,设置过滤表达式为"name"='湖光岩',将生成的图层重命名为湖光岩图层。

2)添加四个乡镇边界数据,并为每个乡镇边界数据设置一个过滤表达式,过滤表达式为"name"='杨家镇'、"name"='唐家镇'、"name"='纪家镇'和"name"='白沙镇',将生成的图层分别重命名为杨家镇图层、唐家镇图层、纪家镇图层和白沙镇图层。

3)添加水域数据并将生成的图层重命名为水域图层。

4)分别在湖光岩图层和四个乡镇图层上使用缩放到图层功能。由于缩放后得到的比例尺差异较大,为尽量减少卫星图层对实际地物细节描述的差异,选择得到的比例尺的最大值并锁定比例尺。

5)添加WMTS数据源,创建与Esri的World Imagery Wayback(Esri的World Imagery Wayback是一种基于时间的图像浏览工具,用于查看世界各地的高分辨率卫星图像,涵盖过去几年的时间段。借助World Imagery Wayback,用户可以比较不同时间同一地点的图像,以更好地了解地球表面的变化)的连接,加载default028mm图层。将图层重命名为卫星图层,并将卫星图层移动到所有图层的底层,以方便后续图层的叠加。

2  图层处理

图层处理是QGIS中最基本和常见的操作之一,目的是将不同格式和来源的地理空间数据加载到QGIS中,以供后续分析、编辑、可视化等操作。图层处理是GIS分析和制图的前提和基础。图层处理主要包括以下几个方面:数据预处理、数据编辑和数据导出。

QGIS中图层处理的主要步骤:

1)使用矢量几何图形工具箱中的边界工具,以湖光岩图层和每个乡镇图层作为输入图层进行操作,返回输入几何图形的组合边界(即几何图形的拓扑边界)的闭包。将边界图层设置为红色,调整合适的视觉宽度便于观察。分别输出仅包含卫星图层和每个边界图层的叠加图像,输出范围从每个边界图层计算,图像命名格式为地物+边界,如湖光岩边界。结果如图1至图5所示,为了更好地说明地物在图像上的位置,根据地物位置在图像上标出地物名称。

2)使用矢量几何图形工具箱中的边界框工具,以湖光岩图层和每个乡镇图层作为输入图层进行操作。此工具使用最小边界几何算法为输入图层中的每个要素计算边界框(包络)。分别创建每个边界框图层,图层命名格式为地物+边界框,如湖光岩边界框。

3)使用矢量叠加工具箱中的交集取反工具,以每个边界框图层作为输入图层,边界框图层对应的地物图层作为叠加图层进行操作。此工具使用算法从输入图层和叠加图层提取不重叠的要素部分,并删除两图层之间的重叠区域。将交集取反图层设置为黑色,分别输出仅包含卫星图层和每个交集取反图层的叠加图像,输出范围从每个地物图层计算,图像命名格式为地物+交集取反,如湖光岩交集取反。结果如图6至图10所示。

4)水土保持的对象是陆地,其目的是保护陆地的水土资源,防止水土流失和降低生态环境质量,从而维持陆地的生态平衡。本文不考虑水域对陆地的影响,去除水域。使用矢量叠加工具箱中的相交工具,以湖光岩图层和每个乡镇图层作为输入图层,水域图层作为叠加图层进行操作。此工具使用算法提取输入图层和叠加图层中要素的重叠部分。将相交图层设置为黑色。将每个边界图层和边界图层对应的相交图层叠加后,分别输出仅包含卫星图层和每个叠加图层的叠加图像,输出范围从每个地物图层计算,图像命名格式为地物+相交,如湖光岩相交。结果如图11至图15所示。

5)将每个相交图层和相交图层对应的交集取反图层叠加后,分别输出仅包含卫星图层和每个叠加图层的叠加图像,输出范围从每个地物图层计算,图像命名格式为地物+处理结果,如湖光岩处理结果。结果如图16至图20所示。

3  图像处理

徐博伦等[14]通过Python图像处理库OpenCV对街景图片中绿色像素的占比进行识别和计算,得到研究区域道路绿视率的量化数据。本文借鉴该方法对图像进行处理,利用OpenCV识别计算图像非黑色像素中目标像素和所有非黑色像素的比率,并将得到的比率作为图像的水土保持比率,根据水土保持比率對水土保持进行评价。

OpenCV是一个用于计算机视觉和机器学习的开源库。在水土保持监测中,OpenCV可用于以下方面:土地利用/覆盖分类、土地变化检测、水体边界提取等。

水土保持良好的陆地在卫星图像中通常呈现绿色。这是因为这种陆地通常覆盖着大量的植被,可以吸收大量的阳光,产生大量的植物叶绿素。可以在卫星图像中检测到这种叶绿素,使其呈绿色。

为了更好地分离图像中的陆地区域,对卫星图像进行了阈值处理。由于卫星图像的陆地颜色受光照、遥感设备特性、土壤成分等诸多因素的影响,因此在阈值化时需要考虑更广的颜色范围。由于HSV颜色空间对光照等因素的影响相对不敏感,因此采用HSV颜色空间进行阈值化[15]。

HSV颜色模型是一种描述颜色的方式,其中颜色由三个分量组成:色相(Hue)、饱和度(Saturation)和明度(Value)。HSV基本颜色范围(模糊范围)如表1所示,各分量的下限用下标min表示,上限用下标max表示。在表中,每种颜色都有一个基本的色相、饱和度和明度范围,这些范围是模糊的,因为颜色的具体定义会根据不同的应用而有所不同。对于某种颜色,凡是落在其基本色相范围内的颜色,都可以认为是该颜色。

本文在对卫星图像进行阈值处理时,绿色和青色都包含在阈值范围内。由于绿色和青色在H通道上是连续的,而S和V通道上和下限是相同的,因此阈值设置Hmin为35,Hmax为99、Smin为43、Smax为255、Vmin为43和Vmax为255。这些数值仅供参考,在实际应用中可能需要根据具体情况进行微调,以达到更好的效果。

在OpenCV中执行以下操作以计算水土保持比率:

1)定义一个计算水土保持比率的函数,将BGR格式的图片作为参数传入函数,2)~8)均在该函数内操作。

2)将BGR格式的图像转换为灰度图像,统计其中非零像素个数。

3)设置阈值并创建仅包含适合颜色范围的部分的遮罩。

4)通过遮罩操作原图,选择与颜色范围相匹配的部分。

5)将选中区域转化为灰度图,统计其中非零像素个数。

6)将选中区域非零像素个数与原图非零像素个数之比作为水土保持比率。

7)函数返回水土保持比率。

8)反复调用该函数计算各地物图像的水土保持比率。

将QGIS图层处理的每个地物处理结果图像重命名为每个地物的汉语拼音小写缩写,例如将湖光岩处理结果图像重命名为hgy,以避免編程中的兼容性问题。

计算水土保持比率代码如图21所示。

计算结果如表2所示。

各地物之间的距离很近,都在湛江市内。卫星图像拍摄时间段相同,比例尺相同,可以认为图像分辨率是相同的。水土保持比率的高低反映了一个地区的水土保持状况。结果表明,湖光岩的水土保持比率最高,可能是因为它是一个生态环境良好的自然保护区。各乡镇水土保持比率均低于湖光岩,且差异较大,可能受自然因素和人为因素影响。

为更好地了解区域水土保持变化情况,可通过加载不同时间段的卫星图层得到不同时间段的卫星图像,并采用相似的操作方法比较水土保持比率,进行更深入的分析。

4  结  论

本文介绍如何使用计算机视觉库OpenCV处理遥感数据,提高水土保持监测效率和准确性,避免了缺乏高效图像处理算法、缺乏通用图像处理工具、难以实现自动监测等问题,实现基于QGIS和OpenCV的水土保持监测方法。然而,由于遥感监测方法可能受到天气、光学效应、地形、遥感仪器等因素的影响,因此在获取的卫星图像中可能难以区分水域和陆地的差异。本文采用同一坐标系下的水域数据代替使用OpenCV分水岭算法计算湖光岩图层水域分布,但这也可能导致一些实际差异。为了更准确地区分水域和陆地,可将遥感技术与地面观测相结合,利用地面观测数据对遥感图像进行验证和校正。

为了提高水土保持监测效率和准确性,可以运用多种方法。一是通过多源数据融合进行综合分析,包括卫星数据、气象数据、植被指数数据等;二是改进监测算法,采用不同的阈值处理和特征提取方法;三是建立土地利用变化模型来预测趋势。这些方法的综合运用,可以进一步提高水土保持监测效率和准确性。

随着社会经济的发展,水土保持监测进入了一个新的历史阶段。水土保持监测的进一步发展,将为我们更好地认识和管理资源提供有力支持。同时,我们也需要不断加强对水土流失等环境问题的关注和治理,为实现可持续发展目标而不懈努力。

参考文献:

[1] 苗德志.水土保持监测工作的重要性与措施探讨 [J].水利技术监督,2021(12):10-11+70.

[2] 向万丽,罗婷,靳艳.新时期水土保持监测工作探究 [J].中国设备工程,2021(20):168-169.

[3] 朱波,王明明.生产建设项目水土工程保持监测技术与方法分析 [J].江西建材,2018(4):122+124.

[4] 李延强.无人机技术在生产建设项目水土保持监测中的运用方法及分析 [J].陕西水利,2021(1):129-131.

[5] 李智广,姜学兵,刘二佳,等.我国水土保持监测技术和方法的现状与发展方向 [J].中国水土保持科学,2015,13(4):144-148.

[6] 刘凤飞,樊华,王旭龙.利用遥感技术动态监测二龙山流域水土流失 [J].黑龙江水利科技,2003(4):107-108.

[7] 余辉,王林,王德胜.OpenCV在产品特征检测系统中的应用 [J].科技视界,2013(5):43+98.

[8] 张启轩,袁明辉.基于OpenCV的物体图像边缘缺陷识别研究 [J].软件导刊,2021,20(4):231-235.

[9] 谢树莹,周明,周金海.基于OpenCV的中药饮片“辨色”识别研究 [J].时珍国医国药,2018,29(2):510-512.

[10] 李越.OpenCV应用现状综述 [J].工业控制计算机,2017,30(7):123-124+126.

[11] 罗志高,王变琴.基于OpenCV技术的图像处理及应用 [J].海峡科技与产业,2019(9):34-38.

[12] 朱照宇,黄宁生,周厚云,等.广东沿海陆地表层地质灾害控制因素分析 [J].地球学报,2003(3):243-248.

[13] 张争胜,张加恭,廖伟群.雷州半岛水土流失及其治理 [J].华南师范大学学报:自然科学版,2004(4):118-122.

[14] 徐博伦,杨芳绒,李利.基于图像识别的郑州市老城区道路绿视率研究 [J].西南师范大学学报:自然科学版,2020,45(11):113-119.

[15] 侯宾,张文志,戴源成,等.基于OpenCV的目标物体颜色及轮廓的识别方法 [J].现代电子技术,2014,37(24):76-79+83.

作者简介:黄天龙(2001—),男,汉族,广东河源人,本科

在读,研究方向:农业资源与环境信息采集;通讯作者:邢旭峰(1972—),男,汉族,河北保定人,副教授,硕士,研究方向:海洋信息采集与处理。