OpenCV 安装 VS 10 不会构建

Posted

技术标签:

【中文标题】OpenCV 安装 VS 10 不会构建【英文标题】:OpenCV installation VS 10 won't build 【发布时间】:2012-07-15 16:01:05 【问题描述】:

我一直在尝试安装 OpenCV,但总是出现问题。我尝试的最后一件事是:

Setup OpenCV-2.3 for Visual Studio 2010

但是在运行核心之后我得到了这个错误。

'open23.exe': 加载'C:\Users\Napster\Documents\Visual Studio 2010\Projects\open23\Debug\open23.exe',已加载符号。 'open23.exe': 已加载“C:\Windows\SysWOW64\ntdll.dll”,已加载符号(源 信息被剥离)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\kernel32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\KernelBase.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Users\Napster\Documents\Visual Studio 2010\Projects\open23\Debug\opencv_highgui230.dll',找不到或无法打开 PDB 文件“open23.exe”:已加载“C:\Windows\SysWOW64\user32.dll”, 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\gdi32.dll',已加载符号(源信息 剥离)。 “open23.exe”:已加载“C:\Windows\SysWOW64\lpk.dll”,符号 加载(源信息被剥离)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\usp10.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\msvcrt.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\advapi32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载 'C:\Windows\SysWOW64\sechost.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\rpcrt4.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\sspicli.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\cryptbase.dll',已加载符号(源 信息被剥离)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\ole32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\oleaut32.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Users\Napster\Documents\Visual Studio 2010\Projects\open23\Debug\opencv_core230.dll',无法找到或打开 PDB 文件“open23.exe”:已加载 'C:\Windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4974_none_50940634bcb759cb\msvcp90.dll', 已加载符号。 “open23.exe”:已加载 'C:\Windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4974_none_50940634bcb759cb\msvcr90.dll', 已加载符号。 “open23.exe”:已加载 'C:\Windows\winsxs\x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.7600.16385_none_ebf82fc36c758ad5\comctl32.dll',已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\avifil32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载 'C:\Windows\SysWOW64\winmm.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\msacm32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\msvfw32.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\shell32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\shlwapi.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\avicap32.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载 'C:\Windows\SysWOW64\version.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\msvcr100d.dll',已加载符号。 'open23.exe': 已加载“C:\Windows\SysWOW64\imm32.dll”,已加载符号(源 信息被剥离)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\msctf.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载 'C:\Windows\SysWOW64\uxtheme.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Program Files\CheckPoint\ZAForceField\WOW64\Plugins\ISWSHEX.dll', 无法找到或打开 PDB 文件“open23.exe”:已加载 'C:\Windows\winsxs\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6195_none_d09154e044272b9a\msvcr80.dll', 已加载符号。 “open23.exe”:已加载 'C:\Windows\SysWOW64\wintrust.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\crypt32.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Windows\SysWOW64\msasn1.dll',已加载符号(源信息 剥离)。 “open23.exe”:已加载 'C:\Windows\winsxs\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.6195_none_d09154e044272b9a\msvcp80.dll', 已加载符号。 “open23.exe”:已加载 'C:\Windows\SysWOW64\ntmarta.dll',已加载符号(源信息 剥离)。 'open23.exe': 加载'C:\Windows\SysWOW64\Wldap32.dll', 已加载符号(已删除源信息)。 “open23.exe”:已加载 'C:\Program Files\CheckPoint\ZAForceField\WOW64\AK\icsak.dll',不能 在 0x7605b727 处查找或打开 PDB 文件第一次机会异常 open23.exe 中的 (KernelBase.dll):Microsoft C++ 异常: std::exception at memory location 0x0015f4d0.. 'open23.exe': 已加载 'C:\Windows\SysWOW64\psapi.dll',已加载符号(源信息 剥离)。 0x7605b727 (KernelBase.dll) 中的第一次机会异常 open23.exe:Microsoft C++ 异常:内存位置的 std::exception 0x0015f858.. 线程“Win32 线程”(0xd20) 已退出,代码为 0 (0x0)。程序“[2392] open23.exe: Native”已退出,代码为 -1 (0xffffffff)。

我的代码

包括

包括

包括

int main(int argc, char* argv[]) if (argc

IplImage* img = cvLoadImage(argv[1], CV_LOAD_IMAGE_UNCHANGED); if (!img) 
return -1; 

cvNamedWindow("显示", CV_WINDOW_AUTOSIZE); cvShowImage("显示", img );

cvWaitKey(0);        

return 0; 

额外信息:我将 dll 从 opencv 复制到调试文件夹,因为之前我遇到了一些 dll 未找到的错误。

另外,我是个菜鸟,这是我的第一个主要的 c++ 个人项目。所以这是我第一次尝试使用额外的库来创建程序。

谢谢

【问题讨论】:

抛出 C++ 异常,程序退出。没有看到代码的人应该如何帮助你? 我使用了与链接中相同的代码 【参考方案1】:

要在 Visual Studio 中使用 opencv - 从这里开始 How to build applications with OpenCV inside the Microsoft Visual Studio,它解释了如何正确设置所有包含和库路径

您还混合了 C++ 头文件和旧的 C 函数名称 - 使用示例中的样式

【讨论】:

谢谢!我有点菜鸟,我想创建一个面部识别程序,但我不知道从哪里开始。你有什么建议吗?谢谢 哈尔级联,见docs.opencv.org/doc/tutorials/objdetect/…【参考方案2】:

牛米,

我使用了这段代码,它成功了!

#include <cv.h>
#include <highgui.h> 
int main(int argc, char* argv[])

 IplImage* img = cvLoadImage( "funny-pictures-cat-goes-pew.jpg" );
 cvNamedWindow( "MyJPG", CV_WINDOW_AUTOSIZE );
 cvShowImage("MyJPG", img);
 cvWaitKey(0);
 cvReleaseImage( &img );
 cvDestroyWindow( "MyJPG" );
 return 0;

【讨论】:

【参考方案3】:

对于将来收到“无法找到或打开 PDB”警告并在谷歌上搜索此答案的任何人:这很可能意味着您包含 32 位 (x86) openCV 库而不是 64 位 (x64) 库

【讨论】:

以上是关于OpenCV 安装 VS 10 不会构建的主要内容,如果未能解决你的问题,请参考以下文章

[CV之旅] 环境搭建VS2015 + opencv 3.2

如何生成能在没有安装opencv库及vs2010环境的电脑上运行的exe文件

使用 MingW 运行 OpenCV 项目时出现入口点错误

vs+qt+opencv海康摄像头实时预览

opencv 安装 vc14可以在vs10上运行吗

使用opencv构建项目时出错