1
我們可以直接計算而不使用任何循環OpenCV(C++)中Mat元素子集的總和嗎?計算Mat OpenCV子集的總和
示例:Mat b_hist,有1列256行。我如何計算0行到105行或106行到150行的行數?
我知道sum(b_hist)會給出整個Mat的總和。我怎樣才能得到一些子集?有沒有類似的方法?有人可以告訴它嗎?
我們可以直接計算而不使用任何循環OpenCV(C++)中Mat元素子集的總和嗎?計算Mat OpenCV子集的總和
示例:Mat b_hist,有1列256行。我如何計算0行到105行或106行到150行的行數?
我知道sum(b_hist)會給出整個Mat的總和。我怎樣才能得到一些子集?有沒有類似的方法?有人可以告訴它嗎?
你可先用cv::Range
以獲得您想要的子墊,然後總結他們:
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;
你可以嘗試yourMat(CV ::矩形(...))來引用子陣列 – Micka