OpenCV是一个基于开源发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
首先,学习Opencv数字图像处理,我们需要最想知道的是图像在计算机中,在程序中到底是什么形式。在计算机世界里,所有的图像都可以简化为数值矩阵。像matlab数字图像处理一样,一幅灰度图像就是一个二维的数值矩阵,矩阵中的每一个元素就代表此位置的像素点的灰度值,一幅彩色图像,以RGB彩色图像为例,它就像三个二维矩阵叠加起来一样,每一层分别代表R,G,B三个通道的值。而在Opencv中,灰度图像使用二维矩阵表示,彩色图像也使用二维矩阵表示,只不过此时的二维矩阵中的每一个元素包含三个通道(三个数值元素),分别为R,G,B分量。所以,在Opencv中,所有的图像都