APP下载

基于三维视觉重建的散料体积高精度测量方法

2024-03-13王康富韩国栋

起重运输机械 2024年2期
关键词:视差输送带三维重建

王康富 张 鹏 韩国栋 陆 瑶

武汉理工大学交通与物流工程学院 武汉 430063

0 引言

在港口散货码头的物料运输过程中,带式输送机具备适应诸如煤炭、粮食和矿石等各种类型和体积的物料运输需求的能力。带式输送机在港口物流系统中起着极为重要的作用,对于提升港口的经济效益具有重要的意义[1,2]。港口通常会根据物料的体积和质量来制定恰当的运输设备和方案以确保物料的安全、高效运输。物料的运输体积则作为评估港口经济效益的重要指标[3],直接影响着港口的运输能力和效率。

带式输送机物料体积的传统测量方法主要有接触式测量法和非接触测量法2 种。接触式测量法需要使用专业仪器直接接触被测物体,通过直接测量物体的尺寸、形状、表面纹理等信息。该方法可以得到较准确的深度信息,但可能会损坏被测物体,并且在一些环境复杂的情况下比较困难[4];非接触测量法通过获得输送带物料表面坐标信息计算物料体积,根据数据集获取原理分为激光测量法[5]和摄影测量法[6]。传统的物料体积测量方法具有局限性,难以到达高精度、低成本的要求[7]。机器视觉技术[8]具有成本低、操作简单、易普及等的优点,双目视觉技术[9]和三维重建技术是机器视觉领域中的研究热点,通过视觉算法构建物体的三维模型,实现对物体形状的直观展示、尺寸以及表面纹理等信息量化计算。本文拟采用双目视觉技术结合三维点云重建技术实现对带式输送机物料的体积高精度测量[10-12]。

针对现有的接触式人工测量方法精度低而非接触式激光测量方法维护成本高、推广难的问题,本文基于Census 变换进行图像的立体匹配,利用三角测距原理计算得到三维坐标信息,可视化后得三维重建的点云模型。最后对点云模型信进行分割,提取目标测量区域,并依据测量区域像素坐标对应的实际三维坐标值进行后续的物料体积计算,以达到提高体积计算精度的目的。

1 双目视觉及Census 变换

1.1 双目视觉技术

如图1 所示,设左摄像机坐标系O-xyz与世界坐标系重合,原点O即为光心,X1Y1Z1为图像坐标系,有效焦距为f1,(u01,v01)为像平面中心;O2-x2y2z2为摄像机坐标系,O2X2Y2为右摄像机视平面上的图像坐标,有效焦距为f2, (u02,v02)为右摄像机像平面中心,摄像机模型均为针孔模型,其变换公式为

图1 双立体视觉模型

根据透视投影变换得二者的坐标转换公式为

设坐标系O-xyz与坐标系O2-x2y2z2的空间位置为

式中:R为2 坐标系的旋转矩阵,T为2 个坐标系的平移向量。

将式(4)齐次化可得

式(2)和式(3)是2个相互独立的方程式,通过式(6)可将其联系起来。可得已知空间任意点P在2 幅图像中的投影坐标P1P2,即可确定P的位置坐标,故可通过以上方程式联立求解点P,空间点与摄像机像素点的对应关系为

则有其三维纵坐标的表达式为

即对一般三维模型有

1.2 Census 变换

Census 变换[13]首先需要定义一个邻域窗口,可以为任意大小,通常选择一个较小的窗口(长为n,宽为m的矩形)。然后对于窗口内的每个像素,将其与窗口中心的像素进行比较。如果该像素的灰度值大于中心像素的灰度值,则将该像素的比特位设为1,否则设置为0。最后将每个像素的比特位串连接起来,生成一个二进制比特串作为该像素的Census 特征。将位字符串的值作为中心像素的Census 变换值(Cs),其表达式为

式中:n′、m′分别为不大于n、m的一半的最大整数,⊗ 为比特位的逐位连接运算。

Census 算法的流程如图2 所示。鉴于Census 算法采用了非参数变换的匹配代价计算方式,具备减少相机增益带来的影响、易于硬件实现等诸多优势。图3a、图3b 为左右原图,基于Census 变换的匹配结果如图3c 所示,将其与Middlebury 标准测试数据集中真实视差图3d 比对得到图像误匹配率。

图2 Census 算法的流程

图3 Census 算法测试视差图与标准视差图

根据Middlebury 标准测试数据集视差图的比对结果,取最为常用的误差阈值δd=1,评价立体匹配算法性能的视差不连续区域(Disc)误匹配率和全部区域(All)误匹配率2 种重要指标的计算结果为5.33%、6.61%。可得其总体匹配精度为93.39%,具有较高匹配精度。

