一种实时消失点检测方法、装置、设备及存储介质与流程

文档序号:22579189发布日期:2020-10-20 16:55阅读:151来源:国知局
一种实时消失点检测方法、装置、设备及存储介质与流程

本发明涉及图像处理领域,特别是涉及一种实时消失点检测方法、装置、设备及存储介质。



背景技术:

三维空间中的一组平行线在像平面上收敛到一个公共点,这个公共点又称为消失点,因为它等价于世界坐标系中平行线集合的无穷远点。消失点包含重要的透视投影变换信息。消失点在图像域的位置完全决定了三维空间中一组平行线的方向。此外,由多组共面平行线构成的消失点是共线的。消失点检测广泛应用于摄像机标定、三维重建、虚拟现实、机器人导航与场景跟踪、车辆自动驾驶等领域,是计算机视觉和图像处理领域的一个重要研究课题。

检测消失点的过程实质上是在图像平面中搜索一组消失点的局内线段的公共交点,这些边(线段)是一组平行线段在三维空间中的投影。由于背景噪声和图像失真的影响,消失点的局内线段一般不再相交于一个点,而是倾向于在一个有限的区域内相交,其质心仍被视为消失点。消失点在图像平面中的位置由显示在图像中的一组平行线的相对位置和方向确定。

hough变换由于其在噪声环境中的简洁性和鲁棒性,是最早提出的消失点检测方法之一。hough变换的正确执行要求消失点检测的空间是受限的或封闭的。然而,消失点所处的图像平面是一个开放的空间,因此,不能将hough变换直接用于消失点的检测。与hough变换不同,基于随机抽样一致性算法的算法在人造场景(如建筑物、公路等)的消失点检测中显示出了良好的前景,在这种环境下,大多数边缘或线段都会收敛到几个通常相互正交的消失点。但是,基于随机抽样一致性算法的方法受到所选最小样本集的非穷尽性的阻碍,当目标消失点在所选样本集中被低估或完全丢失时,会导致较高的消失点漏检风险。此外,基于随机抽样一致性算法的方法通常也受到计算复杂度以及处理所选最小样本集的高存储要求的影响,往往导致检测速度上的不足。上述方法和其它现有的消失点检测技术的共同缺点是处理效率低,每种最新算法需要耗时1秒以上640×480像素的单个图像,这使得它们不适合实时应用,如摄像机校准、三维重建、虚拟现实、机器人导航和场景跟踪。

因此,如何实时检测消失点,是本领域技术人员亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种实时消失点检测方法、装置、设备及存储介质,可以对任何数字图像中存在的一个或多个消失点进行实时检测。其具体方案如下:

一种实时消失点检测方法,包括:

从数字图像的t条边缘线段中随机抽取n条线段作为候选的消失点局内线段,组成抽样线段的样本集;其中,t≥n≥1,t和n为正整数;

为n条所述抽样线段中的每一条创建一组m个投票区域,设置m个投票箱,共计得到n×m个投票箱;其中,m≥1,m为正整数;

将t条所述边缘线段逐条依次与每条所述抽样线段的延长线相交,把票投给交点位置在所述抽样线段的延长线所属区间对应的投票箱;

投票结束后,进行多轮消失点检测,在每一轮消失点检测中,统计各投票箱的得票数,得到峰值票数;

判断所述峰值票数是否大于阈值;若是,则检测到一个消失点,根据所述峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,在更新后的投票信息基础上进行下一轮消失点检测;若否,则终止多轮消失点检测,并输出所有消失点的信息。

优选地,在本发明实施例提供的上述实时消失点检测方法中,为n条抽样线段中的每一条创建一组m个投票区域,设置m个投票箱,得到n×m个投票箱,具体包括:

从n条所述抽样线段中依次取出一条线段,将取出的每条线段的延长线分割成m个区间作为投票区域;

为每个所述投票区域设置一个相应的投票箱;

同一条所述抽样线段的延长线上的m个投票箱组成一个投票箱子集,n个所述抽样线段对应的n个投票箱子集组成一个包括n×m个投票箱的总集。

优选地,在本发明实施例提供的上述实时消失点检测方法中,根据所述峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,具体包括:

将所述峰值票数对应的投票箱所在位置的中点设置为消失点的初始坐标;

根据所述初始坐标,对当前消失点进行精确定位,并提取当前消失点的所有局内线段,把属于当前消失点局内线段的抽样线段对应的投票箱子集清零,并将当前消失点局内线段对其他抽样线段对应的投票箱子集的投票进行扣除;

寻找下一个消失点,直到所述峰值票数低于所述阈值为止。

优选地,在本发明实施例提供的上述实时消失点检测方法中,还包括:

根据各消失点局内线段的位置和角度,通过最小二乘拟合获取各消失点的位置。

优选地,在本发明实施例提供的上述实时消失点检测方法中,在从数字图像的t条边缘线段中随机抽取n条线段之前,还包括:

对所述数字图像作归一化处理,并将所述数字图像的中心设置为原点;

利用快速线段检测算法从归一化后的所述数字图像中找出所有的边缘线段,记录为t条边缘线段,每条边缘线段包括长度、位置、角度的信息。

优选地,在本发明实施例提供的上述实时消失点检测方法中,在一组投票箱中,每个投票箱的初始投票计数设置为1;

若输入的所述边缘线段与所述抽样线段的延长线相交,则计算出所述抽样线段对应的投票箱序列号,且投票箱的投票数相应增加1;

若输入的所述边缘线段与所述抽样线段平行,则本组投票箱的第一个投票箱的投票数增加1。

优选地,在本发明实施例提供的上述实时消失点检测方法中,采用下述公式计算出所述抽样线段对应的投票箱序列号:

其中,k∈(0,1,2,...,m-1)是收到选票的投票箱,m为沿着所述抽样线段分割得到的总的投票箱的数目,t为输入的所述边缘线段与所述抽样线段的交点,round为四舍五入函数。

本发明实施例还提供了一种实时消失点检测装置,包括:

随机抽样模块,用于从数字图像的t条边缘线段中随机抽取n条线段作为候选的消失点局内线段,组成抽样线段的样本集;其中,t≥n≥1,t和n为正整数;

投票箱设置模块,用于为n条所述抽样线段中的每一条创建一组m个投票区域,设置m个投票箱,共计得到n×m个投票箱;其中,m≥1,m为正整数;

投票箱投票模块,用于将t条所述边缘线段逐条依次与每条所述抽样线段的延长线相交,把票投给交点位置在所述抽样线段的延长线所属区间对应的投票箱;

消失点检测模块,用于投票结束后,进行多轮消失点检测,在每一轮消失点检测中,统计各投票箱的得票数,得到峰值票数;判断所述峰值票数是否大于阈值;若是,则检测到一个消失点,根据所述峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,在更新后的投票信息基础上进行下一轮消失点检测;若否,则终止多轮消失点检测,并输出所有消失点的信息。

本发明实施例还提供了一种实时消失点检测设备,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的计算机程序时实现如本发明实施例提供的上述实时消失点检测方法。

本发明实施例还提供了一种计算机可读存储介质,用于存储计算机程序,其中,所述计算机程序被处理器执行时实现如本发明实施例提供的上述实时消失点检测方法。

从上述技术方案可以看出,本发明所提供的一种实时消失点检测方法、装置、设备及存储介质,包括:从数字图像的t条边缘线段中随机抽取n条线段作为候选的消失点局内线段,组成抽样线段的样本集;其中,t≥n≥1,t和n为正整数;为每条抽样线段创建一组m个投票区域,设置m个投票箱,共计得到n×m个投票箱;其中,m≥1,m为正整数;将t条边缘线段逐条依次与每条抽样线段的延长线相交,把票投给交点位置在抽样线段的延长线所属区间对应的投票箱;投票结束后,进行多轮消失点检测,在每一轮消失点检测中,统计各投票箱的得票数,得到峰值票数;判断峰值票数是否大于阈值;若是,则检测到一个消失点,根据峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,在更新后的投票信息基础上进行下一轮消失点检测;若否,则输出所有消失点的信息。

本发明提供的上述实时消失点检测方法融合了随机抽样一致性和hough变换两种算法,能对任何数字图像中存在的一个或多个消失点进行实时检测,仅需要很少的样本量,处理速度明显加快,为消失点检测的可靠性提供了更高的冗余度,利用在每个抽样线段的延长线上执行的投票方法来检测有效消失点,最小化假阳性消失点的检测概率。

