1. 引言
在电解法生产阴极精炼铜的过程中,由于化学工序的失调会导致阴极铜生产质量降低。为保证电解法生产阴极铜过程中的阴极铜质量,需要进行电解过程中生成阴极铜质量的过程监测。目前电解生产阴极铜产品表面质量要求是按照国家标准来实施的 [1] ,阴极铜表面以及边缘不能有高于5 mm以上铇钉,所有铇钉的总面积不得大于板的总面积的10%;如果存在高于5 mm以上的铇钉则该板为不合格,铇钉总面积大于10%小于20%可以进行修整。针对上述要求,尤其是对于铇钉高度的检测,需要提出一种针对1000 mm*1000 mm铜板的高效率、高质量铇钉测量及检测方法,并为铇钉的打磨提供定位信息。具有还原物体三维信息的非接触测量方法有飞行时间法、相位调制法、结构光法及双目、多目立体视觉测量等方法 [2] 。双目立体视觉凭借其视场扩展性高、成本低更适合对电解阴极铜板上铇钉缺陷进行检测。
测量精度是双目立体视觉系统重要指标之一,在应用过程中,特殊场景下的精度需求对结构参数的设计提出了更加严格的要求。而袁红超提出的阴极铜检测系统缺少对检测系统进行精度分析,且精度不高 [3] 。国内外的研究主要体现在特征点提取 [4] 、立体匹配 [5] [6] 、相机标定 [7] 等方面,而在结合视场尺寸的双目立体视觉系统测量精度分析较少。
增加基线距离可以有效提高双目立体系统的重建精度 [8] ,但带来较大的视差搜索范围,严重降低SGBM算法 [9] 构建代价空间的效率。结合重建目标所在空间位置,有效缩小视差搜索范围,提高算法匹配效率。基于ORB方法 [10] 的稀疏关键点匹配提取铜板上的少量特征点,使用匹配特征点的x方向平均视差减小铜板重建的视差搜索范围,使用匹配特征点的y方向平均视差确定系统校正是否稳定,有效提高SGBM算法的匹配效率。
本文为了建立合理的阴极铜板铇钉缺陷的检测系统,首先通过双目立体视觉测量原理分析影响测量精度的结构因素,使用适合当前任务的测量结构参数。然后通过对系统的校正获取到可进行立体匹配的双目图像对,使用稠密的半全局立体匹配方法生成实验场景下的视差图及深度图,并使用设计系统进行实验。
2. 双目立体视觉模型研究
2.1. 双目立体视觉三维重建原理
通过针孔模型分别建立两相机对空间同一物点到像点的投影关系,可以建立两相机采集图像之间的联系,其中涉及空间点和像点在不同坐标系中的表达方式,主要涉及四种坐标系,如图1(a)所示。
图像像素坐标系
:空间物点通过针孔模型在图像传感器上产生投影点,投影点以矩阵形式进行保存,以矩阵第一个元素为坐标原点,以矩阵的行方向为
轴,列方向为
轴,建立二维坐标系,即为图像的像素坐标系,其单位为像素。
图像物理坐标系
:在像素坐标系基础上,将坐标原点平移到相机光轴与图像传感器的交点位置(一般为图像传感器的几何中心,称为像主点),保留原有的坐标系方向,单位为毫米,对应图像传感器上的几何尺寸。
相机坐标系
:以相机光心为坐标原点,保留图像物理坐标系的X,Y轴方向,建立右手坐标系,Z轴对应光轴方向,其单位为毫米,并向
方向长度为焦距的平移。
世界坐标系
:以其为基准描述相机和待测物体的空间位置,与相机坐标系之间存在旋转和平移,根据实际情况进行调整,单位为毫米。
在图1(a)的单目相机图像中已知像点
,则其对应的物点可以是
上任意一点,无法明确求解其空间位置。在图1(b)的双目平行光轴系统中,空间点P在相机坐标系
面上的投影为
,同时成像在左右相机的成像面上,其坐标为
,它们的图像物理坐标分别为
,
。特征点P的图像物理坐标的纵坐标相同,即
,两相机光心之间距离
为基线距离,记为B,则由三角形相似关系可以得到关系如公式(1)。
(1)
(a) 单目针孔模型
(b) 双目针孔模型
Figure 1. Camera pinhole model
图1. 相机针孔模型
2.2. 双目立体视觉重建精度分析
在平行光轴的双目视觉模型下,特征点P在两相机成像面上分别成像,由于离焦模糊,特征点投影的像点在图像坐标中产生计算误差ε,如图2所示,对应P点计算的空间位置位于四边形ABCD内,造成特征点P各坐标的计算误差。其中Z坐标的计算误差最大,本文主要对Z坐标计算误差进行分析。
设
、
分别为像点在左右图像上的x坐标,此时造成的视差误差为
(2)
在视差误差最大的情况下,计算得出的Z坐标为
,结合式(1),此时对Z坐标的最大定位误差如式(3)。定位误差主要与像点提取精度、工作距离、焦距和基线距离相关。其中,像点提取精度与图像分辨率相关,主要是与像元尺寸相关,像元尺寸越小则定位精度越高。工作距离对误差的影响最大,焦距和基线距离影响程度相当。
(3)
当待测视场宽度为W时,即系统的有效水平视场为W,如图3。成像面宽度为
,其中
为图像x方向像素数,
为像元尺寸,在左右相机同时拍摄到目标视场时,存在几何关系,如式(4)。
(4)
同理,当待测视场高度为H时,成像面高度为
,其中
为图像y方向像素数,存在几何关系,如式(5)。
(5)
![](//html.hanspub.org/file/13-2571109x40_hanspub.png?20230907092410747)
Figure 3. Schematic diagram of the system under the limitation of the field of view width
图3. 视场宽度限制下的系统示意图
综上,双目系统工作距离为Z,其在视场宽度及高度限制下应该取较大值。
(6)
这里,取
,采用工业相机参数如表1,绘制在视场限制下的Z坐标计算误差受基线距离和焦距影响的图像,如图4。其中,基线越长Z坐标计算误差越小;与其他分析 [8] 不同的是,焦距越大,Z坐标计算误差越大。主要原因是为覆盖视场范围,小焦距能获得更大视场,从而减小计算误差。另外,基线距离在到达400 mm后对误差的影响趋于平稳。最终,选择焦距4 mm镜头,对应工作基线距离选择为400 mm。
![](Images/Table_Tmp.jpg)
Table 1. Industrial camera parameters
表1. 工业相机参数
![](//html.hanspub.org/file/13-2571109x43_hanspub.png?20230907092410747)
Figure 4. Effect of baseline distance and focal length on depth error
图4. 基线距离与焦距对深度误差影响
3. 立体匹配方法
根据匹配视差数量的多少将立体匹配方法分为稀疏匹配和稠密匹配,使用稠密匹配生成的高分辨率点云数据在缺陷分析中更具有优势。基于代价聚合的半全局匹配SGBM为OpenCV提供的计算稠密视差的方法,其性能较其他方法具有一定优势。SGBM立体匹配主要包含四个步骤:代价计算、代价聚合、视差计算、视差优化。
3.1. SGBM稠密立体匹配
3.1.1. 代价计算
代价计算采用Birchfield提出的复合BT代价 [11] ,根据视差搜索范围,构建尺寸为
的代价空间,
与
分别为图像对中的最大和最小视差,如图5,在像素
处,视差值为d处的代价记为
。
3.1.2. 代价聚合
代价聚合使用动态规划将多个一维路径上的代价进行聚合,即半全局匹配 [9] 的代价聚合,用来替代图像二维全局信息。聚合方式如式(7),其中
为当前像素复合代价的数据项,剩余为平滑项,
为像素点p在r方向上的聚合值。
是对像素点p邻域中与其视差相差1时的较小惩罚参数,适应倾斜或弯曲的表面的视差微小变化;
为视差值相差大于1时增加的较大惩罚参数,保留不连续区域的视差更大的变化;构造差异代价值的同时需要保持代价值不宜过大,减去该路径上上一像素的最小聚合代价。动态规划没有改变代价维度,主要提高像素不同视差之间的差异。
(7)
3.1.3. 视差计算
视差计算采用赢者通吃策略。在视差搜索范围内,像素p最小代价值对应的视差作为其视差值,如图6所示。
3.1.4. 视差优化
视差优化采用唯一性约束、左右一致性检查、亚像素拟合等方法提高视差图质量。在视差计算过程中代价聚合花费时间最长,主要受代价体尺寸的影响,即图像像素数量和视差搜索范围。
3.2. ORB稀疏立体匹配
ORB (Oriented Fast and Rotated Brief)描述子具有计算量小和实时性高的特点适合用于即时定位及地图构建工作。ORB特征点检测基于FAST (Features from Accelerated Segments Test)关键点检测,和BRIEF (Binary Robust Independent Elementary Features)关键点描述子,并进行了改进,基于ORB特征点的图像稀疏点匹配流程如下。
1) FAST特征点检测。如果一个像素与其邻域像素的灰度值差值超过设定的阈值,并且其数量达到数量阈值,则该像素为角点。为避免特征点过于密集,使用非极大值抑制控制特征点数量。
2) 增加尺度不变性。图像采集距离不一致,使采集到图像的尺度存在差异,为增加FAST关键点检测的尺度不变性,并提升关键点检测数量,构建图像金字塔,并逐层检测FAST关键点。
3) 增加旋转不变性。使用灰度质心法确定上面检测到特征点的“主方向”,使描述子不受相机旋转的影响。以特征像素点为圆心,在半径为R的圆形图像区域,沿着两个坐标轴x,y方向的图像矩分别为:
(8)
圆形区域内所有像素的灰度值总和为:
(9)
那么该像素范围的质心为
(10)
则当前像素点的主方向确定为
(11)
4) 生成BRIEF描述子。使用二进制编码的BRIEF描述子,同样以特征点为中心,在尺寸固定的邻域窗口中选择任意两个像素点,并比较其大小。
(12)
重复选择随机点并进行比较,一般为256次,生成二进制编码作为特征点的描述。与基于区域灰度直方图的描述子方法相比,BRIEF提升了描述子生成的速度。上述计算方式使得在大小、方向旋转、灰度亮度变化的图像中,同一特征点仍然具有相似的特征描述子,提高了描述子的鲁棒性。
5) 关键点匹配。比较像对中关键点描述子的汉明距离,最小距离与次最小距离比值小于0.8,则像对特征点匹配成功。
3.3. 改进SGBM立体匹配
阴极铜板三维重建流程如图7,首先使用张正友标定法及离线棋盘格图像对双目系统进行标定,获取标定的系统内外参数;然后在线采集阴极铜板图像,使用计算的内外参数进行单目的畸变矫正和双目系统的极线校正,将系统校正为平行双目立体视觉系统;为保证校正结果的稳定可靠,使用ORB稀疏匹配获取置信度高的少量匹配特征点,计算对应匹配点y坐标差值即y方向视差,y方向视差小于1则符合平行双目立体视觉系统模型,可进行SGBM稠密立体匹配,否则系统需要再次进行标定,此过程可以及时发现系统参数因外部振动或温度变化导致的改变;使用图像稀疏匹配点的x坐标差值,即x方向视差作为铜板中心的视差,即为
。根据铜板所在空间Z坐标的范围和Z坐标分辨率,其视差数量确定为
,一般取64,96,128等值,则像对的最小视差的计算方式为:
(13)
最终视差图中小于最小视差部分无法生成有效视差,在匹配前对左右像对进行裁剪,左图左侧和右图右侧裁剪长度为
的图像,构建代价空间由
减少为
,在视差较大时
可达到近千,而
明显更小,提升了稠密匹配的效率。该方法可以用于宽基线或近距离的双目匹配任务中,以提升双目系统的感知范围和匹配效率。
![](//html.hanspub.org/file/13-2571109x69_hanspub.png?20230907092410747)
Figure 7. 3D reconstruction process of cathode copper plate
图7. 阴极铜板三维重建流程
4. 实验结果与分析
为验证双目立体系统的重建精度,使用提出的系统参数进行实验,如图8。设计多孔工业相机支架,以方便调整基线距离;使用云台连接相机与支架,方便调整相机安装角度;使用三脚架将工业相机连接件支撑在地面上。使用TP-Link千兆交换机拓展计算设备的GigE接口,保证相机图像数据的采集效率,并采用PoE方式为相机供电。使用PC作为相机控制、图像存储及计算设备,主要参数为:16 GB内存,Intel Core i7 CPU,2.6 G主频,Windows 10 64位操作系统。
![](//html.hanspub.org/file/13-2571109x70_hanspub.png?20230907092410747)
Figure 8. Schematic diagram of experimental hardware equipment
图8. 实验硬件设备示意图
在视场尺寸为1000 mm*1000 mm情况下,由式(6)可知工作距离约为900 mm。系统参数标定中,使用9 × 6角点的棋盘格,每格边长40 mm,在工作距离前后拍摄棋盘格图像,基于张正友标定法 [12] ,在Matlab双目标定工具箱进行系统的离线标定,并将结果保存为.xml文件。使用OpenCV视觉库读取标定参数进行单目畸变矫正及双目极线校正,标定结果及校正后系统参数见表2。
使用表2参数对双目系统进行校正,阴极铜板的ORB稀疏点匹配结果如图9,此时y方向平均视差为0.87,x方向平均视差为752.67,符合平行双目立体视觉系统模型,可以对像对进行裁剪。
![](Images/Table_Tmp.jpg)
Table 2. Binocular calibration parameters
表2. 双目标定参数
![](//html.hanspub.org/file/13-2571109x71_hanspub.png?20230907092410747)
Figure 9. Image ORB sparse matching after correction of cathode copper plate image pair
图9. 阴极铜板校正后像对ORB稀疏匹配
对比改进方法与原方法的重建时间差异,使用SGBM方法对校正后像对进行匹配,视差搜索范围设置为0~832,匹配时间为37.29 s。基于ORB稀疏匹配获取的x方向平均视差,在校正像对长度上裁剪688,视差搜索范围为0~128,匹配时间为0.81 s,改进方法能够更快的进行像对匹配任务。
在最佳工作距离900 mm下,在景深范围内对目标进行三维重建,使用玻璃棋盘格放置在待测场景中,其角点距离为18 mm,平面误差小于0.02 mm,远高于设计双目视觉系统重建精度。对棋盘格平面的重建精度进行分析,在重建点云中分割出棋盘格点云,使用随机采样一致法(RANSAC)进行重建棋盘格点云的平面拟合,使用棋盘格点云到拟合平面距离的均方根误差(Root Mean Square Error, RMSE)作为重建精度度量方式。
(15)
在最佳工作距离900 mm附近的实验场景重建效果如图10,生成稠密点云较平滑,图10(d)的点云到拟合平面距离图中,红色蓝色部分距离拟合平面较远,右侧标尺中可以看出,最远距离不超过1 mm。在其他距离重建平面拟合误差如表3,在889.2 mm距离下的平面重建均方根误差为0.27 mm,误差小于该距离下的1个视差对应的深度距离。在近点景深范围重建精度更高,远点景深范围重建精度则更低,与误差随工作距离变化的原理相符。
(a) 校正后左图
(b) 改进SGBM视差图
(c) 视差图生成点云
(d) 棋盘格平面拟合误差图
Figure 10. Checkerboard point cloud planar reconstruction results
图10. 棋盘格点云平面重建效果
![](Images/Table_Tmp.jpg)
Table 3. Root mean square error of plane reconstruction of checkerboard point cloud
表3. 棋盘格点云平面重建均方根误差
采集具有缺陷电解阴极铜板双目图像,同时使用游标卡尺对高于5 mm的10个缺陷对象进行高度测量,作为缺陷高度的真实值。使用本文方法进行阴极铜板三维重建,同时,使用基于深度学习的CREStereo [13] 预训练模型进行三维重建,并对缺陷深度测量结果进行比较。测量结果如表4,SGBM重建的测量平均误差不超过1 mm,视差匹配误差在1个视差左右;而CREStereo对缺陷的重建误差超过3 mm,视差匹配精度较低。缺陷位置三维重建结果分析如图11,对缺陷位置进行平面拟合,图11(d)中深绿色及蓝色部分距离铜板平面较高,为铜板缺陷,改进SGBM方法重建结果保留了铜板粗糙平面的特征,图11(e)中CREStereo方法重建结果则更加平滑。原因在于CREStereo预训练模型的数据来源于仿真数据集,对现实场景的重建精度较差。SGBM方法铜板缺陷外位置的重建结果如图11(b),纹理较差或光源较差位置的视差缺失,通过周围视差进行填充,不够平滑,但可以通过二维图像缺陷检测方法辅助进行缺陷定位。综上,改进SGBM方法更适合用于阴极铜板缺陷的三维重建及缺陷定位任务。
![](Images/Table_Tmp.jpg)
Table 4. Depth error of cathode copper plate defect detection
表4. 阴极铜板缺陷检测深度误差
5. 总结
本文方法基于重建精度分析建立宽基线双目立体重建系统,改进立体匹配方法能够对大视场的阴极铜板进行三维重建,在工作距离为900 mm时,对缺陷的重建精度在1 mm内,使用该三维重建结果可以进一步执行缺陷定位任务。另外,本文提出的改进方法也适用于其他匹配方法或任务中的宽基线或大视差的目标三维重建。对比基于深度学习的三维重建方法与SGBM方法,SGBM在缺乏数据集的现实场景更具有精度优势,使用成本较低。后续工作将通过调整环境光照提高图像信噪比,优化标定方法提高三维重建精度,并行匹配算法以提高检测效率。
NOTES
*通讯作者。