版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、院 系:电气与信息工程学院 专 业:计算机科学与技术 指导老师:易军 作者姓名:付作辉 张兴 杨春,基于安卓的智能家居安防系统 服务端开发,Company Logo,1.研究背景,Company Logo,1995年问世的第一代模拟制式手机(1G)只能进行语音通话; 1996到1997年出现的第二代GSM、CDMA等数字制式手机(2G)便增加了接收数据的功能,如接收电子邮件或网页; 我国于2008年成功开发出中国3G,下行速度峰值理论可达3.6Mbit/s,上行速度峰值也可达384kbit/s。 目前3G存在三种标准:美国CDMA2000,欧洲WCDMA,中国TD-SCDMA,1)3G 时代的
2、到来,1.研究背景,Company Logo,2)物联网时代的到来,1.研究背景,3)应用背景,Company Logo,视频监控系统应用领域,2.开发环境,主机操作系统:ubuntu10.10 目标板:tiny6410 交叉编译器:arm-linux-gcc 4.4.3 目标板内核Linux 2.6.38,Company Logo,2.开发环境,系统示意图,Company Logo,2.开发环境,系统架构图,Company Logo,3.系统开发,1)开发任务 本系统主要分为三个部分,即android客户端开发、arm11服务器开发、底层家居节点开发。,Company Logo,应用层,网络
3、层,感知层,家居节点,服务器,安卓客户端,4.服务端的开发,嵌入式数据库sqlite3的移植和使用 视频的采集和H264视频压缩 433M无线模块的开发 3G环境下的开发,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,1)什么叫移植? 移植就是让一个平台的代码能够在其它平台上运行。 2)什么时候需要移植? 平台指令集不同(hello world) 硬件设备的更新,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,3) 如何移植(以sqlite3为例) tar xvfz sqlite-autoconf-3070603.tar.gz /解压 ./co
4、nfigure CC=arm-linux-gcc -prefix=/opt/mysqlite -disable-tcl -host=arm-linux /配置 arm-none-linux-gnueabi-gcc: 3.7.6.3“: No such file or directory /出现的问题以及解决办法,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,4) 使用sqlite3对登陆用户的验证 建立数据库 sqlite3 user 建立表 create table user_table(userName varchar(20), userPasswd varcha
5、r(20);,Company Logo,4.1嵌入式数据库SQLite3的移植和使用, 查询操作 select * from user_table; 添加 insert into tbl1 values(userName, passwd); 删除 drop table user_table;,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,5)如何在linux C中调用sqlite3,Company Logo,打 开 数 据 库,执 行 命 令,关 闭 数 据 库,4.1嵌入式数据库SQLite3的移植和使用,实例代码: #include #include int ma
6、in( void ) sqlite3 *db=NULL; char *zErrMsg = 0; int nrow = 0, ncolumn = 0; char *azResult; /二维数组存放结果 int rc; rc = sqlite3_open(zieckey.db, /打开指定的数据库文件,如果不存在将创建一个同名的数据库文件,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,if( rc )fprintf(stderr, Cant open database: %sn, sqlite3_errmsg(db);sqlite3_close(db);exit(1);
7、else printf(open zieckey.db successfully!n);/也可以参考 sprintf 的用法/char *sql = SELECT SensorParameter FROM SensorData WHERE SensorID = 1;char *sql = SELECT * FROM SensorData ;,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,sqlite3_get_table(db,sql,Company Logo,4.1嵌入式数据库SQLite3的移植和使用,基于sqlite3的android登录界面如下:,Compan
8、y Logo,4.2视频的采集和H264视频压缩,1)什么是video4linuxVideo4linux2(简称V4L2),是linux中关于视频设备的内核驱动。在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,摄像头在/dev/video0下。,Company Logo,4.2视频的采集和H264视频压缩,2)v4l2视频采集流程图,Company Logo,4.2视频的采集和H264视频压缩,3)v4l2有三种视频采集方式 使用read、write方式 内存映射方式 用户指针模式,Company Logo,4.2视频的采集和H264视频压缩,4)v4l2视频采集模式,
9、Company Logo,4.2视频的采集和H264视频压缩,5)对视频帧的处理H264压缩 视频压缩的必要性 色彩空间(RGB vs YUV) 一般RGB用于显示,YUV用于视频信号的压缩、传输和存储。 H264压缩需要yuv420格式的图像,Company Logo,4.2视频的采集和H264视频压缩,YUV 的发明是由于彩色电视与黑白电视 的过渡时期。黑白视讯只有 Y视讯,灰阶值。到了 彩色电视规格的制定,是YUV/YIQ的格式来处 理彩色电视图像,把 UV 视作表示彩度的 C,如果 忽略C 讯号,那么剩下的 Y讯号就跟之前的黑白 电视讯号相同,这样一来便解决彩色电视机与黑白 电视机的相
10、容问题。YUV 最大的优点在于只需占 用极少的带宽。,Company Logo,4.2视频的采集和H264视频压缩,6)H264编码 简介 H.264是最新的视频压缩标准,它也称为MPEG-4Part10或AVC(高级视频编码)。据预测,在未来几年内H.264将成为行业首选的视频标准,Company Logo,4.2视频的采集和H264视频压缩,优点: 编码器可使数字视频文件的大小分别减少80%和50%以上。这意味着视频文件所需的网络带宽和存储空间将大大降低。或者从另一个角度来说,在某一特定比特率下,视频图像质量将得到显著提高。 缺点:算法复杂,Company Logo,4.2视频的采集和H2
11、64视频压缩,7)H264有3种帧 I帧 (关键帧) P帧 (帧间预测编码帧) B帧 (双向预测编码帧),Company Logo,4.2视频的采集和H264视频压缩,带有I帧、B帧和P帧的典型视频序列。P帧只需要参考前面的I帧或P帧,而B帧则需要同时参考前面和后面的I帧或P帧。,Company Logo,4.2视频的采集和H264视频压缩,8)减少视频数据量的基本方法 在某个图像帧内,只需要删除不必要的信息就可以减少数据量,但这样做会导致图像的分辨率下降。 在一系列的帧内,可以通过差分编码这样的方法来减少视频数据量,包括H.264在内的大多数视频压缩标准都采用这种方法。在差分编码中,会将一个
12、帧与参考帧(即前面的I帧或,Company Logo,4.2视频的采集和H264视频压缩,P帧)进行对比,然后只对那些相对于参考帧来说发生了变化的像素进行编码。通过这种方法,可以降低需要进行编码和发送的像素值。 对M-JPEG格式来说,上述序列中的三个图像分别作为独立的图像(I帧)进行编码和发送,彼此之间互不依赖。,Company Logo,4.2视频的采集和H264视频压缩,对与差分编码(包括H.264在内的大多数视频压缩标准都采用这种方法)来说,只有第一个图像(I帧)是将全帧图像信息进行编码。如下图:,Company Logo,4.2视频的采集和H264视频压缩,基于宏块的运动补偿的编码图
13、示如下:,Company Logo,4.2视频的采集和H264视频压缩,10) H264编码有两种编码方式: 软件编解码:利用ffmpeg开源库编解码。 硬件编解码: 利用arm11集成的编码芯片进行编解码。,Company Logo,4.2视频的采集和H264视频压缩,5. arm11硬件编码 在S3C6410内部集成的多格式编解码器MFC( Multi Format Codec的缩写),是ARM微处理器内部一种支持多种硬件编码方式的硬件电路,能够编码/解码MPEG-4/H.263/H.264(30fps)等多种格式的多媒体影像。,Company Logo,4.2视频的采集和H264视频压缩
14、,/对编解码器进程初始化 static void *mfc_encoder_init(int width, int height, int frame_rate, int bitrate, int gop_num); /开始编码 static void *mfc_encoder_exe(void *handle, unsigned char *yuv_buf, int frame_size, int first_frame, long *size); /释放编码器 static void mfc_encoder_free(void *handle);,Company Logo,4.3无线模块的开发,1)短距离无线采用443M模块 发射距离远,可穿透23堵墙,可调整发送功率,开发简单等优点。 2)采用扩展性很好的串口协议,保证数据的可靠传输。 3)多路复用,将443M的文件描述符加入到文件描述符中。,Company Logo,4.4 3G环境下的开发,1)公网IP的获取 采
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学三年级上册《清洗红领巾、袜子等小件衣物》知识点试卷
- 小学科学《制作环保手工作品》单元知识点试卷
- 湖南省衡阳市某中学2024-2025学年高二上学期1月期末考试英语试题(解析版)
- 幼儿急疹家庭护理支持系统
- 浙江省金华市卓越联盟2025-2026学年高一上学期12月月考英语试题(解析版)
- 2026年植物王国测试题及答案
- 2026年达芬奇智商测试题及答案
- 2026年python高级函数测试题及答案
- 2026年行动力课后测试题及答案
- 辽宁省重点高中2025-2026学年高二上学期12月月考物理试题
- 输电线路污秽度监测与评估
- 批发药品管理法培训课件
- 偏瘫患者抗痉挛体位摆放技术评分标准
- HG∕T 2972-2017 工业用一甲胺
- GB/T 25849-2024移动式升降工作平台设计、计算、安全要求和试验方法
- 2023年广州番禺区小升初六年级英语期末试卷及答案(含听力原文)
- 绿色食品生产记录表黄瓜
- 课本剧林教头风雪山神庙剧本
- “减负、增效、提质”理念下基于学科核心素养的小学英语作业设计优化策略研究 论文
- GB/T 26081-2022排水工程用球墨铸铁管、管件和附件
- GB/T 4851-2014胶粘带持粘性的试验方法
评论
0/150
提交评论