基于Android平台的嵌入式视频监控系统设计.pdf_第1页
基于Android平台的嵌入式视频监控系统设计.pdf_第2页
基于Android平台的嵌入式视频监控系统设计.pdf_第3页
基于Android平台的嵌入式视频监控系统设计.pdf_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于A n d r o id 平台的嵌入式视频监控系统设计郑海洲 基于A n d r o id 平台的嵌入式视频监控系统设计 D e s ig no ft h eE m b e d d e dV id e oM o n it o r in gS y s t e mB a s e do nA n d r o idP l a t f o r m 郡瑶洲 上海理工大学光电信息与计算机学院 上海2 0 0 0 8 2 摘要 对现有的视频监控设备进行了调查和研究 提出一种基于A n d r o id 平台的嵌入式视频监控系统 该系统主要由基于 3 C 2 4 4 0 芯片的开发板和A n d r o id 智能手机两部分组成 目标板用于视频的采集和压缩编码 并将生成M P E G 4 视频流发送到H e l ixS e r v e r 流 媒体服务器 A n d r o id 智能手机作为监控端的视频监控界面 以3 G 的方式进行登录 并通过A n d r o id 智能手机自带的浏览器播放视频 数据 通过A n d r o id 智能手机浏览器观看到的视频达到正常监控的标准 关键词 嵌入式L in u x 视频监控流媒体服务器 3 C 2 4 4 0A n d r o id 智能手机 中图分类号 T P 2 7 4文献标志码 A A b s t r a c t T h ee x is t in gv id e om o n it o r in gf a c il it ie sa r ein v e s t ig a t e da n ds t u d ie d a n dt h ed e s ig ns t r a t e g yo ft h ee m b e d d e dv id e om o n it o r in gb a s e d o nA n d r o idp l a t f o r misp r o p o s e d T h es y s t e misc o m p o s e do ft w op a r t s o n eist h e 3 C 2 4 4 0d e v e l o p m e n tb o a r d a n dt h eo t h e risA n d r o ids m a r t p h o n e T h et a r g e tb o a r disu s e df o rv id e oa c q u is it io na n de n c o d in gc o m p r e s s io n t h eM P E G 一4v id e os t r e a mg e n e r a t e diss e n tt oH e l ixs t r e a m in g m e d ias e r v e r A n d r o ids m a r tp h o n eisu s e da st h ev id e om o n it o r in gin t e r f a c eo ft h em o n it o rt h a tisl o g inin3 G a n dt h ev id e od a t aa r ep l a y in g t h r o u g hb u il t in b r o w s e ro fA n d r o ids m a r tp h o n e T h ev id e ow a t c h e do nt h ep h o n er e a c h e sn o r m a lm o n it o r in gs t a n d a r d K e y w o r d s E m b e d d e d n u V id e om o n it o r in g S t r e a m in gm e d ias e r v e r 3 C 2 4 4 0 A n d r o ids m a r tp h o n e 0 引言 中国视频监控市场总体上经历了模拟监控 数字 监控和网络监控三个主要阶段 作为第一代视频监控 技术的模拟监控 在图像质量 监控范围上都有很大的 地域局限性 数字监控作为继模拟监控之后的第二代 监控技术 无论在图片质量 保存时间以及可靠性等性 能上都有很大的提高 为用户提供了高性价比的监控 解决方案 随着3 G 网络的出现 手机视频监控的应 用领域得到拓展 家庭监控和小型商铺监控的发展倍 受看好 另外 移动安防在公安 武警 人防 抗洪救 灾 森林防火等公共部门的应用潜力非常巨大 本文 提出一种以嵌入式L in u x 作为操作系统 3 C 2 4 4 0 作为 中央处理硬件平台和A n d r o id 智能3 G 手机作为监控 客户端的视频监控系统方案 3 1 系统整体架构 本系统选用韩国三星电子的3 2 位处理器 3 C 2 4 4 0 作为系统控制的核心处理器 因为U S B 接口的摄像头 成本低廉 标准的接口安装灵活方便 应用十分广泛 修改稿收到日期 2 0 1 2 1 0 2 4 第一作者郑海洲 1 9 8 8 一 男 现为上海理工大学检测技术与自动化 装置专业在读硕士研究生 主要从事嵌入式硬件方面的研究 所以本文采用了台湾嘉应的U S B 摄像头 整个系统硬 件包括U S B 摄像头 嵌入式处理器 3 C 2 4 4 0 存储器模 块和客户监控端 系统结构如图1 所示 图1系统整体框图 F ig 1 O v e r a l ls t r u c t u r eo ft h es y s t e m 1 1 系统硬件分析 3 C 2 A 4 0 是韩国三星公司开发的一款基于A R M 9 2 0 T 内核和采用C M O S 工艺的3 2 位的砒蛇微处理器 其低 成本 低功耗 且全静态设计特别适合应用于对成本和功 率比较敏感的场合 该处理器的主频达到4 0 0 5 3 3M H z 接口多 资源丰富 存储单元包括F l a s h 和S D R A M F l a s h 具有掉电保持数据的特性 用于存储B o o f l o a d e r 启 动程序 L in u x 内核映像 文件系统以及用户应用程序等 S D R A M 数据存取速度快于F l a s h 存储器 用于为操作系 统和应用程序提供运行空间 3 0 P R O C E S SA U T O M A T I O NI N S T R U M E N T A T I O NV o L3 4N o 9S e p t e m b e r2 0 1 3 基于A n d r o id 平台的嵌入式视频监控系统设计郑海洲 1 2 监控端分析 智能手机操作系统采用的是A n d r o id 系统 A n d r o id 操作系统是基于L in u x 4 1 平台的开源手机操作 系统 该平台由操作系统 中间件 用户界面和应用软 件组成 A n d r o id 平台是一个先进的平台 而且 A n d r o id 操作系统是开源的项目 开发者可以利用现有 资源进行自适应开发 A n d r o id 手机平台已集成了音 视频编解码的功能 并且提供了相应的A P I 因此可以 根据系统的实际需要 利用A n d r o id 开发工具编写基 于网络的音视频播放器 A n d r o id 是基于L in u x 的自 由及开放源代码的操作系统 用户可以对该系统进行 裁剪和定制 这些特点为本系统的开发提供了十分便 利的条件 1 3 系统软件设计 系统软件是在L in u x 操作系统的基础上构建的 文件系统是针对F l a s h 的无缓冲机制的日志式闪存文 件系统 J F F S 2 包括应用程序 模块 配置文件和库 函数等 视频采集系统程序包括选择合适的B o o t l o a d e r 编 译嵌入式L in u x 内核 加载摄像头驱动 建立1 3 志式闪 存文件系统几个部分 1 3 1J F F s 2 文件构建 J F F S 2 文件构建步骤如下 构建文件系统基本目录 m k d irb ind e vh o m e e t cl ibp r o cs b ins y sv a t t m pr o o tu s rt o o l s 修改设备号 编写M A P S 文件 配置内核 生成映像文件 m k f s j f f s 2 dj f f s 2 oj f f s 2 im g 1 3 2 摄像头驱动的加载 本系统采用的是基于中芯微公司生产的Z C 3 0 1 P 芯片的摄像头 该摄像头具有高质量的V G A 感光器 传输接口为U S B l 1 最大分辨率为6 4 0 x 4 8 0 支持动 态与静态视频采集 在L in u x 平台上加载U S B 摄像头驱动 首先把U S B 控制驱动模块静态编译到内核 使开发平台支持U S B 接 口 当使用摄像头进行视频采集时 使用in s m o d 命令动 态加载器驱动模块 这样摄像头就可以工作了 1 3 3B o o t L o a d e r 的移植 B o o t L o a d e r 的启动过程可以分为单阶段和多阶段 两种 通常多阶段的B o o t L o a d e r 能提供更为复杂的功 能和更好的可移植性 从固态存储设备上启动的 B o o t L o a d e r 大多采用多阶段启动 第一阶段使用汇编 来实现 它完成一些依赖于C P U 体系结构的初始化 自动化仪表 第3 4 卷第9 期2 0 1 3 年9 月 并调用第二阶段的代码 第二阶段则通常使用C 语 言来实现 这样可以实现更复杂的功能 而且代码会有 更好的可读性和可移植性 1 3 4L in u x 内核的移植 本系统采用的L in u x 内核为L in u x 2 6 系列 5 开 发时无需做任何修改 只要根据硬件情况稍做改动 便 可在 3 C 2 4 4 0 目标板上很好地运行 L in u x 内核移植的过程图如图2 所示 修改M k e f l l e 凸 修改内核信息 U 内核配置 凸 内核编译 图2L in u x 内核移植流程图 F ig 2 F l o w c h a r to fL in u xk e r n e lt r a n s p l a n t a t io n L in u x 内核移植步骤如下 下载L in u x 2 6 1 4 t a r g z 将压缩包移动到 u s r s r c 目录下 并解压缩 编辑M a k e f il e 修改目标C P U 体系结构和交叉 编译工具的路径 修改M a k e f il e 中A R C H 和C R O S S C O M P I L E 对应内容 修改本机的交叉编译工具链的 路径和前缀 修改N a n d f l a s h 的分区 在a r c h a m m a c h s 3 c 2 4 4 0 d e v s C 文件中加入分区信息 修改f s K c o n f ig 文件 使内核支持d e v f s 以及在 s b in in it 运行之前能自动挂 戌C d e v 为d e v f s 文件系统 复制m a k e 的配置文件 对内核进行配置 其 中V id e oF o rL in u x 配置必选 配置工作完成后 执行m a k ez I m a g e 操作 把 a r c h a r m b o o t 目录下的z l m a g e 下载到目标板上运行 2 视频采集的应用程序 视频采集系统主要包括视频采集程序 视频编码 程序和流媒体服务器3 个应用层软件 2 1 视频采集程序 V id e 0 4L in u x V 4 L 是L in u x 中关于视频设备的内 核驱动 它为L in u x 的视频和音频提供了一整套的A P I 接口 配合相应的视频采集设备和驱动程序 可以实现 影协图片采集等功能 2 1 1 接口函数 d r iv e r s m e d ia v id e o v id e o d e v C 文件提供了相关 内核接口函数 具体介绍如下 3 1 基于A n d r o id 平台的嵌入式视频监控系统设计郑海洲 in tv id e o r e g is t e r d e v ic e s t r u c tv id e o d e v ic e 木 in tt y p e in tn r 该函数用于实现L in u x 视频设备在内核中的注 册 其中 参数 s t r u c tv id e o d e v ic e 木 是想要注册的 v id e o d e v ic e 结构 参数 t y p e 是想要注册的设备类 型 参数 n r 是想要注册的设备号 s t r u c tv id e o d e v ic e 该函数用于定义v id e o d e v ic e 结构体 e x t e mv o idv id e o u n r e g is t e r d e v ic e s t r u c tv id e o d e v ic e 木 该函数用于实现L in u x 视频设备在内核中的注 销 其中 参数 s t r u c tv id e o d e v ic e 木 是想要注销的 v id e o d e v ic e 结构 2 1 2 视频采集的关键步骤 视频采集步骤包括打开视频 读取设备信息 读 v id e o p ic t u r e 的信息 改变v id e o p ic t u r e 中分量的值 初始化c h a n n e l 关闭设备等 具体介绍如下 打开视频 U S B 摄像头在系统中对应的设备 文件为 d e v v id e o O 采用系统调用函数o p e n 实现 读取设备信息 采用I n tv 4 1 g e t c a p a b il it y v 4 1 一 d e v ic e 木v d 函数 可成功读取v id e o c a p a b il it y 中的 信息 读取v id e o p ic t u r e 中的信息 采用I n tv g l g e t p ic t u r e v 4 1 一d e v ic e v d 函数 可成功读取图像的 属性 改变v id e o p ic t u r e 中分量的值 先为分量赋新 值 再调用V I D I O C S P I C T v d p ic t u r e e o l o u r 6 5 5 3 5 I f io e t l v d f d V I D I O C S P I C T v d p ic t u r e 0 p e r r o r V I D I O C S P I C T R e t u r n 一1 初始化c h a n n e l 视频采集有内存映射 m m a p 和直接从设备读取 r e a d 两种方式 m m a p 系统的调用使得进程之间通 过映射同一个普通文件实现共享内存 当普通文件被 映射到进程地址空间后 进程可以像访问普通文件一样 对文件进行访问 而不必调用r e a d w r it e 等操作 其过程包括6 个步骤 分别是 初始p ic t u r e 的属性 初始 化v id e o m b u f 以得到所映射的b u f f e r 的信息 修改 v id e o m m a p 和帧状态的当前设置 将m m a p 与v id e o l T l b u f 绑定 m m a p 方式下的捕捉流程就是调用 V I D I O C M C A O T U R E 做视频截取 调用V I D I O C S Y N C 等 待一帧截取结束 关闭视频设备 2 2 视频编码程序 视频编码是数字图像处理中的一个重要研究领 域 其目的就是在保证画面质量的前提下 用尽可能少 的比特数表示视频信息 典型的视频编码技术有 J P E G M P E G H 2 6 1 和H 2 6 4 等 目前 基于M P E G 4 标准的视频编码器比较多 主 要有微软开发的m s m p e g v 3 f f m p e g 和X v id X v id 是应 用较为广泛的M P E G 4 视频压缩开源代码 所以本文 选择开源高效的X v id 视频编码器对采集的视频图像 数据进行M P E G 4 压缩编码 X v id 视频编码器选用0 9 2 版本 在目标板的 L in u x 操作系统中对X v id 0 9 2 3 进行交叉编译的步骤 如下 解压缩X v id 源码 t a r x z v fx v id c o r e 0 9 2 t a r g z 进入b u il d g e n e r ic 目录 创建编译配置文件 由于X v id 没有针对A R M 的汇编优化 因此 编译时需 将汇编关闭 还需指定程序所运行的平台为a l T f l 1 in u x 执行命令 c o n f ig u r e d is a b l e a s s e m b l y h o s t a l T f l l in u x 编译 m a k ein s t a l l 安装程序 交叉编译完成后 会生成静态库l ib x v id c o r e a 和动态库l ib x v id c o r e S O 木 用户程序可利用库文件所 提供的编程接1 3 调用X v id 自带的函数 摄像头采集的视频帧为Y U V 4 2 0 格式 通过X v id 编码器的e n c o d e r e n c o d e 函数实现视频压缩 该函数 定义如下 in te n c o d e r e n c o d e E n c o d e r 4 p E n c X v id E N C F R A M E4p F r a m e X v id E N C S T A T S 木p R e s u h 2 3R e a lS e r v e r 流媒体服务器 目前 市场上主流的流媒体技术有3 种 分别是 R e a lN e t w o r k s 公司的R e a lM e d ia M ic r o s o f t 的W in d o w s M e d ia 和A p p l e 公司的 7 8 3 Q u ic kT im e 这3 种技术都 有自己的专利算法 专利文件格式和专利传输控制协 议 本文以H e l ixS e r v e r 为例 介绍如何在L in u 下构 建流媒体服务器 采翼嚣H 燃采集设备I l 发生器 Q u ic k T im e 编码器 其他编码器 H e l ix L 一 流媒体 流媒体服务器I l 客户端播放嚣 图3 流媒体服务器架构 关闭设备 完成视频采集后 需要清理内存和F ig 3 A r c h it e c t u r eo ft h es t r e a m in gm e d ias e r v e r 3 2 P R O C E S SA U T O M A T I O NI N S T R U M E N T A T I O NV o L3 4N o 9S e p t e m b e r2 0 1 3 基于A n d r o id 平台的嵌入式视频监控系统设计郑海洲 2 3 1H e l ixS e r v e r 的安装 H e l ixS e r v e r 的安装程序如下 t a rz x v fr s l11 3 一g a l in u x r h e l 4 t a r g z 解压安装包文件 e h m o d xh e l ix s e r v e r r e t a il 一1 1 0 1 r h e l 4 s e t u p b in 改变下载的文件名称和组属性 使它成为可执行文件 h e l ix s e r v e r r e t a il 11 0 1 r h e l 4 一s e t u p b in 运行安装程序 2 3 2H e l ixS e r v e r 流媒体服务器的启动 使用命令在后台启动流媒体服务器 并在启动过 程可以看到服务器版本和系统平台的信息如下 启动服务器 B in r m s e r v e rI n l s e r v e r c f s 首先进入安装目录 使用命令在后台启动 启动过程可以看到服务器版本和系统平台的信 息 具体如下 B in r m s e r v e rr m s e r v e r c 龟 H e l ixS e r v e r C 1 9 9 5 2 0 0 5 R e a l N e t w o r k s I n c A U f ig h t sr e s e r v e d V e r s io n H e l ixS e r v e r1 1 0 1 1 0 1 18 8 4 B u il d 7 42 7 7 56 8 8 P l a t f o r m l in u x r h e l 4 i6 8 6 监控服务器的进程 o s e f lg r e pr m s e r v e r 可以使用p s 命令监控流媒体服务器的运行进程 r o o t37 6 536 5 501 5 1 3p t s 3 0 0 0 0 0 0 B in r m s e r v e rr r r l s e r v e r c f g r o o t37 6 637 6 511 5 1 37 0 0 0 0 0 2 B in r m s e r v e rr m s e r v e r c f g r o o t 37 6 7 37 6 501 5 1 37 0 0 0 0 0 0 B in r m s e r v e rr m s e r v e r o f g r o o t38 5 938 1 801 5 1 5p t s 4 0 0 0 0 0 0g r e pr m s e r v e r 其中 P I D 为37 6 5 是主进程 P I D 为37 6 6 和37 6 7 是子进程 监控端口 n e t s t a t n t u l p g r e pr m s e r v e r 可以使用命令监控流媒体服务器端口运行情况 t e 0 90 9 0 L I S T E N 37 6 6 r m s e r v e r t c p 0 0 70 7 7 L I S T E N37 6 6 r m s e r v e r 2 3 3H e l ix 服务器的停止 由于H e l ix 服务器没有提供服务器停止命令 所 以只能通过使用传统的 K il l 来 停止服务器的进 程 使用命令如下 自动化仪表 第3 4 卷第9 期2 0 1 3 年9 月 k il le a t L o g s r m s e r v e r p id 停止使用H e l ix 服务器 2 4 视频监控界面 本系统采用的是具有3 G 上网功能的A n d r o id 智 能手机 A n d r o id 手机有自带的浏览器 当在地址栏中 输入开发板的I P 地址时 手机就会以3 G 方式登人目 标板的H e l ixS e r v e r 流媒体服务器 将编码器的码率分别设置为2 5 6k b it s 51 2k b it s 7 6 8k b it s 图像格式设置

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论