做视觉项目时,我们经常需要保存图像,以备查验。前面也讲过使用cogrecoreddisplay
控件来实现保存图像的方法,具体查看这篇文章:VisionPro保存cogRecordDisplay图像。但我们不是一定会使用到cogrecoreddisplay
控件,为了更加方便的保存图像,visionpro也提供了专门的方法,下面一起来看看。
C#代码
首先声明引用,并引入相关文件。
复制
using Cognex.VisionPro.ImageFile;
这里我只写了本文的核心引用文件,其它相关命名空间请参考前面的文章,或者自行查阅手册。
加载图像
复制
CogImageFile ImageFile1= new CogImageFile(); CogImage8Grey Image; ImageFile1.Open("c:\\image.bmp", CogImageFileModeConstants.Read); Image =(CogImage8Grey) ImageFile1[0]; ImageFile1.Close();
使用CogImageFile
对象的open
方法打开图像,注意第二个参数,CogImageFileModeConstants
常量的read
属性。
保存图像
复制
CogImageFile ImageFile2 =new CogImageFile(); ImageFile2.Open("c:\\image_copy.bmp", CogImageFileModeConstants.Write); ImageFile2.Append(Image); ImageFile2.Close();
保存图像主要使用CogImageFile
对象的append
方法插入图像。官方对于此方法的描述如下:
Appends an image to the end of an image file.
翻译为:将图像附加到图像文件的末尾。
注意:使用此方法加载或者保存图像,需要调用对象的close方法关闭,据我猜测应该是采用流的方式实现的。
评论 (5)
CogImageFile ImageFile1 = new CogImageFile();
CogImage8Grey Image;
ImageFile1.Open("c:\\User\\PC\\Desktop\\图片保存\\image.bmp", CogImageFileModeConstants.Read);
Image = (CogImage8Grey) ImageFile1[0];
ImageFile1.Close();
CogImageFile ImageFile2 = new CogImageFile();
ImageFile2.Open("c:\\User\\PC\\Desktop\\图片保存\\image_copy.bmp", CogImageFileModeConstants.Write);
ImageFile2.Append(Image);
ImageFile2.Close();
代码不报错,运行也不报错,但是运行后没有文件夹内没有保存图片,Imagefile工具里需要设置什么吗?我选的类型是保存为数据库文件(第一次接触VP,大神别嫌烦)