0

配列要素を含む1つのベクトル(特徴ベクトル)を作成しようとしています。

最初の反復arr1でサイズの配列があるとします。この配列要素をサイズの行列nx1に追加する必要があります。CvMatfeatureVect2*n x 1

次の反復では、arr2サイズの配列があります。次に、この配列を行からへ(1ベースのインデックスを使用しnx1て)に追加する必要があります。featureVectn+12*n

私が持っているとしましょう

int arr1[4] = {1, 2, 3, 4};
int arr2[4] = {5, 6, 7, 8};

CvMat *featureVect; 

ここで、結果を次のようにしたいと思います(ここfeatureVectで、は1列の行列です)

featureVect = {1, 2, 3, 4, 5, 6, 7, 8};// featureVect size is 8x1;
4

1 に答える 1

1

OpenCVでC++を使用している場合は、このMatクラスをお勧めします。それで、

Mat featureVect(8,1,CV_32S); //CV_32s <=> int (32-bit signed integer)
const int n = 4;
for(int i = 0; i < n; ++i) 
{
   featureVect.at<int>(i,0)     = arr1[i];
   featureVect.at<int>(i+n,0) = arr2[i];
}
于 2012-05-14T13:15:44.227 に答える