基于图像处理的水位计算设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于图像处理的水位计算算法设计
设计思想:在视频监控过程中,每隔一定时间(10分钟,也可自由设定),相机的摄像头对准水位尺照相一次。依据拍照图像,采用现代智能数字图像处理技术和模式识别技术,提取水位线,并计算水位线读数。
在实际应用中,需要在水位尺前方安置一台固定式摄像机定时摄像,,摄取的水位尺图像信息传输到设置在远端监视室内的监视器,从而实现对现场水位变化的远程监视,同时,该图像数据进入监视计算机的图像处理系统(本系统),进行图像处理以解算实时水位数据。解算得到的水位数据自动(也可通过人机交互判断确认)入数据库保存。其示意图如图所示。
整个系统包括下面几大模块:数据通讯程序模块、图像处理模块和水位数据提取模块。图像处理模块包括图像预处理、标尺的分割和水位线的提取,水位数据提取是采用模式识别技术识别有读数位置的水位,并反演推算得实际水位线的读数,即水位数据。
依据图像处理的经验,图像的分辨率越高,解算所得的结果越精确,然而,计算耗时也会增加。综合考虑,可暂定D1(704*576,目前主流的视频监控图像分辨率(PAL格式),也可以根据视频监控系统硬件的情况适当增大,还需要试验验证)。同时,对采集到的单幅图像不进行压缩,直接送入图像处理模块进行后续的处理,以免图像质量降低,影响识别的精度。在存储时以JPEG格式或JPEG2000格式压缩存储。
图像处理模块是整个算法的核心。图像处理模块的处理流程是(单通道,常用亮度Y通道。若水位尺是多彩色的,也可采用3通道分别计算,最后联合进行判断):
图像预处理
图像预处理模块的主要功能是对采集到的图像去除无用的部分,只保留含标尺部分的图像(向外适当扩展,便于后续处理),同时进行滤波,以消除采集图像时引入的噪声,和对图像中水位线进行纠正,以保证可以得到准确的水位数据。
(1)裁剪也就是去除对计算无关部分的图像,只保留用于计算的部分的信息(ROI)。
具体算法:根据标尺在实际图像中的影像,裁减掉图像中除标尺外的无用部分的图像,只保留含标尺部分的图像(可以试验确定,也可以程序中通过预处理进行裁剪)。同时将图像的大小(分辨率)更改为含处理后有数据部分的大小,以减少后续计算的计算量,加快处理速度,提高计算的精度。
(2)滤波采用均值滤波方法消除随机误差的影响(但是,均值滤波会使图像中的边缘模糊,所以还需要进行边缘锐化的处理);运用中值滤波方法消除脉冲噪声的影响,且可以保护图像中的边缘信息(具体的滤波方法试验确定)。
具体算法:中值滤波就是求邻近像素点(像元)的中间亮度值,一般取临近1个像素,即窗口大小为3*3,通过窗口在图像上平移,窗口中心的像素值用窗口内各像素值的中值代替。
(当然也可以采用其他的高通滤波方法。保证滤波后图像中的边缘等高频信息得以保留。具体滤波方法也可以通过实验重新确定。)(3)纠正通过相机获取的图像中,水位线有可能不是一条直线(存在着变形的情况,变形的程度由采集图像的实际环境决定,也可以根据试验确定一个大致的范围),需要进行水位线形状的纠正,保证读取到的水位数据的准确性。
纠正的方法:
在固定标尺、固定摄像机的情况下,图像中水位线的形状基本固定,可以认为标尺横截面前面部分的形状就是水位线的形状。因此,可以根据实际获取的图像进行实验,建立一个查找表,对偏移量进行修正,使得处理后水位线的形状与实际形状相同。(与标尺横截面前面部分的轮廓线重合且为实际形状)。
水位线的分割、提取
在标尺的水位线附近,由于介质不同,水位线呈现出明显的边缘特征。可以采用边缘提取的方法分割出水位线并进而提取水位线的特征信息。
具体算法:
(1)采用边缘提取的方法对图像进行处理,提取出图像中的边缘边缘提取算法:采用沈俊算子进行边缘提取(原因:提取出的边缘闭合)。
最终结果:二值图像边缘图
(2)采用轮廓跟踪的方法确认图像中的水位标尺;
轮廓跟踪算法:8方向链码轮廓跟踪
最终结果:封闭轮廓描述的对象
水位线的精确定位:
具体算法:识别水位线。经过前面与处理后,水位线一般是水平的,可在竖直方向上投影,找极大值的方法。(根据拍照后标尺的实际图像进行判断,也有可能拍照的图像有90或270度的旋转,此时水位线是竖直的,需要在水平方向上进行投影然后计算极大值)。极大值处可以认为是水位线的位置。首先要过滤掉一些杂波的影响;
数字字符识别、水位计算
针对水位标尺的的具体情况,识别出标尺上的数字或设置的特征,计算具体的水位线。
具体算法:首先需要判断水位线上面里水位线最近处的水位高程数字。沿着水位尺,从水位线开始,向水位尺顶部方向查找第一个数字字符(针对每个闭合的图像进行匹配)。
识别数字字符
模板匹配算法算法识别图像中的数字,得到水位线上距离水位线最近的高差的数字值。
计算实时水位
根据上一步识别出的水位尺上的数字,以及前面检测出的水位线,计算实际水位值(需要加上基础高程)。