nc_illy
TensionRidden
采纳率0%
2020-05-13 09:09

openCV3.4 cvSaveImage 报错error: (-215:Assertion failed) (flags & FIXED_TYPE) != 0 in function 'type'

5

在opencv3.4中,使用C语言对图像进行存储

    IplImage* srcshow = cvLoadImage("1.png", 1);
    if(srcshow == NULL){
        printf("NULL\n");
        return 0;
    }
    printf("while\n");
    CvMat *matshow = cvCreateMat(srcshow->height, srcshow->width, CV_64FC3);    //注意height和width的顺序
    cvConvert(srcshow, matshow);    //深拷贝
        cvSaveImage("2.png", matshow, 0);

报错
terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(3.4.3)/modules/core/src/matrix_wrap.cpp:800: error: (-215:Assertion failed) (flags & FIXED_TYPE) != 0 in function 'type'

之前尝试过保存IplImage和cvMat均是这个错误信息
获悉将转换为Mat后可以正常存储,
但因一些外部原因,只能使用C,无法使用C++,
求解惑,谢谢!

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • zongxian5219 铁血乳娃娃 1年前

    应该是你配置的问题 既然你只能用C 那么你使用的库中却是CPP文件

    点赞 评论 复制链接分享
  • dabocaiqq dabocaiqq 1年前

为你推荐