2 xiaozhe08 xiaozhe08 于 2013.07.27 17:36 提问

vc++代码,缓存中存储图像像素的数据,如何将其保存成jpg格式的图片

是这样的,我通过Matrox采集卡获取到摄像机的模拟图像,通过mil中的函数,可以将其保存成bsq格式的图片(采集卡中自带函数存贮的图像类型byte型,可直接保存成bsq,见下面代码),通过读取存贮内存中的数据,可以得到图片的像素信息了。现在想将buf中的数据保存成jpg格式的,求高手解答。
void CCaijiDlg::OnSave()
{
// TODO: Add your control notification handler code here
CFile bsqfile;
CString strFileName;
CFileDialog dlg(FALSE,"*.bsq",NULL,NULL,"光谱图像(*.bsq)|*.bsq;*.BSQ|");
if (IDOK!=dlg.DoModal())return;
strFileName=dlg.GetPathName();
if(bsqfile.Open(strFileName,CFile::modeCreate | CFile::modeWrite)==0) return;

stopflag = false;
UpdateData();
MilImagesave0=new BYTE[768*576];//定义byte型的内存,byte*                              MilImagesave0 
MbufGet(MilImage0,MilImagesave0);// MilImagesave0放置的为字符形式的图像像素值,可以通过atoi转换,得到图像的像素值
bsqfile.Write(MilImagesave0,aaa);
bsqfile.Close();

}

2个回答

zhengfuzhe1124
zhengfuzhe1124   2013.07.29 22:36

建议找一个开源库,这种库多了去了!

wangyaninglm
wangyaninglm   Ds   Rxr 2015.01.18 12:55
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!