OPENCV 3. 图像的加载、保存与显示
来源:互联网 发布:营销网络地图代码 编辑:程序博客网 时间:2024/06/07 13:45
a. 加载图像
CVAPI(IplImage*) cvLoadImage( const char* filename, int iscolor CV_DEFAULT(CV_LOAD_IMAGE_COLOR));
第2个参数为加载图像的方式,如灰度图像,原图等;
//enum//{///* 8bit, color or not */// CV_LOAD_IMAGE_UNCHANGED =-1,///* 8bit, gray */// CV_LOAD_IMAGE_GRAYSCALE =0,///* ?, color */// CV_LOAD_IMAGE_COLOR =1,///* any depth, ? */// CV_LOAD_IMAGE_ANYDEPTH =2,///* ?, any color */// CV_LOAD_IMAGE_ANYCOLOR =4//};
如果想以图像最原始的状态进行加载,则可设该值为:
CV_LOAD_IMAGE_ANYDEPTH|CV_LOAD_IMAGE_ANYCOLOR
b.保存文件
/* save image to file */CVAPI(int) cvSaveImage( const char* filename, const CvArr* image, const int* params CV_DEFAULT(0) );
c.显示图像
/* create window */CVAPI(int) cvNamedWindow( const char* name, int flags CV_DEFAULT(CV_WINDOW_AUTOSIZE) );
name:窗口的标志,如果已经有同名窗口,则该函数什么也不干。
/* display image within window (highgui windows remember their content) */CVAPI(void) cvShowImage( const char* name, const CvArr* image );
/* wait for key event infinitely (delay<=0) or for "delay" milliseconds */CVAPI(int) cvWaitKey(int delay CV_DEFAULT(0));
显示一幅图像时,需要等待一定的时间,否则窗口会一闪而过而来不及看清;
下面的例子加载一副图像,并在指定位置插入一幅LOGO的图像:
#include<iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; int main() { // 加载两幅图像 IplImage * pData = cvLoadImage("D:\\Image\\Desert.jpg", CV_LOAD_IMAGE_COLOR); IplImage * pLogo = cvLoadImage("D:\\Image\\Penguins.jpg", CV_LOAD_IMAGE_COLOR); //显示这两幅图像 cvNamedWindow("Desert",CV_WINDOW_AUTOSIZE ); cvShowImage("Desert", pData); cvNamedWindow("pLogo",CV_WINDOW_AUTOSIZE ); cvShowImage("pLogo", pData); // 设置ROI区域,进行拷贝和还原ROI区域 cvSetImageROI(pData, cvRect(10, 10, pLogo->width, pLogo->height)); cvCopy(pLogo, pData); cvResetImageROI(pData); // 保存图像 int p[3] = {CV_IMWRITE_JPEG_QUALITY, 100, 0}; cvSaveImage("D:\\Image\\Desert-Penguins.jpg", pData, p); // 显示图像 cvNamedWindow("desert",CV_WINDOW_AUTOSIZE ); cvShowImage("desert", pData); cvWaitKey(0); // 释放内存资源 cvReleaseImage(&pData); cvReleaseImage(&pLogo); return 0;}
阅读全文
0 0
- OPENCV 3. 图像的加载、保存与显示
- OpenCV--图像的加载、显示、修改与保存
- opencv学习(二)之图像的加载、显示、保存
- OpenCV 2 学习笔记(4): 加载,显示和保存图像,Mat类与IplImage类
- opencv 图像的读取显示和保存
- OpenCV--图像的载入-显示-保存
- OpenCV-图像的读取、显示,保存
- 图像显示与加载——opencv
- 图像显示与加载——opencv
- 小强学Python+OpenCV之-1.1图像加载、显示、保存
- Opencv-Python:图像尺寸、图像的读取、显示、保存与复制
- opencv加载显示图像
- OpenCV图像的加载和显示
- opencv读取、显示、保存图像
- Python下使用OpenCV——图像显示与保存
- 【拜小白opencv】1图像简单显示与保存
- 图像显示与保存
- Python OpenCV显示图像并保存图像
- 原码,反码,补码详解
- Linux下使用bufferevent实现tcp代理功能
- [零基础易语言教程]1-1 什么是易语言
- c++primer5 题3.36
- URI和URL的区别
- OPENCV 3. 图像的加载、保存与显示
- 算法分析与设计丨第十一周丨Sicily(15)—— 1003. 最近的0(Hard)
- SAS学习笔记(三)
- 生成窗口最大数值(每日一道算法题)
- spring源码学习之路---IOC实现原理(二)
- MySql进阶篇之命令大全
- 【云星数据---Apache Flink实战系列(精品版)】:Apache Flink高级特性与高级应用013-Flink在批处理中常见的sink和source001
- 数据结构笔记
- DataBinding介绍