摘要:
图像二值化 简介 图像二值化就是将图像像素的灰度值设置成只有最大值和最小值两种取值,使整个图像呈现出 “非黑即白” 的效果,是最简单的图像分割的方法 应用举例:从一副图像中利用阈值分割出我们需要的物体部分(当然这里的物体可以是一部分或者整体)。这样的图像分割方法是基于图像中物体与背景之间的灰度差异, 阅读全文
摘要:
多通道分离与合并 分离 函数split()用于将多通道的图像分离成若干单通道的图像 split(const Mat & src, Mat * mvbegin) // 原型一 split(IuputArray m, OutputArrayOfArrays mv) // 原型二 src:待分离的多通道图 阅读全文
摘要:
图像色彩空间转换 cv::cvtColor() cv::cvtColor()函数用于将图像从一个颜色空间转换为另一个颜色空间,并将转化之后的结果通过值返回 cv::cvtColor(src, dst, code) scr:待转化颜色空间的图像 dst:颜色空间转化后的目标图像 code:颜色空间转化 阅读全文
摘要:
常用色彩空间 色彩空间是指我们如何组合颜色分量以编码给定的颜色 RGB 简介 RGB颜色空间是一种加法色彩空间,其中颜色是通过红色、绿色和蓝色值的线性组合获得的。这三个通道通过撞击表面的光量相关联 在 RGB 颜色空间的基础上增加第四个通道 Alpha (表示颜色的透明度),就会形成 RGBA 颜色 阅读全文
摘要:
API 此处,使用#include指令包含 opencv.hpp 头文件,实际上,它包含所有的 OpenCV 头文件。通过包含单个该文件,不再需要包含其他文件 所有的 OpenCV 类和函数都在cv命名空间中,因此,在源代码中需使用cv::前缀或using namespace cv编译语句 #inc 阅读全文
摘要:
at方法 基于Mat对象的随机像素访问API实现,通过行列索引方式遍历每个像素值 void method_1(Mat & img) { int h = img.cols; int w = img.rows; for (int row = 0; row < w; row++) { for (int c 阅读全文
摘要:
Mat类 简介 Mat类用来保存矩阵类型的数据信息,包括向量、矩阵、灰度或彩色图像等数据。 Mat类分为矩阵头(元数据)和指向存储数据的矩阵指针两部分。矩阵头中包含矩阵的尺寸、存储类型、地址和引用次数等。矩阵头的大小是一个常数,不会随着矩阵尺寸的大小而改变 构造 常用 cv::Mat() cv::M 阅读全文
摘要:
OpenCV 简介 OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库。OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研究领域中免费使用。OpenCV可用于开发实时的图像处理、计算机视觉以及模式识别程 阅读全文
摘要:
在这个小测验里,我让你们求一个2x3矩阵的行列式。 让我感到非常可笑的是,你们当中竟然有人尝试去做。 ——摘自mathprofessorquotes.com,作者佚名 讨论不同维数之间的变换是完全合理的,比如一个二维向量到三维向量的变换 同之前一样,如果网格线保持平行且等距分布,并且原点映射为自身, 阅读全文
摘要:
引言 硬件和软件的区别是什么? 硬件是看的见摸得着的设备,比如计算机主机、显示器、键盘等。而软件是计算机所执行的程序,即指令和数据。软件本身是看不见的。 硬件(Hardware)代表 “硬的东西” ,而软件(Software)代表 “软的东西” 。是硬的还是软的取决于眼睛能否看得到,或者实际上能否用 阅读全文