一种图像中角点的检测方法、装置及设备与流程

文档序号:14992055发布日期:2018-07-20 22:26阅读:141来源:国知局

本申请涉及图像处理技术领域,特别涉及一种图像中角点的检测方法、装置、设备及计算机可读存储介质。



背景技术:

角点是图像很重要的特征,在图像处理过程中可帮助对图像图形的理解和分析,因此常被用于运动检测、图像配准、图像拼接、三维建模和目标识别等应用场合。

现有技术中针对于图像中角点的检测有多种算法,例如基于灰度强度的harris算法和基于边缘轮廓的curvaturescale-space算法等,但它们都存在一定的局限性。这是因为,在实际应用中,需要进行角点检测的图像,例如对建筑物等的航拍影像中,总是会存在许多干扰,例如图像中的一些树木等阴影对建筑物角点的遮盖等。由此,现有的角点检测总是会出现大量对待检测角点的假阳性结果,导致检测结果精确度降低,效果较差。

由此可见,采用何种图像中角点的检测方法,以便有效地减少错误检测结果、保障检测精确度,是本领域技术人员所亟待解决的技术问题。



技术实现要素:

本申请的目的在于提供一种图像中角点的检测方法、装置、设备及计算机可读存储介质,以便有效减少错误检测结果、提高检测精确度。

为解决上述技术问题,本申请提供一种图像中角点的检测方法,包括:

获取受检图像;

利用预先建立的全卷积神经网络分类器,对所述受检图像中的图像区域进行分类,并生成图像区域分割图;所述全卷积神经网络分类器预先由图像数据库训练生成,所述图像数据库包括标注有图像区域分类标签的标准图像数据;

采用角点检测算法对所述图像区域分割图进行角点检测,以便获取所述受检图像的角点。

可选地,所述图像区域分类标签包括前景和背景。

可选地,所述图像数据库为标注有所述图像区域分类标签的vaihingen数据库。

可选地,所述利用预先建立的全卷积神经网络分类器,对所述受检图像中的图像区域进行分类包括:

利用预先建立的所述全卷积神经网络分类器,对多个不同尺度的同一所述受检图像分别进行图像特征值计算,并对图像特征值的计算结果进行融合,以便根据图像特征值融合结果对图像区域进行分类。

可选地,在所述利用预先建立的全卷积神经网络分类器,对所述受检图像中的图像区域进行分类之后、所述生成图像区域分割图之前,还包括:

采用条件随机场算法,计算所述全卷积神经网络分类器输出的图像区域的分类结果的合理程度指标;

判断所述合理程度指标是否超出预设合理范围;

若是,则对所述图像区域的分类结果进行调整。

可选地,在所述生成图像区域分割图之后、所述采用角点检测算法对所述图像区域分割图进行角点检测之前,还包括:

对所述图像区域分割图进行形态学开操作处理,以便平滑图像区域的轮廓。

可选地,所述角点检测算法为curvaturescalespace算法。

本申请还提供了一种图像中角点的检测装置,包括:

获取模块:用于获取受检图像;

图像区域分类模块:用于利用预先建立的全卷积神经网络分类器,对所述受检图像中的图像区域进行分类,并生成图像区域分割图;所述全卷积神经网络分类器预先由图像数据库训练生成,所述图像数据库包括标注有图像区域分类标签的标准图像数据;

角点检测模块:用于采用角点检测算法对所述图像区域分割图进行角点检测,以便获取所述受检图像的角点。

本申请还提供了一种图像中角点的检测设备,包括:

存储器:用于存储计算机程序;

处理器:用于执行所述计算机程序以实现如上所介绍的任一种图像中角点的检测方法的步骤。

本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序在被处理器执行时实现如上所介绍的任一种图像中角点的检测方法的步骤。

本申请所提供的图像中角点的检测方法包括:获取受检图像;利用预先建立的全卷积神经网络分类器,对所述受检图像中的图像区域进行分类,并生成图像区域分割图;所述全卷积神经网络分类器预先由图像数据库训练生成,所述图像数据库包括标注有图像区域分类标签的标准图像数据;采用角点检测算法对所述图像区域分割图进行角点检测,以便获取所述受检图像的角点。

