请输入您要查询的百科知识:

 

词条 cvLoadImage
释义

详细介绍

函数原型:IplImage* cvLoadImage( const char* filename, int flags=CV_LOAD_IMAGE_COLOR );

filename :要被读入的文件的文件名(包括后缀);

flags :指定读入图像的颜色和深度:

指定的颜色可以将输入的图片转为3信道(CV_LOAD_IMAGE_COLOR), 单信道 (CV_LOAD_IMAGE_GRAYSCALE), 或者保持不变(CV_LOAD_IMAGE_ANYCOLOR)。

深度指定输入的图像是否转为每个颜色信道每象素8位,(OpenCV的早期版本一样),或者同输入的图像一样保持不变。

选中CV_LOAD_IMAGE_ANYDEPTH,则输入图像格式可以为8位无符号,16位无符号,32位有符号或者32位浮点型。

如果输入有冲突的标志,将采用较小的数字值。比如CV_LOAD_IMAGE_COLOR | 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_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR。

函数cvLoadImage从指定文件读入图像,返回读入图像的指针。目前支持如下文件格式:

Windows位图文件 - BMP, DIB;

JPEG文件 - JPEG, JPG, JPE;

便携式网络图片- PNG;

便携式图像格式 - PBM,PGM,PPM;

Sun rasters - SR,RAS;

TIFF文件 - TIFF,TIF;

OpenEXR HDR 图片 - EXR;

JPEG 2000 图片- jp2。

cvSaveImage

保存图像到文件

int cvSaveImage( const char* filename, const CvArr* image );

filename

文件名。

image

要保存的图像。

函数cvSaveImage保存图像到指定文件。图像格式的的选择依赖于filename的扩展名,请参考cvLoadImage。只有8位单通道或者3通道(通道顺序为'BGR' )可以使用这个函数保存。如果格式,深度或者通道不符合要求,请先用cvCvtScale 和cvCvtColor转换;或者使用通用的cvSave保存图像为XML或者YAML格式。

特别提醒!由于TIFF文件格式比较混乱,难以统一,此函数读取TIFF图片可能会失败。

cvLoadImage函数使用方法

cvLoadImage( filename, -1 ); 默认读取图像的原通道数

cvLoadImage( filename, 0 ); 强制转化读取图像为灰度图

cvLoadImage( filename, 1 ); 读取彩色图

例:将读入图像强制转换为灰度图像显示

#include <highgui.h>

#include <cv.h>

int main(int argc, char **argv)

{

if (argc != 2)

return -1;

/*强制转换为灰度图像*/

IplImage *img = cvLoadImage(argv[1], 0);

cvNamedWindow("example");

cvShowImage("example", img);

cvWaitKey(0);

cvReleaseImage(&img);

cvDestroyWindow("example");

return 0;

}

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/2/27 9:19:14