两种比较常用的方式。
C#直接连接相机获取图像(GIGE)
在获取图像前,需要先创建一个相机对象,再使用这个相机对象的Acquire方法拍摄照片。
ICogAcqFifo macqfifo;//定义相机对象类型 CogImage8Grey myImage;//定义照片类型(这里是黑白的) CogFrameGrabberGigEs mf2 = new CogFrameGrabberGigEs();//获取已连接相机列表 ICogFrameGrabber mber = mf2[0];//取相机列表中的第一个相机 int trigNum; macqfifo = mber.CreateAcqFifo(mber.AvailableVideoFormats[0],CogAcqFifoPixelFormatConstants.Format8Grey,0,true);//创建相机对象 myImage = (CogImage8Grey)macqfifo.Acquire(out trigNum);//使用相机对象的acquire方法拍照 cogRecordDisplay1.Image = myImage;//使用cogRecordDisplay控件显示出来
C#+VisionPro获取图像
使用visionPro生成的vpp来获取图像。首先创建一个vpp文件,并在job中加入CogAcqFifoTool工具然后初始化这个工具,再保存文件。
CogJobManager mymanger; //定义vpp管理器 String path="C:\\Users\\Administrator\\Desktop\\1111.vpp";//vpp文件路径 mymanger = (CogJobManager)CogSerializer.LoadObjectFromFile(path);//加载vpp CogToolGroup mytg = mymanger.Job(0).VisionTool as CogToolGroup;//获取job中的工具组 CogAcqFifoTool mytll = mytg.Tools["CogAcqFifoTool1"] as CogAcqFifoTool;//获取工具组中的CogAcqFifoTool1工具 mytll.Run();//运行工具 cogRecordDisplay1.Image = mytll.OutputImage;//将工具图像显示在控件上