写点什么

计算机视觉应用:深度学习的力量和局限性

2020 年 1 月 20 日

计算机视觉应用:深度学习的力量和局限性

从人工智能发展的早期开始,计算机科学家就一直梦想着创造出能像我们一样看世界和理解世界的机器,这些努力推动了计算机视觉的出现。

本文最初发布于 TechTalks 博客,经原作者授权由 InfoQ 中文站翻译并分享。



图片提供:Depositphotos


本文是“解密人工智能”系列文章的一部分。该系列文章(试图)消除有关人工智能的术语和传说的歧义。


从人工智能发展的早期开始,计算机科学家就一直梦想着创造出能像我们一样看世界和理解世界的机器。这些努力导致了计算机视觉的出现,这是人工智能和处理视觉数据内容的计算机科学的一个巨大的子领域。


近年来,由于深度学习和人工神经网络的发展,计算机视觉实现了飞跃。深度学习是人工智能的一个分支,尤其适合处理图像和视频等非结构化数据。


这些进展为促进计算机视觉在现有领域的应用和将其引入新领域铺平了道路。在许多情况下,计算机视觉算法已经成为我们日常使用的应用程序的一个非常重要的组成部分。


关于计算机视觉现状的一些说明

先不要对计算机视觉的进步过于兴奋,让我们了解下当前人工智能技术的局限性,这很重要。虽然有了显著的改进,但距离有能像人类那样理解照片和视频的计算机视觉算法,我们还有很长的路要走。


目前,深度神经网络(计算机视觉系统的核心)非常擅长像素级模式匹配。它们在图像分类和对象定位方面特别有效。但是,当涉及到理解可视化数据的上下文和描述不同对象之间的关系时,它们常常失效。


该领域的最新工作显示,计算机视觉算法存在局限性,而且需要新的评估方法。尽管如此,目前计算机视觉的应用表明,仅通过模式匹配就可以完成很多工作。在这篇文章中,我们将探索其中的一些应用程序,但是我们也将讨论它们的局限性。


计算机视觉的商业应用

你每天都在使用计算机视觉应用程序,只是在某些情况下可能没有注意到。以下是计算机视觉的一些实用的流行应用,它们使生活变得有趣和方便。


图像搜索

在图像分类和目标检测方面,计算机视觉已经取得了很大的进展。如果标记数据足够多,那么训练出的神经网络将能够以令人印象深刻的准确性检测和突出显示许多各种不同的物体。


很少有公司能有谷歌那样海量的用户数据。该公司一直在利用其几乎无限(且不断增长)的用户数据开发一些最高效的人工智能模型。当你在谷歌照片中上传照片时,它使用其计算机视觉算法用关于场景、对象和人员的内容信息来标注照片。然后,你可以根据这些信息搜索图像。


例如,如果搜索“dog”,谷歌将自动返回库中包含 dog 的所有图像。



谷歌使用机器学习和计算机视觉来搜索图像的内容,即使你没有标记它们。


然而,谷歌的图像识别并不完美。有一次,计算机视觉算法错误地将两名深色皮肤的人的照片标记为“大猩猩”,使公司很尴尬。


谷歌还使用计算机视觉从库、驱动器和 Gmail 附件中的图像中提取文本。例如,当你在收件箱中搜索某个术语时,Gmail 还会查看图像中的文本。不久前,我在 Gmail 中搜索我的家庭地址,我收到一封带有图片附件的电子邮件,其中包含一个有我地址的 Amazon 程序包。


图像编辑和增强

许多公司现在都使用机器学习来自动增强照片。谷歌的 Pixel 系列手机就使用设备上的神经网络进行自动增强,如白平衡,并添加模糊背景等效果。


计算机视觉的发展带来的另一个显著的进步是智能缩放。传统的缩放功能通常会使图像变得模糊,因为它们通过在像素之间插值来填充放大的区域。与放大像素不同,基于计算机视觉的缩放侧重于边缘、模式等特征。这种方法可以得到更清晰的图像。


许多初创公司和历史悠久的图形公司已经转向使用深度学习来增强图像和视频。Adobe 的增强细节技术(以 Lightroom CC 为特色)使用机器学习来创建更清晰的缩放图像。



Adobe 使用深度学习来增强缩放图像的细节。


图像编辑工具 Pixelmator Pro 提供了ML超分辨率特性,它使用卷积神经网络提供清晰的缩放和增强。


面部识别应用

直到不久前,面部识别还是一项笨拙且成本高昂的技术,仅限于警察研究实验室。但近年来,由于计算机视觉算法的进步,面部识别已经进入了各种计算设备。


iPhone X 引入了 FaceID,这是一种身份验证系统,当手机看到主人的脸时,它会利用设备上的神经网络解锁手机。在设置过程中,FaceID 使用主人的面部图像训练它的人工智能模型,并且,即使照明条件、面部毛发、发型、帽子和眼镜等方面存在差异,它也可以很好地工作。


在中国,许多商店现在使用面部识别技术为顾客提供更流畅的支付体验(但代价是他们的隐私)。顾客无需使用信用卡或移动支付应用,只需面对装有电脑视觉系统的摄像头即可。


然而,尽管有这些进步,目前的面部识别并不完美。人工智能和安全研究人员已经发现了许多导致面部识别系统出错的方法。有这样一个案例,卡内基梅隆大学的研究人员发现,他们可以通过佩戴特制的眼镜欺骗面部识别系统,让它们误以为自己是名人。



卡内基梅隆大学的研究人员发现,通过戴上特殊的眼镜,他们可以欺骗面部识别算法,让它们误以为自己是名人(图片来源:ww.cs.cmu.edu))。


数据高效的家居安全

随着物联网(IoT)的无序发展,连接到互联网的家居安全摄像头越来越受欢迎。你现在可以很容易地安装安全摄像头,并随时在线监控你的家。


每个摄像头都向云发送大量的数据。但是,安全摄像头记录的大部分画面都无关痛痒,这造成了大量的网络、存储和电力资源的浪费。计算机视觉算法可以使家居安全摄像头更有效地利用这些资源。


智能相机一直处于闲置状态,直到它们在即时影像中检测到一个物体或移动,然后它们就可以开始向云发送数据或向相机的所有者发送警报。然而,请注意,计算机视觉在理解上下文方面效果仍然不是很好。所以,不要指望它能区分善意的举动(如一个球滚过房间)和需要你注意的事情(如一个小偷闯入你家)。


与真实世界互动

增强现实技术是一种将真实世界的视频和图像与虚拟物体叠加在一起的技术,在过去几年里,它已经成为一个不断增长的市场。增强现实技术的发展在很大程度上归功于计算机视觉算法的进步。AR 应用程序使用机器学习来检测和跟踪目标位置和对象,并据此放置虚拟对象。你可以在很多应用中看到 AR 和计算机视觉的结合,比如Snapchat的滤镜和 Warby Parker 的 Virtual Try-On。


计算机视觉还能让你通过手机摄像头的镜头从现实世界中提取信息。一个非常显著的例子是谷歌 Lens,它使用计算机视觉算法来执行各种任务,比如读取名片、检测家具和衣服的风格、翻译路牌,以及根据路由器标签将手机连接到wi-fi网络


计算机视觉的高级应用

由于深度学习的进步,计算机视觉正在解决以前计算机很难甚至不可能解决的问题。在某些情况下,经过良好训练的计算机视觉算法可以与拥有多年经验及经过相应训练的人类相媲美。


医学图像处理

在深度学习出现之前,创建能够处理医学图像的计算机视觉算法需要软件工程师和主题专家做大量的工作。他们必须合作开发从放射图像中提取相关特征的代码,然后检查它们以进行诊断。(人工智能研究员 Jeremy Howard 对此进行了有趣的讨论。)


