vc6.0如何实现图像采集?
准备采用VC6.0、DALSA线阵相机和MATROX图像采集卡做机器视觉工业检测。程序设计中遇到一个实在想不通的问题。VC6.0应用程序中应该接收到卡里数据准备好的消息后...
准备采用VC6.0、DALSA线阵相机和MATROX图像采集卡做机器视觉工业检测。程序设计中遇到一个实在想不通的问题。VC6.0应用程序中应该接收到卡里数据准备好的消息后才接收图像数据。网上大多提供的是定时采集,而我的这个应该是硬件(图像采集卡)触发后采集。这个如何实现呀?或者是消息映射函数如何做呢?
也就是图像采集卡每准备好一帧图像后,程序再采集,每秒中可能20~35帧图像。这个过程VC6.0如何实现? 展开
也就是图像采集卡每准备好一帧图像后,程序再采集,每秒中可能20~35帧图像。这个过程VC6.0如何实现? 展开
展开全部
用vfw.h和vfw32.lib
在StdAfx.h中加上#include<vfw.h>和#pragma comment(lib,"vfw32.lib")就可以了用这个了
这里面有很多的宏可以调用,你可以再自己去看看!
HCURSOR CCapture2Dlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CCapture2Dlg::OnFormat()
{
// TODO: Add your control notification handler code here
capDlgVideoFormat(m_hCapWnd);
}
void CCapture2Dlg::OnSource()
{
capDlgVideoSource(m_hCapWnd);
}
void CCapture2Dlg::OnCompress()
{
capDlgVideoCompression(m_hCapWnd);
}
void CCapture2Dlg::OnCapture() //------------------------???
{
AfxBeginThread(video, this );
}
void CCapture2Dlg::OnFreezed()
{
capPreview(m_hCapWnd,FALSE);// 定帧
}
void CCapture2Dlg::OnImage()
{
capGrabFrameNoStop(m_hCapWnd);
capEditCopy(m_hCapWnd);
}
void CCapture2Dlg::OnStop()
{
char szNewFile[] = "NewFile.bmp";
capCaptureStop(m_hCapWnd,szNewFile);
}
void CCapture2Dlg::OnDisconnect()
{
capDriverDisconnect(m_hCapWnd);
}
UINT CCapture2Dlg::video(LPVOID param)
{
CCapture2Dlg * pTaskMain = (CCapture2Dlg *) param;
pTaskMain->capture();
return 0 ;
}
void CCapture2Dlg::OnSave()
{
char szNewFile[] = "NewFile.avi";//保存的文件的名称
capFileSaveAs(m_hCapWnd,szNewFile);
}
void CCapture2Dlg::capture()
{
SetCursor(LoadCursor(NULL, IDC_ARROW));
capCaptureSequence(m_hCapWnd); // 捕捉到文件
}
在StdAfx.h中加上#include<vfw.h>和#pragma comment(lib,"vfw32.lib")就可以了用这个了
这里面有很多的宏可以调用,你可以再自己去看看!
HCURSOR CCapture2Dlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CCapture2Dlg::OnFormat()
{
// TODO: Add your control notification handler code here
capDlgVideoFormat(m_hCapWnd);
}
void CCapture2Dlg::OnSource()
{
capDlgVideoSource(m_hCapWnd);
}
void CCapture2Dlg::OnCompress()
{
capDlgVideoCompression(m_hCapWnd);
}
void CCapture2Dlg::OnCapture() //------------------------???
{
AfxBeginThread(video, this );
}
void CCapture2Dlg::OnFreezed()
{
capPreview(m_hCapWnd,FALSE);// 定帧
}
void CCapture2Dlg::OnImage()
{
capGrabFrameNoStop(m_hCapWnd);
capEditCopy(m_hCapWnd);
}
void CCapture2Dlg::OnStop()
{
char szNewFile[] = "NewFile.bmp";
capCaptureStop(m_hCapWnd,szNewFile);
}
void CCapture2Dlg::OnDisconnect()
{
capDriverDisconnect(m_hCapWnd);
}
UINT CCapture2Dlg::video(LPVOID param)
{
CCapture2Dlg * pTaskMain = (CCapture2Dlg *) param;
pTaskMain->capture();
return 0 ;
}
void CCapture2Dlg::OnSave()
{
char szNewFile[] = "NewFile.avi";//保存的文件的名称
capFileSaveAs(m_hCapWnd,szNewFile);
}
void CCapture2Dlg::capture()
{
SetCursor(LoadCursor(NULL, IDC_ARROW));
capCaptureSequence(m_hCapWnd); // 捕捉到文件
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
AiPPT
2024-09-19 广告
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图...
点击进入详情页
本回答由AiPPT提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询