




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.视频监控系统程序设计书1 .引言1.1制作目的本文主要说明视频监控系统的详细设计和实现。 本文详细介绍了系统中各模块的设计和实现的细节和重要技术的应用。 其中,每个模块都有相应的文本说明和相关的设计流程图。1.2项目背景本项目是本实验课程介绍的课程的综合应用。本项目主要针对unix/linux系统编程和基于c语言的GUI编程-QT进行培训。 目的是加强学生对unix/linux系统编程的理解和应用,提高学生的实践能力、编程能力、问题分析和解决能力。 同时,通过本系统中客户端的设计和实现,使学生理解和熟悉面向对象编程的思想和一般方法。1.3定义本系统=视频监视系统正文=视频监视系统设计书2整体设计2.1要求概要本系统是基于C/S架构的网络视频监视系统,主要由负责图形收集和传输的服务器端和负责监视(图像显示)的客户端端构成。本系统的Server侧是基于Linux系统的网络服务系统软件,主要由数据收集和网络服务两部分组成。 数据收集部通过v4l2(video for linux II )控制访问web相机,获取通过相机捕获到的视频数据,将该视频数据打包至web服务部中的http帧中,并通过http协议发送给客户端。由于本系统的服务器侧的数据发送基于http协议,所以本系统的客户端对平台没有限制,只要支持http1.0以上的平台,就能够访问本系统的服务。 另外,本系统服务可以通过web浏览器直接访问(最适合firefox浏览器的支持)。 为了提高传输效率,还需要开发客户端软件,客户端没有平台要求,因此可以在Windows、Linux、Android等平台上实现。 本稿的主将以linux为例,用Qt来实现简单的客户端软件。2.2软件配置网络服务器视频服务。dataincapture装置配置get data移动数据创建服务器wait connect数据传输客户端(客户端)display公司get data创建套接字连接服务器get data初始图形用户界面load视频数据更新构件PS PS/PS图2.2.1视频监视系统的结构图3 .程序的说明3.1服务器:30数据收集3.1.1功能构成设备,从设备获取图像数据。根据设备信息在v4l2(video for linux II )中通过ioctl配置USB摄像机,打开设备的捕获功能,开始数据的收集和写入,收集结束后关闭设备功能,最后关闭设备。3.1.2技术概要本模块负责对设备的大量I/O操作,主要通过video for linux II(v4l2 )框架进行设备的设置和控制。 其中包含一些特殊结构属性的分配和一些特殊控制标记的实际意义。 需要详细调查v4l2提供的API。3.1.3程序逻辑本节主要以流程图形式介绍服务器端数据收集模块的主要程序逻辑设计。start打开(“设备路径”,O_RDONLY )ioctl (软盘,VIDIOC_QUERYCAP,v4l2_capability )ioctl(fd,VIDIOC_S_FMT,v4l2_format) .ioctl (软盘,VIDIOC_REQBUFS,v4l2_requestbuffers )ioctl (软盘,VIDIOC_QUERYBUF,v4l2_buffer )data处理退出?结束yn开始。数据处理设置高速缓存属性请求高速缓存。制定采集方式取得机器信息打开设备文件住手吗?开始。是的,是的。否图3.1.1服务器侧数据收集流程图图3.1.1主要说明了服务器端数据采集部的主要流程和编程顺序。 对各步骤进行详细说明1 .打开设备电源:打开视频设备(在此为USB相机)。 利用linux系统提供的接口函数open,进行打开设备的操作。 图3.1.2对该过程进行了详细说明。2 .查询设备信息(或获得设备信息)。start软盘=-1fd=open ()fd0?ny错误1查询关于装置驱动的信息和关于视频收集的参数,基于所获得的信息初步地确定装置的种类和要处理的数据的种类。 利用ioctl函数和v4l2所提供的v4l2_capbility和v4l2_format这两个结构,保存所获取的设备驱动信息和帧信息。 详细流程如图3.1.3所示。 诸如VIDIOC_G_FMT之类的属性的含义必须询问v4l2提供的API。图3.1.2打开设备的子图struct v4l2_capabilitycapstruct v4l2_formatfmtmemset(cap,0,sizeof(cap ) );memset(fmt,0,sizefo(fmt ) );ioctl (软盘,VIDIOC_QUERYCAP,cap )PS (软盘,VIDIOC_G_FMT,fmt )返回错误吗?n错误y1get info:cap .驱动程序cap.cardcap.bus_infocap .版本fmt.fmt.pix.pixel格式fmt.fmt.widthfmt.fmt.height2fmt.type=v4 L2 _ buf _ type _ video _ capturefmt.fmt.pix.field=v4 L2 _ field _ any图3.1.3设备信息的获取子图3 .设定收集方式设定视频设备(在此为USB相机)的导入方法。 例如,捕获图像的分辨率和帧捕获速度(每秒捕获的帧数)等选项的设置。 使用v4l2的v4l2_format和v4l2_streamparm两个结构和VIDIOC_S_PARM和VIDIOC_SFMT两个标签。 有关说明,请参见v4l2框架的API信息。 实现顺序请参照图3.1.4。2struct v4l2_formatfmtstruct v4l2_streamparmparmmemset(parm,0,sizeof(parm ) );memset(fmt,0,sizefo(fmt ) );ioctl (软盘,VIDIOC_S_PARM,parm )ioctl (软盘,VIDIOC_S_FMT,fmt )fmt.type=v4 L2 _ buf _ type _ video _ capturefmt.fmt.pix.field=v4 L2 _ field _ anyfmt.fmt.pix.width=WIDTHfmt.fmt.pix.htight=HEIGHTparm.type=v4 L2 _ buf _ type _ video _ captureparm.parm.capture.timeperframe.numerator=1parm.parm.capture.timeperframe.denominator=fps/本模块使用的宏定义#defineWIDTH320#defineHEIGTH240#defineFPS5返回错误吗?错误return3yn图3.1.4设置采集方式的子图4 .申请缓存为了存储设备收集的数据,向驱动器请求一些缓冲区(此处缓冲区由内核管理,因此需要请求)。 使用v4l2的v4l2_requestbuffer结构和VIDIOC_REQBUFS标志向设备请求缓冲区。 实现顺序请参照图3.1.4。3struct v4l2_requestbufferrbmemset(rb、0、sizeof(rb ) );ioctl (软盘,VIDIOC_REQBUFS,rb )rb.count=NB_BUFFERRb.type=v4 L2 _ buf _ type _ video _ capturerb.memory=V4L2_MEMORY_MMAP/本模块使用的宏定义/表示申请缓冲区的数量#defineenb_buffer5返回错误吗?错误return4yn图3.1.5申请缓存子图5 .设置高速
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年 长沙市北雅中学招聘教师考试试题附答案
- 中国活动扳手行业市场运营态势分析及投资前景预测报告
- 2025年中国关节内窥镜行业市场深度分析及投资策略咨询报告
- 中国低温粉碎机行业发展监测及投资战略规划研究报告
- 2023-2028年中国无机陶瓷行业发展监测及市场发展潜力预测报告
- 2025年中国无功功率补偿设备行业投资分析及发展战略咨询报告
- 中国游泳池自动水处理系统项目投资可行性研究报告
- 中国太阳能单晶硅棒行业发展监测及投资战略规划报告
- 2020-2025年中国现代农业产业园区行业投资研究分析及发展前景预测报告
- 中国半导体照明光源行业市场全景监测及投资策略研究报告
- GB/T 42001-2022高压输变电工程外绝缘放电电压海拔校正方法
- GB/T 41837-2022温泉服务温泉水质要求
- YY/T 1467-2016医用包扎敷料救护绷带
- GB/T 6495.3-1996光伏器件第3部分:地面用光伏器件的测量原理及标准光谱辐照度数据
- GB/T 17193-1997电气安装用超重荷型刚性钢导管
- 2023年九年级中考数学高频考点突破-圆的切线的证明【含答案】
- 2023年内江市市中区财政局系统事业单位招聘笔试题库及答案解析
- 国际贸易实务全部资料课件
- 带状疱疹医学课件
- 全国卷高考标准语文答题卡作文纸3栏800字版
- 事业单位招聘考试《工程建设管理专业知识》真题汇总及答案【含解析】
评论
0/150
提交评论