一种基于机器视觉的透明瓶装液位检测方法与流程

文档序号:11944733阅读:来源:国知局

技术特征:

1.一种基于机器视觉的透明瓶装液位检测方法,其特征在于包括如下步骤:

(1)选取多幅标准液位图像,进行灰度变换转换为灰度图像;

(2)通过模板匹配法获取每幅标准液位灰度图像的参考高度值;

(3)通过一维测量法获取每幅标准液位灰度图像的实际高度值;

(4)对步骤(2)中获取的多个参考高度值求均值并对步骤(3)中获取的多个实际高度值求均值计算标准高度值Hs,如下:

<mrow> <msub> <mi>H</mi> <mi>s</mi> </msub> <mo>=</mo> <mo>|</mo> <msub> <mover> <mi>H</mi> <mo>&OverBar;</mo> </mover> <mi>t</mi> </msub> <mo>-</mo> <mrow> <mo>|</mo> <mrow> <msub> <mover> <mi>H</mi> <mo>&OverBar;</mo> </mover> <mi>r</mi> </msub> <mo>-</mo> <msub> <mover> <mi>H</mi> <mo>&OverBar;</mo> </mover> <mi>t</mi> </msub> </mrow> <mo>|</mo> </mrow> <mo>|</mo> </mrow>

(5)获取待测液位图像,进行灰度变换转换为灰度图像;

(6)对待测液位灰度图像通过一维测量获取其实际高度值Ht,计算待测液体图像与标准液位图像的高度误差Δ:

Δ=|Ht-Hs|

如果Δ小于等于可容忍误差,则判定待测液位图像中的液位合格,否则判定液位不合格。

2.根据权利要求1所述的一种基于机器视觉的透明瓶装液位检测方法,其特征在于:所述模板匹配法获取液位图像的参考高度值包括如下步骤:

(21)在标准液位灰度图像中选择一块包含瓶底的矩形区域,以此作为模板图像;

(22)对模板图像进行sobel滤波,得到模板图像中所有像素点pi=(xi,yi)的梯度Gi=(Gxi,Gyi),将模板图像及其梯度作为匹配模板,其中xi,yi表示模板图像中像素i的行坐标和列坐标;

(23)对待测液位图像进行sobel滤波,得到待测液位图像中所有像素点的梯度G(u,v)=(Gx(u,v),Gy(u,v)),其中u表示待测液位图像的行坐标,v表示待测图像的列坐标;

(24)用匹配模板在待测液位图像上按像素从左到右后再从上到下遍历,对待测液位图像区域与模板图像区域进行相似度匹配,相似度计算如下:

<mrow> <mi>s</mi> <mrow> <mo>(</mo> <mi>u</mi> <mo>,</mo> <mi>v</mi> <mo>)</mo> </mrow> <mo>=</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>/</mo> <mi>n</mi> <mo>)</mo> </mrow> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <mfrac> <mrow> <mo>(</mo> <msub> <mi>Gx</mi> <mi>i</mi> </msub> <mo>.</mo> <mi>G</mi> <mi>x</mi> <mo>(</mo> <mrow> <mi>u</mi> <mo>+</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>,</mo> <mi>v</mi> <mo>+</mo> <msub> <mi>y</mi> <mi>i</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> <mo>+</mo> <mo>(</mo> <msub> <mi>Gy</mi> <mi>i</mi> </msub> <mo>.</mo> <mi>G</mi> <mi>y</mi> <mo>(</mo> <mrow> <mi>u</mi> <mo>+</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>,</mo> <mi>v</mi> <mo>+</mo> <msub> <mi>y</mi> <mi>i</mi> </msub> </mrow> <mo>)</mo> <mo>)</mo> </mrow> <mrow> <msqrt> <mrow> <msup> <msub> <mi>Gx</mi> <mi>i</mi> </msub> <mn>2</mn> </msup> <mo>+</mo> <msup> <msub> <mi>Gy</mi> <mi>i</mi> </msub> <mn>2</mn> </msup> </mrow> </msqrt> <mo>.</mo> <msqrt> <mrow> <mi>G</mi> <mi>x</mi> <msup> <mrow> <mo>(</mo> <mi>u</mi> <mo>+</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>,</mo> <mi>v</mi> <mo>+</mo> <msub> <mi>y</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>+</mo> <mi>G</mi> <mi>y</mi> <msup> <mrow> <mo>(</mo> <mi>u</mi> <mo>+</mo> <msub> <mi>x</mi> <mi>i</mi> </msub> <mo>,</mo> <mi>v</mi> <mo>+</mo> <msub> <mi>y</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msup> </mrow> </msqrt> </mrow> </mfrac> <mo>;</mo> </mrow>

其中n为匹配模板中像素的个数;当相似度大于相似度阈值时,匹配模板的中心坐标的行坐标即为待测液位图像的参考高度值。

3.根据权利要求1所述的一种基于机器视觉的透明瓶装液位检测方法,其特征在于:所述一维测量法获取液位图像的实际高度值包括如下步骤:

(31)在待测液位灰度图像中生成一个包含液位的矩形测量区域,在矩形测量区域中生成一条与液位垂直的剖面线;

(32)计算矩形测量区域内垂直于剖面线上单位像素间隔的灰度平均值,通过双线性插值方式获得剖面线在该点处的灰度值,形成一条投影线,对投影线进行光滑处理;

(33)对光滑处理后的投影线进行求导或阈值判断,确定灰度变化的局部极值所在位置,即为待测液位图像的实际高度值。

4.根据权利要求1所述的一种基于机器视觉的透明瓶装液位检测方法,其特征在于步骤(5)中获取待测液位图像时,如果瓶装液体不为蓝色,设置瓶装液体的背景光源为蓝色。

5.根据权利要求1所述的一种基于机器视觉的透明瓶装液位检测方法,其特征在于步骤(1)为:选取多幅标准液位图像,进行灰度变换转换为灰度图像;对标准液位灰度图像进行滤波去噪和灰度增强。

6.根据权利要求1所述的一种基于机器视觉的透明瓶装液位检测方法,其特征在于步骤(5)为:获取待测液位图像,进行灰度变换转换为灰度图像;对待测液位灰度图像进行滤波去噪和灰度增强。

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