微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > 射频无线通信设计 > 之OpenCV加载图片实验

之OpenCV加载图片实验

时间:10-02 整理:3721RD 点击:

   OpenCV是什么我就不再具体介绍了,前面我们已经搭建好了基本的开发环境,debian下OpenCV编译安装可以参考前面帖子,这里包括后面将以简单的小例子来进行实验,一起体验并借助龙板学习OpenCV

   这里先利用OpenCV载入一张图片并进行显示,其实也就是读取图片

代码如下:

  1. #include <opencv2/opencv.hpp>  //头文件
  2. using namespace cv;  //包含cv命名空间

  3. void main( )
  4. {   
  5.         // 【1】读入一张图片,载入图像
  6.         Mat srcImage = imread("33.jpg",0);
  7.         // 【2】显示载入的图片
  8.         imshow("pic",srcImage);
  9.         // 【3】等待任意按键按下
  10.         waitKey(0);
  11. }

复制代码


具体效果如下:

说明:

OpenCV中的C++类和函数都是定义在命名空间cv之内的,有两种方法可以访问。

第一种是,在代码开头的适当位置,加上usingnamespace cv;这句。

第二种是,在使用OpenCV类和函数时,都加入cv::命名空间。

上面代码我们采用的是第二种

cv::Mat类是用于保存图像以及其他矩阵数据的数据结构。

最简单的图像载入和显示只需要3句代码,分别对应了三个函数,分别是:

imread( ), namedWindow( )以及imshow()。

如果需要加入滑条什么的则必然需要用namedWindow( ),这里仅仅显示图片,所以imshow( )足以

代码很简单,我们编辑好后就可以编译了,步骤如下

  1. g++ main.cpp -o main -lopencv_core -lopencv_highgui -lopencv_imgproc

复制代码

其中g++是对cpp文件进行编译,-o指定编译后可执行文件的名称,-l是需要链接的opencv支持库,代码没问题便可以显示上面效果了。

好了,后面还会为大家分享下OpenCV里面关于图像腐蚀和均值滤波等相关例子


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top