可见,相比于现有技术,本申请所提供的图像中角点的检测方法中,利用全卷积神经网络分类器对受检图像进行图像区域分类,克服了受检图像中障碍物或阴影对角点检测的干扰,在此基础上结合角点检测算法,即可得到相对准确的角点检测结果,从而有效地减少了错误检测结果、提高了检测精确度。本申请所提供的图像中角点的检测装置、设备及计算机可读存储介质可以实现上述图像中角点的检测方法,同样具有上述有益效果。

附图说明

为了更清楚地说明现有技术和本申请实施例中的技术方案,下面将对现有技术和本申请实施例描述中需要使用的附图作简要的介绍。当然,下面有关本申请实施例的附图描述的仅仅是本申请中的一部分实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图,所获得的其他附图也属于本申请的保护范围。

图1为本申请实施例所提供的一种图像中角点的检测方法的流程图;

图2为本申请实施例所提供的一种图像中角点的检测方法与其他方法的检测性能的对比图;

图3为本申请实施例所提供的一种图像中角点的检测装置的结构框图。

具体实施方式

本申请的核心在于提供一种图像中角点的检测方法、装置、设备及计算机可读存储介质,以便有效减少错误检测结果、提高检测精确度。

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

请参考图1,图1为本申请实施例所提供的一种图像中角点的检测方法的流程图,主要包括以下步骤:

步骤1:获取受检图像。

具体地,受检图像即需要接受角点检测的图像。在三维建模和目标识别等领域中,通常会有大量的航拍图像需要进行角点检测。

步骤2:利用预先建立的全卷积神经网络分类器,对受检图像中的图像区域进行分类,并生成图像区域分割图;全卷积神经网络分类器预先由图像数据库训练生成,图像数据库包括标注有图像区域分类标签的标准图像数据。

具体地,本申请实施例所提供的图像中角点的检测方法,是在对受检图像进行图像语义分割之后再结合现有的角点检测算法,利用语义分割可以对即使存在障碍物或阴影等干扰的图像区域也实现准确分类,从而在已知图像区域类型的基础上,准确地检测出图像中的角点。

为了实现图像语义分割,本申请实施例预先通过大量数据训练而建立了全卷积神经网络分类器。全卷积网络(fullyconvolutionalnetworks,fcn)可对图像进行像素级的分类,从而解决了语义级别的图像分割问题。与经典的卷积神经网络(convolutionalneuralnetwork,cnn)在卷积层之后使用全连接层得到固定长度的特征向量进行分类不同,fcn可以接受任意尺度的输入图像,采用反卷积层对最后一个卷积层的featuremap进行上采样,使它恢复到输入图像相同的尺度,从而可以对每个像素都产生了一个预测,同时保留了原始输入图像中的空间信息,最后在上采样的特征图上进行逐像素分类。

具体地,用于训练该全卷积神经网络分类器的训练数据是标注了图像区域分类标签的标准图像数据,它们构成了图像数据库。当然,这些标准图像数据的像素大小和格式等均是统一且适用的。

图像区域分类标签指明了对图像区域的各种分类,用带有图像区域分类标签的标准图像数据训练出来的全卷积神经网络分类器,即可将任意受检图像的图像区域按照所说的图像区域分类标签进行分类。至于具体设置哪些图像区域分类标签,本领域技术人员可以自行根据实际应用情况自行选择。

具体地,本申请实施例所说的全卷积神经网络分类器具体可在一些现有的全卷积神经网络语义分割模型的基础上设计实现,例如deeplab模型,它是一个目前性能较为优越的、基于深度卷积的语义图像分割模型,具体提供了基于vgg16和resnet-101两种改进版的用于语义分割的网络,优选地,可以选取性能较为优越的resnet-101作为算法使用的基础网络。

deeplab语义分割模型具体是采用空洞卷积(atrousconvolution)或者称为扩张卷积策略改进全卷积神经网络来得到指定分辨率的网络输出结果的。需要注意的是,虽然全卷积神经网络可以实现图像语义分割,在像素级进行分类,但是其连续的池化操作将会丢失掉一些像素级的空间信息,降低对图像特征的分辨率。因此,可以进一步利用空洞卷积运算来提高分辨率。空洞卷积运算的定义为:

