环境说明:
OpenCV 3.2
VS2015
Win7
#include"opencv2/core/core.hpp"
#include"opencv2/highgui/highgui.hpp"
#include
usingnamespacecv;
intmain(intargc,char**argv){
if(argc!=2){
printf("输入参数错误!");
}
FILE*f=fopen(argv[1],"rb");
if(NULL==f){
printf("open file error!");
}
unsignedchar*mImgData=(unsignedchar*)malloc(1400*1100);
if(fread(mImgData,1,1400*1100, f)==0){
printf("Fread error");
};
/*
这里矩阵的行列随便定义,但是矩阵行列乘积要足够大,
要能装下解压后的图片文件,jpg文件解压后会是原文件的N多倍,
建议使用jpg文件的宽高作为矩阵的行列。最好事先知道所读取得图片分辨率,
不然矩阵太小了,解压会失败。
*/
CvMatmCvmat=cvMat(1400,1100, CV_8UC1,mImgData);
IplImage*IpImg=cvDecodeImage(&mCvmat,1);
longgray=0;
//opencv 2.0 CvMat->Mat数据转换
//Mat b = Mat(mat,true);
//opencv3.0 CvMat->Mat数据转换
//Mat image = cvarrToMat(pp);
cvNamedWindow("image");
cvShowImage("image", IpImg);
cvWaitKey(0);
cvReleaseImage(&IpImg);
free(mImgData);
return0;
}