附图说明

为了更清楚地说明本发明实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的实时消失点检测方法的流程图;

图2为本发明实施例提供的局内线段与通过消失点和线段中点直线之间的夹角的示意图;

图3为本发明实施例提供的样本线段e(d,φ)延长线与随机线段e(u,v,θ)的交点的示意图;

图4为本发明实施例提供的不同(d,φ)情况下概率密度函数fd,φ(t)随t的分布示意图;

图5为本发明实施例提供的实时消失点检测装置的结构示意图。

具体实施方式

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

本发明提供一种实时消失点检测方法,如图1所示,包括以下步骤:

s101、从数字图像的t条边缘线段中随机抽取n条线段作为候选的消失点局内线段,组成抽样线段的样本集;其中,t≥n≥1,t和n为正整数;

需要说明的是,数字图像包括工程制图,手绘图形,自然场景等;该步骤采用随机抽样一致性算法从全部边缘线段集中随机选择n个线段组成的最小样本集;与其他基于随机抽样一致性算法的消失点检测算法不同,该算法使用至少包含两条边的随机抽样一致性算法集,至少选择一条边作为样本集,通过将消失点绑定到消失点的一个内联函数来固定消失点的部分自由度;剩下的自由度稍后将使用投票箱来恢复,这实际上是一个暴力的一维投票方案;

s102、为n条抽样线段(即样本线段)中的每一条创建一组m个投票区域,设置m个投票箱,共计得到n×m个投票箱;其中,m≥1,m为正整数;

在实际应用中,对于每个抽样线段,其延长线被划分为一组近似等概率的hough变换(ht)投票箱;

s103、将t条边缘线段(即输入线段、投票线段)逐条依次与每条抽样线段的延长线相交,把票投给交点位置在抽样线段的延长线所属区间对应的投票箱;

需要说明的是,所有输入线段都参与投票,每个投票线段对每组投票箱投一票;在每组投票箱中,投票线段把自己的选票投给它与抽样线段延长线交点所在的投票箱。具体地,在每组投票箱中,每个投票箱的初始投票计数可以设置为1,表示每个投票箱至少获得一个该组投票箱所对应的抽样线段提供的投票;除抽样线段之外的所有输入线段根据设定规则进行投票,该规则包括:若输入的边缘线段与抽样线段的延长线相交,则计算出抽样线段对应的投票箱序列号,且投票箱的投票数相应增加1;若输入的边缘线段与抽样线段平行,则本组投票箱的第一个投票箱的投票数增加1;

s104、投票结束后,进行多轮消失点检测,在每一轮消失点检测中,统计各投票箱的得票数,统计各投票箱的得票数,得到峰值票数;

在实际应用中,基于步骤s103中收集的投票数据,执行多轮消失点检测过程,每轮检测一个消失点后,通过一致性函数提取检测到的消失点的所有内部边缘,更新投票数据,即把该消失点局内线段的投票从相关投票箱中一处,直到得票最多的投票箱(峰值票箱)所包含的票数低于一定的阈值;每个消失点的位置都是基于其内部边缘集使用新开发的最大似然估计进行优化;

s105、判断峰值票数是否大于阈值;

若是,则执行步骤s106;若否,则执行步骤s107;

s106、检测到一个消失点,根据峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,在更新后的投票信息基础上进行下一轮消失点检测;

可以理解的是,局内线段为把选票投给峰值投票箱以及两侧各两个投票箱内的线段;以图2为例,局内线段的判据为局内线段的方向与通过消失点和局内线段中点的直线之间的夹角α<5°;

s107、终止多轮消失点检测,并输出所有消失点的信息。

在本发明实施例提供的上述实时消失点检测方法中,融合了随机抽样一致性和hough变换两种算法,能对任何数字图像中存在的一个或多个消失点进行实时检测,仅需要很少的样本量,处理速度明显加快,为消失点检测的可靠性提供了更高的冗余度,利用在每个抽样线段的延长线上执行的投票方法来检测有效消失点,最小化假阳性消失点的检测概率。

与其他基于随机抽样一致性算法的算法相比,本发明有一个独特的优势,那就是大大减少了确保高检测概率所需的最小样本集的大小。下面通过一个案例来说明本发明所带来的好处。假设一个图像总共包含1000条线段,其中5%是消失点的局内线段。

