计算机在看图的时候,它在看什么?
图像识别技术是指对图像进行处理,识别各种不同模式的目标和对象的技术。
随着数字化浪潮的到来,越来越多的数据以图片为载体存在。面对海量的数据,就要求我们具备能快速从中提取信息的能力。
图像识别就是我们需要的技术,它就像给计算机装上了眼睛,可以和人类一样从图像中快速获取信息,给数字化智能化提供更多的可能性。目前图像识别技术已经被广泛应用,比如人脸识别、自动驾驶。这些看似高大上标签背后的逻辑其实并不难。
当我们人类用眼睛看一样东西的时候,会先在大脑的记忆中搜索匹配,完成识别。当计算机识别一张图片也是类似的过程,它会提取图片中主要特征,与程序中的规则进行比较。这些特征和规则可以来自预设,也可以通过学习获得。前者就是单纯的图像处理识别,后者通常应用于人工智能中。可能很多朋友看到人工智能这几个词就感到非(失)常(去)有(兴)趣,其实就用简单的图像处理已经能解决很多问题了。
计算机“看”一张图片时,它究竟在看什么呢?
当一张图片被无限放大的时候,可以发现它是由一个个像素点组成的。对计算机来说,每张图片就是不同像素值的排列组合。如果我们用不同的数字代表不同的颜色,图像就可以表示为一个矩阵。当计算机去“看”一张图片的时候,其实就是对矩阵中的数字进行运算,找到一些特征值。其中,颜色特征和轮廓特征是比较基础和常用的两种。
颜色
图片中每一个像素值代表的就是一种颜色。不同类型格式的图片采用的颜色模式不同,比如RGB、HSV、HSL等。其中最常用的像素颜色描述方式就是RGB(红、绿、蓝)空间,通过这三原色的组合能描述任何颜色。颜色相关的处理中,可以直接通过像素值进行图像分割,提取目标信息。也可以进行直方图(颜色分布)等统计分析,提取关键信息。
轮廓
轮廓是图像很重要的一个外部特征。对于人来说,很容易能够区分物体的边界,也就是那些颜色发生明显变化的地方。这一点对于机算机也是一样,它也是根据像素值的变化率(梯度)来找出边缘。在这一步中,一般会将三通道的RGB图片转为单通道的灰度图,仅保留一个通道。通过轮廓识别算法获得了图形的边缘轮廓之后,就可以进行定位或匹配,或者更进一步的应用。
我们掌握了以上两点其实已经可以解决很多问题了,不信?你看看这个案例!
在设计测试PCB过程中的某个环节,工程师需要从以下这样的图片中提取特定颜色连接线的连接关系。这本是一个非常枯燥且容易出错的工作,要找到指定颜色的所有线段,还有列出它们连接关系。利用图像识别技术就可以轻松完成这个工作,用到的就是颜色和轮廓特征。例如其中针对连接线的操作:
利用颜色特征将指定颜色像素从图片中分割出来
灰度化:减少信息量
获取图形边缘轮廓信息
除了以上这些,还有其他图片处理及特征提取的方法,需要根据具体的处理需求选择。现有的一些图像算法库也都提供了很好的支持。
这样一个小功能可以替代原本枯燥耗时的工作,大大提高了工作效率。通过这些数字化智能化的手段对价值流的可能环节进行优化,也能让工程师把更多的时间投入到核心设计工作中。对于开发团队来说,也得到了互相学习的机会,能更好地理解业务中的需求。
本内容属于网络转载,文中涉及图片等内容如有侵权,请联系编辑删除