基于ARM的智能家居监控系统项目计划书

上传人:aa****6 文档编号:29988416 上传时间:2018-01-26 格式:DOC 页数:15 大小:207.50KB
返回 下载 相关 举报
基于ARM的智能家居监控系统项目计划书_第1页
第1页 / 共15页
基于ARM的智能家居监控系统项目计划书_第2页
第2页 / 共15页
基于ARM的智能家居监控系统项目计划书_第3页
第3页 / 共15页
基于ARM的智能家居监控系统项目计划书_第4页
第4页 / 共15页
基于ARM的智能家居监控系统项目计划书_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《基于ARM的智能家居监控系统项目计划书》由会员分享,可在线阅读,更多相关《基于ARM的智能家居监控系统项目计划书(15页珍藏版)》请在金锄头文库上搜索。

1、1基于 ARM 的智能家居监控系统项目计划书团队:S.T 小组成员: 21.引言.12.项目概述.12.1 项目功能12.2 项目开发流程23.硬件环境搭建.23.1 硬件基础23.2 BootLorder 移植 .23.3 USB 摄像头驱动移植并重新编译内核33.4 内核移植、测试.44.项目分解.54.1 视频采集.54.2 图像分析并标记.74.3 图像编码压缩.74.4 视频图像传输.84.5 图像解码解压缩.94.6 图像显示及存储104.7 人脸识别模块104.8 报警模块124.9 各模块整合及调试优化125.项目分工126.进度安排1331.引言随着人民生活水平的不断提高,安

2、防意识不断增强,视频监控得到了广泛使用。对于某些敏感场合,如银行、商店、停车场、居民小区、军事基地等,出于管理和安全的需要,人们必须知道该区域内发生的事件,于是采用某种特定方法来监视该场景,并且及时地对发生的异常事件做出适当的反应,这就是所谓的监控。随着社会信息化程度的不断提高,社会各行各业对视频监控系统的要求也越来越高。目前,视频监控正朝着数字化、网络化、智能化、一体化的方向发展。在国民越来越重视生存环境安全和舒适的今天,高性能智能视频监控系统的研究。与实现将具有不可忽视的应用前景和商业价值。2.项目概述2.1 项目功能a.视频图像采集b.视频传输c.视频图像显示d.历史数据查询e.人脸识别

3、f.发现危险情况自动报警2.2 项目开发流程43.硬件环境搭建3.1 硬件基础开发板采用三星 S3C2440 (ARM920T core with MMC,最高频可达 532 MHz)作为处理器,64 MB 的 SDRAM,256MB 的 Nand Flash 以及 2 MB 的 NOR Flash。配备一个采用 DM9000 网卡的 100M 以太网 RJ-45 口,同时包括一个主 USB 接口。3.2 BootLorder 移植Bootloader 是与系统硬件环境高度相关的初始化软件,它担负着初始化硬件和引导操作系统的双重责任。一些 ARM 平台可以共用同一种 Bootloader,但是

4、总的说来,每一个特定系统的Bootloader 都会有所不同。 Bootloader 广泛用于有操作系统的手持终端设备、智能家电及机顶盒等嵌入式设备上,它负责完成硬件初始化、操作系统引导和系统配制等。Bootloader 移植是在特定硬件5平台上操作系统移植至关重要的一步。可以通过串口线将BootLorder 移植到板子上。3.3 USB 摄像头驱动移植并重新编译内核视频设备驱动层是上层应用和 USB 子系统之间的中间层,不同的 USB 设备在软件上的差异主要体现在该层。该层主要要完成两个方面的工作,实现相应的接口函数供上层应用调用、实现相应的接口函数供 USB 子系统回调在本视频设备驱动函数

5、中,供上层应用调用的接口函数包括了 open 函数 read 函数、close 函数和 ioctl函数,供 USB 子系统回调的函数为 probe 函数和 isoc_irq 函数。其实现的接口函数同上层应用和 USB 子系统的调用关系如下图所示USB 驱动的实现原理如下图所示6USB 驱动的移植过程如下所述:首先下载相应的 USB 补丁文件,将补丁文件放到相应的目录下,然后修改 drivers/usb/Makefile 文件,再修改drevers/usb/media/Kconfig 文件,接着配置内核 make menuconfig,配置完毕后编译内核及模块,再拷贝模块文件至开发板目录下,然后

6、将 USB 摄像头插入开发板(必须先插入摄像头才能插入模块文件) ,重启开发板,插入模块文件(使用 Insmode 命令),Insmode usbcore.ko,Insmode ohci-hcd.ko,Insmode v4l1-compat.ko,Insmode v4l2-common.ko,Insmode videodev.ko,Insmode spac5xx.ko,插入以上模块后建立设备文件,当开发板启动时自动加载模块。3.4 内核移植、测试通过串口线将编译好的内核从 PC 机上移植到开发板,测试USB 接口及摄像头是否正常工作。74 项目分解4.1 视频采集利用 Linux 自带的 V4

7、L 接口进行视频图像的采集。Video4linux(简称 V4L),是 linux 中关于视频设备的内核驱动,现在已有 Video4linux2,还未加入 linux 内核,使用需自己下载补丁。在Linux 中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,摄像头在/dev/video0 下。Video4linux 下视频编程的流程(1)打开视频设备:(2)读取设备信息(3)更改设备当前设置(没必要的话可以不做)(4)进行视频采集,两种方法:a.内存映射b.直接从设备读取(5)对采集的视频进行处理(6)关闭视频设备。为程序定义的数据结构typedef struct v4l_struc

