OPenCV的概念详解及入门
摘要
不知在哪里看到OPenCV和嵌入式也是相关的,心中一直是这样想的,只要和嵌入式相关,都想了解一些,哪怕只是一点基础的概念。抱着这样的想法是可以学到不少知识的。
一、OpenCV的概念和结构
OpenCV:开源的计算机视觉库,一般用C和C++编写
OpenCV的结构共分为五个部分,分别是图像处理和视觉算法(CV)、机器学习库(ML)
图像和视频输入/输出库(HighGUI)、基本结构和算法,XML支持,绘图函数(CXCORE)以及CVAUx模块,其中前四个模块结构如图所示
在该图中并没有包括CVAUx,CVAUx中一般存放即将要淘汰的算法与函数(如基于嵌入式的隐式马尔可夫模型的人脸识别算法),同时也有一些实验性的算法和函数(如背景和前景的分割)。
二、一些常用的函数
显示图像
cvLaodImage():cvLaodImg()函数是一个高层调用接口,它通过文件名确认被加载的文件类型,并且该函数将自动分配图像数据 结构所需的内存。
cvShowImage():cvShowImage()用于在一个已经创建的窗口显示图像,第一个参数确定在哪个已存在的窗口显示,当该方法被 调用时,该窗口将被重新绘制,图像也会显示在窗口中。
cvWaitKey():cvWaitKey()函数的作用是使程序暂停,当参数设置为一个正数时,程序将暂停一段时间;当参数为负数或0时,程 将等待用户触发按钮操作。
三、小试牛刀-------对一张图片进行变换
首先我们举一个简单的例子,用于显示一个图像,那么
代码如下:
我们举一个简单的例子,用于显示一个图像,那么
代码如下: