掌桥专利:专业的专利平台
掌桥专利
首页

一种传统村落建筑屋面破损识别及破损率计算方法

文献发布时间:2024-04-18 19:59:31


一种传统村落建筑屋面破损识别及破损率计算方法

技术领域

本发明涉及图像分割技术领域,具体涉及一种传统村落建筑屋面破损识别及破损率计算方法。

背景技术

传统村落历史建筑是一种重要的历史文化遗产,但由于保护和利用欠佳,导致建筑受到虫蛀、风化、潮湿等原因的影响使得建筑构件破损严重。在传统建筑构件中,屋面瓦片相比于砖石土墙面、木质梁架重量更轻,其暴露在户外的特质更容易受到自然的侵蚀;同时,建筑物的顶面是在遥感影像中观测到的建筑物最显著的特征,其屋面破损率计算对整体建筑破损程度的评估具有重要意义。

目前,建筑物屋面破损程度的检测主要面向现代化建筑地区,一方面通过多时相遥感影像图片检测区域屋面面积的变化程度,主要用于受到火灾、地震等灾害的区域,对灾前灾后的建筑破损情况进行统计;另一方面,利用单时相遥感影像图片识别建筑屋面的破损区域。但目前还存在以下问题:

(1)未提出针对传统村落建筑的破损识别和破损率计算方法,现有技术主要以现代建筑破损识别类型为主。

(2)未提出将屋面破损程度量化成数值的方法。现有技术仅能检测建筑屋面破损区域的位置,未能计算屋面破损程度。

(3)未提出非矩形建筑物屋面图像破损识别和计算的方法。目前建筑物屋面识别方法仅针对单个直边矩形屋面,对于具有多种平面形态的传统村落类别不具有普适性。

因此目前亟待提出基于传统村落遥感影像的图像特征,以建筑物屋面形态为感兴趣区域进行破损识别的方法,实现建筑物屋面损伤程度的定量评估。

发明内容

本发明的目的是为了解决现有技术中的上述缺陷,提供一种传统村落建筑屋面破损识别及破损率计算方法。该方法通过训练破损屋面实例分割模型,预测待分割测试样本的破损屋面和非破损屋面分割结果;进而在分割结果中的破损屋面掩膜范围内进行超像素分割,使得破损屋面损毁检测以像素为单位聚类为有语义信息的超像素块;再接着通过SVM分类器对超像素块进行识别,区分出具有语义信息的建筑屋面破损区域、非破损区域、天井和院落区域,通过像素点比例的计算达到建筑破损率的判定。本算法包含两个尺度的图像分割方法,在传统村落尺度上实例分割破损屋面和非破损屋面;在建筑单体尺度上超像素分割破损屋面的破损区域、非破损区域、天井和院落区域。该方法能够从宏观到微观尺度建立完整的传统村落破损屋面识别和破损率计算流程,简化操作步骤,为提高传统村落整体损毁评估的精度和自动化程度提供了有效途径。

本发明的目的可以通过采取如下技术方案达到:

一种传统村落建筑屋面破损识别及破损率计算方法,所述屋面破损识别及破损率计算方法包括如下步骤:

S1、获取传统村落的遥感影像图片:以Google earth的卫星遥感影像为基本图源,下载传统村落遥感影像图片;将所述遥感影像图片按比例划分为训练样本和测试样本,其中,90%作为训练样本,剩下10%作为测试样本;

S2、制作训练集构建破损屋面实例分割模型:使用上一个步骤的训练样本,标注包含传统村落建筑的遥感影像图片,形成训练集T,其中,所述训练集T包含2种目标对象类型,第1类目标对象标签为broken,对应破损状态的传统村落建筑屋面;第2类目标对象标签为non-broken,对应非破损状态的传统村落建筑屋面,使用训练集T在yolov8x-seg.pt预训练权重模型的基础上进行训练,获取破损屋面实例分割模型Posun_BEST.pt;

S3、将待分割的测试样本输入破损屋面实例分割模型中,得到实例分割结果:将步骤S1中测试样本中的图片,输入破损屋面实例分割模型Posun_BEST.pt中进行分割,通过计算得到每一张图片中的破损屋面和非破损屋面实例分割结果;

