2016-10-15 8 views
-2

私はC++とopencvを初めて使っています。私は3つの行列を持っていますが、そのうちの3つの行列の中で、最大行列と最小行列を探したいのは与えられた行列のうち最大行列と最小行列を見つけよう

A = [1 2 3] B = [2 4 6] c = [4 8 12] Aは最小値で、Cはスカラー値が高い行列です。それを見つける方法はありますか?何か助けてください。

私は次のように試しましたが、間違っています。

+1

正確に別のマトリックスよりも大きいマトリックスを考えていますか? –

+0

@Nico Schertler私はそれを行う正確な方法を知らないが、私は小さな行列を見つける必要がある – Alan

+0

たぶん平均値を比較する? –

答えて

0

こんにちはOpenCVにはcv :: minとmax機能が実装されています!ここではサンプルの使用法です!お役に立てれば!

int _tmain(int argc, _TCHAR* argv[]) 
{ 
    //Fill Random Numbers in 3 Mats 
    Mat mTest(5,5,CV_8UC3),mMin,mMax; 
    randn(mTest,Scalar::all(125),Scalar::all(100)); 

    Mat mTest_3[3]; 
    split(mTest, mTest_3); 

    //Find Min and max from 3 Mats! 

    mMin=cv::min(mTest_3[0],cv::min(mTest_3[1],mTest_3[2])); 
    mMax=cv::max(mTest_3[0],cv::max(mTest_3[1],mTest_3[2])); 

    cout<< "Inputs 1: \n"<<mTest_3[0]<<"\n"; 
    cout<< "Inputs 2: \n"<<mTest_3[1]<<"\n"; 
    cout<< "Inputs 3: \n"<<mTest_3[2]<<"\n"; 

    cout<< "Min : \n"<<mMin<<"\n"; 
    cout<< "Max : \n"<<mMax<<"\n"; 

} 
関連する問題