算法|计算机视觉近10年发展回顾与未来发展方向

点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达算法|计算机视觉近10年发展回顾与未来发展方向
文章图片

在未来十年中,计算机视觉将取得长足发展。在本文中,我们将探讨2010~2020年间计算机视觉的发展趋势和取得的突破性成就,以及未来计算机视觉的发展目标。
算法|计算机视觉近10年发展回顾与未来发展方向
文章图片

01. 计算机视觉简史
在整个80年代,90年代和00年代,计算机视觉是一项非常困难的任务。甚至在实验室环境中的也很难得到较好的处理结果。在那个年代,用于训练视觉学习的机器学习系统是通过特征工程手动设计而成。
那什么是特征工程?这意味着我们用“专家”的直觉进行了特殊的设计,这些办法对图像中的特定模式起作用,从而为学习计算机视觉创造许多有用的功能。多年来,我们积累了许多不同的办法,每种办法都有自己的缩写:HOG,SIFT,ORB甚至SURF。但是,不幸的现实是,解决现实世界中的问题需要花费大量的时间将这些技巧的融合在一起以达到较好的效果。我们可以用他们来检测道路上的分界线,但是无法用于识别和区分人脸等。建立通用系统仍然是遥不可及的梦想。
02. 超越特征的工程
在2010年初计算机视觉发生了巨大变化,当时我们看到了自计算机本身发明以来计算机视觉领域的最大革命。2012年,在ImageNet大规模视觉识别挑战赛上,一种名为AlexNet的计算机视觉算法比其竞争对手提高了10%。世界震惊了。关于它的最神奇的事情是:该模型没有使用手动设计的部分。相反,该模型依赖于称为神经网络的通用学习系统。AlexNet的突破在于使用GPU(图形处理单元)来更快地训练计算机视觉模型:AlexNet在两个消费级GPU上进行了6天的训练。为了进行比较,OpenAI于2020年发布的GPT3在355年的模拟等效时间里进行了培训,培训费用约为4,600,000美元。自从AlexNet以来,我们继续添加清晰明确的数据点:数据集越大,模型越大,并且训练的时间越长,我们的学习功能就越好。
最近,在最近几年中,随着transformers的出现,我们看到了视觉算法的新突破。transformers是一种基于编码器和解码器的深度学习架构,这些编码器和解码器在自然语言(NLP)任务中已经流行了一段时间了。来自Facebook的AI研究小组的DETR论文引起了轰动,它们展示了如何使用transformers来获得视觉任务的最新性能。transformers比当前流行的计算机视觉算法(例如MaskRCNN)更易于实现,并且代表了朝着减少计算机视觉自动化的方向又迈出一步。我们花在开发和调整算法上的时间越少,就越可能完成日益复杂的任务。
在未来的十年中,这些都将对计算机视觉产生巨大的影响,目前关于智能代理(IoT摄像头,Alexa和Google Home设备等)是在云上还是直接在设备本身上存在许多争议。
03. 数据功能和用于计算机视觉的合成数据
我们已经讨论了算法和硬件。现在,我们陷入了AI难题中最重要的部分:数据。
历史趋势向我们展示了以下内容:一、算法变得越来越通用,二、人工设定数据的需求越来越小。其结果是计算机视觉的性能更多地取决于用于训练它的数据。这不足为奇,我们所有人都看到科技巨头聚集了大量的数据集。
但是,获取庞大的数据集并不能解决所有的AI的问题。因为这些数据集,无论是从Internet上抓取还是在室内精心上演和捕获,都不是训练更通用的自主算法的最佳选择。这种“真实数据”所含有的误差不可避免地会渗入计算机视觉算法中。此外,真实数据不容易输入培训中:需要对其进行清理,标记,注释和修复。
因此,我们发现已经要准备好迎接技术变革的新时代了,就像引入神经网络和transformers一样重要。数据是阻碍计算机视觉发展的最大障碍。我们认为,解决方案是数据合成。快速定义:合成数据是由计算机创建和生成的数据(例如视频游戏或电影中看到的CGI)。完全控制此虚拟世界意味着可以使用像素标签(请考虑元数据,例如哪些像素对应于图像中的脸部),甚至是在现实世界数据集中可能无法标记的标签。
数据合成仍处于早期阶段。与2010年代非常相似,目前每个合成数据集都是使用人工直观设计的。但是,正如我们所说的那样,初创公司(包括我们!)正在构建系统,这将使我们能够生成由学习系统本身设计的无限量的合成数据流。
自动化合成数据生成的出现将改变计算机视觉。从现在开始的十年后,计算机视觉算法将通过称为终身学习的过程不断改进。该模型将识别其弱点,为该弱点生成新的综合数据,然后对该数据集进行训练。最好的情况是:全部自动化实现,在云中某处成群的GPU上运行。
这就是我们进入2020年代时可以期望的:它与数据有关,更具体地说,与数据合成有关。这将优化并实现更复杂的计算机视觉任务。
下载1:OpenCV-Contrib扩展模块中文版教程
【算法|计算机视觉近10年发展回顾与未来发展方向】在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。
下载2:Python视觉实战项目31讲
在「小白学视觉」公众号后台回复:Python视觉实战项目31讲,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。
下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。
下载4:leetcode算法开源书
在「小白学视觉」公众号后台回复:leetcode,即可下载。每题都 runtime beats 100% 的开源好书,你值得拥有!


交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
算法|计算机视觉近10年发展回顾与未来发展方向
文章图片

算法|计算机视觉近10年发展回顾与未来发展方向
文章图片

    推荐阅读