1. 背景
- 视觉是信息最多的感官,比如周围的世界是怎样的,如何和世界交互
- 因此半个世纪来,计算机科学家一直在想办法让计算机有视觉
- 因此诞生了「计算机视觉」这个领域
2. 图像
- 是像素网格,每个像素通过红、绿、蓝三种基色来定义,
- 通过组合三种颜色的强度,可以得到任何颜色,也叫 RGB 值
3. 最简单的计算机视觉算法
最适合拿来入门的,是跟踪一个物体,比如一个粉色的球
4. 颜色跟踪算法
- 一个个像素搜索,但是这种方法不适合占多个像素的特征
5. 检测垂直边缘的算法:
- 把图片转成灰度
- 某像素是垂直边缘的可能性取决于左右两边像素的颜色差异程度,左右像素的差别越大,这个像素越可能是边缘,如果色差很小,就不是边缘
- 把「核」用于照片中的每个像素的时候,垂直边缘的像素值很高,水平边缘几乎看不见
6. 核/过滤器
- 是一个操作的数学符号
- 里面的数字用来做像素乘法
- 总和存到中心像素里
- 作用:可以做很多种图像转换。例如:锐化图像、模糊图像,也可以匹配特定形状,
7. 卷积
- 把「核」应用于像素块,这种操作叫「卷积」
8. Prewitt 算子
- 即(垂直和水平)边缘增强的核
- 以发明者姓名命名
9. 维奥拉·琼斯 人脸检测
- 单个核找出脸的图像的能力很弱,但组合在一起会相当准确
10. 卷积神经网络
- 如今的热门算法
- 用很多个神经元来处理图像数据,每个核都会输出一个新图像,本质上是被不同的「核」处理了,输出后会被后面一层神经元处理,卷积卷积再卷积,不断重复,然后增加复杂度,直到某一层把所有特征放到一起,
- 不是非要有很多层,但是一般有很多层来识别复杂物体核场景,所以算是「深度学习」
11. 维奥拉·琼斯 和 卷积神经网络的使用场景
- 识别人脸
- 识别手写文字
- 在 CT 扫描中发现肿瘤
- 监测马路是否拥堵
12. 情感识别算法
- 识别出人脸后,可以用更专用的计算机视觉算法来定位面部标志,比如眉毛、鼻尖和嘴角
- 有了标志点,判断眼睛张没张开就很容易了,原理就是判断点和点之间的距离,
- 眉毛相对眼睛的位置,可以代表惊喜或者喜悦
- 根据嘴巴的标志点,检测出微笑也很简单
- 上面这些场景都可以使用「情感识别算法」来识别,让电脑知道你是开心、忧伤、沮丧或者困惑等等,然后计算机给出合适的行为,
13. 生物识别
- 面部标记点,也可以捕捉脸的形状,比如两只眼睛之间的距离,以及前额有多高
- 场景: 手机解锁、使用摄像头跟踪人