一种基于立体视觉的积尘检测装置及方法与流程

文档序号:14735289发布日期:2018-06-19 20:21阅读:159来源:国知局
一种基于立体视觉的积尘检测装置及方法与流程

本发明涉及中央空调系统风管内积尘检测领域,特别涉及一种基于立体视觉的积尘检测装置及方法。



背景技术:

积尘检测是社会生产中常常会遇到并需要解决的问题,当今社会科技日新月异,人工智能快速发展,机器人技术使得人们生活越来越便利,人们对身体健康与空气质量也越来越重视。公共场所的中央空调通风系统风管内表面积尘对于空气质量有着严重的影响,根据国家《公共场所集中空调通风系统卫生规范》要求,中央空调通风系统风管内表面积尘不得超过20g/m2,超过时则必须对风管内表面进行清洗。

积尘检测一直是在实际生活中很有实际价值的一个项目,不管是传统的风管内表面积尘检测还是现在智能家居的提出,都会用到积尘检测技术。《公共场所集中空调通风系统卫生规范》中提出了对于风管内表面积尘检测的标准方法:称重法。该方法需要人工使用一个粘性的滚轮在一定面积的风管内表面上粘取积尘,然后称取重量变化,计算出单位面积的积尘量。另外,还有基于采样器的积尘检测方法,研究者设计了多种形式的采样器,但都是用累积方式来获得积尘信息。在较大的空间中也可以采用基于光通量的积尘检测方法。总的来说,称重法需要人工操作,很不方便;利用采样器存在采样点少不具代表性,需要清理采样器等缺点;根据通光量的方法也需要使用透明的采样板,具有很大的局限性。



技术实现要素:

本发明的目的在于提供一种基于立体视觉的积尘检测装置及方法,以解决上述技术问题。本发明能适应不同的环境条件下中央空调风管内表面积尘程度测量的需要。

为了实现上述目的,本发明采用如下技术方案:

一种基于立体视觉的积尘检测装置,包括两台相机、一个投影仪和计算机,两台相机和投影仪进连接计算机;投影仪设置于中心,两台相机对称布置于投影仪两侧,两台相机组合形成可变基线双目摄像头;两台相机的视场在被检测面上能够相互重合;所述基于立体视觉的积尘检测装置对于积尘面进行检测时,包括以下步骤:

步骤一、相机标定;

步骤二、图像校正;

步骤三、立体匹配;

步骤四、积尘检测。

进一步的,步骤一中,使用OpenCV 2.4.13的相机标定库来标定可变基线双目摄像头。

进一步的,步骤二具体包括:

2.1)打开两台摄像机和、投影仪和计算机,计算机控制投影仪向被检测面投射白噪声图像,计算机获取两台摄像机所同时拍摄的左右视图;

2.2)计算机读取离线相机标定参数文件,分别获得左右相机内参矩阵和畸变系数矩阵以及两相机之间的旋转矩阵与平移向量;

2.3)使用stereoRctify函数计算出左右视图的旋转矩阵;

2.4)根据相机参数和旋转矩阵分别在左右视图上使用initUndistortRectifyMap函数计算出X方向和Y方向的映射矩阵;

2.5)分别在左右视图上根据得到的映射矩阵使用remap函数得到校正后的左右视图;

2.6)裁剪出校正后的左右视图的有效区域得到最终结果,校正完成。

进一步的,步骤三具体包括:

3.1)图像预处理:

使用彩色图像灰度化以及高斯滤波方法对输入的校正后的左右视图进行预处理;

3.2)匹配代价:

使用像素点灰度差的绝对值和以及梯度信息作为相似度衡量的标准;对于左右视图中的两点p,q具体的匹配代价公式如下:

C(p,q)=(1-ω)*min(CAD,TAD)+ω*min(CGRAD,TGRAD) (1)

式中:

ω——权重系数;

TAD——灰度差阈值;

TGRAD——梯度差阈值;

CAD——灰度差绝对值;

CGRAD——梯度差绝对值。

CAD,CGRAD由下式计算得出:

