远程视频监控系统软件平台构建.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
远程视频监控系统软件平台构建

远程视频监控系统软件平台构建   【摘 要】随着图像压缩编码技术以及无线通讯技术的发展,视频监控系统逐步迈入移动化,在特定场合下,如自然灾害地质查询,边防空中监控等,需要突破物理上的二维限制,借助小型无人飞行器和无线数字视频监控系统在低空进行远程实时监控。本文构建了基于Linux系统的软件开发平台,完成了基于无人飞行器的远程视频监控系统实现的初步工作。   【关键字】视频监控系统 嵌入式系统 Linux 软件开发平台   一、 嵌入式系统的定义及特点   嵌入式系统是以应用为中心,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统[1,2]。   嵌入式系统的特点可从功能和性能两个层面来衡量。   首先,在功能上,它是以应用为中心的专用系统,区别于个人计算机等通用计算机系统。嵌入式系统面向的是行业中的某项应用,因此嵌入式产品的个性化很强,软硬件结合非常紧密,软件开发过程中需要针对硬件做出移植或者优化。例如,本系统隶属于无线视频数字监控产品,并且以无人飞行器为载体,完成特定场合下的视频采集与实时传输等功能。在搭建本系统的软件平台时,需要根据需求选取合适的操作系统,并根据硬件方案进行驱动的移植和开发。开发应用程序时,需要考虑到底层硬件的性能和实际运行情况,如根据无线网络传输情况,动态调整视频压缩质量等。   其次,在性能上,嵌入式系统资源受限,软硬件必须是可裁剪的,另外嵌入式产品结构紧凑,用途固定,因此在成本、体积、功耗以及可靠性上也必须严格考究。以本系统为例,整个系统以小型的无人飞行器为载体,在硬件设计上须采用核心加扩展的方式,核心板的体积要做到尽可能的小,以安放在飞行器内部,而摄像头以及CDMA模块则通过扩展的方式,结合飞行器本身来进行整合。另外,虽然资源的受限使得核心板上自身所拥有的内存和Flash芯片容量不会太大,但可采用基于扩展的设计,如通过外接SD卡的方式来转储相关的数据(如用作存证的视频数据等)。在软件层面上,需要对移植的Linux内核做出剪裁,根据系统本身的需求量身配置,以使最后编译产品的内核映像体积最小。应用程序开发,如视频采集与编码模块,也需注意保证程序运行的稳定性,尽可能避免因为软件因素带来的断线,内存溢出,死循环等错误。   二、 嵌入式Linux系统的软件组成   一个嵌入式 Linux 系统从软件层次的角度看通常可以分为四个层次[3]:1. 引导加载程序:即Boot Loader程序。2. Linux 内核:特定于嵌入式开发板的定制内核以及内核的启动参数。3. 文件系统:包括根文件系统和建立于 Flash 内存设备之上的文件系统。4. 用户应用程序:特定于用户的应用程序。   典型的嵌入式Linux系统存储设备的空间分配如图1所示。   在本系统中,选用一块32MB的NOR Flash存储芯片,用于存放引导加载程序,Linux内核和包含应用程序的文件系统。其中,引导加载程序和内核的占用空间分别规划为256KB和2MB。下面各小节详细阐述了嵌入式视频服务器上软件平台的构建过程,这个基本的软件运行平台是系统开发和应用的基础。   三、 嵌入式视频服务器软件平台的构建   1 系统开发模型   嵌入式系统开发的两大特点是分布式开发以及交叉编译。鉴于嵌入式系统资源受限的特点,不能在嵌入式产品上直接进行开发,而是选择硬件和软件资源丰富的宿主机进行分布式开发,通常是PC机,而嵌入式产品作为目标机。由于两者的硬件体系结构一般不相同(如本系统,宿主机基于x86,而目标机基于ARM),因此在宿主机上开发的程序需要经由交叉工具链进行编译和链接,最后通过通信手段送至目标机上运行。本系统的开发模型如图2所示。   在本系统开发中,宿主机和目标机有三种通信手段:   1. 串口通信。用于两机的信息交互,在经过波特率等属性协商后,目标机上的信息经由串口输出到宿主机的串口客户端进行显示,反馈给用户,同时用户也可通过串口客户端输入相关的控制命令到目标机上,用以操纵目标机上的软件参数及流程。   2. JTAG通信。用于裸机上的程序烧写,宿主机可通过Multi-ICE仿真器与目标机上的JTAG调试接口相接,通过调试代理,将制作生成的引导加载程序映像串行烧写至目标机Flash芯片中;   3. 网络通信。制作好的内核以及文件系统映像一般体积较大,可先通过网络下载到目标机内存中,再通过已做好的烧写程序和驱动进行脱机烧写,这样可大举提高烧写速率。   因此,基于本系统的开发模型,在宿主机上需要首先搭建好开发环境。   2 主机环境的搭建   本系统开发中,宿主机上选用的开发环境为Fedora 19。主机环境搭建主要包括了三个方面的内容[4]:交叉工具链的安装,TF

文档评论(0)

130****9768 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档