opencv 的 imread 函数不能成功读取图片
cv::Matsrc;src=cv::imread("D:\\1.jpg",1);src.data就为空啊。上网搜索了很多办法,都试过了,但是没有解决,纠结3天了,要疯了...
cv::Mat src;
src = cv::imread("D:\\1.jpg",1);
src.data就为空啊。
上网搜索了很多办法,都试过了,但是没有解决,纠结3天了,要疯了,求解脱。 展开
src = cv::imread("D:\\1.jpg",1);
src.data就为空啊。
上网搜索了很多办法,都试过了,但是没有解决,纠结3天了,要疯了,求解脱。 展开
4个回答
展开全部
这是在windows平台下编程吧?用其他格式比如bmp试试呢?
imread不加第二个参数试试
看看src.empty()的返回值如何?
更多追问追答
追问
是windows平台,感觉有些坑。bmp也不好使。
Imread试了很多参数。
src.empty() = true
求指点
追答
建议自己编译一遍OpenCV。我自己遇到过在一台机器上编译的库文件,复制到另一台机器上(操作系统同,VS版本同)发现不好使的情形。
如果编译OpenCV对你来说太困难,建议自己从官网上重新down一份,然后重新设置一遍。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
切Release模式,可能是某些库不对,release的库才正常。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2014-01-16 · 知道合伙人软件行家
关注
展开全部
把链接的库改为opencv_calib3d2xxd.dll这种debug类型的。
追问
已经改了。都是d结尾的。可是不好使啊。
追答
#include "cv.h"
#include "highgui.h"
int main( int argc, char** argv )
{
IplImage* pImg; //声明IplImage指针
//载入图像
if( argc == 2 && (pImg = cvLoadImage( argv[1], 1)) != 0 )
{
cvNamedWindow( "Image", 1 ); //创建窗口
cvShowImage( "Image", pImg ); //显示图像
cvWaitKey(0); //等待按键
cvDestroyWindow( "Image" );//销毁窗口
cvReleaseImage( &pImg ); //释放图像
return 0;
}
return -1;
}
试试这个程序能运行吗?
如果不能,应该是OpenCV的设置有问题,建议重新设置一下。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询