您的位置:首页 > 其它

FlyCapture2相机的连接和图像采集

2015-11-18 16:12 435 查看
一 //在头文件public里面定义:
void DrawPicToHDC(IplImage *img, UINT
ID);//用于显示图片到图片控件,相关定义需要自己实现(网上大量资料)
PGRGuid guid;//用来存放相机地址
BusManager busMgr;//相机控制的实例
Error error = busMgr.GetCameraFromIndex(0, &guid);//索引相机并将地址存放在guid里面
Camera  cam;//声明一个相机实例
Image rawImage;//用于存放原始捕获图像
Image convertedImage;
IplImage *pimage = NULL;


二//添加初始化代码:
if (error != PGRERROR_OK)
{
AfxMessageBox(_T("相机检测失败!"));
}


三//添加控件响应函数:
error = cam.Connect(&guid);
if (error!= PGRERROR_OK)
{
AfxMessageBox(_T("相机连接失败!"));
}

// 开始采集图像
cam.StartCapture();
cam.RetrieveBuffer(&rawImage);//从内存取回图像存到rawImage里面

// 转换图像格式
rawImage.Convert(PIXEL_FORMAT_MONO8, &convertedImage);//将原始图像转换成单通道8位图像存放到convertedImage里面

//显示图像
pimage = cvCreateImage(cvSize(1024, 768), IPL_DEPTH_8U, 1);//定义并初始化一张可以用opencv显示的图像
(pimage->imageData) = (char*)(convertedImage.GetData());//将存在convertedImage里面的图像数据复制给pimage
DrawPicToHDC(pimage, IDC_PIC);//显示pimage
cvReleaseImage(&pimage);//释放图片
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: