我在使用Visual Studio 2008(专业版)时,尝试使用OpenCV遇到了一些困难。我相信我已经完成了运行OpenCV示例所需的一切步骤,但它由于运行时错误而崩溃。这让我疯狂,希望有人能够帮助。
但首先,请让我们了解一下我的安装过程。
我的安装过程
从sourcefourge.net下载了OpenCV 2.4.5。
当提示的时候,我在上面链接下载的.exe文件中选择“Z:\ Games instalados \ OpenCV”作为“解压到”选项。
打开“控制面板” -> “系统” -> “高级系统设置”,然后单击“高级”选项卡中的“环境变量”。在“系统变量”框中,我突出显示了“Path”,然后单击“编辑...”。在新窗口中,我在“变量值”中添加了我的安装目录,并在其前面加上“;”,即“; Z:\ Games instalados \ OpenCV \ opencv \ build \ x86 \ vc11 \ bin”(不包括双引号)。下面是截图:
。
- 在Visual Studio 2008中创建一个新项目:文件-> 新建->项目...,选择“其他语言”->“Visual C ++ ->“Win32”作为项目类型;“Win32 Console Application”作为模板。
在新窗口中单击“下一步”,然后选择“控制台应用程序”,“空项目”,然后选择“完成”。
- 在“解决方案资源管理器”中,右键单击我的程序,然后选择“属性”。然后选择“配置属性” -> “C / C ++” -> “常规”,并在“附加包含目录”中添加:
- Z:\ Games instalados \ OpenCV \ opencv \ build \ include
- Z:\ Games instalados \ OpenCV \ opencv \ build \ include \ opencv
- Z:\ Games instalados \ OpenCV \ opencv \ build \ include \ opencv2 <img alt =“Additional Include”src =“https://s23.postimg.org/6yad3hvbf/additional_include_directories.jpg”/>
- 现在在“配置属性” ->“C / C ++” ->“链接器” ->“常规”中,在“其他库目录”中添加了“Z:\ Games instalados \ OpenCV \ opencv \ build \ x86 \ vc11 \ lib”。
- 现在在“配置属性” ->“C / C ++” ->“链接器” ->“输入”中,在“其他依赖项”中添加了:
- opencv_calib3d245.lib
- opencv_contrib245.lib
- opencv_core245.lib
- opencv_features2d245.lib
- opencv_flann245.lib
- opencv_gpu245.lib
- opencv_highgui245.lib
- opencv_imgproc245.lib
- opencv_legacy245.lib
- opencv_ml245.lib
- opencv_nonfree245.lib
- opencv_objdetect245.lib
- opencv_photo245.lib
- opencv_stitching245.lib
- opencv_superres245.lib
- opencv_ts245.lib
- opencv_video245.lib
- opencv_videostab245.lib
- opencv_calib3d245d.lib
- opencv_contrib245d.lib
- opencv_core245d.lib
- opencv_features2d245d.lib
- opencv
问题
- 项目构建成功,“Build succeeded”。
- “Debug” -> “Start Debugging”,出现以下情况: 错误 http://s8.postimg.org/wdkubk5o3/the_error.jpg 错误的完整尺寸图片:http://s8.postimg.org/wdkubk5o3/the_error.jpg
我也尝试了霍夫线样例,但它也不能正常工作(即使图像与.exe文件在同一文件夹中,imread()也无法找到图像)。
非常感谢任何帮助。
如果我的安装步骤有些不够清晰,请留言。
为什么这个问题适合stackoverflow.com
我详细描述了使用Visual Studio 2008与最新版本OpenCV的全面安装过程。如果有人解决了这个问题,我们将拥有一个完整、可用的教程,供任何有相同需求的人使用,并且(由于安装程序的深度)可能是安装大多数Visual Studio版本的最新OpenCV的通用指南(不仅限于2008版,因为教程不会有太大变化,读者可以轻松地适应它)。
cv::Mat m; cout << m;
,我会得到相同的错误,使用opencv 2.4.4。这似乎是一个opencv问题 - 在http://answers.opencv.org/question/6094/using-cout-with-mat-object/上找到了另一个具有相同问题的人。他们重建了opencv,显然解决了问题。 - Bull