【发布时间】:2014-08-06 18:47:04
【问题描述】:
我在 C++ 中使用 OpenCV 在图像上创建多维垫(用作累加器)。
我这样创建 3d 累加器:
const int accumSize[] = {sx, sy, sr};
cv::Mat accum(3, accumSize, CV_64F, cv::Scalar::all(0));
我需要从这个累加器中提取一个n*n*n ROI,这样我就可以使用cv::minMaxIdx 获得每个ROI 中的最大值。
由于这是 3d,因此使用 cv::Rect 获取 ROI 的常用方法不起作用。也没有:
accum(cv::Range(x1,x2), cv::Range(y1,y2), cv::Range(r1,r2));
有人知道如何轻松获得 3d 子矩阵,而无需显式分配并逐个元素地复制它吗?
【问题讨论】:
标签: c++ opencv multidimensional-array roi