图像处理和计算机视觉是超令人兴奋的研究领域。随着人工智能的发展,这两个领域都在不断发展。
说出任何人工智能产品的名字,你会发现计算机视觉在每一个智能系统的制造中都扮演着重要的角色。我在这个博客的结尾提供了一些令人惊讶的、随时可以使用的应用程序的链接,您可以自己尝试,体验这些颠覆性技术是如何改变世界以前和之后的工作方式的。
所以,在本文中我们将帮助你理解图像处理、计算机视觉和人工智能之间的区别。
我提出了一个有趣的情况,这将帮助你很容易理解这三个主题。
所以,在假期里,你决定点击你的两只宠物狗的照片“Shimmy”和“Pluto”,在你美丽的花园里参加一场接球比赛。其中“Shimmy”在接球后必须走左边的跑道,“Pluto”应该走右边的跑道到达终点。
图像处理
你点击了上百张照片,很快你就完成了照片的拍摄,现在你想要在社交媒体上上传一张完美的照片。但是在发布图片之前,你希望图片看起来更贴心,你也希望告诉你的朋友,图片是在星期天早上7点拍摄的,并在图片上印上宠物可爱的名字作为标签。
要完成上述所有操作,您决定通过图像编辑移动应用程序传递图像,该应用程序在后端运行多个函数,在每个函数中运行以图像为输入的图像处理算法对图像执行与算法和中一样的数学操作。提供所需的输出图像。在下面的图像中,您可以看到重新分布的色调级别(伽玛校正)、输出图像和嵌入在其上的文本。
左图像是输入图像,右图像是处理图像。
源码:
https://github.com/PallawiSinghal/AI_Starter/blob/master/image_processing.ipynb
计算机视觉
现在,你想奖励你的宠物“Shimmy”和“Pluto”作为胜利者和亚军,这取决于谁在他们的嘴里捕捉红苹果或黄光盘的次数最多,并返回给你,让他们继续各自的轨道,左边是“Shimmy”,右边是“Pluto”。
你可以通过看上面的图片很容易地决定Shimmy是胜利者,但是如果你一天打50场,一周打7天呢?
然后,通过查看现在每周增加到350张的图片来决定这是一项困难的任务。
所以现在你必须建立一个计算机视觉系统来自动化你的工作。
因此,计算机视觉系统的第一步是对350幅图像进行详细的分析。
在分析阶段:
这项分析的目的是寻找一个广泛的解决方案,不仅是数百个图像,而是多年来的许多图像。
我们要在图像中寻找的是宠物在大多数情况下如何出现在图像中的模式。就像这里,“Shimmy”在左边,而“Pluto”在右边。
此外,对图像质量,如图像中局部噪声和全局噪声的数量、对比度增强和边缘保存的要求等进行了深入的分析。图像分割是必要和容易的。此外,提取了哪些图像特征,以找到一只带球的宠物,它可以是球的形状,也可以是狗的颜色。
现在电脑视觉主要有两个方面的内容,分析和二是图像处理算法,你选择结合起来得出这样的结论,谁是两个宠物的赢家。
图像处理算法经过详细分析后,智能地对大量数据进行分组,得出正确的结果,如每只宠物接球次数、玩家的公平性、宠物何时以及为什么不能接球、最大或最小高度(如果给定任何一个值)等。NPUT图像定义计算机视觉系统,接球。。它是关于概括或提供结合了许多图像处理算法的可扩展解决方案。
由于图像处理有助于计算机视觉从图像中获取更有意义的信息,它也使开发人员的分析质量极为独立,负责开发通用的解决方案,以便通过CV系统获得不同测试图像的准确输出。
在下面的图片中,您可以看到我找到了一个黄色磁盘的“Shimmy”。我通过执行图像分割、轮廓搜索、凸包检测、多边形近似、将多边形映射到空白图像,最后使用模板匹配来检测黄色磁盘。
左边的图像是输入图像,中间的图像是遮罩(如果你持续观察图像一段时间,你可以发现从中心到角落的强度差),右边的图像是背景图像(这个背景),使用非常著名的opencv fu删除它NCtion“GrabCut”(前景和背景分割)。
第一个图像是上面最右边图像的模糊图像。模糊是一种图像处理算法,它是为了保持边缘和消除噪声而引入的。第二个图像是灰色图像。第三幅图像是阈值图像,也称为二进制图像。第四幅图像是第三幅图像的轮廓图像(简而言之,我们试图在所有白色物体上画出边界,包括宠物)。在最后一幅图像中,我们使用凸轮通过圆周接近最大轮廓。这里最大的轮廓将是宠物的轮廓,并在图像上绘制。做近似的形状,多边形。
左侧图像是此步骤的输入图像。我们制作了一个近似的小遮罩(中心图像),将PET多边形(也称为翘曲)传输到小图像(中心图像)。扭曲的结果看起来是正确的。
左边的图像就是这里的输入。我们使用黄色CD的小模板图像来匹配图像上的模板,如下图所示。模板匹配是一种算法。模板图像从输入图像的顶部移动到底部。在我们的例子中,输入图像是最左边的图像,并且在输入图像中找到最佳匹配部分。模板匹配的输出将是中心图像,因为您可以看到图像中最亮和最亮的部分是黄色光盘的位置。所以我们在最右边的图像上画一个方框。
这是模板图像
很肯定,如果你是一个初学者,你必须找到一个充满借词的部分。但相信我,这是一个从分析到算法设计的非常有趣和创造性的旅程。
这是到我的Github帐户的链接,在那里你可以找到计算机视觉系统的代码,它可以找出谁拥有球。我将写一个详细的博客,关于即将到来的博客中的所有部分,并提供链接。但是如果你现在有任何问题,请随时在评论部分问我。
源码:
https://github.com/PallawiSinghal/AI_Starter/blob/master/computer_vision.ipynb
人工智能
如果您选择硬阈值来检测“Shimmy”、“Pluto”或黄色循环,例如应用半自动分割(OpenCV抓取)、模板匹配来确定跟踪宠物应该移动,系统可能缺乏宠物身体的可伸缩性或颜色阈值。你最终可能会创建一个只识别“Shimmy”和“Pluto”的偏倚系统。
你将无法将你的简历系统提供给全世界,以便在不同的狗或猫身上获得相同的结果,因为规则和特征往往是“Shimmy”和“Pluto”。
人工智能“救世主”提供图像处理、计算机视觉算法和机器学习算法,帮助您像魔法一样传播系统。
这是一个像我们的大脑一样的系统,它通过不断观察周围的事物,智能、合理和准确地做出它所学到的任何决定。它只是数据,随着时间的推移,它会更新学习反馈和经验所获得的知识。
正如你在教育系统中长大一样,你的老师教你用图像来区分世俗事物,给你的大脑输入两种信息,一种是图像,另一种是对图像中的特征、外观和位置的正确描述。
同样,如果我们想为上述类比构建一个人工智能系统,我们需要使用图像处理算法来提供预处理的图像,并告诉他们球、磁盘、苹果、狗或任何你想要检测的东西在图像中的位置。
然后,一旦图像和图像内容提供给系统,计算机视觉将出现在图像中。
人工智能由多层组成,就像一个面包。每层运行一个计算机视觉算法。它的工作是从图像中提取特征。
在前几层中,我们提取图像上的线条或曲线边缘等低级特征,然后它学习检测眼睛、苹果、爪、尾巴,然后每层都完成提取所有提取的特征。狗或猫。稍后,您将使用这些学习过滤器来预测新数据集(也称为测试数据集)上的对象。
以上图片由https://www.cc.gatech.edu/~hays/compvision/proj6/提供,您可以在此处查看图层的外观以及每层的特征提取方式。
当然,有数学方程式。但是让我向你保证他们很容易,你可以做到。
所有的学习都存储在模型中,就像我们的学习存储在大脑中一样,它是通用的,可以用于任何其他数据。
构建人工智能解决方案的关键输入是数据。想象一下,你需要做的努力是创建一组无偏见的狗在世界各地玩耍的数据集。
因此,总结图像处理、计算机视觉和机器学习三个方面构成了一个人工智能系统,您可以听到、看到和体验它。
无论是Facebook的自动标签还是谷歌的云视觉API,苹果都面临着解锁的挑战。希望我能以一种简单的方式帮助你理解这些差异。在下一个博客中,我将向您展示如何立即开始您的计算机视觉之旅。
结论:
我们试图解决一个非常简单但非常重要的问题,这个领域的每个初学者都想理解。当我开始研究这个领域时,我总是有这个问题,我发现很少有人明确回答我的问题。希望这篇文章能帮助你。强烈建议你为每个部分运行我的代码。它非常简单,有助于在您对这些广泛主题的想法中建立清晰思路。
相关论文源码关注微信公众号:“图像算法”或者微信搜索账号imalg_cn关注公众号