在现有技术中,使用两条局内线段对的交点获得消失点,随机选择的线段对内两条线段均为同一消失点局内线段的概率为p2=0.0025。如果使用最小样本量n,则假阴性检测的概率,或者更具体地说,n个随机选择的线段对中没有一个匹配局内线段对的概率等于(利用)。为了达到0.99的检测概率(假阴性检测概率为0.01),现有技术中所需的最小样本量为n=-ln0.01/p2=1842,在所有线段对中占比为

相反,本发明直接使用图像边缘作为样本,为了达到相同的检测概率,其对应的最小样本量为n=-ln0.01/p2=1842,相当于现有技术所需大小的0.05倍,但仍占到整个输入线段总数的9.2%。由此可见,与现有技术中的随机抽样一致性算法相比,本发明有两个显著优点:一、它仅需很小的样本量来实现与现有技术相同的检测概率,这使得本发明算法运行速度显著提高;二、本发明算法中的最小样本量在整个输入样本集合中所占比例远远大于现有技术中的算法,使得它为消失点检测的可靠性提供了更高的冗余度。

另外,本发明利用了在每个样本线段的延长线上执行的hough变换(ht)投票方法,具体地,该方法将样本线段的延长线划分为一组概率近似相等的投票箱,无论其位于何处以及如何定向。用这种方法划分的投票箱可以用来检测有效消失点,同时最小化假阳性消失点的检测概率。一方面,如果样本线段与输入线段集的任何其他线段没有共同的消失点,则绑定到样本线段所在直线的每个投票箱将获得由该组输入线段所投总票数的近似相等的票数,这样可以达到最小化假阳性消失点检测的概率。另一方面,如果一个样本线段的确为一个消失点的局内线段,贼在没有噪声干扰的情况下,并且消失点的所有局内线段汇聚到位于样本线段上的消失点,则该消失点所处的投票箱将获得该消失点的所有局内线段所投的选票加上该消失点的局外线段所投的一部分选票,而其他投票箱只获得消失点的局外线段投出的一部分选票。最后,通过搜索获票最多的票箱来检测有效的消失点。

进一步的,在具体实施时,在本发明实施例提供的上述实时消失点检测方法中,在执行步骤s101从数字图像的t条边缘线段中随机抽取n条线段之前,还可以包括:对数字图像作归一化处理,使得数字图像的高度和宽度均为1,并将数字图像的中心设置为原点;利用快速线段检测算法从归一化后的数字图像中找出所有的边缘线段,记录为t条边缘线段,每条边缘线段包括长度、位置、角度的信息。

需要说明的是,本发明将原来复杂的二维图像平面分解为2个一维参数空间,大大简化了消失点的检测过程;将一个开放的一维空间(一条直线)映射为一个封闭的一维空间(一个角度空间),进一步划分为一组概率近似相等的高温料仓。

为了简单起见,如图3所示,首先将图像归一化为中心固定在原点的单位正方形。本发明用e(d,φ)来表示一条抽样直线(抽样线段的延长线),其中d是原点到抽样直线的距离,φ是oq与x轴的夹角,其中q是o垂直投影到抽样线的垂足。

本发明将消失点检测分解为随机抽样一致性算法和一维hough变换有三个优点:一、所用的随机抽样一致性算法和一维hough变换的处理速度明显快于原来的基于二维的个体算法,因为随机抽样一致性算法和hough变换都被简化为在单独的一维参数空间中工作,可以更快地处理顺序;二、这也使得随机抽样一致性算法和hough变换的每一步都更加可靠,因为显著缩小的参数空间不仅使随机抽样一致性算法更可能抽中局内线段,而且对hough变换产生更低的离散化效果;三、它将算法的空间复杂度最小化为与输入图像的复杂度无关的常数。

在具体实施时,在本发明实施例提供的上述实时消失点检测方法中,步骤s102为n条抽样线段中的每一条创建一组m个投票区域,设置m个投票箱,得到n×m个投票箱,具体包括:从n条抽样线段中依次取出一条线段,将取出的每条线段的延长线分割成m个区间作为投票区域;为每个投票区域设置一个相应的投票箱;同一条抽样线段的延长线上的m个投票箱组成一个投票箱子集(即每组投票箱),n个抽样线段对应的n个投票箱子集组成一个包括n×m个投票箱的总集。

