APP下载

基于圆形标定板特征点提取及排序的方法

2014-12-13刘智

数字技术与应用 2014年8期
关键词:提取

刘智

摘要:在计算机视觉中,圆形标定板被广泛使用在像机标定中,本文针对圆形标定板图像(图1)在特征点提取后的排序问题,提出了利用两点之间斜率进行比较解决该问题的方法。并在Visual studio 2010坏境下进行编程实现该算法,通过实验证明了该方法的有效性。

关键词:像机标定 特征点排序 提取 OpenCV

中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2014)08-0072-02

1 引言

在传统标定方法中常用的标定板为棋盘格标定板和网格圆形标定板。本文使用圆形标定板作为标定物,利用工业摄像机采集标定板图像并进行特征点提取和排序。文献[1]利用在标定板上建立五个大圆形标志的方法进行圆形标志点匹配;文献[2]针对鱼眼镜头提出了一种根据距离对特征点进行排序的方法;文献[3]通过建立Delaunay规则三角网和计算最优单应性矩阵的方法来对特征点进行排序;文献[4]通过网格计算最短距离的方法对特征点进行排序,本文设计了一个基于opencv的图像特征点的提取与排序方法,通过实验证明了该算法的有效性,并与文献[4]方法进行对比,结果表明本文的方法的高效性。

2 椭圆拟合方法

对于二维图像中的椭圆,如果知道图像中椭圆的边缘信息,我们就可以通过椭圆一般方程和最小二乘法[5]进行拟合得到椭圆的中心点。设图像坐标系为XOY,坐标系原点位于图像左上角。椭圆一般方程公式如下:

3 特征点排序方法

如图1所示为网格圆形标定板的实体图,在标定板中所有的圆可以以矩阵的方式排列。标定板中的圆在标定板图像中均为椭圆,用椭圆中心点的坐标表示每个椭圆在图像中的位置,通过椭圆中心点的坐标,就可以对椭圆中心点进行排序。排序算法分为两步,排序方法中第一步的具体步骤如下;

(1)记椭圆中心点序列为Seq。取序列Seq中前两个点A、B,并计算直线AB的斜率k0。则AB与图像水平坐标轴的夹角为angle0=arctan(k0)。A、B点的位置如图1所示;

(2)计算A点和序列中除A和B以外的其他点之间的直线的斜率,并计算其与图像水平坐标轴的夹角。则angle0和其余的夹角的差构成一个集合,本文定义为角度差集合(角度差的单位以弧度制表示);

(3)通过选取合适的阈值,就可以筛选出标定板上对应行在图像中个椭圆中心点;

(4)从序列Seq中取出该行的所有椭圆中心点。并将该行的点存入Seq1中;

(5)重复以上操作直到序列Seq中的所有行元素均存入Seq1中为止。

通过上述的排序算法就可以确定标定板上对应每一行在图像中的椭圆中心点。第二步再进行行内排序。

4 实验结果与分析

为验证本文特征点排序方法的有效性和高效性,进行如下实验。

采用Basler piA640-210gm像机,配12mm镜头,对同一圆标志标定板分别从三个不同像机位置拍摄了30张图像。图像为8位灰度图像,图像尺寸为640×480,该标定板有280个圆心点(14行×20列),相邻圆心点间横纵两方向距离均为10mm。利用本文特征点排序算法对30张图像中的特征点进行排序后,由于图像本身的畸变的影响,根据不同阈值,排序效果会不同。如表1所示。

从实验结果看,当阈值为0.03和0.05时,实验中的30张图像均能得到正确的排序效果。此外,通过该排序算法对30张图中的椭圆中心点进行排序的平均时间为2.2ms,而利用文献[4]中的算法排序的平均时间为2.7ms。本算法从时间效率上相比文献[4]的算法提高了19%。

5 结语

本文利用基于椭圆方程和最小二乘法的椭圆拟合算法对标定板图像所提取圆心点进行排序,并通过实验取得了较好的实验效果。在本文的实验中,使用工业像机进行图像采集,采集的图像镜头畸变相对较小。在镜头畸变较大的情况下(例如,鱼眼镜头),该算法并不适用。因此,如何让其在畸变较大的场合对特征点进行排序是我们今后需要改进的地方。

参考文献

[1]夏仁波,刘伟军,等.基于圆形标志点的全自动相机标定方法[J].上海:仪器仪表学报,2009,30(2):369-373.

[2]张春燕,邹伟,等.一种鱼眼镜头标定板的设计、检测与排序[J].北京:计算机工程与应用,2014.

[3]苏杭.基于圆形网格点的全自动相机标定法研究[D].武汉: 武汉理工大学,2009.

[4]肖新跃,黎民英.一种基于matlab的特征点提取及排序的简单方法[J].福建:福建电脑,2011.

[5]闫蓓,王斌,等.基于最小二乘法的椭圆拟合改进算法[J].北京:北京航空航天大学学报,2008,34(3):296-298.endprint

