我正在使用OpenCV C ++进行一些图像处理。但是,当我将图像传递给类中的函数时,我得到此错误EXC_BAD_ACCESS(...)
。代码:
Mat image = img.clone();
if(!image.data){
cout << "No image found!" << endl;
exit(-1);
}
imshow("running image",image); waitKey(); // ERROR-> Thread 1: EXC_BAD_ACCESS(code=EXC_I386_GPFLT)
现在在将图像传递到Main
中的此功能之前,我打印图像并且它完全正常并且符合预期。另外,我给exit(-1)
一个条件,没有图像数据。
我放置了一个断点并检查并且图片中包含此函数中的数据但我无法弄清楚错误导致程序在Highgui
OpenCV
中崩溃,即{{} 1}}功能。
非常感谢任何帮助。
我发现了错误。
错误
*当我初始化一个指向变量的指针来修改图像时,我使用malloc(Sizeof(float)* NUM)初始化指向,并且偶然地,NUM宏初始化为float类型,因此它创建并出现错误无法在浮点数中分配内存的机会数,但是int。*