S4、定义实例分割结果中破损屋面的掩膜范围进行超像素分割,提取单个破损屋面的超像素子块图像:使用上一个步骤的实例分割结果,逐个提取每一张图片中破损屋面的掩膜范围Mask,通过SLIC算法在掩膜范围内进行超像素分割,得到聚类后的超像素块,提取超像素块作为子块图像,构成测试集d。

S5、将子块图像输入经过训练的SVM分类器:使用上一步的子块图像,输入经过训练的SVM分类器中,其中,所述SVM分类器包括3种目标识别类别,第1类为非破损区域的子块图像,标签为0;第2类为破损区域的子块图像,标签为1;第3类为天井和院落区域的子块图像,标签为2;使用SVM分类器进行识别,得到子块图像破损区域、非破损区域、天井和院落区域3种类型的分类结果。

S6、破损率计算:使用上一步的分类结果,计算单个破损屋面破损区域子块图像的像素点比上破损区域和非破损区域子块图像的像素点之和的值,该值即为单个建筑屋面破损率计算结果。

进一步地,所述步骤S1中传统村落遥感影像图片从公开的地图服务商获取,图片格式应为jpg,适用于下一步骤标注工具所要求的文件格式;为提供足够的数据用于模型训练,并且保留一定数量的数据用于评估模型在未见过的样本上的性能,将所述遥感影像图片的90%作为训练样本,剩下10%作为测试样本。

进一步地,通过Labelme图像标注工具对所述训练样本进行多边形标注,形成训练集T,包含2种目标对象类型,第1类目标对象标记为broken,对应破损状态的传统村落建筑屋面;破损状态的传统村落建筑屋面在遥感影像上可能出现的特征包括:由于屋面材料缺失而造成的不规则形状特征;由于屋面材料缺失呈现出与周围完整屋面不一样的颜色差异和纹理差异特征;第2类目标对象为non-broken,对应非破损状态的传统村落建筑屋面;非破损状态的传统村落建筑屋面在遥感影像所具有的特征包括:连续、重复、均匀的纹理特征和颜色特征;完整的形状,边界清晰,没有明显的裂缝或凹凸;与周围建筑具有一致性;为保证所述多边形标注的关键点能够准确地勾勒每栋建筑的整体轮廓,在标注时需要使用合适的关键点数量平衡分布于图面,避免将关键点放置在对象被遮挡或被模糊的位置。

进一步地,所述步骤S2中破损屋面实例分割模型Posun_BEST.pt的训练和获取过程包括:从代码及软件开发平台GitHub官网上下载由Glenn Jocher等开发者提供的YOLOv8网络数据配置文件,设置YOLOv8网络数据配置文件初始参数并输入YOLOv8x-seg网络实例分割模型,使用yolov8x-seg.pt的预训练权重,训练迭代轮数为300世代,最终得到破损屋面实例分割模型Posun_BEST.pt。YOLOv8x-seg网络实例分割模型涉及识别图像中的单个对象并将所识别对象与背景分开;其输出的结果是一组掩码,以及每个对象的类别标签和置信度分数,能够确定识别对象在图像中的位置以及确切形状。由网络实例分割模型YOLOv8x-seg优化后的破损屋面实例分割模型Posun_BEST.pt能够确定破损屋面在图像上的位置并提取出破损屋面的掩膜轮廓。

进一步地,所述步骤S3中,将所述测试样本输入到破损屋面实例分割模型Posun_BEST.pt中进行计算,保存每一张遥感影像图片实例分割结果,其中,结果中包含目标对象类型、目标对象检测框、目标对象掩膜轮廓:目标对象类型包括标签为0的非破损屋面、标签为1的破损屋面;目标对象检测框用于将实例大致框定在图像中;目标对象掩膜轮廓为一组二进制掩码,用于标识与该实例相关的像素,掩码为1表示像素属于该实例,掩码为0表示不属于该实例。将每一个目标对象掩膜轮廓的关键点在图像上的坐标以及目标对象类型所对应的标签依次写入一个txt文档中,该txt文档包含一张遥感影像图片实例分割结果的一个或多个目标对象。

