水位尺读数识别 python_一种基于图像识别的水位识别方法与流程

本发明涉及一种水位识别方法,尤其是一种基于图像识别的水位识别方法。

背景技术:

::传统水位测量方式主要有安装水尺目测读数和使用传感器自动采集水位相关的模拟量再转换为水位量。其中目测测量方式效率低、实时性差以及恶劣情况下无法读取等缺点;而使用传感器测量方式成本高、难以维护、受环境影响大等缺点。随着计算机的发展,视频监控技术越来越普及,通过图像处理的方式识别水位成为一种解决方案,但目前处理的方法一般是基于颜色、形态学等方法,在河流、湖泊以及水库背景相对较复杂的场景下无法有效的识别,鲁棒性较差;另外,在野外河道场景中水平面不太容易获得,因为摄像头离河道比较远,水平面和摄像头的角度成一定夹角关系,参照物不好选取。技术实现要素:本发明要解决的技术问题是,由于河流、湖泊以及水库背景比较复杂,现有的图像识别方法难以满足利用图像识别水尺进行水位的测量需要。为了解决上述技术问题,本发明提供了一种基于图像识别的水位识别方法,包括如下步骤:步骤1,从采集的图像中定位出水尺位置,并根据定位出的水尺位置对水尺图像进行裁剪,获得水尺图像;步骤2,对裁剪获得的水尺图像进行字符定位,获得水尺图像中各个字符“E”和字符再根据字符“E”和字符的排列特点对水尺图像中的各个数字字符进行切割,获得各个数字字符图像;步骤3,对各个数字字符图像中的数字字符进行识别,获得各个数字字符的数值;步骤4,在水尺图像中识别出水迹位置,并根据水迹位置与最下侧一个字符的相对位置关系计算出水位高度。进一步地,步骤1中,获得水尺图像的具体步骤为:步骤1.1,对采集的水尺图像进行灰度化处理;步骤1.2,通过MSER算法找到灰度化处理后的图像中各个稳定区域作为候选区域;步骤1.3,对各个候选区域应用模板匹配算法,与字符“E”和字符的模板进行匹配,若匹配程度超过匹配阈值,则判定当前候选区域就是识别目标字符“E”或字符并求出每个字符“E”和字符的位置信息、匹配度以及方向信息;步骤1.4,根据各个字符“E”和字符的位置信息,计算出各个字符“E”的最左侧边位置、各个字符的最右侧边位置以及最上侧一个字符的上侧边位置,由最左侧边位置、最右侧边位置以及上侧边位置从水尺图像中定位出水尺位置,再根据定位出的水尺位置对水尺图像进行裁剪,从而获得水尺图像。进一步地,步骤2中,获得各个数字字符图像的具体步骤为:步骤2.1,找到识别出的各个字符“E”和字符中匹配度最高的字符,根据匹配度最高字符的方向信息确定水尺的斜率,再根据斜率旋转图像,使图像中的水尺呈竖直状态;步骤2.2,再对旋转后的水尺图像通过MSER算法找到各个新候选区域,再结合模板匹配算法对各个新候选区域进行字符“E”和字符的匹配,若匹配程度超过匹配阈值,则判定当前新候选区域就是识别目标字符“E”和字符并再次求出每个字符“E”和字符的位置信息、匹配度以及方向信息;步骤2.3,根据数字字符与字符“E”上下紧邻且与字符左右相邻的特点,结合字符“E”和字符的位置信息,对水尺中的数字字符进行切割,获得各个数字字符图像。进一步地,步骤2.2中,在求出每个字符“E”和字符的位置信息、匹配度以及方向信息后,根据字符“E”和字符的位置信息重新计算出各个字符“E”的最左侧边位置、各个字符的最右侧边位置以及最上侧一个字符的上侧边位置,再对旋转后的水尺图像进行空白边缘切除。进一步地,步骤3中,获得各个数字字符的数值的具体步骤为:步骤3.1,对每个切割出来的数字字符图像利用KNN算法进行数字识别,找到与数字字符库中最接近的字符类,从而识别出各个数字字符,并应用模板匹配算法对识别出的数字字符进行匹配,并计算出相应的匹配度;步骤3.2,根据标准水尺的数字字符从上到下依次递减1的顺序排列特点,以识别出的数字字符中匹配度最高的数字字符为标准,依次对相邻的数字字符进行校正,提高数字字符识别的鲁棒性。进一步地,步骤4中,计算水位高度的具体步骤为:步骤4.1,采用Kmeans方法对旋转后的水尺图像进行分类识别,根据字符“E”的位置可以确定字符“E”的类别以及相邻白色的类别,从而确定水的类别;步骤4.2,在旋转后的水尺图像上从上向下寻找水所属类别的开始位置,即水迹与水尺的分界位置,取分界位置的最上部和最下部的平均值作为水迹高度位置;步骤4.3,计算水迹距离最下侧一个字符的距离=5×(水迹高度位置-最下侧一个字符下侧边位置)/字符“E”的高度信息;步骤4.4,计算水位的高度=最下侧一个字符下侧边高度位置-水迹距离最下侧一个字符的距离。本发明的有益效果在于:(1)将MSER(MaximallyStableExtremalRegions,最大极值稳定区域)算法应用在河流、湖泊以及水库背景相对较复杂的场景或光照不稳定的环境下,来识别水尺特定的字符“E”和字符有效提高了水尺定位的鲁棒性。(2)利用水尺的数字符号具有顺序排列的特点,因此以最大相关度的字符为依据,校准其它字符,解决个别字符因为反光、污迹带来字符识别误差的问题,达到很好鲁棒性;(3)考虑测量水位的水尺的特征:每一个字符“E”下面是数字字符,而字符下面对应的还是一个字符的特点,从而求出的字符“E”和字符的位置信息,切割出每个数字字符。附图说明图1为本发明的方法流程图;图2为本发明的灰度处理后的图像;图3为本发明的候选区域图;图4为本发明的水尺图像中全部个字符“E”和字符的识别结果图;图5为本发明的裁剪获得水尺图像;图6为本发明的旋转后的水尺图像;图7为本发明的切除空白边缘后的水尺图像;图8为本发明的水尺左侧边的识别结果图;图9为本发明的三分类方法寻找水尺图像中的水迹结果图;图10为本发明的最终计算结果图。具体实施方式如图1所示,本发明公开的基于图像识别的水位识别方法,包括如下步骤:步骤1,从采集的图像中定位出水尺位置,并根据定位出的水尺位置对水尺图像进行裁剪,获得水尺图像;步骤2,对裁剪获得的水尺图像进行字符定位,获得水尺图像中各个字符“E”和字符再根据字符“E”和字符的排列特点对水尺图像中的各个数字字符进行切割,获得各个数字字符图像;步骤3,对各个数字字符图像中的数字字符进行识别,获得各个数字字符的数值;步骤4,在水尺图像中识别出水迹位置,并根据水迹位置与最下侧一个字符的相对位置关系计算出水位高度。进一步地,步骤1中,获得水尺图像的具体步骤为:步骤1.1,对采集的水尺图像进行灰度化处理,如图2所示;步骤1.2,通过MSER算法找到灰度化处理后的图像中各个稳定区域作为候选区域,如图3所示,MSER是当使用不同的灰度阈值对图像进行二值化时得到的最稳定的区域,MSER首先提取图像中最大稳定极值区域的作为候选区域,再结合标准水尺的字符分布特征,能够快速确定候选区域;步骤1.3,对各个候选区域应用模板匹配算法,与字符“E”和字符的模板进行匹配,若匹配程度超过匹配阈值,则判定当前候选区域就是识别目标字符“E”或字符如图4所示,并求出每个字符“E”和字符的位置信息、匹配度以及方向信息;步骤1.4,根据各个字符“E”和字符的位置信息,计算出各个字符“E”的最左侧边位置、各个字符的最右侧边位置以及最上侧一个字符的上侧边位置,由最左侧边位置、最右侧边位置以及上侧边位置从水尺图像中定位出水尺位置,再根据定位出的水尺位置对水尺图像进行裁剪,从而获得水尺图像,如图5所示。进一步地,步骤2中,获得各个数字字符图像的具体步骤为:步骤2.1,找到识别出的各个字符“E”和字符中匹配度最高的字符,根据匹配度最高字符的方向信息确定水尺的斜率,再根据斜率旋转图像,使图像中的水尺呈竖直状态,如图6所示;步骤2.2,再对旋转后的水尺图像通过MSER算法找到各个新候选区域,再结合模板匹配算法对各个新候选区域进行字符“E”和字符的匹配,若匹配程度超过匹配阈值,则判定当前新候选区域就是识别目标字符“E”和字符并再次求出每个字符“E”和字符的位置信息、匹配度以及方向信息;步骤2.3,根据数字字符与字符“E”上下紧邻且与字符左右相邻的特点,结合字符“E”和字符的位置信息,对水尺中的数字字符进行切割,获得各个数字字符图像,其中左侧边字符的切割识别效果如图8所示。根据水尺中字符“E”与字符的排列特点,切割出每个数字字符,提高切割数字字符的鲁棒性,很好地解决了个别字符因为反光、污迹带来字符识别误差的问题。进一步地,步骤2.2中,在求出每个字符“E”和字符的位置信息、匹配度以及方向信息后,根据字符“E”和字符的位置信息重新计算出各个字符“E”的最左侧边位置、各个字符的最右侧边位置以及最上侧一个字符的上侧边位置,再对旋转后的水尺图像进行空白边缘切除,如图7所示。进一步地,步骤3中,获得各个数字字符的数值的具体步骤为:步骤3.1,对每个切割出来的数字字符图像利用KNN算法进行数字识别,找到与数字字符库中最接近的字符类,从而识别出各个数字字符,并应用模板匹配算法对识别出的数字字符进行匹配,并计算出相应的匹配度;步骤3.2,根据标准水尺的数字字符从上到下依次递减1的顺序排列特点,以识别出的数字字符中匹配度最高的数字字符为标准,依次对相邻的数字字符进行校正,提高数字字符识别的鲁棒性。进一步地,步骤4中,计算水位高度的具体步骤为:步骤4.1,采用Kmeans方法对旋转后的水尺图像进行分类识别,根据字符“E”的位置可以确定字符“E”的类别以及相邻白色的类别,从而确定水的类别;步骤4.2,在旋转后的水尺图像上从上向下寻找水所属类别的开始位置,即水迹与水尺的分界位置,取分界位置的最上部和最下部的平均值作为水迹高度位置,水迹高度位置如图9中的粉红线处标记所示;步骤4.3,计算水迹距离最下侧一个字符的距离=5×(水迹高度位置-最下侧一个字符下侧边位置)/字符“E”的高度信息;步骤4.4,计算水位的高度=最下侧一个字符下侧边高度位置-水迹距离最下侧一个字符的距离,计算结果如图10所示。本发明的创新点在于:1、将MSER(MaximallyStableExtremalRegions,最大极值稳定区域)算法应用在河流、湖泊以及水库背景相对较复杂的场景或光照不稳定的环境下,来识别水尺特定的字符“E”和字符有效提高了水尺定位的鲁棒性。2、利用水尺的数字符号具有顺序排列的特点,因此以模板匹配算法中匹配度最大的字符为依据,校准其它字符,解决个别字符因为反光、污迹带来字符识别误差的问题,达到很好鲁棒性。3、考虑测量水位的水尺的特征:每一个字符“E”下面是数字字符,而字符下面对应的还是一个字符的特点,从而求出的字符“E”和字符的位置信息,切割出每个数字字符。当前第1页1&nbsp2&nbsp3&nbsp当前第1页1&nbsp2&nbsp3&nbsp

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值