天天看点

OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)

首先参照下面这里进行opencv x64位机器下面的配置

<a target="_blank" href="http://wiki.opencv.org.cn/index.php/VC_2010%E4%B8%8B%E5%AE%89%E8%A3%85OpenCV2.4.4">http://wiki.opencv.org.cn/index.php/VC_2010%E4%B8%8B%E5%AE%89%E8%A3%85OpenCV2.4.4</a>

参考到环境变量处的配置之后,文章中所说的x64位机器环境的配置就不是很清晰了,我自己摸索了一些,其实vs2010本身就不是一个64位的编译器。

OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)

所以我认为,在64位的win7旗舰版系统中,这个编译器就是支持64位程序的编译运行。

但是vs2010中没有能够直接创建64位程序啊,所以就新建win32控制台程序之后在进行设置。

下面是我在vs2008中的新建的工程做的实验,vs2010一样,都是在属性管理器中-&gt;右键工程-&gt;属性-&gt;配置管理起-&gt;活动平台解决方案-&gt;新选择平台,选择x64

OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)

接着就生成了,新的工程配置选项,如下图所示:

OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)

这时候回到,最上面的连接,讲里面所说的路径,配置一下:

画红线的部分右键属性,这里跟连接里面的教程不太一样,由于是在64位环境下,似乎不能直接配置成所有工程的通用属性,所以每次使用的时候都要从新配置下,这点可能要注意!

OpenCV x64 vs2010 下打开摄像头录制视频写成avi(代码为转载)

配置好了之后,可以使用教程中的代码进行一下测试,还要注意一个问题,教程中的代码可能不需要一些附加依赖库就能够运行,但是咱们下面的,驱动摄像头的程序就要用到很多附加依赖库。

有时候在网上搜的时候,由于版本的不同,所以附加依赖库后面的数字是不同的,大家复制粘贴的时候注意要修改一下。下面这些差不多是所有的库了

下面的都是带d 的,也就是debug版本 的附加依赖库:

opencv_contrib244d.lib

opencv_core244d.lib

opencv_features2d244d.lib

opencv_flann244d.lib

opencv_gpu244d.lib

opencv_highgui244d.lib

opencv_imgproc244d.lib

opencv_legacy244d.lib

opencv_ml244d.lib

opencv_nonfree244d.lib

opencv_objdetect244d.lib

opencv_photo244d.lib

opencv_stitching244d.lib

opencv_ts244d.lib

opencv_video244d.lib

opencv_videostab244d.lib

opencv_calib3d244.lib

opencv_contrib244.lib

opencv_core244.lib

opencv_features2d244.lib

opencv_flann244.lib

opencv_gpu244.lib

opencv_highgui244.lib

opencv_imgproc244.lib

opencv_legacy244.lib

opencv_ml244.lib

opencv_nonfree244.lib

opencv_objdetect244.lib

opencv_photo244.lib

opencv_stitching244.lib

opencv_ts244.lib

opencv_video244.lib

opencv_videostab244.lib

下面的程序来自这个连接

<a target="_blank" href="http://www.cppblog.com/lanshengsheng/archive/2013/01/16/197309.html">http://www.cppblog.com/lanshengsheng/archive/2013/01/16/197309.html</a>

我用我的摄像头(蓝色妖姬M2200 免驱高清)测试,表明,能录8秒左右的avi格式的录像,因为是200次,每秒多少帧还不是很确定。

另外在最后生成阶段可能出现无法调试的问题,在百度搜索了一下,可能是.suo文件出现了问题

按照如下方式修改可以解决:

首先打开菜单 项目-&gt;项目属性页 

选择 配置属性-&gt;链接器-&gt;调试-&gt;生成调试信息 改为 是 

选择 配置属性-&gt;C/C++ -&gt;常规-&gt;调试信息格式 改为 用于“编辑并继续”的程序数据库(/ZI) 

选择 配置属性-&gt;C/C++ -&gt;优化-&gt;优化 改为 禁用(/Od)