1

我在将 rgb 图像拆分为单个通道时遇到了问题。我的简单代码如下

    **cv::Mat src = cv::imread("D:/Test/a.jpg", 1);
std::vector<cv::Mat> img_rgb;
cv::split(src, img_rgb);
cv::imshow("a", src);**

我的调试显示此问题来自 split 函数,并引发了以下错误。 *Test_Opencv2.4.1.exe 中 0x10005768 处未处理的异常:0xC0000005:访问冲突读取位置 0x000000bc。*

有谁知道如何解决这个问题?提前致谢!

4

1 回答 1

1

您可能必须使用另一个斜线并将其转义,而且您始终需要检查以下内容的返回imread()

cv::Mat src = cv::imread("D:\\Test\\a.jpg", 1);
if (src.empty())
{
    std::cout << "!!! Couldn't load image" << endl;
    // exit
}
于 2012-06-11T13:05:47.637 回答