morning_sun_lee
2016-10-17 04:15
采纳率: 83.3%
浏览 2.0k
已采纳

关于Qt Creator Debug模式下 opencv的imwrite()运行时出错的问题

遇到的问题如题。我用Qt写了一个简单的测试程序,由于需要用到opencv,我先在.pro文件中添加了如下代码:
    INCLUDEPATH+=D:\Work_Software\OpenCV3.1\opencv\build\include
    LIBS+=D:\Work_Software\OpenCV3.1\opencv\build\x64\vc12\lib\*.lib

之后,新建一个按键,按键的槽函数如下:

 void MainWindow::on_pushButton_clicked()
{
    Mat img;
    img=imread("F:\\My_Desktop\\foot1.jpg",0);
    imwrite("F:\\My_Desktop\\result.jpg",img);
    namedWindow("test");
    imshow("test",img);
    waitKey(0);
}

在Release模式下,可以正常地保存和显示图片,但是在Debug模式下,运行到imwrite的时候就会出错,报错的信息如下图:
图片说明

有没有知道是怎么回事的朋友?求指点。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • lx624909677 2016-10-17 05:59
    已采纳

    debug模式下要用debug版本的opencvlib库和dll,不能混着用

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • oyljerry 2016-10-17 08:15

    除了保持debug跟调用的库debug对应,release对应release
    还有你的代码的编译器跟opencv库编译器版本一致。或者自己用编译器编译opencv源码

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题