gpt4 book ai didi

c++ - 如何将 cv::Scalar 分配给 cv::Mat?

转载 作者:行者123 更新时间:2023-11-28 01:36:50 27 4
gpt4 key购买 nike

使用 OpenCV 中实现的 Scalar 类,我不明白这段代码有什么区别:

Mat test;
test = Scalar::all(0);

还有这个:

Mat test = Scalar::all(0);
^

我的问题是为什么第一个赋值正确而第二个赋值不正确?

最佳答案

声明Mat采用 Vec<_Tp,n> 的构造函数作为参数是

  template<typename _Tp, int n>
explicit Mat(const Vec<_Tp, n>& vec, bool copyData=true);

cv::Scalar被视为 Vec<_Tp,4>这样你就可以通过 ScalarMat 显式方式的构造函数Class obj(parameter);不是Class obj = parameter;所以打电话

Mat test(Scalar::all(0));

关于c++ - 如何将 cv::Scalar 分配给 cv::Mat?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48936700/

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