资源描述:
《《opencv保存图象》word版》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、opencv保存图象直接使用cvSaveImage,这个函数.但是windows位图的图象格式是RGBt格式,而opencv的图象存储格式是BGR.这样导致保存的图象失真.在windows下查看图象好象变绿色了.所以在保存图象之前做一个颜色空间的转换.cvCvtColor(imgT,colorImg,CV_BGR2RGB);cvSaveImage("1.bmp",colorImg);实际上用cvCreateImage创建的IplImage就是图象的存储顺序就是BGR格式的,所有保存的时候需要做转换.HighGUI读取与保存图
2、像Wikipedia,自由的百科全书[编辑]cvLoadImage从文件中读取图像需要include"highgui.h"/*8bit,colororgray-deprecated,useCV_LOAD_IMAGE_ANYCOLOR*/#defineCV_LOAD_IMAGE_UNCHANGED-1/*8bit,gray*/#defineCV_LOAD_IMAGE_GRAYSCALE0/*8bitunlesscombinedwithCV_LOAD_IMAGE_ANYDEPTH,color*/#defineCV_LOAD_IM
3、AGE_COLOR1/*anydepth,ifspecifiedonitsowngray*/#defineCV_LOAD_IMAGE_ANYDEPTH2/*byitselfequivalenttoCV_LOAD_IMAGE_UNCHANGEDbutcanbemodifiedwithCV_LOAD_IMAGE_ANYDEPTH*/#defineCV_LOAD_IMAGE_ANYCOLOR4IplImage*cvLoadImage(constchar*filename,intflags=CV_LOAD_IMAGE_COLOR);
4、filename 要被读入的文件的文件名。flags 指定读入图像的颜色和深度:§指定的颜色可以将输入的图片转为3信道(CV_LOAD_IMAGE_COLOR)也即彩色(>0),单信道(CV_LOAD_IMAGE_GRAYSCALE)也即灰色(=0),或者保持不变(CV_LOAD_IMAGE_ANYCOLOR)(<0)。§深度指定输入的图像是否转为每个颜色信道每象素8位,(OpenCV的早期版本一样),或者同输入的图像一样保持不变。§选中CV_LOAD_IMAGE_ANYDEPTH,则输入图像格式可以为8位无符号,16位无符
5、号,32位有符号或者32位浮点型。§如果输入有冲突的标志,将采用较小的数字值。比如CV_LOAD_IMAGE_COLOR
6、CV_LOAD_IMAGE_ANYCOLOR将载入3信道图。CV_LOAD_IMAGE_ANYCOLOR和CV_LOAD_IMAGE_UNCHANGED是等值的。但是,CV_LOAD_IMAGE_ANYCOLOR有着可以和CV_LOAD_IMAGE_ANYDEPTH同时使用的优点,所以CV_LOAD_IMAGE_UNCHANGED不再使用了。§如果想要载入最真实的图像,选择CV_LOAD_IMAGE_AN
7、YDEPTH
8、CV_LOAD_IMAGE_ANYCOLOR。函数cvLoadImage从指定文件读入图像,返回读入图像的指针。目前支持如下文件格式:§Windows位图文件-BMP,DIB;§JPEG文件-JPEG,JPG,JPE;§便携式网络图片-PNG;§便携式图像格式-PBM,PGM,PPM;§Sunrasters-SR,RAS;§TIFF文件-TIFF,TIF;§OpenEXRHDR图片-EXR;§JPEG2000图片-jp2。[编辑]cvSaveImage保存图像到文件需要include"highgui.h"int
9、cvSaveImage(constchar*filename,constCvArr*image);filename 文件名,如果对应的文件已经存在,则将被复盖。image 要保存的图像。函数cvSaveImage保存图像到指定文件。图像格式的的选择依赖于filename的扩展名,请参考cvLoadImage。只有8位单通道或者3通道(通道顺序为'BGR')可以使用这个函数保存。如果格式,深度或者通道不符合要求,请先用cvCvtScale和cvCvtColor转换;或者使用通用的cvSave保存图像为XML或者YAML格式