当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘 要:近年来,随着移动通信网络的飞速发展,智能手机的功能日益强大,移动视频监控为视频监控提供了一个重要的研究方向。将智能手机作为监控客户端,可为人们随时随地根据需求进行实时监控提供一个十分便捷的操作平台。文中设计了一种以摄像头为视频采集端,以混合编码技术为视频压缩编码,以智能手机为移动视频客户端的视频监控系统,实现了监控视频的实时传输,并保证在客户端流畅播放。

引 言

随着互联网技术的迅速发展,传统的监控系统已无法满足人们对准确性、适用性和方便性的要求。同时,智能手机更新换代,处理能力日益变强,成为了人们日常生活中不可或缺的一部分。为满足人们对监控区域进行随时随地实时监控的需要,本文研究设计了一种智能手机视频监控系统,将手机端作为视频监控客户端,结合混合编码技术,实现了对监控区域的实时监控与监控视频的存储。

1 移动视频监控系统的设计

本文设计的视频监控系统、移动视频客户端均基于Android 系统,有效结合了混合编码技术与云存储技术[1],可在客户端随时随地观看锁定的摄像视频,若视频图像发生异常,能在第一时间报告给锁定的主人,主人可通过App 远程控制摄像头。

2 移动视频系统的关键技术

2.1 混合编码技术

为了使高质量通信成为可能,并尽可能减少数据损失,故使用主流的视频编解码标准H.264。视频编码的目的在于减少表示数据的比特。由于视频图像数据的相关性强,在帧内以及帧间具有大量空域和时域冗余信息,因此可以通过去除这些冗余信息来实现对视频数据的压缩[2]。其中,在数据压缩方面最受欢迎的是基于统计特性的运动补偿+ 变换编码的混合编码框架。国内外通用的视频压缩标准均基于此框架,如广泛使用的MPEG 系列及H.26X 系列标准。

MPEG-4 不仅针对在一定比特率下的视频编码,更注重多媒体系统的交互性和灵活性。主要应用于视频电话、视像电子邮件等,其传输速度要求较低,为 4 800 ~6 400 bit/s,分辨率为176 144。利用较窄的宽带,通过帧重建技术压缩和传输数据,力求以最少的数据获得最佳的图像质量[3]。

H.264 技术具有比 MPEG-4 更为高效的编码效率,比后者节约 50% 的码率。可提供连续且流畅的高质量图像,并且在较低码率的情况下依旧能提供较高质量的视频图像[4]。

就单张图像来说,MPEG-4 对视频数据的处理更优秀; 而就整体视频传输来说,H.264 更胜一筹。

预测编码:建立一个模型,通过数据的相关性,利用之前的样本对下一个新样本值进行预测,并将预测值和实际值的残差值编码传输到接收端,同时在接收端建立一个相同的模型,按此模型进行解码操作。

运动估计:从当前帧中提取视频序列的运动趋势和走向过程。

一个完整的编码过程基本可以概括为视频源通过滤波器得到波形图,量化得到初始的完整码流,通过帧间、帧内编码和熵编码技术得到最终压缩后的码流。

视频编解码部分采用JM 编解码器。在实验中,视频源将收集到的视频数据改变格式后输入到JM 编码器的工作目录中,在 Visual Studio 2013 平台上运行。通过编码器采样获取预测数据,并与实际值相减得到残差,使用帧内、帧间技术对残差进行量化操作 / 变换,对编码语法元素进行熵编码,然后在编码器的工作目录下得到压缩后的码流。

当码流传输到接收端后,同样会被输入到解码器的工作目录中,通过一系列相反的操作后得到压缩前的视频数据。

2.2 客户端实现

2.2.1 平台选择和开发语言

服务器端采用Windows 操作系统与Java 语言;客户端包括Android 操作系统,Java 语言,Android 编程。

Java 是一门面向对象编程的语言,较好地实现了面向对象编程理论,同时也是一种不受限于特定平台的语言,具有可移植性[5]。此外,Java 还具有稳健、安全、高性能等特征, 是一种功能丰富的开发语言。

2.2.2 客户端 UI设计

用户界面(UI)是系统和用户之间进行交互与信息交换的重要媒介,使得用户能够方便、有效地操作硬件以达成双向交互,完成工作。

