我正在研究一个立体声视差程序,我有左图和右图,我正在尝试读取。但是,当我尝试调试时出现错误,但它工作正常,如果我只是构建它.. 。所以我只是减少了代码很简单的东西...Visual Studio调试器失败,但程序运行良好时,建立...?
#include <bunch of opencv bits...>
using namespace std;
using namespace cv;
int main()
{
Mat Left= imread("Left.png", 0); //read images as grayscale
Mat Right= imread("Right.png", 0);
while (true) {
imshow("Left",Left);
imshow("Right",Right);
}
}
与调试(F5)运行我站上罚球线imshow(“左”,左);和它崩溃,报告 OpenCV的错误:错误标志(参数或结构域)(无法识别或不支持的阵列型)......等等等等
通过代码步进我可以看到,没有什么是读取存储在左或右
然而,事情变得真的是说不清是,如果我只是建立程序(F7)并运行资源管理器(其它项目\ SteroExp \调试)中的.exe ....它运行完全正常。
我的想法...... 是否VS在不存储图像的PC上的某个不同的temp目录运行调试版本?
我使用... W7 64位,VS2010,C++,OpenCV的2.3.1
味道像未定义的行为 – Andrew 2012-08-03 09:58:19
嗯,这是否意味着我永远不能调试这个程序? – Oliver9523 2012-08-03 10:27:44