基于嵌入式Linux的水文监测系统
2017-08-08冷建伟沈芳婷
冷建伟,沈芳婷
(天津理工大学 自动化学院,天津 300384)
基于嵌入式Linux的水文监测系统
冷建伟,沈芳婷
(天津理工大学 自动化学院,天津 300384)
由于水文监测站位于野外,工作环境恶劣,并且随着机器视觉技术的不断发展,搭建一套结合嵌入式Linux及图像识别技术的水文监测系统成为未来水域监测的一大主流方向。该系统采用B/S架构,前端CCD摄像头模块固定后采集现场水域图像,系统可以实现远程视频的实时传输及存储,并且用户根据需求可以选择监控时间间隔和传输速度。该系统应用后,人力资本大幅节省,水域突发事件的发现和排除时间也被缩短,直观地观察水域周边情况的同时,工作效率和管理水平得到提高。
嵌入式;水文监测;图像处理;采集存储
随着嵌入式技术、图像识别技术的不断发展,人们对数字化的要求也越来越高[1-2]。嵌入式系统作为一种高效、低耗、低成本的智能化视频采集、存储、传输产品越来越得到市场的青睐[3]。在近几年的研究中,我国研究人员及学者已经陆续提出借助卫星或无线网络传输的水文监测方式[4-6],将水域现场的传感器检测出的数据传输至用户端并进行存储及分析,这种方法已经减少了人力、财力,有效地提高了防汛及水利调度效率,但在前期设备安装上耗费了大量精力,有待提升,并且系统的智能化有待提高[7]。
文中所采用的方案,结合水文水域环境特点,开发了嵌入式图像处理识别系统。该系统基于B/S架构,前端图像采集系统集成了摄像头CCD模块、镜头、红外光源等,配备支架[8];图像采集系统将RGB彩色图像输入后,通过图像识别判读水文尺及进行浮标定位测速,在进行数据采集、分析的同时保存原始视频录像,用户则可以根据需求选择实时查看或回放。运用了搭载Linux嵌入式系统的ARM板作为数据处理核心器件,管理维护人员能够在第一时间知晓现场所发生的特殊情况,跟踪、捕捉、特写,并快速做出有效反应。对影像资料的保存则可以对突发事件进行记录,提高安全管理效率[9]。
1 系统硬件搭建
水文监测现场共有8台CCD摄像机,用户根据需要可以切换1路/2路/4路/8路浏览模式进行监视。因此,对于在局域网内的所有用户机需使用B/S架构方式进行数字图像数据的浏览[10]。前端摄像机经过交换机与网络硬盘录像机 (Network Video Recorder,简称NVR)相连,CCD摄像机经过视频编码器完成A/D转换,通过网线将数字视频码流传输至内置嵌入式开发板的NVR中,开发板集成了ARM芯片处理器及存储器,可以对数字视频信号进行处理、存储、管理。
图1 系统硬件搭建示意图
针对系统搭建在野外的设备,供电方式需要仔细研究,选择支持POE供电的无线网络设备可以保证在数据流传输的过程中,同时为设备供电。鉴于野外自然光照射充足,采用风电互补太阳能系统为现场CCD及NVR设备供电,再由NVR连接无线网络发射端的网线对其进行POE供电。但无线网络的发射端及接收端之间为了增强信号,会增加四个中继器,并且这四个中继器均建立在山峰处,所以也采用风电互补太阳能发电系统供电。无线网络的接收端则位于中控室,接受POE供电。
2 系统功能实现
2.1 图像采集与存储
图像采集是整个系统的前端部分,本设计通过V4L2(Video for Linux Two)操作和控制视频采集设备,用于内存映射、实现中断的函数都定义在一个头文件的struct file_operation中,直接访问调用该结构中的相应函数即可实现对采集设备的开关读写操作,并将数据写入SQLite数据库。V4L2支持较多的硬件设备,具有很好的扩展性和灵活性。具体的图像采集流程,如图2所示。对于视频数据采集设备,同样以设备文件的形式存在于Linux系统中,对其进行普通文件的读写访问就可以实现对设备的操作。
使用open()函数打开视频摄像头设备文件,根据系统需求,即使未捕获到信息,为了做出正确的判断和操作,也要返回缓存数据给应用程序,遂采用非阻塞模式打开设备;在获取摄像头设备的基本信息后,对其进行视频制式和帧格式的设置,并判断正误;定义帧缓冲的结构体,分配内存,申请缓冲区并全部入队列,以便存放数据;采用mmap()函数存取内核中的图像缓冲区,将申请到的帧缓冲映射到用户空间,直接对采集的帧进行操作,停止图像采集后,图像采集序列从缓冲区被移除,存储区的映射也被清除,内存释放;关闭摄像头设备文件,即关闭摄像头。
图2 视频图像采集流程图
2.2 数字图像处理
RGB色彩方案作为最标准的图像表示方案广泛应用于彩色图像的传输和存储。本系统中采用打包排列,每个像素都是3通道、1透明度的32位int型表示,由于R、G、B 3个分量是按相反的方向构建彩色像素,在访问像素数组时采用移位和掩码操作可以提高程序运行效率。彩色图像像素存放示意图如下所示。
图3 彩色图像像素存放示意图
2.2.1 图像滤波
由于硬件设备的条件限制或传输过程的不完善,采集的图像会受到不同程度的噪声污染,这些噪声多呈现出对孤立像素点的跳变影响,为了防止这些噪声对图片的信息内容产生影响,往往需要通过一些算法对图像进行去噪,还原高质量原图,从而对图像进行后续的分割、特征提取、图像识别等工作。对于提升图像的有效性和可靠性,图像滤波是必不可少的一项操作。对于数字视频图像,为了提升实时性,一般多采用直接在空域对像素处理,中值滤波作为不需要先验信息的滤波运算方法,在保留前景图像形状、大小,去除背景噪声的同时,进一步提升了运算速度,简便快捷。
1971年,J.W.Tukey提出中值滤波,用于处理一维信号的时间序列分析,之后将其应用于图像的二维信号去噪处理中,效果显著。中值滤波的原理[11],是针对当前目标像素I(m,n)选取其4-邻域或8-邻域,用邻域内的中值代替目标像素,使目标像素更好的融入周边环境,从而消除噪声点,图4为中值滤波原理图。
图4 中值滤波原理图
中值滤波是将邻域内的所有像素重新升序排列,位于最中间位置的像素值取做中值。中值滤波不会创造出邻域中不存在的像素值,对于邻域内的突变噪声点也能简单有效的避除,突变点多为邻域内极大或极小值,不会影响中值的求取,具有较好的鲁棒性。
2.2.2 图像颜色空间转换
在嵌入式机器视觉处理中,需要确定彩色图像采用的颜色空间模型,常用的模型除了RGB模型还有 CMY 模型、HSV 模型、CMY 模型等[12]。 R、G、B 作为自然光的三原色,相加混色后形成了适合人眼观感的彩色图像,但若直接对其某一分量进行改变,视觉感触就会发生较大变化,所以多数情况下会将RGB模型变换至HSV或HIS模型[13],颜色信息主要由H单个分量控制,对其他分量改编后只会影响亮度和饱和度,对图片信息的影响较小。RBG模型转换至HSV模型的公式如式(1)所示:
由于公式中存在余弦函数及多次加减乘除运算,显然对于整个嵌入式系统的实时性会产生不必要的延迟,所以在系统采集图像、传输图像、存储图像的过程中仍然采用RGB色彩模型对其处理,色彩模型的转换及其他图像处理算法都在用户端重新开辟区域进行,提升系统的传输效率及实时性。
2.2.3 图像分割
彩色图像信息以数据流的形式存在,对图像的分割其实就是变相对数据进行分类,但对于我们所感兴趣的区域还要考虑到像素间的连通性和邻近性[14]。首先,以目标区域的特征颜色为先验信息进行色彩过滤,并转换成灰度图像,通过全局阈值的选取将图像转换成二值图像。在对图像进行形态学处理后,使用Canny算子对二值图像进行边缘检测,由于实验中以水文尺作为目标区域,根据水文尺的形状特征,选用Hough变换来检测水文尺的竖直边界,通过对截取图像的行扫,确定上下边界。图像分割效果如图5所示。其中(a)为原图,RGB格式的彩色图像;(b)为以特征颜色为先验信息转换后的灰度图像;(c)(d)为处理后的二值图像;(e)中的灰色竖线为Hough变换后得到的水文尺边界;(f)为最终分割出的水文尺图像,是RGB格式的彩色图像。
图5 图像分割效果图
2.3 提高处理速度
受硬件条件限制,数据的处理速度因不同图像格式的编码复杂程度而有所差异,使用BMP格式的图像可以降低编码复杂度,有限地提升嵌入式系统的运行速度;确定采用双核硬件设计的前提条件下,使用哈佛结构也能节省一定的数据处理时间;选取合适的CPU总线带宽也可以提升数据传输速率,CCD摄像机获取的每一帧图片大小为1 024×768×32=25 165 824(bit),视频图像刷新速度为 24 帧/s,那么每秒的信息量是25 165 824×24=603 979 776 bps,或约为603 Mbps。经过H.264标准高度压缩后的视频能在4 M甚至是2 M带宽下实现1080P实时传输,数据总线、地址总线和控制总线都可以在满足带宽要求的前提下最大限度简化硬件构造,组成低功耗、高效率的嵌入式水文监测系统[15]。
3 结 论
随着近几年的机器视觉的快速发展,通过网络对现场进行实时监控变得越来越智能化,对于复杂的传感器网络系统,可以用图像处理的方法进行改善和简化。根据可持续发展要求,本文所提出的水文尺监测系统可以实现节约资源,设备供电使用新能源,运用科技打造了更经济、更便捷的自然灾害预防监测系统。目前,无线网络设备已通过测试,后期图像处理工作仍处于测试阶段,产品前景广阔。
[1]李强,刘晓峰.基于物联网技术的水文监测系统[J].计算机系统应用,2015(9):66-69.
[2]陈果.基于嵌入式的水文水情数据采集系统[J].南方农业,2015(24):224-225.
[3]李多,叶桦.一种基于STM32的嵌入式低功耗无线手持控制器设计[J].电子设计工程,2014(18):101-104.
[4]李正明,侯佳佳,潘天红,等.基于ZigBee与GPRS的无线水文监测系统设计[J].排灌机械,2009,27(3):184-189.
[5]陈刚.基于北斗的远程水文监测系统[D].四川:西南石油大学,2013.
[6]Scott A.Olson,J.Michael Norris.U.S.Geological Survey Streamgaging[EB/OL].http://pubs.usgs.gov/fs/2005/3131/,2007-03.
[7]江杰,张云飞.基于无线传感器网络的水文监测系统[J].工业控制计算机,2011,24(7):68-70.
[8]王伟,董先勇,魏进春.梯级水电站水文泥沙监测信息管理暨关键技术研究 [C].中国水利学会学术年会,2014.
[9]张文彬,马志刚,梁明.基于NET技术的B/S结构在汛期地质灾害督导信息报送中的应用[J].四川地质学报,2011,31(S2):125-128.
[10]付红伟,陈厚涛.无线网桥在录井现场的图像传输方法[J].录井工程,2014(2):70-72,80.
[11]苏育挺,张天娇,张静,等.基于局部二值模式的中值滤波检测算法[J].计算机应用研究,2016(1):258-261.
[12]王江涛,石红岩,李文.彩色图像分割算法综述[J].信息安全与技术,2015(4):76-80.
[13]杜昊凡,康超.浅论人的视觉系统特性和色彩模型[J].数字通信世界,2016(2).
[14]张国权,李战明,李向伟,等.HSV空间中彩色图像分割研究[J].计算机工程与应用,2010:46(26):179-181.
[15]辛月兰.基于图割的图像分割综述[J].微型电脑应用,2012,28(9):1-5.
[16]孟海斌,张红雨.超低功耗嵌入式系统设计技巧[J].单片机与嵌入式系统应用,2010(8):16-19.
Hydrological monitoring system based on embedded Linux
LENG Jian-wei,SHEN Fang-ting
(School of Electrical Engineering,Tianjin University of Technology,Tianjin 300384,China)
Because the hydrological monitoring stations are located in the field with poor working environment,and with the continuous development of the machine vision technology,building a hydrological monitoring system based on embedded Linux and image recognition technology is becoming a major trend in the future.The system uses the B/S architecture,and the front camera CCD module collects the image of the water area.The system can realize the real-time transmission and storage of remote video,and the user can choose monitoring time interval and transmission speed according to the demand.After the application of the system,the human capital is substantially saved,and the discovery and rule out time of the sudden incident in water area are shortened.At the same time to observe the surrounding conditions of water intuitively,the work efficiency and management level are improved.
embedded; hydrological monitoring; image processing; acquisition and storage
TN99
:A
:1674-6236(2017)14-0183-04
2016-07-13稿件编号:201607100
冷建伟(1961—),男,辽宁阜新人,教授。研究方向:电力电子和运动控制及计算机控制系统。