本文 采用 Android Studio 进行 Android 编 程。Android Studio 具有非常丰富的可视化编程功能,可以在编程的同时看 到其被应用在不同尺寸屏幕中的情况。Android 操作系统的用 户界面都以 View 与 ViewGroup 为基础。View 是用户界面的 基本组成单元,ViewGroup 是其子类,ViewGroup 的子类称为 “Layout(布局)”。View 与 ViewGroup 在布局中的层次结构如 图 1 所示。

智能手机视频监控系统的设计与实现

Android 编程中有多种 布局方 式, 分别为线 性布局(LinerLayout), 相 对 布 局(RelativeLayout), 帧 布 局(FrameLayout), 绝对布局(AbsoluteLayout) 等。本文编程主要用到线性布局(LinearLayout), 该布局有 horizontal 和 vertical 两个方向。Android Studio 在创建布局方式上分为两种: 其一,在XML 配置文件中声明布局方式;其二,在应用程序中直接通过代码实例化布局及其组件。

2.3 视频的播放显示

对于获取的视频文件首先要经过解码, 之后再通过Android客户端播放。Android操作系统提供的VideoView和MediaPlayer可播放视频[6]。

MediaPlayer 在播放视频时需要自己准备显示视频的组件、播放时的控制按钮等。首先创建一个 MediaPlayer 对象,再通过setDataSource()设置数据源,可以是文件、文件 路 径 或 URL。 调 用 MediaPlayer.setDisplay(holder) 设置 SurfaceHolder,surfaceHolder 可 以 通 过 surfaceview 的getHolder()获得,调用 MediaPlayer.prepare()准备、调用MediaPlayer.start()播放视频。

VideoView是Android提供的较为好用的播放视频组件, 不仅内建了显示视频的功能,还可以直接加入 MediaController 对象作为播放控制接口。VideoView提供的 setVideoURI() 可以设置视频的 URI,start() 可以开始播放视频,pause()可以暂停播放视频,stopPlayback()可以停止播放视频。

VideoView 视频播放框架如图 2 所示。

智能手机视频监控系统的设计与实现

从图 2 可以看出,VideoView 组件进行视频播放的过程可以分为三步:

(1) JavaFramework层。应用程序进入VideoView, 再经过Surface;

(2) NativeFramework层。先到SurfaceFlinger,然后借助PVPlayer到OverlayHal;

(3) Driver层。利用Mainframebuffer和VideoPlane进行播放。

2.3 视频数据的存储

在视频监控系统中,对已经采集的视频数据进行妥善存储,便于之后回调查看。目前可行的存储方式有SD 卡存储与云存储。云存储是一个以数据和管理为核心的云计算系统 [2]。相对于传统的SD 卡存储,云存储的优势较为明显,随着系统数据量的增加,没有性能上的瓶颈。使用ownCloud 可以在私有服务器上搭建私有云存储服务器节点,由中心管理服务器信息管理模块统一管理[7],以优化整个服务器系统的运作。

使用ownCloud 时,需在云存储服务器节点上创建并配置Apache 环境、PHP 环境、MySQL 环境等。由于 ownCloud 通过抽象层访问数据库,因此支持 Oracle、MySQL、SQLite 等数据库。服务子节点环境搭建完成后,可以选择连接到本地存储作为存储服务器提供点,在修改了ownCloud 的存储路径配置后,ownCloud 的存储文件动作就会立刻发生在该存储器上。使用ownCloud 建立私有服务器可以更好地保证数据的安全性。

2.4 软硬件连接

客户端分为安卓端和iOS 端,根据对场景的认知,对安卓 App 客户端进行了深层次的研究。安卓系统采用软件栈形式管理系统的功能层次结构,主要分为 5 层,由高到低分别是应用程序层、应用程序架构层、C++/C 本地库、Android 运行时库、Linux 内核驱动层。

安卓客户端开发四大组件的运用贯穿整个应用软件的开发过程,其以组件的形式封装各抽象功能模块,使得应用与系统中其余软件的书库交互变得更为敏捷。

