摘要:针对现有自助快递投递箱使用中存在的安全问题, 文章提出了一种基于物联网的分布式视频监控系统。监控前端以S3C6410嵌入式处理器为核心, 通过USB连接视频采集模块, 对采集的视频实现编码和加密传输。视频服务器集群采用分布式实现对视频文件的分散存储和管理。通过压力测试, 该系统在实际环境中运行状态良好, 能够满足自助快递投递箱的基本视频监控需求。
关键词:自助快递箱; 分布式; 视频监控;
Abstract:Aiming at some security problems existing in the present intelligent express delivery box system, this paper presents a distributed video surveillance system based on Internet of Things. The front-end surveillance is designed with S3 C6410 embedded processor as its core, and connects video acquisition module via USB. Encoding and encrypting transmissions for video data collected can implement. The Video Server Cluster adopts distributed technology in order to implement distributed storage and management of video files. The system words well in the actual environment and can satisfy the basic video surveillance requirements of self-service express delivery box with stress texting.
Keyword:self-service delivery box; distributed; video surveillance;
近年来, 随着电商时代的到来, 快递行业也随之蓬勃发展, 各个小区中的自助快递投递箱也逐渐普及开来[1]。在目前自助快递投递箱的使用中, 引起各方关注的重点就是安全问题。视频监控作为一种具有较强安防能力的综合系统, 近年来已经被广泛的应用于自助快递投递箱系统中, 而视频数字信息的海量数据性特性给信息的存储和传输带来了巨大的难题, 目前仅通过提高设备性能的方式往往造成成本高昂, 因此其在自助快递投递箱中的使用受到严重限制[2][3]。
因此本文针对以上问题, 设计了一种分布式网络视频监控服务端, 由一个中心服务器和若干个协服务器构成, 通过将视频监控的控制、存储和管理功能分布到网络中各个协服务器里去, 从而有效规避中心服务器的性能瓶颈。由此, 即便采用性能较低、价格低廉的服务器集群为视频监控服务端, 分布式视频监控系统一样能实现高性能要求, 并且兼具使用灵活和易于扩展特点。
1、总体框架设计
分布式视频监控系统包括监控前端和分布式服务器群两大部分的设计, 其设计框架图如图1所示。分布式服务器集群的中心服务器设计为管理服务器, 负责管理整个系统, 视频数据全部存储于分散的协服务器中, 也就是视频文件服务器[4]。监控前端实现视频的实时采集和网络传输。在该设计方案下, 即使在每台结点服务器性能较低的情况下, 也可以通过控制与调度, 实现大批量的低价服务器的结合, 从而实现高性能视频监控服务端的目的。
图1 分布式网络视频监控设计框架图
2、视频监控前端设计
在基于物联网的自助快递投递箱的应用中, 视频监控前端能通过网络向视频文件服务器实时传输所采集的视频数据。本节提出基于嵌入式的视频监控前端设计方案, 该系统的硬件设计以S3C6410嵌入式处理器作为硬件系统核心。嵌入式智能视频监控前端的软硬件构成如图2所示。硬件采用基于S3C6410的嵌入式平台, 软件基于Linux操作系统设计, 设计为一种多层次的嵌入式智能视频监控前端软件框架, 以达到网络智能视频监控服务功能[5]。
图2 监控前端硬件结构图
2.1、视频采集与实时传输
对于监控前端的视频采集与传输软件设计, 采用Linux下的V4L2视频捕获编程驱动程序。USB摄像头在Linux操作系统中映射为一个设备文件[6]。开始视频采集时, 先打开摄像头设备文件并完成设备初始化, 之后通过ioctl () 函数发送视频采集命令, 开始视频帧的采集。在获取视频帧数据之后, 采用S3C6410内部的MFC硬件编解码器对其进行H.264编码并传输。编码主要过程由Ssb Sip H264Encode Exe () 函数来执行, 对编码后的NAL包采用RTP协议传输, 即以RTP包的形式封装所要传输的视频数据。对于视频视频数据的传输, 相比于可靠的TCP传输, 基于UDP的RTP协议 (非可靠传输) 虽然不保证每个RTP视频数据包绝对传输成功, 但由于传输延时小、速率高, 且视频数据个别帧的丢包并不影响整体视频效果, 因此采用RTP协议的传输方式可以满足大容量视频数据实时传输的需求。
2.2、视频加密传输
对于RTP数据包中的有效载荷, 本文使用AES加密方式对其进行软件加密, 所加密的区块长度采用128比特, 即对一个4×4字节 (128比特数据) 的明文矩阵进行Sub Bytes变换、Shift Rows变换、Mix Columns变换和Add Round Key变换。由于RTP有效载荷中的数据长度并非都为128的倍数, 因此在软件设计中, 对于不足128倍数的有效载荷采用末尾填充随机数据的方式进行对齐, 并在RTP包头中增加CSRC项, 用于记录RTP包中原载荷的实际长度, 避免末尾所填充的随机数据造成的干扰。
3、视频服务器设计
3.1、视频文件服务器设计
视频文件服务器运行在Windows操作系统之上, 用于接收和处理来自监控前端的请求或管理服务器的命令, 如监控前端视频的传输请求、管理服务器的视频文件查询和在线点播请求等, 工作流程设计如图3所示, 初始化模块完成相应操作后, 启动心跳检测子线程, 定时检测视频文件服务器与监控前端以及管理服务器的连接状态, 以实现网络连接保活机制[8]。之后, “工作主线程”开始循环运行, 接收服务器外部通信请求或命令, 并调用相应的子线程进行处理。
若命令来自管理服务器, 则启动云台通信子线程, 处理来自管理服务器所下发的业务。若请求来自监控前端则启动相应的视频接收子线程, 用于实时接收监控前端的RTP视频包数据并存储在相应的文件中。在软件设计中, 两种类型命令启动的子线程在操作完成后都会自动关闭, 从而提高服务器资源的利用率。
图3 视频文件服务器软件设计流程图
3.2、管理服务器设计
管理服务器用于提供各个视频文件服务器中视频文件的管理和指定存储文件的在线播放或者指定监控前端的监控直播, 软件采用MFC编程, 其软件设计框架图如图4所示[9]。UI监控界面用于实现人机命令交互并提供监控视频播放窗口, MFC程序中的消息响应处理部分则用于识别用户命令并执行相应的功能模块, 包括各个视频文件服务器中视频文件的管理、指定文件的网络传输和解码播放、指定监控前端视频直播。“视频文件管理”模块通过向各个视频文件服务器发送命令和接收响应, 以完成对整个监控系统视频文件的统一管理。“视频网络接收”模块用于接收指定视频文件服务器上的指定视频存储文件数据或其转发的实时监控视频数据, 以实现指定视频存储文件的在线点播和监控前端的实时视频监控, 视频传输采用RTP协议, 由于接收到的RTP包中的有效数据经过了H.264编码压缩和AES加密处理, 因此在播放视频文件之前需要对其进行解密和解码操作。
图4 管理服务器设计框架图
4、系统验证
在本文的验证方案里, 分布式服务器群由1台管理服务器PC机和10台视频文件服务器PC机组成, 测试在不同视频监控前端数量下的压力数据, 见表1:
表1 不同视屏监控前端连接下测试结果
测试结果表明, 在视频监控终端数量为100的情况下, 整个分布式服务器群视频接收正常, 由此可以看出该系统的分布式网络视频监控能基本满足中小型规模的自助快递投递箱对视频监控的需求。
5、结束语
本文针对自助投递箱场景中的安全问题所提出了基于物联网的分布式视频监控设计方案, 压力测试结果表明系统运行状态良好, 视频数据接收率高, 能够满足智能小区等中小规模的自助快递投递箱场景中对视频监控需求, 有效避免快递收发过程可能出现的漏件、遗失等纠纷, 为自助快递投递箱的应用提供一定参考价值。
参考文献
[1]倪明, 孙潜.快递业运营模式研究[J].北京交通大学学报, 2013, (1) :49-54.
[2]张庆英, 刘燕, 王锟.基于快递业务的应急系统研究[J].武汉理工大学学报 (交通科学与工程版) , 2011, 35 (4) :825-828.
[3]杨聚平.以客户为中心“最后一公里”配送模式研究[D].对外经济贸易大学, 2014.
[4]李岸, 许雪梅, 郭巧云, 等.基于ARM11的视频实时传输系统[J].计算机系统应用, 2010, 19 (11) :15-18, 42.
[5]张乐.基于So C的嵌入式智能视频监控前端软件的设计与实现[D].上海交通大学, 2010.
[6]宋强, 齐贵宝, 曹冲, 等.基于嵌入式Linux下安全文件传输系统的设计[J].吉林大学学报 (信息科学版) , 2012, 30 (4) :397-402.
[7]谢洁杰, 赖松林, 赖云锋, 等.基于S3C6410的智能快递投递箱系统设计[J].微型机与应用, 2015, 34 (7) :92-94.
[8]刘建敏.基于6410处理器的嵌入式视频监控系统设计与实现[D].西南交通大学, 2011.
[9]刘克成.在线视频点播系统的设计与实现[D].南京理工大学, 2010.