深度学习算法提供了端到端的解决方案,使这个过程非常简单。工程师们建立了恰当的神经网络结构,然后用 X 光片、核磁共振成像(MRI)图像或 CT 扫描图像对其进行训练,并标注结果。然后,神经网络会找出与每个结果相关的特征,这样就可以诊断未来的图像,其准确性令人印象深刻。


计算机视觉已经在许多医学领域找到了合适的应用场景,包括癌症检测和预测、放射学、糖尿病性视网膜病


一些人工智能研究人员甚至表示,深度学习将很快取代放射学家。但那些在这一领域有丰富经验的人并不认同。诊断和治疗疾病所要做的工作远远超出查看幻灯片和图像。我们不要忘记,深度学习是从像素中提取模式——它不能复制人类医生的所有职责。


玩游戏

教电脑玩游戏一直是人工智能研究的一个热点领域。大多数游戏程序都使用强化学习,这是一种人工智能技术,通过反复试验来改进自己的行为。


计算机视觉算法在帮助这些程序解析游戏图形内容方面起着重要的作用。然而,需要注意的一点是,在许多情况下,为了使神经网络更容易理解它们,这些图形被“简化”了。此外,目前的人工智能算法需要大量的数据来学习游戏。例如,OpenAI的Dota游戏AI使用 4.5 万年的游戏数据训练才能达到冠军级别。


无人零售商店

2016 年,亚马逊推出了Go,你可以走进这家商店,拿起你想要的任何东西,然后离开,不会因为入店行窃而被逮捕。Go 使用了各种人工智能系统来消除对收银员的需求。


当顾客在店内走动时,装有先进计算机视觉算法的摄像头会监控他们的行为,并跟踪他们挑选或放回货架的商品。当他们离开商店时,他们的购物车会自动记入他们的亚马逊账户。


三年后,亚马逊又新开了 18 家 Go 商店,而这项工作仍在进行中。但有迹象表明,计算机视觉(在其他技术的帮助下)总有一天会让排队结账成为过去时。


自动驾驶汽车

无人驾驶汽车一直是人工智能领域最长久的梦想和最大的挑战之一。今天,我们距离能够在各种照明和天气条件下在任何道路上行驶的自动驾驶汽车还有很长的路要走。但由于深度神经网络的发展,我们已经取得了很多进展。


创造自动驾驶汽车的最大挑战之一是使它们能够理解周围的环境。虽然不同的公司正以不同的方式解决这个问题,但有一件事是不变的,那就是计算机视觉技术。


安装在汽车周围的摄像头监控着汽车的环境。深度神经网络分析视频片段,并提取周围物体和人的信息。这些信息与来自激光雷达等其他设备的数据相结合,形成该地区的地图,帮助汽车导航并避免碰撞。


令人毛骨悚然的计算机视觉应用

像所有其他技术一样,人工智能并非方方面面都令人愉悦。先进的计算机视觉算法可以增强恶意应用。下面是一些引起关注的计算机视觉应用。


监控

对面部识别技术感兴趣的不仅仅是手机和电脑制造商。事实上,面部识别技术的最大客户是政府机构,他们对利用这项技术在监控录像中自动识别罪犯有着浓厚的兴趣。


但问题是,在国家安全和公民隐私之间,你在哪划线?若前者太多而后者太少,就会导致一种监控状态,让政府获得太多控制权。以面部识别技术为基础的安全摄像头的广泛使用使政府能够密切跟踪数百万公民的行动,无论他们是否是犯罪嫌疑人。


在美国和欧洲,情况比较复杂。在向执法部门提供面部识别技术方面,科技公司会遭到员工和数字维权人士的抵制。美国的一些州和城市已经禁止面部识别技术的公共使用


自主武器

计算机视觉也能给武器装上眼睛。军用无人机可以使用人工智能算法来识别物体和挑选目标。在过去的几年里,军方使用人工智能引发了很多争议。因为面临着来自员工的批评,谷歌不得不取消与国防部续签计算机视觉技术开发合同。


目前还没有自主武器。大多数军事机构在使用人工智能和计算机视觉系统时都有人的干预。


但人们担心,随着计算机视觉的进步和军事部门的进一步介入,我们迟早会拥有自主选择目标并扣动扳机的武器,而不需要人类来做决定。


著名计算机科学家和人工智能研究员 Stuart Russell 成立了一个组织,致力于阻止自主武器的发展


查看英文原文Computer vision applications: The power and limits of deep learning


2020 年 1 月 20 日 15:141495
用户头像
蔡芳芳 InfoQ高级编辑

发布了 573 篇内容, 共 274.1 次阅读, 收获喜欢 1797 次。

关注

评论

发布
暂无评论
发现更多内容

C++系列:Visual Studio(VS)2019登录不上?

Bob

c++ 踩坑经历 编程经验 四月日更

算法思考:红包金额生成

程序员架构进阶

Java 28天写作 算法解析 4月日更 微信红包

Python OpenCV 图像处理之直方图的应用,取经之旅第 26 天

梦想橡皮擦

Python OpenCV 4月日更

GaussDB(for openGauss)让数据“存得下、算得快、算得准”

华为云开发者社区

GaussDB(for openGauss) 华为云数据库 数据分布方式 计算下推 数据强一致

中寰卫星导航卜钢采访:IT年轻人怎么工作、学习和生活(采访提纲)

老猿Python

采访 IT年轻人 学习、工作和生活

VueRouter源码解读:三大核心模块构成

梁龙先森

源码分析 vue-router 前端进阶

新媒体时代,传统户外广告如何做出新花样

󠀛Ferry

四月日更

区块链特色农产品溯源平台解决方案

13828808769

溯源 #区块链#

直播 | 如何使用Ranger增强权限管理?

openLooKeng

大数据 数据分析 数据 Bigdata

算法突击营毕业总结

韩儿

数据库存取策略对比

小舰

4月日更

一直做着行业最“新”的尝试:NA(Nirvana)Chain受邀出席共为·创新大会并办展

区块链第一资讯

喜欢回忆过去的人,没有未来

小天同学

成长 自我思考 个人感悟 突破瓶颈 4月日更

初识GaussDB(for Cassandra)

华为云开发者社区

数据安全 GaussDB 华为云数据库 GaussDB(for Cassandra) 分布式云数据库

超详细 PowerDesigner 入门教学(项目数据库设计标准)

若尘

数据库 数据库设计

面试官:Java中线程是按什么顺序执行的?

华为云开发者社区

Java 线程 执行顺序 多线程并发

Zabbix Linux 下源码安装

耳东

zabbix 4月日更

智慧公安重点人员管控系统搭建,实现重点人员动态管控

13828808769

智慧公安

Spring Boot 启动时,让方法自动执行的 4 种方法!

Java小咖秀

springboot 启动方式

分页场景慢?MySQL迷惑行为解读~

Java架构师迁哥

Github Star 11.5K项目再发版:AAAI 2021 顶会论文开源,80+多语言模型全新升级

百度大脑

飞桨

第一个 Go 程序

escray

go 极客时间 学习笔记 4月日更 Go100

ES9的新特性:异步遍历Async iteration

程序那些事

JavaScript ecmascript 程序那些事 es9

修电脑、脱发、格子衫?程序员拒绝标签化,这才是真正的他们

华为云开发者社区

程序员 女朋友 标签 格子衫 单身狗

【LeetCode】打家劫舍 II Java题解

HQ数字卡

算法 LeetCode 4月日更

被应用商店下架的应用,该如何下载?

彭宏豪95

效率 App 苹果 4月日更

他人方寸间,山海几千重

清秋

随笔 4月日更 1 周年盛典 我和写作平台的故事

一加9pro联名哈苏了!这可能是你能买的平替哈苏

Geek_4a453c

Linux pwd 命令

一个大红包

Linux linux命令 4月日更

openLooKeng V1.2.0 发布

openLooKeng

大数据 数据 Bigdata

Windows 下 搭建 Flutter 环境

U+2647

flutter 四月日更

计算机视觉应用:深度学习的力量和局限性-InfoQ