私は迅速なOpenCV質問をしました。キーポイントのベクトルをとり、それをCvSeqに変換することは可能ですか?キーポイントのベクトルをCvSeqに変換する
ありがとうございます。これらの関数で、あなたがやりたいことができ、あなたがそれを望むことができ、なぜ私にはわからないが、それは可能なはず
私は迅速なOpenCV質問をしました。キーポイントのベクトルをとり、それをCvSeqに変換することは可能ですか?キーポイントのベクトルをCvSeqに変換する
ありがとうございます。これらの関数で、あなたがやりたいことができ、あなたがそれを望むことができ、なぜ私にはわからないが、それは可能なはず
:
私は++次は、CおよびCの組み合わせであることを、追加する必要があります(中OpenCVの同様)
CreateSeq CvSeq * cvCreateSeq(INT seqFlags、INT headerSize、INT ELEMSIZE、CvMemStorage *ストレージ)
SeqPush のchar * cvSeqPush(CvSeq *配列、ボイド*素子= NULL)
ここはコードで、私はまだそれを試していませんが、...それが動作するかどう、私はちょうどそれを試しを与え、エラーがある場合は私に知らせてください
vector<KeyPoint> myKeypointVector; //Your KeyPoint vector
// Do whatever you want with your vector
CvMemStorage* storage = cvCreateMemStorage(0)
// By default the flag 0 is 64K
// but myKeypointVector.size()*(sizeof(KeyPoint)+sizeof(CvSeq)) should work
// it may be more efficient but be careful there may have seg fault
// (not sure about the size
CvSeq* myKeypointSeq = cvCreateSeq(0,sizeof(CvSeq),sizeof(KeyPoint),storage);
// Create the seq at the location storage
for (size_t i=0; myKeypointVector.size(); i++) {
int* added = (int*)cvSeqPush(myKeypointSeq,&(myKeypointVector[i]));
// Should add the KeyPoint in the Seq
}
cvClearMemStorage(storage);
cvReleaseMemStorage(&storage);
ジュリアン、
助けをありがとう。私はこのスニペットからキーポイントとマトリックス情報を追加することができました。 – Seb
私はSIFTdescriptors(ベクトル形式で取得)をflannFindPairs(CvSeq *を要求する)に変換するためにもそれを行う必要がありました。ありがとうございました –