OpenCV学习笔记 第一篇 显示图像

OpenCV学习笔记 第一篇 显示图像

关于opencv的配置,大家自己找教程配置,本笔记侧重于对opencv基础入门的学习,本节学习opencv的一些简单语句,如何利用opencv来加载图像,显示图像,来学习一些简单基础的opencv的语句,推荐一本opencv的经典书《学习OpenCV》中文版


    -

一,主要函数介绍

1.1 cvLoadImage

函数功能:载入图像
函数cvLoadImage从指定文件读入图像,返回读入图像的指针。
函数原型:
IplImage* cvLoadImage( const char* filename, int flags=CV_LOAD_IMAGE_COLOR );
函数详解:
filename :要被读入的文件的文件名(包括后缀);
支持多种图像,如(JPEG文件 - JPEG, JPG, JPE、便携式网络图片- PNG、Windows位图文件- BMP, DIB等多种格式)
flags :指定读入图像的颜色和深度:
指定的颜色可以将输入的图片转为3通道(CV_LOAD_IMAGE_COLOR), 单通道 (CV_LOAD_IMAGE_GRAYSCALE), 或者保持不变(CV_LOAD_IMAGE_ANYCOLOR)。
也可以写成如下:
cvLoadImage( filename, -1 ); 默认读取图像的原通道数
cvLoadImage( filename, 0 ); 强制转化读取图像为灰度图
cvLoadImage( filename, 1 ); 读取彩色图

1.2cvNamedWindow

函数功能:创建窗口
函数原型:cvNamedWindow( const char* name, int flags=CV_WINDOW_AUTOSIZE );
函数详解:name 窗口的名字,它被用来区分不同的窗口,并被显示为窗口标题。
flags 窗口属性标志。可以选择CV_WINDOW_AUTOSIZE(1)和0两种值。CV_WINDOW_AUTOSIZE这个标志被设置后, 如果用户不能手动改变窗口大小,窗口大小会自动调整以适合被显示图像(参考cvShowImage)。0表示以固定的窗口尺寸显示图像。
函数cvNamedWindow创建一个可以放置图像和trackbar的窗口。被创建的窗口可以通过它们的名字被引用。 如果已经存在这个名字的窗口,这个函数将不做任何事情,以后为大家介绍trackbar的学习

1.3cvShowImage

函数功能:显示图像
函数原型:void cvShowImage( const char* name, const CvArr* image );
函数详解:name 窗口的名字。
image 被显示的图像。
函数cvShowImage 在指定窗口中显示图像。如果窗口创建的时候被设定标志CV_WINDOW_AUTOSIZE,那么图像将以原始尺寸显示;否则,图像将被伸缩以适合窗口大小

1.4cvWaitKey

函数功能:不断刷新图像,返回值为当前键盘按键值,默认值为零
函数原型:C++: int waitKey(int delay=0)
函数详解,等待按键,使图像一直显示

1.5cvDestroyWindow

函数功能:销毁一个窗口
函数原型:void cvDestroyWindow( const char* name );
函数详解:name 要被销毁的窗口的名字。
函数cvDestroyWindow销毁指定名字的窗口。

1.6cvReleaseImage

函数功能:销毁已定义的IplImage指针变量,释放占用内存空间
函数原型:void cvReleaseImage( IplImage** image );

二,示例程序演示

#include <opencv2/opencv.hpp>  
int main()  
{  
const char *pstrImageName = "123456.jpg";//注意,需要将图片放在所建工程的路径下,名字和格式需一致
const char *pstrWindowsTitle = "原图";

IplImage *pImage = cvLoadImage(pstrImageName, 1); //从文件中读取图像 
cvNamedWindow(pstrWindowsTitle,1 );  //创建窗口
cvShowImage(pstrWindowsTitle, pImage); //在指定窗口中显示图像  

cvWaitKey();  //等待按键事件  

cvDestroyWindow(pstrWindowsTitle);  //毁坏窗口
cvReleaseImage(&pImage);  //破坏图像
return 0;  
}  

程序运行结果如下

这里写图片描述

这次介绍的一些基本语句很简单,也是本人学习opencv的笔记一些整理,希望能够为我等菜鸟简单入门,随着学习的深入,也会逐渐学习,谢谢大家观看,欢迎提意见,谢谢

猜你喜欢

转载自blog.csdn.net/qq1376725255/article/details/45080263