摘要:在计算机视觉中,圆形标定板被广泛使用在像机标定中,本文针对圆形标定板图像(图1)在特征点提取后的排序问题,提出了利用两点之间斜率进行比较解决该问题的方法。并在Visual studio 2010坏境下进行编程实现该算法,通过实验证明了该方法的有效性。

关键词:像机标定 特征点排序 提取 OpenCV

中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2014)08-0072-02

1 引言

在传统标定方法中常用的标定板为棋盘格标定板和网格圆形标定板。本文使用圆形标定板作为标定物,利用工业摄像机采集标定板图像并进行特征点提取和排序。文献[1]利用在标定板上建立五个大圆形标志的方法进行圆形标志点匹配;文献[2]针对鱼眼镜头提出了一种根据距离对特征点进行排序的方法;文献[3]通过建立Delaunay规则三角网和计算最优单应性矩阵的方法来对特征点进行排序;文献[4]通过网格计算最短距离的方法对特征点进行排序,本文设计了一个基于opencv的图像特征点的提取与排序方法,通过实验证明了该算法的有效性,并与文献[4]方法进行对比,结果表明本文的方法的高效性。

2 椭圆拟合方法

对于二维图像中的椭圆,如果知道图像中椭圆的边缘信息,我们就可以通过椭圆一般方程和最小二乘法[5]进行拟合得到椭圆的中心点。设图像坐标系为XOY,坐标系原点位于图像左上角。椭圆一般方程公式如下:

3 特征点排序方法

如图1所示为网格圆形标定板的实体图,在标定板中所有的圆可以以矩阵的方式排列。标定板中的圆在标定板图像中均为椭圆,用椭圆中心点的坐标表示每个椭圆在图像中的位置,通过椭圆中心点的坐标,就可以对椭圆中心点进行排序。排序算法分为两步,排序方法中第一步的具体步骤如下;

(1)记椭圆中心点序列为Seq。取序列Seq中前两个点A、B,并计算直线AB的斜率k0。则AB与图像水平坐标轴的夹角为angle0=arctan(k0)。A、B点的位置如图1所示;

(2)计算A点和序列中除A和B以外的其他点之间的直线的斜率,并计算其与图像水平坐标轴的夹角。则angle0和其余的夹角的差构成一个集合,本文定义为角度差集合(角度差的单位以弧度制表示);

(3)通过选取合适的阈值,就可以筛选出标定板上对应行在图像中个椭圆中心点;

(4)从序列Seq中取出该行的所有椭圆中心点。并将该行的点存入Seq1中;

(5)重复以上操作直到序列Seq中的所有行元素均存入Seq1中为止。

通过上述的排序算法就可以确定标定板上对应每一行在图像中的椭圆中心点。第二步再进行行内排序。

4 实验结果与分析

为验证本文特征点排序方法的有效性和高效性,进行如下实验。

采用Basler piA640-210gm像机,配12mm镜头,对同一圆标志标定板分别从三个不同像机位置拍摄了30张图像。图像为8位灰度图像,图像尺寸为640×480,该标定板有280个圆心点(14行×20列),相邻圆心点间横纵两方向距离均为10mm。利用本文特征点排序算法对30张图像中的特征点进行排序后,由于图像本身的畸变的影响,根据不同阈值,排序效果会不同。如表1所示。

从实验结果看,当阈值为0.03和0.05时,实验中的30张图像均能得到正确的排序效果。此外,通过该排序算法对30张图中的椭圆中心点进行排序的平均时间为2.2ms,而利用文献[4]中的算法排序的平均时间为2.7ms。本算法从时间效率上相比文献[4]的算法提高了19%。

5 结语

本文利用基于椭圆方程和最小二乘法的椭圆拟合算法对标定板图像所提取圆心点进行排序,并通过实验取得了较好的实验效果。在本文的实验中,使用工业像机进行图像采集,采集的图像镜头畸变相对较小。在镜头畸变较大的情况下(例如,鱼眼镜头),该算法并不适用。因此,如何让其在畸变较大的场合对特征点进行排序是我们今后需要改进的地方。

参考文献

[1]夏仁波,刘伟军,等.基于圆形标志点的全自动相机标定方法[J].上海:仪器仪表学报,2009,30(2):369-373.

[2]张春燕,邹伟,等.一种鱼眼镜头标定板的设计、检测与排序[J].北京:计算机工程与应用,2014.

[3]苏杭.基于圆形网格点的全自动相机标定法研究[D].武汉: 武汉理工大学,2009.

[4]肖新跃,黎民英.一种基于matlab的特征点提取及排序的简单方法[J].福建:福建电脑,2011.

[5]闫蓓,王斌,等.基于最小二乘法的椭圆拟合改进算法[J].北京:北京航空航天大学学报,2008,34(3):296-298.endprint

