Failed assertion in aruco detectMarkers()
Hi,
I'm getting a following run-time error when using ArUco's aruco::detectMarkers():
OpenCV(3.4.1-dev) Error: Assertion failed (mtype == type0 || (((((mtype) & ((512 - 1) << 3)) >> 3) + 1) == ((((type0) & ((512 - 1) << 3)) >> 3) + 1) && ((1 << type0) & fixedDepthMask) != 0)) in create, file
/home/upboard/opencv/modules/core/src/matrix_wrap.cpp, line 1399
terminate called after throwing an instance of 'cv::Exception'
what(): OpenCV(3.4.1-dev) /home/upboard/opencv/modules/core/src/matrix_wrap.cpp:1399: error: (-215) mtype == type0 || (((((mtype) & ((512 - 1) << 3)) >> 3) + 1) == ((((type0) & ((512 - 1) << 3)) >> 3) + 1) && ((1 << type0) & fixedDepthMask) != 0) in function create
This error tells me absolutely nothing... I run the program in gdb and the backtrace goes as follows (it's simplified and without arguments):
cv::aruco::detectMarkers()
cv::aruco::_copyVector2Output()
cv::_OutputArray::create()
cv::_OutputArray::create()
cv::error()
If you need anything more to be able to tell me what's wrong I will get you the data of course.
Here is the full source code : https://pastebin.com/P1zhWFir
Thank you
i have never tried, but maybe
vector<vector<Point_<float>>> marker_corners;
should be astd::vector<std::vector<cv::Point2f>> markerCorners
? see tutorialSo:
Is just a typedef for
And changing the name of variable isn't something that can help.
no, meant double vector (in the sample) vs triple vector (yours)