3.3.4
在功能菜单界面,本设计主要实现的功能有:开启监控、录像查看、删除录像、退出系统等。
开启监控就是进入实时监控画面,程序实现原理为把多播发送来的视频数据解压,再通过帧缓冲设备显示在屏幕上,这些在3.2节中已经讲过,多以这里便不在重述。
录像查看就是把本地保存的视频文件打开播放。这里为什么要把视频数据保存在接收端而不是直接在发送端保存呢?主要有以下两点原因。
(1) 因为本设计采用多播协议,实现了多用户同时进行视频监控功能,如果把视频数据保存在发送端,当多个接收端发送命令去调取发送端的录像数据时,势必会影响发送端的网络带宽,可能会造成接收端监控画面中断的不良后果。
(2) 由于某些公司的车间生产资料十分重要,视频数据保存在接收端就会有多份拷贝,不仅有利于随时调用查看,还可防止生产资料丢失。
要实现录像查看和录像删除功能,必须要实现文件选定的功能。Qt里自带有文件调取框这个类,其函数接口都声明在
其用法为:
QStringfileName=QFileDialog::getOpenFileName(this,"Openfile","~/capture_re/video/")
这里"~/capture_re/video/"为指定的开打目录,该函数的返回值为选取文件的文件名。
在获取到文件名之后,把它作为参数带入视频显示程序就可实现录像回放功能。视频显示程序的设计在3.2.2节已经讲过,这里便不再叙述。
要想实现删除文件功能可以调用system()函数来执行rm filename这个脚本命令,从而实现删除文件的目的。其代码为:
charcmd[256];
sprintf(cmd,”rm %s”,filename);
system(cmd);
退出系统则只需执行
this->close();
这条代码就可以实现了。
图3-12功能菜单界面
图3-12 文件调取框界面
第四章 实验结果
4.1 摄像头成像效果测试
一般来说摄像头的成像效果不仅跟摄像头的质量有关还跟当时环境的光照亮度,摄像头焦距的调整都有关系。本次测试是在网上室内日光灯下进行的。其成像效果不是十分满意,主要是光照稍微较亮的地方就会出现一片光晕。若作为环境秩序监控还是达到要求的。
图4-1 摄像头成像效果测试
4.2 视频延时测试
本次测试采用的方法是在让摄像头拍摄时钟,然后观察发送端和接收端的屏幕显示的时间值,其时间值之差就是网络延时。网络延时或多或少是存在的,通过截图可以得到该视频系统的延时大约为2秒左右。当然这是在网络计较好的局域网内测试所得的结果,如果在外网传输数据的话,延时应该会更长。
图4-2 发送端时间显示
图4-3 接收端时间显示
4.3 用户体验测试
本次测试,我们找了20位志愿者对我们的设计进行实用体验。其整体评论如下:
70%志愿者认为该系统界面整洁,操作方便,功能实用。
30%志愿者认为该系统的视频成像效果不理想,勉强达到监控的效果。
第五章 结论与展望
5.1
本系统除了能完成监控的本质功能外,本人认为该系统还有以下重要的几点优点与创新:
(1) 采用UDP多播网络协议,可以实现将监控画面同时传给多个接收端。例如公司总部和分公司采用该系统则都能同时对生产车间进行监控。
(2) 实现用户登录界面,有利于公司生产资料的保护。并且利用数据库,保存了用户信息,可实现多用户注册功能。
(3) 设置有管理员权限密码。普通用户只能查看实时画面和回放录像;管理员可执行删除录像操作和拥有注册用户权限。一般管理员密码给上层管理者用,而车间监控员只拥有普通用户帐号。
(4) 该系统的所有操作,均能通过6.5寸触控屏完成。相比其它需要依赖于电脑等通用计算机的程序而言,此系统具有不需要键盘、鼠标等外设,操作方便,成本低,专用性强等优点。
5.2
本设计作为嵌入式产品,自然在成本与专用性等方面有一定的优势,但本设计有一下几个缺点不容忽视需要进一步优化改善。
(1) 视频成像效果不太理想。改善方法:采用更高质量的摄像头。用更优化的视频压缩技术
(2) 视频压缩比例不够高,视频数据量不叫大。改善办法:采用更优化的视频压缩技术,兼顾压缩比例与画面质量。
(3) 本设计作为嵌入式产品,在软、硬件上的裁减不够完善。改善办法:根据产品需求,在系统上重新移植系统,删减掉不需要的功能模块。硬件部分可重新制作电路板,只添加需要的硬件。
希望本设计在以上方向上不断的去改善优化,将来必将成为一款受人欢迎的产品。