CN106815851B - 一种基于视觉测量的栅格圆形油位计自动读数方法 - Google Patents
一种基于视觉测量的栅格圆形油位计自动读数方法 Download PDFInfo
- Publication number
- CN106815851B CN106815851B CN201710059293.4A CN201710059293A CN106815851B CN 106815851 B CN106815851 B CN 106815851B CN 201710059293 A CN201710059293 A CN 201710059293A CN 106815851 B CN106815851 B CN 106815851B
- Authority
- CN
- China
- Prior art keywords
- image
- value
- grid
- pixel
- pixels
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000005259 measurement Methods 0.000 title claims abstract description 15
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 17
- 239000003921 oil Substances 0.000 claims abstract description 16
- 230000000877 morphologic effect Effects 0.000 claims description 21
- 238000003708 edge detection Methods 0.000 claims description 19
- 230000011218 segmentation Effects 0.000 claims description 19
- 230000002146 bilateral effect Effects 0.000 claims description 15
- 238000013507 mapping Methods 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 12
- 230000000007 visual effect Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 9
- 230000001629 suppression Effects 0.000 claims description 9
- 239000007788 liquid Substances 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 7
- 230000010339 dilation Effects 0.000 claims description 6
- 230000003628 erosive effect Effects 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 4
- 239000010749 BS 2869 Class C1 Substances 0.000 claims description 3
- 239000010750 BS 2869 Class C2 Substances 0.000 claims description 3
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 claims description 3
- 230000003044 adaptive effect Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000001514 detection method Methods 0.000 claims description 3
- 230000009977 dual effect Effects 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 claims description 3
- 238000009499 grossing Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 239000000295 fuel oil Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 5
- 238000005286 illumination Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000002054 transplantation Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了一种基于视觉测量的栅格圆形油位计自动读数方法,属于机器视觉工业应用中的智能仪表读数领域。本发明重点使用最大极值稳定区域(Maximally stable extremal regions,MSER)匹配算法定位栅格,并使用定向搜索强边缘方法来确定最长栅格,并通过最长栅格的长度可以计算剩余油量的百分比。通过对多幅图像测试表明,该方法较于其他智能仪表读数方法,算法抓住了该类仪表的主要特征——栅格,栅格在面对图像旋转、模糊等干扰时,依然有很好的显著性,所以本发明提出的方法具有较好鲁棒性。
Description
技术领域
一种基于视觉测量的栅格圆形油位计自动读数方法,用于精确读数栅格圆形油位计,属于机器视觉领域。
背景技术
工业仪表自动读数技术主要利用模式识别来提取特定的仪表、量程和读数位置,达到读数的目的。相比于人工读数,其优点有:24小时不间断读数,节省人工劳动力,稳定性高,效率高。因此在工业领域应用中,智能仪表读书有很高的研究价值。
衡量工业仪表自动读数算法性能主要体现在对仪表定位、读数提取和图像复原、矫正的能力上。现目前,老式的仪表种类繁多,常见的有指针式,此外还有以液体液面高低为读数方式的仪表和以浮标的高低为读数方式的仪表,不同的仪表有不同的量程范围和读数方式。而成像过程中,旋转,光照变化和遮挡是图像主要的干扰,也是图像复原的主要难点。
目前,常用的仪表自动读数算法有Hough变换、加权平均法、数学形态学、边缘检测、阈值分割、主动轮廓法等一系列算法。由于成像过程中,太多背景信息进入了图像,在加上光照不均,遮挡等影响,导致对仪表读数,指针等关键信息难以很好得提取。这些方法在一定程度上可以完成对仪表的智能读数,但是对于复杂背景,仪表的多样性的处理能力较差。
发明内容
本发明针对上述不足之处提供了一种基于视觉测量的栅格圆形油位计自动读数方法,解决现有技术中由于成像过程,复杂背景进入了图像,再加上图像受光照不均,遮挡等影响,导致不能准备的进行仪表的自动计数。
为了实现上述目的,本发明采用的技术方案如下:
一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,包括以下步骤:
步骤1:读入初始图像f(x,y),对初始图像f(x,y)去除噪声和增强处理,得到被去除噪声和增强后的图像fenhance(x,y);
步骤2:对被去除噪声和增强后的图像fenhance(x,y)进行清晰度评价,如果清晰度低的图像fenhance(x,y)返回步骤1进行增强处理,否则令清晰度高的图像fenhance(x,y)为仪表图像f2(x,y);
步骤3:将仪表图像f2(x,y)取反,得到镜像图像finvert(x,y),用最大极值稳定区域(Maximally Stable Extremal Regions,MSER)匹配算法提取仪表图像f2(x,y)和镜像图像finvert(x,y)的感兴趣区域,分别得到分割图像fMSER+(x,y)和分割图像fMSER-(x,y);
步骤4:在分割图像fMSER+(x,y)和分割图像fMSER-(x,y)的基础上,先利用位与操作将分割图像fMSER+(x,y)和分割图像fMSER-(x,y)融合成一幅结果图像fbitand(x,y),再将结果图像fbitand(x,y)进行形态学滤波将栅格图像f3(x,y)提取出来;
步骤5:用最佳阈值分割将栅格图像f3(x,y)的栅格分割为前景,得到栅格分割图像f4(x,y);
步骤6:将栅格分割图像f4(x,y)中纵向长度最长的栅格Ly max(x,y)提取出来,最长的栅格Ly max(x,y)的纵坐标最小值为量程的最大值,纵坐标的最大值为液面的位置;
步骤7:沿着纵向方向,从最长的栅格Ly max(x,y)纵坐标最大值向栅格分割图像f4(x,y)的底部搜索强边缘,搜索到的强边缘为量程起始位置,即可得到量程大小,完成读数;
进一步,所述步骤1的具体步骤如下:
步骤11:读取初始图像f(x,y);
步骤12:将初始图像f(x,y)转换成灰度图像fgray(x,y),其中灰度图像fgray(x,y)的每个像素点的灰度值的公式如下:
其中,表示灰度图像fgray(x,y)每个像素点的灰度值,Rf(x,y)表示初始图像f(x,y)红色通道每个像素点的像素值;Gf(x,y)表示初始图像f(x,y)绿色通道每个像素点的像素值;Bf(x,y)表示初始图像f(x,y)蓝色通道每个像素点的像素值,(x,y)表示初始图像的每个像素点;
步骤13:对灰度图像fgray(x,y)进行双边滤波得到去除噪声后的图像fdenosie(x,y),双边滤波公式如下:
其中,fgray(k,l)是灰度图像,即灰度图像fgray(x,y),fdenosie(x,y)是去除噪声之后的图像,(k,l)是灰度图像的像素坐标,(x,y)是去除噪声后的图像的像素坐标,ω(x,y,k,l)是双边滤波的加权系数,而加权系数ω(x,y,k,l)取决于定义域核和值域核的乘积,公式如下:
其中,是定义域核,表示定义域核的方差,是值域核,表示值域核的方差;
步骤14:对进行了双边滤波的图像fdenosie(x,y)进行直方图规定化,得到增强后的图像fenhance(x,y),直方图规定化的具体步骤如下:
步骤141:计算去除噪声后的图像fdenosie(x,y)的直方图pr(r),其中r表示灰度值,并用pr(r)寻找下式的直方图均衡变换:
其中,sk是均衡化之后的像素值为k的灰度值,L是图像中的灰度级数量,即对8比特图像是256,MN是均衡化之后的图像中像素的总数,M是均衡化之后的图像每一行的像素个数,N是表示均衡化之后的图像每一列的像素个数,nj是进行了双边滤波的图像fdenosie(x,y)中灰度为j的像素个数,然后,把sk四舍五入到范围[0,L-1]内的整数;
步骤142:按照下式对q=0,1,2,…,L-1计算变换函数G(zq)所有的值:
其中,zi表示被映射之后的像素值为i的灰度值,pz(zi)是规定的直方图中像素值为zi的像素占规定的直方图像素的百分比,q表示从0累加到zq的像素个数,变换函数G(zq)表示规定的直方图进行均衡化之后的像素值,把G(zq)的值四舍五入为范围[0,L-1]内的整数,将G(zq)的值存储在一个表中;
步骤143:对每一个值sk,使用步骤142存储的G(zq)值寻找响应的zq值,以使G(zq)最接近sk,并存储从sk到zq的映射,当满足给定sk的zq值多于一个时,即映射不唯一时,选择最小的值;
步骤144:首先对输入去除噪声后的图像fdenosie(x,y)进行和步骤141一样的均衡化处理,然后使用步骤143找到的映射把去除噪声后的图像fdenosie(x,y)中的每个均衡后的像素值sk映射为直方图规定化后的图像中的相应zq值。
进一步,所述步骤2的具体步骤如下:
步骤21:对被去除噪声和增强后的图像fenhance(x,y)进行清晰度评价,清晰度评价方式采用计算图像的梯度的幅值,梯度的幅值计算公式如下:
其中,gradfenhance(x,y)表示对去除噪声和增强后的图像fenhance(x,y)的梯度向量,||·||2表示向量的2范数,这里表示梯度向量gradfenhance(x,y)的幅值,表示x方向的偏导数,表示y方向的偏导数;
步骤22:如果去除噪声和增强后的图像fenhance(x,y)被判定为清晰度高的图像,则将该图像标记为仪表图像f2(x,y),若判定为清晰度低的图像,则更改步骤14中的直方图映射函数,并将去除噪声和增强后的图像fenhance(x,y)返回步骤14进行直方图规定化。
进一步,所述步骤3的最大极值稳定区域(MaximallyStableExtremalRegions,MSER)匹配算法的具体步骤如下:
步骤31:将清晰高的仪表图像f2(x,y)取反,得到镜像图像finvert(x,y),其中镜像图像finvert(x,y)每个像素点的像素值的公式如下:
其中,表示仪表图像f2(x,y)每个像素点的像素值,表示镜像图像finvert(x,y)每个像素点的像素值;
步骤32:分别对仪表图像f2(x,y)和镜像图像finvert(x,y)的所有像素点根据像素值大小进行排序;
步骤33:根据步骤32,分别从仪表图像f2(x,y)和镜像图像finvert(x,y)中选取具有最小像素值gmin的像素点作为源点,源点四邻域内有其他源点的归并为同一个连通分量,该连通分量构成树状数据结构的一个节点,然后向更大的像素值开始迭代;
步骤34:分别考虑仪表图像f2(x,y)和镜像图像finvert(x,y)中当前灰度值为g的像素点,将当前灰度值为g的像素点加入四邻域附近的连通分量,并更新步骤33中的连通分量构成的树状数据结构:当两个或更多个连通分量被合并成一个时,被合并的连通分量被分配一个新的节点,并且被做成原始节点的父节点;
步骤35:若一个灰度值为g的像素点同时属于两个或多个连通分量,将灰度值为g的像素点的两个或多个的连通分量区域合并成一个,然后判定此时的像素值是否为最大像素值gmax,如果不是最大像素值gmax,执行步骤33;如果是最大像素值gmax,执行步骤36;
步骤36:仪表图像f2(x,y)和镜像图像finvert(x,y)的所有像素点都已被处理,得到一个每一次更新g时连通分量面积的数据结构——叉树,将叉树作为一个阈值的函数,叉树的每个节点都可以看作包含极值的极值区域;
步骤37:如果Qi,…,Qj是一个相互嵌套的极值区域,其中gmin≤i<j≤gmax,因此其中gmin≤g<gmax,那么最大极值区域Qg是最稳定的,q(g)=|Qg+△\Qg-△|/Qg在处具有一个局部最小值,其中|·|表示cardinality集合的势,它是度量集合元素多少的量,△是模型的参数,最终,仪表图像f2(x,y)得到包含仪表栅格连通区域的分割图像fMSER+(x,y);而镜像图像finvert(x,y)得到包含仪表栅格连通区域的分割图像fMSER-(x,y)。
进一步,所述步骤4的具体步骤如下:
步骤41:将分割图像fMSER+(x,y)与分割图像fMSER-(x,y)执行位与运算得到位与的结果图像fbitand(x,y),位与运算的运算方法是将分割图像fMSER+(x,y)与分割图像fMSER-(x,y)的每个像素值用二进制表示,然后将两幅图像相同分坐标的像素值执行“与”运算;
步骤42:对位与的结果图像fbitand(x,y)进行形态学闭运算,得到闭运算图像fclose(x,y),即将位与的结果图像fbitand(x,y)中包含仪表栅格的连通分量连接起来,便于步骤43能很容易地将栅格区域提取出来,闭运算的公式如下:
其中,“·”表示闭运算,表示形态学膨胀,表示形态学腐蚀,B表示形态学结构元,一般而言,结构元B采取十字形结构,形态学膨胀和形态学腐蚀的公式如下:
其中,表示关于结构元B的原点映射该集合的所有元素,(B)z={w|w=b+z,b∈B}表示将B的原点平移到点z;
步骤43:用一个最小邻接矩形包围闭运算图像fclose(x,y)中每一个连通分量,利用栅格区域连通分量的最小邻接矩形的面积以及长宽比可以将栅格图像f3(x,y)提取出来。
进一步,所述步骤5的最佳阈值分割的公式为:
其中,f4(x,y)代表最佳阈值分割后的栅格分割图像,f3(x,y)代表栅格图像,k是自适应的最佳阈值,m(k)是累加至灰度级k的均值,mG是整个图像(图像即指栅格图像f3(x,y))的平均灰度,即全局阈值,pi表示像素值为i的像素在图像(图像即指栅格图像f3(x,y))中的百分比,假设阈值T(k)=k,并使用它把输入图像(图像即指栅格图像f3(x,y))阈值化处理为两类C1和C2,P1(k)表示像素被分到类C1的概率,1-P1(k)表示像素被分到类C2的概率,σ2是C1类和C2类之间的方差。
进一步,所述步骤6的具体步骤如下:
步骤61:用最小外接矩形Li(x,y)表示阈值分割后的图像f4(x,y)里每个栅格的连通分量,i∈{1,2,…,N},N表示阈值分割后的栅格分割图像f4(x,y)连通分量个数;
步骤62:对所有最小外接矩形Li(x,y)的纵坐标长度进行排序,找出最长的外接矩形Ly max(x,y),最长的外接矩形Ly max(x,y)的纵坐标最小值为量程的最大值,纵坐标的最大值为液面的位置。
进一步,所述步骤7的具体步骤如下:
步骤71:将栅格分割图像f4(x,y)中最长栅格外接矩形Ly max(x,y)的纵坐标的最大值ygridmax和最小值ygridmin换算成在经过去除噪声和增强后且清晰度高的仪表图像f2(x,y)中的最长栅格外接矩形Ly max(x,y)的纵坐标的最大值和最小值
步骤72:从仪表图像f2(x,y)中的最长栅格外接矩形Ly max(x,y)的纵坐标的最大值开始,取20×20的窗口,对窗口内进行Canny边缘检测,若没有检测到强边缘,则将窗口沿着纵向移动20个像素位置,重复Canny边缘检测,直到检测到强边缘,该强边缘即为仪表量程起始位置,循环停止,Canny边缘检测具体步骤如下:
步骤721:用一个高斯滤波器平滑输入图像,得到平滑后的图像:
fs(x,y)=G(x,y)*f20×20(x,y);
其中,fs(x,y)表示平滑后的图像,f20×20(x,y)表示仪表图像f2(x,y)中用20×20窗口选中的子图像,G(x,y)表示高斯函数,(x,y)表示子图像f20×20(x,y)中的像素坐标值,σ2表示高斯函数G(x,y)的方差,“*”表示卷积;
步骤722:根据平滑后的图像,提取梯度幅值图像和梯度角度图像:
其中,M(x,y)表示梯度幅值图像,α(x,y)表示梯度角度图像,表示平滑后的图像fs(x,y)在x方向的偏导数,表示平滑后的图像fs(x,y)在y方向的偏导数;
步骤723:采用非极大值对梯度幅值图像M(x,y)进行抑制:首先,令d1,d2,d3和d4分别表示四个基本边缘方向,即水平方向(0°)、-45°、垂直方向(90°)、45°;然后寻找最接近梯度角度图像α(x,y)的dk(k=1,2,3,4);最后,如果梯度幅值图像M(x,y)的值小于沿dk方向的两个邻居值之一,则令gN(x,y)=0(抑制),否则,令gN(x,y)=M(x,y),这里gN(x,y)是非极大值抑制后的图像,N表示非极大值抑制;
步骤724:用双阈值处理来检测非极大值抑制后的图像gN(x,y)的边缘,即同时用两个不同的阈值对非极大值抑制后的图像gN(x,y)进行边缘检测:
其中,TH表示高阈值,TL表示低阈值,gNH(x,y)表示非极大值抑制后的图像gN(x,y)经过高阈值TH分割后的图像,gNL(x,y)表示非极大值抑制后的图像gN(x,y)经过低阈值TL分割后的图像,阈值处理后,gNH(x,y)的非零元素比gNL(x,y)少,gNH(x,y)中所有非零像素都包含在gNL(x,y)中,则
g'NL(x,y)=gNL(x,y)-gNH(x,y);
上述公式中,从经过低阈值TL分割后的图像gNL(x,y)中删除所有来自经过高阈值TH分割后的图像gNH(x,y)的非零元素,即可将gNH(x,y)和g'NL(x,y)中的非零像素分别看成是“强”和“弱”边缘像素;
步骤725:阈值处理后,经过高阈值TH分割后的图像gNH(x,y)中的所有强边缘像素均为有效的边缘像素,并进行标记,由于经过高阈值TH分割后的图像gNH(x,y)中的边缘存在缝隙,需要得到较长的边缘和Canny边缘检测形成最终的输出图像,具体步骤如下:
(a)在经过高阈值TH分割后的图像gNH(x,y)中,对当前定位的像素用8邻域顺时针定位下一个未被访问的边缘像素p;
(b)在g'NL(x,y)中将所有的弱像素标记为有效边缘像素,用8连通性的连接方法连接到p;
(c)通过8连通性的连接,如果gNH(x,y)中的所有非零像素已被访问,则跳到步骤(d),否则返回步骤(a);
(d)将g'NL(x,y)未标记为有效边缘像素的所有像素置零,此时,经过高阈值TH分割后的图像gNH(x,y)中存在缝隙的边缘被填充,得到一根较长的边缘;
(e)将g'NL(x,y)的所有非零像素赋加到gNH(x,y),得到用Canny边缘检测形成最终的输出图像g(x,y)。
综上所述,由于采用了上述技术方案,本发明的有益效果是:
一、针对图像中仪表与周围背景存在明显而且稳定的边缘和梯度分布,利用MSER算法可以稳定地将图像中的仪表和背景区分开,本发明较于其他智能仪表读数方法,算法抓住了该类仪表的主要特征——栅格,栅格在面对图像旋转、模糊等干扰时,依然有很好的显著性,所以本发明提出的方法具有较好鲁棒性;
二、MSER算法已经得到了很好的优化,实现MSER算法的OpenCV程序具有很好运行效率和检测结果,MSER算法处理一副大小为704像素×576像素的仪表图像耗时为0.488秒。
附图说明
图1为本发明的流程示意图;
图2为本发明的初始图像;
图3为本发明中去除噪声和增强后的图像;
图4为本发明中去除噪声和增强后的图片的梯度图;
图5为本发明中分割图像fMSER+(x,y);
图6为本发明中分割图像fMSER-(x,y);
图7为本发明中位与的结果图像f位与(x,y);
图8为本发明中提取到的栅格区域图像;
图9为本发明中栅格分割图像f4(x,y),即搜索最长栅格,确定仪表满量程位置与液面位置的示意图;
图10为本发明中确定仪表的起始位置的示意图;
图11为本发明中最终读数结果的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,包括以下步骤:
步骤11:读取初始图像f(x,y);
步骤12:将初始图像f(x,y)转换成灰度图像fgray(x,y),其中灰度图像fgray(x,y)的每个像素点的灰度值的公式如下:
其中,表示灰度图像fgray(x,y)每个像素点的灰度值,Rf(x,y)表示初始图像f(x,y)红色通道每个像素点的像素值;Gf(x,y)表示初始图像f(x,y)绿色通道每个像素点的像素值;Bf(x,y)表示初始图像f(x,y)蓝色通道每个像素点的像素值,(x,y)表示初始图像的每个像素点;
步骤13:对灰度图像fgray(x,y)进行双边滤波得到去除噪声后的图像fdenosie(x,y),双边滤波公式如下:
其中,fgray(k,l)是灰度图像,即灰度图像fgray(x,y),fdenosie(x,y)是去除噪声之后的图像,(k,l)是灰度图像的像素坐标,(x,y)是去除噪声后的图像的像素坐标,ω(x,y,k,l)是双边滤波的加权系数,而加权系数ω(x,y,k,l)取决于定义域核和值域核的乘积,公式如下:
其中,是定义域核,表示定义域核的方差,是值域核,表示值域核的方差;
步骤14:对进行了双边滤波的图像fdenosie(x,y)进行直方图规定化,得到增强后的图像fenhance(x,y),直方图规定化的具体步骤如下:
步骤141:计算去除噪声后的图像fdenosie(x,y)的直方图pr(r),其中r表示灰度值,并用pr(r)寻找下式的直方图均衡变换:
其中,sk是均衡化之后的像素值为k的灰度值,L是图像中的灰度级数量,即对8比特图像是256,MN是均衡化之后的图像中像素的总数,M是均衡化之后的图像每一行的像素个数,N是表示均衡化之后的图像每一列的像素个数,nj是进行了双边滤波的图像fdenosie(x,y)中灰度为j的像素个数,然后,把sk四舍五入到范围[0,L-1]内的整数;
步骤142:按照下式对q=0,1,2,…,L-1计算变换函数G(zq)所有的值:
其中,zi表示被映射之后的像素值为i的灰度值,pz(zi)是规定的直方图中像素值为zi的像素占规定的直方图像素的百分比,q表示从0累加到zq的像素个数,变换函数G(zq)表示规定的直方图进行均衡化之后的像素值,把G(zq)的值四舍五入为范围[0,L-1]内的整数,将G(zq)的值存储在一个表中;
步骤143:对每一个值sk,使用步骤142存储的G(zq)值寻找响应的zq值,以使G(zq)最接近sk,并存储从sk到zq的映射,当满足给定sk的zq值多于一个时,即映射不唯一时,选择最小的值;
步骤144:首先对输入去除噪声后的图像fdenosie(x,y)进行和步骤141一样的均衡化处理,然后使用步骤143找到的映射把去除噪声后的图像fdenosie(x,y)中的每个均衡后的像素值sk映射为直方图规定化后的图像中的相应zq值。将输入图像的直方图映射到已知清晰图像的直方图上去,实现增强图像边缘等信息的功能。
步骤2:对被去除噪声和增强后的图像fenhance(x,y)进行清晰度评价,如果清晰度低的图像fenhance(x,y)返回步骤1进行增强处理,否则令清晰度高的图像fenhance(x,y)为仪表图像f2(x,y);具体步骤如下:
步骤21:对被去除噪声和增强后的图像fenhance(x,y)进行清晰度评价,清晰度评价方式采用计算图像的梯度的幅值,梯度的幅值计算公式如下:
其中,gradfenhance(x,y)表示对去除噪声和增强后的图像fenhance(x,y)的梯度向量,||·||2表示向量的2范数,这里表示梯度向量gradfenhance(x,y)的幅值,表示x方向的偏导数,表示y方向的偏导数;
步骤22:如果去除噪声和增强后的图像fenhance(x,y)被判定为清晰度高的图像,则将该图像标记为仪表图像f2(x,y),若判定为清晰度低的图像,则更改步骤14中的直方图映射函数,并将去除噪声和增强后的图像fenhance(x,y)返回步骤14进行直方图规定化。
步骤3:将仪表图像f2(x,y)取反,得到镜像图像finvert(x,y),用最大极值稳定区域(Maximally Stable Extremal Regions,MSER)匹配算法提取仪表图像f2(x,y)和镜像图像finvert(x,y)的感兴趣区域,分别得到分割图像fMSER+(x,y)和分割图像fMSER-(x,y);最大极值稳定区域(MaximallyStableExtremalRegions,MSER)匹配算法的具体步骤如下:
步骤31:将清晰高的仪表图像f2(x,y)取反,得到镜像图像finvert(x,y),其中镜像图像finvert(x,y)每个像素点的像素值的公式如下:
其中,表示仪表图像f2(x,y)每个像素点的像素值,表示镜像图像finvert(x,y)每个像素点的像素值;
步骤32:分别对仪表图像f2(x,y)和镜像图像finvert(x,y)的所有像素点根据像素值大小进行排序;
步骤33:根据步骤32,分别从仪表图像f2(x,y)和镜像图像finvert(x,y)中选取具有最小像素值gmin的像素点作为源点,源点四邻域内有其他源点的归并为同一个连通分量,该连通分量构成树状数据结构的一个节点,然后向更大的像素值开始迭代;
步骤34:分别考虑仪表图像f2(x,y)和镜像图像finvert(x,y)中当前灰度值为g的像素点,将当前灰度值为g的像素点加入四邻域附近的连通分量,并更新步骤33中的连通分量构成的树状数据结构:当两个或更多个连通分量被合并成一个时,被合并的连通分量被分配一个新的节点,并且被做成原始节点的父节点;
步骤35:若一个灰度值为g的像素点同时属于两个或多个连通分量,将灰度值为g的像素点的两个或多个的连通分量区域合并成一个,然后判定此时的像素值是否为最大像素值gmax,如果不是最大像素值gmax,执行步骤33;如果是最大像素值gmax,执行步骤36;
步骤36:仪表图像f2(x,y)和镜像图像finvert(x,y)的所有像素点都已被处理,得到一个每一次更新g时连通分量面积的数据结构——叉树,将叉树作为一个阈值的函数,叉树的每个节点都可以看作包含极值的极值区域;
步骤37:如果Qi,…,Qj是一个相互嵌套的极值区域,其中gmin≤i<j≤gmax,因此其中gmin≤g<gmax,那么最大极值区域Qg是最稳定的,q(g)=|Qg+△\Qg-△|/Qg在处具有一个局部最小值,其中|·|表示cardinality集合的势,它是度量集合元素多少的量,△是模型的参数,最终,仪表图像f2(x,y)得到包含仪表栅格连通区域的分割图像fMSER+(x,y);而镜像图像finvert(x,y)得到包含仪表栅格连通区域的分割图像fMSER-(x,y)。
步骤4:在分割图像fMSER+(x,y)和分割图像fMSER-(x,y)的基础上,先利用位与操作将分割图像fMSER+(x,y)和分割图像fMSER-(x,y)融合成一幅结果图像f位与(x,y),再将结果图像f位与(x,y)进行形态学滤波将栅格图像f3(x,y)提取出来;具体步骤如下:
步骤41:将分割图像fMSER+(x,y)与分割图像fMSER-(x,y)执行位与运算得到位与的结果图像fbitand(x,y),位与运算的运算方法是将分割图像fMSER+(x,y)与分割图像fMSER-(x,y)的每个像素值用二进制表示,然后将两幅图像相同分坐标的像素值执行“与”运算;
步骤42:对位与的结果图像fbitand(x,y)进行形态学闭运算,得到闭运算图像fclose(x,y),即将位与的结果图像fbitand(x,y)中包含仪表栅格的连通分量连接起来,便于步骤43能很容易地将栅格区域提取出来,闭运算的公式如下:
其中,“·”表示闭运算,表示形态学膨胀,表示形态学腐蚀,B表示形态学结构元,一般而言,结构元B采取十字形结构,形态学膨胀和形态学腐蚀的公式如下:
其中,表示关于结构元B的原点映射该集合的所有元素,(B)z={w|w=b+z,b∈B}表示将B的原点平移到点z;
步骤43:用一个最小邻接矩形包围闭运算图像fclose(x,y)中每一个连通分量,利用栅格区域连通分量的最小邻接矩形的面积以及长宽比可以将栅格图像f3(x,y)提取出来。
步骤5:用最佳阈值分割将栅格图像f3(x,y)的栅格分割为前景,得到栅格分割图像f4(x,y);最佳阈值分割的公式为:
其中,f4(x,y)代表最佳阈值分割后的栅格分割图像,f3(x,y)代表栅格图像,k是自适应的最佳阈值,m(k)是累加至灰度级k的均值,mG是整个图像(图像即指栅格图像f3(x,y))的平均灰度,即全局阈值,pi表示像素值为i的像素在图像(图像即指栅格图像f3(x,y))中的百分比,假设阈值T(k)=k,并使用它把输入图像(图像即指栅格图像f3(x,y))阈值化处理为两类C1和C2,P1(k)表示像素被分到类C1的概率,1-P1(k)表示像素被分到类C2的概率,σ2是C1类和C2类之间的方差。
步骤6:将栅格分割图像f4(x,y)中纵向长度最长的栅格Ly max(x,y)提取出来,最长的栅格Ly max(x,y)的纵坐标最小值为量程的最大值,纵坐标的最大值为液面的位置;具体步骤如下:
步骤61:用最小外接矩形Li(x,y)表示阈值分割后的图像f4(x,y)里每个栅格的连通分量,i∈{1,2,…,N},N表示阈值分割后的栅格分割图像f4(x,y)连通分量个数;
步骤62:对所有最小外接矩形Li(x,y)的纵坐标长度进行排序,找出最长的外接矩形Ly max(x,y),最长的外接矩形Ly max(x,y)的纵坐标最小值为量程的最大值,纵坐标的最大值为液面的位置。
步骤7:沿着纵向方向,从最长的栅格Ly max(x,y)纵坐标最大值向栅格分割图像f4(x,y)的底部搜索强边缘,搜索到的强边缘为量程起始位置,即可得到量程大小,完成读数;具体步骤如下:
步骤71:将栅格分割图像f4(x,y)中最长栅格外接矩形Ly max(x,y)的纵坐标的最大值ygridmax和最小值ygridmin换算成在经过去除噪声和增强后且清晰度高的仪表图像f2(x,y)中的最长栅格外接矩形Ly max(x,y)的纵坐标的最大值和最小值
步骤72:从仪表图像f2(x,y)中的最长栅格外接矩形Ly max(x,y)的纵坐标的最大值开始,取20×20的窗口,对窗口内进行Canny边缘检测,若没有检测到强边缘,则将窗口沿着纵向移动20个像素位置,重复Canny边缘检测,直到检测到强边缘,该强边缘即为仪表量程起始位置,循环停止,Canny边缘检测具体步骤如下:
步骤721:用一个高斯滤波器平滑输入图像,得到平滑后的图像:
fs(x,y)=G(x,y)*f20×20(x,y);
其中,fs(x,y)表示平滑后的图像,f20×20(x,y)表示仪表图像f2(x,y)中用20×20窗口选中的子图像,G(x,y)表示高斯函数,(x,y)表示子图像f20×20(x,y)中的像素坐标值,σ2表示高斯函数G(x,y)的方差,“*”表示卷积;
步骤722:根据平滑后的图像,提取梯度幅值图像和梯度角度图像:
其中,M(x,y)表示梯度幅值图像,α(x,y)表示梯度角度图像,表示平滑后的图像fs(x,y)在x方向的偏导数,表示平滑后的图像fs(x,y)在y方向的偏导数;
步骤723:采用非极大值对梯度幅值图像M(x,y)进行抑制:首先,令d1,d2,d3和d4分别表示四个基本边缘方向,即水平方向(0°)、-45°、垂直方向(90°)、45°;然后寻找最接近梯度角度图像α(x,y)的dk(k=1,2,3,4);最后,如果梯度幅值图像M(x,y)的值小于沿dk方向的两个邻居值之一,则令gN(x,y)=0(抑制),否则,令gN(x,y)=M(x,y),这里gN(x,y)是非极大值抑制后的图像,N表示非极大值抑制;
步骤724:用双阈值处理来检测非极大值抑制后的图像gN(x,y)的边缘,即同时用两个不同的阈值对非极大值抑制后的图像gN(x,y)进行边缘检测:
其中,TH表示高阈值,TL表示低阈值,gNH(x,y)表示非极大值抑制后的图像gN(x,y)经过高阈值TH分割后的图像,gNL(x,y)表示非极大值抑制后的图像gN(x,y)经过低阈值TL分割后的图像,阈值处理后,gNH(x,y)的非零元素比gNL(x,y)少,gNH(x,y)中所有非零像素都包含在gNL(x,y)中,则
g'NL(x,y)=gNL(x,y)-gNH(x,y);
上述公式中,从经过低阈值TL分割后的图像gNL(x,y)中删除所有来自经过高阈值TH分割后的图像gNH(x,y)的非零元素,即可将gNH(x,y)和g'NL(x,y)中的非零像素分别看成是“强”和“弱”边缘像素;
步骤725:阈值处理后,经过高阈值TH分割后的图像gNH(x,y)中的所有强边缘像素均为有效的边缘像素,并进行标记,由于经过高阈值TH分割后的图像gNH(x,y)中的边缘存在缝隙,需要得到较长的边缘和Canny边缘检测形成最终的输出图像,具体步骤如下:
(a)在经过高阈值TH分割后的图像gNH(x,y)中,对当前定位的像素用8邻域顺时针定位下一个未被访问的边缘像素p;
(b)在g'NL(x,y)中将所有的弱像素标记为有效边缘像素,用8连通性的连接方法连接到p;
(c)通过8连通性的连接,如果gNH(x,y)中的所有非零像素已被访问,则跳到步骤(d),否则返回步骤(a);
(d)将g'NL(x,y)未标记为有效边缘像素的所有像素置零,此时,经过高阈值TH分割后的图像gNH(x,y)中存在缝隙的边缘被填充,得到一根较长的边缘;
(e)将g'NL(x,y)的所有非零像素赋加到gNH(x,y),得到用Canny边缘检测形成最终的输出图像g(x,y)。
本文提出了一种栅格圆形油位计的自动读数方法,该方法针对仪表与周围背景存在明显的边缘和梯度分布,使用MSER方法提取图像中的仪表的栅格特征点,并将栅格特征点与位与运算和形态学方法可以检测出复杂背景中的仪表,最后利用仪表中的最长栅格确定仪表的读数。由于这些算法既有很成熟的经典经法,也有近年来才提出的集成度高,鲁棒性强的新算法,所以运行效率高,易于实现和移植。尤其是该方法相对于无栅格的油位计,由于栅格的显著性,方法更加简单。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,包括以下步骤:
步骤1:读入初始图像f(x,y),对初始图像f(x,y)去除噪声和增强处理,得到被去除噪声和增强后的图像fenhance(x,y);
步骤2:对被去除噪声和增强后的图像fenhance(x,y)进行清晰度评价,如果清晰度低的图像fenhance(x,y)返回步骤1进行增强处理,否则令清晰度高的图像fenhance(x,y)为仪表图像f2(x,y);
步骤3:将仪表图像f2(x,y)取反,得到镜像图像finvert(x,y),用最大极值稳定区域匹配算法提取仪表图像f2(x,y)和镜像图像finvert(x,y)的感兴趣区域,分别得到分割图像fMSER+(x,y)和分割图像fMSER-(x,y);
步骤4:在分割图像fMSER+(x,y)和分割图像fMSER-(x,y)的基础上,先利用位与操作将分割图像fMSER+(x,y)和分割图像fMSER-(x,y)融合成一幅结果图像fbitand(x,y),再将结果图像fbitand(x,y)进行形态学滤波将栅格图像f3(x,y)提取出来;
步骤5:用最佳阈值分割将栅格图像f3(x,y)的栅格分割为前景,得到栅格分割图像f4(x,y);
步骤6:将栅格分割图像f4(x,y)中纵向长度最长的栅格Lymax(x,y)提取出来,最长的栅格Lymax(x,y)的纵坐标最小值为量程的最大值,纵坐标的最大值为液面的位置;
步骤7:沿着纵向方向,从最长的栅格Lymax(x,y)纵坐标最大值向栅格分割图像f4(x,y)的底部搜索强边缘,搜索到的强边缘为量程起始位置,即可得到量程大小,完成读数。
2.根据权利要求1所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤1的具体步骤如下:
步骤11:读取初始图像f(x,y);
步骤12:将初始图像f(x,y)转换成灰度图像fgray(x,y),其中灰度图像fgray(x,y)的每个像素点的灰度值的公式如下:
其中,表示灰度图像fgray(x,y)每个像素点的灰度值,Rf(x,y)表示初始图像f(x,y)红色通道每个像素点的像素值;Gf(x,y)表示初始图像f(x,y)绿色通道每个像素点的像素值;Bf(x,y)表示初始图像f(x,y)蓝色通道每个像素点的像素值,(x,y)表示初始图像的每个像素点的坐标;
步骤13:对灰度图像fgray(x,y)进行双边滤波得到去除噪声后的图像fdenosie(x,y),双边滤波公式如下:
其中,fgray(k,l)是灰度图像,即灰度图像fgray(x,y),fdenosie(x,y)是去除噪声之后的图像,(k,l)是灰度图像的像素坐标,(x,y)是去除噪声后的图像的像素坐标,ω(x,y,k,l)是双边滤波的加权系数,而加权系数ω(x,y,k,l)取决于定义域核和值域核的乘积,公式如下:
其中,是定义域核,表示定义域核的方差,是值域核,表示值域核的方差;
步骤14:对进行了双边滤波的图像fdenosie(x,y)进行直方图规定化,得到增强后的图像fenhance(x,y),直方图规定化的具体步骤如下:
步骤141:计算去除噪声后的图像fdenosie(x,y)的直方图pr(r),其中r表示灰度值,并用pr(r)寻找下式的直方图均衡变换:
其中,sk是均衡化之后的像素值为k的灰度值,L是图像中的灰度级数量,即对8比特图像是256,MN是均衡化之后的图像中像素的总数,M是均衡化之后的图像每一行的像素个数,N是表示均衡化之后的图像每一列的像素个数,nj是进行了双边滤波的图像fdenosie(x,y)中灰度为j的像素个数,然后,把sk四舍五入到范围[0,L-1]内的整数;
步骤142:按照下式对q=0,1,2,…,L-1计算变换函数G(zq)所有的值:
其中,zi表示被映射之后的像素值为i的灰度值,pz(zi)是规定的直方图中像素值为zi的像素占规定的直方图像素的百分比,q表示从0累加到zq的像素个数,变换函数G(zq)表示规定的直方图进行均衡化之后的像素值,把G(zq)的值四舍五入为范围[0,L-1]内的整数,将G(zq)的值存储在一个表中;
步骤143:对每一个值sk,使用步骤142存储的G(zq)值寻找响应的zq值,以使G(zq)最接近sk,并存储从sk到zq的映射,当满足给定sk的zq值多于一个时,即映射不唯一时,选择最小的值;
步骤144:首先对输入去除噪声后的图像fdenosie(x,y)进行和步骤141一样的均衡化处理,然后使用步骤143找到的映射把去除噪声后的图像fdenosie(x,y)中的每个均衡后的像素值sk映射为直方图规定化后的图像中的相应zq值。
3.根据权利要求2所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤2的具体步骤如下:
步骤21:对被去除噪声和增强后的图像fenhance(x,y)进行清晰度评价,清晰度评价方式采用计算图像的梯度的幅值,梯度的幅值计算公式如下:
其中,gradfenhance(x,y)表示对去除噪声和增强后的图像fenhance(x,y)的梯度向量,||·||2表示向量的2范数,这里表示梯度向量gradfenhance(x,y)的幅值,表示x方向的偏导数,表示y方向的偏导数;
步骤22:如果去除噪声和增强后的图像fenhance(x,y)被判定为清晰度高的图像,则将该图像标记为仪表图像f2(x,y),若判定为清晰度低的图像,则更改步骤14中的直方图映射函数,并将去除噪声和增强后的图像fenhance(x,y)返回步骤14进行直方图规定化。
4.根据权利要求1所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤3的最大极值稳定区域(MaximallyStableExtremalRegions,MSER)匹配算法的具体步骤如下:
步骤31:将清晰高的仪表图像f2(x,y)取反,得到镜像图像finvert(x,y),其中镜像图像finvert(x,y)每个像素点的像素值的公式如下:
其中,表示仪表图像f2(x,y)每个像素点的像素值,表示镜像图像finvert(x,y)每个像素点的像素值;
步骤32:分别对仪表图像f2(x,y)和镜像图像finvert(x,y)的所有像素点根据像素值大小进行排序;
步骤33:根据步骤32,分别从仪表图像f2(x,y)和镜像图像finvert(x,y)中选取具有最小像素值gmin的像素点作为源点,源点四邻域内有其他源点的归并为同一个连通分量,该连通分量构成树状数据结构的一个节点,然后向更大的像素值开始迭代;
步骤34:分别考虑仪表图像f2(x,y)和镜像图像finvert(x,y)中当前灰度值为g的像素点,将当前灰度值为g的像素点加入四邻域附近的连通分量,并更新步骤33中的连通分量构成的树状数据结构:当两个或更多个连通分量被合并成一个时,被合并的连通分量被分配一个新的节点,并且被做成原始节点的父节点;
步骤35:若一个灰度值为g的像素点同时属于两个或多个连通分量,将灰度值为g的像素点的两个或多个的连通分量区域合并成一个,然后判定此时的像素值是否为最大像素值gmax,如果不是最大像素值gmax,执行步骤33;如果是最大像素值gmax,执行步骤36;
步骤36:仪表图像f2(x,y)和镜像图像finvert(x,y)的所有像素点都已被处理,得到一个每一次更新g时连通分量面积的数据结构——叉树,将叉树作为一个阈值的函数,叉树的每个节点都可以看作包含极值的极值区域;
步骤37:如果Qi,...,Qj是一个相互嵌套的极值区域,其中gmin≤i<j≤gmax,因此其中gmin≤g<gmax,那么最大极值区域Qg是最稳定的,q(g)=|Qg+Δ\Qg-Δ|/Qg在处具有一个局部最小值,其中|·|表示cardinality集合的势,它是度量集合元素多少的量,Δ是模型的参数,最终,仪表图像f2(x,y)得到包含仪表栅格连通区域的分割图像fMSER+(x,y);而镜像图像finvert(x,y)得到包含仪表栅格连通区域的分割图像fMSER-(x,y)。
5.根据权利要求1所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤4的具体步骤如下:
步骤41:将分割图像fMSER+(x,y)与分割图像fMSER-(x,y)执行位与运算得到位与的结果图像fbitand(x,y),位与运算的运算方法是将分割图像fMSER+(x,y)与分割图像fMSER-(x,y)的每个像素值用二进制表示,然后将两幅图像相同分坐标的像素值执行“与”运算;
步骤42:对位与的结果图像fbitand(x,y)进行形态学闭运算,得到闭运算图像fclose(x,y),即将位与的结果图像fbitand(x,y)中包含仪表栅格的连通分量连接起来,便于步骤43能很容易地将栅格区域提取出来,闭运算的公式如下:
其中,“·”表示闭运算,表示形态学膨胀,“!”表示形态学腐蚀,B表示形态学结构元,一般而言,结构元B采取十字形结构,形态学膨胀和形态学腐蚀的公式如下:
其中,表示关于结构元B的原点映射描述结构元B中的像素的集合的所有元素,(B)z={w|w=b+z,b∈B}表示将B的原点平移到点z;
步骤43:用一个最小邻接矩形包围闭运算图像fclose(x,y)中每一个连通分量,利用栅格区域连通分量的最小邻接矩形的面积以及长宽比可以将栅格图像f3(x,y)提取出来。
6.根据权利要求1所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤5的最佳阈值分割的公式为:
其中,f4(x,y)代表最佳阈值分割后的栅格分割图像,f3(x,y)代表栅格图像,k是自适应的最佳阈值,m(k)是累加至灰度级k的均值;mG是整个图像的平均灰度,即全局阈值,这里的图像是指图像即指栅格图像f3(x,y);pi表示像素值为i的像素在图像中的百分比,这里的图像是指图像即指栅格图像f3(x,y);
假设阈值T(k)=k,并使用它把输入图像,这里的图像是指图像即指栅格图像f3(x,y);阈值化处理为两类C1和C2,P1(k)表示像素被分到类C1的概率,1-P1(k)表示像素被分到类C2的概率,σ2是C1类和C2类之间的方差。
7.根据权利要求1所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤6的具体步骤如下:
步骤61:用最小外接矩形Li(x,y)表示阈值分割后的图像f4(x,y)里每个栅格的连通分量,i∈{1,2,…,N},N表示阈值分割后的栅格分割图像f4(x,y)连通分量个数;
步骤62:对所有最小外接矩形Li(x,y)的纵坐标长度进行排序,找出最长的外接矩形Lymax(x,y),最长的外接矩形Lymax(x,y)的纵坐标最小值为量程的最大值,纵坐标的最大值为液面的位置。
8.根据权利要求1所述的一种基于视觉测量的栅格圆形油位计自动读数方法,其特征在于,所述步骤7的具体步骤如下:
步骤71:将栅格分割图像f4(x,y)中最长栅格外接矩形Lymax(x,y)的纵坐标的最大值ygridmax和最小值ygridmin换算成在经过去除噪声和增强后且清晰度高的仪表图像f2(x,y)中的最长栅格外接矩形Lymax(x,y)的纵坐标的最大值和最小值
步骤72:从仪表图像f2(x,y)中的最长栅格外接矩形Lymax(x,y)的纵坐标的最大值开始,取20×20的窗口,对窗口内进行Canny边缘检测,若没有检测到强边缘,则将窗口沿着纵向移动20个像素位置,重复Canny边缘检测,直到检测到强边缘,该强边缘即为仪表量程起始位置,循环停止,Canny边缘检测具体步骤如下:
步骤721:用一个高斯滤波器平滑输入图像,得到平滑后的图像:
fs(x,y)=G(x,y)*f20×20(x,y);
其中,fs(x,y)表示平滑后的图像,f20×20(x,y)表示仪表图像f2(x,y)中用20×20窗口选中的子图像,G(x,y)表示高斯函数,(x,y)表示子图像f20×20(x,y)中的像素坐标值,σ2表示高斯函数G(x,y)的方差,“*”表示卷积;
步骤722:根据平滑后的图像,提取梯度幅值图像和梯度角度图像:
其中,M(x,y)表示梯度幅值图像,α(x,y)表示梯度角度图像,表示平滑后的图像fs(x,y)在x方向的偏导数,表示平滑后的图像fs(x,y)在y方向的偏导数;
步骤723:采用非极大值对梯度幅值图像M(x,y)进行抑制:首先,令d1,d2,d3和d4分别表示四个基本边缘方向,即水平方向(0°)、-45°、垂直方向(90°)、45°;然后寻找最接近梯度角度图像α(x,y)的dk(k=1,2,3,4);最后,如果梯度幅值图像M(x,y)的值小于沿dk方向的两个邻居值之一,则令gN(x,y)=0(抑制),否则,令gN(x,y)=M(x,y),这里gN(x,y)是非极大值抑制后的图像,N表示非极大值抑制;
步骤724:用双阈值处理来检测非极大值抑制后的图像gN(x,y)的边缘,即同时用两个不同的阈值对非极大值抑制后的图像gN(x,y)进行边缘检测:
其中,TH表示高阈值,TL表示低阈值,gNH(x,y)表示非极大值抑制后的图像gN(x,y)经过高阈值TH分割后的图像,gNL(x,y)表示非极大值抑制后的图像gN(x,y)经过低阈值TL分割后的图像,阈值处理后,gNH(x,y)的非零元素比gNL(x,y)少,gNH(x,y)中所有非零像素都包含在gNL(x,y)中,则
g'NL(x,y)=gNL(x,y)-gNH(x,y);
上述公式中,从经过低阈值TL分割后的图像gNL(x,y)中删除所有来自经过高阈值TH分割后的图像gNH(x,y)的非零元素,即可将gNH(x,y)和g'NL(x,y)中的非零像素分别看成是“强”和“弱”边缘像素;
步骤725:阈值处理后,经过高阈值TH分割后的图像gNH(x,y)中的所有强边缘像素均为有效的边缘像素,并进行标记,由于经过高阈值TH分割后的图像gNH(x,y)中的边缘存在缝隙,需要得到较长的边缘和Canny边缘检测形成最终的输出图像,具体步骤如下:
(a)在经过高阈值TH分割后的图像gNH(x,y)中,对当前定位的像素用8邻域顺时针定位下一个未被访问的边缘像素p;
(b)在g'NL(x,y)中将所有的弱像素标记为有效边缘像素,用8连通性的连接方法连接到p;
(c)通过8连通性的连接,如果gNH(x,y)中的所有非零像素已被访问,则跳到步骤(d),否则返回步骤(a);
(d)将g'NL(x,y)未标记为有效边缘像素的所有像素置零,此时,经过高阈值TH分割后的图像gNH(x,y)中存在缝隙的边缘被填充,得到一根较长的边缘;
(e)将g'NL(x,y)的所有非零像素赋加到gNH(x,y),得到用Canny边缘检测形成最终的输出图像g(x,y)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710059293.4A CN106815851B (zh) | 2017-01-24 | 2017-01-24 | 一种基于视觉测量的栅格圆形油位计自动读数方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710059293.4A CN106815851B (zh) | 2017-01-24 | 2017-01-24 | 一种基于视觉测量的栅格圆形油位计自动读数方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106815851A CN106815851A (zh) | 2017-06-09 |
CN106815851B true CN106815851B (zh) | 2019-05-24 |
Family
ID=59112512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710059293.4A Active CN106815851B (zh) | 2017-01-24 | 2017-01-24 | 一种基于视觉测量的栅格圆形油位计自动读数方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106815851B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108985288B (zh) * | 2018-07-17 | 2022-06-14 | 电子科技大学 | 一种基于TGMSERs的SAR图像溢油检测方法 |
CN112801098B (zh) * | 2019-11-14 | 2023-01-10 | 临沂市拓普网络股份有限公司 | 一种基于轮廓技术的数学符号识别方法 |
CN111539312A (zh) * | 2020-04-21 | 2020-08-14 | 罗嘉杰 | 一种从图像中抽取表格的方法 |
CN113077398A (zh) * | 2021-04-09 | 2021-07-06 | 上海申瑞继保电气有限公司 | 断路器圆形分合指示灯图像噪声滤波方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750540A (zh) * | 2012-06-12 | 2012-10-24 | 大连理工大学 | 基于形态滤波增强的最稳定极值区视频文本检测方法 |
CN103871234A (zh) * | 2012-12-10 | 2014-06-18 | 中兴通讯股份有限公司 | 一种基于栅格映射生长的交通网络划分方法及配置服务器 |
CN104616280A (zh) * | 2014-11-26 | 2015-05-13 | 西安电子科技大学 | 基于最大稳定极值区域和相位一致性的图像配准方法 |
CN106228161A (zh) * | 2016-07-18 | 2016-12-14 | 电子科技大学 | 一种指针式表盘自动读数方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101807163B1 (ko) * | 2010-09-22 | 2017-12-08 | 다우 코닝 코포레이션 | 유기실록산 블록 공중합체 |
-
2017
- 2017-01-24 CN CN201710059293.4A patent/CN106815851B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750540A (zh) * | 2012-06-12 | 2012-10-24 | 大连理工大学 | 基于形态滤波增强的最稳定极值区视频文本检测方法 |
CN103871234A (zh) * | 2012-12-10 | 2014-06-18 | 中兴通讯股份有限公司 | 一种基于栅格映射生长的交通网络划分方法及配置服务器 |
CN104616280A (zh) * | 2014-11-26 | 2015-05-13 | 西安电子科技大学 | 基于最大稳定极值区域和相位一致性的图像配准方法 |
CN106228161A (zh) * | 2016-07-18 | 2016-12-14 | 电子科技大学 | 一种指针式表盘自动读数方法 |
Non-Patent Citations (1)
Title |
---|
"基于MSER的图像文本定位的应用研究";李鉴鸿;《中国优秀硕士学位论文全文数据库 信息科技辑》;20151215(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106815851A (zh) | 2017-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110866924B (zh) | 一种线结构光中心线提取方法及存储介质 | |
CN113160192B (zh) | 复杂背景下基于视觉的压雪车外观缺陷检测方法及装置 | |
CN110717489B (zh) | Osd的文字区域的识别方法、装置及存储介质 | |
CN108629775B (zh) | 一种热态高速线材表面图像处理方法 | |
CN106815851B (zh) | 一种基于视觉测量的栅格圆形油位计自动读数方法 | |
CN110230978A (zh) | 一种耐火砖几何尺寸测量方法 | |
WO2021109697A1 (zh) | 字符分割方法、装置以及计算机可读存储介质 | |
CN111027446B (zh) | 一种高分辨率影像的海岸线自动提取方法 | |
CN112446871B (zh) | 一种基于深度学习和OpenCV的隧道裂缝识别方法 | |
CN108229342B (zh) | 一种海面舰船目标自动检测方法 | |
CN112734761B (zh) | 工业品图像边界轮廓提取方法 | |
CN109035300B (zh) | 一种基于深度特征与平均峰值相关能量的目标跟踪方法 | |
CN111354047B (zh) | 一种基于计算机视觉的摄像模组定位方法及*** | |
CN114118144A (zh) | 抗干扰的航空遥感图像阴影精准检测方法 | |
CN112734729B (zh) | 适用于夜间补光条件的水尺水位线图像检测方法、装置及存储介质 | |
CN111754538B (zh) | Usb表面缺陷检测的阈值分割方法 | |
CN111242864A (zh) | 一种基于Gabor纹理约束的手指静脉图像修复方法 | |
CN113191979B (zh) | 一种分区域sar图像非局部均值去噪方法 | |
CN113609984A (zh) | 一种指针式仪表读数识别方法、装置及电子设备 | |
CN111783722B (zh) | 一种激光点云的车道线提取方法和电子设备 | |
CN113780110A (zh) | 一种图像序列中弱小目标实时检测方法及设备 | |
CN109101985A (zh) | 一种基于自适应邻域测试的图像误匹配点对剔除方法 | |
CN114742849B (zh) | 一种基于图像增强的水准仪距离测量方法 | |
CN113284158B (zh) | 一种基于结构约束聚类的图像边缘提取方法及*** | |
CN112329674B (zh) | 基于多纹理特征融合的结冰湖泊检测方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |