opencv加载显示图像
学习目标:
- 加载图像(使用cv :: imread)
- 创建一个命名的OpenCV窗口(使用cv :: namedWindow)
- 在OpenCV窗口中显示图像(使用cv :: imshow)
代码
//
// main.cpp
// opencv_imread
//
// Created by istars on 2019/9/18.
// Copyright © 2019年 istars. All rights reserved.
//
//! [includes]
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <iostream>
//! [includes]
//! [namespace]
using namespace cv;
using namespace std;
//! [namespace]
int main( int argc, char** argv )
{
String imageName( "quan.png" ); // 默认地址
if( argc > 1)
{
imageName = argv[1];
}
Mat image;
image = imread( samples::findFile( imageName ), IMREAD_COLOR ); // 读入图像
if( image.empty() ) // 检查输入是否有效
{
cout << "Could not open or find the image" << std::endl ;
return -1;
}
namedWindow( "Display window", WINDOW_AUTOSIZE ); // 创建一个显示窗口
imshow( "Display window", image ); // 在其中显示我们的图像
waitKey(0); // 等待z窗口中的击键
return 0;
}
遇到的问题
在使用imread读入图像的时候,地址可以使用绝对地址,比如:
也可以使用相对路径,但是在使用的时候,我出现了找不到改资源的问题,然后使用手动添加到编译资源里:
点击加号,把我们的图片添加到里面,编译就可以运行了