在实际应用中,让t条边缘线段依次对每个投票箱子集进行投票,每条输入线段只能给每个投票箱子集投票一次,把票投给输入线段与采样线段延长线交点所属区间的相应票箱。

由于数字图像通常包含大量的边缘线段。总体而言,这些边缘线段的位置和方向相互独立,且在各自的空间中呈现均匀分布。如图3所示,为了模拟分布在图像内部的大量边缘线段的投票行为,使用一个简单的通用随机边缘线段e(u,v,θ),其中点c的坐标(u,v)和线段方向角θ为相互独立的随机变量,均匀地分布在各自的参数空间(u∈(-0.5,0.5),v∈(-0.5,0.5),和θ∈(0,π))上。然后,上述三个随机变量的概率密度函数(pdf)可以分别表示为以及

下一个目标是导出一个解析近似解,将抽样线划分为一组一维hough投票箱,以确保随机线段e(u,v,θ)的延长线对每个投票箱的投票概率大致相等。由于它具有与一般图像中的线段集的集体投票效果相似的表现,这样的模型将会适用于普通图像。

如图3所示,假设随机线段e(u,v,θ)的延长线与抽样线e(d,φ)相交于p点,并设t=qp(q为o点到抽样线的垂足),并规定t的值根据p在oq的右侧还是左侧相应地赋予正号或负号。

容易证明p的坐标是(dcosφ+tsinφ,dsinφ-tcosφ)。由于θ是线段pc的方向角,tanθ可以写成:

把t从(1)式的右边移到左侧,得到:

因为u,v,θ是随机变量,t依赖于所有这些变量,所以t也是随机变量。由于t的分布是随机线段e(u,v,θ)在其整个参数空间上的累积效应,t的pdf独立于且仅依赖于d和φ,因此t的pdf可以写成fd,φ(t)。根据定义,其中p(t≤qp<t+dt)是p落在抽样线段e(d,φ)上介于t和t+dt之间的概率。

首先,首先求解p(t≤qp<t+dt|u,v),即p在随机线段e(u,v,θ)中点c的位置(u,v)固定时的概率。在这种情况下,p从t到t+dt的偏移与随机线段e(u,v,θ)方向角角度从θ到θ+dθ的偏移同步。把线段pc的水平线角写成∠pc。利用的θ与(u,v)之间的相互独立性,得到:

这里f(θ)=1/π为随机变量θ的概率密度函数。

将方程(1)改写为其导数为:

将(4)式代入(3)式,得到:

可以p(t≤qp<t+dt|u,v)通过对u,v进行积分得到p(t≤qp<t+dt):

将(5)式代入(6)式得到:

根据定义得到t在抽象直线e(d,φ)上的概率密度函数为:

如图5所示,显示了四组典型的d和φ取值情况下概率密度函数fd,φ(t)随t的分布变化;其中d=0指通过图像中心的抽样直线e(d,φ);d=0.5指与图像内最大圆相切的抽样直线(抽样直线位于图像的外围);φ=0指与v轴平行的抽样直线;φ=π/4指与对角线平行的抽样直线。图4表明d对fd,φ(t)的影响要比φ显著得多。

为便于对(8)式求解,在此专门引入了两个新的函数,g(d,φ)=fd,φ(0)以及

然后又引入了一个新的概率密度函数它与fd,φ(t)在t=0和t→∞的取值相等。

由于

为了使得成为一个合格的概率密度函数,要求接近于1。由于φ对fd,φ(t)的影响较小,给出了一个简单的的经验公式:

然后引入一个新的随机变量得到关于的新的概率密度函数:

式(14)定义了一个在空间呈均匀分布的概率密度函数。可以把空间分为m个投票箱,每个投票箱占据角度。

假设抽样直线e(d,φ)被分成m个投票箱(0,1,2,...,m-1),如果有一条投票线段与抽样直线相较于t,可以通过下列公式来求得该线段把票投给了那个票箱:

其中,k∈(0,1,2,...,m-1)为收到选票的投票箱,m为沿着抽样线段分割得到的总的投票箱的数目,t为投票线段与抽样线段的交点,round为四舍五入函数(因为投票箱的序列号必须是整数)。

