星星不眨眼~~~ 2024-04-07 21:02 采纳率: 100%
浏览 11
已结题

OpenCV改变图像问题怎样解决?


#include<opencv2/opencv.hpp>
#include<iostream>
#include <opencv2/highgui/highgui_c.h>

using namespace std;
using namespace cv;
int main(int argc, char** argv) {
    Mat src;
    src = imread("D:/water.png");
    if (src.empty()) {
        cout << "could not load image..." << endl;
        return -1;
    }
    namedWindow("input", CV_WINDOW_AUTOSIZE);
    imshow("input", src);

    Mat dst;
    namedWindow("ouput", CV_WINDOW_AUTOSIZE);
    cvCvtColor(src,dst,CV_BayerRG2GRAY);
    printf("input image channels:%d\n", src.channels());
    printf("input image channels:%d\n", dst.channels());
    imshow("ouput", dst);
    waitKey(0);
    return 0;
}

存在问题:
不存在从 "cv::Mat" 到 "const CvArr *" 的适当转换函数
不存在从 "cv::Mat" 到 "CvArr *" 的适当转换函数

  • 写回答

2条回答 默认 最新

  • Kwan的解忧杂货铺 Java领域优质创作者 2024-04-15 22:38
    关注

    晚上好🌙🌙🌙
    本答案参考ChatGPT-3.5

    问题描述:

    在使用OpenCV进行图像处理时,运行程序出现“不存在从 ‘cv::Mat’ 到 ‘const CvArr *’ 的适当转换函数”和“不存在从 ‘cv::Mat’ 到 ‘CvArr *’ 的适当转换函数”的错误提示。

    解决方案:

    1.使用C++的方法进行转换: 将原代码 cvCvtColor(src,dst,CV_BayerRG2GRAY); 修改为 cvtColor(src,dst,CV_BayerRG2GRAY); 使用cvtColor()函数进行转换。

    2.将Mat类型转换为IplImage类型: 在进行OpenCV函数操作时,有些函数只支持IplImage类型的数据结构,不支持Mat类型。 使用以下代码将Mat类型转换为IplImage类型:

    IplImage ipl_img = dst;
    cvShowImage("output", &ipl_img);
    

    修改后的代码如下:

    #include<opencv2/opencv.hpp>
    #include<iostream>
    #include <opencv2/highgui/highgui_c.h>
    
    using namespace std;
    using namespace cv;
    
    int main(int argc, char** argv) {
        Mat src;
        src = imread("D:/water.png");
        if (src.empty()) {
            cout << "could not load image..." << endl;
            return -1;
        }
        namedWindow("input", CV_WINDOW_AUTOSIZE);
        imshow("input", src);
    
        Mat dst;
        namedWindow("output", CV_WINDOW_AUTOSIZE);
        cvtColor(src, dst, CV_BayerRG2GRAY);
    
        IplImage ipl_img = dst;
        cvShowImage("output", &ipl_img);
    
        waitKey(0);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月24日
  • 已采纳回答 4月16日
  • 创建了问题 4月7日

悬赏问题

  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验
  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥30 求解达问题(有红包)