




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科学生毕业论文(设计) 题目(中 文):基于Linux、QT的视频监控系统的设计与实 现 Design and implementation of video(英 文): monitoring system based on Linux and QT 姓 名XXXX 学 号XXXXXXXXXXXX 院 (系)XXXXXXXX 专业、年级XXXXXXXXXX 指导教师XXXX I 2014年 5 月 8 日 湖南科技学院本科毕业论文(设计)诚信声明 本人郑重声明:所呈交的本科毕业论文(设计),是本人在指导老 师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权 争议,除文中已经注明引用的内容外,本论文不含任何其他个人或集 体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人 和集体均已在文中以明确方式标明。本人完全意识到本声明的法律结 果由本人承担。 本科毕业论文(设计)作者签名: 年 月 日 111 毕业论文(设计)任务书 课题名称:基于Linux、QT的视频监控系统的设计与 实现 学生姓名:XXXX 系 别:XXXXXXXX 专 业: XXXXXXXX I 指导教师:XXX 2013 年 11 月 30 日 湖南科技学院本科毕业论文(设计)任务书 1、主题词、关键词: linux、QT 技术、v4l2 编程、http 协议 2、毕业论文(设计)内容要求: (1)介绍项目背景及未来发展应用方向; (2)介绍 Linux 系统下视频的采集技术 v4l2; (3)分析需求以及设计整个项目的框架; (4)分析服务器、客户端功能的实现; (5)编写程序实现各模块的功能; (6)进行系统测试以及软件部分的程序调试; (7)对整个系统的设计情况进行分析总结。 A 3、文献查阅指引: 1凌进.网络视频监控技术的应用和发展D北京:北京邮电大学20076,7:38. 2贾智平,张瑞华嵌入式系统原理与接口技术M清华大学出版社,20057,5:42. 3刘峥嵘等嵌入式 Linux 应用开发详解M.北京:机械工业出版社,20046,21:216. 4倪继利Linux 内核分析及编程M北京:电子工业出版社,20061,4:315. 5戴丽基于 Video4Linux 的 USB 摄像头图像采集实现J合肥工业大学2006,2:31. 6刘斌基于嵌入式系统的视频采集模块的设计D西安电子科技大学,2006,53:38. 7许海燕,付炎.嵌入式系统技术与应用M .机械工业出版社,2002. 8邹思轶.嵌入式 Linux 设计与应用M .清华大学出版社,2002. 9刘富强.数字视频监控系统开发及应用M .北京:机械工业出版社,2003. 10王英杰,陈祥献,耿晨歌.嵌入式网络化多媒体视频监控系统的设计与实现J .工业控制 计算机,2003 ,5 (16) :24 25. 11萨默菲尔德(英),布兰切特(加)C.GUI.QT.4 编程(第二版) 电子书 12Linux 窗口程序设计-QT4 精彩实例分析-PTF 电子书 4、毕业论文(设计)进度安排: 2013 年 11 月:选定题目,查找资料,确定总体设计思路 2013 年 12 月:论文开题 2014 年 2 月:进行模块分析,动手设计电子电路 2014 年 3 月:进行程序的调试,结合相应的硬件进行测试 2014 年 4 月:开始撰写论文初稿 2014 年 4 月下旬:修整和完善论文内容,交由指导老师评阅并最终定稿 2014 年 5 月上旬:制作 PPT,完成毕业论文答辩 教研室意见: 负责人签名: 注:本任务书一式三份,由指导教师填写,经教研室审批后一份下达给学生,一份交指导教师,一份留系里存档。 B 湖南科技学院本科毕业论文(设计)开题报告书 论文(设计)题目基于Linux、QT的视频监控系统的设计与实现 作 者 姓 名XX 所所属属系系、 专专业业、年年 级级 电电子子工工程程系系 XXXXXX 专专业业 XXXX 年年级级 指导教师姓名、职 称 XXXX预计字数预计字数13000开题日期开题日期2013.12.21 选题的根据:1)说明本选题的理论、实际意义 2)综述国内外有关本选题的研究动态和自己的见解 随着社会的网络技术的不断更新,计算机多媒体应用技术及网络技术方面的发展之 迅速是有目共睹的,在银行,商场监控,城市交通管理,酒店等安全保卫方面,视频监控 系统的市场需求量大幅度上升,市场上出现了多种图像采集和传输的产品,视频监控系 统的发展趋势必然是数字化,网络化,即采用嵌入式网络摄像机,利用嵌入式监控设备 体积小巧,性能稳定,通讯便利等特点。由于我国基于嵌入式技术的网络视频监控系统 的研发刚刚起步,而且主要是针对一些大,中型视频监控工程所开发的,对于小型厂矿, 企业,学校和家庭而言,其成本高,系统功能复杂而县冗余,所以针对上述用户群,设计 并研究一种简便,廉价,新型的基于嵌入式系统的是视频监控系统具有很大的工程实际 意义。 主要内容: (1)介绍项目背景及未来发展应用方向; (2)介绍 Linux 系统下视频的采集技术 v4l2; (3)分析需求以及设计整个项目的框架; (4)分析服务器、客户端功能的实现; (5)编写程序实现各模块的功能; (6)进行系统测试以及软件部分的程序调试; (7)对整个系统的设计情况进行分析总结。 C 研究方法: (1)利用 V4L2 框架从 USB 摄像头采集视频数据 (2)利用多媒体处理第三方库 ffmpeg 将采集到的视频数据进行编解码 (3)通过 Socket 网络编程搭建服务器,进行数据传输 完成期限和采取的主要措施: 完成期限: 2014 年 2 月:进行模块分析,动手设计电子电路 2014 年 3 月:进行程序的调试,结合相应的硬件进行测试 2014 年 4 月:开始撰写论文初稿 2014 年 4 月下旬:修整和完善论文内容,交由指导老师评阅并最终定稿 2014 年 5 月上旬:制作 PPT,完成毕业论文答辩 主要措施: 1学习 Linux 系统编程的相关知识,以及 v4l2 编程的方法 2学习流媒体处理的相关知识 3与老师和同学交流、探讨,接受其指导和建议,形成自己的观点和思路。 主要参考资料: 1凌进.网络视频监控技术的应用和发展D北京:北京邮电大学20076,7:38. 2倪继利Linux 内核分析及编程M北京:电子工业出版社,20061,4:315. 3戴丽基于 Video4Linux 的 USB 摄像头图像采集实现J合肥工业大学2006,2:31. 4刘斌基于嵌入式系统的视频采集模块的设计D西安电子科技大学,2006,53:38. 5许海燕,付炎.嵌入式系统技术与应用M .机械工业出版社,2002. 6邹思轶.嵌入式 Linux 设计与应用M .清华大学出版社,2002. 7刘富强.数字视频监控系统开发及应用M .北京:机械工业出版社,2003. 8王英杰,陈祥献,耿晨歌.嵌入式网络化多媒体视频监控系统的设计与实现J 9萨默菲尔德(英),布兰切特(加)C.GUI.QT.4 编程(第二版) 电子书 10Linux 窗口程序设计-QT4 精彩实例分析-PTF 电子书 指导教师意见: 指导教师签名: 教研室意见: 签 名: 年 月 日 D 开 题 报 告 会 纪 要 时间 2013.12.21地点XXXX 姓 名职务(职称)姓 名职务(职称)姓 名职务(职称) XXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX 与 会 人 员 会议记录摘要: 1XXXX老师问:设计的亮点是什么? 答:本次设计采用的是 Linux 操作系统,由于我们所学的专业中从没接触过 Linux 操作系统, 所以本次设计具有一定的挑战性。采用了模块化的设计方式,同时采用了 B/S 架构和 C/S 架构,具 有较强的可扩展性。 2XXXX老师问:什么是 B/S 架构,什么是 C/S 架构? 答:B/S 架构即浏览器/服务器模式,而 C/S 架构则是大家熟知的客户机和服务器结构。 3XXXX老师问:视频数据的采集是如何实现的? 答:本次设计全部在 Linux 操作系统下完成,Linux 给用户提供了一套视频开发的接口(V4L2), 并提供了 API 开发文档。通过调用 V4L2 的接口函数就可以采集到视频数据。 会议主持人: 记 录 人: 年 月 日 指导小组意见 负责人签名: 年 月 日 系部 意 见 负责人签名: 年月日 注:此表由学生本人填写,一式三份,一份留系里存档,指导老师和本人各保存一份 E 湖南科技学院毕业论文(设计)中期检查表 毕业论文(设计) 题 目 基于 Linux、QT 的视频监控系统的设计与实现 学生姓名XXXX学 号XXXX 系 别XXXX专 业XXXX 指导教师XXXX检查日期XXXX 指导教师检查情况记载及修改意见: 查看毕业设计是否已经完成,以及是否开始撰写论文初稿。 记录毕业设计完成情况: 1. 毕业设计已经初步完成,程序中还有一些 bug 需要进行调试修改。 2. 某些功能还不够齐全,需要进一步完善。 3. 采集到的视频不够清晰,可能是摄像头的分辨率问题或者压缩编码时出 现的问题,如果是压缩编码时的原因,需要调试程序代码。 4. 经过对该系统性能的测试,发现编码时消耗 cpu 资源比较高,需要进一 步完善优化程序。 5. 经过对该系统的功能测试,发现无法实现多个客户端同时监控。 6. 指导论文该如何撰写。 签名: 注:此表用于指导教师在学生毕业论文(设计)初稿完成后对学生执行任务书情况进行中期检查时用,由指导教师填写。 F 湖南科技学院毕业设计(论文)指导过程记录表湖南科技学院毕业设计(论文)指导过程记录表 毕业论文(设计)题目基于 Linux、QT 的视频监控系统的设计与实现 学生姓名XXXX学号XXXX专业班级XXXX 指导教师XXXX职称XXXX 系(教研室) XXXX 指导内容 记录(一) 熟悉 V4L2 编程技术,以及相应的接口函数。 学 生 签 名: 2014 年 3 月 20 日 指导教师签名: 2014 年 3 月 20 日 指导内容 记录(二) 熟悉 huffman 编码的基本原理,以及如何实现图像的压缩编码。 学 生 签 名: 2014 年 3 月 25 日 指导教师签名: 2014 年 3 月 25 日 指导内容 记录(三) 如何利用 v4l2 编程操作 USB 摄像头,以及从摄像头获取图片到本地。 学 生 签 名: 2014 年 3 月 28 日 指导教师签名: 2014 年 3 月 28 日 指导过程记录 指导内容 记录(四) Linux 操作系统下编程的熟悉,以及在 Linux 下能够成功采集到视频流。 学 生 签 名: 2014 年 4 月 2 日 指导教师签名: 2014 年 4 月 2 日 G 指导内容 记录(五) 将在 Linux 环境下采集到的视频数据,利用 huffman 进行压缩编码。 学 生 签 名: 2014 年 4 月 5 日 指导教师签名: 2014 年 4 月 5 日 指导内容 记录(六) 熟悉 Linux 环境下网络编程技术,并成功搭建服务器。 学 生 签 名: 2014 年 4 月 6 日 指导教师签名: 2014 年 4 月 6 日 指导内容 记录(七) 利用 QT 编写客户端程序,并通过 socket 网络获取视频数据。 学 生 签 名: 2014 年 4 月 8 日 指导教师签名: 2014 年 4 月 8 日 指导过程记录 指导内容 记录(八) 利用 QT 编程技术,将获取到的视频数据渲染出来。 学 生 签 名: 2014 年 4 月 10 日 指导教师签名: 2014 年 4 月 10 日 答辩小组组长 意见 (对情况是否属实做出意见) 组长(签名): 201 年 月 日 注:本表与毕业论文一起装订存档。 H 湖南科技学院本科毕业论文(设计)评审表湖南科技学院本科毕业论文(设计)评审表 论文题目基于 Linux、QT 的视频监控系统的设计与实现 作者姓名XXXX所属系、专业、年级XXXX系 XXXX专业 XXXX年级 指导教师 姓名、职称 XXXX 字 数13000定稿日期2014.5.8 中 文 摘 要 随着社会的网络技术的不断更新,计算机多媒体应用技术及网络技术方 面的发展之迅速是有目共睹的,在银行,商场监控,城市交通管理,酒店等 安全保卫方面,视频监控系统的市场需求量大幅度上升,市场上出现了多种 图像采集和传输的产品,视频监控系统的发展趋势必然是数字化,网络化, 即采用嵌入式网络摄像机,利用嵌入式监控设备体积小巧,性能稳定,通讯 便利等特点。 论文中主要介绍了整个系统的开发流程,运用模块化分析设计的方法, 采用各个模块程序流程图对整个系统的设计以及实现进行详细的说明,全文 共分为绪论、系统的总体设计、各模块的具体功能实现、视频监控系统的测 试以及结论这五个部分。利用 v4l2进行数据采集,基于 TCP编程和多线程编程 对数据进行处理, QT技术来实现客户端程序。 关键词 (3-5 个) Linux,QT 技术,v4l2 编程,http 协议 英 文 摘 要 Along with the network technology unceasing renewal, computer multimedia technology and network technologys rapid development is be obvious to people, in the bank, market monitoring, city traffic management, hotel security, video surveillance system is greatly increased market demand, the emergence of a variety of image acquisition and transmission products on the market, development trend of video surveillance system is digital, networked, which uses embedded network camera, using the embedded monitoring device has the advantages of small volume, stable performance, convenient communication, etc The paper mainly introduces the system development process, the use of the design method of modularization analysis, the program flow chart of each module of the system design and implementation are described in detail, the full text is divided into introduction, the overall design of the system, each module of the specific function realization of video monitoring system, and the conclusion of this test the five part. Data collection by v4l2, TCP and multi thread programming for data processing based on QT technology to realize the client program. 关键词 (3-5 个) Linux, QT Technology, v4l2 Programming,http Protocol I 指指导导教教师评师评定成定成绩绩 评审 基元 评审要素评审内涵满分 指导教师 实评分 目的明确 符合要求 选题符合专业培养目标,体现学科、专业特点和教学计 划的基本要求,达到毕业论文(设计)综合训练的目的。 10 理论意义或 实际价值 符合本学科的理论发展,有一定的学术意义;对经济建设 和社会发展的应用性研究中的某个理论或方法问题进行 研究,具有一定的实际价值。 10 选题 质量 25% 选题恰当题目规模适当,难易度适中;有一定的科学性。5 查阅文献 资料能力 能独立查阅相关文献资料,归纳总结本论文所涉及的 有关研究状况及成果。 10 综合运用 知识能力 能运用所学专业知识阐述问题;能对查阅的资料进行整 理和运用;能对其科学论点进行论证。 10 研究方案的 设计能力 整体思路清晰;研究方案合理可行。5 研究方法和手 段的运用能力 能运用本学科常规研究方法及相关研究手段(如计算机、 实验仪器设备等)进行实验、实践并加工处理、总结信息。10 能力 水平 40% 外文应用 能力 能阅读、翻译一定量的本专业外文资料、外文摘要和外文 参考书目(特殊专业除外)体现一定的外语水平。 5 文题相符较好地完成论文选题的目的要求。5 写作水平论点鲜明;论据充分;条理清晰;语言流畅。15 写作规范 符合学术论文的基本要求。用语、格式、图表、数据、量和单 位、各种资料引用规范化、符合标准。 10 论文 质量 35% 论文篇幅10000 字左右。5 实评总分 成绩等级 指导教师评审意见: 指导教师签名: 说明:评定成绩分为优秀、良好、中等、及格、不及格五个等级,实评总分 90100 分记为优秀, 8089 分记为良好,7079 分记为中等,6069 分记为及格,60 分以下记为不及格。 J 评阅评阅教教师评师评定成定成绩绩 评审 基元 评审要素评审内涵满分 评阅教师 实评分 目的明确 符合要求 选题符合专业培养目标,体现学科、专业特点和教学计 划的基本要求,达到毕业论文(设计)综合训练的目的。 10 理论意义或 实际价值 符合本学科的理论发展,有一定的学术意义;对经济建设 和社会发展的应用性研究中的某个理论或方法问题进行 研究,具有一定的实际价值。 10 选题 质量 25% 选题恰当题目规模适当,难易度适中;有一定的科学性。5 查阅文献 资料能力 能独立查阅相关文献资料,归纳总结本论文所涉及的 有关研究状况及成果。 10 综合运用 知识能力 能运用所学专业知识阐述问题;能对查阅的资料进行整 理和运用;能对其科学论点进行论证。 10 研究方案的 设计能力 整体思路清晰;研究方案合理可行。5 研究方法和 手段的运用 能力 能运用本学科常规研究方法及相关研究手段(如计算机、 实验仪器设备等)进行实验、实践并加工处理、总结信息。10 能力 水平 40% 外文应用 能力 能阅读、翻译一定量的本专业外文资料、外文摘要和外文 参考书目(特殊专业除外)体现一定的外语水平。 5 文题相符较好地完成论文选题的目的要求。5 写作水平论点鲜明;论据充分;条理清晰;语言流畅。15 写作规范 符合学术论文的基本要求。用语、格式、图表、数据、量和单 位、各种资料引用规范化、符合标准。 10 论文 质量 35% 论文篇幅10000 字左右。5 实评总分 成绩等级 评阅教师评审意见: 评阅教师签名: 说明:评定成绩分为优秀、良好、中等、及格、不及格五个等级,实评总分 90100 分记为优秀, 8089 分记为良好,7079 分记为中等,6069 分记为及格,60 分以下记为不及格。 K 湖南科技学院本科毕业论文(设计)答辩记录表湖南科技学院本科毕业论文(设计)答辩记录表 论文题目基于 Linux、QT 的视频监控系统的设计与实现 作者姓名XXXX所属系、专业、年级XXXX系系 XXXX专业 2010 年级 指导教师 姓名、职称 XXXX 答 辩 会 纪 要 时间2014 年 5 月 18 日地点XXXX 姓 名职务(职称)姓 名职务(职称)姓 名职务(职称) XXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXX 答 辩 小 组 成 员 答辩中提出的主要问题及回答的简要情况记录: 1.XXX 老师问:为什么要进行图像的压缩,图像的压缩是如何实现的? 答:从 USB 采集到的视频数据是无法直接渲染出来的,所以要将采集到的视频数据进行压缩编 码,把图片转换成 jpeg 或者 jpg 格式,这样就能将视频图像直接渲染出来。图像的压缩编码是采 用 huffman 编码实现的,由于 huffman 编码开源,使用方便。 2.XXX 老师问:整个系统的设计采用的是什么架构,如何实现的? 答:整个系统设计的巧妙之处就在于架构,采用的是 C/S 架构与 B/S 架构并存的设计理念,这 将提升了用户体验,使用户在使用是更加灵活,更加方便。具体的实现方法是在服务端数据处理模 块中将数据根据 http 协议进行的封装,浏览器能直接访问,客户端也可以将视频数据提取出来。 3.XXX 老师问:视频的渲染是如何实现的? 答:视频的渲染是整个系统中相当重要的一部分,通过 QT 中的安全机制信号(signals)和 槽(slots)以及 QT 控件的绘图事件来完成视频的渲染过程。 会议主持人: 记 录 人: 年 月 日 L 答 辩 小 组 意 见 评语: 评定等级: 负责人(签名): 年 月 日 系 学 位 委 员 会 意 见 评语: 论文(设计)最终评定等级: 负责人(签名): 系部(公章) 年月 日 校 学 位 委 员 会 意 见 评语: 评定等级: 负责人(签名): 年月 日 目 录 绪论 1 1 基于 Linux、QT 的视频监控系统概述4 1.1 视频监控系统的组成 4 1.2 开发环境简介 4 1.2.1 Linux 环境简介.4 1.2.2 QT 技术简介.4 1.2.3 V4L2 编程技术简介.5 2 系统总体设计概述 7 2.1 分析系统需求 7 2.2 系统的软件结构及整体框架 7 2.2.1 整体结构框图 7 2.2.2 模块的功能分析 8 3 系统中各模块功能的具体实现 9 3.1 服务器:数据采集部分 9 3.1.1 模块功能描述 9 3.1.2 技术概要 9 3.1.3 逻辑概要及流程图 10 3.2 服务器:数据处理 17 3.2.1 模块功能描述 17 3.2.2 技术概要 17 3.2.3 逻辑概要及程序流程图 17 3.3 客户端:数据获取 19 3.3.1 模块功能描述 19 3.3.2 技术概要 19 3.3.3 逻辑概要及流程图 19 3.4 客户端:QT 视频渲染21 3.4.1 模块功能描述 21 3.4.2 技术概要 22 3.4.3 逻辑概要及流程图 22 4 视频监控系统测试 23 4.1 系统测试目标 23 I 4.2 系统测试过程 23 4.3 系统测试结果 25 结论 26 参考文献 27 致 谢 28 II 插图索引 图 1 视频监控系统结构图.7 图 2 服务器(server)端视频数据采集流程.10 图 3 打开 USB 摄像头设备流程图.11 图 4 查询视频设备信息流程图.12 图 5 设置视频采集方式流程图.13 图 6 申请缓冲区流程图.14 图 7 缓冲区设置流程图.15 图 8 视频数据处理流程图.16 图 9 服务器端数据处理流程图.18 图 10 服务器端数据帧封装结构图.19 图 11 服务器与客户端 TCP 网络编程流程图20 图 12 客户端的数据分割流程图.21 图 13 客户端视频渲染模块流程图.22 图 14 启动系统效果图(左:客户端,右:服务端).24 图 15 客户端准备连接时效果图(左:客户端,右:服务端).24 图 16 系统网络连接后效果图(左:客户端,右:服务端).25 III 基于 Linux、QT 的视频监控系统的设计与实现 摘 要 随着社会的网络技术的不断更新,计算机多媒体应用技术及网络技术方面的发 展之迅速是有目共睹的,在银行,商场监控,城市交通管理,酒店等安全保卫方面, 视频监控系统的市场需求量大幅度上升,市场上出现了多种图像采集和传输的产品, 视频监控系统的发展趋势必然是数字化,网络化,即采用嵌入式网络摄像机,利用 嵌入式监控设备体积小巧,性能稳定,通讯便利等特点。 在我国现阶段,流媒体技术以及嵌入式网络视频监控技术的研发还不够成熟, 大多是针对那些大,中型工程所开发的视频监控系统。但是对于小型的场所来说, 成本太高,视频监控系统的功能复杂。因此我们可以设计一种低成本的,简便的, 新型的视频监控系统针对上述用户群。这是一项非常有意义的工程。 视频监控系统的设计论文主要介绍了整个系统的开发流程,运用模块化分析设 计的方法,采用各个模块程序流程图对整个系统的设计以及实现进行详细的说明, 全文共分为绪论、系统的总体设计、各模块的具体功能实现、视频监控系统的测试 以及结论这五个部分。利用 v4l2 进行数据采集,基于 TCP 编程和多线程编程对数 据进行处理,QT 技术来实现客户端程序。视频数据的发送是采用 HTTP 协议, Linux 系统下 C 语言编程实现的。 【关键词】:Linux QT 技术 v4l2 编程 http 协议 IV Design and implementation of video monitoring system based on Linux and QT Abstract Along with the social network technology unceasing renewal, computer multimedia application technology and network technology aspects of the rapid development of is be obvious to all.in banks, shopping malls monitoring, urban traffic management, security and other aspects of the hotel. Market demand for video surveillance systemincreased significantly. Appeared on the market a variety of image acquisition and transmission products, the development trend of video surveillance system must be digital, network, and the use of embedded network camera. With the embedded monitoring equipment compact, stable performance, communication facilities and so on. At the present stage of our country, research and development of streaming media technology and the embedded network video monitoring technology is not mature enough, mostly in those big, video monitoring system and medium engineering development. But for a small place, the cost is too high, the video monitoring system with complex functions. Therefore, we according to the user group, can design a simple, low cost, video monitoring system model. This is a very meaningful project. This paper mainly introduces the system development process, the use of the design method of modularization analysis, the program flow chart of each module of the system design and implementation are described in detail, the full text is divided into introduction, the overall design of the system, each module of the specific function realization of video monitoring system, and the conclusion of this test the five part. Data collection by v4l2, TCP and multi thread programming for data processing based on QT technology to realize the client program. Sending video data is using HTTP protocol, the Linux system under the C programming language. 【Key words】 Linux QT Technology v4l2 Programming http Protocol 0 绪论 Linux 是一个基于 Unix 的操作系统,它也是 Unix 家族的一元,与 Unix 不 同的是,它可以运行在不同的硬件平台上,它于 1991 年诞生于芬兰的一个大学 生 Linus Torvalds 手中,不过当时还只是一个雏形,为了不让自己的这个羽翼 未满的操作系统夭折,Linus 将自己的作品 Linux 通过 Internet 发布,从此大量 的一批知名的、不知名的编程人员以及电脑黑客加入到 Linux 系统的开发过程 中来,Linux 就这样的逐渐成长起来了1。到目前为止,Linux 的内核已经发展 到了 3.14,并在次基础上发展了数十种发行版,其中有经过长期发展洗礼的 Redhat(Fedora),也有发展迅猛使用方便的 Ubuntu。 在流媒体技术的发展中,视频技术的发展越来越迅速,大量应用于安防与 教育事业,比如在远程视频教育、在线远程视频会议、医疗、各种场所的视频 监控以及危险区域的探测等方面。Linux 操作系统在发展的过程具备了很好的 网络性能。Linux 系统下提供了非常丰富的开源软件和视频支持,支持各种硬 件平台,因此 Linux 平台成为了视频采集的最佳平台。Linux 系统上的软件开发 具有高可靠性、低成本、高度自动化、高可配置性、及低耗费等一些优点,同 时能够很好的完成多任务和实时性的设计需求。 我国资深嵌入式系统专家沈绪榜院士曾预言:“未来十年将会产生针 头大小,具有超过一亿次运算能力的嵌入式智能芯片”。这些将为我们的开发 提供了相当大的创造空间。中国应当注意发展这一智力密集型产业”。 综上所述,嵌入式 Linux 操作系统在广泛和深入的应用于各个领域,应用 的技术也越来越复杂。针对基于网络传输的视频监控系统的实际需求与应用, 结合视频的图像采集技术与编码技术,嵌入式 Linux 操作系统和网络编程技术 等多方面的新兴技术,设计的一套 Linux 网络视频监控系统,用来进行视频数 据的采集、视频数据的压缩编码与解码以及视频的网络传输,该系统基于 Linux 操作系统进行开发的,从 USB 摄像头捕捉视频数据,QT 实现客户端和 服务器端,即可查看远程视频影像。 论文的目的及意义: 视频监控系统的设计主要说明视频监控系统的详细设计与实现。介绍了系 统中各个模块的设计与模块功能的实现以及应用的相关技术。在论文中,我将 会对每一个模块的设计以及实现方法给出简单的文字说明以及设计的流程图。 我写这篇论文的主要是学习熟悉基于 TCP/IP 网络的远程视频监控系统的基 本知识和相关的多媒体开发技术。随着 4G 通讯时代的到来,我们更可以将视 频监控客户端发展到移动终端,这将使我们更加方便。 1 项目背景及未来发展应用方向: 纵观视频监控的研究进展,从闭路电视系统构建的模拟系统、经历了数字 信号控制的模拟视频监控系统、过渡到数字硬盘录像设备为核心的视频监控系 统和当代的数字网络视频监控系统这几大重要阶段。 数字网络视频监控系统与其它监控系统的优点: a、布控区域广阔 数字网络视频监控系统是可以超越地域的限制的,可以延伸整个需要布控 区域,这是因为它将网络视频信号采集终端直接连入网络,并且能够解除信号 的衰减和缆线长度的局限性,而且网络是不受距离长短的影响。 b、系统具有几乎无限的无缝扩展能力 需要增加设备时只要将 IP 地址进行扩充操作就行了,因为所有的 IP 地址 都在系统中进行了标识。 c、可组成非常复杂的监控网络 监控系统是以基于网络视频信号采集终端为核心,在组网方式上与基于 PC 平台的监控和传统的模拟监控方式有了质的飞跃,视频信号采集终端输出已完 成了从模拟到数字的转换并压缩,在网络上传输时采用统一的协议,能够实现 跨路由器、跨网关等的远程视频传输。 d、性能稳定可靠,无需专人管理 视频监控系统中采集视频信号的终端应用了嵌入式 Linux 技术,主要采用 嵌入式多任务实时操作系统,又能够将网络功能和视频压缩功能集中到一个极 小体积的设备内,同时可以直接连入广域网络或者局域网络,即插即看,系统 的稳定性、可靠性、实时性得到了极大的提升,能够运用于无人值守的环境中。 e、我们可以从视频监控中心同时观看多个 USB 网络摄像头视频,但是对网 络带宽是有一定的要求。 目前视频监控系统应用主要有以下应用领域: 食品监督系统主要是对食品的原料,和卫生的随时检查等; 教育系统、电力系统、部队系统、石化系统等的视频监控与安全检测等; 在银行系统、铁路系统、医疗系统等的视频监控与安全检测; 税务系统主要是报税服务大厅监控; 钢铁系统主要是安全生产管理监控系统; 未来应用领域: 在不久的将来视频监控会出现在农村及每个实体经济的商人手中。 2 对农村和农民而言:农产品是主要经济来源,农产品的收成直接决定着农 民的收入,主要监控粮食的生成,同时还可以做一些其他温度和湿度的感光性 能,增加农产品的收成同时帮助农民致富。 未来的实体经济来说,视频监控也是很重要的。随着科技的发展,工厂模 式已经走上了现代化之路,那管理上也应该得以更近。用视频管理,用视频收 集资料,这样不仅提高了处理速度,同时也可以收集到更多的数据参数以供以 后的自身发展做参考。 视频监控的智能化是趋势,也是近年的热点,大环境给了我们视频智能化 的大好空间,那就得好好利用。 3 1 基于 Linux、QT 的视频监控系统概述 该系统的开发是在 Linux 操作系统上进行,采用了 QT 编程技术、Socket 网络编程技术、TCP/IP 网络协议以及 Unix 系统高级编程技术而实现的。 1.1 视频监控系统的组成 视频监控系统大致可分为三大模块:视频数据信号的采集部分、网络传输 部分以及远程客户端视频的渲染部分。 1.2 开发环境简介 1.2.1 Linux 环境简介 该系统是在 Linux 环境上开发的,Linux 是 Unix 这个大家族中的一员。 Linux 操作系统是一个基于 POSIX 和 Unix 的多 CPU、支持多线程、多任务和 的多用户操作系统;能够运行主要的应用程序、网络协议和 Unix 工具软件;它 同时支持 32 位硬件和 64 位硬件平台;Linux 继承了 Unix 的以网络为核心的设 计思想,是一个性能稳定的多用户、实时的网络操作系统2。 我这次使用的 Linux 的桌面系统 Ubuntu12.04 32 位操作系统。Linux 系统可 以运行在不同的硬件平台,这个对于我们这些软件开发者来说无疑是件非常好 的事,可以进行各种平台的系统移植。最典型的有安卓系统,其内核也是 Linux 系统内核。在 Linux 环境开发视频监控系统的好处就在于以后能够很好的 移植到移动终端。 1.2.2 QT 技术简介 QT 是 Nokia 公司开发的一个集成开发环境,它封装有自己的一套库,以至 于能实现跨平台编程。QT 是一个非常好的 C+图形用户界面 UI 设计应用程序 框架。它给应用程序开发者提供了一套功能齐全的进行艺术级的图形用户界面 程序设计所需的功能3。Qt 很容易扩展,并且 允许真正地组件编程。基本上 Qt 和 X Window 上的 GTK,Openwin,Motif 等图形界面库和 Windows 平台上 的 ATL,CL,OWL,VMFC 是非常类似的4。 QT 模块化程度非常高是因为它有非常好的封装机制,而且具有非常好的可 重用性,这将非常方便了应用程序开发用户进行软件开发。QT 提供了一种安全 类型来替代 callback,称为信号和槽(signals/slots)。这些都使得不同模块之间 的协同工作变得非常简单。 QT 提供了基于模版的 date/timefile、directory management、serialization、I/O device、collections、类,而且还包括了多达 250 个以上的 C+类。甚至还包括了正则表达式的处理功能。支持 2D/3D/图形渲染, 支持 OpenGL。而且有大量的开发文档。 4 1.2.3 V4L2 编程技术简介 V4L2 编程主要是针对于 uvc 免驱 USB 设备的设计的一个软件编程框架, 主要是用于采集 USB 摄像头的视频信息等。V4L2 有以下编程模式: a. 设置采集方式: 打开视频设备后,可以设置该视频设备的属性,例如放缩、裁剪等。这一 步是可选的。在 Linux 编程中实现对设备的 I/O 通道进行统一管理一般通过调 用系统的 ioctl()函数。 extern int ioctl(int _fd, unsigned long int _request, ) _THROW; _fd:USB 视频设备的设备 ID 号,例如调用了系统 open()函数来打开 视频通道后返回的 videoFd _request:具体的命令标识符。 b. 一般操作流程 1) 打开设备文件 int fd = open(“/dev/video0”, O_RDWR); 2) 查询并获取到 USB 视频设备的设备属性,可以查看到该设备具有的一 些功能,例如 USB 视频设备是否具有视频输入输出的功能,或者音频输入输出 的功能等。 VIDIOC_QUERYCAP,struct v4l2_capability v4l2_std_id std; do ret= ioctl(fd, VIDIOC_QUERYSTD, while (ret = -1 switch(std) case V4L2_STD_NTSC: / case V4L2_STD_PAL: / 3) 选择 USB 视频设备的视频输入,有些视频设备可以有多个视频输入。 VIDOC_S_INPUT,struct v4l2_input 4) 设置视频采集的的视频帧格式和视频制式,视频制式包括帧的格式, NTSC,PAL,包括宽度(width)和高度(height)等。 5 VIDIOC_S_STD,VIDIOC_S_FMT,struct v4l2_std_id,struct v4l2_format 5) 向驱动申请缓冲,一般不超过 5 个。 struct v4l2_requestbuffers 6) 申请物理内存 从内核申请到帧缓冲空间,并将其映射到用户空间去,然后可以直接对 采集到的视频数据帧进行操作了,不必再去进行复制缓冲区内容了。 将从内核中申请下来的缓存进行入队列操作,存放采集到的视频帧数据。 VIDIOC_QBUF,struct v4l2_buffer 7) 开始视频的采集 enum v4l2_buf_type type type = V4L2_BUF_TYPE_VIDEO_CAPTURE; if (ioctl (fd, VIDIOC_STREAMON, / return -1; 8) 进行出队列操作从而获取已采集数据到的视频帧缓冲数据,取得原始采 集数据。VIDIOC_DQBUF 将缓冲区重新入队列尾,这样可以循环采集 VIDIOC_QBUF 9) 停止视频采集。 VIDIOC_STREAMOFF 10) 关闭视频设备。 close(fd) 6 2 系统总体设计概述 2.1 分析系统需求 视频监控系统主要由服务端程序和客户端程序构成。服务器(server)端是 基于 Linux 系统环境下的网络服务器程序。服务端中视频数据的采集部分利用 v4l2(video for Linux II)对网络摄像头(USB 摄像头)进行控制和访问并且获 取由摄像头捕获到的视频数据,然后由 huffman 编码进行压缩,然后再通过网 络服务将获取到的视频数据进行封装成 http 数据帧并利用 http 协议发送到客户 端。 由于视频监控系统的服务器(server)端视频数据是通过 http 协议发送的, 所以此系统客户端没有平台限制,只要支持 HTTP1.0 以上的平台就可以访问系 统的服务。而且,系统的服务还可以直接通过 web 浏览器访问(对 firefox、Google Chrome 浏览器支持
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年建筑工程技术中级面试题及解析
- 2025年物联网高级职位面试技巧与模拟题
- 世界地图教学课件
- 2025年酒店管理实习生求职面试指南与模拟题集
- 电击伤急诊科处理
- 电催员基础知识培训课件
- 2025年初入金融行业人员面试模拟题及答案解析
- 血透护理教案
- 护理专业毕业论文范文
- 门脉高压病人护理
- 2025-2030中国浮动生产存储和卸载(FPSO)行业市场现状供需分析及投资评估规划分析研究报告
- 教师选聘笔试题目及答案
- 装修公司工长管理制度
- 2023中国铁建投资集团有限公司公开招聘笔试参考题库附带答案详解
- 云南省怒江傈僳族自治州本年度(2025)小学一年级数学部编版质量测试(下学期)试卷及答案
- 监理文件档案资料整编及管理细则
- 小学二年级家庭教育指导
- CJJ1-2025城镇道路工程施工与质量验收规范
- 室内装饰装修安全技术交底模板
- 班会课件:逆风飞翔破茧成蝶-从《哪吒之魔童闹海》看青春期的成长与责任
- 2025年“雄鹰杯”小动物医师技能大赛备考试题库(含答案)
评论
0/150
提交评论