基于基站目标分割构建稠密点云的方法及装置
文献发布时间:2023-06-19 11:52:33
【技术领域】
本发明涉及三维重建技术领域,尤其涉及基于基站目标分割构建稠密点云的方法及装置。
【背景技术】
现有的三维建模外点去除方法,一般将已经构建的三维重建点与对相应图像进行对比,删除落在背景区域的三维重建点,该方法适用范围较小,对于背景信息较为复杂的图像建模后外点剔除的效果并不是很好,且工程量较大,多为手动方法,对于数据量较大的工程适用率较低。
而且,通信基站遍布全国各个城市及地区,由于基站所在场景复杂多样,有房屋较多的场景,有植被较多的场景,有汽车较多的场景。背景较为复杂的图像建模后,需要手动剔除三维重建后的稠密点云中基站以外的的场景,人工剔除外点精确度低,且时间成本较高。
【发明内容】
有鉴于此,本发明实施例提供了基于基站目标分割构建稠密点云的方法及装置,用以解决现有技术中人工剔除外点精确度低的问题。
为了实现上述目的,第一方面,本发明提供了一种基于基站目标分割构建稠密点云的方法,所述方法包括:
获取无人机巡检时拍摄的基站的原始图像集;
将所述原始图像集中的原始图像依次输入预先训练好的基站识别模型中,其中,所述基站识别模型对所述原始图像中的基站进行识别并进行掩码处理,得到掩码图像集;
迭代运行Grabcut算法对所述掩码图像集进行分割,得到分割出的基站图像集;
基于所述基站图像集及多视角密集重建算法构建所述基站的稠密三维点云。
结合第一方面,在一种可行的实施方式中,在将所述原始图像集中的原始图像依次输入预先训练好的基站识别模型中之前,所述方法还包括:
获取包含基站图像的多个训练样本,每个所述训练样本中的基站利用预设的标签进行标注;
利用所述多个训练样本训练初始的基站识别模型,所述基站识别模型包括卷积神经网络,得到所述卷积神经网络的前向输出;
根据所述前向输出和所述训练样本的标注结果构建损失函数,并采用基于批量梯度下降算法更新迭代所述卷积神经网络的权值和偏置,使得所述损失函数进行优化使其最小化,得到训练好的所述基站识别模型。
结合第一方面,在一种可行的实施方式中,所述基站识别模型为深度卷积神经网络模型,所述模型包括深度卷积层及逐点卷积层。
结合第一方面,在一种可行的实施方式中,所述迭代运行Grabcut算法对所述掩码图像集进行分割,得到分割出的基站图像集,包括:
构建前景高斯混合模型和背景高斯混合模型;
对所述前景高斯混合模型和所述背景高斯混合模型进行迭代优化,确定所述掩码图像中的像素为背景像素或前景像素,其中,所述前景像素为进行掩码处理的像素。
结合第一方面,在一种可行的实施方式中,所述基于所述基站图像集及多视角密集重建算法构建所述基站的稠密三维点云,包括:
获取每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,并运用SFM算法构建稀疏的三维点云;
基于领域的块匹配算法,匹配得到基站图像中的稠密特征点;
根据所述每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,对所述稠密特征点进行有效性检验;
将有效的稠密特征点映射到所述三维点云中的对应位置,得到稠密三维点云。
为了实现上述目的,第二方面,本发明提供了一种基于基站目标分割构建稠密点云的装置,所述装置包括:
获取单元,用于获取无人机巡检时拍摄的基站的原始图像集;
输入单元,用于将所述原始图像集中的原始图像依次输入预先训练好的基站识别模型中,其中,所述基站识别模型对所述原始图像中的基站进行识别并进行掩码处理,得到掩码图像集;
分割单元,用于迭代运行Grabcut算法对所述掩码图像集进行分割,得到分割出的基站图像集;
构建单元,用于基于所述基站图像集及多视角密集重建算法构建所述基站的稠密三维点云。
结合第二方面,在一种可行的实施方式中,所述分割单元包括:
创建子单元,用于构建前景高斯混合模型和背景高斯混合模型;
确定子单元,用于对所述前景高斯混合模型和所述背景高斯混合模型进行迭代优化,确定所述掩码图像中的像素为背景像素或前景像素,其中,所述前景像素为进行掩码处理的像素。
结合第二方面,在一种可行的实施方式中,所述构建单元包括:
构建子单元,用于获取每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,并运用SFM算法构建稀疏的三维点云;
匹配子单元,用于基于领域的块匹配算法,匹配得到基站图像中的稠密特征点;
检验子单元,用于根据所述每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,对所述稠密特征点进行有效性检验;
映射子单元,用于将有效的稠密特征点映射到所述三维点云中的对应位置,得到稠密三维点云。
为了实现上述目的,第三方面,本发明提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述的基于基站目标分割构建稠密点云的方法。
为了实现上述目的,第四方面,本发明提供了一种计算机设备,包括:至少一个处理器;以及与所述处理器通信连接的至少一个存储器,其中,所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述的基于基站目标分割构建稠密点云的方法。
在本方案中,运用基站识别模型识别出原始图像中基站部分,将基站部分进行掩码处理,再运用前景背景图像分割,剔除基站以外的多余场景,最后得到只含基站部分的掩码图像集,基于掩码图像集进行三维建模,得到的稠密点云不含目标检测物基站以外的点,点云模型目标清晰,便于后续的分析,避免了大量的非自动化外点剔除的工作,改进了人工剔除外点精确度较低、时间成本较高的问题。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例提供的一种基于基站目标分割构建稠密点云的方法的流程示意图;
图2是本发明实施例提供的一种基于基站目标分割构建稠密点云的方法的另一流程示意图;
图3是本发明实施例提供的一种基于基站目标分割构建稠密点云的装置的示意图;
图4是本发明实施例提供的一种可选的计算机设备的示意图。
【具体实施方式】
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述绑定对象的绑定关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后绑定对象是一种“或”的关系。
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述终端,但这些终端不应限于这些术语。这些术语仅用来将终端彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一终端也可以被称为第二终端,类似地,第二终端也可以被称为第一终端。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
图1是根据本发明实施例提供的一种基于基站目标分割构建稠密点云的方法,如图1所示,方法包括:
步骤S01,获取无人机巡检时拍摄的基站的原始图像集;
步骤S02,将原始图像集中的原始图像依次输入预先训练好的基站识别模型中,其中,基站识别模型对原始图像中的基站进行识别并进行掩码处理,得到掩码图像集;
步骤S03,迭代运行Grabcut算法对掩码图像集进行分割,得到分割出的基站图像集;
步骤S04,基于基站图像集及多视角密集重建算法构建基站的稠密三维点云。
在本方案中,运用基站识别模型识别出原始图像中基站部分,将基站部分进行掩码处理,再运用前景背景图像分割,剔除基站以外的多余场景,最后得到只含基站部分的掩码图像集,基于掩码图像集进行三维建模,得到的稠密点云不含目标检测物基站以外的点,点云模型目标清晰,便于后续的分析,避免了大量的非自动化外点剔除的工作,改进了人工剔除外点精确度较低、时间成本较高的问题。
下面对本方案提供的基于基站目标分割构建稠密点云的方法进行详细介绍。
步骤S01,获取无人机巡检时拍摄的基站的原始图像集。
可以理解地,基站为公用移动通信基站,是移动设备接入互联网的接口设备,也是无线电台站的一种形式,是指在一定的无线电覆盖区中,通过移动通信交换中心,与移动电话终端之间进行信息传递的无线电收发信电台。具体地,采用无人机在巡检基站时,通过摄像头拍摄包含基站的图像或视频。示例性地,无人机拍摄的图像或视频为高清图像或高清视频。
在本实施方式中,如果无人机拍摄的基站图像为视频时,则需要对视频进行抽帧处理,并用抽帧图像作为原始图像;如果无人机拍摄的基站图像为图片时,则可以直接作为原始图像进行使用。无人机的拍摄方式例如可以是环绕基站进行拍摄。原始图像集中的原始图像是根据拍摄时间依次存储的。
可以理解地,基站天线的场景复杂多变,有房屋较多的场景,也有交通较多的场景,场景像素与基站像素的连通性较高,因此,在方案中,采用深度神经网络训练处理的基站识别模型来对原始图像集中的图像进行目标物(基站)识别。
如图2所示,在步骤S02之前,方法还包括:
步骤S011,获取包含基站图像的多个训练样本,每个训练样本中的基站利用预设的标签进行标注;
步骤S012,利用多个训练样本训练初始的基站识别模型,基站识别模型包括卷积神经网络,得到卷积神经网络的前向输出;
步骤S013,根据前向输出和训练样本的标注结果构建损失函数,并采用基于批量梯度下降算法更新迭代卷积神经网络的权值和偏置,使得损失函数进行优化使其最小化,得到训练好的基站识别模型。
具体地,基站识别模型采用Mobilenet-ssd(深度卷积神经网络)模型。Mobilenet-ssd模型通过深度可分离的卷积来构建轻量级的深层神经网络,模型的核心就是将标准卷积操作分解成两个卷积层:一个深度卷积、一个逐点卷积,深度卷积将每个卷积核应用到每个通道,1*1点卷积用来组合通道卷积的输出。另外,引入两个简单的全局参数,一个宽度乘数和一个分辨率乘数,以此降低模型的厚度,在保证准确度的前提下大大减少计算时间和参数数量,对于全卷积网络的提升效果比较明显。
利用训练集训练基站识别模型,使得基站识别模型能够识别出无人机拍摄的原始图像中的基站,训练集中的训练样本是包括基站的训练样本图像,示例性地,训练样本的数量例如可以是1000张,从而保证基站识别模型的识别精度。需要说明的是,训练样本中基站的形状、拍摄的角度、拍摄的背景、拍摄的环境越多样化,最终训练得到的基站识别模型在识别原始图像中的基站时鲁棒性越好。
训练过程具体地包括:
利用预设的标注工具对无人机拍摄的基站的原始图像进行标记,得到xml文件。具体地,可以利用Labellmg标注工具对原始图像进行手工标记。可以理解地,Labellmg是一个可视化的图像标定工具,在目标检测中,原始图像的标注是很重要的,标注的作用是在原始图像中标注目标物体位置并对每张图像生成对应的xml文件来表示目标标准框的位置。
在本实施例中,需要对每一张训练样本图像中的基站用一个矩形框框选起来,并给选中的基站添加标签,标签用于表示这个选中的部分为基站。
将标记好的原始图像的生成的xml文件转换为csv文件,再将csv文件转换为tfrecord格式,保存所需要的数据在data文件夹下;
将训练集与测试集输入到Mobilenet-ssd基站识别模型中,初始学习率设置为0.0005,最大迭代步数保存为120000次,每迭代1000次保存一次权重,当MAP(Mean AveragePrecision,均值平均精度)和损失函数值达到理想效果时保存训练模型,得到基站识别模型。
其中,Mobilenet神经网络提取原始图像中的基站特征,Mobilenet神经网络是一款高效的视觉网络模型,能够充分利用移动设备的有效资源,提取原始图像中有用的特征,将多个特征层送入ssd(single shot multibox detector,单次多盒检测器)模型中进行基站识别。采用Mobilenet-ssd基站识别模型,提高图像数据的处理效率。基站识别模型的输出是矩形框,以及每个矩形框中包含基站的可能性(检测置信度),即矩形框内的区域即为基站区域。
具体地,训练集中的训练样本图像的数量与测试集中的测试样本图像的数量比例为8:2,在其他实施方式中,也可以是7:3等。训练集用于对基站识别模型进行训练,使得基站识别模型能够识别出原始图像中的基站,测试集用于测试经过训练的基站识别模型的识别准确度是否达到目标阈值。例如识别准确度是否达到90%。
步骤S02,将原始图像集中的原始图像依次输入预先训练好的基站识别模型中,其中,基站识别模型对原始图像中的基站进行识别并进行掩码处理,得到掩码图像集。
可以理解地,训练好的基站识别模型能够快速有效地识别出原始图像中的基站部分,并用矩形框标注处理。然后将识别出的基站部分进行像素级掩码处理。利用先识别后分割的方法,运用深度神经网络模型识别出无人机拍摄场景中的基站部分,对无人机拍摄场景没有太多约束,只需要无人机环绕基站360度拍摄即可实现对该场景下基站的识别,有利于前景与背景的分割。
具体地,基站识别模型对原始图像中的基站进行识别并进行掩码处理,得到掩码图像集,包括:
利用深度卷积神经网络提取原始图像中的基站特征图;
根据基站特征图将基站区域像素置为1,并将背景区域像素置为0,得到掩码图像。
在本实施例中,采用二值掩码图像,在掩码图像中属于基站部分的像素被编码为1,使得基站部分被增强。属于背景部分的像素被编码为0,使得背景部分被屏蔽剔除,使得后续的前景与背景分割时,得到只包含基站部分的图像集。
步骤S03,迭代运行Grabcut算法对掩码图像集进行分割,得到分割出的基站图像集。
Grabcut是采用graph cut图分割和最大流技术的一种交互式图像分割技术。Grabcut图像分割算法通过标记前景像素、相似色彩聚类、边界像素惩罚和迭代寻找最优解。对前景背景分别进行高斯建模,通过掩码来判断该像素属于前景像素还是背景像素,再判断它属于前景高斯混合模型或者背景高斯混合模型中的哪个高斯分量,根据得到的前景/背景像素点重新建模,多次迭代得到最佳分割图。
Grabcut是以BGR三通道衡量两像素的相似性,采用欧氏距离计算两像素之间的差异。最大流算法用于处理如何去切割权值图使得切过之后得到的能量E(L)最小。
步骤S03,具体包括:
步骤S031,构建前景高斯混合模型和背景高斯混合模型;
具体地,对掩码图像集,运用Grabcut的迭代算法进行图像分割,将图像分为前景区域和背景区域,利用聚类算法将属于前景与背景的像素聚类为k类,即高斯混合模型的个数,利用各自的样本估计出高斯混合模型的参数。
在本实施例中,前景和背景分别有5个高斯混合模型。高斯混合模型用于描述前景和背景的像素分布情况。若前景只有1个高斯模型,某个前景像素点lp在计算归属于前景的概率时,只有一种样本库模型,计算的归属概率有可能会很低,最后在最大流分割时,会被误判到背景里,所以有多个模型计算式,选取概率最大的一个,高斯模型越多,前景像素集的种类越多,越能够包容范围的像素点,过多的话计算量也会很大。
每个高斯混合模型的计算公式如下:
结合前景高斯混合模型和背景高斯混合模型,通过以下公式计算待分割图像的Gibbs能量函数:
E(α,k,θ,z)=U(α,k,θ,z)+V(α,z),其中,U为区域项,V为边界项。区域项反映的是像素样本集合的整体特性,边界项反映的是两个像素之间的差异。若两个邻域像素差别越小,则其属于同一目标或同一背景可能性越大;若两个邻域像素差别越大,则被分开的可能性越大。故像素差别越大,其能量越小。
步骤S032,对前景高斯混合模型和背景高斯混合模型进行迭代优化,确定掩码图像中的像素为背景像素或前景像素,其中,前景像素为进行掩码处理的像素。
迭代优化时,迭代算法只是作用于可能前景以及可能背景的像素区域,带入到初始化的前景高斯混合模型以及背景高斯混合模型中,选择概率最大的高斯混合模型,假如像素x是目标像素,那么把像素x的BGR值带入到每个高斯混合模型的分量中,概率最大的就是那个最有可能生成像素x的高斯分量。
迭代算法还用于重新分配未知的像素点,这样每个模型的像素集合也得到了更新,高斯模型的参数也就有了更新,结合更新好的高斯混合模型构建分割图,运用最大流算法,对未知区域重新分配,每一次迭代都会交互地优化高斯混合模型和分割结果,多次迭代达到能量最小时迭代收敛,得到分割出的基站天线部分图像集。
步骤S04,基于基站图像集及多视角密集重建算法构建基站的稠密三维点云。
具体地,基于各种收集到的无序图片进行三维重建,运用SFM(Structure FromMotion,稀疏点云重建)算法构建稀疏点云,完成基于SFM的稀疏点云的重建和相机内外参数的估计,由于SFM做三维重建的点是特征匹配的点,这些点本身就不密集,因此需要对照片中的每个像素点进行匹配,重建每个像素点的三维坐标才能使得到的三维点云效果接近所展示的图片。
步骤S04,具体包括:
步骤S041,基于基站图像集并运用SFM算法构建稀疏的三维点云,得到每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵;
步骤S042,基于领域的块匹配算法,匹配得到基站图像中的稠密特征点;
步骤S043,根据每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,对稠密特征点进行有效性检验;
步骤S044,将有效的稠密特征点映射到三维点云中的对应位置,得到稠密三维点云。
可以理解地,SFM重建的成果是稀疏三维点云,为了获得更好的算法结果,引入MVS(Multi View System,多视图密集重建)算法,寻找空间中图像一致的点,即寻找两张图片上的同一点,以此来构建稠密的三维点云。
在本实施例中,先对无人机拍摄的原始图像中的目标物(基站)进行前景分割,避免了前景背景相似度较高的情况下分割效果差的问题,基于分割后得到基站图像(掩码图像)集运用MVS构建基站的三维稠密点云,便于分析出基站天线的角度偏转情况,不需要对重建后的三维稠密点云进行目标物(基站)以外的点进行剔除工作。
如图3所示,本发明实施例提供一种基于基站目标分割构建稠密点云的装置,装置包括获取单元10、输入单元20、分割单元30、构建单元40。
获取单元10,用于获取无人机巡检时拍摄的基站的原始图像集;
输入单元20,用于将原始图像集中的原始图像依次输入预先训练好的基站识别模型中,其中,基站识别模型对原始图像中的基站进行识别并进行掩码处理,得到掩码图像集;
分割单元30,用于迭代运行Grabcut算法对掩码图像集进行分割,得到分割出的基站图像集;
构建单元40,用于基于基站图像集及多视角密集重建算法构建基站的稠密三维点云。
在本方案中,运用基站识别模型识别出原始图像中基站部分,将基站部分进行掩码处理,再运用前景背景图像分割,剔除基站以外的多余场景,最后得到只含基站部分的掩码图像集,基于掩码图像集进行三维建模,得到的稠密点云不含目标检测物基站以外的点,点云模型目标清晰,便于后续的分析,避免了大量的非自动化外点剔除的工作,改进了人工剔除外点精确度较低、时间成本较高的问题。
可以理解地,基站为公用移动通信基站,是移动设备接入互联网的接口设备,也是无线电台站的一种形式,是指在一定的无线电覆盖区中,通过移动通信交换中心,与移动电话终端之间进行信息传递的无线电收发信电台。具体地,采用无人机在巡检基站时,通过摄像头拍摄包含基站的图像或视频。示例性地,无人机拍摄的图像或视频为高清图像或高清视频。
在本实施方式中,如果无人机拍摄的基站图像为视频时,则需要对视频进行抽帧处理,并用抽帧图像作为原始图像;如果无人机拍摄的基站图像为图片时,则可以直接作为原始图像进行使用。无人机的拍摄方式例如可以是环绕基站进行拍摄。原始图像集中的原始图像是根据拍摄时间依次存储的。
可以理解地,基站天线的场景复杂多变,有房屋较多的场景,也有交通较多的场景,场景像素与基站像素的连通性较高,因此,在方案中,采用深度神经网络训练处理的基站识别模型来对原始图像集中的图像进行目标物(基站)识别。
进一步地,装置还包括:
获取模块,用于获取包含基站图像的多个训练样本,每个训练样本中的基站利用预设的标签进行标注;
训练模块,用于利用多个训练样本训练初始的基站识别模型,基站识别模型包括卷积神经网络,得到卷积神经网络的前向输出;
处理模块,用于根据前向输出和训练样本的标注结果构建损失函数,并采用基于批量梯度下降算法更新迭代卷积神经网络的权值和偏置,使得损失函数进行优化使其最小化,得到训练好的基站识别模型。
具体地,基站识别模型采用Mobilenet-ssd模型。Mobilenet-ssd模型通过深度可分离的卷积来构建轻量级的深层神经网络,模型的核心就是将标准卷积操作分解成两个卷积层:一个深度卷积、一个逐点卷积,深度卷积将每个卷积核应用到每个通道,1*1点卷积用来组合通道卷积的输出。另外,引入两个简单的全局参数,一个宽度乘数和一个分辨率乘数,以此降低模型的厚度,在保证准确度的前提下大大减少计算时间和参数数量,对于全卷积网络的提升效果比较明显。
利用训练集训练基站识别模型,使得基站识别模型能够识别出无人机拍摄的原始图像中的基站,训练集中的训练样本是包括基站的训练样本图像,示例性地,训练样本的数量例如可以是1000张,从而保证基站识别模型的识别精度。需要说明的是,训练样本中基站的形状、拍摄的角度、拍摄的背景、拍摄的环境越多样化,最终训练得到的基站识别模型在识别原始图像中的基站时鲁棒性越好。
训练过程具体地包括:
利用预设的标注工具对无人机拍摄的基站的原始图像进行标记,得到xml文件。具体地,可以利用Labellmg标注工具对原始图像进行手工标记。可以理解地,Labellmg是一个可视化的图像标定工具,在目标检测中,原始图像的标注是很重要的,标注的作用是在原始图像中标注目标物体位置并对每张图像生成对应的xml文件来表示目标标准框的位置。
在本实施例中,需要对每一张训练样本图像中的基站用一个矩形框框选起来,并给选中的基站添加标签,标签用于表示这个选中的部分为基站。
将标记好的原始图像的生成的xml文件转换为csv文件,再将csv文件转换为tfrecord格式,保存所需要的数据在data文件夹下;
将训练集与测试集输入到Mobilenet-ssd基站识别模型中,初始学习率设置为0.0005,最大迭代步数保存为120000次,每迭代1000次保存一次权重,当MAP(Mean AveragePrecision,均值平均精度)和损失函数值达到理想效果时保存训练模型,得到基站识别模型。
其中,Mobilenet神经网络提取原始图像中的基站特征,Mobilenet神经网络是一款高效的视觉网络模型,能够充分利用移动设备的有效资源,提取原始图像中有用的特征,将多个特征层送入ssd(single shot multibox detector,单次多盒检测器)模型中进行基站识别。采用Mobilenet-ssd基站识别模型,提高图像数据的处理效率。基站识别模型的输出是矩形框,以及每个矩形框中包含基站的可能性(检测置信度),即矩形框内的区域即为基站区域。
具体地,训练集中的训练样本图像的数量与测试集中的测试样本图像的数量比例为8:2,在其他实施方式中,也可以是7:3等。训练集用于对基站识别模型进行训练,使得基站识别模型能够识别出原始图像中的基站,测试集用于测试经过训练的基站识别模型的识别准确度是否达到目标阈值。例如识别准确度是否达到90%。
可以理解地,训练好的基站识别模型能够快速有效地识别出原始图像中的基站部分,并用矩形框标注处理。然后将识别出的基站部分进行像素级掩码处理。利用先识别后分割的方法,运用深度神经网络模型识别出无人机拍摄场景中的基站部分,对无人机拍摄场景没有太多约束,只需要无人机环绕基站360度拍摄即可实现对该场景下基站的识别,有利于前景与背景的分割。
其中,基站识别模型对原始图像中的基站进行识别并进行掩码处理,得到掩码图像集,包括:
利用深度卷积神经网络提取原始图像中的基站特征图;
根据基站特征图将基站区域像素置为1,并将背景区域像素置为0,得到掩码图像。
在本实施例中,采用二值掩码图像,在掩码图像中属于基站部分的像素被编码为1,使得基站部分被增强。属于背景部分的像素被编码为0,使得背景部分被屏蔽剔除,使得后续的前景与背景分割时,得到只包含基站部分的图像集。
进一步地,分割单元30包括:
创建子单元,用于构建前景高斯混合模型和背景高斯混合模型;
确定子单元,用于对前景高斯混合模型和背景高斯混合模型进行迭代优化,确定掩码图像中的像素为背景像素或前景像素,其中,前景像素为进行掩码处理的像素。
具体地,对掩码图像集,运用Grabcut的迭代算法进行图像分割,将图像分为前景区域和背景区域,利用聚类算法将属于前景与背景的像素聚类为k类,即高斯混合模型的个数,利用各自的样本估计出高斯混合模型的参数。
在本实施例中,前景和背景分别有5个高斯混合模型。高斯混合模型用于描述前景和背景的像素分布情况。若前景只有1个高斯模型,某个前景像素点lp在计算归属于前景的概率时,只有一种样本库模型,计算的归属概率有可能会很低,最后在最大流分割时,会被误判到背景里,所以有多个模型计算式,选取概率最大的一个,高斯模型越多,前景像素集的种类越多,越能够包容范围的像素点,过多的话计算量也会很大。
每个高斯混合模型的计算公式如下:
结合前景高斯混合模型和背景高斯混合模型,通过以下公式计算待分割图像的Gibbs能量函数:
E(α,k,θ,z)=U(α,k,θ,z)+V(α,z),其中,U为区域项,V为边界项。区域项反映的是像素样本集合的整体特性,边界项反映的是两个像素之间的差异。若两个邻域像素差别越小,则其属于同一目标或同一背景可能性越大;若两个邻域像素差别越大,则被分开的可能性越大。故像素差别越大,其能量越小。
迭代优化时,迭代算法只是作用于可能前景以及可能背景的像素区域,带入到初始化的前景高斯混合模型以及背景高斯混合模型中,选择概率最大的高斯混合模型,假如像素x是目标像素,那么把像素x的BGR值带入到每个高斯混合模型的分量中,概率最大的就是那个最有可能生成像素x的高斯分量。
迭代算法还会重新分配未知的像素点,这样每个模型的像素集合也得到了更新,高斯模型的参数也就有了更新,结合更新好的高斯混合模型构建分割图,运用最大流算法,对未知区域重新分配,每一次迭代都会交互地优化高斯混合模型和分割结果,多次迭代达到能量最小时迭代收敛,得到分割出的基站天线部分图像集。
进一步地,构建单元40包括:
构建子单元,用于获取每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,并运用SFM算法构建稀疏的三维点云;
匹配子单元,用于基于领域的块匹配算法,匹配得到基站图像中的稠密特征点;
检验子单元,用于根据每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,对稠密特征点进行有效性检验;
映射子单元,用于将有效的稠密特征点映射到三维点云中的对应位置,得到稠密三维点云。
可以理解地,SFM重建的成果是稀疏三维点云,为了获得更好的算法结果,引入MVS(Multi View System,多视图密集重建)算法,寻找空间中图像一致的点,即寻找两张图片上的同一点,以此来构建稠密的三维点云。
在本实施例中,先对无人机拍摄的原始图像中的目标物(基站)进行前景分割,避免了前景背景相似度较高的情况下分割效果差的问题,基于分割后得到基站图像(掩码图像)集并运用MVS构建基站的三维稠密点云,便于分析出基站天线的角度偏转情况,不需要对重建后的三维稠密点云进行目标物(基站)以外的点进行剔除工作。
本发明实施例提供了一种计算机可读存储介质,非暂态计算机可读存储介质存储计算机指令,其中,计算机指令使计算机执行以下步骤:
获取无人机巡检时拍摄的基站的原始图像集;将原始图像集中的原始图像依次输入预先训练好的基站识别模型中,其中,基站识别模型对原始图像中的基站进行识别并进行掩码处理,得到掩码图像集;迭代运行Grabcut算法对掩码图像集进行分割,得到分割出的基站图像集;基于基站图像集及多视角密集重建算法构建基站的稠密三维点云。
可选地,计算机指令使计算机还执行以下步骤:
获取包含基站图像的多个训练样本,每个训练样本中的基站利用预设的标签进行标注;利用多个训练样本训练初始的基站识别模型,基站识别模型包括卷积神经网络,得到卷积神经网络的前向输出;根据前向输出和训练样本的标注结果构建损失函数,并采用基于批量梯度下降算法更新迭代卷积神经网络的权值和偏置,使得损失函数进行优化使其最小化,得到训练好的基站识别模型。
可选地,基站识别模型为深度卷积神经网络模型,模型包括深度卷积层及逐点卷积层。
可选地,计算机指令使计算机还执行以下步骤:
构建前景高斯混合模型和背景高斯混合模型;对前景高斯混合模型和背景高斯混合模型进行迭代优化,确定掩码图像中的像素为背景像素或前景像素,其中,前景像素为进行掩码处理的像素。
可选地,计算机指令使计算机还执行以下步骤:
获取每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,并运用SFM算法构建稀疏的三维点云;基于领域的块匹配算法,匹配得到基站图像中的稠密特征点;根据每一张基站图像拍摄时相机的内参矩阵及相机在三维空间中的外参矩阵,对稠密特征点进行有效性检验;将有效的稠密特征点映射到三维点云中的对应位置,得到稠密三维点云。
图4是本发明实施例提供的一种计算机设备300的示意图,如图4所示,该实施例的计算机设备300包括:至少一个处理器310及通信接口320;以及与处理器310通信连接的至少一个存储器330,其中,存储器330存储有可被处理器310执行的程序指令,处理器310调用程序指令能够执行上述的基于基站定位的车牌付方法。为避免重复,此处不一一赘述。
计算机设备300可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算机设备。计算机设备可包括,但不仅限于,处理器310、通讯接口320、存储器330。本领域技术人员可以理解,图4仅仅是计算机设备300的示例,并不构成对计算机设备300的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备还可以包括通信总线340等。
所称处理器101可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器330可以是计算机设备300的内部存储单元,例如计算机设备300的硬盘或内存。存储器330也可以是计算机设备300的外部存储设备,例如计算机设备300上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器330还可以既包括计算机设备300的内部存储单元也包括外部存储设备。存储器330用于存储程序指令以及计算机设备所需的其他程序和数据。存储器330还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
- 基于基站目标分割构建稠密点云的方法及装置
- 一种基于稠密点云的集卡定位方法及装置