在具体实施时,在本发明实施例提供的上述实时消失点检测方法中,步骤s106根据峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,具体可以包括:将峰值票数对应的投票箱所在位置的中点设置为消失点的初始坐标;根据初始坐标,对当前消失点进行精确定位,并提取当前消失点的所有局内线段,把属于当前消失点局内线段的抽样线段对应的投票箱子集清零,并将当前消失点局内线段对其他抽样线段对应的投票箱子集的投票进行扣除。接下来,寻找下一个消失点,直到峰值票数低于阈值为止。

需要注意的是,一旦所有n组投票箱都被投票通过,检测步骤就开始了。消失点检测本质上是一个多轮的过程,每轮检测最多只能提取一个消失点。

在投票过程开始之前,为每组投票箱分配一个标志,其初值为1,表示该组投票箱能被下一轮消失点检测中进行搜索。假设每个样本线段最多可以与一个消失点相关联,因此在将一个样本线段标识为某个消失点的局内线段后,绑定到该样本边的一组投票箱的标志将更新为0,以防止在后续回合中搜索该组投票箱。

多轮消失点检测过程的每一轮包括以下四个步骤:

第一步骤、对当前有效的各组投票箱进行搜索,查找得票数最高的投票箱。如果峰值投票计数低于规定的阈值,则终止多轮消失点检测过程。否则,确认检测到新的消失点。

第二步骤、把峰值投票箱所在位置的中部设置为新消失点的初始位置,识别并提取当前消失点的所有局内线段,然后使用新提取的局内线段对消失点的位置进行确认。其中aix+biy+ci=0和li分别为局内线段i的归一化直线方程和线段长度。

第三步骤、对于已被标识为当前消失点的局内线段的每个抽样线段,把与该抽样线段对应标志设置为无效,以防止在后续回合中访问抽样线段对应的一组票箱。

第四步骤、当前消失点的每个局内线段对每组有效投票箱的投票被剔除,以排除当前消失点的局内线段对后续消失点检测的干扰。

上述四个步骤的过程循环运行,直到因峰值票数小于阈值(这里max表示取最大值函数,为输入线段的总数,m为每组投票箱的数量)或检测到的消失点数达到规定的阈值n_vpmax。第四步骤在存在多个消失点且其中一个消失点的局内线段占比很高的情况对那些局内线段数量较小的消失点的可靠检测非常重要。通过扣除那些占主导地位的消失点的局内线段对投票的贡献,避免它们的投票对后续消失点检测的干扰,就能最大限度地保障那些由更小数量的局内线段支持的消失点的准确检测。

在具体实施时,在本发明实施例提供的上述实时消失点检测方法中,还可以包括:根据各消失点局内线段的位置和角度,通过最小二乘拟合获取各消失点的位置。

下面对本发明实施例提供的上述实时消失点检测方法中每个步骤进行详细描述:

步骤一、对图像作归一化处理,使得图像的高度和宽度均为1,并且其中心位于原点;

步骤二、利用快速线段检测算法就从图像中找出所有的线段,记录为t条线段,每条线段包括长度、位置、角度三条信息;

步骤三、从上述线段中随机抽取n条线段作为消失点的候选局内线段;

步骤四、对每一条抽样线段,通过图像中心o做一条垂直于抽样线段的直线,其垂足为q,延长线上的坐标以t表示,其中q点t=0,位于q左侧t<0,q右侧t>0;

步骤五、利用下列公式把抽样线段延长线(-∞,+∞)分成m个区域,其中第i区域的左右边界为(这里cot为余切函数,0≤i<m),并为每个区域设置一个投票箱,即每个抽样线段对应一个由m个投票箱组成的投票箱子集,所有n个抽样线段对应n个投票子集,共计n×m个投票箱;

步骤六、所有线段与每个抽样线段的延长线一一求交点,根据交点位置落在抽样线段对应的票箱子集中哪个投票箱内,则该票箱得票数加1;如果线段与抽样线段平行(没有交点),则抽样线段对应投票箱子集的0号票箱得票数加1。在投票结束后,t条线段中每条线段投票n次,所以初始总得票数为t×n;

步骤七、统计当前所有票箱中得票最多的票箱,如果其得票数大于5票,而且也大于则检测到一个消失点,转至步骤八,否则转至步骤十一;

