opencvimread opencv imread函数

从网上找了个最简单的程序,读取并显示图片,竟然不能完成显示任务。然经努力,最终解决问题。

代码如下:

#include "cv.h"
#include "highgui.h"
#include <string>

#pragma comment(lib, "cv210.lib")
#pragma comment(lib, "cxcore210.lib")
#pragma comment(lib, "highgui210.lib")
#pragma comment( lib, "cvaux210.lib")

using namespacecv;//下面的所有cv 相关类型不用加上前缀了
using namespace std;

int main(int argc, char* argv[])
{
string file_name = "girl2.jpg";
Mat img =imread(file_name);//声明Mat 变量并调入照片
if(!img.data)//判断图片调入是否成功
return-1;//调入图片失败则退出

namedWindow("girl",CV_WINDOW_AUTOSIZE);// 创建窗口,并确定其为大小不可变类型窗口
imshow("girl",img);//显示图片。如果你不介意窗口大小可变,可以直接注释掉上一句。因为imshow 可以直接创建窗口
waitKey();//等待按键

return0;
}

运行程序,发现图片不显示。

调试发现

if(!img.data) // 判断图片调入是否成功
return -1; // 调入图片失败则退出

又从网上找了相同功能的代码如下:

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;
}

能完成任务。

继续调不能运行的代码。

怀疑文件路径有问题,改成绝对路径,依然不行。怀疑字符串问题,改成定义string,还是不行。

忽然想起试一下Release 版本,竟然能行。

乃想到可能Release版的库只能用于Release 版程序。

改成

#pragma comment(lib, "cv210d.lib")
#pragma comment(lib, "cxcore210d.lib")
#pragma comment(lib, "highgui210d.lib")
#pragma comment(lib, "cvaux210d.lib")

则可用于Debug 版程序,即对imread 这个函数而言,Debug版的库只能用于Debug版的程序。

结果如下:


  

爱华网本文地址 » http://www.aihuau.com/a/25101015/260412.html

更多阅读

round函数怎么用 精 java round函数怎么用

round函数怎么用 精——简介round函数通常用于四舍五入求值,通常函数中会传入两个参数,第一个参数是要四舍五入的数字。第二个参数就是位数,按此位数对第一个参数进行四舍五入。round函数使用的范围很广,下面就跟随小编一起来看看round

VBA编程中MsgBox函数怎么用 vba msgbox

VBA编程中MsgBox函数怎么用——简介Excel编程中的MsgBox函数用于输出一个对话框,该函数在编程调试以及输出结果方面具有极为重要的意义。下面小编就为大家讲解一下该函数的具体使用方法。VBA编程中MsgBox函数怎么用——方法/步骤

excel公式函数详解:19 yearfrac函数用法介绍

excel公式函数详解:[19]yearfrac函数用法介绍——简介一个良好的规划对于生活品质和工作效率都极其重要,在实际生活中我们往往需要计算一年有几个项目,每个项目需要花费多长时间。不同的工作其所花的中心也应该不一样。在excel中有一个

MATLAB 各种 对数函数 用法以及实例 matlab 对数函数

MATLAB 各种 对数函数 用法以及实例——简介在MATLAB运算当中,我们常常需要求对数,在编写M文件的过程中,我们也需要表示对数,下面我就通过一些示例介绍一下如何在MATLAB中求对数。MATLAB 各种 对数函数 用法以及实例——工具/原料MATLA

excel标准差函数 excel概率标准差函数

excel标准差函数——简介excel怎么求一系列数据的标准方差呢?请往下看excel标准差函数——工具/原料excelexcel标准差函数——stdev函数excel标准差函数 1、STDEV函数估算的标准偏差是基于样本的,这里标准偏差的计算使用“n-1”方

声明:《opencvimread opencv imread函数》为网友盗梦空间分享!如侵犯到您的合法权益请联系我们删除