Visual Studio 中配置OpenCV时,初学者在调试时经常遇到“无法查找或打开 PDB 文件”的问题。解决方案如下:
一、可先按http://jingyan.baidu.com/article/90bc8fc87fbafff653640ca6.html中的方法减少一些“无法查找或打开 PDB 文件”的数目;
二、看是否只剩下“已加载“C:\Windows\SysWOW64\opencv_core2410d.dll”。无法查找或打开 PDB 文件。“和“已加载“C:\Windows\SysWOW64\opencv_highgui2410d.dll”。无法查找或打开 PDB 文件。”未解决。是,转第三步;否,可打开“调试”——>“选项和设置”——>"符号"——>"清空符号缓存",重新调试(F5)(过程较慢,耐心等待);
三、重新运行一个较复杂的测试程序,如下:(“pool.jpg”保存在工程文件路径下)
#include
#include
#include
#include
int main( )
{
// 读取图像源
cv::Mat srcImage = cv::imread("..\\images\\pool.jpg");
if( srcImage.empty() )
return -1;
// 转为灰度图像
cv::Mat srcGray;
cv::cvtColor(srcImage, srcGray, CV_RGB2GRAY);
cv::imshow("srcGray", srcGray);
// 均值平滑
cv::Mat blurDstImage;
blur( srcGray, blurDstImage, cv::Size(5,5),
cv::Point(-1,-1) );
cv::imshow("blurDstImage", blurDstImage);
// 写入图像文件
cv::imwrite("blurDstImage.png", blurDstImage);
cv::waitKey(0);
return 0;
}
稍等片刻即得运行结果。
四、再调试较简单的代码,如下:
// 头文件
#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
int main( )
{
// 读取源图像并转化为灰度图像
cv::Mat srcImage = cv::imread("..\\pool.jpg");
// 判断文件是否读入正确
if( !srcImage.data )
return 1;
// 图像显示
cv::imshow("srcImage", srcImage);
// 等待键盘键入
cv::waitKey(0);
return 0;
}
即可在“无法查找或打开 PDB 文件”的情况下仍能运行出正确结果。
出处:http://blog.sina.com.cn/s/blog_eaacf6810102wkr3.html