vlambda博客
学习文章列表

揭密图像识别 | 计算机在看图的时候,它在看什么?

图像识别



本期专家:Ivy,软件工程师,负责嵌入式软件以及数字化项目开发,大家眼里披荆斩棘的女程序媛。


计算机在看图的时候,它在看什么?

文/Ivy


图像识别技术是指对图像进行处理,识别各种不同模式的目标和对象的技术。

揭密图像识别 | 计算机在看图的时候,它在看什么?

随着数字化浪潮的到来,越来越多的数据以图片为载体存在。面对海量的数据,就要求我们具备能快速从中提取信息的能力。

图像识别就是我们需要的技术,它就像给计算机装上了眼睛,可以和人类一样从图像中快速获取信息,给数字化智能化提供更多的可能性。目前图像识别技术已经被广泛应用,比如人脸识别自动驾驶。这些看似高大上标签背后的逻辑其实并不难。

当我们人类用眼睛看一样东西的时候,会先在大脑的记忆中搜索匹配,完成识别。当计算机识别一张图片也是类似的过程,它会提取图片中主要特征,与程序中的规则进行比较。这些特征和规则可以来自预设,也可以通过学习获得。前者就是单纯的图像处理识别,后者通常应用于人工智能中。可能很多朋友看到人工智能这几个词就感到非(失)常(去)有(兴)趣,其实就用简单的图像处理已经能解决很多问题了。

计算机“看”一张图片时,它究竟在看什么呢?


当一张图片被无限放大的时候,可以发现它是由一个个像素点组成的。对计算机来说,每张图片就是不同像素值的排列组合。如果我们用不同的数字代表不同的颜色,图像就可以表示为一个矩阵。当计算机去“看”一张图片的时候,其实就是对矩阵中的数字进行运算,找到一些特征值。其中,颜色特征和轮廓特征是比较基础和常用的两种。

揭密图像识别 | 计算机在看图的时候,它在看什么?


颜色


图片中每一个像素值代表的就是一种颜色。不同类型格式的图片采用的颜色模式不同,比如RGB、HSV、HSL等。其中最常用的像素颜色描述方式就是RGB(红、绿、蓝)空间,通过这三原色的组合能描述任何颜色。颜色相关的处理中,可以直接通过像素值进行图像分割,提取目标信息。也可以进行直方图(颜色分布)等统计分析,提取关键信息。

揭密图像识别 | 计算机在看图的时候,它在看什么?


轮廓


轮廓是图像很重要的一个外部特征。对于人来说,很容易能够区分物体的边界,也就是那些颜色发生明显变化的地方。这一点对于机算机也是一样,它也是根据像素值的变化率(梯度)来找出边缘。在这一步中,一般会将三通道的RGB图片转为单通道的灰度图,仅保留一个通道。通过轮廓识别算法获得了图形的边缘轮廓之后,就可以进行定位或匹配,或者更进一步的应用。

揭密图像识别 | 计算机在看图的时候,它在看什么?

我们掌握了以上两点其实已经可以解决很多问题了,不信?你看看这个案例!

在设计测试PCB过程中的某个环节,工程师需要从以下这样的图片中提取特定颜色连接线的连接关系。这本是一个非常枯燥且容易出错的工作,要找到指定颜色的所有线段,还有列出它们连接关系。利用图像识别技术就可以轻松完成这个工作,用到的就是颜色和轮廓特征。例如其中针对连接线的操作:

  1. 利用颜色特征将指定颜色像素从图片中分割出来

  2. 灰度化:减少信息量

  3. 获取图形边缘轮廓信息

揭密图像识别 | 计算机在看图的时候,它在看什么?
揭密图像识别 | 计算机在看图的时候,它在看什么?
揭密图像识别 | 计算机在看图的时候,它在看什么?

除了以上这些,还有其他图片处理及特征提取的方法,需要根据具体的处理需求选择。现有的一些图像算法库也都提供了很好的支持。

这样一个小功能可以替代原本枯燥耗时的工作,大大提高了工作效率。通过这些数字化智能化的手段对价值流的可能环节进行优化,也能让工程师把更多的时间投入到核心设计工作中。对于开发团队来说,也得到了互相学习的机会,能更好地理解业务中的需求。


博世汽车电子中国区

| 因为有你 我们更精彩 |

编辑 | Ivy

扫描二维码关注,欢迎点赞、留言