使用 cv::split 的问题
Posted
技术标签:
【中文标题】使用 cv::split 的问题【英文标题】:Problems using cv::split 【发布时间】:2013-11-01 03:38:51 【问题描述】:我正在使用 OpenCV 2.4.6,并尝试生成一些直方图。原始示例代码从本地存储中获取图像,但我将其修改为使用VideoCapture
对象。当代码到达cv::split()
时,它会带来一个未处理的异常。它提示:
“在 0x5465B3D9 (opencv_core246.dll) 中未处理的异常 visionProject.exe: 0xC0000005: 访问冲突写入位置 0x1800E633。”
我的代码是这样的:
VideoCapture camera;
camera.open(0);
camera >> src;
if( !src.data )
return -1;
/// Separate the image in 3 places ( B, G and R )
vector <Mat> bgr_planes;
split(src, bgr_planes );
感谢您的宝贵时间。
【问题讨论】:
您的代码在我的带有 OpenCV2.4.5 的 PC 上运行良好。 您的代码现在与您的问题不同 我不确定是编辑整个问题还是创建一个新问题。无论如何,它现在可以正常工作,但前提是我将项目设置为 Release。还不能使用调试器。 【参考方案1】:多亏了朋友的帮助,我才得以成功。为了使OpenCV
正常工作,我必须在Visual Studio 中将构建设置为发布。这样,它就可以正常工作。
【讨论】:
以上是关于使用 cv::split 的问题的主要内容,如果未能解决你的问题,请参考以下文章
OpenCV python:在 BGR 图像中获取通道时 cv2.split() 与切片
OpenCV 函数学习11-图像通道的拆分(cv2.split)
机器学习进阶-图片基本处理-ROI区域 1.img[0:200, 0:200]截取图片 2.cv2.split(对图片的颜色通道进行拆分) 3. cv2.merge(将颜色通道进行合并) 4 c