C++ 计算Mat OpenCV子集的和

C++ 计算Mat OpenCV子集的和,c++,opencv,sum,mat,C++,Opencv,Sum,Mat,在OpenCV(C++)中,我们可以不使用任何循环直接计算Mat元素子集的和吗 示例:Mat b_hist,有1列和256行。如何计算从0到105行或从106到150行的行数之和 我知道sum(b_hist)会给出整个Mat的总和。我怎样才能得到一些子集?有没有类似的方法?有人能告诉你吗?你可以先用它来得到你想要的垫子,然后在上面求和: cv::Mat sub_mat_1 = mat(cv::Range(0, 106), cv::Range::all()); cv::Mat sub_mat_

在OpenCV(C++)中,我们可以不使用任何循环直接计算Mat元素子集的和吗

示例:Mat b_hist,有1列和256行。如何计算从0到105行或从106到150行的行数之和

我知道sum(b_hist)会给出整个Mat的总和。我怎样才能得到一些子集?有没有类似的方法?有人能告诉你吗?

你可以先用它来得到你想要的垫子,然后在上面求和:

cv::Mat sub_mat_1 = mat(cv::Range(0, 106),   cv::Range::all());
cv::Mat sub_mat_2 = mat(cv::Range(106, 151), cv::Range::all());

std::cout << cv::sum(sub_mat_1).val[0] << std::endl;
std::cout << cv::sum(sub_mat_2).val[0] << std::endl;
cv::Mat sub_Mat_1=Mat(cv::Range(0,106),cv::Range::all());
cv::Mat sub_Mat_2=Mat(cv::Range(106151),cv::Range::all());
你可以试试你的mat(cv::Rect(…)来引用submat吗