怎么求Mat矩阵的最大最小值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么求Mat矩阵的最大最小值相关的知识,希望对你有一定的参考价值。

找矩阵a每列的最大值 [max_a,index]=max(a); 或者[max_a,index]=max(a,[],1); 其中max_a是最大的数值,index是最大的数值所处的位置。
例如: a = 1 2 3 2 4 5 6 1 3 >> [max_a,index]=max(a) max_a = 6 4 5 index = 3 2 2 找矩阵a每行的最大值。
参考技术A 楼上说的不对哈,OpenCV中的Mat类型需要用cv::minMaxIdx函数

opencv里面 怎么把多个Mat合成为一个Mat?例如有100个1行128列的矩阵,怎么合成一个100行128列的矩阵?求

大神指导?求代码 谢谢

#include <opencv2/opencv.hpp>
using namespace cv;
int main( int argc, char **argv )

//这个矩阵是合成矩阵
Mat combineMat;

//假设这个是即将有100个1行128列的vector<Mat>
//具体的数据自己读入
vector<Mat> vMatSet( 100 );

/*
这里读入数据到vMatSet里,每个vMatSet[i]都是一行128列,例如:
for( int i = 0; i < 100; ++i )
vMatSet[i] = imread( "图像文件" );
*/

//下面要将多个Mat合成到comineMat里
for( int i = 0; i < 100; ++i )

combineMat.push_back( vMatSet[i] );


return 0;


希望能帮到你!
参考技术A 在Matlab中将两个矩阵合并非常方便,按行合并,如A=[B C]。按列合并如A=[B ;C]
OpenCV中有vconcat和hconcat函数,用于矩阵的合并与图像的拼接。
vconcat(B, C, A); // 等同于A=[B; C]
hconcat(B, C, A); // 等同于A=[B C]
写个循环,运用上面的vconcat函数,即可解决您的问题。

以上是关于怎么求Mat矩阵的最大最小值的主要内容,如果未能解决你的问题,请参考以下文章

matlab 求出一维矩阵中最小值,且求出该最小值在矩阵中的位置,求各位帮帮忙

c语言编程:一个2*3矩阵,求最大值,最小值

如何在Matlab求绝对值

matlab 怎么找出二维矩阵中最大值的位置

matlab的编程问题,求关于平均数,最小值,最大值,方差等简单的数据处理的程序。

数学函数区间的最小值与最大值怎么算