- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VC与MATLAB混合编程视频ぞ低纷场检测系统
基于VC与MATLAB混合编程视频ぞ低纷场检测系统
摘 要:介绍了对视频检测技术的研究背景、视频检测技术常见的算法、系统设计思路与流程以及对系统调试与结果的测试。在选择视频镜头检测算法对系统运行进行调试的时候,采用了固定阈值直方图比对算法。为了克服固定阈值直方图算法对亮度敏感的缺点,在算法中采用了RGB颜色空间到YcbCr颜色空间的转换。整个系统采用函数设计方法,鉴于VC????++??在用户界面设计中广泛的运用,以及Matlab在图形图像处理中强大的工具箱函数,故采用VC????++??6.0与Matlab7.0进行混合编程的方法,以综合VC????++??与Matlab各自的优点,达到简化程序设计的目的。??
关键词:视频镜头检测; VC????++??Matlab混合编程;颜色直方图??
中图分类号:TP311.52 文献标识码:A 文章编号:1672-7800(2011)05-0011-03?お?
??
作者简介:
魏志强(1986-),男,安徽淮南人,西南交通大学电气工程学院硕士研究生,研究方向为嵌入式系统设计;李华(1986-),女,四川简阳人,西南交通大学交通运输与物流学院硕士研究生,研究方向为安全技术及工程;黄东(1984-),男,湖南邵阳人,西南交通大学电气工程学院硕士研究生,研究方向为嵌入式系统设计。??
0 引言??
随着网络与计算机技术的迅速发展,单调的文本信息已不再满足人们的需要,多媒体内容日益进入人们的生活,数字视频得到了越来越多的应用。于是,相关的视频处理的研究也越来越多。镜头分割是视频处理的第一步,是随后的高层内容分析、分类、索引和查询的基础。镜头分割的准确性将直接影响到后续处理的效果。因此,视频镜头的分割算法,从一开始就得到广泛的重视,它在基于内容的视频分析和检索中也有着最长的研究历史和最丰富的研究成果。所以对视频镜头检测技术的研究有着很强的现实意义。??
1 基于Matlab引擎的VC????++??与Matlab混合编程方法
Matlab Engine是指一组Matlab提供的接口函数,支持C语言, Matlab Engine采用C/S(客户机/服务器)模式,Matlab作为后台服务器,而C程序作为前台客户机,通过Windows的动态控件与服务器通信,向Matlab Engine传递命令和数据信息,从Matlab Engine接受数??
据信息。用户可以在前台应用程序中调用这些接口函数,实现对Matlab Engine的控制。采用这种方法几乎能利用Matlab全部功能。??
基于VC和Matlab混合编程是很多熟悉VC????++??编程而又需要进行科学计算、数据仿真的科研人员常用的一种方式,其中最简单也最直接的方法就是调用Matlab引擎。下面将对本设计中用到的调用Matlab引擎的方式及调用语句做出介绍。??
所谓Matlab引擎(engine),是指一组Matlab提供的接口函数,支持C/C????++??、Fortran等语言,通过这些接口函数,用户可以在其它编程环境中实现对Matlab的控制。可以主要功能有:①打开/关闭一个Matlab对话;② 向Matlab环境发送命令字符串;③ 从Matlab环境中读取数据;④ 向Matlab环境中写入数据。??
与其它各种接口相比,引擎所提供的Matlab功能支持是最全面的。通过引擎方式,应用程序会打开一个新的Matlab进程,可以控制它完成任何计算和绘图操作。对所有的数据结构提供100%的支持。同时,引擎方式打开的Matlab进程会在任务栏显示自己的图标,打开该窗口,可以观察主程序通过engine方式控制Matlab运行的流程,并可在其中输入任何Matlab命令。??
实际上,通过引擎方式建立的对话,是将Matlab以ActiveX控件方式启动的。在Matlab初次安装时,会自动执行一次:matlab /regserver将自己在系统的控件库中注册。如果因为特殊原因,无法打开Matlab引擎,可以在Dos命令提示符后执行上述命令,重新注册。
??
2 基于直方图的转场检测算法??
基于直方图的算法是最普遍的场景分割方法,它处理起来简单方便,而且对于大多数视频,能达到比较好的效果。现对几种有代表性的算法作一比较。??
基于直方图的算法是在基于像素的比较上发展来的。基于像素的算法计算两帧中每个对应像素的亮度平均绝对变化值,第k帧和第k+l帧的帧差异值定义为:??
??z(k,k+1)=[SX(]1[]MN[SX)]∑[DD(]M[]x=1[DD)] ∑[DD(]N[]y=1[
文档评论(0)