1.一种实时估计法兰位姿的方法,其特征在于:包括以下步骤:S1:作业过程中相机实时拍摄图像;
S2:使用YOLO神经网络算法预先训练用于识别法兰的检测模型,使用训练后的检测模型识别拍摄图像中的法兰和法兰螺栓孔,得到法兰图像和法兰螺栓孔图像;
S3:结合螺栓孔图像和PNP算法,计算得到首帧法兰的初始法兰位姿T0;
S4:裁剪第b帧拍摄图像中的法兰图像;
S5:使用Canny边缘检测算法检测裁剪后的法兰图像中的法兰边缘,得到原始法兰边缘图像;
S6:将原始法兰边缘图像的坐标点集转换到第b‑1帧法兰的法兰位姿Tb‑1所在的XY平面的平面点云;
S7:采用一致性检验算法对平面点云进行圆拟合,得到法兰圆心的坐标;
S8:依据法兰半径筛选目标点云构成法兰边缘点集;
S9:将法兰边缘点集反投影到步骤S1中的拍摄图像中得到目标法兰边缘图像的点集;
S10:使用最小二乘法对目标法兰边缘图像的点集进行椭圆拟合,得到具有二义性的模糊法兰位姿;
S11:消除模糊法兰位姿的二义性,得到当前第b帧法兰的真实法兰位姿Tb;
S12:重复步骤S6到S11,实时检测法兰的真实法兰位姿,直至作业结束。
2.根据权利要求1所述的实时估计法兰位姿的方法,其特征在于:步骤S3中计算首帧法兰的初始法兰位姿T0的步骤如下:裁剪首帧拍摄图像中的法兰螺栓孔图像;
使用Canny边缘检测算法检测每个法兰螺栓孔图像中的法兰螺栓孔边缘;
对边缘检测后的法兰螺栓孔图像进行Hough圆拟合,计算得到法兰螺栓孔的中心点的图像坐标;
在法兰中心点建立世界坐标系,依据预先实际测量获取的法兰螺栓孔与法兰中心点的数据,获得法兰螺栓孔中心点在世界坐标系上的实际坐标;
基于中心点的图像坐标计算所有法兰螺栓孔与法兰YOLO框左上角坐标的距离,将距离最小值对应的法兰螺栓孔的中心记为Center,计算其余法兰螺栓孔中心点与法兰YOLO框左上角的极角,并对极角从大到小进行排序,依据排序判断所有法兰螺栓孔在世界坐标系内的所属象限;
使用PNP算法结合实际坐标、所属象限以及图像坐标计算得到首帧法兰的初始法兰位姿T0。
3.根据权利要求1所述的实时估计法兰位姿的方法,其特征在于:步骤S6中转换得到平面点云的步骤如下:获取原始法兰边缘图像的坐标点集Q;
将坐标点集Q映射到相机坐标系上,得到映射在相机坐标系上的三维点集Pc;
将三维点集Pc变换为法兰位姿Tb‑1所在的XY平面的平面点云。
4.根据权利要求3所述的实时估计法兰位姿的方法,其特征在于:坐标点集Q转换为三维点集Pc的公式为:,
,
Q与Pc之间满足 , ,
其中R指实数集, 用于描述二维点坐标, 用于描述三维点坐标,K指相机内参矩阵,()指步骤S1中的拍摄图像的平面的主点,( )指相机的焦距。
5.根据权利要求4所述的实时估计法兰位姿的方法,其特征在于:将三维点集Pc变换为法兰位姿Tb‑1所在的XY平面的平面点云的变换方式如下:设三维点集Pc转换到法兰位姿Tb‑1坐标下的三维点集为,
三维点集Pc与三维点集Pf的转换关系式为,
将三维点集Pf投影到法兰位姿Tb‑1所在的XY平面上,消除Z轴影响,得到投影后的平面点云为 。
6.根据权利要求5所述的实时估计法兰位姿的方法,其特征在于:步骤S8中得到法兰边缘点集的步骤如下:遍历平面点云的所有点云,计算所有点云到法兰圆心的距离,依据法兰半径设置距离阈值,筛选符合阈值条件的点云构成中间点集,并将其Z轴上的z分量重新赋回到中间点集,得到法兰边缘点集 。
7.根据权利要求6所述的实时估计法兰位姿的方法,其特征在于:步骤S9中得到目标法兰边缘图像的点集的公式如下:目标法兰边缘图像的点集为 ,
且Pw与 满足 。
8.根据权利要求7所述的实时估计法兰位姿的方法,其特征在于:步骤S10中得到具有二义性的模糊法兰位姿的步骤如下:法兰边缘图像的点由拍摄图像的坐标( )投影到相机坐标系的坐标为(X,Y,Z),且二者的满足如下关系式:,
用最小二乘法对目标法兰边缘图像的点集 进行椭圆拟合,得到椭圆一般式,,,
综合上式可得
=0,
该式为相机光心与目标法兰边缘形成的椭圆锥的表达式,拍摄图像上的由法兰边缘投影得到的椭圆为椭圆锥的一个横截面;
依据椭圆一般式求解空间圆位姿,得知存在实对称矩阵P满足,
,
存在正交矩阵 可将实对称矩阵 对角化,即: );
相机坐标系下的点(X,Y,Z)经过P矩阵进行旋转后变换为世界坐标系下的点( , , ),变换公式如下:,
由上式可得标准椭圆锥一般式: =0;
该横截面空间圆圆心和法向量的计算公式如下:,
,
,
,
其中r为法兰半径,t1、t2为法兰面世界坐标, 为法兰面法向量, 为矩阵P的特征值,b指第b帧图像。
9.根据权利要求8所述的实时估计法兰位姿的方法,其特征在于:步骤S11中消除二义性的步骤如下:计算 与Nb‑1的夹角 ,将夹角最小值所对应的法兰位姿作为真实法兰位姿Tb,其中Nb‑1指Tb‑1在XY平面对应的法向量,,
。
10.一种实时估计法兰位姿的系统,其特征在于:包括,相机拍摄模块,用于实时拍摄图像;
检测模块,用于识别拍摄图像中的法兰和法兰螺栓孔,并获得法兰图像和法兰螺栓孔图像;
首帧法兰位姿识别定位模块,基于首帧的螺栓孔图像和PNP算法,计算得到首帧法兰的初始法兰位姿T0;
非首帧法兰位姿识别定位模块,基于法兰图像和初始法兰位姿T0,计算得到第b帧法兰的真实法兰位姿Tb,实时检测法兰的真实位姿;其中非首帧法兰位姿识别定位模块包括以下子模块:采集子模块,用于裁剪第b帧拍摄图像中的法兰图像;
边缘检测子模块,使用Canny边缘检测算法检测裁剪后的法兰图像中的法兰边缘,得到原始法兰边缘图像;
平面点云子模块,用于获取将原始法兰边缘图像的坐标点集转换到第b‑1帧法兰的法兰位姿Tb‑1所在的XY平面的平面点云;
正圆拟合子模块,采用一致性检验算法对平面点云进行圆拟合,得到法兰圆心的坐标;
筛选子模块,依据法兰半径筛选目标点云构成法兰边缘点集;
反投影子模块,用于将法兰边缘点集反投影到相机拍摄模块的拍摄图像中得到目标法兰边缘图像的点集;
椭圆拟合子模块,使用最小二乘法对目标法兰边缘图像的点集进行椭圆拟合,得到具有二义性的模糊法兰位姿;
消除二义性模块,用于消除模糊法兰位姿的二义性,得到当前第b帧法兰的真实法兰位姿Tb。