Ask Your Question

ORB::detectAndCompute Debug Assertion Failed (5 code lines)

asked 2017-01-06 06:10:32 -0500

deshan gravatar image

updated 2017-01-06 10:23:33 -0500

Hi All,

I am trying to implement a simple keypoint detector. When calling detectAndCompute it gives me Debug assertion fail error. I am on windows 10 + Opencv 3.0. Same code works in Android + Opencv 3.0

Pls help. Following is my code.

cv::Ptr<cv::Feature2D> keypointDetector  = cv::ORB::create(750);

cv::Mat cvImage = cv::imread("a.jpg", CV_LOAD_IMAGE_GRAYSCALE);

std::vector<cv::KeyPoint> keypoints;
cv::Mat descriptors;

keypointDetector->detectAndCompute(cvImage, cv::noArray(), keypoints, descriptors); // fail here
edit retag flag offensive close merge delete


please add exact error msg.

also, check cvImage.empty() after imread() (that's probably the cause)

berak gravatar imageberak ( 2017-01-06 06:14:43 -0500 )edit

Thanks berak, I have checked. Image is ok.

Another thing is I am using Visual studio 2015 but using OpenCV3.0 precomplied libs of VC12. (OpenCV3.0\opencv\build\x86\vc12\lib) can it be the issue? Because AKAZE and ORB planar tracking opencv example gives me the same error

deshan gravatar imagedeshan ( 2017-01-06 07:38:32 -0500 )edit

.. you forgot the error msg ..

berak gravatar imageberak ( 2017-01-06 08:11:06 -0500 )edit

It's _BLOCK_TYPE_IS_VALID(pHead->nBlockUse) screen shot added to original message

deshan gravatar imagedeshan ( 2017-01-06 10:16:09 -0500 )edit

ok. buffer overflow, UB.

unfortunately, noone cares about 3.0 anymore, so the proper thing would be: update to 3.2 (or github master branch, even), try to replicate the situation, if it still crashes, file official bugreport.

berak gravatar imageberak ( 2017-01-06 10:20:06 -0500 )edit

Thanks Berek, seems i should do this. NEW: When I run the exe outside visual studio no problem, do not know why

deshan gravatar imagedeshan ( 2017-01-06 10:25:17 -0500 )edit

ohhh, missed it - ofc. you cannot use vs2015 with vc12 libs !

please use the vc14 ones (if they are there)

berak gravatar imageberak ( 2017-01-06 10:27:24 -0500 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2017-01-06 12:32:35 -0500

deshan gravatar image

That was the reason, i built opencv 3.0 with vs 2015 and everything ok now. Thanks berak

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2017-01-06 06:10:32 -0500

Seen: 864 times

Last updated: Jan 06 '17