- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验十五 US摄像头实验
实验十五 USB摄像头实验
【实验目的】
1、掌握USB摄像头和V4L视频驱动的配置方法
2、了解OpenCV的移植过程及编程方法
3、掌握Qt编程技巧
【实验原理】
USB摄像头以其良好的性能和低廉的价格得到广泛应用。同时因其灵活、方便的特性,易于集成到嵌入式系统中现有的符合Video for Linux标准的驱动程序配合通用应用程序摄像头属于视频类设备。在目前的Linux核心中,视频部分的标准是Video for Linux(简称V4L)。这个标准其实定义了一套接口,内核、驱动、应用程序以这个接口为标准进行交流。目前的V4L涵盖了视、音频流捕捉及处理等内容,USB摄像头也属于它支持的范畴。内核配置检查Linux中是否已经添加了Video4Linux驱动和对USB摄像头驱动模块的支持Video4Linux支持为视频采集设备提供编程接口使内核中加入OV511接口芯片的USB数字摄像头的驱动支持。OpenCV(Intel? Open Source Computer Vision Library) 是Intel 公司面向应用程序开发者开发的计算机视觉库。相对于其它图像函数库,OpenCV是一种源码开放式的函数库,对非商业用途和商业用途都免费penCV源码的分析,发现只有highgui的ShowImage函数用到了GTK+2.0中窗体控件,该函数主要完成将图像显示在GTK窗体上。通过实验发现,注释掉检查GTK+2.0的语句后,只是在编程时不能使用ShowImage函数,对OpenCV的其它功能并没有受影响。(具体注释掉的内容参考光盘所提供的实验十五源码中的opencv-arm文件中的configure.patch文件内容)。
(2)、交叉编译
将光盘提供的opencv-arm压缩文件解压到工作目录中(或将源码opencv-0.9.7.tar.gz压缩文件进行解压,并修改configure文件),利用configure对系统进行配置,然后执行编译和安装命令。
[root@localhost opencv-arm]$./configure -–host=arm-linux
[root@ocalhost opencv-arm]$make
[root@ocalhost opencv-arm]$make install
执行make install命令后,OpenCV将编译好的的库文件保存在/usr/local/lib目录下,头文件被复制在/usr/local/include/opencv目录中。主要的库文件:libhighgui.so.0.9.7、libhighgui.la、libcxcore.so.0.9.7、libcxcore.la、libcvaux.so.0.9.7、libcvaux.la、libcv.so.0.9.7、libcv.la及相应的符号链接。
(3)、库文件的下载
将编译好的库文件下载到目标平台上/usr/qpe/lib目录中,并设置OpenCV所需的环境参数LD_LIBRARY_PATH=/usr/qpe/lib:$LD_LIBRARY_PATH。
(4)、基于OpenCV的视频采集
OpenCV提供了cvCaptureFromCAM函数用作初始化摄像头CvCapture* cvCaptureFromCAM( int index ),其中参数index为系统的USB摄像头的序号,如果只有一个摄像头,则index为0;分配好CvCapture后,便可用cvSetCaptureProperty来设置属性int cvSetCaptureProperty( CvCapture* capture, int property_id, double value ), 实例如下:
摄像头初始化成功后,便可使用cvGrabFrame函数从摄像头帧cvGrabFrame原形为int cvGrabFrame( CvCapture* capture );再利用cvRetrieveFrame函数取回获取的帧cvRetrieveFrame函数返回的数据为OpenCV自定义的IplImage结构体,cvRetrieveFrame的原型为IplImage* cvRetrieveFrame( CvCapture* capture )。由于IplImage里的图像数据是24位真彩的三通道BGR,而在QImage为32位真彩的四通道(除BGR外,还有一个a通道),所以在Qt中,必须要对IplImage图像数据结构进行转换才能进行显示处理。转换函数。
3、USB摄像头源码编译
(1)、在/usr/local/目录下新建opencvlib_arm目录;将编译好的基于目标平台的OpenCV的库文件及相关符号链接复制到opencvlib_arm目
您可能关注的文档
- 安徽师范大学大生创新性实验计划项目进度报告.doc
- 安徽理工大学工2006年工作总结.doc
- 安徽省两地200届高三第一次联考检测卷.doc
- 安徽省医疗器械营企业检查验收标准评分表说明.doc
- 安徽省各地205届高三上最新考试数学理试题分类汇编:导数及其应用.doc
- 安徽省属高校教队伍结构的现状与对策.doc
- 安徽省桐城市第中学2014届高三上学期第一次月考 政治试题 Word版含答案.doc
- 安徽省桐城市第中学2015届高三第六次月考理科综合试卷.doc
- 安徽省蚌埠五中013届高三生物一轮测试 生命活动的调节单元检测题.doc
- 安徽省血液透析理规范.doc
- 2024年学校党总支巡察整改专题民主生活会个人对照检查材料3.docx
- 2025年民主生活会个人对照检查发言材料(四个带头).docx
- 县委常委班子2025年专题生活会带头严守政治纪律和政治规矩,维护党的团结统一等“四个带头方面”对照检查材料四个带头:.docx
- 巡察整改专题民主生活会个人对照检查材料5.docx
- 2024年度围绕带头增强党性、严守纪律、砥砺作风方面等“四个方面”自我对照(问题、措施)7.docx
- 2025年度民主生活会领导班子对照检查材料(“四个带头”).docx
- 国企党委书记2025年度民主生活会个人对照检查材料(五个带头).docx
- 带头严守政治纪律和政治规矩,维护党的团结统一等(四个方面)存在的问题整改发言提纲.docx
- 党委书记党组书记2025年带头增强党性、严守纪律、砥砺作风方面等“四个带头”个人对照检查发言材料.docx
- 2025年巡视巡察专题民主生活会对照检查材料.docx
最近下载
- 《ISO 55013-2024 资产管理-数据资产管理指南》解读和实施指导材料(雷泽佳编制-2024).pdf VIP
- 肿瘤放化疗病人并发症护理课件.pptx VIP
- 新概念第一册lesson79.pptx VIP
- 政府采购机票操作手册.pdf VIP
- 二级展开式斜齿圆柱齿轮减速器设计说明书.pdf
- 字节跳动产品运营专员岗面试题库参考答案和答题要点.docx VIP
- 小学英语单词(带音标).pdf VIP
- 字节跳动运营数据分析师岗面试题库参考答案和答题要点.docx VIP
- 八年级数学上册专题15 半角模型证全等(原卷版).docx VIP
- 字节跳动新媒体运营专员岗面试题库参考答案和答题要点.docx VIP
文档评论(0)