System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及图像处理领域,具体涉及基于语义分割的大规模平面场景的裂缝识别与展示的方法。
技术介绍
1、随着经济社会的高度发展,基础设施的保有量逐步增加,针对基础设施的维护相关的内容成为一大焦点,目前针对裂缝的识别与标记往往采用人工的方法,导致效率低下,无法应对不断增长的基础设施数量所带来的维护需求激增,同时随着无人机、深度学习技术的发展,大规模场景的扫描和高精度裂缝识别成为可能,因此急需一种自动化的裂缝识别和展示的算法。
技术实现思路
1、本专利技术在于提供一种基于语义分割的大规模平面场景的裂缝识别与展示的方法,其中,大规模平面场景指无法用相机一次性拍摄时裂缝宽度小于一个像素的场景,以解决大规模平面场景的裂缝识别和展示的问题。
2、在本专利技术的一个方面,本专利技术提出了基于语义分割的大规模平面场景的裂缝识别方法。根据本专利技术的实施例,包括以下步骤:
3、步骤1、通过无人机搭载彩色相机获取场景的彩色图片序列和坐标序列;
4、步骤2、利用语义分割算法识别彩色图片序列的裂缝像素,并利用彩色图片序列和坐标序列进行下采样;
5、步骤3、利用裂缝像素的空间位置计算联通的裂缝像素,并构建对应的裂缝像素集合;
6、步骤4、利用裂缝像素集合计算视框序列和视框对应的空间分布属性;
7、步骤5、利用视框序列和空间分布属性进行视框的进一步合并,得到裂缝展示图片序列。
8、另外,根据本专利技术上述实施例的基于语义分割的
9、在本专利技术的一些实施例中,所述步骤1中,场景的彩色图片序列和坐标序列获取方法包括以下步骤:
10、步骤1.1、获得相机收集的图片,用无人机绕飞拍摄场景,保持无人机与地面的高度不变,摄像机的正面朝下,覆盖范围为hc×wc,对应的彩色图像为一个hp×wp×3的张量p,其中hc、wc分别表示摄像机覆盖的实际场景的高度和宽度,hp、wp分别表示通过摄像机得到图片的高度和宽度,其中3表示图片的通道数为3;
11、步骤1.2、获取无人机拍摄时的二维坐标c,c包含两个值xc、yc,无人机在移动时与地面的距离保持不变,无人机初始的位置设置为原点,其中,xc、yc分别表示拍摄位置距离原点的横向距离和纵向距离;
12、步骤1.3、根据时间顺序,利用在不同时刻收集的图片p和坐标c构成彩色图片序列lp={p1,p2,…,pn}和坐标序列lc={c1,c2,…cn},n=1,2,3…,其中n表示最终拍摄的图片的数量,pn表示收集的第n张图片,cn表示收集的第n个坐标,当无人机在水平方向移动wp或者在竖直方向移动hp时,拍摄一张图片并记录坐标,彩色图片需要能够覆盖场景的全部内容。
13、在本专利技术的一些实施例中,所述步骤2中,利用语义分割算法识别裂缝像素并进行下采样包括以下步骤:
14、步骤2.1、将lp={p1,p2,…,pn}输入语义分割网络得到每张图片的语义分割结果ls={s1,s2,…si,…,sn},n=1,2,3…,其中si是一张二值图片,i表示语义分割结果的索引,其大小和lp中的图片一样,为hp×wp,但是通道数为1,为一个hp×wp×1的张量,si中的每个像素的值为0或1,0表示该像素不属于裂缝,1表示该像素属于裂缝;
15、步骤2.2、将lp和ls按照其对应的坐标c的位置拼接得到完整场景的原始图片pt和整体分割结果st;
16、步骤2.3、将裂缝整体识别结果st进行等比例缩放得到s't,如果缩放后的像素点对应原来的整体分割结果的s×s的区域中包含裂缝像素,则该像素的值为1,否则为0,其中s表示下采样的倍数。
17、在本专利技术的一些实施例中,所述步骤3包括以下步骤:
18、步骤3.1、初始化裂缝实例集合cracks为空集合,裂缝像素访问列表visited=[v1,v2,…,vk]中所有元素为0,待探索队列search为空列表,当前裂缝像素编号为ic为0,邻居裂缝像素集合ns为空集合,其中vk表示第k个裂缝像素是否被访问,crack的元素裂缝实例,为s't中裂缝像素的集合,k是s't中裂缝像素的个数,visited中的元素与s't中裂缝像素一一对应,待探索队列中的元素为s't中的裂缝像素;
19、步骤3.2、获取当前裂缝像素编号ic在visited列表对应的项vic的值,如果为1,则执行步骤3.4,如果是0,就将当前裂缝像素编号在s't中ic对应的像素放到search中,往cracks中放入一个空集合crackscur,往crackscur中添加当前裂缝像素编号ic对应的s't中的裂缝像素;
20、步骤3.3、获取search中的第一个元素,将对应的s't中周围8个方向的像素,分别是上、下、左、右、右上、右下、左上、左下,构成集合nr={n1,n2,…,n8},n1,n2,…,n8分别为s't中上、下、左、右、右上、右下、左上、左下的8个像素;遍历nr中的元素,如果发现其像素值为1,就将其添加到ns中,然后,往crackscur中添加ns中的像素,将visited列表中当前裂缝像素编号ic对应的项vic设置为1,删除search的第一个元素,并里面添加ns中的像素,其中ns表示当前像素周围的裂缝像素;如果search为空,执行步骤3.4,否则执行步骤3.3;
21、步骤3.4、将当前裂缝像素编号ic值加1,如果ic值大于k,执行步骤4,否则执行步骤3.2。
22、在本专利技术的一些实施例中,所述步骤4包括以下步骤:
23、步骤4.1、初始化视框集合boxes为空集合,其中的元素视框为八元组(xmin,xmax,ymin,ymax,lu,ld,ru,rd),其中xmin表示视框覆盖范围的横向坐标最小值,xmax表示视框覆盖范围的横向坐标最大值,ymin指的是视框覆盖范围的纵向坐标最小值,ymax指的是视框覆盖范围的纵向坐标最大值,lu表示视框中裂缝像素在左上方向的分布系数,ld表示视框中裂缝像素在左下方向的分布系数,ru表示视框中裂缝像素在右上方向的分布系数,rd表示视框中裂缝像素在右下方向的分布系数;
24、步骤4.2、构建八元组box,遍历cracks中的每个元素crack,计算crack中像素位置的横纵坐标最大值和最小值,并将其填充到box的前四项中;
25、步骤4.3、计算四个方向的分布系数,初始化countlu、countld、countrd、countru为0,遍历crack中的每个像素pixel,设pixel的横纵坐标分别为x、y,如果且countlu加一;如果且countrd加一;如果且countru加一;如果且countld加一,将box的后四个项赋值为将box放入boxes中。其中countlu、countld、countrd、countru,分别表示左上、左下、右下、右上拥有的裂缝像素点个数,其本文档来自技高网...
【技术保护点】
1.基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤1中,场景的彩色图片序列和坐标序列获取方法包括以下步骤:
3.根据权利要求2所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤2中,利用语义分割算法识别裂缝像素并进行下采样包括以下步骤:
4.根据权利要求3所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤3包括以下步骤:
5.根据权利要求4所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤4包括以下步骤:
6.根据权利要求5所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤5包括以下步骤:
7.基于语义分割的大规模平面场景的裂缝展示方法,其特征在于:利用权利要求1-6任一项所述的基于语义分割的大规模平面场景的裂缝识别方法得到的裂缝展示图片序列进行交互式展示。
8.根据权利要求7所述的基于语义分割的大规模平面
...【技术特征摘要】
1.基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤1中,场景的彩色图片序列和坐标序列获取方法包括以下步骤:
3.根据权利要求2所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤2中,利用语义分割算法识别裂缝像素并进行下采样包括以下步骤:
4.根据权利要求3所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤3包括以下步骤:
5.根据权利要求4所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步骤4包括以下步骤:
6.根据权利要求5所述的基于语义分割的大规模平面场景的裂缝识别方法,其特征在于,所述步...
【专利技术属性】
技术研发人员:曹晨曦,任泰安,马哲超,钟如昕,田杰,王彬,李伟,
申请(专利权)人:合肥工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。