分割图像会导致未处理的异常错误
splitting image results in unhandled exception error
我目前正计划将我的图像分成3个通道,这样我就可以获得图像的RGB值来绘制散点图,这样我就可以使用正态分布来计算协方差矩阵,平均值等。然后计算背景点与实际图像之间的距离,对图像进行分割。
现在,在我的第一个任务中,我编写了以下代码:
VideoCapture cam(0);
//int id=0;
Mat image, Rch,Gch,Bch;
vector<Mat> rgb(3); //RGB is a vector of 3 matrices
namedWindow("window");
while(1)
{
cam>>image;
split(image,rgb);
Bch = rgb[0];
Gch = rgb[1];
Rch = rgb[2];
但是当它到达split函数时,它会导致一个未处理的异常错误。访问冲突写入位置0xfeeefeee
我仍然是新的opencv,所以我不习惯处理未处理的异常错误。
谢谢
听起来好像split期望在rgb
向量中有三个Mat
实例。但是你只准备了三个条目——它实际上是空的。
尝试添加三个元素到向量,然后再运行。
虽然这是一个老问题,但我想分享对我有效的解决方案。我用Mat channels[3];
代替vector<Mat> rgb(3);
。我意识到有一些错误的使用矢量时,我不能使用分割,甚至在一个图像加载imread。不幸的是,我不能解释为什么这个改变是有效的,但如果有人可以,那将是伟大的。
相关文章:
- VisualC++ 2010 有没有办法找出有关未处理异常错误的更多详细信息
- 打开CV异常错误,尽管我的代码是正确的
- 异常错误C++ //Visual Studio
- 提升序列化异常错误
- 返回内存异常错误的矢量
- 使用用户定义的函数查找完美数时出现浮点异常错误
- cv::内存位置出现异常错误
- OpenCV未经处理的异常错误
- 分数简化算法,浮点异常错误
- 为什么我会收到浮点异常错误
- 文本框为空时,C++Windows窗体应用程序出现未处理的异常错误
- 文本框为空时C++ Windows 窗体应用程序未处理的异常错误
- 函数传递映射时出现异常错误
- 在MS Visual Studio 2010上使用带有Cuda互操作的OpenGL缓冲区时出现异常错误
- 未处理的异常错误
- C++:关闭控制台应用后出现异常错误
- 写入对象时运行时引发异常错误
- C++ C# 包装器空异常错误
- Coin3D(Open Inventor)中出现未处理的异常错误
- Stack Pop()函数出现未处理的异常错误