Ask Your Question

Revision history [back]

how to calculate SIFT descriptor for MSER keypoints?


I want to use SIFT descriptors to represent a region detected by MSER, here is my code:

MserFeatureDetector detector();
vector<KeyPoint> keypoints;
detector.detect( src_gray, keypoints );

Mat descriptors, mask( src_gray.rows, src_gray.cols, CV_8UC1, 255 );
cv::SIFT detector = SIFT::SIFT(); 
detector( src_gray, mask, keypoints, descriptors, true );

I get the descriptors successfully, but the keypoints of MSER won’t have octave, scale, and angle. However, I put them into SIFT extraction forcibly to get descriptors. Thus, i think the descriptors finally I get, will lost the invariant to illumination changes but still have scale & rotational invariance. Is my opinion correct? Or, it is wrong way to use?