[学习OpenCV攻略][011][显示图片]

学习资料:

http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/tutorials.html

 

包含头文件

core.hpp:包含了基本的定义和库

highgui.hpp:包含了基本的输入输出操作

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

创建一个矩阵对象来存储和载入图像数据

Mat image;

imread函数的第一个参数时载入图像的文件名,第二个参数时图像的格式。格式可以为:

CV_LOAD_IMAGE_UNCHANGED (<0) loads the image as is (including the alpha channel if present)

CV_LOAD_IMAGE_GRAYSCALE ( 0) loads the image as an intensity one

CV_LOAD_IMAGE_COLOR (>0) loads the image in the RGB format

image = imread(argv[1], CV_LOAD_IMAGE_COLOR);   // Read the file

创建窗口

CV_WINDOW_AUTOSIZE is the only supported one if you do not use the Qt backend. In this case the window size will take up the size of the image it shows. No resize permitted!

CV_WINDOW_NORMAL on Qt you may use this to allow window resize. The image will resize itself according to the current window size. By using the | operator you also need to specify if you would like the image to keep its aspect ratio (CV_WINDOW_KEEPRATIO) or not (CV_WINDOW_FREERATIO).

namedWindow( "Display window", CV_WINDOW_AUTOSIZE );// Create a window for display.

显示图片

imshow( "Display window", image );   // Show our image inside it.

等待显示

waitKey(0);   // Wait for a keystroke in the window

编译运行

./DisplayImage HappyFish.jpg
时间: 2024-10-23 21:14:48

[学习OpenCV攻略][011][显示图片]的相关文章

[学习OpenCV攻略][007][缩小图片]

cvPryDown(输入图片,输出图片) 根据输出图片的大小,把输入图片进行压缩 cvPryUp(输入图片,输出图片) 根据输出图片的大小,把输入图片进行放大 #include "cv.h" #include "highgui.h" IplImage *doPyrUp(IplImage *in){ //assert(in->width%2 == 0 && in->height%2 == 0); //IplImage *out = cvCr

[学习OpenCV攻略][006][平滑图片]

cvCreateImage(图片大小,像素位数,通道数) 创建图片,根据输入的图片大小,各个通道像素点的位数,和通道数.像素点宏IPL_DEPTH_8U cvGetSize(图片) 得到图片的大小信息 cvSmooth(输入图片,输出图片,平滑方式,平滑宽,平滑高) 输出经过平滑处理后的图片,平滑方式宏CV_GAUSSIAN #include "cv.h" #include "highgui.h" void smooth_example(IplImage *imag

[学习OpenCV攻略][001][Ubuntu安装及配置]

学习环境: 1.操作系统 Ubuntn 2.学习书籍 <学习OpenCV> 3.OpenCV版本 opencv-1.0.0 root登入配置 Ubuntn默认不允许root用户登入,在登录窗口只能看到普通用户和访客用户.我们做开发需要经常用到root权限,所以把root用户设置成自动登录用户. 1.以普通用户登录后,在终端中输入: sudo passwd root,给root用户添加密码. 2.su root,切换到root用户. 3.vim /etc/lightdm/lightdm.conf

[学习OpenCV攻略][016][RedHat下安装OpenCV]

安装环境 操作系统: Red Hat Enterprise Linux Server 6.3 相关软件: OpenCV-2.3.1a.tar.bz2.cmake-3.5.1.tar.gz 下载地址: OpenCV: http://downloads.sourceforge.net/project/opencvlibrary/opencv-unix/2.3.1/OpenCV-2.3.1a.tar.bz2 CMake: https://cmake.org/files/v3.5/cmake-3.5.1

[学习OpenCV攻略][005][视频播放控制]

cvSetCaptureProperty(视频,属性,属性值) 设置视频的属性,属性可以是宏CV_CAP_PROP_POS_FRAMES 视频帧的位置 cvGetCaptureProperty(视频,属性) 得到视频的属性值,属性可以是宏CV_CAP_PROP_FRAMES_COUNT视频帧数,CV_CAP_PROP_FRAME_WIDTH视频的宽度,CV_CAP_PROP_FRAME_HEIGHT cvCreateTrackbar(滚动条名称,窗口名称,滑动条位置,总帧数,回调函数) 在窗口中

[学习OpenCV攻略][004][播放AVI视频]

cvCreateFileCapture(文件路径) 创建一个影音文件录像机,返回值为CvCapture类型,用于读取视频文件 cvQuerFrame(视频) 将下一帧视频文件载入内存,当CvCapture被释放时,每一帧对应的内存会被释放,所以不需要cvReleaseImage(&frame); cvReleaseCapture(视频) 释放CvCapture结果的内存空间,同时也会关闭所有打开的视频文件相关的句柄. #include "highgui.h" int main(

[学习OpenCV攻略][012][读取、修改、保存图像]

使用 imread 读取图像,图像路径为 imageName ,图像按BGR格式读取. image = imread( imageName, CV_LOAD_IMAGE_COLOR); 将RGB图像转化为灰度格式. cvtColor( image, gray_image, CV_BGR2GRAY ); 使用函数 imwrite 将得到的灰度图像 gray_image 保存到硬盘.程序结束时,该灰度图像将会被释放. imwrite( "../../images/Gray_Image.jpg&quo

[学习OpenCV攻略][009][从摄像机读入数据]

cvCreateCameraCapture(设备ID) 创建一个摄像机视频,返回值是CvCapture*类型.设备ID表示设备的编号,如果有多个摄像机设备,-1表示随机选择一个设备. #include "cv.h" #include "highgui.h" int main(int argc, char **argv){ cvNamedWindow("hello", CV_WINDOW_AUTOSIZE); CvCapture *capture;

【OpenCV练习】简单显示图片的代码

今天依照网上的教程尝试了一下最基本的图片显示. 首先想说一下编译时出现的问题,开始时在编译时会出现无法识别cvReleaseImage的情况,是因为没有在配置中包含相应的core的库文件. 加进去就解决这个问题了. 另一个问题是在编译通过以后提示程序拒绝访问,经网上查找好像和英雄联盟有关..貌似是LOL关闭了什么调试功能,总之重启一下电脑就好了. 最后放上相应代码: #include <iostream> //#include <opencv/cv.h> //#include &l