CAD(p,q)=|Ip-Iq| (2)

其中Ip,Iq分别为p,q两点处的灰度值,表示x方向p点处的梯度值,表示x方向q点处的梯度值,表示y方向p点处的梯度值,表示y方向q点处的梯度值;

3.3)代价聚合:

使用自适应权重窗口,窗口内各像素点的匹配代价的权重与该像素点和中心像素点之间的空间距离和色彩差异有关,自适应权重的匹配代价如下所示:

其中,WR,WT表示左右视图中pc,qc匹配窗口,pc,qc分别为WR,WT的中心;pi,qi为匹配窗口中的像素点,w(p,q)表示两像素点之间的距离权重和色彩差异权重,由下式计算得出:

其中,分别表示p,q两点件色彩空间和距离空间上的欧氏距离,γc,γs两个参数的取值范围均为0~1。

进一步的,步骤三中左右视图上所有对应点计算获得的自适应权重的匹配代价进行最小化处理,获得所有点的视差值,所有点的视差值构成视差图;

步骤四具体包括:

得到视差图后,根据下式计算出每一个像素点处的深度值z

其中,T为两台相机光心的距离;fx为两台相机的焦距,d为视差值;然后计算出深度图得到积尘表面的平均深度,和阈值比较输出判断结果。

一种基于立体视觉的积尘检测方法,包括以下步骤:

步骤一、相机标定:对可变基线双目摄像头进行标定;

步骤二、图像校正:对可变基线双目摄像头所拍左右图像进行校正;

步骤三、立体匹配:

3.1)图像预处理:

使用彩色图像灰度化以及高斯滤波方法对输入的校正后的左右视图进行预处理;

3.2)匹配代价:

使用像素点灰度差的绝对值和以及梯度信息作为相似度衡量的标准;对于左右视图中的两点p,q具体的匹配代价公式如下:

C(p,q)=(1-ω)*min(CAD,TAD)+ω*min(CGRAD,TGRAD) (1)

式中:

ω——权重系数;

TAD——灰度差阈值;

TGRAD——梯度差阈值;

CAD——灰度差绝对值;

CGRAD——梯度差绝对值。

CAD,CGRAD由下式计算得出:

CAD(p,q)=|Ip-Iq| (2)

其中Ip,Iq分别为p,q两点处的灰度值,表示x方向p点处的梯度值,表示x方向q点处的梯度值,表示y方向p点处的梯度值,表示y方向q点处的梯度值;

3.3)代价聚合:

使用自适应权重窗口,窗口内各像素点的匹配代价的权重与该像素点和中心像素点之间的空间距离和色彩差异有关,自适应权重的匹配代价如下所示:

其中,WR,WT表示左右视图中pc,qc匹配窗口,pc,qc分别为WR,WT的中心;pi,qi为匹配窗口中的像素点,w(p,q)表示两像素点之间的距离权重和色彩差异权重,由下式计算得出:

其中,分别表示p,q两点件色彩空间和距离空间上的欧氏距离,γc,γs两个参数的取值范围均为0~1。

步骤四、积尘检测。

进一步的,步骤一中,使用OpenCV 2.4.13的相机标定库来标定可变基线双目摄像头。

进一步的,步骤二具体包括:

2.1)打开两台摄像机和和投影仪,投影仪向被检测面投射白噪声图像,获取两台摄像机所同时拍摄的左右视图;

2.2)读取离线相机标定参数文件,分别获得左右相机内参矩阵和畸变系数矩阵以及两相机之间的旋转矩阵与平移向量;

2.3)使用stereoRctify函数计算出左右视图的旋转矩阵;

2.4)根据相机参数和旋转矩阵分别在左右视图上使用initUndistortRectifyMap函数计算出X方向和Y方向的映射矩阵;

2.5)分别在左右视图上根据得到的映射矩阵使用remap函数得到校正后的左右视图;

2.6)裁剪出校正后的左右视图的有效区域得到最终结果,校正完成。