步骤八、把得票数最高的票箱对应区域的中点设置为消失点初始坐标,利用该坐标找出消失点对应的所有局内线段;

步骤九、利用下列公式求取消失点的坐标,其中aix+biy+ci=0和li分别为局内线段i的归一化直线方程和线段长度:

步骤十、把那些属于当前消失点局内线段的抽样线段对应的投票子集清零,以避免对同一个消失点进行重复检测。另外,把当前消失点局内线段对其他抽样线段对应的投票子集贡献的投票扣除(因为一个消失点局内线段不能参与对其他消失点进行投票)。完成后,转至步骤七。

步骤十一、输出所有消失点。

基于同一发明构思,本发明实施例还提供了一种实时消失点检测装置,由于该装置解决问题的原理与前述一种实时消失点检测方法相似,因此该装置的实施可以参见实时消失点检测方法的实施,重复之处不再赘述。

在具体实施时,本发明实施例提供的实时消失点检测装置,如图5所示,具体包括:

随机抽样模块11,用于从数字图像的t条边缘线段中随机抽取n条线段作为候选的消失点局内线段,组成抽样线段的样本集;其中,t>n≥1,t和n为正整数;

投票箱设置模块12,用于为每条抽样线段创建一组m个投票区域,设置m个投票箱,共计得到n×m个投票箱;其中,m≥1,m为正整数;

投票箱投票模块13,用于将t条边缘线段逐条依次与每条抽样线段的延长线相交,把票投给交点位置在抽样线段的延长线所属区间对应的投票箱;

消失点检测模块14,用于投票结束后,进行多轮消失点检测,在每一轮消失点检测中,统计各投票箱的得票数,得到峰值票数;判断峰值票数是否大于阈值;若是,则检测到一个消失点,根据峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,在更新后的投票信息基础上进行下一轮消失点检测;若否,则终止多轮消失点检测并输出所有消失点的信息。

在本发明实施例提供的上述实时消失点检测装置中,可以通过上述五个模块的相互作用,对任何数字图像中存在的一个或多个消失点进行实时检测,仅需要很少的样本量,处理速度明显加快,为消失点检测的可靠性提供了更高的冗余度,利用在每个抽样线段的延长线上执行的投票方法来检测有效消失点,最小化假阳性消失点的检测概率。

关于上述各个模块更加具体的工作过程可以参考前述实施例公开的相应内容,在此不再进行赘述。

相应的,本发明实施例还公开了一种实时消失点检测设备,包括处理器和存储器;其中,处理器执行存储器中保存的计算机程序时实现前述实施例公开的实时消失点检测方法。

关于上述方法更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

进一步的,本发明还公开了一种计算机可读存储介质,用于存储计算机程序;计算机程序被处理器执行时实现前述公开的实时消失点检测方法。

关于上述方法更加具体的过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

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

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

本发明实施例提供的一种实时消失点检测方法、装置、设备及存储介质,包括:从数字图像的t条边缘线段中随机抽取n条线段作为候选的消失点局内线段,组成抽样线段的样本集;其中,t≥n≥1,t和n为正整数;为n条抽样线段中的每一条创建一组m个投票区域,设置m个投票箱,共计得到n×m个投票箱;其中,m≥1,m为正整数;将t条边缘线段逐条依次与每条抽样线段的延长线相交,把票投给交点位置在抽样线段的延长线所属区间对应的投票箱;投票结束后,进行多轮消失点检测,在每一轮消失点检测中,统计各投票箱的得票数,得到峰值票数;判断峰值票数是否大于阈值;若是,则检测到一个消失点,根据峰值票数对应的投票箱得到消失点的初始位置,对当前消失点进行精确定位,并提取所有消失点局内线段,把当前消失点局内线段所投的票数从相关投票箱中扣除,在更新后的投票信息基础上进行下一轮消失点检测;若否,则终止多轮消失点检测并输出所有消失点的信息。该实时消失点检测方法融合了随机抽样一致性和hough变换两种算法,能对任何数字图像中存在的一个或多个消失点进行实时检测,仅需要很少的样本量,处理速度明显加快,为消失点检测的可靠性提供了更高的冗余度,利用在每个抽样线段的延长线上执行的投票方法来检测有效消失点,最小化假阳性消失点的检测概率。

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

以上对本发明所提供的实时消失点检测方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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