8、tint fd;struct video_capability capability;struct video_channel channel4;8struct video_picture picture;struct video_window window;struct video_capture capture;struct video_buffer buffer;struct video_mmap mmap;struct video_mbuf mbuf; unsigned char *map;int frame;int framestat2;vd;视频采集流程94.2 图像分析并标记读取

9、摄像头视频缓冲区中的数据,对采集到的数据进行运动分析。在进行运动分析之后,对于所传输的图像进行标记,凸显运动物体和入侵物体。最后对经过标记的图像进行编码、传输。4.3 图像编码压缩H.264,同时也是MPEG-4第十部分,是由ITU-T 视频编码专家组(VCEG)和ISO/IEC 动态图像专家组( MPEG)联合组成的视频组(JVT,JointVideo Team)提出的高度压缩数字视频编解码器标准。与其他的视频压缩编码相比,它有以下优点:(1)低码流(Low Bit Rate) 。与MPEG2 和MPEG4 ASP 等压缩技术相比,在同等图像质量下,采用H.264 技术压缩后的数据量只有MP

10、EG2的1/8,MPEG4 的1/3。显然,H.264 压缩技术的采用将大大节省用户的下载时间和数据流量收费。(2)高质量的图像。H.264 能提供连续、流畅的高质量图像(DVD 质量) 。(3)容错能力强。H.264 提供了解决在不稳定网络环境下容易发生的丢包等错误的必要工具。(4)网络适应性强。H.264 提供了网络抽象层(Network Abstraction Layer) ,使得H.264 的文件能容易地在不同网络上传输(例如互联网,CDMA,GPRS,WCDMA,CDMA2000 等) 。目前对图像进行H.264 编码的编码器主要有3 种:JM:JM 是H.264 的官方测试源码,故

11、被称作校验模型 。它 由德国10hhi 研究所开发。目前许多学术研究都在其基础上进行深化。但其结构复杂,不适合应用。T264:T264 是中国视频自由化组织开发的H.264 编码解码器。被广泛应用于linux、windows 等环境中。但是其解码器只能解码其自己生成的码流,同时T264 近些年来一直没有更新,成为其进一步发展的障碍。FFmpeg:FFmpeg 是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL 或GPL 许可证(依据你选择的组件) 。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/ 视频编解码库libavcodec,为了保证高可移植性和编

12、解码质量,libavcodec 里很多codec 都是从头开发的。在视频监控系统的设计中,由于T264 编码成熟,广泛应用于linux 的PC 环境,并且已经取得了很好的效果。同时网络上也有许多程序员将T264 移植到 ARM 环境,效果良好,例程充分。所以我们采用T264 进行视频压缩。4.4 视频图像传输视频图像传输与传统的文件传输有着明显的区别,传统文件的传输对于传输的延迟、抖动没有过多的要求,但是要求有严格的差错控制和重传机制。视频图像传输在传输的实时性、同步性上要求很高,并且要求传输延迟小。视频图像传输能够忍受分组丢失造成的差错和反常,也可以忍受由于没有重传或者纠错机制而导致的分组丢

13、失或延迟,但却无法容忍由于基于重传的差错控制机制引起的11显示不连续或显示混乱。视频图像传输有以下几个特点:1.连续性、实时性;2.占用较大的网络带宽;3.需要精确的时间控制;4.要具有广播和多播的功能;5.允许一定的传输误码。TCP和UDP是协议簇中传输层的两个主要协议,TCP提供了可靠的传输功能,而UDP并不能保证数据的可靠传输。为保证视频数据的完整传输,在此我们采用TCP协议。4.5 视频解码解压缩解码过程首先从视频文件中读取视频信息,并通过相应的解压缩算法对视频信息还原,并且显示出来。输入的视频流来源于视频文件。对于MPEG一4格式的视频文件而言,视频信息中包含了形状信息,运动信息、纹

14、理信息等。解码器需要对形状、运动、纹理三部分信息分开解码,并且利用三部分信息重构视频对象平面VOP,即通常意义上的一帧图像。解码器同时按照显示顺序依次对显示后的图像进行显示,从而看到流畅的画面。12视频解码流程图4.6 图像显示及存储图像显示子模块用于提供系统接口给用户,使用户能够主动查看当前时刻的监控图像,也可以查看数据库中某一历史时刻的图像。显示模块从解码器获得视频数据,经显示程序处理在界面上显示。 视频数据在解码显示过程中同时存储在PC机上,用于后期的历史查询。4.7 人脸识别模块人脸识别技术,是指通过与计算机相连的摄像头动态捕捉人的面部图像,同时把捕捉到的图像与预先录入的模板库中的人脸

15、图像进行比较识别由于该技术在采集人脸时的非接触性与友好性,人们对该技术没任何排斥心理,从这个角度讲,人脸识别可以成为一种最友好的生物特征认证技术。人脸识别的核心技术在于“局部特征分析”和“图形识别算法”,这种算法利用了面部各器13官及特征部位的方位关系,将形成的识别参数与模板数据库中的参数进行比较、判断和确认。面部识别技术主要针对面部不易变化的部分进行图像处理,其中包括眼眶轮廓、颧骨周围轮廓区域及嘴的边缘区域。目前人脸识别的技术主要有:特征面孔扫描技术、特征分析面孔扫描技术、神经网络定位面孔扫描技术和自动面孔处理扫描技术。人脸识别技术的优点:不需要当事人的配合,可以用于某些隐蔽场合,可远距离采集人脸图像。根据系统新输入的人脸图像,与已有的人脸数据库进行比对,来判断该图像是否在人脸库中,如果不在该图像数据库中,则触发报警模块报警。人脸识别包含以下几个方面

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号