计算机视觉的基础知识(持续补充)
注:
一、有些讲解起来篇幅过长,所以附上一些个人认为讲的比较好博客,还有一些专业名词我提及而没讲的可以自行搜索;
二、欢迎大家提问,虽然我也是在学习计算机视觉阶段,但是可以一起去尝试解决问题,然后补充问题的解决方案;
1.灰度图和彩色图的基本概念:
首先这里涉及一个概念就是通道,灰度图是单通道的,彩色图是多通道的(普遍是3通道)。
单通道描述的是灰度值,对于8bit的灰度图,可用0~255的灰度值描述图片的明亮程度,
0表示纯黑色,255表示纯白色。而彩色图通常用RGB(红绿蓝三原色,在opencv中是BGR)
去描述,彩色图由红绿蓝三种颜色叠加而成,即专业术语中的3通道。
2.卷积与卷积核:
卷积核实际上是一个n*m的权重矩阵(在图像处理中大部分卷积核是n*n,而且n一般为奇数即3*3,5*5,而在实际应用中根据需求卷积核可能会是n*m)
,卷积是两个变量在某范围内相乘后求和的结果。即以某个像素点为中心,求窗口内所有灰度值的和,以其作为中心像素新的灰度值。
推荐一篇博客:https://blog.csdn.net/chaipp0607/article/details/72236892
3.几种常见滤波的特点:
均值滤波:均值滤波是一种线性滤波器。优点在于效率高,缺点是计算均值会导致图像中的边缘信息以及特征信息“模糊”掉,
会丢失很多特征(原因是图像被平均,核越大,越模糊,特征被平均的范围增大)。
高斯滤波:高斯滤波也是线性滤波器,高斯滤波的卷积核是对称的,而且权值从中间到边缘递减,
由于二维高斯函数是旋转对称的,在各个方向上平滑程度相同,不会改变原图像的边缘走向,而且将中间作为重点。
中值滤波:中值滤波是非线性滤波器,对噪点处理效果比较好,效率方面比均值滤波差。
4.Vec3b:
常见于彩色图片,由于彩色图片的一个像素点是包含BGR三种颜色,就像三层颜色叠加(3通道)而成一个像素点,
所以存放一个彩色的像素点用Vec3b,它可以看作是vector<uchar, 3>。访问方式可以用at,即如以下三行访问BGR:
img.at<Vec3b>(14,25) [0]= 25;//B
img.at< Vec3b >(14,25) [1]= 25;//G
img.at< Vec3b >(14,25 [2]= 25;//R
5.如何遍历一张图片:
网上有5、6钟方法,但是我感觉实质上只有以下三种,其他的方法都是这三种延伸优化而来的:
(1)at (2)迭代器 (3)指针
他们的遍历效率指针形式最快,迭代器次之,at最慢。
遍历图片的博客推荐:https://blog.csdn.net/lyq_12/article/details/84316288
6.图像的边缘像素的处理方式:
补零填充、边界复制、镜像填充、块填充。
7.卷积核的系数:
卷积核的系数(权重)代表着图片需要关注的地方,一般而言,权重越大的地方亮度越亮。
对于几种滤波的系数问题,实际上是有对应的计算方法的,比如高斯滤波,是通过高斯模板然后再归一化而来的。
8.线性滤波与非线性滤波的区别:
9.什么是低频,高频:
低频即图像变化不明显,比如一个灰度图,相邻像素的区域如果灰度值差别不大,那么这个区域就是变化不明显,就是低频;
反之,高频就是变化明显的地方,一般是边缘。
10.卷积核有什么规律,为什么可以处理图像:
11.减法判断图像处理的差异:
假如自己实现了一个均值滤波的算法,怎么判断自己的算法和别人的算法处理结果差不多呢,
这个是肉眼难以判断的(如果肉眼能直接判断的话就更加不用说),那么可以通过对处理过的两张图片作减法知晓算法差异。
12.将彩色图转成灰度图研究的好处:
彩色图比灰度图具有更多的细节,但是如果只是需要做一些边缘提取,那么将彩色图转换成灰度图,不仅算法设计上容易了,处理难度也降低了。
13.3D传感器在拍照的时候数据丢失:
可以从拍照对象的结构和使用的3D传感器两方面作出思考,总体来讲数据丢失很有可能是光源无法反射到摄像机,无法拍摄到。
17.算法的效率优化可以从哪些方面入手:
18.opencv的sigmaX和sigmaY
19.怎么理解非极大值抑制和滞后阈值中的排除和连接: