我有一个小的OpenCV代码:
#include <iostream>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
using namespace cv;
int
main(int argc, char* argv[])
{
cv::Mat mask_img = cv::imread("image.png");
cv::imshow("window",mask_img);
return 0;
}
然而,在运行时,我收到以下错误:
OpenCV错误:断言失败(0&lt; = _dims&amp;&amp; _dims&lt; = CV_MAX_DIM)in setSize,file /home/box/OpenCV-2.4.3/modules/core/src/matrix.cpp,line 88抛出'cv :: Exception'实例后调用终止 what():/ home / box / OpenCV-2.4.3 / modules / core / src / matrix.cpp:88:错误: (-215)0&lt; = _dims&amp;&amp;函数setSize中的_dims&lt; = CV_MAX_DIM
中止
我在kubuntu linux上使用OpenCV 2.4.3,从源代码编译。
如何解决此错误?
我自己解决了,只需使用
g++ bla2.cpp `pkg-config opencv --cflags --libs` -o bla
除了-lopencv_core等
之外,不要使用自己的链接库答案 0 :(得分:-1)
您的图片是否正确读取?尝试在imread
之后添加以下代码行:if (image.empty()){ std::cerr << "Failed to read image" << std::endl; return 0;}