2016-06-10 61 views
1

我有一个程序,我在OpenCV中显示一个名为Windows()的视频源。该计划允许我到namedWindow内单击,但如果我尝试移动窗口我的桌面上它触发convert.cpp阅读当我移动NamedWindow时,OpenCV崩溃

第一次机会异常在0x00D061A8在AlcesSandboxApp.exe一个错误:0000005:访问冲突读取地址0x44374050。

如果有这种异常的处理程序,程序可能会安全地继续。

这里就是我初始化窗口行:

 namedWindow(wndDisplay, WINDOW_AUTOSIZE); 

我一直在使用WINDOW_NORMAL也试过。我应该如何创建一个可以容忍被移动的namedWindow?

UPDATE:附加代码

//Display the new image 
while(true){ 
    //dispImg is a shared pointer that is updated in another thread. 
    cv::applyColorMap(dispImg, colorMat, colorMap); 
    imshow(wndDisplay, colorMat); 
} 
+0

没有足够的上下文来告诉。你能否发布更多你的代码? –

+0

我添加了一些更多的代码,但实际上没有比这更多的代码。 – stranger

+0

你的代码清楚地访问了它不应该使用的内存,并且从你提供的代码中不清楚哪里可能是问题。 –

回答

0

它可以是用于尤尔的OpenCV配置。你使用32位还是64位? 您是否根据操作系统和调试或发布来配置Opencv? 最好的测试方法是编译一个非常简单的例子,像这样sample!就像读取图像并显示它,如果它正常工作,然后检查您的代码,如果不通过此链接检查配置步骤: Configuration steps