基于嵌入式Linux视频监控系统.doc
《基于嵌入式Linux视频监控系统.doc》由会员分享,可在线阅读,更多相关《基于嵌入式Linux视频监控系统.doc(16页珍藏版)》请在沃文网上搜索。
1、目录一、引言1二、嵌入式视频监控系统简介2三、系统总体设计方案4四、系统硬件选型及设计54.1 硬件开发平台54.2 bootloader概述及移植6五、系统环境搭建75.1交叉编译环境的搭建75.2 NFS环境的搭建8六、流媒体服务器设计96.1视频采集模块设计96.2 视频压缩模块设计106.3 视频传输模块设计116.4 视频解码与回放13七、嵌入式服务器137.1 Thttpd服务器的实现14八、展望与小结16一、引言随着计算机技术及网络技术的迅猛发展,公安、安防行业及生活中的发展趋势必然是全面数字化、网络化。传统的模拟闭路电视监控系统有很多局限性:传输距离有限、无法联网,而且模拟视频
2、信号数据的存储会耗费大量的存储介质(如录像带),查询取证时十分烦琐。 基于个人计算机的视频监控系统终端功能较强,但稳定性不好,视频前端(如电压耦合元件等视频信号的采集、压缩、通讯)较为复杂,可靠性不高。基于嵌入式Linux视频的网络监控系统不需要用于处理模拟视频信号的个人计算机,而是把视频服务器内置一个嵌入式Web服务器,采用嵌入式实时多任务操作系统。 由于把视频压缩和Web功能集中到一个体积很小的设备内,可以直接连入局域网,即插即看,省掉复杂的电缆,安装方便(仅需设置一个IP地址),用户也无需安装任何硬件设备,仅用浏览器即可观看。 基于嵌入式Linux的视频网络监控系统将嵌入式Linux系统
3、连接上Web,即视频服务器内置一个嵌入式Web服务器,摄像头传送来的视频信号数字化后由高效压缩芯片压缩,通过内部总线传送到内置的Web服务器上,实现视频的监控。二、嵌入式视频监控系统简介视频监控系统是安全防范系统的组成部分,它是一种防范能力较强的综合系统。视频监控以其直观、方便、信息内容丰富而广泛应用于许多场合。近年来,随着计算机、网络以及图像处理、传输技术的飞速发展,涌现出大量的嵌入式视频监控系统。1.嵌入式系统的优缺点 a、系统为专用系统,所以系统小,指令精简,处理速度快 b、系统数据置于ROMFLASH MEMORY,调用速度快,不会被改变,稳定性好 c、系统处理实时性好,性能稳定d、文
4、件管理系统更适合于大量的视频数据e、该类系统目前四路以上机型还较为少见f、在网络功能、音视频同步等方面也难令人满意。2数字网络视频监控系统的原理数字网络视频监控系统的关键设备是网络视频信号采集终端(也被称为视频服务器),网络视频信号采集终端采用嵌入式实时多任务操作系统。摄像头送来的视频信号在网络视频信号采集终端数字化后由高效压缩芯片压缩,通过内部总线送到网络接口发送到网络上,网络上用户可以直接用在PC机上用浏览器观看网络视频信号采集终端传送过来的摄像机所拍摄的图像,授权用户还可以通过计算机网络透过网络视频信号采集终端控制摄像机镜头和云台的动作或对系统进行配置操作。由于把视频压缩和网络功能集中到
5、一个体积很小的设备内,可以直接连入局域网,达到即插即用,省掉多种复杂的电缆,安装方便(仅需设置一个坤地址),用户也无需安装任何硬件设备,仅通过PC机用浏览器即可观看。3数字网络视频监控系统与其它监控系统的比较a、布控区域广阔 数字网络视频监控系统的网络视频信号采集终端直接连入网络,没有线缆长度和信号衰减的限制,同时网络是没有距离概念的,彻底抛弃了地域的概念,扩展布控区域。b、系统具有几乎无限的无缝扩展能力所有设备都以IP地址进行标识,增加设备只是意味着口地址的扩充。c、可组成非常复杂的监控网络采用基于网络视频信号采集终端为核心的监控系统,在组网方式上与传统的模拟监控和基于PC平台的监控方式有极
6、大的不同,由于视频信号采集终端输出已完成模拟到数字的转换并压缩,采用统一的协议在网络上传输,支持跨网关、跨路由器的远程视频传输。d、性能稳定可靠,无需专人管理视频信号采集终端实际上基于嵌入式电脑技术,采用嵌入式实时多任务操作系统,又由于视频压缩和网络功能集中到一个体积很小的设备内,直接连入局域网或广域网,即插即看,系统的实时性、稳定性、可靠性大大提高,也无需专人管理,非常适合于无人值守的环境。e、当监控中心需要同时观看较多的摄像机图像时,对网络带宽就会有一定的要求。三、系统总体设计方案嵌入式Linux视频网络监控系统是电工电子装置、计算机软硬件以及网络、通信等多方面的有机组合体,它以智能化、网
7、络化、交互性为特征,结构比较复杂。如果利用OSI七层模型的内容和形式,把相应的数据采集控制模块硬件和应用软件以及应用环境等有机组合,可以形成一个统一的系统总体框架,其系统总体框架示意图如图1所示。系统总体框架示意图摄像头传送来的视频信号数字化后,经过压缩,通过RS-232/RS485将数据送到内置的Web服务器,嵌入式Linux系统的 10/100M以太网口实现接入Internet网络,将现场信号送到客户端。整个系统的核心是嵌入式Linux系统。监控系统启动后,嵌入式Linux 系统启动Web Server服务程序,接收授权客户端浏览器的请求,Web Server将根据通信协议完成相应的监测。
8、四、系统硬件选型及设计4.1 硬件开发平台本系统选用飞凌公司设计生产的嵌入式开发板OK6410,该平台基于三星公司的ARM处理器S3C6410。S3C6410是由三星公司推出的一款低功耗、高性价比的RSIC处理器,它基于ARM11内核(ARM1176JZF-S),可广泛应用于移动电话和通用处理等领域;S3C6410为2.5G和3G通信服务提供了优化的硬件性能,内置强大的硬件加速器:包括运动视频处理、音频处理、2D加速、显示处理和缩放等;集成了一个MFC(Multi-Format video Codec)支持MPEG4 /H.263/H.264编解码和VC1的解码,能够提供实时的视频会议以及NR
9、SC和PAL制式的TV输出;除此之外,该处理器内置一个采用最先进技术的3D加速器,支持OpenGL ES 1.1/ 2.0和D3DM API, 能实现4M triangles/s的3D加速;同时,S3C6410包含了优化的外部存储器接口,该接口能满足在高端通信服务中的数据带宽要求。由于以上突出的性能表现,著名的苹果公司手机IPHONE就是基于S3C6410处理器。 OK6410开发板基于三星公司最新的ARM11处理器S3C6410,拥有强大的内部资源和视频处理能力,可稳定运行在667MHz主频以上,支持Mobile DDR和多种NAND Flash。OK6410开发板上集成了多种高端接口,如复
10、合视频信号、摄像头、USB、SD卡、液晶屏、以太网,并配备温度传感器和红外接收头等。这些接口可作为应用参考帮助用户实现高端产品级设计。OK6410的软件系统目前支持WinCE 6.0、 LINUX2.6.28、Android2.1以及uC/OS-II,提供标准板级支持包(BSP)并开放源码,其中包含了所有接口的驱动程序,客户可以直接加载使用。另外,该板可连接飞凌公司与之相配套使用的串口扩展板、WIFI模块、摄像头模块等。本系统采用LINUX2.6.28内核的Linux系统和飞凌公司的CMOS摄像头实现了硬件平台的搭建。系统硬件结构如图1 所示图1 系统硬件结构图4.2 bootloader概述
11、及移植BootLoader是在操作系统内核或用户应用程序运行之前运行的一段小程序。它对开发板上的主要部件如CPU,RAM,FLASH,串口等基本硬件进行初始化,建立内存空间的映射图(包括设置系统堆栈和系统启动参数区等),从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。然后跳转到操作系统内核的入口,将系统控制权交给操作系统,之后系统的运行和BootLoade再无任何关系。目前比较流行并且支持Linux操作系统的几种BootLoader有:GRUB、LILO、U-boot、vivi等。本系统采用的BootLoader为:U-Boot,U-Boot是德国DENX
12、小组开发的用于多种嵌入式CPU的BootLoader程序,应用最为广泛。因为要在开发板上运行,所以要对U-Boot进行交叉编译。U-Boot的工作过程分两个阶段,第一阶段的主要任务有:本地硬件设备初始化(屏蔽所有中断、关闭处理器内部指令/数据cache等),为第二阶段准备RAM空间,复制第二阶段代码到RAM,设置堆栈跳转到第二阶段程序入口点。第二阶段的主要任务有:初始化本阶段所使用的硬件设备,检测系统内存映射,将内核映像和根文件系统映像从Flash上读入RAM中,为内核设置启动参数,调用内核。U-Boot的移植操作,实际上就是根据嵌入式系统硬件资源,对相关的文件进行修改,包括两个方面的移植:第
13、一层面是针对CPU的移植,第二层面是针对BOARD的移植,同时需要移植相关的头文件。按照开发板说明对相关文件进行修改、编译,然后烧写到开发板的Flash中。这样就完成了U-Boot的移植。五、系统环境搭建软件平台采用的嵌入式操作系统为Linux 2.6.28,Linux 具有内核小、效率高、源码开放、内核直接提供网络支持等优点,但嵌入式系统的硬件资源有限,因此需根据实际需求对内核进行裁剪,配置所需的功能模块,然后再移植到硬件平台上。嵌入式系统的软件开发采用交叉编译调试的方式,在宿主机上安装Linux 系统,建立交叉编译环境,在宿主机编写程序代码,再利用交叉编译工具生成目标机上可用的可执行文件,
14、最后向目标机平台移植。5.1交叉编译环境的搭建交叉编译就是在一个平台上生成另一个平台上的可执行代码。在进行嵌入式开发时,由于ARM平台的系统资源有限,不可能在ARM平台上进行本机编译,因此我们可以在PC机上编译出针对ARM平台的可移植程序,然后下载到开发板上执行。要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具然后用这个交叉编译工具编译程序的源码,最终生成可以在开发板上执行的代码。目标板的系统是Linux,我们要进行Linux下的程序开发,首先要安装Linux系统。我们选用Ubuntu10.10作为主机开发环境。在虚拟机里安装好Ubuntu,由于嵌入式交叉编译时经常需要用到root用
15、户权限,为避免日后频繁要求输入密码,我们可以通过编辑/etc/gdm/目录下的custom.conf文件把Ubuntu设置为root用户自动登录。在custom.conf中添加以下内容即可。daemonTimedLoginEnable=trueAutomaticLoginEnable=trueTimedLogin=rootAutomaticLogin=rootTimedLoginDelay=30设置Ubuntu的IP地址为固定IP,方便以后程序的调试。交叉编译器我们选用飞凌公司提供的cross-4.2.2,首先将cross-4.2.2-eabi.tar.bz2文件拷贝到Ubuntu中,输入以下
16、命令安装:mkdir /usr/local/armtar jxvf cross-4.2.2-eabi.tar.bz2 C /usr/local/arm (将文件解压到/usr/locsl/arm目录下)安装好后可用/usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-gcc v 命令查看版本信息,若编译器安装成功则会显示出交叉编译器的版本信息,否则需要重新安装。为了方便日后调试程序我们可以把安装目录加入环境变量中,编辑/etc下的profile文件,加入:export PATH=”$PATH: /usr/local/arm/4.2.2-eabi/usr/bin
17、”修改完后重启系统,然后在终端输入arm-linux-gcc 若提示no input file 则交叉编译环境搭建成功。5.2 NFS环境的搭建在嵌入式开发过程中,交叉编译好的程序要在开发板上运行,就要烧写到目标板的flash上,对于应用程序,我们需要频繁调试,这样每次都要烧写一遍,严重影响开发效率。为了方便程序调试,我们搭建了NFS系统。NFS是Network File System 的简称,是分布式计算机系统的一个组成部分,用它可实现在已购网络上共享和装配远程文件系统。可以通过网络让不同操作系统的计算机可以共享数据。可以通过它把远程主机的目录挂载到本机,使得访问远程主机的目录就像访问本地目
18、录一样方便快捷。Ubuntu 上默认没有安装NFS服务器,首先要安装NFS服务程序,在终端输入:sudo apt-get install nfs-kernel-server这样系统会自动帮我们安装好NFS服务器,这样宿主机就相当于NFS Server。NFS是一个RPC服务程序,所以在使用它之前, 先要映射好端口通过portmap设定,在启动NFS之前, 需要启动portmap服务。修改/etc/exports,添加一个共享目录:/var/nfs/ *(rw,sync),其中/var/nfs/是要共享的文件夹,*是表示所有用户都可以挂载这个共享文件夹,(rw,sync)表示以读写方式挂载,并且
19、使资料同步写入存储器中。使用命令sudo exportfs -r 更新,使用命令/etc/init.d/portmap start和/etc/init.d/nfs-kernel-server restart重新启动portmap服务和nfs-kernel-server服务。在开发板上输入命令:mount -t nfs 192.168.1.242:/var/nfs /mnt -o nolock将远程主机/var/nfs目录挂在到本地的/mnt目录下。-t选项指定文件系统的类型为NFS,-o选项禁用锁定。六、流媒体服务器设计6.1视频采集模块设计视频采集模块通过嵌入式Linux 操作系统调用Vid
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 嵌入式 Linux 视频 监控 系统
