《基于HI3515开发板的视频监控系统设计_苏洋.docx》由会员分享,可在线阅读,更多相关《基于HI3515开发板的视频监控系统设计_苏洋.docx(59页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 学位论文创新性声明 秉承学校严谨的学分和优良的科学道德,本人声明所呈交的论文是我个人在 导师指导下进行的研宂工作及取得的研究成果。尽我所知,除了文中特别加以标 注和致谢中所罗列的内容以外,论文中不包含其他人己经发表或撰写过的研宄成 果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的 材料。与我一同工作的同志对本研宄所做的任何贡献均己在论文中做了明确的说 明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切的法律责任。 本人签名 : 日期 : 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研宄 生在校攻读学位期间论文工作的知
2、识产权单位属西安电子科技大学。学校有权保 留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内 容,可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后 结合学位论文研究课题再撰写的文章一律署名单位为西安电子科技大学。 本人签名 : 日期: _ 导师签名: 蜂 日期: 摘要 随着大数据、智能化、网络化引领的新时代的到来,视频监控技术跟着潮流 步入数字化网络阶段,不仅被用于医疗、银行,在工业生产、居民住所、安防方 面也有自己的一席之地。市场上最流行的是网络监控系统,采用嵌入式技术的它 们由于它便携可靠、组网能力强、成本经济的特点,在不久的将来一定会在行业 内占据领
3、导地位。 本文介绍了一个基于嵌入式技术的数字视频监控系统。在一开始,首先阐述 了视频监控技术的现实发展情况,评价了各种不同的监控系统的优缺点。然后介 绍了以华为海思 Hi3515 芯片为核心的硬件开发平台,其中主要介绍了平台的主要 芯片及资源。接着论述了嵌入式 Linux 软件平台的搭建,包括为什么以及如何搭建 一个交叉编译环境,作为引导程序的 BootLoader的剖析和移植,最主要的 Linux 内核的配置与烧写,以及一般的根文件系统的制作等。最后也是重点介绍了软件 系统的开发过程,主要对视频处理模块(包括 VI、 VO、 VENC、 VDEC等)进行 了描述,具体详述了各个模块的内部结构
4、和库函数调用典型顺序,以及它们是如 何实现了视频的采集、编码、解码、播放等一系列预期的功能。 在系统软性的开发过程中采用了模块化的思路,这样思路开发出的系统可以 很容易的进行二次开发,在嵌入式系统的开发中经常用到,经测试,本系统完成 了各模块的功能,实现了预期的实时视频监控以及其他功能。 关键词:视频监控, ARM,嵌入式, Linux, Hi3515 ABSTRACT As the big data intelligent network lead the arrival of the new era, gradually into the stage of digital network
5、video monitoring technology, and is widely applied in medical transport industrial production residents home security, and many other fields .At present, the third generation of network video monitoring system based on embedded technology has been on the rise, because its portable and reliable netwo
6、rking capability cost economic characteristics, in the near future will occupy the leading position in the industry. This paper introduces the investigation of the embedded video surveillance system. First of all, introduces the trend of the development of video monitoring technology and the researc
7、h status analysis of the monitoring system based on embedded Secondly, the paper introduces the hardware platform which was based on Hi3515, mainly introduces the main chip and resources of the platform. Then this paper discusses the construction of the embedded Linux software platform, includes the
8、 building of cross development environment, analysis of Bootloader, Linux kernel cutting and transplantation, production of the root file system. The last and focus on software system development process, mainly for video processing module (including VI VO VENC VDEC, etc.) are described, the specifi
9、c internal structure of each module are expatiated and the library function call typical sequence, and how they realize the collection of video coding, and a series of decoding broadcast expected function Used in the process of the development of soft system of the modular thinking, such thinking de
10、veloped system can be easily to carry on the secondary development, often used in the embedded system development, through the test, this system completed the function of each module, achieve the desired real-time video monitoring and other functions Keywords: Video Surveillance, ARM, Embedded, Linu
11、x, Hi3515 目录 触 . I ABSTRACT . Ill m-mm . 1 1.1 研宄背景和意义 .i 1.2 国内外研宄动态和发展趋势 . 1 1.2.1 基于模拟技术的电视监控系统 . 1 1.2.2 基于数字技术的多媒体监控系统 . 2 1.2.3 基于嵌入式技术的视频监控系统 . 3 1.3 本课题研宄内容 . 3 第二章嵌入式 Linux 操作系统 . 5 2.1 嵌入式操作系统简介 . 5 2.1.1 嵌入式操作系统简介 . 5 2.1.2 Linux 介绍 . 6 2.1.3 Linux 核 . 7 2.1.4 Linux kemel2.6.24 . 8 2.2 AR
12、M 体系结构 . 9 2.2.1 ARM 介绍 . 10 2.2.2 ARM 工作模式、寄存器及存储器格式 . 10 第三章硬件平台 . 11 3.1弓丨胃 . 11 3.2 Hi3515 和硬件平台简介 . 11 3.3 主要外部设备和外围接口电路 . 12 3.3.1 时钟和复位电路 . 12 3.3.2 DDR 控制器 . 12 3.3.3 Flash 芯片 . 13 3.3.4JTAG 测试接口 . 15 3.3.5 A/D 芯片 . 15 第四章软件平台 . 17 4.1 搭建 Linux 开发环境 . 17 4.2U-boot 移植 . 17 4.2.1 Bootloader 和
13、U-boot 简介 . 18 4.2.2 编译、移植和启动 u-boot . 18 4.3 内核移植 . 20 4.3.1 Linux 内核组成和结构 . 20 4.3.2 内核的配置 . 20 4.4 根文件系统制作 . 22 4.4.1 根文件系统简介 . 22 4.4.2利用 Busybox 制作根文件系统 . 23 4.4.3 文件系统简介 . 24 第五章监控系统的软件开发 . 29 5.1 软件系统的结构设计 . 29 5.1.1 系统的功能模块 . 29 5.1.2 软件开发方案 . 30 5.1.3 内存分配策略 . 30 5.2 SDK 的典型调用顺序 . 30 5.3 图像
14、采集、编码和解码模块的具体结构和部分代码 . 32 5.3.1 采集模块 . 32 5.3.2 编码模块 . 33 5.3.3 解码模块 . 34 第六章系统测试 . 43 6.1 嵌入式软件下载 . 43 6.2 系统软件测试 . 44 总结与展望 . 47 至文 ill* . 49 . 51 第一章绪论 1.1研究背景和意义 视频图像可以具体直观的对客观世界的信息进行生动形象的表现。视频监控 1 系统的应用十分广泛,视频监控系统能提供客观的图像信息,不仅安全可靠而且 信息量大因而被广泛应用,在居民住所、交通、工业生产、医疗、安防等许多重 要场所中。随着多媒体、网络通信、图像压缩编码 2、芯
15、片技术、数字信息等多个 领域的迅速发展,视频监控系统 3也紧跟时代变革创新,基于嵌入式的网络数字监 控系统发展最为迅猛。采用新技术的视频监控系统不仅是简单的提高了视频的图 像质量,还融合了一系列新技术,能够实现人脸识别、移动目标侦测、自动报警 等一系列智能新功能,加强了对视频信息的理解,顺应了大数据量、智能化、网 络化的新科技潮流。由于网络的普及和新技术的应用,视频监控系统 4的成本不断 下降,而其应用领域确在不断增加,我们有理由相信在不久的将来网络视频监控 将会迎来更加光明的前景。 1.2国内外研 究动态和发展趋势 在国内外消费群体的调查中显示,最受用户青睐的的分别是基于模拟技术、 数字电路
16、技术和最新型的嵌入式视频监控系统。其中模拟和数字监控系统进过多 年的发展和研宄已经日臻成熟,在我们的日常生活中发挥了非常巨大的作用。而 后起之秀嵌入式视频监控系统在网络普及的时代与嵌入式技术和图像压缩解压技 术等一系列新技术的发展一起应运而生,它不仅集成了前辈们的优点,更是克服 了前两种系统的许多弊端。与传统的两种监控系统相比,嵌入式系统有着体积较 小,安装布线方便,监控范围大,图像质量高,智能化高,环境要求低,适 合组 成监控网络,成本低等一系列优点,凭着这些独特的优点嵌入式监控系统一点会 在视频监控领域越来越被用户认可接受。 1.2.1 基于模拟技术的监控系统 模拟监控系统 5发展较早,伴
17、随着电视机和摄像机的出现而出现。模拟监控系 统以模拟设备为主,一般由监控前端(模拟摄像机)、传输设备(一般为同轴电缆)、 控制设备 ( 视频切换矩阵)、显示设备(监视器)等几个部分构成。由于模拟信号 传输距离短,设备的安装走线十分复杂,不适合监控大的区域。 在传统的模拟监控系统中监控图像不能进行网络传输只能在现场观看,它还 拥有几个致命的缺陷 : (1) 布线复杂:由于在总监控室内安置监控主机等设备,从而要从总监控室拉 出很多同轴电缆到不同的需要监控的地点,这就增加了整个系统的布线复杂性。 而且报警器需要的信号也要从总监控室拉线传输出来。 (2) 设备庞杂:在模拟监控系统中监视器与摄像头的画面
18、只能是一一对应,所 以说整个系统包含多少个摄像头总监控室就要摆多少个监视器,即使是使用画面 切割技术,也只能使某四个摄像头的画面能在同一个监视器上显示,而且这样做 的话还要增加成本,添加不必要的分屏器电源等设备。 (3) 智能化低:传统的视频监控系统监控和报警功能是分开完成的,它们之间 的关系是独立不互相统属的,当系统完成报警功能需要外界干预是它变为初始状 态,系统本身不具备智能化回不到初始状态,也不能根据报警状况做出某些决定, 比如关闭某电源或是启动某装置,达不到我们预期的全天候无人值守监控报警的 功能要求。 (4) 监控质量不高:模拟信号在传输过程中没有数字信号稳定,它容易被各种 各样的外
19、界因素影响,这就导致监控画面的质量不能到达很高的水准。 (5) 监控的范围有限:我们知道模拟信号抗干扰能力差,它的传输距离也是硬 伤,而且无法适应网络 化的需要,适用范围仅限于同一建筑物或工厂内。 正是由于模拟监控电视系统的这些致命的缺点,加之其造价昂贵、维护不易, 难以满足用户日益增长的需求,所以被市场淘汰是其必然的归宿。 1.2.2基于数字技术的多媒体监控系统 在马上进入 21 世纪的那几年,计算机技术取得革命性的变革,网络也进入千 家万户变得随处可见,视频监控技术也在这些新技术的带动下不断前进。这些技 术中图像处理技术尤其是图像压缩技术 6的出现和发展给视频监控领域给了监控 技术一个全新
20、的阐释。 基于数字技术的多媒体监控系统 7不仅将原来的磁带存储方式转变为数字存 储录像,还以 TCP/IP协议为网络传输协议,这种视频监控系统有以下优点: (1) 监控效果更佳清晰:由于数字视频信号采用无损压缩,所以可以得到更加 清晰的监控效果。 (2) 组网方便:基于以太网传输,由于以太网是全球应用最广、技术最成熟的 组网方式,所以稳定性很高,易于扩展和维护。 (3) 远程访问功能:由于以太网的使用,用户可以通过一个网络连接到他们的 数字视频服务器,连接的网络既可以是局域网也可以是广域网,从而可以使用户 可以在他们自己的 PC 机上通过网络的接入与验证观看到所想看到的监控图像 。 数字监控设
21、备其实也就是将抗干扰能力差传输距离有限的模拟信号先通过一 定的方法转化为数字信号进行传输处理,虽然它较原来的模拟系统有了很大的提 升,但也不是十全十美的,它也有着自身的缺陷: (1) 实时性不高:由于网络传输的延迟,导致实时性不是很高。 (2) 兼容性差:由于采用单一的压缩和解压卡对图像信息进行编码和解码,所 以不能随心所欲的对不同格式的图像进行处理,无法满足用户不同编码方式的需 要。 (3) 功耗大。 1.2.3基于嵌入式技术的视频监控系统 数字技频监控系统仍然在市场中占据着主流,但随着广泛的使用也暴露出越 来越多的亟待解决的问题。如在某些特殊的场合需要安装多个监控摄像头,并在 监控中心需要
22、集中监控一片小区域呢多个装有摄像头的点,这种环境下如果选择 基于数字技术的监控系统那么缺点就暴露无遗,由于每个摄像头都得配置相应的 压缩芯片,这样建立起来的系统会庞大到让用户难以接受,付出不必要的资源与 成本消耗。随着用户需求的不断提高和科技的不断更新,基于嵌入式技术的视频 监控系统出现在人们视野中。 嵌入式系统 8在软硬件协同工作中完成了专用的诸如监控、 工业控制、数据处 理等一系列用户预期的功能。嵌入式系统是高新技术,它非常注重硬件和软件的 协同一致,对系统的整合性也有很高的要求,在系统开发和应用的过程中软件和 硬件一般不是通用的而是根据不同的需求而量身定做,这样满足了不同的用户对 系统不
23、同的要求,用户可以根据实现功能、系统成本、体积大小和整体功率消耗 等方面做出调整,实现最优化设计。基于嵌入式技术的视频监控系统将嵌入式技 术和视频监控技术这两种不同的技术统一其阿里,利用领域交叉产生的新东西解 决了历史存在的诸多问题,克服了原有技术中的在缺点,推动视频监控 技术进入 另一个春天。 基于嵌入式技术的视频监控系统的工作原理是:由于嵌入式系统具有实时多 任务的特征,可以将摄像头采集的的视频信号进行数字化处理,之后利用高性能 的编码芯片实现编码压缩,在完成上述操作后通过内部总线进行压缩数据的传输, 利用内置的总线通信协议把这些信息传送到系统中的 Web服务器,通过服务器的 作用用户可以
24、用不同的浏览器在网络上观看所需要的实时监控现场的画面,由于 系统可以人为加密处理,得到授权的用户还可以通过网络控制来调试云台的动作 以及摄像头的采集角度,设置相应的系统参数。 基于嵌入式技术用很小的占用体积完成了预期的功能,由于网络功能的加入, 使系统可以随心所欲的控制使用,原来诸多需要从监控中心引出的电缆线路也得 到简化,这样的系统简洁安全可靠 (仅需设置一个 IP 地址),而且还无需专人值守。 显然,无论从技术还是市场考虑,基于嵌入式技术的视频监控系统都有展现出无 可比拟的优势,在不久的将来取代模拟技术监控系统和数字技术监控系统成为视 频监控领域的霸主看来也只是时间的问题了。 1.3本课题
25、研宄内容 本课题主要开发设计了一基于嵌入式 Linux 操 作系统 9的数字视频监控系统, 在华为海斯的 Hi3515 开发板的基础上进行了软硬件的开发设计,采用了 h.264 视 频压缩算法,实现了实时的音视频监控,并且保证了视频信息的高分辨率和低码 率,系统还通过增强网络服务功能提高了数据的网络传输能力,完善了人机交互 界面是整个用户对系统的远程操控能力也有了相应的提升。 本文设计并实现了基于 Hi3515 开发板的 U-b t引导程序移植,内核裁剪并移 植,根文件系统的制作等工作。 本文的组织结构如下: 第一章:绪论,介绍视频监控系统及其相关研宄现状。 第二章:嵌入式 Linux系统及
26、ARM 的体系结构,对嵌入式 Linux系统的基础 和 ARM处理器的体系结构进行了简单的介绍。 第三章:硬件平台,介绍了本文使用的 Hi3515 开发板的结构和资源,并描述 了外围电路的接口和特点。 第四章:软件平台的搭载,介绍了开发板需要的 Linux开发环境,详细介绍 了 U-boot、内核、根文件系统的制作与移植。 第五章:系统的软件开发,介绍了视频采集、视频编码、视频解码等模块的 具体设计流程。 第六章:系统测试。 第二章嵌入式 Linux 操作系统 2.1嵌入式操作系统简介 2.1.1嵌入式操作系统简介 嵌入式操作系统 1()完成了对越来越多的系统软硬件资源的统一使用管理,程 序开
27、发人员再也不用为不断的驱动程序的维护和打补丁而烦恼,而且轻易能从网 络上获得的函数库、驱动程序等代码支持,大大提高了应用程序的开发效率。嵌 入式操作系统的选择主要从以下几个方面考虑: (1) 操作系统的硬件支持,包括目标硬件平台是否能对它进行支持,应用软件 是否能在通用平台上得到很好的移植与二次开发; (2) 开发工具的支持程度,包括在编译器、汇编器、调试器等能否支持操作系 统; (3) 应用需求,包括操作系统的性能是否能满足日新月异的用户需求。 目前嵌入式操作系统已经从简单走向成熟,主要有 VxWorks、 QNX、 PalmOS、 Windows CE、 Hopen OS 和嵌入式 Lin
28、ux 等。 Windows CE11具有内核较小的特点。正是由于这个特点提高了该系统的便携 性,在该系统中还能进行微处理器的选择,并能完成非强行的电源管理等功能。 Windows CE系统具有内置的通信协议是它能够轻松联网访问 Internet, 该系统能收 发 Email和浏览 Web。除此之夕卜 , Windows CE特有的与 Windows类似的用户界面, 这使得对 Windows熟悉的用户能很方便的使用它,非常有助于提高它的普及率。 Windows CE也存在不少的问题,它明显的劣势在于处理速度缓慢、成本不菲、进 行应用程序开发时有较高的门槛。 3Com公司的 Palm OS12在掌
29、上电脑和 PDA 市场上所向披靡,市场占有率极 高,有着霸主的地位。该系统兼容性强,对外接口不仅十分丰富而且是开放的, 开发人员可根据不同的需要自行开发所需要的应用程序。 QNX13是由加拿大 QSSL 公司开发的嵌入式系统,具有很强的可扩展性,灵 活剪裁也是其显著优点之一,通过对微内核的使用使得包含完整功能的整个系统 只占很小的存储位置。正是由于这些优点,智能机器、智能仪器仪表、 PDA各种 电子设备中它都能得到很好的应用。 Hopen 0314是凯思集团自主研制开发的嵌入式操作系统,它的基础内存体积 很小,再加上根据用户需要开发的功能模块,这样就诞生一个私人定制的系统。 其核心 Hopen
30、 Kernel要完成一些基础功能的配置时只用 10KB左右,系统在有限 利用资源的情况下,毫不逊色的能完成别的系统也能 完成的预设任务。 VxWorks15 WindRiver 公司的实时操作系统,由于它对各种工业标准的支持 使得它在不同的领域有着广泛的应用。 VxWorks 系统的特点是内核虽然体积小但 效率十分高效,该微内核满足用户各种实时处理需要。内核的微型化设计不仅减 轻了系统的处理负担,而且加快了系统响应外部事件的速度。目前在全世界的智 能设备正在占据主导地位,而其中的大部分正是选择了 VxWorks系统。 2.1.2 Linux 介绍 Linux 操作系统 15是天生的网络操作系统
31、,它不仅有了成熟的开发流程而且被 验证能稳定的使用,不单使用起来不用付费,还可以通过互联网自由传播的类 Unix 操作系统。翻开它的成长历程我们看到, Linux最早是由一名芬兰学生 Linus Torvalds设计的。由于在它的开发过程中采用了前所未有的代码开源方式,这种全 新的系统开发方式打破了传统商业操作系统的传统模式,冲击了大公司长久以来 形成的技术垄断和壁垒,进一步推动了人类信息技术的发展,当之无愧的成为了 “ 自由开放之路 ” 的成功典范。 Linux 的开源思想正在影响越来越多的技术开发人 员,他们不约而同的投身 Linux的开发和维护,遵循 GNU 组织的 GPL( GNU P
32、ublic License)公约,使 Linux 系统的结构日益变得完整,功能日益变得强大,越来越 受广大用户的喜爱,在市场占有率上俨然已经能和 windows这样成熟的操作系统 分庭抗礼。在高端领域,更是将 windows远远的甩在了后面,时间上运算速度最 快的 10 台超级计算机无一例外的都运行着 Linux操作系统。 Linux能被如此广泛应用是因为它具有着十分鲜明的特点: (1) 开放性 : 作为自由软件的代表,用户可以很方便的从互联网上下载 免费的 Linux操作系统,由于可以自己对源码进行分析学习,开发人员可以轻松的掌握系 统的内部逻辑结构。当系统出现一些问题时,用户可以轻易的自己
33、从源代码中发 现问题的原因,甚至用户可以自己尝试修改源代码,修补系统的漏洞,享受 DIY 的乐趣,这是使用别的操作系统时想都不敢想的重大突破。另外开放性代码的另 一个重大优点就是保证了安全性,由于可以全面的了解系统的各个方面,只要认 真阅读和理解程序就排除了像商业系统中那种被人预留 “ 后门 ” 的风险,还可以 自己植入加密程序,进一步提高系统的安全性,使 Linux操作系统能 有更广泛的应 用。 (2) 多用户多任务工作环境:所谓多用户,是指系统的公共资源可以被不同的 用户共同使用,而由于特定权限设置的不同,不同用户在对系统公共资源使用的 同时不会产生相互的影响。所谓多任务,是指计算机可以同
34、时执行多个程序任务, 而在执行的过程中每个程序都相对独立的运行着。 Linux系统对每一个进程调试的 时候能平等的访问 CPU,由于 CPU高速的运行可以满足它们的访问计算需求,这 样就使每个被开启的应用程序看起来好像是在并行运行一样。由于指令从应用程 序到 CPU, 经 CPU运算再到传输命令到应用程序的时间很短,用户几乎感觉不到, 所以就实现了实时的多任务功能。 (3) 友好的用户界面: Linux 为用户提供了两种操作界面分别是字符界面和图 形界面。其中传统的字符操作界面是基于文本的命令行,即 Shell。 系统管理员通 过在字符界面中输入相关的控制、配置命令从而对系统进行控制。在字符界
35、面下 对系统控制能完成对系统最基本的操作,如果想完成这些操作用户必须熟练的记 住 Linux的基本指令和使用方法。而图形化操作界面则类似微软的 windows 界面, 它直观形象用户可以利用鼠标、菜单、窗口和滚动条等熟悉的工具,方便的对系 统进行操作,不仅易于新手的操作,而且有很强的人机交互性。 (4) 设备独立性:这是指 Linux操作系统使用了对文件的处理方式来处理众多 外部设备。如果想使用这些外部设备,我们需要安装相应外部设备的驱动程序, 有了这些驱动对这些外设的调用就像对文件的访问那样简单了。 Linux 独立性非常 的强,其内核在开发的过程中就被赋予了很强的适应扩充性,随着科技的发展
36、和 技术的进步,它在越来越多的领域得到广泛的应用,更多更新的外部设备会慢慢 加入系统中,逐渐熟 练的用户可以自己修改内核源代码,编写外设驱动,使用访 问文件相同的方法来控制、使用这些设备。 (5) 丰富的网络功能:随着计算机技术的发展和网络的普及, Linux操作系统 更加突出其优点,由于它就是伴随互联网而生的,完善的内置网络是其不同于其 它操作系统。由于其灵活的将内核和网络连接在了一起,很好的支持了 Internet, 为用户提供了完善强大的网络功能。 (6) 良好的可移植性:可移植性是指将操作系统从一个平台提取出来,然后转 移到另一个平台,而在这个平台是系统仍然能按其自身的方式运行的能力
37、。 Linux 就是这样一种具 有良好可移植性的操作系统,它不仅能在微型计算机平台上运行, 还能在大型超级计算机平台上运行,而且对环境也没有任何要求。 Linux 的可移植 性保证了它在不同的计算机平台之间可以进行准确有效的通信,而其还不需要添 加任何昂贵的通信接口等外设。 2.1.3 Linux 内核 内核 16是一个系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的 核心程序,但内核也不是一套完整的操作系统,还需要配置 Shell和相关实用工具, 才能构成一套完整的操作系统。 Linux 的内核结构虽然比较复杂,但可以被分为几 个子系统如下图 2-1所 不: 8 基于 HI3515 开发板的视频监控系统设计 图 2-1 内核