gpt4 book ai didi

c++ - 一个矩阵中的数据自动复制到 C++ 中 opencv 中的另一个矩阵

转载 作者:行者123 更新时间:2023-11-28 03:34:53 25 4
gpt4 key购买 nike

我创建了一个函数,其中我传递一个矩阵并返回处理后的矩阵,但是处理过的矩阵的数据被复制到我传递的矩阵中,例如。

    output=processMatrix(srcCopy);

然后当我显示这两个矩阵时,我在 srcCopy 中得到相同的图像并输出,我将它们分配为内存;

    output=Mat(image.rows,image.cols,CV_8UC1 );
srcCopy=Mat(image.rows,image.cols,CV_8UC1 );

最佳答案

问题是 cv::Mat 复制构造函数执行源 cv::Mat浅复制。参见 here .您可能需要做的是使用 cv::MAt::clone() 方法创建原始文件的克隆。那么,就可以避免函数参数列表中的浅拷贝:

cv::Mat skeletonize(const cv::Mat& m) { 
// use clone() in here to make a new Mat and return it
}

关于c++ - 一个矩阵中的数据自动复制到 C++ 中 opencv 中的另一个矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11239326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com