CN104331876A - 直线检测、图像处理的方法及相关装置 - Google Patents

直线检测、图像处理的方法及相关装置 Download PDF

Info

Publication number
CN104331876A
CN104331876A CN201410528699.9A CN201410528699A CN104331876A CN 104331876 A CN104331876 A CN 104331876A CN 201410528699 A CN201410528699 A CN 201410528699A CN 104331876 A CN104331876 A CN 104331876A
Authority
CN
China
Prior art keywords
straight line
parameter
votes
line parameter
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410528699.9A
Other languages
English (en)
Other versions
CN104331876B (zh
Inventor
王丽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING PEITIAN TECHNOLOGY Co Ltd
Original Assignee
BEIJING PEITIAN TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BEIJING PEITIAN TECHNOLOGY Co Ltd filed Critical BEIJING PEITIAN TECHNOLOGY Co Ltd
Priority to CN201410528699.9A priority Critical patent/CN104331876B/zh
Publication of CN104331876A publication Critical patent/CN104331876A/zh
Priority to US15/552,468 priority patent/US10430951B2/en
Priority to PCT/CN2015/094548 priority patent/WO2016055031A1/zh
Application granted granted Critical
Publication of CN104331876B publication Critical patent/CN104331876B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/168Segmentation; Edge detection involving transform domain methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/48Extraction of image or video features by mapping characteristic values of the pattern into a parameter space, e.g. Hough transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • G06T2207/20061Hough transform

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

本发明公开了一种直线检测、图像处理的方法及相关装置,直线检测的方法包括:将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;利用各采样像素点的坐标进行对直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;对每一组的所述直线参数和所述投票数进行加权平均处理,得到被检测出直线的直线参数。本发明另外还公开了一种机器人及数控机床。通过上述方式,本发明能够提高图像中直线检测精度,增大Hough变换的作用范围。

Description

直线检测、图像处理的方法及相关装置
技术领域
本发明涉及图像处理领域,特别是涉及一种直线检测、图像处理的方法及相关装置。
背景技术
现实生活中,物体的平面轮廓一般都可以用直线或者弧线的组合来表示,Hough变换是从图像中识别出几何形状的基本方法之一。Hough变换的基本思想是利用点与线的对偶性,将原始空间给定的曲线通过曲线表达方式变换为参数空间的一个点,然后通过前景像素点在参数空间自变量取值范围内进行投票,并对投票值设定一个阈值,如果在某个区域内的投票数高于该阈值,则该区域对应存在一条直线,对应地,在该区域找出投票峰值,进而确定曲线表达式中的参数,也即确定了原始空间里的曲线方程。如图1所示,要确定黑白图像中的一条直线ρ=xcosθ+ysinθ,ρ表示图像原点到直线的距离,θ表示该直线与水平轴的夹角。我们知道,在原始空间领域,如果参数θ和ρ被确定,那么给定自变量x的范围以后,直线就被确定了,对应到参数空间,如图2所示,如果确定一个点(xi,yi)和参数θ的取值范围后,每给定一个θ就确定一个ρ,即参数空间里的一条正弦曲线ρ=xicosθ+yisinθ对应了原始空间里过点(xi,yi)的一族直线,如果给定两个点(xi,yi)和(xj,yj),那么两条正弦曲线ρ=xicosθ+yisinθ和ρ=xjcosθ+yjsinθ的交点(θ',ρ')就是过这两个点的直线参数。而Hough变换就是将参数空间划分为多个累加区域,根据边缘检测后得到的图像多个前景像素点进行参数空间的投票,如图3所示,当θ从最小值θmin依次取到最大值θmax时,对每个区域中的对应的ρ进行累加。如果原始空间中直线上的每个点都对在对应的参数空间产生进行了投票,那么参数空间里的多个区域中必然有一个累加票数最多的峰值,这个峰值对应的参数就是要找的直线所对应的参数。
但是,在边缘图像中,有的直线较短,那么其前景像素点相对较少,对应的投票数也较少,为了将短直线筛选出来可能需要降低筛选阈值,但是降低筛选阈值也会导致长直线附近的较多的其它直线被筛选出来,如图5所示,与投票峰值相差不远的投票权数明显增多,如果把这些投票数都作为直线参数来考虑,对应的原始空间必然有更多的直线被提取出来,而达不到准确找到理想直线的效果。
因此现有技术中的Hough变换方法存在着直线检测精度和覆盖范围上的矛盾:投票筛选阈值大,则短直线不会被检测出来,投票筛选阈值小,则长直线的检测精度又比较低。
发明内容
本发明主要解决的技术问题是提供一种直线检测、图像处理的方法及相关装置,能够提高直线检测参数的计算精度,增大Hough变换的作用范围。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种直线检测的方法,包括:将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
利用各采样像素点的坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;对每一组的所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数。
其中,所述第一间距和所述第二间距均为小于1的小数;在所述将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域之前,
所述方法还包括:将图像中的各采样点的坐标转换为亚像素级坐标;
所述利用各采样像素点的坐标进行对直线参数空间的多个参数区域的投票包括:
利用各采样像素点的亚像素级坐标进行对直线参数空间的多个参数区域的投票。
其中,所述图像中的直线用参数方程ρ=xcosθ+ysinθ来表示,其中,x表示所述图像中直线的水平坐标,y表示所述图像中直线的数值坐标,参数ρ为所述图像中所述直线到原点的距离,参数θ为所述直线与横轴的夹角。
其中,所述对每一组所述直线参数和投票数分别进行投票数分别加权平均处理,得到被检测出的直线参数θ和ρ包括:根据第一组中各直线参数对应的投票数mi计算出直线参数θi和ρi对应的投票权值Pi,再根据所述投票权值Pi计算出第一组的直线参数θ和ρ;其中,第一组为任意一个直线参数分组,mi为第一组中直线参数θi和ρi对应的投票数,i=1,...,n(n>1)。
其中,所述投票权值Pi的计算公式为:其中,,所述mmin为第一组中所述直线参数对应的最小投票数,mmax为第一组中所述直线参数对应的最大投票数。
其中,所述根据投票权值Pi计算出第一组的直线参数θ和ρ的公式为:
θ = θ i i = n = 1 θ = Σ i = 1 n θ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1 ρ = ρ i i = n = 1 ρ = Σ i = 1 n ρ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1
θi为第一组中第i条直线与所述横轴的夹角,ρi为原点到第一组中第i条直线的距离。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种图像处理的方法,包括:
获取待处理的图像;
对所述图像进行边缘检测,得到多个采样像素点;将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
利用所述各采样像素点坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;对每一组的所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数;输出或保存所述被检测出的直线的直线参数。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种直线检测的装置,包括:区域划分模块、投票模块、提取模块以及处理模块,
所述区域划分模块用于将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
所述投票模块用于利用各采样像素点的坐标进行对所述参数空间的多个参数区域的投票,得到各个参数区域的投票数;所述提取模块用于提取投票数大于投票阈值的各个参数区域的直线参数和投票数,,还用于将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;所述处理模块用于对每一组所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数。
其中,所述第一间距和所述第二间距均为小于1的小数;
所述直线检测装置还包括转换模块,所述转换模块用于将图像中的各采样点的坐标转换为亚像素级坐标;
所述投票模块具体用于利用各采样像素点的亚像素级坐标进行对直线参数空间的多个参数区域的投票。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种图像处理装置,包括:
图像获取模块、边缘检测模块、区域划分模块、投票模块、提取模块、处理模块以及输出模块,
所述图像获取模块用于获取待处理的图像;
所述边缘检测模块用于对所述图形进行边缘检测,得到多个采样像素点;
所述区域划分模块用于将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
所述投票模块用于利用各采样像素点的坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
所述提取模块用于提取投票数大于投票阈值的各个参数区域的直线参数和投票数,还用于将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;
所述处理模块用于对每一组所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数;
所述输出模块用于输出或保存所述被检测出的直线的直线参数。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种机器人,包括:机器人本体,安装在机器人本体内部的控制装置,安装在机器人本体上的图像采集装置,其中,所述控制装置包括如前所述的图像处理装置,所述图像处理装置用于对所述图像采集装置采集到的图像进行处理,所述控制装置用于根据所述图像处理装置的处理结果向所述机器人下达控制指令。
为解决上述技术问题,本发明采用的另一个技术方案是:提供一种数控机床,包括:机床主体、安装在所述机床主体上的图像采集装置、数控系统、伺服驱动装置、连接所述伺服驱动装置的电机、与所述电机连接的加工装置,所述数控装置与所述伺服驱动装置及图像采集装置电连接,所述数控装置包括如前所述的图像处理装置,所述图像处理装置用于对所述图像采集装置采集到的图像进行处理,所述数控装置用于根据所述图像处理装置的处理结果向所述伺服驱动装置下达控制指令。
本发明的有益效果是:区别于现有技术的情况,本发明在完成对直线参数空间的多个参数区域的投票后,对直线参数进行分组,利用投票数的加权平均的方法来计算各组的直线参数,这样投票阈值可以设置的比较小,使更多的短直线被检测出来,并且使得到的直线参数更加精确。
附图说明
图1是现有技术xy原始空间平面直线坐标图;
图2是现有技术ρθ参数空间平面正弦曲线坐标图;
图3是现有技术ρθ参数空间横轴和纵轴所划分的投票区域;
图4是现有技术ρθ参数空间一投票示意图;
图5是现有技术ρθ参数空间投票数统计图;
图6是本发明直线检测的方法一实施方式流程示意图;
图7是本发明ρθ参数空间横轴和纵轴所划分的投票区域一实施方式示意图;
图8是本发明ρθ参数空间投票一实施方式示意图;
图9是本发明ρθ参数空间投票另一实施方式示意图;
图10是本发明直线检测方法另一实施方式流程示意图;
图11是本发明图像处理方法一实施方式流程示意图。
图12是本发明直线检测装置一实施方式结构示意图;
图13是本发明直线检测装置另一实施方式结构示意图;
图14是本发明图像处理装置一实施方式的结构示意图。
具体实施方式
参阅图6,图6是本发明直线检测方法一实施方式流程示意图。该方法包括:
101:将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将直线参数空间划分为多个参数区域。
本发明中的直线优选的采用极坐标参数方程ρ=xcosθ+ysinθ来表示,其中,x表示直线的水平坐标,y表示直线的竖直坐标,参数ρ为直线到原点距离,参数θ为直线与横轴的夹角。当然直线也可以用其他形式来表示,如点斜式、两点式等,此处不做限制。
直线参数检测的实质就在于xy原始图像空间中的直线与ρθ参数空间的一个点一一对应的关系,当取定一个采样像素点(xi,yi)时,参数空间的自变量θ从最小值θmin依次取到最大值θmax取值,每取一个θi,根据直线参数方程ρ=xicosθi+yisinθi可以在对用区域中得到一个ρi,再根据θi和ρi落在某个区域,来实现对这个区域的投票。而在达到该目标之前,将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分,以使直线参数空间划分为多个参数区域。
由于Hough变换中应用到了投票原则,为了更加准确的找到直线对应的参数,那就涉及到了参数区间划分的大小问题,如图4所示由于图像像素是离散值,图像中直线上的点在理想直线周围进行离散分布,对应参数区域的投票也是一个离散分布,如果区域划分太大,如θ和ρ分别以2为单位划分,投票峰值在ρ∈(12,14)和θ∈(0,2)区间内,因此得到ρ=13,θ=1的直线,投票数为24,投票数是实现了更加聚集,但是由于区域较大,得到的参数可能并不准确;如果区域划分过小,例如当θ和ρ分别以1为单位划分区间时,投票峰值在ρ∈(12,13)和θ∈(1,2)区间内,因此得到ρ=12.5,θ=1.5的直线,投票数为15,但在该峰值周围,还有另外三个区间存在投票数,在ρ∈(12,13)和θ∈(0,1)区间内,投票数为3,在ρ∈(13,14)和θ∈(0,1)区间内,投票数为1,在ρ∈(13,14)和θ∈(1,2)区间内,投票数为5,由上可以看出,虽然参数更加准确但是可能出现投票数分散,会出现投票峰值和其周围投票数的差距并不太明显,很有可能在后期筛选中被淘汰。
本实施例中优选地,第一间距和第二间距均为小于1的小数。
具体地,如图7所示,图7为本发明ρθ参数空间横轴和纵轴所划分的投票区域一实施方式示意图。为了使坐标轴的参数表达更为精确,本实施方式横轴坐标和纵轴坐标都是以小数距离0.5为单位间隔来进行划分,需要指出的是,此处的0.5只是一个举例,以其他小数0.2或0.1或者更为精确的两位小数三位小数均可。
102:利用各像素点的坐标进行对直线参数空间的多个参数区域的投票,得到各个参数区域的投票数。
在参数空间里,由直线参数方程ρ=xcosθ+ysinθ可知,如果确定(xi,yi)和参数θ的取值范围后,每给定一个θ就确定一个ρ,即实现一次投票,当θ从最小值θmin依次取到最大值θmax,就完成对直线参数空间的各个区域的投票。,对每个区域中的对应投票进行累加,得到各个区域的投票数mi。关于对参数区域的投票的更具体的内容,由于是现有技术,在此就不再赘述。
如图8所示,在ρ∈(11.0,11.5)和θ∈(-0.5,0)区间内,投票数为2,在ρ∈(11.0,11.5)和θ∈(0.5,0)区间内,投票数为16,在ρ∈(11.0,11.5)和θ∈(0.5,1.0)、ρ∈(10.5,11.0)和θ∈(0,0.5)以及ρ∈(11.5,12.0)和θ∈(0,0.5)区间内投票数分别为1票。
相应的,在另一个实施方式中,如果直线用其他参数方程来表示,那么此处的投票也是可以进行的,因而此处采用极坐标参数空间来描述,只是一个举例,并不局限于此。
103:提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组。
当完成对ρθ参数空间的投票以后,有时候会发现,投票数并一定完全集中在一个区域,而是在相隔很远的多个区域都有比较集中的投票,这是因为,原始图像中,物体的轮廓往往是由多条曲线组成,很有可能不止一条直线,多条直线就有对应的与直线数量相同的直线参数,对应到ρθ参数空间,就有与直线数量相同的投票数集中区域。这时,需要把每一条直线都要找出来,首先对这些区域的投票进行分组。如图9所示。由图9可以看出,此次投票数集中在三个区域,ρ∈(11.5,12.5)和θ∈(-1.0,-0.5),ρ∈(10.0,10.5)和θ∈(0.5,1.5)以及ρ∈(11.5,12.0)和θ∈(0.5,1.0),为了将这三个区域区别开来,对直线参数ρθ分别进行阈值距离设定,并将属于同一阈值范围内的直线参数分为一组。进一步如图9所示,在本实施方式中,参数ρθ分别以投票集中区域为中心,1和1°为阈值距离来设定阈值范围,那么,上述ρ∈(11.5,12.5)和θ∈(-1.0,-0.5),ρ∈(10.0,10.5)和θ∈(0.5,1.5)以及ρ∈(11.5,12.0)和θ∈(0.5,1.0)这三个区域被分为三个组。
104:对每一组的直线参数和投票数分别进行加权平均处理,得到被检测出的直线的直线参数。
由于原始图像空间中采样像素点是离散的,这些像素点的分散会导致投票数的分散,而这些分散的投票点其实对应的是原始空间中的同一条直线,但是在采集采样像素点时,由于客观误差的存在,并不是每个采样像素点的坐标都准确,因此对应到参数中间中,存在不符合要求的投票,在对投票数进行统计的时候,为了将这些不准确的像素点剔除掉,设置投票阈值,再完成所有采样像素点在参数自变量的取值范围内的投票和分组后,提取每一组投票数大于投票阈值的各个参数区域的直线参数和投票数,既提高了采样像素点坐标和投票数的准确度,也减少了后续计算的工作量。
需要说明的,上述投票阈值的具体数值可以由本领域技术人员根据经验值或者检测精度的需要进行设定,在此不对其具体数值进行限制。
在参数空间,将每个组中投票数最大的区域定义为中心区域,越靠近中心区域的区域投票数越大,越远离中心区域的区域投票数越小,而靠近中心对应的直线参数是更准确的,因而使用投票数的加权平均来计算参数,所谓加权平均,顾名思义,是将不同的权数加以平均的方法,得到一个平均值,在本实施例中,投票数越大,这个区域对应的参数越接近真实值,在加权平均计算时占有的权值越大,投票数稍小的区域相应占有的权值就越小。
下面以其中一个分组(为了指代方便,命名为第一组)的直线参数的加权平均计算为例进行说明:
具体地,根据投票数mi计算出直线参数θi和ρi对应的投票权值Pi,计算公式可以为其中,mi为第一组中任一直线参数θi和ρi对应的投票数,mmin为第一组中直线参数对应的最小投票数(即mi中的最小值),mmax为第一组中直线参数对应的最大投票数(即mi中的最大值),最小投票数mmin大于设定的投票阈值。
需要说明的是,上述第一组并不特指某一个分组,而是指代任意一个分组,对每一组的直线参数及其投票数的加权平均处理的方法可以都是一致的。
需要说明的是,计算中之所以要减去最小投票数mmin,是为了增大投票数之间的差距,使各区域所占有的权值更加突出,因为要完成一次直线的检测,每次投票数的基数都较大,那么每个区域之间的差别可能并不太明显,比如最小投票数为101,最大投票数为109,其他区域的投票数都集中在102到108之间,差别并不太明显,在计算投票权值时,差别不明显,如果某个区域的投票数为103,103与109相比,差别并不太大,而同时减去最小投票数100之后,3所占9的比例比103占109的比例明显小很多,因而使用此方法,能够明显提高投票权值的准确性。得到投票权值Pi后,再根据投票权值Pi计算出直线参数θ和ρ。由于ρθ参数空间中的每一组参数都对应xy原始空间中的一条直线,因而当得到多组参数时,对应在xy原始空间中找到了多条直线,直线参数的加权平均计算公式为:
θ = θ i i = n = 1 θ = Σ i = 1 n θ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1 ρ = ρ i i = n = 1 ρ = Σ i = 1 n ρ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1
θi为第一组中第i条直线与横轴的夹角,ρi为原点到第一组中第i条直线到原点的距离,即θi、ρi为第一组中第i条直线对应参数空间的参数,Pi为第i条直线对应参数空间的参数的投票权值。由公式可以看出,当所有的采样像素点的投票都在一个区域,即得到第一组中唯一一组参数θi和ρi时,对应的xy原始空间中的某个区域只有一条直线,此时的θi和ρi就是第一组直线需要检测的θ和ρ,θ和ρ对应的直线就是该区域所要检测的直线。而一般情况下并非如此,所提取的参数和投票数都很大,对第一组内的参数θi和ρi分别采用加权平均公式 θ = Σ i = 1 n θ i P i Σ i = 1 n P i i = 1 , . . . , n n>1和 ρ = Σ i = 1 n ρ i P i Σ i = 1 n P i i = 1 , . . . , n n>1来计算,采用此方法,能够综合一定范围内直线参数的信息,进而使得到的直线参数更加精确。
区别于现有技术,本实施方式对直线参数空间的多个参数区域的投票,提取投票数大于投票阈值的直线参数和投票数,对直线参数进行分组,并将提取结果进行加权平均处理,能有效增大投票最大值和其周围投票数的差距,避免了有效投票数在后期筛选中被淘汰,另外,对检测到的大量有效参数即对应到原始图像空间中的长直线附近的大量离散直线群组进行加权平均,可以准确找到该直线参数对应的参数中心,使结果更加精确。
在另一个实施方式中,如图10所示,图10为本发明直线检测方法另一实施方式流程示意图。该方法包括
201:将图像中的各采样像素点的坐标转换为亚像素级坐标。
摄像机拍摄时,一般其成像面以像素为最小单位的,即将物理世界中连续的图像进行了离散化处理。到成像面上每一个像素点只代表其附近的颜色,两个像素之间有5.2微米的距离,在宏观上可以看作是连在一起的。但是在微观上,它们之间还有无限的更小的东西存在。这个更小的东西我们称它为亚像素。因而将采样像素点的坐标转换为亚像素级坐标能够提高图像存在的原始空间的坐标的精确度,减少与实际直线上点坐标的误差。优选的,将采样像素点的坐标(x,y)转换为像素中心坐标(x+0.5,y+0.5)。比如,当采样像素点坐标为(1,2)时,横坐标在区间[0,1]或[1,2]范围内,纵坐标在区间[1,2]或[2,3]范围内,由于其像素点都用整数表示,所以无论是横坐标还是纵坐标,其基本误差为1,当转化为像素中心坐标时(1.5,2.5)时,其横坐标在区间[1,1.5]或[1.5,2]范围内,纵坐标在区间[2,2.5]或[2.5,3]范围内,此时,基本误差变为0.5,明显提高了采样像素点的坐标精度。
202:将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将直线参数空间划分为多个参数区域。
其中,第一间距和第二间距可以均为小于1的小数。
本发明图像中的直线优选的采用极坐标参数方程ρ=xcosθ+ysinθ来表示,其中,x表示图像中直线的水平坐标,y表示图像中直线的竖直坐标,参数ρ为图像中直线到原点的距离,参数θ为直线与横轴的夹角,当然,采用极坐标方程只是一个举例,也可以用直线的其他参数方程表示,如点斜式、两点式等。
直线参数检测的实质就在于xy原始图像空间中的直线与ρθ参数空间的一个点一一对应的关系,当取定一个采样像素点(xi,yi)时,参数空间的自变量θ从最小值θmin依次取到最大值θmax取值,每取一个θi,根据直线参数方程ρ=xicosθi+yisinθi可以在对用区域中得到一个ρi,再根据θi和ρi落在某个区域,来实现对这个区域的投票。而在达到该目标之前,将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分,以使直线参数空间划分为多个参数区域。
由于,图像的像素为离散的,因此,图像中直线的点在理想直线周围进行离散分布,如果区域划分太大,投票数虽然得到了聚集,但是,由于区域太大,得到的参数并不太准确,而如果区域划分过小,虽然参数更加准确,但是可能使投票数被分散,而出现投票峰值和其周围投票数的差距不太明显而造成的后期被淘汰的问题。因此,优选地,第一间距和第二间距均为小于1的小数。
203:利用各像素点的亚像素级坐标进行对参数空间的多个参数区域的投票,得到各个参数区域的投票数。
直线参数检测的实质就在于xy原始图像空间中的直线与对应ρθ参数空间的一个点一一对应的关系,当取定一个采样像素点(xi,yi)时,参数空间的自变量θ从最小值θmin依次取到最大值θmax取值,每取一个θi,根据直线参数方程ρ=xicosθi+yisinθi可以在对应区域中得到一个ρi,再根据θi和ρi落在某个区域,来实现对这个区域的投票。当投票结束后,对每个区域中的投票参数进行累加,来得到各个区域的投票数。
相应的,在另一个实施方式中,如果直线用其他参数方程来表示,那么此处的投票也是可以进行的,因而此处采用极坐标参数空间来描述,只是一个举例,并不局限于此。
204:提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组。
当完成对ρθ参数空间的投票以后,有时候会发现,投票数并一定完全集中在一个区域,而是在相隔很远的多个区域都有比较集中的投票,这是因为,原始图像中,物体的轮廓往往是由多条曲线组成,很有可能不止一条直线,那么对应到ρθ参数空间,就有与直线数相同的投票数集中区域数与之对应,这时,需要把每一条直线都要找出来,首先对这些区域的投票进行分组。
205:对每一组直线参数和投票数分别进行加权平均处理,得到被检测出的直线参数θ和ρ。
由于原始图像空间中采样像素点是离散的,这些像素点的分散会导致投票数的分散,而这些分散的投票点对应的是原始空间同一条直线,但是在采集采样像素点时,由于客观误差的存在,并不是每个采样像素点的坐标都准确,因此对应到参数中间中,也必然存在不符合要求的投票,在对投票数进行统计的时候,应该将这些不准确的点剔除掉,因而设置了投票阈值,再完成所有采样像素点在参数自变量的取值范围内的投票后,提取投票数大于投票阈值的各个参数区域的直线参数和投票数,既提高了采样像素点坐标和投票数的准确数,也减少了后续计算的工作量。
在参数空间,将每一组中投票数最大的区域定义为中心区域,越靠近中心区域的区域投票数越大,越远离中心区域的区域投票数越小,而靠近中心对应的直线参数是更准确的,因而可以使用投票数的加权平均来计算参数,所谓加权平均,顾名思义,是将不同的权数加以平均的方法,得到一个平均值,在本实施例中,投票数越大,这个区域对应的参数越接近真实值,在加权平均计算时占有的权值越大,投票数稍小的区域相应占有的权值就越小。
下面以其中一个分组(为了指代方便,命名为第一组)的直线参数的加权平均计算为例进行说明:
具体地,根据投票数mi计算出直线参数θi和ρi对应的投票权值Pi,计算公式可以为其中,mi为第一组中任一直线参数θi和ρi对应的投票数,mmin为第一组中所述直线参数对应的最小投票数(即mi中的最小值),mmax为第一组中直线参数对应的最大投票数(即mi中的最大值),最小投票数mmin大于设定的投票阈值。
需要说明的是,上述第一组并不特指某一个分组,而是指代任意一个分组,对每一组的直线参数及其投票数的加权平均处理的方法可以都是一致的。
需要说明的是,计算中之所以要减去最小投票数mmin,是为了增大投票数之间的差距,使各区域所占有的权值更加突出,因为要完成一次直线的检测,每次投票数的基数都较大,那么每个区域之间的差别可能并不太明显,比如投票阈值设置为100,最小投票数为101,最大投票数为109,其他区域的投票数都集中在102到108之间,差别并不太明显,在计算投票权值时,差别不明显,如果某个区域的投票数为103,103与109相比,差别并不太大,而同时减去最小投票数101之后,2所占8的比例比103占109的比例明显小很多,因而使用此方法,能够明显提高投票权值的准确性。
得到投票权值Pi后,再根据投票权值Pi计算出直线参数θ和ρ。由于ρθ参数空间中的每一组参数都对应xy原始空间中的一条直线,因而当得到多组参数时,对应在xy原始空间中找到了多条直线,直线参数的加权平均计算公式为:
θ = θ i i = n = 1 θ = Σ i = 1 n θ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1 ρ = ρ i i = n = 1 ρ = Σ i = 1 n ρ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1
θi为图像中第一条直线与横轴的夹角,ρi为原点到第一组中第i条直线的距离,即θi、ρi为第一组中第i条直线对应参数空间的参数,Pi为第i条直线对应参数空间的参数的投票权值。由公式可以看出,当所有的采样像素点的投票都集中在一个区域时,即得到第一组中唯一一组参数θi和ρi时,对应的xy原始空间中的某个区域只有一条直线,此时的θi和ρi就是第一组需要检测的θ和ρ,θ和ρ对应的直线就是该区域所要检测的直线。而一般情况下并非如此,所提取的参数和投票数都很大,对第一组内的参数θi和ρi分别采用加权平均公式n>1和n>1来计算,采用此方法,能够综合一定范围内直线参数的信息,进而使得到的直线参数更加精确。
区别于现有技术,本实施方式将原始图像空间的采样像素点的坐标进行亚像素级转换,减少采样像素点的误差,将直线参数空间的横轴和纵轴的最小间距分别设定为小于1的小数,这样,计算的精度都保持在小数级别,对应到原始图像空间中,得到的直线参数也为亚像素级,进一步的提高直线参数的精度。再进行对直线参数空间的多个参数区域的投票,提取投票数大于投票阈值的直线参数和投票数,并将提取结果进行加权平均处理,能有效增大投票最大值和其周围投票数的差距,避免了有效投票数在后期筛选中被淘汰。另外,对检测到的大量有效参数进行分组,能够一次性的尽可能找出图像中的所有直线,简化工作过程,并且分组后对同组直线参数进行加权平均计算,可以精确的找出图像中直线参数对应的参数中心,因而可以适当降低投票阈值,从而筛选出更多的较短的直线,同时,针对长直线附近的离散群组进行加权平均,能够准确对应长直线参数中心,而不会影响长直线的计算精度,使整体检测结果更加精确。
参阅图11,图11是本发明图像处理方法一实施方式流程示意图。该方法包括:
301:获取待处理的图像。
302:对获取到的图像进行预处理。
举例来说,上述预处理可以包括:将图像进行平滑、膨胀、寻找最大连通区和腐蚀操作。对图像进行上述一系列预处理使原图像数据尽可能的简化,消除与直线检测不相干的部分,同时保持图像中的形状特性不发生变化。为了使图像更加清晰,对图像进行平滑来滤波,以消除图像中各种噪声。滤波后,为了使与直线接触的背景点都尽可能的合并到上述直线中,对图像进行膨胀处理,而后为了对边界点进行消除,使边界向内部收缩,对图像进行腐蚀处理。图像在经过平滑、膨胀和腐蚀操作后,经过扫描所有像素点,找到所有的连通分量,然后比较各连通分量的像素的数目,找到最大连通分量,因为本实施方式中的连通分量的检测是在对图像进行膨胀以后进行的,因此,从原图像中提取出的连通区域要比实际区域大,能够有效防止信息的丢失。
其中步骤302是可选步骤。
303:对图像进行边缘检测,得到多个采样像素点。完成对图像的处理后,对图像的边缘进行检测,一般情况下,图像的边缘点是指图像中周围像素灰度有阶跃变化的那些像素点,边缘检测可以大幅度的减少数据量、剔除不相关信息,保留图像中的能够代表图像属性结构的像素点。边缘检测的方法有很多种,在此不做限定。
以下是对采样像素点的处理和参数的求取的方法,其工作原理和具体实施方式在前两个实施例和附图6-10中已经做出详细阐述,在此不再赘述。
304:将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将直线参数空间划分为多个参数区域。
305:利用各采样像素点的坐标进行对直线参数空间的多个参数区域的投票,得到各个参数区域的投票数。
306:提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组。
307:对每一组的直线参数和投票数分别进行加权平均处理,得到被检测出的直线的直线参数。
需要说明的是,如果直线参数被分为多个组,则每个组均得到一个相应的直线的直线参数。
308:输出或保存被检测出的直线的直线参数。
在另一个实施方式中,在将直线参数空间的横纵和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将直线参数空间划分为多个参数区域之前,还包括将图像中的各采样像素点的坐标转换为亚像素级坐标。将采样像素点的坐标转换为亚像素级坐标,能够提高图像存在的原始空间的坐标的精确度,减少与实际直线上点坐标的误差。优选的,将采样像素点的坐标(x,y)转换为像素中心坐标(x+0.5,y+0.5),提高了采样像素点的坐标精度。
区别于现有技术,本实施方式检测图像中的直线在对图像进行处理和边缘检测操作后,对直线参数空间的多个参数区域的投票,提取投票数大于投票阈值的直线参数和投票数,对直线参数进行分组,并将提取结果进行加权平均处理,能有效增大投票最大值和其周围投票数的差距,避免了有效投票数在后期筛选中被淘汰,另外,对检测到的大量有效参数即对应到原始图像空间中的长直线附近的大量离散直线群组进行加权平均,可以准确找到该直线参数对应的参数中心,使结果更加精确。
如图12所示,图12是本发明直线检测装置一实施方式结构示意图。本实施方式的装置包括区域划分模块401、投票模块402、提取模块403以及处理模块404,本实施方式的直线检测装置还包括。
区域划分模块401用于将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将直线参数空间划分为多个参数区域。
本发明中的直线优选的采用极坐标参数方程ρ=xcosθ+ysinθ来表示,其中,x表示直线的水平坐标,y表示直线的竖直坐标,参数ρ为直线到原点距离,参数θ为直线与横轴的夹角。当然直线也可以用其他形式来表示,如点斜式、两点式等,此处不做限制。
直线参数检测的实质就在于xy原始图像空间中的直线与ρθ参数空间的一个点一一对应的关系,当取定一个采样像素点(xi,yi)时,参数空间的自变量θ从最小值θmin依次取到最大值θmax取值,每取一个θi,根据直线参数方程ρ=xicosθi+yisinθi可以在对用区域中得到一个ρi,再根据θi和ρi落在某个区域,来实现对这个区域的投票。而在达到该目标之前,区域划分模块401将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分,以使直线参数空间划分为多个参数区域。
由于,图像的像素为离散的,因此,图像中直线的点在理想直线周围进行离散分布,如果区域划分太大,投票数虽然得到了聚集,但是,由于区域太大,得到的参数并不太准确,而如果区域划分过小,虽然参数更加准确,但是可能使投票数被分散,而出现投票峰值和其周围投票数的差距不太明显而造成的后期被淘汰的问题。因此,优选地,第一间距和第二间距均为小于1的小数。
在另一个实施方式中,区域划分模块401将参数空间的横轴坐标和纵轴坐标都是以小数距离0.5为单位间隔来进行划分,需要指出的是,此处的0.5只是一个举例,以其他小数0.2或0.1或者更为精确的两位小数三位小数均可。
投票模块402用于利用各采样像素点的直线的坐标进行对直线参数空间的多个参数区域的投票,得到各个区域的投票数。
直线检测的实质就在于xy原始图像空间中的直线与对应ρθ参数空间的一个点一一对应的关系,在参数空间里,由直线参数方程ρ=xcosθ+ysinθ可知,如果确定(xi,yi)和参数θ的取值范围后,每给定一个θ就确定一个ρ,即实现一次投票,当θ从最小值θmin依次取到最大值θmax,就来实现对这个区域的投票。
在另一个实施方式中,如果直线用其他参数方程来表示,那么此处的投票也是可以进行的,因而此处采用极坐标参数空间来描述,只是一个举例,并不局限于此。
提取模块403用于提取投票数大于投票阈值的各个参数区域的直线参数和投票数,还用于将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组,处理模块404用于对每一组直线参数和投票数分别进行加权平均处理,得到被检测出直线的直线参数。
当完成对ρθ参数空间的投票以后,有时候会发现,投票数并一定完全集中在一个区域,而是在相隔很远的多个区域都有比较集中的投票,这是因为,原始图像中,物体的轮廓往往是由多条曲线组成,很有可能不止一条直线,那么对应到ρθ参数空间,就有与直线数相同的投票数集中区域数与之对应,这时,需要把每一条直线都要找出来,提取模块403对这些区域的投票进行分组。
下面以其中一个分组(为了指代方便,取名为第一组)的直线参数的加权平均计算为例进行说明:
具体地,根据投票数mi计算出直线参数θi和ρi对应的投票权值Pi,计算公式可以为其中,mi为第一组中任一直线参数θi和ρi对应的投票数,mmin为第一组中直线参数对应的最小投票数(即mi中的最小值),mmax为第一组中直线参数对应的最大投票数(即mi中的最大值),最小投票数mmin大于设定的投票阈值。
需要说明的是,上述第一组并不特指某一个分组,而是指代任意一个分组,对每一组的直线参数及其投票数的加权平均处理的方法可以都是一致的。
得到投票权值Pi后,再根据投票权值Pi计算出直线参数θ和ρ。由于ρθ参数空间中的每一组参数都对应xy原始空间中的一条直线,因而当得到多组参数时,对应在xy原始空间中找到了多条直线,直线参数的加权平均计算公式为:
θ = θ i i = n = 1 θ = Σ i = 1 n θ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1 ρ = ρ i i = n = 1 ρ = Σ i = 1 n ρ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1
θi为第一组中第i条直线与横轴的夹角,ρi为原点到第一组第i条直线的距离,即θi、ρi为第一组中第i条直线对应参数空间的参数,Pi为第i条直线对应参数空间的参数的投票权值。由公式可以看出,当所有的采样像素点的投票都在一个区域时,即得到第一组中唯一一组参数θi和ρi时,对应的xy原始空间中的某个区域只有一条直线,此时的θi和ρi就是第一组直线需要检测的θ和ρ,θ和ρ对应的直线就是该区域所要检测的直线。而一般情况下并非如此,所提取的参数和投票数都很大,对第一组内的参数θi和ρi分别采用加权平均公式n>1和n>1来计算,采用此方法,能够综合一定范围内直线参数的信息,进而使得到的直线参数更加精确。
区别于现有技术,本实施方式的装置可以利用区域划分模块将直线参数空间的横轴和纵轴的最小刻度分别设定为小于1的小数,这样,计算的精度都保持在小数级别,提高直线参数的精度。然后投票模块进行对直线参数空间的多个参数区域的投票,提取模块提取投票数大于投票阈值的直线参数和投票数,对直线参数进行分组,对检测到的大量有效参数进行分组,能够一次性的尽可能找出图像中的所有直线,简化工作过程,并且分组后对同组直线参数进行加权平均计算,可以精确的找出图像中直线参数对应的参数中心,因而可以适当降低投票阈值,从而筛选出更多的较短的直线,同时,针对长直线附近的离散群组进行加权平均,能够准确对应长直线参数中心,而不会影响长直线的计算精度,使整体检测结果更加精确。
在另一个实施方式中,如图13所示,图13是本发明直线检测装置另一实施方式结构示意图。本实施方式与上一个实施方式的区别在于,本实施方式的直线检测装置还包括转换模块405。
转换模块405用于将图像中的各采样像素点的坐标转换为亚像素级坐标。优选的,转换模块401将采样像素点的坐标(x,y)转换为像素中心坐标(x+0.5,y+0.5)。比如,当采样像素点坐标为(1,2)时,横坐标在区间[0,1]或[1,2]范围内,纵坐标在区间[1,2]或[2,3]范围内,由于其像素点都用整数表示,所以无论是横坐标还是纵坐标,其基本误差为1,当转化为像素中心坐标时(1.5,2.5)时,其横坐标在区间[1,1.5]或[1.5,2]范围内,纵坐标在区间[2,2.5]或[2.5,3]范围内,此时,基本误差变为0.5。利用转换模块401将采样像素点的坐标转换为亚像素级坐标能够提高图像存在的原始空间的坐标的精确度,减少与实际直线上点坐标的误差。
与上一个实施方式相比,本实施方式利用转换模块将采样像素点的坐标转换为亚像素级坐标能够提高图像存在的原始空间的坐标的精确度,减少与实际直线上点坐标的误差。
参阅图14,图14是本发明图像处理装置一实施方式的结构示意图。本实施方式的图像处理装置包括图像获取模块501、预处理模块502、边缘检测模块503、区域划分模块504、投票模块505、提取模块505、处理模块507以及输出模块508。
图像获取模块501用于获取待处理的图像。
预处理模块502用于获取到的图像进行预处理。
举例来说,上述预处理可以包括将图像进行平滑、膨胀、寻找最大连通区和腐蚀操作。对图像进行上述一系列预处理使原图像数据尽可能的简化,消除与直线检测不相干的部分,同时保持图像中的形状特性不发生变化。为了使图像更加清晰,对图像进行平滑来滤波,以消除图像中各种噪声。滤波后,为了使与直线接触的背景点都尽可能的合并到上述直线中,对图像进行膨胀处理,而后为了对边界点进行消除,使边界向内部收缩,对图像进行腐蚀处理。图像在经过平滑、膨胀和腐蚀操作后,经过扫描所有像素点,找到所有的连通分量,然后比较各连通分量的像素的数目,找到最大连通分量,因为本实施方式中的连通分量的检测是在对图像进行膨胀以后进行的,因此,从原图像中提取出的连通区域要比实际区域大,能够有效防止信息的丢失。
其中,预处理模块502是可选的模块。
边缘检测模块503用于对图像进行边缘检测,得到多个采样像素点。完成对图像的处理后,对图像的边缘进行检测,一般情况下,图像的边缘点是指图像中周围像素灰度有阶跃变化的那些像素点,边缘检测可以大幅度的减少数据量、剔除不相关信息,保留图像中的能够代表图像属性结构的像素点。边缘检测的方法有很多种,在此不做限定。
以下图像处理装置的其他部分用于对采样像素点的处理和参数的求取,其工作原理和具体实施方式与前两个实施例以及附图11-12中已经做出详细阐述,在此不再赘述。
区域划分模块504用于将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将直线参数空间划分为多个参数区域。
投票模块505用于利用各采样像素点的坐标进行对直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
提取模块506用于提取投票数大于投票阈值的各个参数区域的直线参数和投票数,还用于将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;
处理模块507用于对每一组直线参数和投票数进行加权平均处理,得到直线的直线参数;
输出模块508用于输出或保存直线参数。
在其他实施方式中,图像处理装置还包括转换模块(图中未示出),转换模块用于将采样像素点的坐标转换为亚像素级坐标,能够提高图像存在的原始空间的坐标的精确度,减少与实际直线上点坐标的误差。优选的,将采样像素点的坐标(x,y)转换为像素中心坐标(x+0.5,y+0.5),提高了采样像素点的坐标精度。
区别于现有技术,本实施方式的图像处理装置的图像获取模块在获取到待处理的图像后,预处理模块对图像进行预处理,边缘检测模块进行边缘检测操作,区域划分模块对直线参数空间进行划分,投票模块进行对直线参数空间的多个参数区域的投票,提取模块提取投票数大于投票阈值的直线参数和投票数,并对直线参数进行分组,处理模块再将提取结果进行加权平均处理,能有效增大投票最大值和其周围投票数的差距,避免了有效投票数在后期筛选中被淘汰,另外,对检测到的大量有效参数即对应到原始图像空间中的长直线附近的大量离散直线群组进行加权平均,可以准确找到该直线参数对应的参数中心,使结果更加精确。
本发明实施例还提供一种机器人,该机器人可以包括:机器人本体,安装在机器人本体内部的控制装置,安装在机器人本体上的图像采集装置,其中,该控制装置可以包括图像处理装置,图像处理装置可以用于对上述图像采集装置采集到的图像进行处理,该控制装置可以用于根据上述图像处理装置处理得到的结果向机器人下达控制指令。
例如,智能机器人在移动过程中需要通过图像采集装置采集移动路径上的图像,然后由图像处理装置对图像进行处理,由于图像中可能包括多条直线,通过采用本发明提供的图像处理装置可以提高直线检测的精度,进而提高图像中物体识别的精度,从而提高机器人控制指令的精度。
其中控制装置包括的图像处理装置可以是前述实施例所描述的图像处理装置,具体内容请参考前述实施例的描述,在此不再赘述。另外,上述图像采集装置可以是摄像装置、照相装置或其它具有图像采集功能的装置,例如可以是摄像头,图像采集装置采集到的图像可被传输到图像处理装置进行处理,具体的处理过程请参考前述实施例的描述,在此不再赘述。
本发明实施例另外还提供一种数控机床,该数控机床可以包括:机床主体,安装在上述机床主体上的数控装置、伺服驱动装置及图像采集装置,上述数控装置与上述伺服驱动装置及图像采集装置电连接,上述数控装置包括图像处理装置,上述图像处理装置用于对上述图像采集装置采集到的图像进行处理,上述数控装置用于根据上述图像处理装置的处理结果向上述伺服驱动装置下达控制指令。
一般来说,数控机床还包括电机、加工装置(例如刀具),伺服驱动装置可以根据控制指令来驱动电机运转,进而驱动加工装置进行加工作业。
例如,数控机床需要定位刀具的作业位置时,可以首先控制图像采集装置采集作业位置的图像,由图像处理装置进行处理,识别出作业位置,很多情况下,在图像中作业位置有多条直线或曲线来表示,采用本发明提供的图像处理装置可以提高直线检测精度,进而提高作业位置的确定精度,最终提高数控机床的加工精度。
其中数控系统包括的图像处理装置可以是前述实施例所描述的图像处理装置,具体内容请参考前述实施例的描述,在此不再赘述。另外,上述图像采集装置可以是摄像装置、照相装置或其它具有图像采集功能的装置,例如可以是摄像头,图像采集装置采集到的图像可被传输到图像处理装置进行处理,具体的处理过程请参考前述实施例的描述,在此不再赘述。以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (11)

1.一种直线检测的方法,其特征在于,包括:
将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
利用各采样像素点的坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;
对每一组的所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数。
2.根据权利要求1所述的方法,其特征在于,所述第一间距和所述第二间距均为小于1的小数;
在所述将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域之前,所述方法还包括:
将图像中的各采样点的坐标转换为亚像素级坐标;
所述利用各采样像素点的坐标进行对直线参数空间的多个参数区域的投票包括:
利用各采样像素点的亚像素级坐标进行对直线参数空间的多个参数区域的投票。
3.根据权利要求1或2所述的方法,其特征在于,所述图像中的直线用参数方程ρ=xcosθ+ysinθ来表示,其中,x表示所述图像中直线的横轴坐标,y表示所述图像中直线的纵轴坐标,参数ρ为所述图像中所述直线到原点的距离,参数θ为所述直线与横轴的夹角;
所述对每一组所述直线参数和投票数分别进行投票数分别加权平均处理,得到被检测出的直线参数包括:根据第一组中各直线参数对应的投票数mi计算出直线参数θi和ρi对应的投票权值Pi,再根据所述投票权值Pi计算出第一组的直线参数θ和ρ;其中,第一组为任意一个直线参数分组,mi为第一组中直线参数θi和ρi对应的投票数,i=1,...,n(n>1)。
4.根据权利要求3所述的方法,其特征在于,所述投票权值Pi的计算公式为:其中,所述mmin为第一组中所述直线参数对应的最小投票数,mmax为第一组中所述直线参数对应的最大投票数。
5.根据权利要求4所述的方法,其特征在于,所述根据投票权值Pi计算出第一组的直线参数θ和ρ的公式为:
θ = θ i i = n = 1 θ = Σ i = 1 n θ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1 ρ = ρ i i = n = 1 ρ = Σ i = 1 n ρ i P i Σ i = 1 n P i i = 1 , . . . , n n > 1
θi为第一组中第i条直线与所述横轴的夹角,ρi为原点到第一组中第i条直线的距离。
6.一种图像处理的方法,其特征在于,包括:
获取待处理的图像;
对所述图像进行边缘检测,得到多个采样像素点;
将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
利用所述各采样像素点的坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
提取投票数大于投票阈值的各个参数区域的直线参数和投票数,将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;
对每一组的所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数;
输出或保存所述被检测出的直线的直线参数。
7.一种直线检测的装置,其特征在于,包括:区域划分模块、投票模块、提取模块以及处理模块,
所述区域划分模块用于将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
所述投票模块用于利用各采样像素点的坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
所述提取模块用于提取投票数大于投票阈值的各个参数区域的直线参数和投票数,还用于将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;
所述处理模块用于对每一组所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数。
8.根据权利要求7所述的直线检测装置,其特征在于,
所述第一间距和所述第二间距均为小于1的小数;
所述直线检测装置还包括转换模块,所述转换模块用于将图像中的各采样点的坐标转换为亚像素级坐标;
所述投票模块具体用于利用各采样像素点的亚像素级坐标进行对直线参数空间的多个参数区域的投票。
9.一种图像处理装置,其特征在于,包括:图像获取模块、边缘检测模块、区域划分模块、投票模块、提取模块、处理模块以及输出模块,
所述图像获取模块用于获取待处理的图像;
所述边缘检测模块用于对所述图形进行边缘检测,得到多个采样像素点;
所述区域划分模块用于将直线参数空间的横轴和纵轴分别以预定的第一间距和第二间距为间隔进行等间距划分以将所述直线参数空间划分为多个参数区域;
所述投票模块用于利用各采样像素点的坐标进行对所述直线参数空间的多个参数区域的投票,得到各个参数区域的投票数;
所述提取模块用于提取投票数大于投票阈值的各个参数区域的直线参数和投票数,还用于将直线参数空间中距离在预定的距离阈值范围内的直线参数分为一组;
所述处理模块用于对每一组所述直线参数和所述投票数分别进行加权平均处理,得到被检测出的直线的直线参数;
所述输出模块用于输出或保存所述被检测出的直线的直线参数。
10.一种机器人,其特征在于,包括:机器人本体,安装在机器人本体内部的控制装置,安装在机器人本体上的图像采集装置,其中,所述控制装置包括如权利要求9所述的图像处理装置,所述图像处理装置用于对所述图像采集装置采集到的图像进行处理,所述控制装置用于根据所述图像处理装置的处理结果向所述机器人下达控制指令。
11.一种数控机床,其特征在于,包括:机床主体、安装在所述机床主体上的图像采集装置、数控系统、伺服驱动装置、连接所述伺服驱动装置的电机、与所述电机连接的加工装置,所述数控装置与所述伺服驱动装置及图像采集装置电连接,所述数控装置包括如权利要求9所述的图像处理装置,所述图像处理装置用于对所述图像采集装置采集到的图像进行处理,所述数控装置用于根据所述图像处理装置的处理结果向所述伺服驱动装置下达控制指令。
CN201410528699.9A 2014-10-09 2014-10-09 直线检测、图像处理的方法及相关装置 Active CN104331876B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410528699.9A CN104331876B (zh) 2014-10-09 2014-10-09 直线检测、图像处理的方法及相关装置
US15/552,468 US10430951B2 (en) 2014-10-09 2015-11-13 Method and device for straight line detection and image processing
PCT/CN2015/094548 WO2016055031A1 (zh) 2014-10-09 2015-11-13 直线检测、图像处理的方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410528699.9A CN104331876B (zh) 2014-10-09 2014-10-09 直线检测、图像处理的方法及相关装置

Publications (2)

Publication Number Publication Date
CN104331876A true CN104331876A (zh) 2015-02-04
CN104331876B CN104331876B (zh) 2020-12-08

Family

ID=52406596

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410528699.9A Active CN104331876B (zh) 2014-10-09 2014-10-09 直线检测、图像处理的方法及相关装置

Country Status (3)

Country Link
US (1) US10430951B2 (zh)
CN (1) CN104331876B (zh)
WO (1) WO2016055031A1 (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105118069A (zh) * 2015-09-30 2015-12-02 杭州南江机器人股份有限公司 一种复杂环境直线检测和筛选方法及应用该方法的机器人
WO2016055031A1 (zh) * 2014-10-09 2016-04-14 北京配天技术有限公司 直线检测、图像处理的方法及相关装置
CN106683149A (zh) * 2016-12-29 2017-05-17 西安电子科技大学 一种提取合成孔径雷达图像直线的优化方法
CN107085727A (zh) * 2017-03-28 2017-08-22 深圳怡化电脑股份有限公司 一种图像边界函数的确定方法及其装置
CN107784304A (zh) * 2016-08-30 2018-03-09 合肥君正科技有限公司 一种图像处理方法和装置
CN108469252A (zh) * 2018-04-09 2018-08-31 北京联诚智航科技有限公司 火车受电弓上供电线的检测识别方法
CN108647697A (zh) * 2018-05-11 2018-10-12 武汉鸿瑞达信息技术有限公司 一种基于改进Hough变换的目标边界检测方法和装置
CN108961331A (zh) * 2018-06-29 2018-12-07 珠海博明软件有限公司 一种绞合线节距的测量方法和装置
CN109833003A (zh) * 2017-11-30 2019-06-04 深圳市沃特沃德股份有限公司 扫地机器人及其进行区域划分的方法
CN110390339A (zh) * 2019-07-16 2019-10-29 北京市计算中心 一种图像校正方法、装置及存储介质
CN110490935A (zh) * 2019-08-20 2019-11-22 哈尔滨工业大学 直线特征检测方法、装置及设备
CN112361977A (zh) * 2020-11-10 2021-02-12 成都新西旺自动化科技有限公司 一种基于权重分配的直线间距测量方法
US10970824B2 (en) 2016-06-29 2021-04-06 Nokia Technologies Oy Method and apparatus for removing turbid objects in an image

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108898147B (zh) * 2018-06-27 2021-03-02 清华大学 一种基于角点检测的二维图像边缘平直化方法、装置
CN114729878A (zh) 2019-11-01 2022-07-08 康宁股份有限公司 具有改善的强度过渡位置检测及倾斜补偿的棱镜耦合系统及方法
CN111402284B (zh) * 2020-03-17 2023-07-25 中国人民解放军国防科学技术大学 一种基于三维连通性的图像阈值测定方法及装置
US11417036B1 (en) * 2021-05-19 2022-08-16 Adobe Inc. Systems for generating indications of perceptual linear regions of vector objects
CN114175887A (zh) * 2021-11-11 2022-03-15 玉溪新天力农业装备制造有限公司 一种多信息融合处理的甘蔗芽段切分方法
CN115294121A (zh) * 2022-10-08 2022-11-04 南通有来信息技术有限公司 一种基于物流标签的条形码缺陷检测方法
CN115908404B (zh) * 2023-01-03 2023-05-12 合肥中科类脑智能技术有限公司 图像条纹干扰的检测方法、装置、电子设备及介质
CN116342614B (zh) * 2023-06-01 2023-08-08 山东九思新材料科技有限责任公司 基于图像识别的废硅片形状检测方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070058879A1 (en) * 2005-09-15 2007-03-15 Microsoft Corporation Automatic detection of panoramic camera position and orientation table parameters
CN101388077A (zh) * 2007-09-11 2009-03-18 松下电器产业株式会社 目标形状检测方法及装置
CN101608924A (zh) * 2009-05-20 2009-12-23 电子科技大学 一种基于灰度估计和级联霍夫变换的车道线检测方法
CN101690166A (zh) * 2007-06-27 2010-03-31 松下电器产业株式会社 摄像装置、方法、系统集成电路及程序
CN102282588A (zh) * 2009-04-07 2011-12-14 村田机械株式会社 图像处理装置、处理方法、处理程序及存储介质
US8320670B1 (en) * 2008-08-29 2012-11-27 Adobe Systems Incorporated Hough transform method for linear ribbon and circular ring detection in the gradient domain
CN103268611A (zh) * 2013-05-27 2013-08-28 广西工学院 一种复杂场景中精确的实时曲线检测方法
CN103383733A (zh) * 2013-05-16 2013-11-06 浙江智尔信息技术有限公司 一种基于半机器学习的车道视频检测方法
CN103914830A (zh) * 2014-02-22 2014-07-09 小米科技有限责任公司 直线检测方法和装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10208056A (ja) * 1997-01-16 1998-08-07 Honda Motor Co Ltd 直線検出方法
JPH11328408A (ja) * 1998-05-12 1999-11-30 Advantest Corp データ処理装置および方法、情報記憶媒体
JP2002074351A (ja) * 2000-08-30 2002-03-15 Minolta Co Ltd 歪み補正装置およびその方法ならびに歪み補正プログラムを記録したコンピュータ読み取り可能な記録媒体
US7123277B2 (en) * 2001-05-09 2006-10-17 Clairvoyante, Inc. Conversion of a sub-pixel format data to another sub-pixel data format
US7200282B2 (en) 2001-12-12 2007-04-03 Sony Corporation Implementation of Hough transform and its application in line detection and video motion analysis
JP2004151815A (ja) 2002-10-29 2004-05-27 Nippon Telegr & Teleph Corp <Ntt> 特定領域抽出方法、特定領域抽出装置、特定領域抽出プログラム及びそのプログラムを記録した記録媒体
CN102156884B (zh) 2011-04-25 2012-12-12 中国科学院自动化研究所 一种直线段检测和提取方法
US9547222B2 (en) * 2013-02-08 2017-01-17 University Of South Australia Method and apparatus for calibration of multiple projector systems
CN104331876B (zh) * 2014-10-09 2020-12-08 北京配天技术有限公司 直线检测、图像处理的方法及相关装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070058879A1 (en) * 2005-09-15 2007-03-15 Microsoft Corporation Automatic detection of panoramic camera position and orientation table parameters
CN101690166A (zh) * 2007-06-27 2010-03-31 松下电器产业株式会社 摄像装置、方法、系统集成电路及程序
CN101388077A (zh) * 2007-09-11 2009-03-18 松下电器产业株式会社 目标形状检测方法及装置
US8320670B1 (en) * 2008-08-29 2012-11-27 Adobe Systems Incorporated Hough transform method for linear ribbon and circular ring detection in the gradient domain
CN102282588A (zh) * 2009-04-07 2011-12-14 村田机械株式会社 图像处理装置、处理方法、处理程序及存储介质
CN101608924A (zh) * 2009-05-20 2009-12-23 电子科技大学 一种基于灰度估计和级联霍夫变换的车道线检测方法
CN103383733A (zh) * 2013-05-16 2013-11-06 浙江智尔信息技术有限公司 一种基于半机器学习的车道视频检测方法
CN103268611A (zh) * 2013-05-27 2013-08-28 广西工学院 一种复杂场景中精确的实时曲线检测方法
CN103914830A (zh) * 2014-02-22 2014-07-09 小米科技有限责任公司 直线检测方法和装置

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
SIYU GUO 等: "An improved Hough transform voting scheme utilizing surround suppression", 《PATTERN RECOGNITION LETTERS》 *
乔闹生 等: "印制电路板线路检测研究", 《光子学报》 *
易玲: "基于分级的快速霍夫变换直线检测", 《模式识别》 *
樊超 等: "一种基于直线模型的车道线识别算法研究", 《计算机应用研究》 *
赵小川 等: "改进型图像中的直线快速检测", 《光学精密工程》 *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016055031A1 (zh) * 2014-10-09 2016-04-14 北京配天技术有限公司 直线检测、图像处理的方法及相关装置
CN105118069A (zh) * 2015-09-30 2015-12-02 杭州南江机器人股份有限公司 一种复杂环境直线检测和筛选方法及应用该方法的机器人
CN105118069B (zh) * 2015-09-30 2019-08-13 杭州南江机器人股份有限公司 一种复杂环境直线检测和筛选方法及应用该方法的机器人
US10970824B2 (en) 2016-06-29 2021-04-06 Nokia Technologies Oy Method and apparatus for removing turbid objects in an image
CN107784304A (zh) * 2016-08-30 2018-03-09 合肥君正科技有限公司 一种图像处理方法和装置
CN106683149A (zh) * 2016-12-29 2017-05-17 西安电子科技大学 一种提取合成孔径雷达图像直线的优化方法
CN107085727B (zh) * 2017-03-28 2020-04-07 深圳怡化电脑股份有限公司 一种图像边界函数的确定方法及其装置
CN107085727A (zh) * 2017-03-28 2017-08-22 深圳怡化电脑股份有限公司 一种图像边界函数的确定方法及其装置
CN109833003B (zh) * 2017-11-30 2021-02-09 深圳市无限动力发展有限公司 扫地机器人及其进行区域划分的方法
CN109833003A (zh) * 2017-11-30 2019-06-04 深圳市沃特沃德股份有限公司 扫地机器人及其进行区域划分的方法
CN108469252A (zh) * 2018-04-09 2018-08-31 北京联诚智航科技有限公司 火车受电弓上供电线的检测识别方法
CN108469252B (zh) * 2018-04-09 2020-12-22 北京联诚智航科技有限公司 火车受电弓上供电线的检测识别方法
CN108647697B (zh) * 2018-05-11 2020-06-23 武汉鸿瑞达信息技术有限公司 一种基于改进Hough变换的目标边界检测方法和装置
CN108647697A (zh) * 2018-05-11 2018-10-12 武汉鸿瑞达信息技术有限公司 一种基于改进Hough变换的目标边界检测方法和装置
CN108961331A (zh) * 2018-06-29 2018-12-07 珠海博明软件有限公司 一种绞合线节距的测量方法和装置
CN110390339A (zh) * 2019-07-16 2019-10-29 北京市计算中心 一种图像校正方法、装置及存储介质
CN110490935A (zh) * 2019-08-20 2019-11-22 哈尔滨工业大学 直线特征检测方法、装置及设备
CN110490935B (zh) * 2019-08-20 2022-05-10 哈尔滨工业大学 直线特征检测方法、装置及设备
CN112361977A (zh) * 2020-11-10 2021-02-12 成都新西旺自动化科技有限公司 一种基于权重分配的直线间距测量方法
CN112361977B (zh) * 2020-11-10 2021-05-28 成都新西旺自动化科技有限公司 一种基于权重分配的直线间距测量方法

Also Published As

Publication number Publication date
US10430951B2 (en) 2019-10-01
US20180122083A1 (en) 2018-05-03
WO2016055031A1 (zh) 2016-04-14
CN104331876B (zh) 2020-12-08

Similar Documents

Publication Publication Date Title
CN104331876A (zh) 直线检测、图像处理的方法及相关装置
CN105865344A (zh) 一种基于机器视觉的工件尺寸测量方法和装置
CN105069799A (zh) 一种角点定位方法及装置
Yang et al. Fast and accurate vanishing point detection and its application in inverse perspective mapping of structured road
CN104408455A (zh) 粘连字符分割方法
CN104050681A (zh) 一种基于视频图像的道路消失点检测方法
CN102721364A (zh) 一种工件的定位方法及其装置
CN105335745A (zh) 图像中数字的识别方法、装置及设备
CN110910451B (zh) 一种基于变形卷积网络的物体位姿估计方法及系统
CN112991374B (zh) 基于Canny算法的边缘增强方法、装置、设备及存储介质
CN105563481A (zh) 一种用于轴孔装配的机器人视觉引导方法
CN112163551A (zh) 基于图像处理和多维度感知的光伏电池板形变预测方法
CN101493942A (zh) 基于空间矩的水平集图像分割方法
CN103093222A (zh) 主板圆孔定位方法及系统
CN106340010A (zh) 一种基于二阶轮廓差分的角点检测方法
CN104091175A (zh) 一种基于Kinect深度信息获取技术的害虫图像自动识别方法
CN109919154B (zh) 一种字符智能识别方法及识别装置
CN103761520B (zh) 基于笔划宽度的文档图像无参二值化方法
CN107563314B (zh) 一种基于平行坐标系的车道线检测方法
CN104616035B (zh) 基于图像全局特征及SURF算法的Visual Map快速匹配方法
CN104050674A (zh) 一种显著性区域检测方法及装置
CN104574362A (zh) 一种基于无源视觉系统的熔池边缘提取方法
CN106056575A (zh) 一种基于似物性推荐算法的图像匹配方法
Feng et al. Liquid surface location of milk bottle based on digital image processing
Abd Almisreb et al. Enhancement pupil isolation method in iris recognition

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant