图像处理,计算机视觉和人工智能之间的差异

作者:Pallawi 原文链接:https://medium.com/@pallawi.ds/difference-between-image-processing-computer-vision-and-artificial-intelligence-af670d65055d 编译:AI算法与图像处理

图像处理和计算机视觉是超级令人兴奋的研究和研究领域。随着人工智能的进步,这两个领域都在不断发展。

你会发现任何以AI和计算机视觉命名的产品在创造每个智能系统中都起着重要作用。下面将提供了一些有意思的链接,可以在本文的最后使用该程序,你可以自己尝试并体验这些颠覆性技术如何改变世界前后的工作方式。

因此,在本文中,我将帮助你了解图像处理,计算机视觉和人工智能之间的区别。

我提出了一个有趣的情况,这将有助于你非常轻松地理解所有这三个主题。

“所以,在假期你决定对两只宠物狗”Shimmy“和”Pluto“训练过程拍照,在你美丽的花园里进行一场比赛。 “Shimmy”必须在拿球后走左路,”Pluto“应该走右边的路线。

图像处理

你拍了数百张照片,很快就完成了拍摄照片,现在你希望在社交媒体上上传完美的照片。

但在发布图像之前,你希望图像看起来更加完美,并且你还希望告诉你的朋友,图像是在周日早上7点拍摄的,并在图像上打印出可爱的宠物名称作为主题标签。

要完成上述所有操作,你决定通过图像编辑移动应用程序传递图像,该应用程序在后端运行多个功能,并在每个功能中运行图像处理算法,该算法将你的图像作为输入对图像执行数学运算,如在算法中并给出所需的输出图像。 如下图所示,你可以看到重新分布的色调级别(伽马校正),输出图像和嵌入其中的文本。

左图像是输入图像,右图像是处理图像

这是我的图像处理代码的链接,它很容易和有趣的尝试自己。https://github.com/PallawiSinghal/AI_Starter/blob/master/image_processing.ipynb

计算机视觉

现在,你希望奖励你的宠物“Shimmy”和“Pluto”作为获胜者和亚军,根据谁在他们的嘴里抓住红苹果或黄色圆盘的最大次数并将它们返回给你在他们各自的轨道上移动 ,左边是“Shimmy”,右边是“Pluto”(游戏规则)。

你可以通过查看上面的图像来轻松决定Shimmy是赢家,但如果你每天玩50次游戏而且每周玩7天,该怎么办?

然后通过查看图像决定谁是胜者,现在数量已增加到每周350张图像变成一项艰巨的任务。

所以,现在你必须建立一个计算机视觉系统来自动化你的工作。

因此,CV(计算机视觉)系统的第一步应该对350的每个图像进行详细分析。

分析阶段

这项分析的目的是找到一个通用的解决方案,不仅仅是几百个图像,而是多年来的许多图像。

我们在图像中必须寻找的是大多数时候宠物如何出现在图像中的模式。就像这里“Shimmy”在左侧轨道,“Pluto”在右侧。

此外,深入分析图像质量,如图像中局部和全局噪声的数量,对比度增强的要求和边缘保存。在图像中需要和容易分割。此外,哪些图像的特征是提取以找到带球的宠物,其可以是球的形状或狗的颜色。

现在计算机视觉主要是两个主要的事情,分析和图像处理算法,你选择联合起来得出这样的结论,谁是两个宠物中的胜利者。

图像处理算法在对大量数据进行详细分析后智能地进行分组,以给出正确的结果,例如每只宠物抓住球的次数,是否公平,何时以及为什么宠物未能接球,能接到球最大或最小高度,以及如果给定任何输入图像来定义计算机视觉系统。它是关于概括或提供结合许多图像处理算法的可扩展解决方案。

由于图像处理辅助计算机视觉从图像中获取更有意义的信息,因此它还使开发人员的分析质量极其独立,负责开发通用解决方案,以便通过CV系统获得较不相似的测试图像的准确输出。

在下面的图像中,你可以看到我发现“Shimmy”有黄色圆盘。我通过执行图像分割,轮廓搜索,凸包检测,多边形逼近,将多边形映射到空白图像并最终使用模板匹配检测黄色圆盘来完成此操作。

左图是输入图像,中间图像是掩模(如果你不断看图像一段时间你可以找到从中心到角的强度差异),右图是背景图像(这个背景) 使用非常著名的OpenCV函数“Grabcut”完成删除(前景和背景分割)

第一个图像是上面最右边图像的模糊图像,这里使用的模糊像处理算法,用于边缘保存和噪声消除。第二幅图像是灰度图像。第三图像是阈值图像,也称为二值图像。第四个图像是第三个图像的轮廓图像(简单地说,我们试图在所有颜色为白色的物体上绘制边界,其中也包括宠物),在最后一个图像中,我们通过周长逼近最大轮廓使用凸包,这里最大的轮廓将是宠物的轮廓,并在图像上绘制近似的形状,多边形

左图像是该步骤的输入图像,我们制作近似的小掩模(中心图像)以将宠物多边形转移(也称为翘曲,wrapping)到小图像(中心图像)上。翘曲后的结果看起来像右图

左图是这里的输入,我们使用黄色光盘的小模板图像在此图像上进行模板匹配,如下图所示。模板匹配是一种算法,模板图像从输入图像的顶部到底部移动,输入图像是我们情况下最左边的图像,并在输入图像中找到最佳匹配部分。模板匹配的输出将是中心图像,因为你可以看到图像中最亮和闪亮的部分是黄色光盘所在的位置。因此,我们在最右边的图像上绘制一个框。

模板图片

我非常肯定,如果你是初学者,你必须查找一下上面那些没有听过的词。但请相信我,这是一个从分析到算法设计的非常有趣和创造性的旅程。

这是我的GitHub帐户的链接,你可以在其中找到计算机视觉系统的代码,该系统可以找到谁有球。

这是我的计算机视觉代码的链接,你可以轻松有趣地尝试自己 https://github.com/PallawiSinghal/AI_Starter/blob/master/computer_vision.ipynb

人工智能

如果你选择硬阈值来检测“Shimmy”,“Pluto”或黄色圆盘,例如应用半自动分割(OpenCV grab cut),模板匹配,决定宠物应移动的轨道,则此设计的系统可能缺乏可扩展性或宠物身体的颜色阈值。你最终可能会创建一个只能识别“Shimmy”和“Pluto”的有偏见系统。

你将无法将你的CV系统交给世界,以便在不同的狗或猫身上得到相同的结果,因为规则和特征只偏向于“Shimmy”和“Pluto”。

人工智能“救世主”提供图像处理,计算机视觉算法和机器学习算法,以帮助你像魔术一样推广系统。

它是一个像我们的大脑这样的系统,它通过不断地查看周围的事物来智能,合理和准确地采取它所学习的任何决策,这只不过是数据,并且通过随时间学习的反馈和经验来更新所获得的知识。

就像你在教育系统中长大的学习一样,你的老师教你用图像来区分世俗的东西,给你的大脑喂两个输入,一个是图像,第二个是正确的特征描述,它的外观和位置在图片。

同样,如果我们想为上述类比构建一个AI系统,我们需要使用图像处理算法提供预处理的图像,并告诉他们你想要检测的球,圆盘,苹果,狗或任何东西的位置并存在于图像中。

然后,一旦图像和图像的内容,信息被提供给系统,计算机视觉就会出现在图片中。

AI由多层组成,就像一包面包一样,每层运行一个计算机视觉算法,其工作是从图像中提取特征。

在前几层中,我们提取图像上的直线或曲线边缘等低级特征,然后在它学习检测眼睛,苹果,爪子,尾巴以及后来完成的每层中提取所有提取的特征。狗或猫。稍后你将使用这些学习卷积核来预测新数据集上的对象,该数据集也称为测试数据集。

以上图片由https://www.cc.gatech.edu/~hays/compvision/proj6/提供,可以在此处查看图层的外观以及每层的特征提取方式。

当然有数学方程式。但是,让我向你保证,他们很容易,你可以做到。

并且所有的学习都保存在模型中,就像我们的学习保存在我们的大脑中一样,它是通用的,可以用于任何其他数据。

构建AI解决方案的一个非常关键的输入是数据。想象一下,你需要付出的努力才能创造出一个狗在世界各地玩球的数据集(没有差错的数据集)。

因此,综合图像处理,计算机视觉和机器学习三个形成了一个你身边所听到,看到和体验到的人工智能系统。

总结

我试图解决一个非常简单但非常重要的话题,这个领域的每个初学者都想要理解。当我开始学习这个领域时,我总是有这个问题,而且我发现很少有人明确地回答我的问题。我希望我能帮到你。我强烈建议你为每个部分运行我的代码。它非常简单,有助于在你对这些广泛主题的想法中建立清晰度。

原文发布于微信公众号 - 算法猿的成长(AI_Developer)

原文发表时间:2019-09-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券