2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > OpenCV:imwrite函数保存图片

OpenCV:imwrite函数保存图片

时间:2018-10-26 15:30:02

相关推荐

OpenCV:imwrite函数保存图片

imwrite函数功能:用于将图像保存到指定的文件,可以为各种格式的图像。

函数原型:

bool cv::imwrite(const String & filename,InputArray img,const std::vector<int> & params = std::vector<int>() )

函数参数:

filename:需要保存图像的文件名,要保存图片为哪种格式,就带什么后缀。img:要保存的图像。params:表示为特定格式保存的参数编码。

注意:

imwrite函数是基于文件扩展名选择图像的格式。通常,使用此功能只能保存8位单通道或3通道(带有BGR通道顺序)图像,但有以下例外:

对于PNG,JPEG2000和TIFF格式,可以保存16位无符号(CV_16U)图像。32位浮点(CV_32F)图像可以保存为PFM,TIFF,OpenEXR和Radiance HDR格式;使用LogLuv高动态范围编码(每像素4个字节)保存3通道(CV_32FC3)TIFF图像可以使用此功能保存带有Alpha通道的PNG图像。为此,创建8位(或16位)4通道图像BGRA,其中alpha通道最后。完全透明的像素应该将alpha设置为0,完全不透明的像素应该将alpha设置为255/65535。

如果格式,深度或通道顺序不同,请在保存之前使用Mat :: convertTo和cv :: cvtColor进行转换。或者,使用通用FileStorageI / O函数将图像保存为XML或YAML格式。

编码参数:

示例代码:

#include <opencv2/opencv.hpp>#include <iostream>int main(){cv::Mat srcImage;//加载图像srcImage = cv::imread("image.jpg",1);if (srcImage.empty()){std::cout << "图像加载失败!" << std::endl;return -1;}cv::imshow("主窗口", srcImage);//保存图像到当前项目cv::imwrite("save.jpg", srcImage);cv::waitKey(0);//销毁所有窗口cv::destroyAllWindows();return 0;}

代码结果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。