发明内容
本申请的目的在于克服上述问题或者至少部分地解决或缓减解决上述问题。
根据本申请的一个方面,提供了一种基于深度学习的视觉里程计特征点检测方法,包括:
开启视觉里程计获取原始训练集视频流,并将所述原始训练集视频流中的RGB图像帧灰度化,得到预处理图像信息;
计算所述预处理图像信息的任意相邻帧图像相对尺寸因子,基于所述相对尺寸因子在所述相邻帧图像中分别获取包括多个具有指定像素分辨率的像素块数据的训练数据;
将所述训练数据输入神经网络进行训练,筛选出所述相邻帧图像中每帧图像中的多个特征点数据;
利用所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,基于所述特征描述子计算所述相邻帧图像之间的特征点的匹配度。
可选地,所述开启视觉里程计获取原始训练集视频流,并将所述原始训练集视频流中的RGB图像帧灰度化,得到预处理图像信息之后,还包括:
保存所述预处理图像信息,并对所述预处理图像信息进行直方图均衡化。
可选地,所述计算所述预处理图像信息的任意相邻帧图像相对尺寸因子,基于所述相对尺寸因子在所述相邻帧图像中分别获取包括多个具有指定像素分辨率的像素块数据的训练数据,包括:
在所述预处理图像信息中选取两帧相邻帧图像,使用ORB方法计算所述相邻帧图像的相对尺寸因子;
对于所述相邻帧图像中的每一帧图像,截取所述相对尺寸因子指定倍数的局部像素并降采样到指定像素分辨率,进行尺度归一化后,分别得到包括多个具有指定像素分辨率的像素块数据的训练数据。
可选地,所述将所述训练数据输入神经网络进行训练,筛选出多个特征点数据,包括:
将所述训练数据输入神经网络训练,通过神经网络的待筛选点筛选出满足指定特征点概率的多个像素数据块;
通过得分函数计算方法结合设定的训练得分在所述多个像素数据块中选取一定数量的像素数据块作为特征点数据。
可选地,所述利用所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,基于所述特征描述子计算所述相邻帧图像之间的特征点的匹配度,包括:
基于预设AlexNet网络结构结合所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子;
通过所述相邻帧的特征描述子结合快速近似最近邻的方法计算相邻两帧之间的特征点的匹配度。
根据本申请的另一个方面,提供了一种基于深度学习的视觉里程计特征点检测系统,包括:
图像预处理模块,其配置成开启视觉里程计获取原始训练集视频流,并将所述原始训练集视频流中的RGB图像帧灰度化,得到预处理图像信息;
训练数据获取模块,其配置成计算所述预处理图像信息的任意相邻帧图像相对尺寸因子,基于所述相对尺寸因子在所述相邻帧图像中分别获取包括多个具有指定像素分辨率的像素块数据的训练数据;
特征点筛选模块,其配置成将所述训练数据输入神经网络进行训练,筛选出所述相邻帧图像中每帧图像中的多个特征点数据;
特征点匹配模块,其配置成利用所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,基于所述特征描述子计算所述相邻帧图像之间的特征点的匹配度。
可选地,还包括:
直方图均衡化模块,其配置成保存所述预处理图像信息,并对所述预处理图像信息进行直方图均衡化。
可选地,所述训练数据获取模块,其还配置成:
在所述预处理图像信息中选取两帧相邻帧图像,使用ORB方法计算所述相邻帧图像的相对尺寸因子;
对于所述相邻帧图像中的每一帧图像,截取所述相对尺寸因子指定倍数的局部像素并降采样到指定像素分辨率,进行尺度归一化后,分别得到包括多个具有指定像素分辨率的像素块数据的训练数据。
可选地,所述特征点筛选模块,其还配置成:
将所述训练数据输入神经网络训练,通过神经网络的待筛选点筛选出满足指定特征点概率的多个像素数据块;
通过得分函数计算方法结合设定的训练得分在所述多个像素数据块中选取一定数量的像素数据块作为特征点数据。
可选地,所述特征点匹配模块,其还配置成:
基于预设AlexNet网络结构结合所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子;
通过所述相邻帧的特征描述子结合快速近似最近邻的方法计算相邻两帧之间的特征点的匹配度。
本申请提供了一种基于深度学习的视觉里程计特征点检测方法及系统,在本申请提供的方法中,首先开启视觉里程计获取原始训练集视频流,将视频流中的RGB图像帧灰度化,得到预处理图像信息,再计算图像信息中的任意相邻帧图像相对尺寸因子,获取多个具有指定像素分辨率的像素块数据的训练数据,并对其进行训练,筛选出每帧图像中的多个特征点数据,最后利用特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,从而计算相邻帧之间的特征点匹配度。
基于本申请提供的基于深度学习的视觉里程计特征点检测方法及系统,利用神经网络的方法对视角变化的特征点检测方法进行了优化,从而提升在视角变化时特征点检测的性能。
根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。
具体实施方式
图1是根据本申请实施例的基于深度学习的视觉里程计特征点检测方法流程示意图。参见图1所知,本申请实施例提供的基于深度学习的视觉里程计特征点检测方法可以包括:
步骤S101:开启视觉里程计获取原始训练集视频流,并将原始训练集视频流中的RGB图像帧灰度化,得到预处理图像信息;
步骤S102:计算上述预处理图像信息的任意相邻帧图像相对尺寸因子,基于相对尺寸因子在上述相邻帧图像中分别获取包括多个具有指定像素分辨率的像素块数据的训练数据;
步骤S103:将训练数据输入神经网络进行训练,筛选出相邻帧图像中每帧图像中的多个特征点数据;
步骤S104:利用每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,基于特征描述子计算相邻帧图像之间的特征点的匹配度。
随着人工智能的兴起和深度学习的发展,基于卷积神经网络进行研究成为了计算机视觉领域的研究热点。本申请实施例提供了一种基于深度学习的视觉里程计特征点检测方法及系统,在本申请提供的方法中,首先开启视觉里程计获取原始训练集视频流,将视频流中的RGB图像帧灰度化,得到预处理图像信息,再计算图像信息中的任意相邻帧图像相对尺寸因子,获取多个具有指定像素分辨率的像素块数据的训练数据,并对其进行训练,筛选出每帧图像中的多个特征点数据,最后利用特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,从而计算相邻帧之间的特征点匹配度。
对于传统的特征点检测方法,如尺度不变特征转换方法(Scale-invariantfeature transform,SIFT),它在空间尺度中寻找极值点,并提取出其位置、尺度、旋转不变量。该方法实时性不高,仅能在小型特征数据库的条件下获得了较好的匹配效果。另外,加速鲁棒性特征方法(Speeded Up Robust Features,SURF)。该方法通过利用森海行列式的斑点检测方法在不同的二维空间尺度进行近似哈尔小波值计算,提高了整体的特征检测效率。随后,提出了对SIFT、SURF的有效替代方法(Oriented FAST and Rotated BRIEF,ORB)该方法结合加速分段式检测特征(Fatures from Accelerated Segment Test,FEST)与二值鲁棒独立基础特征法(Binary Robust Independent Elementary Features,BRIEF)引入了方向的计算方法,使用贪婪搜索方法来挑选区分性较强的点对来进行对比判断从而生成二进制的描述子,取得了较好的结果,是目前比较普遍使用的方法。
因而,本申请提供的基于深度学习的视觉里程计特征点检测方法,相比较传统的特征点检测方法而言,利用神经网络的方法对视角变化的特征点检测方法进行了优化,从而提升在视角变化时特征点检测的性能。
具体地,本申请的图像特征点检测器是基于AlexNet之上修改而来。本模型所采用的实验数据集为KITTI数据集,是目前最大的自动驾驶场景下的计算机视觉算法评测数据集。该数据集对不同的光线、通透度、泛着条件、背景杂乱程度、焦距下的相似物体的追踪,符合实际情况对视角变化的特征点检测的要求。
参见上述步骤S101,首先要开启视觉里程计获取原始训练集视频流,将其中的相邻帧RGB图像帧灰度化,得到预处理图像信息。进一步地,保存获得的预处理图像信息之后,还可以对预处理图像信息进行直方图均衡化。
视觉里程计就是一个通过分析处理相关图像序列来确定机器人的位置和姿态。实际应用中,原始训练集视频流是拍摄对象的一组图像序列,包括在不同时间、不同方位对目标依序连续获取的系列图像。在原始训练集视频流中的选取两帧相邻帧的彩色图像进行灰度化处理,得到只保留灰度空间梯度信息的预处理图像信息。通过将灰度化后的预处理图像信息再进行直方图均衡化,可以提高图像的对比度和灰度色调,使图像像素均匀分布,从而获取预处理图像信息。
将原始训练集视频流中图像信息预处理之后,就可以执行步骤S102,计算其相邻帧图像的相对尺度因子,从而获取包括多个具有指定像素分辨率的像素块数据的训练数据。具体执行上述步骤S102时,可以包括:在预处理图像信息中任意选取两帧相邻帧图像,使用ORB方法计算所选取的相邻帧图像的相对尺寸因子;然后对于该相邻帧图像中的每一帧图像,截取相对尺寸因子指定倍数的局部像素并降采样到指定像素分辨率,进行尺度归一化后,得到包括多个具有指定像素分辨率的像素块数据,作为后续的训练数据。
ORB全称Oriented FAST and Rotated BRIEF,是一种快速特征点提取和描述的算法。它分为特征点提取和特征点描述两部分,其特征是将FAST特征点的检测方法与BRIEF特征描述子结合起来,并在它们原来的基础上做了改进与优化。
使用ORB方法获取像素块数据,具体如图2所示:
S201:使用ORB方法先计算上述两帧相邻帧的相对尺寸因子,即相邻帧绝对尺度的比;
S202:截取相对尺寸因子固定倍数的局部像素;
S203:将局部像素进行降采样,获得指定像素分辨率的图像;
S204:对指定像素分辨率的图像进行尺度归一化,得到多个像素块数据。
归一化是统一在0-1之间的统计概率分布,使得所有样本的输入信号其均值接近于0或与其均方差相比很小。
然后参照步骤S103,将训练数据输入神经网络进行训练,筛选出相邻帧图像中每帧图像中的多个特征点数据。
可选地,将训练数据输入神经网络训练,通过神经网络的待筛选点筛选出满足指定特征点概率的多个像素数据块;然后通过得分函数计算方法结合设定的训练得分在多个像素数据块中选取一定数量的像素数据块作为特征点数据。
得分函数的计算公式如下:
其中:xi和yi表示原图像素坐标;
w,h为原图的宽度和高度;
pi为通过神经网络后得到的特征概率;
βc,βp为设置的比例系数。
最后执行步骤S104,利用每帧图像中的特征点数据和局部像素计算得到每帧图像的特征描述子,从而计算相邻帧图像之间的特征点的匹配度。具体包括,基于预设AlexNet网络结构结合每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,从而通过相邻帧的特征描述子结合快速近似最近邻的方法计算相邻两帧之间的特征点的匹配度,满足了视觉里程计对于实时性的需求。
也就是说,假设从原始训练集视频流任意选取的相邻的两帧图像A和图像B,使用ORB方法计算图像A和图像B的相对尺寸因子(即图像A和图像B的绝对尺度的比)。
对于图像A,截取相对尺寸因子指定倍数的局部像素并降采样到指定像素分辨率,进行尺度归一化后,得到包括多个具有指定像素分辨率的像素块数据,作为后续的训练数据X。
对于图像B,截取相对尺寸因子指定倍数的局部像素并降采样到指定像素分辨率,进行尺度归一化后,得到包括多个具有指定像素分辨率的像素块数据,作为后续的训练数据Y。其中,指定倍数以及指定像素分辨率可根据不同的需求进行设置,本发明不做限定。实际应用中,由于分辨率过大影响计算处理速度,因此,本发明实施例可分别将所提取的图片A和图片B降采样到指定像素分辨率(如16*16),以提升后续对图片的计算处理速度。
进一步地,可将训练数据X和训练数据Y分别输入神经网络进行训练,以筛选出图像A的特征点数据并生成特征描述子M,以及图像B的特征点数据以及特征描述子N,进而基于特征描述子M和特征描述子N进行特征匹配,实现图像A和图像B的匹配度。该神经网络可以是预先构建并训练的主要用于进行生成特征描述的网络模型。
其中,特征描述子可以为LBP(Local Binary Pattern,局部二值模式),用于描述图像局部特征的算子,其具备灰度不变性和旋转不变性。HOG(Histogram of OrientedGradient,方向梯度直方图),其对图像几何的和光学的形变都能保持很好的不变性。Haar-like特征描述子。SIFT(Scale-invariant feature transform,尺度不变特征变换),当然,还可以是基于其他方式对图像特征点进行提取以获得的图像的特征描述子,本发明不做限定。在本实施例中,特征描述子的获取基于预设AlexNet网络结构,此网络结构为修改过的AlexNet网络结构,参考GoogLeNet使用更小的卷积核使识别准确率变得更加优秀,同时使用LeakyReLU作为激活函数改进AlexNet框架,在每个卷积层和全连接层后激活,将特征图像参数与0进行比较,使每个数据都能得到保留:
当特征图像参数大于0时,输出结果为特征图像参数本身;
当特征图像参数小于或等于0,输出结果为特征图像参数与一个设定好的较小的参数的乘积。
其中,修改过的AlexNet网络结构,用5x5,3x3卷积核的叠加替换原11x11的卷积核,放弃原Alex的LRN层,获取更显著的特征。同时为了提高模型的泛化能力,将dropout层设置为0.5。使用修改过的高效的AlexNet网络结构,是为了针对视角变化的特征点检测时,提高计算机视觉类应用实时性。
基于同一发明构思,本申请实施例还提供了一种基于深度学习的视觉里程计特征点检测系统300,如图3所示,该系统可以包括:
图像预处理模块310,其配置成开启视觉里程计获取原始训练集视频流,并将所述原始训练集视频流中的RGB图像帧灰度化,得到预处理图像信息;
训练数据获取模块320,其配置成计算所述预处理图像信息的任意相邻帧图像相对尺寸因子,基于所述相对尺寸因子在所述相邻帧图像中分别获取包括多个具有指定像素分辨率的像素块数据的训练数据;
特征点筛选模块330,其配置成将所述训练数据输入神经网络进行训练,筛选出所述相邻帧图像中每帧图像中的多个特征点数据;
特征点匹配模块340,其配置成利用所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,基于所述特征描述子计算所述相邻帧图像之间的特征点的匹配度。
在本发明一可选实施例中,上述系统还可以包括:
直方图均衡化模块350,其配置成保存所述预处理图像信息,并对所述预处理图像信息进行直方图均衡化。
在本发明一可选实施例中,训练数据获取模块320,其还可以配置成:
在所述预处理图像信息中选取两帧相邻帧图像,使用ORB方法计算所述相邻帧图像的相对尺寸因子;
对于所述相邻帧图像中的每一帧图像,截取所述相对尺寸因子指定倍数的局部像素并降采样到指定像素分辨率,进行尺度归一化后,分别得到包括多个具有指定像素分辨率的像素块数据的训练数据。
在本发明一可选实施例中,特征点筛选模块330,其还可以配置成:
将所述训练数据输入神经网络训练,通过神经网络的待筛选点筛选出满足指定特征点概率的多个像素数据块;
通过得分函数计算方法结合设定的训练得分在所述多个像素数据块中选取一定数量的像素数据块作为特征点数据。
在本发明一可选实施例中,特征点匹配模块340,其还可以配置成:
基于预设AlexNet网络结构结合所述每帧图像中的特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子;
通过所述相邻帧的特征描述子结合快速近似最近邻的方法计算相邻两帧之间的特征点的匹配度。
本申请提供了一种基于深度学习的视觉里程计特征点检测方法及系统,在本申请提供的方法中,首先开启视觉里程计获取原始训练集视频流,将视频流中的RGB图像帧灰度化,得到预处理图像信息,再计算图像信息中的任意相邻帧图像相对尺寸因子,获取多个具有指定像素分辨率的像素块数据的训练数据,并对其进行训练,筛选出每帧图像中的多个特征点数据,最后利用特征点数据和对应帧图像的局部像素计算得到每帧图像的特征描述子,从而计算相邻帧之间的特征点匹配度。
基于本申请提供的基于深度学习的视觉里程计特征点检测方法及系统,利用神经网络的方法对视角变化的特征点检测方法进行了优化,从而提升在视角变化时特征点检测的性能。
根据下文结合附图对本申请的具体实施例的详细描述,本领域技术人员将会更加明了本申请的上述以及其他目的、优点和特征。
本申请实施例还提供了一种计算设备,参照图5,该计算设备包括存储器520、处理器510和存储在所述存储器520内并能由所述处理器510运行的计算机程序,该计算机程序存储于存储器520中的用于程序代码的空间530,该计算机程序在由处理器510执行时实现用于执行任一项根据本发明的方法步骤531。
本申请实施例还提供了一种计算机可读存储介质。参照图6,该计算机可读存储介质包括用于程序代码的存储单元,该存储单元设置有用于执行根据本发明的方法步骤的程序531′,该程序被处理器执行。
本申请实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得计算机执行根据本发明的方法步骤。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、获取其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(英文:non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(英文:magnetic tape),软盘(英文:floppy disk),光盘(英文:optical disc)及其任意组合。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。