其中,w[k]为滤波器;r为速率参数,表征输入信号被采样的步幅;x[i]为输入信号;y[i]为输出信号。事实上,当速率参数r=1时,空洞卷积就退化为标准的卷积操作。

相关实验结果表明,使用空洞卷积对原始的全卷积神经网络进行改进,最终可实现将输出分辨率从原始输入的受检图像分辨率的1/32提高到1/8。其中,图像分辨率是指图像中存储的信息量,是每英寸图像内有多少个像素点,单位为ppi(pixelsperinch),即像素每英寸。

步骤3:采用角点检测算法对图像区域分割图进行角点检测,以便获取受检图像的角点。

当通过全卷积神经网络分类器对受检图像进行了语义分割并获得了图像区域分割图之后,即可采用现有技术中经典的角点检测算法对图像区域分割图进行角点检测,从而得到受检图像中的角点。

可见,本申请实施例所提供的图像中角点的检测方法中,利用全卷积神经网络分类器对受检图像进行图像区域分类,克服了受检图像中障碍物或阴影对角点检测的干扰,在此基础上结合角点检测算法,即可得到相对准确的角点检测结果,从而有效地减少了错误检测结果、提高了检测精确度。

本申请所提供的图像中角点的检测方法,在上述实施例的基础上:

作为一种优选实施例,图像区域分类标签包括前景和背景。

一般地,可将图像区域具体分为两类:对角点检测有价值、用户感兴趣的目标对象——图片的前景,以及对角点检测没有价值、用户不感兴趣的干扰对象——图片的背景。更具体地,对于建筑类图像,前景可具体设为建筑物。

作为一种优选实施例,图像数据库为标注有图像区域分类标签的vaihingen数据库。

具体地,vaihingen是一个关于航拍影像的数据集,包含大量的地表信息。vaihingen数据库共公开了16张长宽两千左右的高分辨的航拍图像,其中拥有丰富的地表信息,包括建筑物区域和其他干扰选项,比如,树木、道路、不透水地面、车辆、灌木。这些图片采集自真实世界,因而测试结果具有普遍说明性。

此外,在获取标准图像数据时,为了数据的丰富性,还可以辅以数据增强(dataaugmentation)技术来进一步增加图像数据数量。常用的数据增强技术包括多种图像的几何变换,例如翻转变换、缩放变化、平移变换、尺度变换和旋转变换等,常用的变换包括翻转变换和旋转变换,其中旋转变换还可以进一步选择旋转角度,例如90度、180度和270度等。

在本申请实施例所提供的一种角点检测方法中,具体是通过对vaihingen数据库中的图像数据进行翻转变换和旋转变换得到了11700张航拍图像的标准图像数据用于训练,以及450张航拍图像的标准图像数据用于测试。并且,在进行全卷积神经网络分类器的训练时,具体是采用基础网络resnet-101在语义分割公开数据集ms-coco上先进行了预训练,然后再在所说的11700张的航拍图像的标准图像数据集上进行了训练:初始学习率设为0.00025,采用“poly”学习率衰减策略,动量和权重衰减分别为0.9和0.0005s,共完成了batch为1张的40000次迭代,最终得到了分类效果较为理想的全卷积神经网络分类器。

作为一种优选实施例,利用预先建立的全卷积神经网络分类器,对受检图像中的图像区域进行分类包括:

利用预先建立的全卷积神经网络分类器,对多个不同尺度的同一受检图像分别进行图像特征值计算,并对图像特征值的计算结果进行融合,以便根据图像特征值融合结果对图像区域进行分类。

具体地,为了加强全卷积神经网络分类器融合局部和全局信息的能力,本申请实施例采用了多尺度输入策略,即,使用多个不同尺度的输入,然后融合随之产生的多个特征图,以便进一步提高检测方法的精确度。

作为一种优选实施例,在利用预先建立的全卷积神经网络分类器,对受检图像中的图像区域进行分类之后、生成图像区域分割图之前,还包括:

采用条件随机场算法,计算全卷积神经网络分类器输出的图像区域的分类结果的合理程度指标;

判断合理程度指标是否超出预设合理范围;

若是,则对图像区域的分类结果进行调整。

具体地,所说的合理程度指标即为条件随机场算法的能力函数:

其中,e(x)为合理程度指标;xi是第i个像素的标签分配结果;θi(xi)是全卷积神经网络的输出对条件随机场输出的影响因子,其定义为:

