8

基本的に私はこのような3つのマットを持っています:

Mat descriptors1
Mat descriptors2
Mat descriptors3

各記述子が次のようにロードされた場所:

extractor->compute( object, kp, descriptors );

すべての記述子を単一の Mat に結合するにはどうすればよいですか (一方のマットをもう一方のマットに追加します)。

例:

Mat fullDesc = descriptors1 + descriptors2 + descriptors3;
4

1 に答える 1

15

あまり効果的ではありませんが、短いです:

descriptors1.push_back(descriptors2);
descriptors1.push_back(descriptors3);

その後descriptors1、連結になります。


また、文書化されていない関数がありますvconcat

void vconcat(const Mat* src, size_t nsrc, OutputArray dst);
void vconcat(InputArray src1, InputArray src2, OutputArray dst);
void vconcat(InputArrayOfArrays src, OutputArray dst);
于 2012-06-24T18:55:20.923 に答える