【问题标题】:OpenCV imread issueOpenCV 读取问题
【发布时间】:2013-12-06 01:00:53
【问题描述】:

我正在使用 OpenCV 2.4.7 在 VS2012 上编译一个简单的项目。

所以当我这样做时:

cv::Mat img = cv::imread("C:\lena.jpg",1);

然后我寻找以下错误的解决方案:

OpenCV Error: Assertion Failed (size.width>0 && size.height>0) in unknown function

所以,我把这个:

IplImage* img1 = cvLoadImage("C:\lena.jpg", 1);
Mat img(img1);

而且效果很好。这只是一种解决方案吗?

PS:我在 Ubuntu 上遇到了同样的问题,我尝试以不同的方式更改路径。

【问题讨论】:

  • 哪个函数给你例外,是imread(…)?可能是错误出在其他功能中吗?您是否尝试将"C:/lena.jpg" 作为imread 的路径?
  • 错误在 imread 中,因为我用 IpL 方式替换了它,正如我提到的,它运行良好......是的,我尝试使用 C:/lena.jpg,但没有工作:-\跨度>

标签: c++ opencv image-processing


【解决方案1】:

这是因为您的转义序列。看下面的路径:

C:\\Users\\name\\Pictures\\Dell WebCam Central\\img.jpg

这将正常编译

C://Users//name//Pictures//Dell WebCam Central//img.jpg

但是,如果转义序列不正确,正如您所使用的,那么断言将失败。

更多信息请参见escape sequences

【讨论】:

    猜你喜欢
    • 2019-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-06
    • 2021-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多