spcyk
工程师
工程师
  • 最后登录2018-06-09
  • 发帖数147
  • 金币757枚
  • 贡献勋章0枚
  • 社区居民
  • 忠实会员
阅读:811回复:5

利用halcon与MFC采集照片并保存

楼主#
更多 发布于:2016-03-30 20:01
最近遇到要将采集照片保存起来的想法,因此尝试着去更改编写,借鉴了http://blog.sina.com.cn/s/blog_4cac2ab80101sazr.html此处的文章。
总结出来的一点知识,与大家分享!

//保存采集到的图片
CString sFileName = "";
SYSTEMTIME sys1;
GetLocalTime(&sys1);
sFileName.Format("E:/Pic/%04d/%02d/%02d/%02d%02d%02d.bmp", sys1.wYear, sys1.wMonth, sys1.wDay, sys1.wHour, sys1.wMinute, sys1.wSecond);//将采集的时间作为了保存图片的名字
HTuple hv_FileName;
hv_FileName = sFileName.GetBuffer();

GetDlgItem(IDC_STATIC_PIC, &hwnd);
str.Format("采集第%d幅图像...", m_nCount + 1);
MessageLog(str);
GrabImage(&ho_Image, hv_AcqHandle);
if (FALSE == m_bShowWindow)
{
open_window(0, 0, 640, 480, (Hlong)hwnd,  "", "", &hv_WindowHandle);
HDevWindowStack::Push(hv_WindowHandle);
m_bShowWindow = TRUE;
}
if (HDevWindowStack::IsOpen())
{
DispObj(ho_Image, HDevWindowStack::GetActive());
}
MessageLog("采集图像成功!");
WriteImage(ho_Image, "bmp", 0, hv_FileName);//此处是保存图片



现在有bug,如果没有相应保存图片的文件夹会崩掉,现在正在优化,自动生成相应的文件夹!也请大家帮帮提供一下思路!
喜欢1

最新打赏:0人

俺家有田种
专家
专家
  • 最后登录2017-12-15
  • 发帖数353
  • 金币2123枚
  • 贡献勋章0枚
  • 最爱沙发
  • 忠实会员
  • 喜欢达人
  • 追星一族
  • 社区居民
沙发#
发布于:2016-05-10 22:34
学习~学习~学习~学习~学习~,顺便帮楼主顶一下
学习的同时不断分享!
alf929531643
初学者
初学者
  • 最后登录2018-04-02
  • 发帖数13
  • 金币54枚
  • 贡献勋章0枚
板凳#
发布于:2018-03-27 16:33
你好,请问一下你通过halcon导出的c++文件打开过ccd吗?
crazyBoy
高级工程师
高级工程师
  • 最后登录2018-06-22
  • 发帖数205
  • 金币1488枚
  • 贡献勋章0枚
  • 社区居民
  • 忠实会员
地板#
发布于:2018-03-27 17:02
hv_FileName = sFileName.GetBuffer();
sFileName.ReleaseBuffer();最好多线程处理
spcyk
工程师
工程师
  • 最后登录2018-06-09
  • 发帖数147
  • 金币757枚
  • 贡献勋章0枚
  • 社区居民
  • 忠实会员
4楼#
发布于:2018-04-09 10:57
alf929531643:你好,请问一下你通过halcon导出的c++文件打开过ccd吗?回到原帖
可以的
qingfengpu
初学者
初学者
  • 最后登录2018-06-03
  • 发帖数22
  • 金币88枚
  • 贡献勋章0枚
  • 社区居民
  • 忠实会员
5楼#
发布于:2018-04-16 15:21
学习~学习~学习~学习~学习~,顺便帮楼主顶一下
游客

返回顶部
支付

欢迎打赏,请选择打赏金额

  • 1元
  • 6元
  • 10元
  • 66元
  • 100元

支付即代表同意《本站支付协议》 有疑问请联系客服