网络视频监控系统设计与实现优秀毕业论文 参考文献.pdf_第1页
网络视频监控系统设计与实现优秀毕业论文 参考文献.pdf_第2页
网络视频监控系统设计与实现优秀毕业论文 参考文献.pdf_第3页
网络视频监控系统设计与实现优秀毕业论文 参考文献.pdf_第4页
网络视频监控系统设计与实现优秀毕业论文 参考文献.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

网络视频监控系统设计与实现优秀毕业论文 参考文献.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华中科技大学 硕士学位论文 网络视频监控系统设计与实现 姓名 吴俊强 申请学位级别 硕士 专业 电子与通信工程 指导教师 袁巍 2011 05 22 华 中 科 技 大 学 硕 士 学 位 论 文 i 摘 要 随着多媒体技术 网络通信技术和硬件制造技术的飞速发展 网络视频监控技术 也得到了很大的发展 并被广泛应用于各种工业生产和日常生活当中 传统的网络 视频监控系统更多地依赖于使用高性能的硬件来对视频的捕获和视频编解码等进行 实现 但是在某些特定的场合和情况下 网络视频监控系统则要求尽可能少地依赖 于特定硬件设备 要求利用软件方案来进行实现 相较于传统视频监控方案 利用 软件方案实现的视频监控系统具有硬件依赖性小 扩展灵活等优点 具有良好的应 用和发展前景 因此对视频监控系统进行实现具有重要的意义 本文对当前网络视频监控系统进行了研究 并在此基础上对本文需要实现的网络 视频监控系统进行了设计 本文提出的网络视频监控系统包括了视频捕获 视频编 解码 视频的实时传输和视频文件的存储管理等功能 系统利用 vfw 技术实现视频 的捕获 引入 h 264 标准应用于视频的编解码过程 运用 jrtplib 来实现视频网络 传输 同时设计了文件存储管理策略 本文实现了网络视频监控系统的主要功能 为系统整体实现提供了策略 本文从 实用性角度出发 注重于系统的总体集成性和系统的完整实现 包括了视频的捕获 直至监控端播放的一系列过程 为软件的实用性奠定了基础 在本文系统基础上进 行改进 可实现高性能的网络视频监控系统 从而更有利于应用于网络视频监控 本文首先对网络视频监控系统的发展进行了介绍 然后对本文网络视频监控系 统涉及到的相关技术如 h 264 标准 实时传输协议 rtp vfw 等进行了简要的描述 在此基础上 研究了系统的总体架构 并对其进行了模块划分和详细的设计 随后 对于系统的各模块的实现方案进行了描述 最后 给出了系统的总体测试结果 并 做出了总结 为以后的工作指明了研究的方向 关键词 关键词 视频监控 h 264 vfw rtp 视频编解码 华 中 科 技 大 学 硕 士 学 位 论 文 ii abstract with the rapid development and improving of the multimedia technology network communication technology and hardware manufacturing technology network video surveillance technology has great development and has been widely applied in all kinds of industrial production and daily life the traditional network video surveillance system is more dependent on the use of high performance hardware to capture video encode video and decode video etc however in some special occasions and cases network video surveillance system requires as less dependent on specific hardware device network video surveillance system with software solutions is necessary compared with traditional video surveillance schemes video surveillance system using software implementation can use less hardware and have flexible expansion so the video surveillance system using software implementation has good application and development prospect so researching and designing and implementation of network video surveillance system have the vital significance in this paper we study the current network video surveillance system and design the network video surveillance system based on the h 264 in this paper the network video surveillance system includes video capture video encoding video decoding video real time transmission and video files management etc we realize the video capture based on the vfw technology and realize the video capture based on the h 264 standard at the same time we use open source jrtplib to realize video real time transmission in file storage management we design the file storage management strategy this paper realizes the main function of the network video surveillance system and also gives full realization strategies for the network video surveillance system this paper focus on the whole system integration and system fully realized this paper includes a series of process about video capture until monitoring terminal broadcast these laid a foundation for the software practicability high performance system can be realized on the basis of the system in this paper and be better applied to network video surveillance first this paper introduces the development of network video surveillance system second we describe and discuss the related technologies such as h 264 standard rtp and vfw on this basis we study the overall framework and design the module partition of network video surveillance system then we describe the system implementation scheme finally we present testing results of system overall and make a summary for the later work we also point out the direction of the research keywords video surveillance h 264 vfw rtp video encoding and decoding 华 中 科 技 大 学 硕 士 学 位 论 文 v 插图目录 图 2 1 vfw 体系结构图 6 图 2 2 vfw 各模块联系图 6 图 2 3 典型的视频编码器架构图 7 图 2 4 典型的视频解码器架构图 8 图 2 5 h 264 编码器架构图 9 图 2 6 h 264 解码器架构图 9 图 2 7 vcl 与 nal 关系图 10 图 2 8 rtp 的网络层次关系图 12 图 3 1 视频监控系统总体架构图 15 图 3 2 视频编解码部分总体框图 15 图 3 3 视频编解码系统工作流程 16 图 3 4 视频捕获工作流程图 17 图 3 5 视频编码一般流程图 18 图 3 6 编码流程图 19 图 3 7 视频解码一般流程图 20 图 3 8 视频解码流程图 21 图 3 9 文件存储管理功能框架图 22 图 3 10 rtp 数据封装图 23 图 3 11 rtp 包头格式 23 图 3 12 h 264 中 rtp 包的封装格式 24 图 3 13 rtp 数据发送流程图 24 图 3 14 rtp 数据接收流程图 25 图 4 1 编码流程图 29 图 4 2 解码流程图 32 图 4 3 文件存储空间预分配流程图 33 图 4 4 数据包发送处理流程图 36 华 中 科 技 大 学 硕 士 学 位 论 文 vi 图 4 5 数据包接收处理流程图 37 图 5 1 视频捕获主界面 39 图 5 2 视频源设置 39 图 5 3 视频格式设置 40 图 5 4 解码前后图像对比 42 图 5 5 视频传输图像对比图 42 图 5 6 磁盘预分配图 43 华 中 科 技 大 学 硕 士 学 位 论 文 vii 表格目录 表 1 1 三种视频监控系统区别 3 表 5 1 测试硬件环境配置表 38 表 5 2 测试各项资源配置 38 表 5 3 视频编码测试表 40 表 5 4 视频解码测试表 41 独创性声明 本人声明所呈交的学位论文是我个人在导师的指导下进行的研究工作及取得的 研究成果 尽我所知 除文中已标明引用的内容外 本论文不包含任何其他人或集 体已经发表或撰写过的研究成果 对本文的研究做出贡献的个人和集体 均已在文 中以明确方式标明 本人完全意识到本声明的法律结果由本人承担 学位论文作者签名 日期 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留 使用学位论文的规定 即 学校有权 保留并向国家有关部门或机构送交论文的复印件和电子版 允许论文被查阅和借阅 本人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检 索 可以采用影印 缩印或扫描等复制手段保存和汇编本学位论文 保密 在 年解密后适用本授权书 本论文属于 不保密 请在以上方框内打 学位论文作者签名 指导教师签名 日期 年 月 日 日期 年 月 日 华 中 科 技 大 学 硕 士 学 位 论 文 1 1 绪论 1 1 课题背景 随着多媒体技术 网络通信技术 存储技术和硬件制造技术的飞速发展和不断提 高 网络视频监控技术也得到了飞速的发展 并被广泛应用于各种工业生产和日常 生活当中 作为安全防范体系结构中的重要环节 视频监控技术不仅仅是一种报警 复核的手段 同时也是安防系统实时监控的核心 更是高效技术系统的有效辅助手 段 1 视频监控在现代安防系统中的主要功能 2 包括 1 实时对监控的视频进行显示 这是视频监控系统的最主要的应用 现代安防系统大多都是实时监控方式 2 记录 监控视频 在视频监控系统中 常常需要对于一些突发事件的视频进行保存 而在 某些安防系统中甚至于只需要记录视频信息 3 系统的管理和回放查看 此功能包 括视频监控显示的设置 同步性控制 软件系统的基本设置 系统基本性能管理等 而回放的查看则需要利用到监控视频的记录保存 另外 视频监控系统也是人们进 行指挥决策的重要辅助手段和依据之一 还可以作为探测手段等 视频监控系统正 在现代日常生活中发挥着越来越重要的作用 近几年 视频监控系统的发展速度不断加快 从早期的模拟视频监控 中期的 数字视频监控直到目前的智能网络视频监控 3 视频监控系统的产品升级越来越快 系统结构不断改变 系统功能更加完善 应用领域也得到了很大的扩展 对于早期 的模拟视频监控 中期的数字视频监控和传统的网络视频监控系统来说 需要使用 较多的硬件设备 其更多地依赖于使用高性能的硬件来对视频的捕获和视频编解码 等进行实现 但是在某些特定的场合和情况下 视频监控系统则要求尽可能少地依 赖于特定硬件设备 因此要求利用软件方案对网络视频监控系统进行实现 相较于 传统使用硬件设备的视频监控系统 利用软件方案实现的视频监控系统具有硬件依 赖性小 扩展灵活等优点 具有良好的应用和发展前景 因此利用软件方案来实现 视频监控系统具有重要的意义 而随着硬件制造技术的不断发展 视频硬件设备的 种类也不断增加 对硬件依赖性小的网络视频监控系统必将受到越来越广泛的欢迎 同时随着现代社会对于安全防范系统的需求的广泛化 网路视频监控系统必将大放 光彩 1 2 视频监控系统发展现状 按照主流设备的发展来说 视频监控系统的发展经历了 3 个阶段 分别是早期的 华 中 科 技 大 学 硕 士 学 位 论 文 2 模拟视频监控系统 中期的数字视频监控系统和目前的智能网络视频监控系统 3 早期的模拟视频监控系统产生于 20 世纪 70 年代 4 主要由视频信号采集 信号 传输 切换控制和显示部分组成 5 视频信号采集部分主要将光信号转变成电信号 使用的主要设备为摄像机 镜头等 信号传输部分主要功能是实现信号的上行和下 行传输 使用的主要设备为光缆 信号收发器等 切换控制部分主要负责视频信号 的切换和前端设备的控制 主要设备为矩阵控制器等 矩阵控制器的使用解决了摄 像机与显示器的一一对应的限制 多个摄像机可以只使用一台监视器来进行监控 显示部分则主要是将传来的电信号在显示设备上进行显示或记录 可以使用显示器 或者磁带录像机等 模拟视频监视系统具有技术成熟 性能稳定 操控性好等优点 但是过多使用模拟设备极易造成自动化程度低 长期存储不便且浪费硬件资源 中期的数字视频监控系统产生于 20 世纪 90 年代 在本世纪初得到了大规模的应 用 数字视频监控系统的主要组成部分是视频采集卡 视频编解码算法 存储设备 网络和软件接口体系等 5 6 视频采集卡是采集视频信息的重要设备 视频采集卡还 能够将模拟视频信息转换为数字视频信息 视频编解码算法是数字视频监控系统的 关键技术 可以采用多种编码标准如 h 264 mpeg 4 等来实现 数字视频监控系统 的标志性产品是硬盘录像机 dvr digital video recorder 其集视频采集 视频编解 码 网络传输 视频存储 视频播放和远程控制于一体 相较于模拟视频监控系统 dvr 具有录像时间长 支持多路视频输入 录像质量稳定 联网能力强等优点 但 是 dvr 与模拟摄像机的连接仍然是通过电缆而不是网络接口 所以其实质上是半模 半数的设备 5 智能网络视频监控系统开始于本世纪初 主要组成部分是网络摄像机 视频编解 码器 海量存储系统及视频内容分析技术等 实现的功能包括视频编解码 视频网 络传输 视频存储 视频远程播放及控制 视频内容分析等 7 智能网络视频监控系 统中使用模拟摄像机 视频编解码器 网络摄像机等完成视频信息的采集 模数转 换 视频编解码及网络传输 同时利用中央管理平台完成资源的管理 存储管理 媒体分发 用户服务等功能 而视频的存储 回放等则由网络录像机完成 智能网 络视频监控系统采用分布式架构 脱离了地域空间和具体的硬件分布的限制 在今 后的安防系统中必将得到广泛的应用 三种视频监控系统的区别如表 1 1 所示 华 中 科 技 大 学 硕 士 学 位 论 文 3 表 1 1 三种视频监控系统区别 比较项目比较项目 模拟视频监控系统模拟视频监控系统 数字视频监控系统数字视频监控系统 网络视频监控系统网络视频监控系统 视频采集设备 普通摄像机 普通摄像机 网络摄像机 网络传输 视频电缆 视频电缆 网线 远程监控 困难 可实现远程监控 但操 控不方便 远程监控方便 无 需添加额外设备 控制协议 视频采集 解码器与 主机协议需一致 某 些主机协议不公开 视频采集 解码器与主 机协议需一致 某些主 机协议不公开 网络协议采用国际 标准 不存在协议 兼容问题 实际上 国内外对于视频监控系统的使用很早就已经开始 目前来说 虽然国内 外都有很多的视频监控应用 但国外的视频监控业务相对较多 例如通过设置监控 设备为公共区域提供安全保障机制等 另外 在大型超市 银行和住宅区之类的地 方 视频监控系统也得到了广泛的应用 特别是在个人用户方面 在国外 视频监 控系统更多的被用来为住宅提供安全保障 8 在我国 视频监控系统并没有得到非常广泛的发展 一方面由于人们的安全意 识不够强烈 另一方面由于视频监控系统的投入成本要求过高 普通的个人无法承 担 但是随着视频监控技术的不断发展 以及硬件制造技术的不断完善 视频监控 系统的投入成本将大大降低 同时由于近年来中国社会智能大楼和智能小区的大规 模建设对安全防范系统提出了更高的要求 从而进一步促进了视频监控系统的应用 1 由上述可见 视频监控系统必将在中国现代社会的安防系统建设中大放光彩 1 3 课题来源及意义 本课题隶属于基于信息融合的全空间智能安防系统 是其子系统之一 基于信息 融合的全空间智能安防系统致力于提供高智能化 集成化的信息融合和安防监控 并提供了合理的安防监控解决方案 本系统将三维 gis 嵌入式 rfid 中间件及传感 器网络等进行融合 从而实现了大空间区域内整体安全态势的监控 显示和预报 并采用多种方式 将多种手段相结合 最终实现了各种监控手段的优势互补 从而 实现了全空间方位展示和警情查看 同时杜绝了警情漏报 降低了警情误报率 该 系统将传统的三维 gis 模型和实时视频信息进行无缝融合 从而实现了实时信息的 全方位立体无死角的全面监控 本系统除了致力于构建全方位的立体无死角的监控 同时提供对于进出人员 车辆等的管理 本课题来源于全空间智能安防系统所提出 的要求 将监控视频从前端摄像头采集进来 经过对实时视频进行编码 通过网络 传输到视频监控端 然后对编码的数据进行解码 最终将监控画面实时呈现在监控 华 中 科 技 大 学 硕 士 学 位 论 文 4 人员面前 同时 为了实现对实时视频的管理以及对于突发事件视频的回放查看等 要求 需要对某些编码后的视频进行存储 对视频编码存储的需求的提出 一方面 是为了便于对实时视频进行管理 可以减少存储需要视频时所造成的硬件压力 更 大的发挥文件服务器的效用 另一方面也是为了便于网络的传输 缓解视频回放查 看时所造成的带宽的压力 综上所述 本文设计实现的系统综合了前端视频信息的 捕获 视频捕获后的视频编码 编码文件的网络传输和存储 编码文件传输后解码 和解码文件的播放等 实现了对于实时视频的监控和存储等 同时系统从文件存储 的角度考虑 对文件存储进行了设计 并提出了文件存储的策略 本文系统所要实现的内容包括 视频捕获 从固定摄像头采集实时数据 采集的数据可以直接存储 也可以 用于后续处理 视频文件编码 对通过摄像头采集的视频流或已经存在的视频文件进行编码 以满足视频存储和网络传输的需要 文件存储管理 编码后的文件需要使用一定的策略来更好的管理 网络传输 编码后的文件需要经过网络传输用于后期处理 编码文件的解码 经网络传输的视频流需要解码后才能用于监控端的播放 1 4 论文的组织结构 本文的目的是为了研究在网络视频监控系统中对视频文件进行采集 视频文件编 解码和编码文件的存储等 并最终通过合理的编程工具对系统进行实现 本文的组织结构如下 第 1 章 介绍了本文研究工作的相关背景 阐述了开发网络视频监控系统的目的 和意义 并对视频监控系统的发展和应用现状进行了分析 第 2 章 研究网络视频监控系统的总体架构 对其体系结构和功能进行了分析 并对各部分中涉及到的相关标准和关键技术进行了分析 第 3 章 完成了网络视频监控系统的系统设计 对其总体架构进行了分析 对系 统进行了模块划分 并研究了各模块在具体实现中要用到的一些关键技术 给出了 模块的设计方案 第 4 章 阐明了网络视频监控系统的实现方案 对系统中的各个模块的具体实现 进行了分析 第 5 章 完成了网络视频监控系统的系统测试 对各个模块的功能进行了测试 并给出相应的测试结果和分析结论 从而验证了网络视频监控系统的相应功能 第 6 章 该章对全文进行了总结 并分析了现有系统的不足之处 为后续工作 的进行提供了参考 华 中 科 技 大 学 硕 士 学 位 论 文 5 2 技术概述 本章对于网络视频监控系统所涉及到的相关技术进行了分析 通过相关技术的分 析 为后续的系统设计和实现提供理论基础 在本文系统中 包括了视频的捕获 视频编解码和实时传输等 在实现视频捕 获时使用了微软的 vfw 软件包 在视频编解码时采用了 h 264 标准 而实时传输则 使用了 rtp 传输协议 下面将对这些技术进行简要的介绍 2 1 vfw 概述 在网络视频监控系统中 视频的采集是一项必不可少的工作 一般来说 视频信 息的捕获有以下几种方法 9 1 使用视频采集卡来进行视频捕捉 即依赖于硬件设 施 同时利用生产厂商提供的 sdk 开发包来进行视频应用程序的开发 这是一种简 单而有效的办法 在这种情况下 我们只需要简单调用生产厂商所提供的 dll 文件 便可以容易的对视频进行捕捉 但是 这种办法需要相应的视频采集卡的支持 若 硬件被损坏 除非使用同样的视频采集卡 否则就需要重新对视频捕捉函数进行编 写 同时由于第三方软件包只能提供给编译人员编译好的动态链接库和一些接口 其内部的实现部分对于编程人员来说则是一无所知 不利于编程人员对实际情况进 行修改 10 2 利用软件方式进行视频捕捉 现阶段在 windows 操作系统上最重要 的软件方式实现视频捕捉的方案分别为使用微软推出的 vfw video for windows 软 件开发包进行开发以及使用微软推出的directshow软件开发包进行开发 directshow 软件包是基于 com 组件对象模型的系统 有许多模块化的系统组件组成 由于其组 件较为复杂 需要编程人员具备一定的 com 基础和相应的实用开发经验 因此不易 掌握 11 而 vfw 软件包则使用了和 windows api 相类似的方法 在使用时只需要 包含头文件和相应的库文件 大大增强了其实用性 编程人员不需要深入了解底层 只需要使用 vfw 提供的高级编程接口 这样将大大降低开发难度 同时 vc 系 统也对 vfw 提供了很好的支持 12 考虑到网络视频监控系统的实际情况 我们使用 软件方式进行视频捕捉 即使用微软提供的 vfw 软件包进行开发 这样可以缩短开 发周期 同时也不必过度依赖于硬件系统 vfw video for windows 是微软 1992 年为其视窗操作系统开发所推出的多媒体 应用程序框架产品 实质上 vfw 是一个关于数字视频的软件包 13 其被推出的初衷 是为了能够简便在 windows 操作系统上对视频进行处理 vfw 不依赖于专用的硬件 设备 为数字视频的开发提供了通用方案 例如它提供了应用程序开发接口以供 华 中 科 技 大 学 硕 士 学 位 论 文 6 windows 程序员编写可以播放和录制视频的程序 同时也提供了驱动开发接口使得 程序员可以通过 vfw 接口来控制兼容 vfw 的视频设备捕捉和播放视频 程序员调 用类似的编程接口 通过发送消息和设置属性等对视频进行处理 14 同时 在 windows操作系统下的用户不需要专门安装vfw 因为在安装windows操作系统时 安装程序已经自动地配置了视频处理所需要的组件 如设备驱动程序和视频压缩程 序等 14 vfw 的体系结构图如图 2 1 所示 应用程序 mmsystem dll mciwnd dll avicap dll mciavi drvicmdrawdib 视频采集函数库 acm 音频压缩驱 动程序 视频压缩驱 动程序 msvideo dll 视频采集驱 动程序 图 2 1 vfw 体系结构图 由体系结构图可以看出 vfw 中包含了多种程序的驱动和一些动态链接库 即 dll 文件 15 在 vfw 中 其主要模块分别是 avicap dll msvideo dll mciavi drv avifile dll icm acm 16 各模块之间联系图如图 2 2 所示 视频采集应用视频回放应用视频编辑应用 avicap dll avicap mciavi drv mci解释器 msvideo dll mciwnd msvideo dll video in channel avifile dll file stream handler icm acm msvideo dll drawdibicm 图 2 2 vfw 各模块联系图 华 中 科 技 大 学 硕 士 学 位 论 文 7 由 vfw 各模块关系图可以看出 视频的采集应用主要是和 avicap dll msvideo dll avifile dll 有 关 而 视 频 的 回 放 则 和 mciavi drv msvideo dll avifile dll 有关 视频的编辑主要和 msvideo dll avifile dll 以及 acm 有关 17 本文所设计的网络视频监控系统使用固定摄像头 来捕捉视频 可见应该使用 vfw 中的 avicap dll msvideo dll avifile dll 在本文中 视频捕捉模块中需要使用 avicap dll 来进行实现 2 2 视频编解码标准 h 264 概述 从摄像头捕获到视频以后 需要对捕获到的视频进行编码 一般来说 视频在编 码之前针对不同情况需要进行相应的处理 如果输入的是 yuv 序列的话 则可以直 接对输入的序列进行处理 如果输入的视频是 rgb 序列 则需要将视频从 rgb 空 间转到 yuv 空间 这样做一方面是为了减低视频的相关性 从而有利于对视频进行 编码 同时也是从人眼的特性角度考虑 因为人眼对于亮度信号比色度信号更为敏 感 从而可以对人眼不敏感的色差分量等使用较少的比特进行编码 也有利于视频 的编码压缩 18 一个典型的视频编码器的架构图 19 如图 2 3 所示 从图中可以看到 编码视频的一般流程为从摄像头捕获的视频先经过预处理消除一部分相关性之后 存入帧存储器 之后经过运动估计和运动补偿之后得到预测帧 将预测帧与原帧的 残差图像输出 经过变换和量化之后 进行熵编码 最后将编码的视频数据流传输 出去 运动估计 运动补偿 反量化 熵编码器dct量化 dct 1 输入 预处理 rgb转yuv等 缓冲区 帧存储器 预测帧 运动矢量 输出 帧存 储器 图 2 3 典型的视频编码器架构图 编码后的视频在经过网络传输后需要被解码显示 一个典型的视频解码器的架构 华 中 科 技 大 学 硕 士 学 位 论 文 8 图如图 2 4 所示 在视频解码时 输入端为编码后的视频比特流 将输入比特流进 行熵解码后 将其中的残差图像经过反量化和反变换 并与运动补偿得到的预测帧 一起重建成解码后的帧 并输出出去 运动补偿 反量化 运动矢量 熵解码dct 1 输出 视频帧缓存 输入 图像处理 yuv转rgb 图 2 4 典型的视频解码器架构图 视频编解码需要依据一定的编解码标准 20 世纪 80 年代以后 为了在有限带宽 下解决大容量的数据如视频 音频等的传输问题 国际上各大组织纷纷推出了自己 的视频编解码的标准 现有主要的视频编解码标准是由 itu t 推出的 h 26x 系列标 准和iso推出的mpeg x系列标准 itu t的h 26x标准包括了h 261 20 h 263 21 22 h 263 23 h 263 24 和 h 264 25 等 iso 的 mpeg x 标准则包括了 mpeg 1 26 mpeg 2 27 mpeg 4 28 mpeg 7 29 mpeg 21 30 等 而我国也在 2002 年出台了 数字音视频编码 avs 31 标准 这些标准的出现对于视频监控技术的发展起到了关键 的作用 对于本文网络视频监控系统视频编解码标准的选取 我们将使用 h 264 标准 选 择 h 264 标准的主要原因在于 h 264 具有很高的数据压缩率 与其他的标准相比 在相同图像质量的条件下 h 264 的数据压缩率是 mpeg 4 的 1 5 2 倍 而与 mpeg 2 相比 h 264 的数据压缩率更是其 2 倍以上 32 作为新一代的数据压缩标准 h 264 与 mpeg 4 都得到了广泛的使用 与 mpeg 4 相比 h 264 标准编码方式更为灵活 压缩效率大大提高 网络传输适应性更加良好 同时 作为新一代的视频编解码标 准 h 264 具有明显的优越性 其编码效率的提高使其在社会中的应用领域大大拓宽 h 264 标准是由 jvt joint video team 联合视频组 指定的新的视频编解码标准 其设计初衷是为了在低比特率下提供较好的图像压缩效果及增强在不同的网络环境 的适应性 作为 h 26x 系列标准之一 h 264 标准继承了以往成熟的编码技术 不 仅注重编码效率的提高 同时也力求简化表达形式 另外还致力于视频质量的提高 h 264 编解码器采用的仍然是变换和运动预测相结合的混合编码方法 但是在功能块 的细节实现上进行了改进 h 264 编码器和解码器的架构图 33 如图 2 5 和图 2 6 所 示 华 中 科 技 大 学 硕 士 学 位 论 文 9 选择帧内 预测 运动估计 运动补偿 帧内预测 fn 当前帧 变换量化 反变换 fn 重建帧 fn 1 参考帧 重排序熵编码 反量化 滤波器 nal 帧内 帧间 图 2 5 h 264 编码器架构图 运动补偿 反变换 fn 重建帧 fn 1 参考帧 重排序熵解码反量化滤波器 nal 帧 内 帧 间 帧内预测 图 2 6 h 264 解码器架构图 在 h 264 编码器架构图中 可以看出 实际上在编码器中包含了解码器 用于产 生当前帧的预测帧 通过编码器架构图可以看出 编码器采用帧内预测和帧间预测 两种预测模式来处理输入的帧 帧内预测模式比较简单 一般主要应用于 i 帧 当选 择帧内模式时 使用当前的帧来对输入帧做出预测 帧间预测模式比较复杂 一般 主要应用于 b p 帧 当选择帧间模式时 使用当前的帧和过去的帧甚至是未来的帧 来对输入帧做出预测 由图可见 当使用帧间预测时 利用当前帧和参考帧经过运 动估计可以得到输入当前帧的运动矢量 然后经过运动补偿则可以得到当前帧的残 差图像 在帧内预测或者帧间预测后 将得到的残差图像经过变换和量化 再经过 熵编码 之后与解码需要的信息一起进行封装 经 nal 用于传输或者存储 在 h 264 解码器架构图中 输入为 nal 进行处理得到 h 264 编码比特流后进行熵解码可以 得到量化后的变换系数 再经过反量化 反变换得到残差图像 之后利用比特流中 解码出的头信息 使用帧内预测或者帧间预测得到预测块 将预测块和残差图像相 加 然后经过滤波器 就得到重建的解码输出图像 华 中 科 技 大 学 硕 士 学 位 论 文 10 h 264 标准另一个特点在于 h 264 的两层功能划分 即视频编码层 vcl video coding layer 和网络提取层 nal network abstraction layer 的划分 33 34 vcl 规定 了用于视频编解码的算法 从而可以高效表示所要处理的内容 nal 规定了用于网 络传输的规范 从而可以按照要求采用合适的方式来打包数据并进行传送 h 264 标 准中 vcl 层和 nal 层的关系图如图 2 7 所示 视频编码层 vcl 控 制 数 据数据分区 宏块 网络提取层 nal 条 分区 图 2 7 vcl 与 nal 关系图 h 264 标准编码仍然采用了传统的混合编码模式 但是在编码效率上却有很大的 提高 主要由于其采用了多种新技术所致 相比于传统的视频编解码标准 h 264 标 准所采用的新技术存在于以下几个方面 35 1 帧内预测 传统的帧内图像编解码是直接对宏块进行变换 量化和熵编码得 到输出比特流 而 h 264 引进了帧内预测方法 对宏块进行不同模式的帧内预测 之后对预测残差进行变换等 避免了以往帧内编解码的缺陷 同时提供了多种帧内 预测模式 例如 4 4 亮度块有 9 种可选帧内预测模式 而 16 16 亮度块和 8 8 色 度块分别有 4 种预测模式 这些更有利于对宏块的帧内编码 2 帧间预测 h 264 标准对于运动补偿亮度块的支持范围包括了从 16 16 到 4 4 大小的一系列 因此其帧间预测是一种多模式帧间预测编码 同时 h 264 在编解 码时采用多参考帧的方法来进行预测 正是由于块尺寸的可变性和多参考帧的使用 使 h 264 帧间预测更加准确 3 整数变换 h 264 中采用基于块的整数变换而不是实数计算 这样更有利于编 码器和解码器得到相同精度的正反变换 同时也大大简化了运算复杂度 4 熵编码 h 264 中不仅采用了统一的可变长编码 uvlc 同时也采用了基于内 容的自适应的二进制算术编码 cabac uvlc 和 cabac 的综合使用 进一步提高 了编码的性能 增加了编码效率 通过以上新技术的采用 h 264 标准具有了较高的压缩率 简洁的设计模式 较 低的时延 合理的分级设计模式 良好的网络适应性等特点 虽然 h 264 尚未最终 定稿 但其必将得到越来越广泛的应用 同时 必须注意的是 h 264 标准的优越性 华 中 科 技 大 学 硕 士 学 位 论 文 11 能是以计算复杂度为代价的 因此在视频编解码的过程中需要选择适合自己的方式 进行系统的设计 在进行系统设计 一般依照 h 264 标准进行编解码时 可以参考 h 264 的参考模 型 jm86 或者其他的开源方案进行系统开发 作为 h 264 源代码的参考模型 jm86 只是实现了 h 264 的所有功能 可以说 jm86 只是从软件工程的角度出发 写出的对 应代码 因此其结构冗长 计算复杂度较高 不易使用 同时 一般而言 使用 jm86 主要是为了进行算法的改进 即将改进的算法与原 jm86 进行比较 然后得到改进算 法的性能 同时 由于其编码复杂度比较高 在实际使用时 更多的需要高性能的 专用芯片来进行支持 因此对于硬件有一定的要求 可见使用 h 264 参考模型 jm86 时 实现的复杂度高 同时对于硬件有一定的要求 因此在本文的系统中实现视频 编解码时可以采用开源解决方案 ffmpeg 作为参考 作为一个非常优秀的开源的音 视频解决方案 ffmpeg 集录制 转换和音 视频 编解码功能于一体 能够快速实现音 视频格式的相互转换 并且能够从音 视频源中 获得数据并将其存储起来 36 为了实现音 视频质量的高质量编解码 ffmpeg 对其 包含的先进的音 视频编解码库中的很多编解码方案都是重新进行开发的 这样一方 面可以实现对音 视频高质量的编解码 同时也可以避免版权纠纷等问题 随之音 视频格式的增加和音 视频编解码要求的不断提高 ffmpeg 也取得了持续的发展改 进 现在 ffmpeg 能够支持 mpeg divx dv flv ac3 等 40 多种编码和 mpeg avi asf 等 90 多种解码 同时还支持数十种常见的音 视频文件格式 37 38 ffmpeg 将应用层与编码层相分离 并且在编码时将文件的解析和编解码分开处 理 这样不仅提高了编码的性能 同时也提高了编码的效率 另外软件分层的思想 还保证了 ffmpeg 的可扩展性 当有需要时 开发人员可按照一定的格式加入私有 的结构 38 私有格式的添加也比较简单 开发人员只需要遵循一定的规则 按照系 统预设的接口对私有的格式进行封装并添加 之后再进行注册即可 由于此种机制 的存在 使得开发人员能够更方便的对其进行改进 从而实现符合特定需要的系统 同时 ffmpeg 的高性能设计 加上包含了经过优化的 h 264 编解码算法 使得 ffmpeg 编解码视频的速度非常快 在各类开源软件中 ffmpeg 的编解码速度是最快的 作为一套完备的音 视频解决方案 ffmpeg 有以下部分组成 ffmepg ffplay ffserver libavcodec libavformat libavutil libpostproc libswscale 等 39 ffmpeg 最初是基于 linux 平台开发 经过持续的发展和改进 ffmpeg 已经能够在多种平台 下运行 但是 ffmpeg 对于 vc 平台下开发支持度不高 因为 vc 平台并不能严格 的遵循 c 标准 因此 ffmpeg 不能使用 vc 平台来编译 而且 ffmpeg 项目组也并 不打算对 vc 平台的编译进行支持 因此要将 ffmpeg 移植到 windows 下的 vc 平 华 中 科 技 大 学 硕 士 学 位 论 文 12 台需要很大的改动 比较困难 因此我们可以在 windows 平台下利用 mingw 和 msys 对 ffmpeg 进行编译并生成动态连接库以供应用程序开发使用 40 2 3 实时传输协议 rtp 概述 本文网络视频监控系统主要功能在于视频捕获 视频编解码和网络传输三个方 面 通过微软提供的 vfw 软件包 我们可以对视频捕获进行处理 通过参考开源视 频解决方案 ffmpeg 和 h 264 标准 我们可以完成视频的编解码 传统的网络传输 在对文件进行处理时通过使用数据报套接字来进行实现 但是要实现视频数据的实 时传输 仅仅简单的使用数据报套接字是不够的 还需要在 udp 层上使用 rtp 41 real time transport protocol 实时传输协议 和 rtcp 41 real time transport control protocol 实时传输控制协议 来改善服务质量 rtp 协议由 ietf 的 avt 小组在 1996 年公布为 rfc 正式文档 其公布初衷是为 了为交互式语音 视频等实时数据的传输提供一个标准 可适用于 voip 视频传输 等多媒体应用 rtp 协议包括两个方面 即实时传输协议 rtp 和实时传输控制协议 rtcp 其中 rtp 协议用于实时传输数据 rtcp 协议用于对 rtp 协议进行控制 对数据传输质量进行监控 并提供拥塞控制等 42 下面我们将对 rtp 协议和 rtcp 协议进行简要的介绍 相对于其他传统的传输层协议 rtp 协议更加注重于实时传输数据 rtp 协议可 以工作在多种通信协议之上 但是在一般情况下 rtp 主要用于 udp 之上 主要原 因在于 tcp 会有较大的传输时延 而 udp 则不会 rtp 在应用程序中的网络层次关 系图 43 如图 2 8 所示 值得注意的是 rtp 本身不负责同步 不提供任何机制来保 证数据的可靠顺序传输 不支持资源分配 同时也不保证服务质量 甚至不包括长 度和报文边界的描述 rtp 依赖于底层网络提供的 qos 服务来实现实时性的要求 同时数据包的可靠传输和拥塞控制等则是依靠 rtcp 来提供的 44 图 2 8 rtp 的网络层次关系图 华 中 科 技 大 学 硕 士 学 位 论 文 13 由 rtp 的网络层次关系图可以看出 rtp 协议作用于 udp 协议的上层 rtp 协 议的数据单元将使用 udp 分组来封装 同时利用 udp 协议来传送数据包时不必关 心数据包传输的时间顺序 二者一起完成传输层协议的功能 实际上 rtp 协议并 不是网络体系结构中的独立层 其通常是根据具体的应用来提供服务 也就是说 rtp 只是提供了框架 而开发者需要根据自己的应用来进行扩展 rtcp 协议和 rtp 协议一起使用 用来对数据传输进行控制 应用程序在使用 rtp 会话时 将为 rtp 和 rtcp 均分配一个端口 45 在会话期间 利用 rtcp 包中 的统计资料可以获得网络状况等信息 从而对服务质量进行控制 将 rtp 和 rtcp 结合使用 可以有效提高传输的效率 从而有利于视频的实时传输 在 rtcp 协议包含着各种不同的 rtcp 数据报文 他们是 rtcp 协议功能实现的 重要媒介 rtcp 协议中主要包含了以下几种类型的数据报文 41 1 rr receiver report 接收报告 用来统计当前活动发送者发送 接收的情况 2 sr sender report 发送报告 用来统计非活动发送者的接收情况 3 sdes source description items 源描述项 会话成员有关标识信息和会话控 制信息的载体 4 bye 结束传输 用来标识源失效 通知会话中的其他成员退出会话 5 app 特定应用函数 由应用程序自定义 2 4 本章小结 本章首先对网络视频监控系统进行了总体分析 并对其中涉及到的关键技术如 vfw h 264 标准和 rtp 传输协议进行了介绍 同时对一些技术中的相关部分进行 了分析 明确了在本文系统中的研究要点 为本文视频编解码系统的实现提供了理 论基础 华 中 科 技 大 学 硕 士 学 位 论 文 14 3 网络视频监控系统设计 本章是网络视频监控系统的设计部分 通过上文各部分的分析 本章对系统的 功能需求 总体架构 概要设计和模块设计进行了分析 3 1 系统功能需求分析 本文主要是对网络视频监控系统的实现方案进行研究 找到适当的技术方案对系 统的每一部分进行合理的设计与实现 并且同时兼顾系统的实用性 从而为高性能 网络视频监控系统的开发和互联网中监测中视频的编解码奠定基础 本文的系统应能驱动固定摄像头 并从中得到视频流 得到的视频流可以被直 接存储 同时也能用于后续处理 同时应能够对视频的格式和视频源进行设置等 本系统同时需要实现视频的编解码 此功能应能够对视频流进行编解码 要求编码 功能有较好的编码效率及良好的压缩比 解码功能应能解码编码后的文件 同时有 较小的失真率 编解码的效率应尽可能的高 同时编解码后的视频图像质量应在人 眼允许的范围呢尽可能的做到没有失真 本系统在视频编码后应能够对编码的视频 流进行传输 传输要求能够对传输的流

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论