首页> 中文学位 >基于UVC相机的跨平台SDK开发
【6h】

基于UVC相机的跨平台SDK开发

代理获取

目录

声明

致谢

摘要

1 绪论

1.1 课题研究背景

1.2 课题研究现状

1.2.1 工业相机发展现状

1.2.2 工业相机软件发展现状

1.3 课题研究目标

1.4 本文内容结构

2 SDK设计模式

2.1 设计模式简介

2.2 工厂方法模式介绍

2.2.1 简单工厂模式

2.2.2 工厂方法模式

2.3 SDK开发框架

3 SDK接口设计

3.1 Windows平台

3.1.1 DirectShow简介

3.1.2 组件对象模型(COM)

3.1.3 Filter原理

3.1.4 视频采集流程

3.1.5 相机参数设置

3.2 Mac OS X平台

3.2.1 AVFoundation简介

3.2.2 PIMPL实现C++和Objective-C混编

3.2.3 视频采集流程

3.2.4 相机参数设置

3.3 Linux平台

3.3.1 V4L2简介

3.3.2 视频采集流程

3.3.3 相机参数设置

4 UVC相机跨平台应用软件界面设计

4.1 Qt简介

4.1.1 Qt工具集

4.1.2 元对象系统

4.1.3 信号和槽

4.2 应用软件框架设计

4.3 相机测试界面编写

5 相机软件在SCMOS和XCAM系列相机中的应用

5.1 SCMOS系列相机

5.2 XCAM系列相机

6 总结与展望

参考文献

作者简历

展开▼

摘要

工业相机主要用于对生产线上的产品进行图像采集和数据传输,是机器视觉系统的基础。工业相机软件通过向用户提供一个良好的操作界面,除实现对工业相机进行基本的参数设置、捕获静态图片或者录制视频等操作以外,还可以添加更多的图像处理操作来对工业现场进行分析和检测等。
  针对每个操作系统下均有各自对应不同的流媒体处理开发框架,跨平台相机软件开发工作变得相当繁琐,为了更好地方便软件开发人员进行相机软件的跨平台开发,提供一套统一接口的相机SDK显得尤为重要。
  本文以实验室自主研发基于UVC协议的SCMOS系列相机和双输出(HDMI、USB)XCAM系列相机为硬件平台,利用工厂设计模式,C++作为开发语言,编写了针对Windows/Mac OS X/Linux三大平台下的跨平台相机SDK。同时,以Qt作为开发环境,编写相应的相机控制软件对研发的SDK在不同平台下进行测试。应用软件开发人员只需要调用API,以“一次编写,随处编译”的方式即可实现在三大平台下对相机的操作,极大提高了软件开发效率。SDK主要功能如下:
  视频采集模块:1)相机热插拔;2)相机型号列表获取;3)相机打开/关闭、实时视频流显示。
  相机参数设置模块:1)捕获与分辨率:捕获图片或者录制视频、预览/捕获分辨率切换;2)曝光与增益:自动/手动曝光模式切换、目标调整、曝光时间调整、增益调整;3)白平衡:自动/手动白平衡模式切换、色温调整、R/G/B增益调整;4)颜色调整:色度、饱和度、亮度、对比度、伽马;5)光源频率:交流(50Hz)/交流(60Hz)/直流(DC)模式切换。
  最后对相机软件整体的框架和各个模块进行了详细说明,并编写相机每个模块的跨平台控制界面,并成功将SDK用于SCMOS与XCAM系列相机的跨平台软件应用,圆满实现了项目的设计目标。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号