2 体积测量方法

2.1 传统体积计算方法

传统体积计算原理如图4 所示,在图4a 物料表面的点云图上取3 个点组成一个三角形P1P2P3,将该三角形投影至Z=0 平面上,形成图4b 所示的三棱柱。具体计算过程为:首先将三维重建得到的点云模型与Z=0 平面进行投影,形成一个闭合的体。然后将投影后的平面进行三角剖分,得到n个三角形,每个三角形与其在Z=0 平面上的投影点组成一个小三棱柱。可以通过式(12)计算每个小三棱柱的体积,然后采用式(13)将所有小三棱柱的体积相加,可得物料的整体体积。体积计算步骤为:

图4 物料体积计算原理图

1)根据△P1P2P3顶点二维坐标计算其面积sΔi;

2)取△P1P2P3纵坐标的均值作为三棱柱的高,可得三棱柱体积计算公式为

3)将步骤2)中所有小三棱柱的体积求和,可得物料的整体体积。

2.2 本文改进的体积计算方法

由步骤1)可知,传统的体积计算方法采用三角剖分后每一个小三棱柱底面三角形的纵坐标的平均值作为计算每个小三棱柱体积的高,最后将所有小三棱柱的体积求和得到物料的整体体积。可见其实际上是一种估算方法,具有一定误差。

针对上述问题,本文基于传统的投影法[14],将每个像素点的纵坐标值代替传统三角剖分时三角形纵坐标的平均值作为体积计算的高,是一种精确计算方法,避免了物料体积计算中因坐标计算产生的系统误差。

首先计算物料点云模型表面每一个像素点的纵坐标值作为体积计算实际的高,进而计算得到每个像素点的像素体积。然后根据像素当量值计算对应的物料实际体积。最后将所有像素值对应的实际体积求和,即可得物料整体的体积。改进后体积计算方法的实施步骤为:

1)基于视差值对测量区域内的每个像素点进行分类。对于每个视差值,统计出测量区域中具有该视差值的像素点个数Ni,然后计算出该视差值下像素点数占整幅图像素点Q的比值si。该过程表示为

2)物料表面像素点高的计算。双目相机的安装位置到输送带表面的距离记为e,物料表面像素点高di为

式中:zi为像素点对应的深度值。

将统计的像素点按照视差值分为n类,可得具有相同视差值的像素点的高相等。静态的物料和空载输送带的体积可表示为

式中:w为带式输送机的输送带宽度,l为双目相机拍摄输送带的长度。

3 图像的三维重建

根据前文所述基于Census 变换进行视差计算所得的视差信息、特征点的像素坐标和视差信息,计算归一化平面上的坐标对应的空间点在相机坐标系下的坐标。将相机坐标系下的坐标转换为世界坐标系下的坐标,得到场景的三维点云信息,对这些数据进行可视化,生成点云模型。测量区域图像中各点三维坐标信息的计算过程为:

1)深度信息计算

根据三角测量原理,可得视差信息和深度信息之间的关系

2)三维信息计算

设双目相机采集的左右图像中P1(u1,v1)和P2(u2,v2)2 点,利用重投影法的方法将相机坐标系下的坐标转换为世界坐标系下的坐标。则任意点P(X,Y,Z)的三维坐标通过式计算可得

式中:fx、fy为双目相机参数,B为相机的基线距离,f为相机焦距,d为视差,Z为深度。

若在双目相机拍摄的左右图片中已知2 个对应的点、标定好的双目相机参数、基线距离和视差,即可计算出所有点的三维信息。

针对计算得到三维信息存在点云不连续和存在噪声会导致可视化生成的三维点云模型存在较大的误差问题,本文对物料点云三维模型的获取流程进行了优化。其具体过程为:1)三维坐标信息的计算;2)测量区域点云分割[15];3)三维坐标信息的批量降噪;4)点云网格化;5)点云三维重建。流程如图5 所示。

图5 三维重建流程

在物料体积计算中,利用点云分割的思想提取目标区域。设置参考体积数值,即空载场景体积,利用满载体积减去空载体积,进而求取堆料的体积。物料体积计算流程如图6 所示。

图6 物料体积测量法

4 试验及结果分析

试验系统包括双目摄像机、PC 电脑、3DMVS 软件,电子秤,实验用带式输送机。选取煤料一般粒度≤50 mm 的精煤作为试验物料,其密度ρ=1.3 g/cm3。搭建如图7 所示的带式输送机物料体积计算试验实验平台。