进一步地,所述步骤S4中从步骤S3的txt文档中提取标签为1的目标对象类型,并将目标对象类型对应的掩膜轮廓关键点坐标返回遥感影像图片,生成破损屋面掩膜范围图片,图片格式为png。破损屋面掩膜范围图片作为下一个步骤的超像素分割范围,破损屋面掩膜范围图片要求除范围内具有像素值,而范围外像素值为0;由于png图像支持透明像素通道,可以表示图像中的透明像素,所以需要定义图片格式为png。

进一步地,所述步骤S4中通过SLIC算法在掩膜范围内进行超像素分割,,该方法用于不规则的感兴趣区域内将像素聚类为超像素块,并且已在二维到四维进行实证。加载原始数据配置文件maskSLIC,设置分割的超像素块个数n_segments为100,设置边界平整度compactness为10,优化参数后提取分割得到的超像素块作为子块图像。将用于本发明中,能够自定义目标对象掩膜轮廓为超像素分割范围,实现在一张遥感影像图片上识别多个分散的破损屋面并同时在对应的掩膜范围内进行超像素分割的效果。具体运行过程如下:

S41、针对每张输入图片,在每个破损屋面目标对象的掩膜范围Mask区域内,有像素点i个,给定超像素数量N,使用欧氏距离变换方法来迭代地放置种子点,使得放置的种子点与边界和其他种子点的距离最大化,表明种子点的位置既要远离图像边界,也要远离其他已经放置的种子点,目的是确保种子点能够尽可能地覆盖整个物体或区域,并且相互之间不会过于密集。所述欧式距离变换用于将二值图像变换为灰度图像,以最常用的欧几里得距离作为距离度量,找到每一个前景像素点到最近的背景像素点之间的距离。B是背景(非掩膜)标签的集合,L是包含背景B与种子点P的集合,即L=B∪P,初始P={}。具体形式如下:

其中D(x)表示点与点之间的距离,(x,y)表示像素点i空间位置信息,n表示空间维度数量,得到最远距离p*:

P变成P∪{p*}对应于下一次迭代,迭代需要重复N次。

S42、将SLIC算法应用于仅带有距离特征的种子点P,SLIC方法中聚类使用的距离函数为d,具体形式如下:

其中,d=d

这一步是基于掩膜范围优化了种子点放置的位置,一方面避免超像素块会受到掩膜范围临界周围像素变化的影响;另一方面避免由于掩码与种子点的相对位置的偏差,使得掩码内没有种子点而导致超像素聚类失败。

上述SLIC算法原理是在图像上等距离放置集群中心网格,应用局部k-means聚类将每个像素分配到聚类中心,集群中心依据分配到的像素进行更新,不断重复更新过程,直到新种子点和原来的种子点之间的距离足够小时迭代终止,最后应用于掩膜范围内定义的像素。

进一步地,所述步骤S5中SVM分类器是一种基于有监督学习的优化算法,主要用于解决遥感影像图像识别领域中的数据二分类问题。吴张倩等人于2022年发表的文献“基于支持向量机的叶片图像分割”中提到SVM分类器是基于结构风险最小化原理,通过构造一个N维超平面作为决策曲面,使得正负样本之间的分类间隔被最大化,通过对正负样本集训练分类模型,再将测试数据进行分类,从而达到对图像进行分割的目的。本发明中所识别的建筑屋面包括了室内空间上承重和围护构件、室内空间的天井和院落,在计算破损率时只需要获取室内空间上空的承重和围护构件所对应的破损区域和非破损区域的数据,所以本发明所使用的SVM分类器需要实现对破损屋面进行破损区域、非破损区域以及天井和院落区域的三分类:通过多个SVM二分类器构建一对多的SVM多分类器,对于本发明中的3个类别构建3个SVM二分类器,每个分类器将其中一个类别作为正样本,将其他所有类别作为负样本,最终通过概率或距离来确定测试样本的类别,依据建筑屋面中破损区域、非破损区域天井和院落区域的图像特征(如材质、色彩等)进行图像分割,解决遥感影像中建筑屋面破损区域、非破损区域、天井和院落的三分类问题。SVM分类器制作并训练的具体步骤如下:

S51、获取传统村落单个建筑屋面遥感影像作为初始图像;

