当前位置:   article > 正文

OpenCV简单入门_cv::quality

cv::quality

什么是OpenCV

OpenCV是一个基于BSD许可(开源)发行的轻量级跨平台计算机视觉库。它可以运行在Linux、Windows、Android和Mac OS操作系统上。它由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

    OpenCV用C++语言编写,它的主要接口也是C++语言,但是依然保留了大量的C语言接口。该库也有大量的Python、Java MATLAB的接口。

 

颜色与图像存储原理

三原色原理和RGB色彩模式

    色彩模式是数字领域表示颜色的一种算法,自然界中所有颜色的光都可以由红(R)绿(G)蓝(B)三种光按照不同比例混合而成。据此原理,计算机屏幕上每个像素点可以被划分为红绿蓝三种色彩通道,分别表示这三种颜色的强度,这就是RGB色彩模式。在RGB色彩模式下,每个通道用一个字节大小的空间来储存,故每个通道所表示的颜色强度可量化为0到255,当所有通道值均为0时,该像素点显示为纯黑色,反之,当所有通道值均为255时,该像素点显示为纯白色。

    对于一幅图像,即为一堆像素点排列为一个矩阵,而每个像素点均由RGB三个通道组成,大多数图片格式下,三通道的顺序为RGB,而在OpenCV中,顺序为BRG。一幅n×m大小的图片,用OpenCV读取后,在内存中的排布方式如下图所示:

按照矩阵顺序依次存储每个像素点的值,每个像素点包含BGR三个通道,总内存消耗为n×m×3 bytes,这种排布方式称为HWC。除此之外,还有一种排布方式为,依次先存储每个像素点的R通道,存完之后再依次存储每个像素点的G通道,最后存储每个像素点的B通道,内存消耗与HWC相同,只是排列方式不同,这种排列方式被成为CHW,当前流行的深度学习前向框架caffe采用的输入就是CHW的格式

 

OpenCV常用数据结构与接口

(1)数据结构

1.Mat

    Mat是OpenCV自定的数据结构,代表的是矩阵(Matrix),如上一章所讲,图像其实也是一种二维矩阵,所以在OpenCV中,不论进行矩阵运算,或是图像处理,都是使用Mat类型进行管理。

    Mat主要分为矩阵头和矩阵数据,其中矩阵头中存储着矩阵的基本信息,主要包括矩阵长、宽、像素形态、像素深度、通道数、色彩模式、以及指向矩阵数据的指针等。

    OpenCV是一个图像处理库,它包含大量的图像处理功能。为了解决计算挑战,大多数时候会使用到库的多个功能。因此,将图像传递给功能是常见的用法,为了避免制作不必要的大图像副本,OpenCV使用引用计数系统。这个方法是每个Mat对象都有自己的头,但是通过使它们的矩阵指针指向相同的地址,矩阵可以在它们的两个实例之间共享。此外,复制操作符只会复制矩阵头和指针,而不是数据本身。

  1. int main(int argc, char* argv[])
  2. {
  3.     cv::Mat A, C;
  4.     A = cv::imread(argv[1], IMREAD_COLOR)
  5.     cv::Mat B(A);                        
  6.     C = A;                   
  7. }

对于上述所有Mat对象,最后指向相同的矩阵数据。

如果想复制矩阵本身,可以使用OpenCV提供的cv :: Mat :: clone()和cv :: Mat :: copyTo()函数。

 

对于一个Mat对象,获取其最基本的信息的接口如下:

矩阵高(行数):Mat.rows

矩阵宽(列数):Mat.cols

矩阵通道数:int Mat::channels() const

像素深度:int Mat::depth() const

           像素深度返回值如下:

CV_8U

每个像素占8位,无符号整型(uchar)

CV_8S

每个像素占8位,有符号整型(char)

CV_16U

每个像素占16位,无符号整型(ushort)

CV_16S

每个像素占16位,有符号整型(short)

CV_32S

每个像素占32位,有符号整型(int)

CV_32F

每个像素占32位,浮点型(float)

CV_64F

每个像素占64位,浮点型(double)

像素形态:int Mat::type() const

       

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/673222
推荐阅读
相关标签
  

闽ICP备14008679号