El uso de FeatureDetector en OpenCV da una violación de acceso
Necesito encontrar y hacer coincidir puntos de características en imágenes estéreo. Por lo tanto, quiero comparar los diferentes algoritmos de detección de características que son compatibles con OpenCV 2.4.5. pasando "SURF", "SIFT", etc. a la función.
El fragmento de código:
#include "opencv2/opencv.hpp"
#include <opencv/highgui.h>
#include <opencv2/nonfree/features2d.hpp>
using namespace cv;
using namespace std;
...
void DisparityAnalysis::detectKeyPoints(Mat1b leftImageGrey, Mat1b rightImageGrey, string algorithmName)
{
Ptr<FeatureDetector> detector = FeatureDetector::create(algorithmName);
detector->detect(leftImageGrey, keypoints_1);
detector->detect(rightImageGrey, keypoints_2);
}
El error:
Unhandled exception at 0x770b15de in DisparityAnalysis.exe: 0xC0000005: Access violation reading location 0x00000000.
Ya busqué soluciones y encontré esta:Lectura de violación de acceso en FeatureDetector OpenCV 2.4.5 La diferencia que he reconocido es que usan cv :: initModule_nonfree () al principio. Pero al copiarlo en mi código no se compila porque no se encuentra el identificador. ¿Alguna sugerencia?