S52、利用SLIC算法对上述所有单个建筑屋面遥感影像进行超像素分割,得到不同的子块图像R={R

S53、提取训练集D中每个子块图像的颜色特征和HOG特征构成组合特征向量,然后将组合特征向量归一化处理后输入SVM分类器中。具体地,颜色特征是图像分割应用中最为广泛直观的一种视觉特征,它与图像中不同类型的目标和场景密切相关,可在不受图像自身属性的影响下区别具有不同语义信息的像素区域;HOG特征是在图像局部方格单元上描述目标的表象和形状,对图像几何的光学和形变都能保持很好的不变性,利用图像的颜色特征和HOG特征对分割区域进行特征描述,能够忽略建筑屋面的粗空间区域的微小偏差,提高识别效率;

具体地,所述颜色特征中常用的颜色空间主要有RGB、YCbCr、HSV,CIELab、CMYK、HIS等,每种颜色空间都有适合其自身特点的使用背景,而由于HSV颜色空间相较于其他类型颜色空间更加符合人眼视觉,对亮度更加敏感,有利于颜色特征的区分,所以本发明提取训练集D的HSV颜色空间的特征;经过归一化处理后的子块图像长轴为128像素,宽轴为100像素,所以提取以质心为中心128×100像素的区域用于计算HOG特征;所述HOG特征的细胞大小为8×8像素,梯度方向抽取12个方向块,共产生31680个HOG特征。为了防止较小的特征分量在计算中被忽略,对两类不同的特征量进行归一化处理,使得所有分量在特征描述时具有相同的权重。

S54、将组合特征向量输入SVM分类器中进行训练,得到优化参数后的SVM分类器。

进一步地,所述步骤S5中,将子块图像输入经过训练的SVM分类器,将图像名称与对应识别结果标签写入results.txt文档,得到每个子块图像的识别结果r。识别结果r仅仅是检测子块图像类别并赋予对应标签,此时的子块图像仍然是独立的一个图像文件,为了将这些单独的子块图像文件返回到原图像位置并清晰地展示破损区域在原图像的位置,需要将识别结果图示化为破损区域识别图像。具体步骤如下:将识别结果r中标签为0和2的组合特征向量转变成像素值为0的二值矩阵,将识别结果中标签为1的组合特征向量转变成像素值为1的二值矩阵,共得到W个二值矩阵重构成二值图像,叠加二值图像和所述测试样本中图像,得到破损区域识别图像。

进一步地,所述步骤S6中,由于所述破损区域识别图像为二值图和测试样本中图像的叠加,直接计算会出现重复叠加的像素点,所以破损率计算使用子块图像的像素点进行计算,破损率计算公式为:

其中pixels

进一步地,所述步骤S6中,各类型子块图像的像素点总和运算过程如下:根据识别结果r定义子块图像名称与对应类别标签;遍历测试集d中的每张子块图像,计算图像非透明像素点的个数并分别持续累加到对应的类别中,得到所需类型的像素点总和。由于破损率计算仅使用破损区域和非破损区域的像素点数据,在像素点累加时可以剔除标签为2的子块图像,提升遍历计算效率。

本发明相对于现有技术具有如下的优点及效果:

1、本发明方法提出了针对传统村落建筑屋面破损识别的方法。一方面,由于传统村落建筑以双坡屋面、瓦片材料为主,与平屋面、混凝土材料为主的现代建筑的图像特征不一致,本发明通过制作传统村落遥感影像数据集,结合YOLOv8模块训练并获得了针对传统村落建筑的破损屋面实例分割模型;另一方面,传统村落中的建筑类别还包含了其他非矩形的建筑形态,如围龙屋、圆围楼、铳斗四角楼等,本发明构建的实例分割分割模型,适用于不规则形态对象,可用于不同地区遥感影像图像上其他非矩形建筑形态的识别,增加了可识别屋面的建筑类型,扩大了屋面破损识别的地域范围。

2、本发明方法提出了在建筑屋面感兴趣区域内进行超像素分割的方法,通过优化传统的SLIC超像素分割方法,能够自定义超像素分割范围,在自定义范围内放置种子点并将像素点聚类,进而识别非矩形、不规则的屋面中的破损区域,打破了传统方法对于对象形态的局限,提出了适用于特殊形态范围内的超像素分割方法。

3、本发明能够捕捉传统村落建筑屋面的形制特征并对不同区域加以区分。由于传统村落建筑中的天井和院落区域作为建筑整体的组成部分但又不属于建筑物屋面,在实例分割时无法将天井和院落区域与建筑屋面区分,所以通过优化SVM二分类器为多分类器,提取建筑不同类别子块图像的颜色特征和HOG特征,识别非破损区域、破损区域以及天井和院落区域三种类别,并在破损率计算时剔除天井和院落区域,提高建筑屋面破损率计算的准确性。

4、本发明方法将建筑屋面破损程度量化为数值,通过叠加破损区域的像素点与非破损区域的像素点并使用公式计算单个建筑屋面的破损率,用本方法遍历整个传统村落的建筑,可以评估传统村落衰败程度,进一步强化了传统村落基础数据收集的定量研究。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是本发明中公开的一种传统村落建筑屋面破损识别及破损率计算方法的步骤流程图;

图2是本发明中使用的YOLOv8网络模型所使用的YOLACT算法流程图;

图3是本发明实施例1经过多次训练迭代优化得到的破损屋面实例分割模型结果图;

图4是本发明实施例1随机选取的一张实例分割结果图像M示意图;

图5是本发明实施例1提取的图像M中破损屋面的掩膜范围示意图;

图6是本发明实施例1在图像M中破损屋面掩膜范围内进行超像素分割的分割结果示意图;

图7是本发明实施例1图像M的破损区域二值图;

图8是本发明实施例1图像M破损区域识别图;

图9是本发明实施例1放大后的图像M破损区域识别图;

图10是本发明实施例2在图像M中破损屋面掩膜范围内进行超像素分割的分割结果示意图;

图11是本发明实施例2图像M破损区域识别图;

图12是本发明实施例1、实施例2以及人工识别破损区域的结果对比图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例1

本实施例公开了一种传统村落建筑屋面破损识别及破损率计算方法,破损屋面破损识别及破损率计算方法的步骤如下:

S1、获取传统村落遥感影像图片:以Google earth的卫星遥感影像为基本图源,下载传统村落遥感影像图片;将所述遥感影像图片的90%作为训练样本,剩下10%作为测试样本;

上述S1步骤中,首先下载Google earth公开的广东省范围内梅州、兴宁、河源、东莞、云浮、揭阳、深圳、惠州等地,选择≥18级原始影像数据,将原始影像格式转化为jpg;共获取100张传统村落遥感影像,其中90张作为训练样本,剩下10张作为测试样本。

S2、制作训练集构建破损屋面实例分割模型:使用上一个步骤的训练样本,标注包含传统村落建筑的遥感影像图片,形成训练集T,其中,所述训练集T包含2种目标对象类型,第1类目标对象标签为broken,对应破损状态的传统村落建筑屋面;第2类目标对象标签为non-broken,对应非破损状态的传统村落建筑屋面。使用训练集T在yolov8x-seg.pt预训练权重模型的基础上进行训练,获取破损屋面实例分割模型Posun_BEST.pt;

上述步骤S2中:

对于训练集T:将步骤S1中的训练样本放入Labelme图像标注工具中,使用多边形工具进行标注,标注的目标对象为三类,第1类为破损建筑,对应标签为broken;第2类为非破损建筑对应标签为non-broken;标注时需要注意多边形关键点放置的数量和位置,每个图像的关键点数量x={x

对于获取破损屋面实例分割模型Posun_BEST.pt:

(1)自定义配置文件:自定义YOLOv8x网络模型数据配置文件posun.yaml,类别数nc为2、分割类别名称names为broken、non-broken;

(2)调整参数优化模型与模型获取:将设置好的posun.yaml文件放入配置好的计算机中;加载yolov8x-seg.pt预训练权重模型,获得更好的网络模型初始化参数;加载训练集T。训练迭代论述调整为300世代并开始训练,重复训练过程使YOLOv8逐渐收敛;实时观察训练结果数据,训练结束后保存最优的模型Posun_BEST.pt,训练结果如图3所示。

S3、将待分割的测试样本输入破损屋面实例分割模型中,得到实例分割结果:将步骤S1中测试样本中的图片,输入破损屋面实例分割模型Posun_BEST.pt中进行分割,通过计算得到每一张图片中的破损屋面和非破损屋面实例分割结果;

上述步骤S3中,将步骤S1中的测试样本中的图片输入至模型Posun_BEST.pt进行计算;保存每一张遥感影像图像实例分割结果,其中,结果中包含目标对象类型、目标对象检测框、目标对象掩膜轮廓,将每一个目标对象掩膜轮廓的关键点在图像上的坐标、目标对象类型所对应的标签依次写入一个txt文档中,一个txt文档包含一张遥感影像图片实例分割结果的一个或多个目标对象。本次实施例随机选取1张实例分割结果图像M进行后续步骤的操作,如图4;图像M中共分割出2个对象,一个为non-broken目标对象类型,另一个为broken目标对象类型,将图像M掩膜轮廓的关键点在图像上的坐标、目标对象类型所对应的标签写入文档M_location.txt。

S4、定义实例分割结果中破损屋面的掩膜范围进行超像素分割,提取单个破损屋面的超像素子块图像:使用上一个步骤的实例分割结果,逐个提取每一张图片中破损屋面的掩膜范围Mask,通过SLIC算法在掩膜范围内进行超像素分割,得到聚类后的超像素块,提取超像素块作为子块图像;

上述步骤S4中,使用步骤S3所生成的M_location.txt文档,将broken目标对象类型掩膜轮廓的关键点在图像M上的坐标,返回图像中并将轮廓内的像素值转变成1,轮廓外的像素值转变为0,得到实例分割结果图像M中破损屋面的掩膜范围,如图5,在掩膜范围内进行超像素分割;所使用的超像素分割方法由网络数据配置文件maskSLIC获得,设置分割的子块个数n_segments为100,设置边界平整度compactness为10,得到超像素分割结果,如图6,图像M掩膜范围内共聚类得到91个超像素块;然后将91个超像素块逐个提取出来作为子块图像,构成测试集d。

S5、将子块图像输入经过训练的SVM分类器:使用上一步的子块图像,输入经过训练的SVM分类器中,其中,所述分类器包括3种目标识别类别,第1类为非破损区域的子块图像,标签为0;第2类为破损区域的子块图像,标签为1;第3类为天井和院落区域的子块图像,标签为2;使用SVM分类器进行识别,得到子块图像破损区域、非破损区域、天井和院落区域3种类型的分类结果;

上述步骤S5中,SVM分类器制作流程如下:

S51、获取传统村落单个建筑屋面遥感影像作为初始图像;本次实施例共获取20个传统村落建筑屋面遥感影像。

S52、利用SLIC算法对上述所有单个建筑屋面遥感影像进行超像素分割,得到共756张子块图像R={R

S53、提取训练集D中每个子块图像的颜色特征和HOG特征构成组合特征向量,然后将组合特征向量归一化处理后输入SVM分类器中。所述颜色特征为HSV颜色空间特征;然后提取以质心为中心128×100像素的区域用于计算HOG特征,细胞大小设置为8×8像素,梯度方向抽取12个方向块,一个子块图像共产生31680个HOG特征。为了防止较小的特征分量在计算中被忽略,对两类不同的特征量进行归一化处理,使得所有分量在特征描述时具有相同的权重。

S54、将组合特征向量输入SVM分类器中进行训练,得到优化参数后的SVM分类器。

输入测试集d中91个子块图像到经过训练的SVM分类器中,判断子块图像类别,共检测出6块破损区域子块图像,即标签为1的子块图像;21个天井和院落区域子块图像,即标签为2的子块图像;64块非破损区域子块图像,即标签为0的子块图像;将识别结果中标签为0和2的组合特征向量转变成像素值为0的二值矩阵,将识别结果中标签为1的组合特征向量转变成像素值为1的二值矩阵,共得到W个二值矩阵重构成二值图像,如图7;叠加二值图像和步骤S1中对应的测试样本图像,得到破损区域识别图,如图8;将识别结果放大查看,得到图9。

S6、破损率计算:使用上一步的分类结果,计算单个破损屋面破损区域子块图像的像素点比上破损区域和非破损区域子块图像的像素点之和的值,该值即为单个建筑屋面破损率计算结果。

上述步骤S6中,

破损率计算公式为:

其中pixels

各类型子块图像的像素点总和运算程序如下:定义子块图像名称与对应类别标签,遍历测试集d中的每张子块图像,计算图像非透明像素点的个数并分别持续累加到对应的类别中,得到每种类型的像素点总和。实施例1计算结果显示,6张破损区域子块图像像素点为2004个,64张非破损区域子块图像像素点为23614个,图像M中破损屋面的破损率为7.82%。

实施例2

本实施例公开了一种传统村落建筑屋面破损识别及破损率计算方法,破损屋面破损识别及破损率计算方法的步骤如下:

S1、该步骤参照实施例1中步骤S1;

S2、该步骤参照实施例1中步骤S2;

S3、该步骤参照实施例1中步骤S3;

S4、定义实例分割结果中破损屋面的掩膜范围进行超像素分割,提取单个破损屋面的超像素子块图像:使用上一个步骤的实例分割结果,逐个提取每一张图片中破损屋面的掩膜范围Mask,通过SLIC算法在掩膜范围内进行超像素分割,得到聚类后的超像素块,提取超像素块作为子块图像;

上述步骤S4中,使用实施例1步骤S4的实例分割结果图像M中破损屋面的掩膜范围,如图5,在掩膜范围内进行超像素分割,设置分割的子块个数n_segments为60,设置边界平整度compactness为10,得到超像素分割结果,如图10,图像M掩膜范围内共聚类得到58个超像素块;然后将58个超像素块逐个提取出来作为子块图像,构成测试集f。

S5、该步骤参照实施例1中步骤S5,将测试集f中的子块图像,输入经过训练的SVM分类器中,共检测出4块破损区域子块图像,即标签为1的子块图像;10个天井和院落区域子块图像,即标签为2的子块图像;44块非破损区域子块图像,即标签为0的子块图像;将识别结果中标签为0和2的组合特征向量转变成像素值为0的二值矩阵,将识别结果中标签为1的组合特征向量转变成像素值为1的二值矩阵,共得到W个二值矩阵重构成二值图像;叠加二值图像和步骤S1中对应的测试样本图像,得到破损区域识别图,如图11。

S6、该步骤参照实施例1中步骤S6,得到实施例2计算结果。结果显示,4张破损区域子块图像像素点为2080个,44张非破损区域子块图像像素点为25652个,图像M中破损屋面的破损率为7.50%。

本实施例与所提供实施例1的方法大致相同,其主要区别在于将原本超像素分割方法中子块个数n_segments由100设置为60,减少了超像素集聚为子块图像的个数。将实施例1和实施例2的计算结果列出如表1所示,针对图像M的操作结果,实施例1计算的破损率为7.82%,与人工计算破损率(8.17%)差值的绝对值为0.35;实施例1计算的破损率为7.50%,与人工计算破损率(8.17%)差值的绝对值为0.37,从数据来看,实施例1的操作更优于实施例2。

表1.不同实施例的数据对比表

超像素子块个数设置的数量会影响图像的分割精度和计算效率,较少的超像素数量会导致分割结果过于粗糙,无法准确表示图像中的细节信息;而较多的超像素数量会增加计算的复杂度,使得算法的运行速度变慢。由于实施例2减少了超像素子块个数,虽然破损率计算结果与人工计算的破损率结果差值比较小,但是通过对比实施例1和人工标注的图像M的破损区域(图12),发现实施例2在实际的识别中错误的判断了建筑屋面破损区域的位置,与真实的建筑屋面破损区域相差甚远。实施例2由于设置的超像素子块数量过少,导致生成的子块图案边界变得模糊,部分子块图像既包含的破损区域的像素点,又包含了非破损区域的像素点,在程序进行识别时会出现错误的判断。

上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

相关技术
  • 一种电连接器的防误插组件
  • 一种水箱用防脱落电伴热带
  • 一种防震动脱落的电连接器
  • 一种防震动脱落的电连接器
技术分类

06120116524496