时间:2015-04-28 11:07 文章来源:http://www.lunwenbuluo.com 作者:林伟森等 点击次数:
摘 要: 为了方便读者查询图书馆座位余量,运用LabWindows/CVI设计了基于图像识别的座位余量判别系统。通过视频图像采集和计算相应矩形区域的平均灰度值,与模板图像进行对比分析,从而识别座位余量分布情况。同时运用TCP/IP协议进行数据传输,将结果显示在学校图书馆主页上,使读者通过移动端或PC机可随时查询结果。模拟测试表明,该系统能有效识别座位余量。
关键词: 座位余量; 视频采集; 图像处理; 网络通信
中图分类号:TP311.11 文献标志码:A 文章编号:1006-8228(2015)04-35-03
Abstract: In order to query the remaining seats of the university library expediently for reader, this paper designs a system that detects the remaining seats by using image recognition with LabWindows/CVI. Calculates the average gray value of the corresponding rectangular region by video capturing, compares with the template image to identify the distribution of remaining seats, and displays the result on the homepage of university library. So reader can query the result by PC or mobile terminal at any time. After simulated test, the system can identify remaining seats effectively.
Key words: remaining seats; video capture; image processing; network communication
0 引言
高校图书馆有丰富的馆藏资源和设施,是高校学生课余学习知识的首选场所。由于目前普遍实行了图书资料的信息化管理制度,读者通过登录图书馆主页,可以实时查询图书的借阅信息,方便了读者借阅、查询资料等要求。但是,读者在主页上尚无法了解到图书馆座位资源使用信息。由于图书馆的座位资源有限,读者如果无法及时得知座位利用情况,有可能在某个时段,出现大量读者,导致一座难求的情况,因此高校图书馆经常出现“占位”现象;又或者在某个时段有大量空位出现。及时获取图书馆的座位余量信息并发布在公共平台如图书馆主页,既可方便读者,也可以使图书馆座位资源得到合理利用。采用人工方式统计并发布座位余量,既花精力也耗时间,而且无法实时反映该信息。本文设想利用现有图书馆中的视频监控图像信息,采用图像分析的方式识别座位余量,并发布到网页上,既节约人工资源,又能反映座位资源的使用情况,使图书馆座位资源信息化,达到合理有效的利用。
1 系统的总体设计
系统采用LabWindows/CVI平台开发[1]。系统的工作流程如图1所示,包括视频图像采集显示,图像定时捕捉,座位余量识别,余量信息发布等多个模块。
视频监控模块是通过视频驱动程序,驱动摄像头实时采集监控场景图像,将获取的含图书馆座位的图像显示在计算机显示器上。视频图像数据可达到24帧,分析座位余量并不需要分析每帧数据,可以间隔10-15分钟,在视频数据流中提取一帧加以分析,因此设置定时捕捉模块可通过计算机内存对进行更新显示的视频数据中“冻结”一帧加以分析,可大大减少数据分析的时间。座位余量识别模块,是对提取的单帧图像,采用图像分析的方法来确定固定场景中的座位占用情况,由此得出座位余量信息。余量信息发布模块则是运用TCP/IP协议进行网络编程,将获取的座位余量信息传输至校园网站服务器,并将结果发布至学校主页上,供读者通过PC机或APP查询浏览网页,而不需要耗费精力去寻找座位。
2 视频图像采集
LabWindows/CVI是National Instruments公司开发的虚拟仪器软件开发平台,它为用户开发虚拟仪器软件提供了丰富的面板控件,采用其中的控件CANVAS可用于显示监控视频。Windows提供了专门的摄像头驱动接口,可以被大多数视频采集卡支持,相关模块集成于avicap32.dll。avicap32.dll为应用程序提供了一个灵活的使用方式,少量代码便可实现视频捕捉程序[2]。
3 座位余量识别原理
3.1 模板图像处理
初始拍摄的图像是无人的,并且书桌和座椅整齐摆放(如图2所示)。所以对书桌和座椅截取相应的矩形区域,并计算矩形区域的平均灰度值,作为模板图像数据,用于后期监控捕捉图像对比[3]。
具体处理流程如图3所示。设置数组chair[row][column]和desk[row][column],其中,row为每行书桌和椅子的个数,column为每列书桌和椅子的个数,用于存放模板图像数据。
矩形区域平均灰度值计算方法:
⑴ 提取图像各个灰度级的像素数并存放于数组sumGray[256];
⑵ 灰度值累加和=;
⑶ 总像素数=;
⑷ 平均灰度值=灰度值累加和/总像素数;
依次对书桌(如图4)和座椅(如图5)截取的矩形区域计算平均灰度值,并存放于数组chair和desk之中。矩形区域计算完毕之后,将数组内容转化成文档保存于指定工程目录中。
3.2 识别座位余量
对于座位余量的断定,从书桌和座椅两个方面进行判别。
书桌部分:书桌处于固定位置,基本不会随着人员的流动发生偏移。可以依据模板图像所截取的书桌矩形区域,同样对监控拍摄所得图片进行截取,并计算平均灰度值。
座椅部分:座椅需要分两种情况进行设计分析。当座椅同书桌一样处于固定位置,则同样截取相应的矩形区域,计算平均灰度值即可。当座椅是可移动的,则会随着人员的走动发生偏移,就必须定位座椅部分。对于初始图像,通过中值滤波去除部分噪声;接着运用边缘检测算法提取边缘检测图像;将原始图像和边缘检测图像进行“或”运算,将座椅部分与背景分离开来;设置阈值,将“或”运算所得图像进行二值分割,其中,背景灰度值为0,座椅部分灰度值为255;将二值分割图像与原始图像进行“与”运算,最终可以提取座椅部分;截取相应矩形区域,计算平均灰度值。
联系方式
随机阅读
热门排行