如何用行、列和值初始化 cv::Mat 的数组?(在 c++ Class 中)
How to initialize array of cv::Mat with rows, cols and value?(In a c++ Class)
如何用 10 个 Mat 初始化数组?
我试过了:(它在功能上工作但在 class 中没有)
cv::Mat outIm[10];
for(int i=0; i<10; i++)
outIm[i] = Mat(rows, cols, CV_8UC3, cv::Scalar(0,0,0));
是否有类似下面的合法内容?
cv::Mat im[10](rows, cols, CV_8UC3); //not working
这是一种可能的解决方案:
class Foo
{
// Function which returns a zero initialised cv::Mat
static std:array<cv::Mat,10> MakeInitMatArray() {return {cv::Mat(rows, cols, CV_8UC3, cv::Scalar(0,0,0))};}
// In-class default-initializer
std:array<cv::Mat,10> outIm = MakeInitMatArray();
// ... rest of Foo class
};
如何用 10 个 Mat 初始化数组? 我试过了:(它在功能上工作但在 class 中没有)
cv::Mat outIm[10];
for(int i=0; i<10; i++)
outIm[i] = Mat(rows, cols, CV_8UC3, cv::Scalar(0,0,0));
是否有类似下面的合法内容?
cv::Mat im[10](rows, cols, CV_8UC3); //not working
这是一种可能的解决方案:
class Foo
{
// Function which returns a zero initialised cv::Mat
static std:array<cv::Mat,10> MakeInitMatArray() {return {cv::Mat(rows, cols, CV_8UC3, cv::Scalar(0,0,0))};}
// In-class default-initializer
std:array<cv::Mat,10> outIm = MakeInitMatArray();
// ... rest of Foo class
};