Visual studio 表达方式:;(_Ptr_user&;(_BIG_ALLOCATION_ALIGNMENT-1))==0”&&;0
我正在使用VisualStudio和OpenCV。我有一个简单的代码,可以检测关键点并计算两幅图像的描述符Visual studio 表达方式:;(_Ptr_user&;(_BIG_ALLOCATION_ALIGNMENT-1))==0”&&;0,visual-studio,opencv,Visual Studio,Opencv,我正在使用VisualStudio和OpenCV。我有一个简单的代码,可以检测关键点并计算两幅图像的描述符 void extractfeatures::extractKeypoints(cv::Mat _frame, cv::Mat _object) { //Extract keypoints cv::Ptr<cv::FeatureDetector> detector; cv::Ptr<cv::AKAZE> akaze = cv::AKAZE::c
void extractfeatures::extractKeypoints(cv::Mat _frame, cv::Mat _object)
{
//Extract keypoints
cv::Ptr<cv::FeatureDetector> detector;
cv::Ptr<cv::AKAZE> akaze = cv::AKAZE::create();
std::vector<cv::KeyPoint> object_keypoints, background_keypoints;
cv::Mat desc1, desc2;
akaze->detectAndCompute(_object, cv::noArray(), object_keypoints, desc1);
akaze->detectAndCompute(_frame, cv::noArray(), background_keypoints, desc2);
}
void extractfeatures::extractKeypoints(cv::Mat\u框架,cv::Mat\u对象)
{
//提取关键点
cv::Ptr检测器;
cv::Ptr akaze=cv::akaze::create();
std::矢量对象关键点,背景关键点;
cv::材料描述1,描述2;
akaze->detectAndCompute(_对象,cv::noArray(),对象_关键点,desc1);
akaze->detectAndCompute(_-frame,cv::noArray(),background_-keypoints,desc2);
}
代码运行良好,与OpenCV Akaze文档中给出的代码几乎相同:
但是,当它退出函数时,它会给我以下错误:
表达式:“(_Ptr_user&(_BIG_ALLOCATION_ALIGNMENT-1))==0”&&0
提前谢谢你 由于向量内存有限,关键点太多。 如果关键点约为10000:
object_keypoints.reserve(10000);
background_keypoints.reserve(10000)
我曾经遇到过这样的问题。结果证明,该程序没有链接正确的opencv的dll。当我将正确的dll(如opencv_world310d.dll)移动到程序的调试文件夹时,此错误消失 我也遇到了同样的问题。我看到这主要与VS2015捆绑在一起,而不是出现在VS2013中。你有类似的观察吗?你找到解决办法了吗?