批量读取图像的问题
(1) 如果是已知图像所在位置并且图像名称是有规律的,类似于001.jpg,002.jpg.........的,则通过一个循环就可以读进来,比如上面的例子,读取时的程序师这样的:
for i=0:9
gi=imread(strcat('newg', num2str(i),'.jpg'));
G(:,:,i+1)=gi;
end上面是用matlab做的,,请教一下,用VC怎么实现?
刚在基础类发了一个,http://topic.csdn.net/u/20100801/15/9cff8553-cdb5-4d59-90d4-167567b1c2c1.html发错了,分也给的少了,,重新发,,
(1) 如果是已知图像所在位置并且图像名称是有规律的,类似于001.jpg,002.jpg.........的,则通过一个循环就可以读进来,比如上面的例子,读取时的程序师这样的:
for i=0:9
gi=imread(strcat('newg', num2str(i),'.jpg'));
G(:,:,i+1)=gi;
end上面是用matlab做的,,请教一下,用VC怎么实现?
刚在基础类发了一个,http://topic.csdn.net/u/20100801/15/9cff8553-cdb5-4d59-90d4-167567b1c2c1.html发错了,分也给的少了,,重新发,,
sprintf函数
MultiByteToWideChar函数
GDI+库的使用
CString str;
str.Format(_T("%d.jpg"),id); //1.jpg
FormatPicName(str); //001.jpgimg.Load(str); //载入进来了,接下来看你自己了~
另外VC里面可以用对话框选中一堆文件,保存在一个列表里,然后批量操作
FormatPicName 这步怎么操作,我都不好意思了,真的不会操作的,,
请多多指教,,谢谢,,
我的8位bmp图片,,纯VC 没有DIB,OpenCV或者CImage等,如果能操作,也可以加,,
{
CString strPic;
strPic.Format("%03d.bmp", i);
HBITMAP hBitmap = (hBitmap )LoadImage(NULL, strPic, IMAGE_BITMAP, NULL, NULL, LR_LOADFROMFILE);
}
请教一下 HBITMAP 和HDIB的区别是什么?
得到HBITMAP hBitmap 后,怎么再得到HDIB m_hdib呢,,还是有点不懂,,
HDIB我没用过
得到HBITMAP hBitmap 后,怎么再得到HDIB m_hdib呢,,还是有点不懂,,
===========
HDIB应该不是系统提供的东西,应该是一个自定义的类型 。其它HBITMAP已经完全可以处理位图了。