OpenCV中的Matlab最小等价

OpenCV中的Matlab最小等价,matlab,opencv,min,opencv4android,Matlab,Opencv,Min,Opencv4android,我正在寻找OpenCV中Matlab的min函数的等效函数,该特定功能取自: [M,I]=min__;查找 A和的最小值返回 它们在输出向量I中,使用 上一节中的输入参数 语法。如果出现最小值 多次,然后min返回 与第一个索引相对应的索引 发生 在我的具体案例中,我有两张图片。我想创建一个新的图像,其中每个像素的最小值wrt这两个图像,我需要存储一个贴图,即一个Mat对象或类似大小的东西,其中贴图的每个像素告诉我最小值是从第一个图像还是第二个图像中获取的 你可以把它们看成是n*m×2图像,在这

我正在寻找OpenCV中Matlab的min函数的等效函数,该特定功能取自:

[M,I]=min__;查找 A和的最小值返回 它们在输出向量I中,使用 上一节中的输入参数 语法。如果出现最小值 多次,然后min返回 与第一个索引相对应的索引 发生

在我的具体案例中,我有两张图片。我想创建一个新的图像,其中每个像素的最小值wrt这两个图像,我需要存储一个贴图,即一个Mat对象或类似大小的东西,其中贴图的每个像素告诉我最小值是从第一个图像还是第二个图像中获取的 你可以把它们看成是n*m×2图像,在这里我想取最小值的通道,并且希望能够告诉我从哪个通道得到这个值。 在OpenCV中有没有一种简单的方法可以做到这一点

编辑:我可以想出一些循环解决方案,但我需要我的解决方案尽可能高效,所以我想看看是否有一些内置的功能

EDIT2-我没有寻找一个解决方案,在那里我可以得到整个矩阵的绝对最小/最大值-我想要像素级的解决方案,包括一个告诉我从哪个图像中选择值的贴图。例如:

A = [1 2 ;
     3 4 ]
B = [5 6 ;
     1 2 ]

-->
min(A,B) = [1 2 ;
            1 2 ]
// these are the actual values ^


minInd(A,B) = [1 1 ;
               2 2 ]
// these are the indices ^ where 1 means it was taken from A, and 2 means it was taken from B

编辑:我原来的答案没用

怎么样

MatExpr min(const Mat& a, const Mat& b)
从邮局。如果从原始图像A和B开始,C=minA,B,那么可以定义D=A-C。如果Di,j==0,那么值源自A。如果Di,j>0,那么像素值源自B


如果A和B的值是浮动的,而不是整数,那么您就必须使用一些较小的公差来进行比较。

可能会重复感谢。我已经遇到了这个答案——它不是给了我整个矩阵中最大最小元素的最小位置吗?因为我想知道每个像素是从哪里来的,所以这对我没有帮助…对不起,我应该读完你的整个问题。。。。也不应该把问题标记为重复的。。。。部分回答了您的问题,但没有提供数据来自哪个阵列的信息…更改了答案,希望现在能有所帮助