进一步的,步骤三中左右视图上所有对应点计算获得的自适应权重的匹配代价进行最小化处理,获得所有点的视差值,所有点的视差值构成视差图;

步骤四具体包括:

得到视差图后,根据下式计算出每一个像素点处的深度值z

其中,T为两台相机光心的距离;fx为两台相机的焦距,d为视差值;然后计算出深度图得到积尘表面的平均深度,和阈值比较输出判断结果。

进一步的,将深度图归一化到RGB色彩空间,显示彩虹图。

根据《公共场所集中空调通风系统卫生规范》要求,中央空调通风系统风管内表面积尘不得超过20g/m2。因此,根据获得的积尘厚度对积尘情况进行分级:少量积尘、轻度积尘、严重积尘。少量积尘表示积尘量很少,可以不清理;轻度积尘表示积尘量较少,需要清理;严重积尘表示积尘量很多,必须尽快清理。根据实验确定积尘等级划分的阈值,计算得到积尘表面的平均深度后根据划分的阈值就可以得到积尘表面的分割阈值。为了更加直观的观察深度图像,把深度图按照深度值大小归一化到RGB色彩空间中,以彩色图形式展现实验结果。

相对于现有技术,本发具有以下有益效果:

1)由于采用了非接触式的测量方式,本发明对硬件要求低,一般的相机和简单投影仪(只需投影出白噪声图像)即可满足要求;

2)由于测量结果能够直接计算,不用将样本取出,本发明能够在待测量环境中进行大范围检测;

3)由于采用的组件体积小,本发明能够适应多种类型的测量环境;

4)由于采用的组件功耗低,本发明可以在移动载体(比如移动机器人)上实现对环境的遍历测量。

附图说明

图1是本发明一种基于立体视觉的积尘检测装置的组成图;

图2是积尘检测流程图;

图3是立体匹配算法流程图。

具体实施方式

下面结合附图对本发明做进一步详细描述:

请参阅图1所示,本发明一种基于立体视觉的积尘检测装置,包括两台相机、一个投影仪和计算机,两台相机和投影仪进连接计算机;投影仪设置于中心,两台相机对称布置于投影仪两侧,两台相机组合形成可变基线双目摄像头;两台相机的视场在被检测面(中央空调通风系统风管内表面)上能够相互重合。

请参阅图2所示,本发明一种基于立体视觉的积尘检测方法,包含步骤如下:

步骤一、相机标定;

步骤二、图像校正;

步骤三、立体匹配;

步骤四、积尘检测。

所述步骤一的具体实现步骤为:

在进行积尘检测之前,使用OpenCV 2.4.13的相机标定库来标定可变基线双目摄像头,其使用了张正友相机标定法作为通用相机的标准标定方法,首先制作标准的标定板,为黑白相间的棋盘纸,为了便于计算角点的实际坐标,使得棋盘纸中每一个方格的长宽都相等,为2mm×2mm。理论上,在一定范围内,拍摄的标定图像越多,获得的相机参数越精确,当然标定程序消耗的时间也越长。具体方法步骤如下:

(1)读取一幅标定图像,转换为单通道灰度图。

(2)使用findChessboardConers函数检测标定图中的角点。

(3)使用find4QuadCornerSubpix函数细化角点坐标并存储到数组中。

(4)判断标定图像是否读取完?是前往步骤5);否前往步骤1)。

(5)计算所有角点的实际坐标,存储到数组中。

(6)使用stereoCalibrate函数实现双目相机标定。

(7)将标定结果保存到yml文件中。

其中,使用yml文件来离线存储相机标定参数。yml是一种标记语言,OpenCV提供了yml文件的访问接口,能够方便快捷地实现相机参数矩阵的按名存储与读取。

步骤二的具体实现步骤:

在经过步骤一获取相机标定参数后,步骤二需要对左右视场重合的两台相机所同时拍摄的两幅图像(左右视图)进行校正,实现两幅图像的行对齐,具体步骤如下:

(1)打开两台摄像机和、投影仪和计算机,计算机控制投影仪向被检测面投射白噪声图像,计算机获取两台摄像机所同时拍摄的左右视图。