θi(xi)=-logp(xi);

p(xi)为全卷积神经网络为第i个像素输出的分类结果的标签分配概率;θij(xi,xj)是受检图像原图中像素间的距离p、颜色信息i对条件随机场输出的影响因子,其定义为:

其中,均为高斯分布方差;w1和w2均为权重系数。从式中可以看出,该式子的第一项与像素位置信息和rgb颜色信息均相关;而第二项则只与像素位置信息相关。

作为一种优选实施例,在生成图像区域分割图之后、采用角点检测算法对图像区域分割图进行角点检测之前,还包括:

对图像区域分割图进行形态学开操作处理,以便平滑图像区域的轮廓。

其中,开操作在计算机视觉和图像处理中被作为形态噪声消除的基本操作,通常可以起到平滑图像轮廓的作用,能够去掉图像区域轮廓上的毛刺,切断狭窄的山谷,从而进一步提高检测结果精确度。其具体操作是对一幅图像先进行腐蚀操作再进行膨胀操作,定义如下:

其中,a代表输入信号,b代表结构元素,表示开操作,分别表示腐蚀操作和膨胀操作。

作为一种优选实施例,角点检测算法为curvaturescalespace算法。

具体地,本申请实施例所提供的角点检测方法优选采用curvaturescale-space(css)算法来进行最后的角点检测。curvaturescalespace算法是基于曲率尺度空间的角点检测算法,此算法在高尺度下进行角点检测,然后对检测到的候选角点进行细节恢复,最终可以获得良好的定位。

请参阅图2,图2为本申请实施例所提供的一种图像中角点的检测方法与其他方法的检测性能的对比图。

从图2中给出了本发明实施例所提供的检测方法和andd方法、cpda方法、通用css方法、fastcpda方法、gcm方法、he&yung方法和mscp方法的检测性能的数值对比图,所说的检测性能包括各方法实验的精确度(precision)、召回率(recall)和准确率(accuracy)的评测结果。参与比较的所有方法均调整了内部参数,以获得最佳的检测结果。

可以看出,其他的7种方法的召回率高,可以检测大部分图像中的角点;然而,它们也产生大量的误报,导致了精度和准确率值很低。而本申请实施例所提出的方法由于融合了图像语义分割,有效降低了误报,在精确度和准确率方面都优于其他7种方法。

下面对本申请实施例所提供的图像中角点的检测装置进行介绍。

请参阅图3,图3为本申请所提供的一种图像中角点的检测装置的结构框图;包括获取模块1、图像区域分类模块2和角点检测模块3;

获取模块1用于获取受检图像;

图像区域分类模块2用于利用预先建立的全卷积神经网络分类器,对受检图像中的图像区域进行分类,并生成图像区域分割图;全卷积神经网络分类器在卷积层采用空洞卷积进行卷积计算,并预先由图像数据库训练生成,图像数据库包括标注有图像区域分类标签的标准图像数据;

角点检测模块3用于采用角点检测算法对图像区域分割图进行角点检测,以便获取受检图像的角点。

可见,本申请所提供的图像中角点的检测装置,通过利用全卷积神经网络分类器对受检图像进行图像区域分类,克服了受检图像中障碍物或阴影对角点检测的干扰,并利用空洞卷积运算避免了全卷积神经网络自身在分辨率、精确度方面的缺陷,在此基础上结合角点检测算法,即可得到相对准确的角点检测结果,从而有效地减少了错误检测结果、提高了检测精确度。

本申请还提供了一种图像中角点的检测设备,包括:

存储器:用于存储计算机程序;

处理器:用于执行计算机程序以实现如上任一实施例所介绍的图像中角点的检测方法的步骤。

本申请还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,计算机程序在被处理器执行时实现如上任一实施例所介绍的图像中角点的检测方法的步骤。

本申请所提供的图像中角点的检测装置、设备及计算机可读存储介质的具体实施方式与上文所描述的图像中角点的检测方法可相互对应参照,这里就不再赘述。

本申请中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

还需说明的是,在本申请文件中,诸如“第一”和“第二”之类的关系术语,仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或者操作之间存在任何这种实际的关系或者顺序。此外,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本申请所提供的技术方案进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1