劳春华,林燕慧
(广东工业大学 管理学院,广州 510520)
随着中国经济的高速发展以及政府在政策和资金上的支持,农村住房的需求量和建设量开始不断增大。2000—2020 年,广东省农村建设量增长迅速,平均每年增长16.569 万户,其中2019 和2020年的增长速度较快,高于平均水平的75.38%和65.25% (《广东农村统计年鉴》编辑委员会,2021)。当前,由于中国的农村村庄规划指导性较弱,大部分农村住房仍处于一种无规划的自发性建设状态,建设随意性较大(王晶 等,2016;胡典雄,2018)。农民盲目占用耕地资源新建住房,导致大量耕地面积被占用,耕地总量明显下降,农村住房建设的无序扩张与耕地占用是对耕地资源的严重浪费(赵其国 等,2006)。作为人均耕地面积不足世界平均水平40%的人口第一大国,当前迫切需要进行农村住房监测以减少耕地占用现象,并促进农村住房集约利用,这对中国耕地资源的可持续性发展和粮食安全具有重要意义。
中国当前农村住房监测的主要手段是全国土地调查,传统的数据获取方法以人工实地测绘及地方上报等方式为主,这种方式因为工作量大而耗费大量的人力与时间,导致巡查效率较低、难以满足即时性需求(武东海 等,2018)。并且由于专业素养和主观认知的差异,所获取的建筑物数据质量不一,还容易漏检,其信息真伪性和实效性得不到保障。如果在调查过程中遇到疫情、恶劣天气、交通状况、当地实际情况等不可抗拒力因素的影响,巡查的可靠性也难以得到保障。
近年来,深度学习技术迅猛发展,在多个领域均取得良好的应用效果,如人脸识别、语音识别、目标识别、自动驾驶、机器翻译、图像识别及分类等(张号逵 等,2018;林倩 等,2019;郑远攀 等,2019;刘娟宏 等,2020;贺丰收 等,2020;朱向雷 等,2021;余璀璨 等,2021),为农村住房识别提供新的思路。农村住房识别的本质是图像分类问题,可以通过学习大量的样本数据对图形进行特征提取,从而智能化地得到农村住房识别结果。卷积神经网络(Convolutional Neural Networks, CNN)是一种典型的深度学习图像分类算法,一般由一个或多个卷积层、池化层以及全连接层组成,其提取的效果更胜于传统人工特征与传统浅层分类器,是遥感地类目标检测、图像分类与识别、图像分割等领域的研究热点(张慧 等,2017)。
卷积神经网络在图像识别中常用的模型有AlexNet (Abdel-rahman et al., 2011)、 VGGNet(Karen et al., 2014)、GoogleNet (Szegedy et al.,2015)、 ResNet (He et al., 2016)、 MobileNet(Howard et al., 2017)等。其中,AlexNet网络最早用于数字识别,其优点是使用ReLU 作为激活函数从而加快收敛速度,使用dropout 避免过拟合,使用data augmentation扩增数据集,缺点是参数过多,计算量较大;VGGNet网络的优点是结构非常简洁,通过不断加深网络结构提升其自身性能,缺点是需要耗费较多计算资源,并且比较占内存;GoogleNet网络的优点是模型既准又轻,用GAP 代替全连接层,在便于迁移学习的同时提高准确率,缺点是网络不够深、迁移能力不足;ResNet是2015年ImageNet竞赛的冠军,优点是可有效解决深度学习神经网络难以训练的问题,缺点是ResNet前后层之间的短接没有很好的复用各层之间的特征图,因此导致模型随着层数的增加,参数量也快速增加;MobileNet 是典型的轻量化网络,被广泛应用于工业界。2017 年推出的MobileNetV1(Howard et al.,2017)卷积神经网络,以深度可分离卷积替换标准卷积的方式降低网络结构的大小及计算复杂度,并在略微降低精度的情况下大幅度减小模型的运算量,降低对用户硬件环境的要求,从而提升用户体验、提高访问的灵活性。其不足是在训练过程中深度可分离卷积的参数值为0,导致训练结果不理想。而MobileNetV2(Sandler et al., 2018)网络在MobileNetV1的基础上进行改进,新增层之间的线性瓶颈、瓶颈之间的连接捷径功能,具有体积小、计算量少、速度高及准确率高等特点。一些学者采用MobileNetV2 对遥感影像的建筑物进行提取,如王华俊等(2022)提出使用轻量级网络MobileNetV2替换DeepLabv3+的主干网络Xception 的方法,该方法不仅减少参数量和训练时间,而且有效提高建筑物的提取精度。许博鸣等(2019)通过Keras 框架获取MobileNet 瓶颈层并进行迁移学习从而实现建筑物识别,该模型具有较高识别率且降低模型权重空间的优点。于坤等(2021)将MobileNet 和Unet耦合,解决了建筑物特征提取过程中低维信息丢失,边缘提取效果不佳等问题,在视觉效果上表现优异。综上,MobileNetV2 是对目标检测和分割的有效特征提取器,同时是一个高效的移动端模型。构建基于MobileNetV2的农村住房识别模型并开发基于该模型的桌面端和移动端应用,能够极大提升农村住房监测的内业处理与外业巡查效率与智能化水平,具有重要的应用价值,因此本文选用该模型从高分辨率遥感影像自动提取农村住房。
美国地理学家W R Tobler在1970年提出地理学第一定律(Tobler, 1970),该定律指出“任何事物都相关,只是相近的事物关联更紧密”,即地理事物或属性在空间分布上互为相关(李小文 等,2007)。因此中国的农村住房也具有空间相关性(李郇 等,2022),利用MobileNetV2模型识别农村住房区域时,有可能会出现漏提现象,导致提取结果的形态相对破碎,因此需采用新的方法改善。数学形态学是一门建立在格论和拓扑学基础上、以形态结构元素为基础对图像进行分析的数学工具(陈晨 等,2019),数学形态学检测中最基本的形态算符包括膨胀算符、腐蚀算符。膨胀和腐蚀(邓仕超等,2017)是灰度图像的初等形态运算,其作用是消除噪声、分割出独立的图像元素或在图像中连接相邻的元素,寻找图像的明显极大值区域或极小值区域、求出图像的梯度等。因此,可将数学形态学上的膨胀腐蚀方法作为补充,根据中国农村住房的空间相关性,将农村住房识别结果进行像素分割或像素连接,弥补部分深度学习识别错误的情况。
因此,本文基于高分辨率遥感影像数据,耦合MobileNetV2 和数学形态学方法,以茂名市为例,采集茂名市高分辨率遥感卫星影像样本库进行训练,得到一个基于深度学习的经济欠发达地区农村住房智能识别模型(MobileNet-MM)。以期为中国农村住房监测提供技术支持。
为了最大程度降低模型训练成本,使其适用于移动端等轻量工业化业务应用场景,谷歌团队开发了MobileNet 网 络 模 型。2018 年,Mark Sandler 对MobileNetV1 进行改进并提出MobileNetV2 模型,MobileNetV2 引入具有线性瓶颈的倒置残差模块(Sandler et al., 2018),借 鉴 了MobileNetV1 和ResNet的优点,依然保持良好的计算速度和较小的存储需求,不仅在MobileNetV1深度可分离卷积的基础上加入多个逐点卷积,并且借鉴ResNet网络结构,提升网络结构性能并降低计算复杂度。但存在两点不足:一是参数调节问题,二是依赖于优化策略。其网络结构如表1所示。
表1 MobileNet V2网络结构Table 1 MobileNet V2 network structure
MobileNetV2神经网络是深度可分离卷积网络,首先用1×1 卷积过ReLU 提升通道数,再用Depthwise的3×3空间卷积过ReLU进行卷积,最后用1×1卷积过ReLU 恢复通道,并和输入相加(图1)。MobileNetV2 具有参数数目较少、效率更优、硬件要求更低的特点,适用于农村住房识别研究。
图1 MobileNet V2结构单元示意Fig.1 Structural units of MobileNet V2
马瑟荣(Ripley et al., 1975) 和赛拉(Serra,1986) 将数学形态学(mathematics morphology)引入图像处理领域。数学形态学由膨胀、腐蚀、开运算和闭运算构成。膨胀(dilation)是使物体边界扩张的过程,而腐蚀(erosion)的作用则与膨胀相反,其概念是缩小图像,去除小沟壑细节的一种操作。在图像处理过程中,两者经常被混合使用,形成开运算与闭运算。开运算指先腐蚀后膨胀,即先消除细点处的分离物体,继而平滑较大的物体边界。相反,闭运算则是先膨胀后腐蚀,即先将图像的细小空洞进行填空,再抑制比结构元小的暗细节。膨胀和腐蚀的目的是消除噪声,在进行膨胀腐蚀操作前需先定义一个卷积核,将卷积核与待测图像进行卷积计算从而得到膨胀和腐蚀后的结果(图2)。
图2 表示结构A 被卷积核腐蚀,移动结构卷积核,如果卷积核能与结构A完全重叠,则保留该位置点,最终得到结构A的腐蚀结果(结构B);卷积核在结构B上进行卷积操作,移动卷积核,如果卷积核与结构B 存在重叠区域,则记录该区域位置,最终得到结构B的膨胀结果(结构C)。结构C与结构A 相比,去除了部分小地物,填充了部分小空洞。
图2 腐蚀膨胀示意Fig.2 Corrosion expansion diagram
首先,构建高分辨率遥感影像农村住房样本库;然后,构建农村住房智能识别模型;最后,将该模型应用于经济欠发达地区农村住房自动提取。利用PaddlePaddle 人工智能基础平台,搭建耦合MobileNetV2 神经网络与数学形态方法的农村住房图像分类模型,技术路线如图3所示。
图3 农村住房识别模型技术路线Fig.3 Technical route of rural housing identification model
为了充分利用高分辨率影像丰富的地物信息,并且取得与原影像一致的分辨率识别结果,采用逐点切割方式进行农村住房识别。首先,从高分辨率卫星遥感影像中获取遥感数据并进行图片处理、分割从而得到样本库;其次,运用MobileNetV2神经网络对收集的样本库进行训练,得到经济欠发达地区农村住房识别模型;然后,用生成的模型对遥感影像进行逐点化测试,并得到测试结果图,逐点化是指以待测试图的某点为中心,向四周取一个64×64像素大小的正方形,用生成的模型对正方形进行测试,并将测试结果作为该点的识别结果。其中,将返回结果为“农村住房”的正方形地块标记为“1”,剩余的其他地形结果标记为相应的标签(“2、3、4、5、6、7”),最后合并为标签“0”,以此类推,得到逐点化后的结果图;最后,对识别结果进行数学形态学的膨胀腐蚀处理,从而得到最终的农村住房结果图。
茂名市位于广东省西南部,全市行政区域土地总面积11 427.63 km2,属于经济欠发达城市。粤西地区的村域面积较大,各自然村之间的距离较远,农村住房分布较为松散;且农村住房的空间布局随意性较大,村内巷道蜿蜒曲折,植被掺杂,巷道脉络不清晰(谭庆扬 等,2018)。仅用农村住房标签与背景信息构建模型,信息过于复杂,对模型效果影响较大。因此,给模型提供更为丰富的地物类别标签,可降低模型构建的难度,提高模型的训练精度。为更好地识别农村住房,在数据获取过程中采集农村住房、耕地、裸地、水体、植被5 类地形,并根据耕地的纹理细分成3种不同类型的耕地,将这7类地类按照数字“1~7”依次做好标签,即:农村住房(“1”)、耕地a (“2”)、耕地b(“3”)、耕地c(“4”)、裸地(“5”)、水体(“6”)、植被(“7”)。数据集中图像均为RGB格式,分辨率为18级,即0.55 m分辨率。由于影像数据本身的分辨率、云层覆盖等干扰因素的客观存在,需对采集到的大地块影像图进行初步筛查,对由于数据源缺失而产生的不同时态不同分辨率影像相互“拼接”的低质量遥感影像进行剔除。
初步筛选出的遥感影像形状和尺寸大小各异,如果直接应用于模型训练,必然效果很差。为了便于存储和切片,保证训练的高效性与模型的有效性,需通过图像分割进行再次精选,将每类地形的遥感影像分割为大小统一的规则小地块。利用python 将上述7 类地物切割为64×64 像素的正方形小切片。最终收集的数据为每个地类的各1 000 张图片,控制每一类型的图片数量相等以提高训练精度,总计7 000 张图片。将数据集分为两类:训练集和验证集。对于构建的大数据样本,随机选择80%的数据用于训练模型。另外,20%用于验证模型的有效性,即每个模型有5 600张训练集,1 400张测试集。将处理好的图像进行清洗、整理、人工筛选出高质量的样本数据,并对数据进行归类处理,将原标签“农村住房”归类为“农村住房”,标签为1,将“耕地a、耕地b、耕地c、裸地、水体、植被”归类为“非农村住房”,分别将标签设为2、3、4、5、6、7,从而构建满足人工智能学习的“农村住房提取”样本数据(图4),为后续的模型训练提供数据支撑。
图4 样本库构建流程Fig.4 Construction process of image sample database
在训练开始前,需调整最佳训练参数,其中,初始学习率是对整个训练过程影响比较大的参数,学习速率过大会导致模型收敛程度差,学习速率过小又会导致训练过程中耗时过长,本模型将学习率设 定 为0.002。 并 将“continue_train” 设 置 为“False”,表示在训练时不使用预训练模型。在不断的摸索中最后确定训练次数“num_epochs”设置为20 次,“good_acc1”设置为0.95,即当训练精度连续20 次达到0.95 时结束训练。采用64 位windows7系统作为测试环境,内存为8GB,利用百度飞浆(PaddlePaddle)框架搭建CPU(酷睿I7 7700)环境测试平台,模型训练平均历时20 min。此外,图像增强可以达到提升模型泛化能力以及鲁棒性的效果,因此,启用图像颜色增强、增加随机角度以及增加水平随机翻转等措施。
选用经济欠发达地区(农村)的高分辨率遥感地块影像,并在图中直接获取地类数据进行模型训练得到模型MobileNet-MM 1,识别结果见图5,图6为图5的局部放大。为了验证模型的稳定性与泛化性,另选用5 张遥感地块影像(图7-a2~6)进行对比实验,依次得到模型MobileNet-MM 2~6,将6个模型的训练精度与测试精度进行汇总。由表2可知,模型的平均训练精度为98.9%,将20%的数据集用于测试,得到的平均测试精度为98.2%,效果较理想。由于本文选择的样本为纯地物样本,且用地类型相对简单,各类用地的特征差异明显,在卷积神经网络下容易区分,所以部分模型训练与测试精度达到100%是有可能的。将训练的模型应用于整幅影像,影像切片的类型大部分不是纯地物,因此整体识别精度会下降,具体见表3所示。
表2 模型训练精度与测试精度Table 2 Models' training accuracy and test accuracy %
表3 模型识别精度对比Table 3 Comparison of models' identification accuracy %
根据上述得到的6个模型分别提取对应遥感影像的农村住房。以MobileNet-MM 1 为例,采用训练好的MobileNet-MM 1 对1 号遥感影像(图5-a)进行农村识别,识别结果如图5-b 所示,最终得到MobileNet-MM 1的识别精度为86.0%(见表3)。为验证MobileNet-MM 模型对农村住房的识别效果,利用ResNet34模型对同样的样本库进行训练。为使对比更具说服力,控制两类模型的参数变量,在控制逐点切割步长(均设置为5)不变的情况下,将2个模型的训练次数“num_epochs”设置为20 次,“good_acc1”设置为0.95。并将ResNet34模型批量大小“batch_size”的值设置为8。经过训练,得到ResNet34模型的农村住房识别结果,将人工识别结果与ResNet34 模型识别结果叠加,计算得出ResNet34 模型的农村住房识别精度为71.6%,两类模型的精度对比结果如图5所示。
为分析MobileNet-MM 1 模型与ResNet34 模型识别效果差异,将图5-d、e 与f 的识别结果局部放大,如图6所示。
图6 中,图6-b、c、d 分别是图5-e、f、d 的局部放大图。区域1~3中,ResNet34模型漏识的农村住房区域面积较大,主要分布在区域的边缘,而MobileNet-MM 1 模型正确识别的面积较多,漏识的面积较小,漏识区域分布较为分散。区域2 中,ResNet34模型将耕地、植被误判为农村住房,对于农村住房的提取效果偏弱;而MobileNet-MM 1 模型对地类边界的提取效果更精细,对农村住房轮廓的识别效果更好。MobileNet-MM 1 的识别精度达到86%,而ResNet34模型仅为71.6%。从提取精度和空间分布看, MobileNet-MM 1 模型优于ResNet34模型。
图5 1号影像识别结果与精度对比Fig.5 Recognition results and accuracy of No.1 image
图6 1号影像农房识别结果局部放大Fig.6 Partial zoom-in of farm house recognition results from No.1 image
为验证MobileNet-MM 模型的稳定性,设计了2 种方案,第一种方案是在不同的农村建立不同的模型,测试其精度的方差;第二种方案是把不同的农村样本合并建立一个模型,测试其在不同农村精度的方差。方差越小,模型越稳定。针对第一种方案,利用MobileNet-MM 2-6 模型识别并提取对应遥感影像(图7-a2~6)的农村住房,并将识别结果与ResNet34模型进行对比(图7)。
图7 MobileNet-MM模型识别结果Fig.7 Recognition results of MobileNet-MM model
运用MobileNet-MM 模型测试得到1-6 幅图的测试精度分别为86.0%、83.3%、82.5%、85.5%、86.2% 和83.3%,平均精度为84.5%,方差仅为0.02%(见表3),这表明,MobileNet-MM 模型精度具有稳定性,其测试精度基本维持在83%~86%,可满足农村住房智能提取模型的精度要求。ResNet34模型所得到的1-6幅图精度分别为71.6%、65.5%、74%、81.8%、72.0%和78.2%,平均精度为73.9%。经过对比,本文提出的MobileNet-MM模型平均精度比ResNet34模型高10.6%,基本满足经济欠发达地区的农村住房提取精度要求。
针对第二种方案,将MobileNet-MM 1-6 的样本库进行汇总,训练得到一个总模型,命名为MobileNet-MM A;将MobileNet-MM 1-3 的样本库进行汇总,训练得到模型1-3 的总模型,命名为MobileNet-MM B。用MobileNet-MM A 和MobileNet-MM B 分别识别1-6 幅遥感影像地块,得到的识别精度如表4 所示。可知,利用MobileNet-MM A 模型识别1~6 号遥感影像,精度的方差仅为0.03%,平均识别精度为83.8%,比MobileNet-MM 1~6的平均精度低0.7%;利用MobileNet-MM B模型识别1~3号遥感影像,精度的方差仅为0.02%,平均识别精度为83.5%,比MobileNet-MM 1~3 的平均精度低0.4%。这说明将样本合并训练一个模型,并应用于不同的农村(影像),精度相差较小,表明模型具有稳定性;与独立样本训练的模型相比,精度降低较小,但合并样本训练一个模型可显著降低模型构建的速度,在农村数量特别多的区域,效率更高。
表4 汇总模型精度对比Table 4 Summary model accuracy comparison %
经济欠发达地区的农村住房影像特征具有一定的相似性,但不同农村的影像特征也有差别。用一个农村提取的样本所生成的模型识别另一个农村的住房,其精度需要验证。为了验证模型的泛化性,利用MobileNet-MM B 模型识别4~6 号遥感影像,得到的平均识别精度为83.7%,与MobileNet-MM4~6 的平均精度相比,前者与后者精度差异很小,仅比后者低1.3%。模型B并没有用农村4~6的样本数据,识别结果仅比采用样本数据的模型精度降低1.3%,说明对于经济欠发达地区的农村,本文模型有一定的泛化性。
综上,对于某个城市经济欠发达农村的住房识别,可随机抽取部分农村建立样本库,合并样本库训练一个模型,再对整个城市经济欠发达的农村住房进行识别。
本文采用高分辨率遥感影像数据,构建经济欠发达地区农村住房样本库,搭建MobileNet-MM 网络模型。结果显示,MobileNet-MM 模型对农村住房的平均提取精度达到84.5%,基本可满足农村住房智能识别精度要求。将MobileNe-MM 模型与ResNet34 模型进行精度对比,发现MobileNet-MM模型的识别精度高于ResNet34 模型。分别将MobileNet-MM 1~6 与MobileNet-MM 1~3 的样本库进行汇总并训练得到MobileNet-MM A 与MobileNet-MM B,利用生成的新模型识别遥感影像地块,发现新模型精度与原模型精度差异较小,精度比较稳定,说明MobileNet-MM模型具有一定的泛化性。
本文创新性地引入数学形态学的膨胀腐蚀方法,与MobileNetV2进行松散耦合,构建基于MoibileNetV2和数学形态学方法的经济欠发达地区农村住房识别模型(MobileNet-MM),该模型精度较高且具有一定的泛化性。并且,本文生成一套高分辨率经济欠发达地区农村住房样本库,可为后期模型的构建提供数据支撑。
利用深度学习技术进行农村住房监测是可行的,但目前的技术框架还存在不足。首先,人工智能技术需要有高质量的样本库作为支撑,但目前在样本收集过程中存在一些被云层遮挡的遥感影像数据,还有一些由于遥感数据缺乏成像时间、卫星参数和分辨率等关键信息而产生的不同时态不同卫星拍摄影像进行拼接处理得到的低质量遥感影像,这些影像为深度学习样本库的构建过程增加困难。其次,随着科技的发展,遥感数据处于不断更新变化的过程,新的卫星数据不断涌现,因此本文构建的农村住房样本也存在局限性,需要在后续的应用中不断丰富和完善。最后,本文没有对切片大小做敏感性分析,后续可做敏感性分析,得到最优的切片大小。