1.一种管道螺纹自动测量装置,包括底板(2)和支架(3),所述的底板(2)安装于支架(3)的底部;其特征在于:还包括伺服电机(4)、工业相机(5)、滑块(6)和激光器(8);所述的工业相机(5)通过滑块(6)安装在支架(3)上;所述的伺服电机(4)设置多个,其中,2个伺服电机(4)控制滑块(6)移动,驱动滑块(6)带动工业相机(5)沿水平方向运动;2个伺服电机(4)设置在滑块(6)上,控制工业相机(5)沿竖直方向运动;所述的激光器(8)一端固定于支架(3)上,另一端为移动端,由一伺服电机(4)驱动。
2.根据权利要求1所述的一种管道螺纹自动测量装置,其特征在于:所述的滑块(6)安装在滑台(7)上,该滑台(7)设置在支架(3)上,滑台(7)与伺服电机(4)连接,由伺服电机(4)驱动滑台(7)在支架(3)上移动。
3.根据权利要求1或2所述的一种管道螺纹自动测量装置,其特征在于:所有伺服电机(4)均与控制面板(9)连接,由控制面板(9)控制伺服电机(4)进行动作;所述的控制面板(9)与计算机(10)连接。
4.利用权利要求1-3任一项所述的装置进行管道螺纹自动测量的方法,其特征在于,其步骤为:步骤一、对通过相机获得的图像进行预处理,对图像进行滤波、灰度转化、锐化处理,并对图像进行阈值变换,将图像与背景分开;
步骤二、在图片预处理的基础上,对图中螺纹进行边缘粗提取;
步骤三、对提取的图像进行8邻接处理和细化处理;
步骤四、在提取出螺纹边缘的图像上进行螺纹螺距与螺高的提取;
步骤五、利用图像拼接与图像融合算法将不同区域内提取的螺纹螺距与螺高拼接融合,获得整个螺纹的长度信息。
5.根据权利要求4所述一种管道螺纹自动测量方法,其特征在于:所述的步骤一中,先利用式(3)对图像进行中值滤波,g(x,y)=med{f(x-k,y-l),(k,l∈W)} (3)
式中,f(x,y),g(x,y)分别为原始图像和滤波后图像,W为输入的二维模板,k、l为模板的二维数据序列;
再利用式(4)将彩色图像转化为灰度图像,
Gray=R*0.299+G*0.587+B*0.114 (4)
其中,R、G、B为彩色图像红、绿、蓝三个颜色通道的像素值;
为使图像清晰,利用Sobel算子对图像进行锐化,计算过程如式(5)、(6)、(7),Gx=[g(x+1,y-1)+2*g(x+1,y)+g(x+1,y+1)]-[g(x-1,y-1)+2*g(x-1,y)+g(x-1,y+1)] (5)Gy=[g(x-1,y-1)+2*g(x,y-1)+g(x+1,y-1)]-[g(x-1,y+1)+2*g(x,y+1)+g(x+1,y+1)] (6)式中,Gx,Gy分别表示为横向及纵向边缘检测的图像灰度值,g(a,b)表示图像(a,b)点的灰度值,G为图像在每一点上的灰度值的近似梯度;
最后设定合适的阈值,对图像进行阈值变换,将图像与背景分开;对于图像G(x,y),前景和背景的分割阈值为T,属于前景的像素点数占整幅图像的比例为ω1,其平均灰度μ1;背景像素点数占整幅图像的比例为ω2,其平均灰度为μ2;图像的总平均灰度为μ,类间方差为σ,图像的大小为M×N,图像中像素的灰度值小于阈值T的像素个数记作N1,像素灰度大于阈值T的像素个数记作N2,通过式(8)、(9)、(10)、(11)计算得到类间方差σ,N1+N2=M×N,ω1+ω2=1 (9)μ=μ1×ω1+ω2×ω2,σ=ω1×(μ-μ1)2+ω2×(μ-μ2)2 (10)σ=ω1×ω2×(μ1-μ2)2 (11)通过式(11),通过遍历像素值的方法得到不同的类间方差,由这些类间方差比较出类间方差的最大值,最大值对应的灰度就是最佳阈值T。
6.根据权利要求5所述一种管道螺纹自动测量方法,其特征在于:所述的步骤二中,利用Canny算子对图像进行边缘检测,先利用高斯滤波器进行平滑滤波,抑制图像噪声,然后使用非极值抑制算法,细化平滑后的图像梯度幅值矩阵,寻找图像中的可能边缘点,最后利用双门限检测通过双阈值递归寻找图像边缘点,实现图像中螺纹边缘粗提取。
7.根据权利要求6所述一种管道螺纹自动测量方法,其特征在于:所述的步骤三中,采用8邻接处理,判断提取的图像中某一像素周围八个像素是否连通;同时使用“Zhang并行快速细化算法”对经8邻接处理过的图像的轮廓曲线进行细化处理。
8.根据权利要求7所述一种管道螺纹自动测量方法,其特征在于:所述的步骤四中,对于螺距的提取,利用相邻两顶径之间的距离计算螺距,采用遍历像素值的方法,寻找像素值为255的点并保存其坐标值,该点为第一个顶径点;再次同样的方法寻找第二个顶径点,并保存其坐标值;第二次检测到像素值为255对应的坐标减去第一次检测到像素值为255对应的坐标即为螺距;
对于螺高的提取,利用螺纹大径与小径进行计算,具体步骤如下:
S1、将螺纹的边界划分为左边界、右边界,并分别储存左右边界集;
S2、将所有左右螺纹边界点求平均值作为中心点,也作为螺纹边界的原点,并对边界进行中值滤波,得到滤波后的边界点;
S3、采用最小二乘法拟合所有顶径点为顶径直线,拟合所有底径点为底径直线,顶径和底径直线的中线确定为螺纹边界的拟合直线;
S4、分别计算平行于左边界拟合直线且过中心点的直线,和平行于右边界拟合直线且过中心点的直线;
S5、计算左边界各点到中心点的直线的距离,找出其中的极大值、极小值,保存极大值索引值的与极小值索引值;右边界做相同处理;
S6、通过极值点的索引值找到大径和小径在滤波前所对应的点坐标,储存左边界大径、小径对应的坐标点;右边界的处理相同;
S7、通过大径对应的坐标点,拟合出左边界所有大径点的直线,右边界处理同左边;计算左边界大径对应点到右边界大径坐标点对应的拟合直线的距离,得到左边界大径各点的直径;计算右边界大径点到左边界大径的坐标点对应的拟合直线的距离,得到右边界大径各点的直径值;取平均值得到平均大径ML;用同样的方式获取平均小径MS,则螺高Height为Height=(ML-MS)×0.5 (12)。
9.根据权利要求8所述一种管道螺纹自动测量方法,其特征在于:所述的步骤五中,利用SURF算法实现图像拼接,针对图像像素G(x,y),首先求出第一帧图像和后一帧图像上各自图像中每一个像素点的海森矩阵H,选用二阶标准高斯函数作为滤波器,计算出H矩阵的三个矩阵元素L_xx、L_xy、L_yy,进而计算出H矩阵:高斯滤波后,H矩阵的计算如下,
L(x,t)=S(t)·G(x,t) (16)
其中,L(x,t)是一幅图像在不同解析度下的表示,S(t)为高斯核,高斯核的计算公式如式(17),其中,s(x)为高斯函数,t为高斯方差;
将经过海森矩阵处理的每一个像素点与其同一幅图像中的周围的像素点进行比较,利用H矩阵的判别式判定该店是否为最大值或最小值,是则保留作为特征点,反之剔除;H矩阵的判别式为得到两幅图像各自特征点集后,利用最近邻搜索算法进行图像的配准;首先利用SURF算法提取出的特征点,建立KD-tree,然后在待匹配图像上选取一点K,采用BBF算法遍历KD-tree,分别按照式(18)计算K与该KD-tree中每个点的欧式距离,找到与点K的欧式距离最小的两个关键点并且记录欧式距离的值;最后按照式(19)计算最小欧氏距离与次小欧式距离的比值,若该值小于阈值T,则认为欧氏距离最小的那个点与点K相匹配,反之不匹配;
其中,N代表特征向量的维数,Dmin1、Dmin2分别代表KD-tree中的点距离K的最小值和次小值;
找到匹配对后,利用findHomography函数求得变换矩阵M,即完成图像拼接;变换矩阵M为其中参数m0~m7由findHomography函数处理得到;之后使用随机抽样一致算法剔除可能造成错误匹配的点对。
10.根据权利要求9所述一种管道螺纹自动测量方法,其特征在于:所述的步骤五中,在进行图像融合时,使用加权融合对图像进行融合,融合图像I在点(x,y)处的像素值可由式(21)求得:其中,I1、I2分别为参考图像和待拼接图像,R1、R3分别代表参考图像和待拼接图像中未参与配准的区域,R2代表参与配准的区域,即图像的重合区域; 分别代表参考图像和待拼接图像中重合部分对应像素的权值,并且有