图7 物料体积计算试验平台

为了验证改进以后的体积计算方法的可行性设计了试验。将2 个双目摄像机分别安装在带式输送机转载点的上层输送带与下层输送带的上方,采集试验用的2 组上层空载输送带,记为空载场景1、2,左右图像如图8a、图8b 所示,2 组下层空载输送带记为空载场景3、4,左右图像如图8c、图8d 所示。

图8 体积计算试验空载场景初始图

在上述试验用的空载输送带相对应的上层输送带表面设置2 个煤堆测量场景并记为满载场景A、B;下层输送带设置2 个煤堆测量场景记为满载场景C、D,共4 个测量场景,如见图9 所示。

图9 体积计算试验满载场景初始图

在试验前,通过人工称重得4 个煤堆的质量作为前置条件,分别为6 700 g、7 000 g、7 300 g、7 600 g。将图7 采集的图像数据集进行预处理,立体匹配,点云可视化可得上层输送带与下层输送带的4 个空载场景三维点云模型如图10 所示,4 个满载场景的三维点云模型如图11 所示。

图10 可视化后空载点云模型

图11 可视化后满载点云模型

点云分割处理,三维重建,得到上层输送带与下层输送带的4 个空载场景三维重建模型如图12 所示,4个满载场景的三维重建结果如图13 所示。由图12、图13 可得,在进行点云批量降噪处理和点云分割后,目标测量区域更加清晰明确,大大减少了冗余的点云信息,提高了后续三维重建的模型的准确性。

图12 空载三维重建点云模型

图13 满载三维重建点云模型

根据三维重建点云模型并结合式(18)可得煤堆的三维坐标,部分坐标如表1 所示。采用前述传统的体积测量方法和改进后的体积测量方法分别三维坐标进行体积计算。

表1 三维坐标计算结果

表2 空载体积测量结果 cm3

再根据V物料=V满载-V空载,计算得到带式输送机满载时物料的实际体积,如表3 所示,为不同场景下,体积计算方法改进前后煤料体积计算结果。根据质量=密度×体积,可计算得到4个场景下改进前后煤料的质量。

表3 满载体积测量结果 cm3

如表4 所示质量为4 个场景A、B、C、D 使用不同体积计算方法得到的结果,其中改进前的绝对误差分别为596.31 g、616.06 g、766.57 g、699.23 g;改进后本文的绝对误差为301.52 g、273.48 g、313.95 g、-319.19 g。

表4 4 个场景质量测量结果和相对误差

由此可得,改进后的体积计算方法减小了因传统的估算方法带来的计算误差,使计算结果更加准确。将绝对误差与人工称重得实际煤料质量对比,可计算得其相对误差如表4 所示。

表4 所示4 个不同场景下人工称重、改进前和本文测量结果的相对误差,数据分别为带式输送机转载点上层输送带与下层输送带的各2 组双目满载图像。其中,改进前场景A、场景B、场景C 和场景D 的相对误差分别为8.9%、8.8%、10.5%和9.2%。改进后场景A、场景B、场景C 和场景D 的绝对误差分别为4.5%、3.9%、4.3%、4.2%。结果显示,改进前的相对误差均在8%以上,改进后的相对误差均低于5%,具有更高的精度。

5 结语

1)为了解决传统表面剖分体积测量法精度不足,激光测量法维护成本高且推广难的问题,本文基于双目立体视觉技术和三维重建技术,将每一个像素点的纵坐标值代替传统三角剖分时三角形纵坐标的平均值作为体积计算的高,实现了带式输送机物料的非接触体积高精度测量。体积测量相对误差在5%以下,可见该改进计算方法具有一定的可行性和实用价值。

2)为了解决带式输送机物料体积计算时点云模型存在噪声、三维信息存在因点云不连续而导致可视化生成的三维点云模型存在较大误差的问题,本文分割了测量区域的三维点云模型,对三维坐标信息进行了批量降噪,并将点云网格化,提升了后续三维重建模型的准确性。

猜你喜欢

视差输送带三维重建
基于自适应窗的立体相机视差图优化方法研究
基于Mimics的CT三维重建应用分析
基于梯度域引导滤波的视差精炼迭代算法
基于关系图的无人机影像三维重建
基于分割树的视差图修复算法研究
三维重建结合3D打印技术在腔镜甲状腺手术中的临床应用
基于漂流提升区输送带优化改进
立体视差对瞳孔直径影响的研究
改性碳纳米管在矿用阻燃输送带覆盖胶中的应用
多排螺旋CT三维重建在颌面部美容中的应用