我正在研究一個立體聲視差程序,我有左圖和右圖,我正在嘗試讀取。但是,當我嘗試調試時出現錯誤,但它工作正常,如果我只是構建它.. 。所以我只是減少了代碼很簡單的東西...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