(2)计算机读取离线相机标定参数文件,分别获得左右相机内参矩阵和畸变系数矩阵以及两相机之间的旋转矩阵与平移向量。

(3)使用stereoRctify函数计算出左右视图的旋转矩阵。

(4)根据相机参数和旋转矩阵分别在左右视图上使用initUndistortRectifyMap函数计算出X方向和Y方向的映射矩阵。

(5)分别在左右视图上根据得到的映射矩阵使用remap函数得到校正后的左右视图。

(6)裁剪出校正后的左右视图的有效区域得到最终结果,校正完成。

步骤三的具体实现步骤:

该过程在步骤二校正后的图像对中找到两幅图像中的对应像素,流程如图3所求,具体步骤如下:

(1)图像预处理

图像预处理过程主要是为了削弱或者消除环境因素等对图像质量的影响以获得较为真实的物体图像,同时也是为了消除一些不相关因素对于匹配过程造成的不利影响,提高立体匹配算法的性能,获得较为准确的视差图。在图像校正过程中,已经消除了图像的畸变,并裁剪出了图像的有效区域,本发明使用彩色图像灰度化以及高斯滤波方法对输入的校正后的左右视图进行预处理。

彩色图像灰度化是将相机拍摄得到的RGB色彩空间的3通道彩色图像转换为单通道灰度图像,使用对RGB图像各通道加权平均的方式获得单通道灰度图像。彩色图像灰度化实际上是对图像数据的降维处理,减少了立体匹配算法在色彩空间上搜索范围,大大提高了立体匹配算法的时间性能。

高斯滤波是一种空域滤波方式,它用滤波掩模所确定的邻域内的加权平均灰度值代替图像中每个像素点的值,这样处理可以减小图像噪声对立体匹配带来的不利影响。

(2)匹配代价

根据本发明所涉及的实际运行场景,积尘表面本来就具有较复杂的纹理信息,为了计算简单提高算法性能,本发明选择使用像素点灰度差的绝对值和以及梯度信息作为相似度衡量的标准。对于左右视图中的两点p,q具体的匹配代价公式如下:

C(p,q)=(1-ω)*min(CAD,TAD)+ω*min(CGRAD,TGRAD) (1)

式中:

ω——权重系数(取值范围0~1);

TAD——灰度差阈值;

TGRAD——梯度差阈值;

CAD——灰度差绝对值;

CGRAD——梯度差绝对值。

CAD,CGRAD由下式计算得出:

CAD(p,q)=|Ip-Iq| (2)

其中Ip,Iq分别为p,q两点处的灰度值,表示x方向p点处的梯度值,表示x方向q点处的梯度值,表示y方向p点处的梯度值,表示y方向q点处的梯度值。

(3)代价聚合

本发明选择使用自适应权重窗口,窗口内各像素点的匹配代价的权重与该像素点和中心像素点之间的空间距离和色彩差异有关,自适应权重的匹配代价如下所示:

其中,WR,WT表示左右视图中pc,qc匹配窗口,pc,qc分别为WR,WT的中心;pi,qi为匹配窗口中的像素点,w(p,q)表示两像素点之间的距离权重和色彩差异权重,由下式计算得出:

其中,分别表示p,q两点件色彩空间和距离空间上的欧氏距离,γc,γs两个参数的取值范围均为0~1。

左右视图上所有对应点计算获得的自适应权重的匹配代价进行最小化处理,获得所有点的视差值,所有点的视差值构成视差图;

步骤四的具体实现:

得到视差图后,根据下式

计算出深度图得到积尘表面的平均深度;其中,T为两台相机光心的距离;fx为两台相机的焦距,d为视差值。具体实现步骤如下:

(1)读取视差图,生成深度矩阵;

(2)根据式(6)计算每一个像素点处的深度值z;

(3)求和计算平均深度,和阈值(根据行业规范确定)比较输出判断结果;

(4)将深度图归一化到RGB色彩空间,显示彩虹图。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1