基于海思 Hi3518E 能够实现多种码流和多选分辨率及JPEG 图片抓拍,支持图像 3D 去噪、图像增强、边缘增强等预处理功能,利于监控系统的运行。

本文针对Windows 系统进行开发,依赖于其两大功能: 一是完成与硬件的交互;二是为在微处理器上运行的应用程序提供可执行的环境。着重进行设备驱动程序的封装对摄像头端硬件资源的访问。针对客户端软件进行的需求分析,大致有以下三个步骤:

(1) 网络摄像头要有一个设备的入网操作,并且该操作简单易行,稳定可靠。

(2) 连接设备后,需要获取音频、视频数据。此步骤是对图像、网络传输、显示等技术提出的一项挑战。

(3) 将移动智能手机作为移动客户端软件的载体。

使用由含有多帧环形缓存结构、DMA 控制器、异步FIFO 及从控制接口的软硬件接口来连接软件App 和硬件摄像头,实现了从原始同步视频信号输入缓存到内存中再由VGA 接口显示的预览链路,完成了视频压缩链路,实现了从原始同步视频转换成YUV 三通道分量[2]。

3 结 语

本系统使用摄像头作为移动视频采集端,采用混合编码技术,并以智能手机作为移动视频客户端进行远程视频实时监控。在 4G/5G 时代以及智能手机不断更新换代的情况下, 本监控系统将会拥有广阔的应用前景[8]。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

华为云目前早已为世界超过140家营运商客户提供服务,并帮助超过100家营运商客户进行外部业务云化。此外,华为云还与50多家运营商合作伙伴合作,帮助她们建立了自己的ToB业务云或转售华为云,从而实现了ToB业务利润的增速。

关键字: 华为 云存储 ToB业务

以下内容中,小编将对云计算的相关内容进行着重介绍和阐述,希望本文能帮您增进对云计算的了解,和小编一起来看看吧。

关键字: 云计算 云存储 互联网

本文中,小编将对云计算予以介绍,如果你想对它的详细情况有所认识,或者想要增进对云计算的了解程度,不妨请看以下内容哦。

关键字: 云计算 云存储 服务器

(全球TMT2022年6月7日讯)为呼应2022年世界环境日的主题"只有一个地球",华为与世界自然保护联盟(IUCN)共同举办了主题为"让科技与自然共生"的线上峰会,呼吁各界拥抱数字技术,共建绿色地球,同时展示了ICT...

关键字: 华为 可持续发展 ICT技术 云存储

摘要:随着工业自动化行业科技水平的提升,大量先进的仪器及设备得到广泛应用,使污水处理厂的工作效率大大提升,但大量污水处理仪器和设备的使用也给日常设备管理带来了麻烦,据此设计了一种基于Android平台的污水处理设备监控系...

关键字: 设备监控 Android平台 移动终端

北京2022年4月28日 /美通社/ -- 数据是元宇宙的核心要素,面对元宇宙时代的海量数据爆发,如何实现安全、可靠、高效存储?日前,浪潮信息参与第五期开放计算技术沙龙“元宇宙存储研究与实践”,与来自中国科学技术大学、郑...

关键字: 区块链 云存储 数据中心 存储技术

(全球TMT2022年4月29日讯)日前,由存储产业技术创新联盟主办的"元宇宙存储研究与实践"第五期开放计算技术沙龙在线上举行,邀请来自中国科学技术大学、郑州大学、华中科技大学、建信金科、浪潮信息等产学研用专家代表,进...

关键字: 云存储 区块链 分布式 私有云

英国利物浦和美国波士顿2022年2月24日 /美通社/ -- 利物浦足球俱乐部欢迎Wasabi Technologies成为其新的官方云存储合作伙伴。 Wasabi Tec...

关键字: 云存储

(全球TMT2022年2月25日讯)利物浦足球俱乐部欢迎Wasabi Technologies成为其新的官方云存储合作伙伴。Wasabi为世界各地企业提供简单、可预测和负担得起的热云存储,使各组织能够存储和即时访问无限...

关键字: 云存储 abi

与AXIS Camera Station VMS经认证的互操作性可显著降低视频监控存储成本,并轻松满足保留合规要求...

关键字: 云存储 视频监控 abi
关闭
关闭