基于s3c6410的视频监控系统的设计与实现[图].docVIP

基于s3c6410的视频监控系统的设计与实现[图].doc

  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文档。上传文档
查看更多
基于S3C6410的视频监控系统的设计与实现[图] 发布: 2012-3-22 20:42 ?|? 作者: 胡世敏? ? ?|? 来源: | 浏览:309次 字体:?? 小?? 中?? 大? |? 上一篇? 下一篇?|? 打印?|? 评论(0) 摘要:为了实现一种简单,可靠性高的嵌入式视频监控系统,基于三星S3C6410微处理器系统,结合嵌入式技术和图像处理技术,利用S3C6410的硬件编码模块MFC进行MPEG-4编码,采用实时传输协议通过网络进行视频传输。经局域网条件下测试,该系统采集传输视频质量较好,性能稳定,满足低成本、高可靠性的嵌入式视频监控要求。在描述系统框架的同时,更具体地说明了实现部分的关键代码示例。 视频监控的应用领域日益广泛。随着电子信息技术、多媒体技术以及网络技术的快速发展,嵌入式视频监控技术也得到了快速的发展。相比较传统的监控系统,嵌入式监控系统具有成本低,小巧灵活,高可靠性等特点。本文以三星S3C6410微处理器为基础处理器ARM11,实现了一种简单高效的视频监控系统。系统既可以使用网线进行传输,也可以采用无线USB网卡进行无线传输。本文在说明系统框架的同时,着重对系统实现的具体软件进行了说明。 1 系统的组成和工作原理 嵌入式视频监控系统由硬件部分和软件部分组成。硬件部分由视频采集模块、视频编码模块、网络传输模块以及嵌入式处理器模块组成;软件部分基于嵌入式操作系统平台,包括视频数据采集模块、视频编码模块和网络传输模块等。 系统的总体设计原理为:通过OV9653的130万像素摄像头采集视频数据,然后将视频数据发送到S3C6410的MFC(多媒体格式编解码)模块进行视频编码后,得到MPEG-4视频流,最后将数据通过网络模块发送到接收端。系统组成框图如图1所示。 2 系统的硬件设计 2.1 数据采集模块 视频采集模块采用OV9653摄像头传感器。OV9653摄像头传感器是低电压的CMOS图像传感器。采集图像的输出格式可以是YUV/YCbCr 4:2:2或者RGB 4:2:2。 2.2 视频编码模块 系统基于ARMSYS6410开发板开发。ARMSYS6410开发板以三星S3C6410微处理器(ARM1176JZF-S内核)为核心。 利用S3C6410提供的MFC(多媒体格式编解码)模块进行编码,将OV9653采集到的YUV格式数据编码成MPEG-4格式数据流。同时,也可以将OV9653采集的RGB格式的数据直接显示在LCD屏上。 2.3 网络传输模块 基于S3C6410微处理器的ARMSYS6410开发板提供了1路10M/100M网络接口,1路USB2.0-OTG,1路USB Host。在网络传输模块中可以直接使用网络接口来进行有线的网络数据传输,也可以使用USB接口的网络卡来进行无线的数据传输。区别只是在软件部分使用的驱动不同,而对程序的结构没有任何影响。 2.4 嵌入式处理器模块 三星S3C6410微处理器(ARM1176JZF-S内核)是一款高性能的多媒体应用处理器,具有强大的硬件多媒体格式编解码单元(MFC),完善的外部设备,同时拥有高达667MHz的运行频率。 3 系统的软件设计 嵌入式操作系统是嵌入式系统的重要组成部分,为应用程序的开发提供了一个软件平台。由于Linux系统具有良好的可裁剪和可移植等特性,目前较多地采用Linux系统来进行嵌入式系统的开发。 基于S3C6410的ARMSYS6410开发板,已经提供了基于Linux 2.6.28内核的操作系统源码。通过对内核各个功能模块进行裁剪,编译出镜像文件,然后下载到开发板上,即可实现Linux嵌入式操作系统以及相应的驱动程序的移植。 系统的整体数据流如图2所示。图中 表示原始数据从外部摄像头到摄像头驱动模块。 表示数据由驱动模块经过处理传输到内存。此时数据可以有不同的格式。 表示数据从内存中传送给视频编码模块的输入缓冲区。 表示MFC编码模块从输入缓冲区读取数据进行MPEG-4编码。 表示编码结束后将数据传送到视频编码模块的输出缓冲区。 表示从视频编码的输出缓冲区读取编码后的数据传送给网络传输模块进行传输。 在此需要注意的是,图示中的视频输入缓冲区对于解码模块是输入缓冲区,但是对于编码模块却是输出缓冲区。对于图示中的输出缓冲区也同样如此。 3.1 视频数据采集程序 视频采集程序使用内存映射的方式进行读取。通过内存映射直接把设备文件映射到内存中,绕过内核缓冲区,进程访问设备文件时和访问普通内存一样,极大的提高了视频数据的读取速度。 视频采集部分的流程图如图3所示。 下面列出视频采集部分的关键代码。 首先打开设备,其中CODEC_NODE为预定义宏,表示摄像头结点文件路径。 dev_fp=open(CODEC_NO

文档评论(0)

wx171113 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档