摘要:在计算机视觉中,圆形标定板被广泛使用在像机标定中,本文针对圆形标定板图像(图1)在特征点提取后的排序问题,提出了利用两点之间斜率进行比较解决该问题的方法。并在Visual studio 2010坏境下进行编程实现该算法,通过实验证明了该方法的有效性。

关键词:像机标定 特征点排序 提取 OpenCV

中图分类号:TP391 文献标识码:A 文章编号:1007-9416(2014)08-0072-02

1 引言

在传统标定方法中常用的标定板为棋盘格标定板和网格圆形标定板。本文使用圆形标定板作为标定物,利用工业摄像机采集标定板图像并进行特征点提取和排序。文献[1]利用在标定板上建立五个大圆形标志的方法进行圆形标志点匹配;文献[2]针对鱼眼镜头提出了一种根据距离对特征点进行排序的方法;文献[3]通过建立Delaunay规则三角网和计算最优单应性矩阵的方法来对特征点进行排序;文献[4]通过网格计算最短距离的方法对特征点进行排序,本文设计了一个基于opencv的图像特征点的提取与排序方法,通过实验证明了该算法的有效性,并与文献[4]方法进行对比,结果表明本文的方法的高效性。

2 椭圆拟合方法

对于二维图像中的椭圆,如果知道图像中椭圆的边缘信息,我们就可以通过椭圆一般方程和最小二乘法[5]进行拟合得到椭圆的中心点。设图像坐标系为XOY,坐标系原点位于图像左上角。椭圆一般方程公式如下:

3 特征点排序方法

如图1所示为网格圆形标定板的实体图,在标定板中所有的圆可以以矩阵的方式排列。标定板中的圆在标定板图像中均为椭圆,用椭圆中心点的坐标表示每个椭圆在图像中的位置,通过椭圆中心点的坐标,就可以对椭圆中心点进行排序。排序算法分为两步,排序方法中第一步的具体步骤如下;

(1)记椭圆中心点序列为Seq。取序列Seq中前两个点A、B,并计算直线AB的斜率k0。则AB与图像水平坐标轴的夹角为angle0=arctan(k0)。A、B点的位置如图1所示;

(2)计算A点和序列中除A和B以外的其他点之间的直线的斜率,并计算其与图像水平坐标轴的夹角。则angle0和其余的夹角的差构成一个集合,本文定义为角度差集合(角度差的单位以弧度制表示);

(3)通过选取合适的阈值,就可以筛选出标定板上对应行在图像中个椭圆中心点;

(4)从序列Seq中取出该行的所有椭圆中心点。并将该行的点存入Seq1中;

(5)重复以上操作直到序列Seq中的所有行元素均存入Seq1中为止。

通过上述的排序算法就可以确定标定板上对应每一行在图像中的椭圆中心点。第二步再进行行内排序。

4 实验结果与分析

为验证本文特征点排序方法的有效性和高效性,进行如下实验。

采用Basler piA640-210gm像机,配12mm镜头,对同一圆标志标定板分别从三个不同像机位置拍摄了30张图像。图像为8位灰度图像,图像尺寸为640×480,该标定板有280个圆心点(14行×20列),相邻圆心点间横纵两方向距离均为10mm。利用本文特征点排序算法对30张图像中的特征点进行排序后,由于图像本身的畸变的影响,根据不同阈值,排序效果会不同。如表1所示。

从实验结果看,当阈值为0.03和0.05时,实验中的30张图像均能得到正确的排序效果。此外,通过该排序算法对30张图中的椭圆中心点进行排序的平均时间为2.2ms,而利用文献[4]中的算法排序的平均时间为2.7ms。本算法从时间效率上相比文献[4]的算法提高了19%。

5 结语

本文利用基于椭圆方程和最小二乘法的椭圆拟合算法对标定板图像所提取圆心点进行排序,并通过实验取得了较好的实验效果。在本文的实验中,使用工业像机进行图像采集,采集的图像镜头畸变相对较小。在镜头畸变较大的情况下(例如,鱼眼镜头),该算法并不适用。因此,如何让其在畸变较大的场合对特征点进行排序是我们今后需要改进的地方。

参考文献

[1]夏仁波,刘伟军,等.基于圆形标志点的全自动相机标定方法[J].上海:仪器仪表学报,2009,30(2):369-373.

[2]张春燕,邹伟,等.一种鱼眼镜头标定板的设计、检测与排序[J].北京:计算机工程与应用,2014.

[3]苏杭.基于圆形网格点的全自动相机标定法研究[D].武汉: 武汉理工大学,2009.

[4]肖新跃,黎民英.一种基于matlab的特征点提取及排序的简单方法[J].福建:福建电脑,2011.

[5]闫蓓,王斌,等.基于最小二乘法的椭圆拟合改进算法[J].北京:北京航空航天大学学报,2008,34(3):296-298.endprint

猜你喜欢

提取
现场勘查中物证的提取及应用
浅析城市老街巷景观本土设计元素的提取与置换