OpenCV:如何找到特定维度的最小元素?

时间:2011-09-29 21:45:24

标签: opencv

我是OpenCV的新用户。我正在使用2.3.2版本(来自SVN存储库)。 我有一个特定的3维cv::Mat结构,它是288 x 384 x 10.这代表一个288 x 384图像,其他10个通道代表一个视差值。我想找到最小元素及其位置。 OpenCV中有一个minMaxElem函数,它不适用于多维数组。知道如何在OpenCV中使用通道拆分功能来执行此操作吗?

1 个答案:

答案 0 :(得分:3)

您可以使用minMaxIdx函数在多维数组上查找最小值/最大值:

void minMaxIdx(InputArray src, double* minVal, double* maxVal,
                      int* minIdx=0, int* maxIdx=0, InputArray mask=noArray());

非零minIdxmaxIdx应该指向具有足够长度的数组来存储所有维度的索引(3维垫子为3)。
minValmaxVal用于返回单个最小/最大值。如果您不需要值,它们可以为0.