当前位置:C++技术网 > 资讯 > opencv零基础入门:1.2 opencv代码使用简单介绍

opencv零基础入门:1.2 opencv代码使用简单介绍

更新时间:2015-08-26 19:13:12浏览次数:1+次

先解释上节课的例子:

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

using namespace cv;//使用opencv的名字空间,cv代表了computer  vision即:计算机视觉
using namespace std;//C++标准空间

int main(int argc, char **argv)
{
/*其中的Mat便是我们存放图片的变量,可以理解成自定义的类,使用的时候和int float无差别。其中包含了图像的基本属性,如本代码中的变量  srcImmg 为Mat类型,我们可以通过 int nCols = srcImge.cols;我们可以通过子函数 cols() 获取到这个图像的宽度,同理利用srcImge.raws()可以获取图像的高度,由于图像分为单纯的黑白图像和彩色图像,我们又把图像分为单通道和三通道,通过srcImage.channels()获取通道数.当我们需要将Mat格式的图像转换为其他格式,比如Qt的QImage格式,我们可以通过srcImg.data()获取到包含了图像像素信息的数组指针。具体请参照:http://www.opencv.org.cn/opencvdoc/2.3.2/html/modules/core/doc/basic_structures.html#mat(英文网页,读者自行参考)*/

Mat srcImg = imread("E:\\images\\baboon1.jpg");/*图片地址换成自己的,imread是图片的读取,填充到Mat格式的srcImg变量中。如果想生成黑白图(又称灰度图),输入参数: 0 ,即:imread("E:\\images\\baboon1.jpg",0);这样就可以了,默认为彩色的。*/
namedWindow("myWindow");/*此函数的作用是生成一个窗口,这个窗口用来显示图片*/
imshow("myWindow", srcImg);/*imshow()的含义是 image show 即:图片显示*/
waitKey(0);/*显示等待时间,如果没有的话,图片会一闪而过,,,定时显示的东西*/

return 0;
}


下面看第二个例子:

图像的初步处理

首先是遍历像素:四种遍历方法

//最高效的办法
 

以上是四种减色例子。像素遍历的办法。
同样,我们处理像素,进行数学运算查找物体,查找背景,查找前景,也通过遍历的方式实现的。

下篇文章我们开始介绍图像的简单处理。