作者:Katherine (Yi) Li,数据科学家
10年前,人们可能觉得用脸解锁手机是天方夜谭。那时,如果没有深厚的绘画功底,创作卡通人物极其困难——但现在我们可以轻松地将照片变成卡通人物。还在为侧方停车烦恼吗?不用担心,因为自动泊车系统正成为车辆的标准配置。这一切都离不开计算机视觉领域的突破。
在本文中,我们将深入探讨计算机视觉的世界,并讨论你需要了解的计算机视觉基础知识
- 什么是计算机视觉?
- 计算机视觉如何工作?
- 计算机视觉的实际应用
- 计算机视觉带来的益处
- 关于计算机视觉的担忧及其相应的最佳实践
现在,让我们深入了解。
什么是计算机视觉?
计算机视觉是人工智能 (AI) 的一个领域,专注于开发使计算机能够解释和理解来自世界的视觉信息的算法和模型。简单来说,计算机视觉是人类视觉的自动化,赋予机器视觉能力,让它们能够“看”和“探索”世界。
一般来说,计算机视觉的任务包括
- 图像识别/分类:识别图像中的特定特征,如人脸、猫或交通标志;
- 对象检测:识别并定位图像或视频中的对象;
- 图像分割:将图像分割成多个区域,每个区域对应不同的对象或区域;
- 图像生成:创建图像或将现有图像转换为不同的风格。

作为一项近年来突飞猛进的技术,全球计算机视觉市场规模在2021年超过125亿美元,预计在2022-2026年期间将以超过12.5%的复合年增长率 (CAGR) 增长。随着AI越来越深入地融入我们的日常生活,预计市场规模将继续扩大。
计算机视觉如何工作?
你可能会好奇:我们如何让计算机像人类视觉一样“看到”事物?要教会机器识别视觉对象,必须对其进行数十万个视觉样本的训练;因此,计算机视觉任务通常从获取视觉数据开始,例如图像或视频。然后对这些数据进行预处理,以去除噪声并提高质量。例如,如果我们要训练机器识别人脸,需要输入数百甚至数千张图像进行学习,特别是那些在弱光或不同角度拍摄的图像。
接下来,对数据应用图像处理技术以提取有用信息。对于人类来说,理解图像的上下文或语义意义很简单,但对于机器来说,图像不过是大量的像素集合。机器被训练来检测和学习这些像素值。这个过程通过深度学习算法——卷积神经网络 (CNN) 来完成。
简而言之,当图像被CNN处理时,网络层会从像素中提取各种特征,从边缘等基本特征开始,逐渐深入到形状、角落等更复杂的特征。网络的最终层能够识别特定对象,例如汽车前灯或轮胎。
提取这些特征后,CNN模型将输出一个表示图像中存在特定对象概率的数值信息矩阵。它通过学习提取对识别对象最有用的特征来实现这一点。通过多轮迭代,网络不断评估其预测的准确性,最终预测变得更加准确。
虽然CNN仍然是计算机视觉领域的主流架构,但Transformer在图像分类中的应用提供了一种新方法。ViT,即Vision Transformer的缩写,是一种使用基于Transformer架构的深度学习模型来处理图像的模型。
ViT于2021年推出,灵感来源于Transformer模型在自然语言处理 (NLP) 中的成功。ViT背后的核心思想是将图像视为一个序列,其中每个“令牌”(token) 对应图像中的一个像素块。然后将这些像素块展平并通过Transformer网络馈送,网络学习处理像素块序列并进行预测。
如果你对ViT感兴趣,请查阅这篇论文。

总而言之,计算机视觉通过结合图像处理技术和机器学习算法来检测、分析和预测视觉对象。
计算机视觉的现实世界成功案例
现在,我们已经对计算机视觉的技术工作原理有了基本了解,接下来看看一些具体的应用,展示它如何潜在地改善我们的生活。
- 图像和视频分析:计算机视觉用于分析图像和视频以提取有用信息。
- Zoom,最流行的视频会议公司之一,利用计算机视觉识别并最大化视频中最相关部分(通常是人脸而不是背景中的物体)的分辨率。这些算法用于提高视频质量和增强用户体验。
- 机器人:计算机视觉用于机器人领域,使机器人能够感知和理解其环境,从而实现导航、抓取和操作物体等任务。
- 2021年3月,亚马逊网络服务公司 (Amazon Web Services, Inc.) 发布了“Amazon Lookout”,一项用于监控制造过程中产品的计算机视觉服务。Amazon Lookout 的目标是简化计算机视觉模型的设计、优化和实施过程,使其更容易为更广泛的制造公司所采用。此外,它旨在帮助客户将计算机视觉技术整合到他们自己的工厂中。
- 自动驾驶汽车:计算机视觉用于自动驾驶汽车,以实现对象检测、车道保持和交通标志识别等任务。
- Aventior, Inc. 于2021年5月发表的一篇文章强调了计算机视觉在提高自动驾驶汽车乘客安全方面的关键作用。人脸识别软件结合传感器技术,可以快速识别道路上的汽车、行人和物体。此外,通过实时图像捕捉创建3D地图,并利用算法识别弱光条件,计算机视觉提高了自动驾驶汽车的可靠性。
- 医学影像:计算机视觉用于医学影像领域,协助基于图像的诊断和治疗计划等任务。
- Zebra Medical Vision 是一家成立于2014年的以色列初创公司,它利用AI和计算机视觉实时分析医学影像,进行早期疾病检测,帮助放射科医生做出准确诊断。他们已获得FDA批准,并与包括梅奥诊所 (Mayo Clinic) 和西奈山医疗系统 (Mount Sinai Health System) 在内的多家医疗系统建立了合作关系。
- 监控:计算机视觉用于监控系统,以检测和跟踪人员或车辆,并识别人脸或车牌。
- 2022年7月,IDEMIA,一家专注于人脸识别及其他计算机视觉软件和产品的跨国科技公司,宣布与美国国土安全部建立合作关系。预计此次合作将通过部署人脸识别工具来增强该部门的活动,例如在刑事调查中识别嫌疑人和在机场识别旅客,并简化检查站的安全流程。
- 农业:计算机视觉用于精准农业,以优化灌溉和施肥。
- AgroScout 使用配备计算机视觉技术的无人机相机,利用地理传感能力识别各种农业状况和信息,如作物健康、农田鸟瞰图和土壤状况。语义分割和图像标注等技术也用于检测和识别特定作物和病虫害。
- 零售:计算机视觉用于零售业,以跟踪顾客和产品,从而改善购物体验。
- 许多时尚品牌,如Levi’s、Tommy Hilfiger和LuluLemon,都提供了虚拟试衣间应用。借助计算机视觉技术,潜在顾客可以在购买前试穿服装、鞋子或配饰。这项功能非常方便,可以实时轻松地看到不同颜色和款式的商品效果。
- 游戏:计算机视觉用于游戏,以实现手势识别和面部表情识别等任务,从而增强互动性。
- 微软HoloLens提供了一种“混合现实 (MR)”体验,让玩家可以看到似乎与现实世界互动的全息图像。一款流行的MR游戏Young Conker利用对象识别来识别游戏房间内的家具。通过识别家具,游戏为每个房间创建了一个独特的可玩区域,将检测到的家具用作角色Conker跳跃的平台。
计算机视觉的益处
正如我们所见,计算机视觉已经在经济的各个领域拥有广泛的应用。就像我们用眼睛看和理解世界一样,拥有计算机视觉的机器也能做到。但它们能够以更快的速度处理更多的数据量,这仅仅是这项技术带来的众多好处之一。以下是更多益处,
自动化以节省成本,提高效率和生产力
计算机视觉可以自动化原本需要手动执行的任务,例如仓库和配送中心的分类和包装,从而加快处理时间并减少对人力的需求。这反过来可以节省时间并提高工作效率。
提高准确性并支持更好的决策制定
正如本文中讨论的,计算机视觉可用于从图像和视频中提取和分析有价值的信息。例如,在医学领域,数据源可以是X光片、CT扫描和MRI图像等医学影像。通过分析这些图像,计算机视觉帮助医学专业人士早期检测疾病、损伤或其他状况,并提高诊断和治疗决策的准确性。
提高安全性
当用于监控和自动驾驶汽车等任务时,计算机视觉有助于提高安全性。由计算机视觉驱动的监控可以自动监测公共场所潜在的安全隐患。这可以更快地应对紧急情况。
改善客户体验
虚拟试穿允许消费者在购买前虚拟试穿衣物;自助结账使消费者无需收银员即可扫描和支付商品;图像搜索允许消费者通过上传图片搜索产品。所有这些都可以使购物体验更愉快。
关于计算机视觉的担忧和最佳实践
在赞扬这项技术带来的巨大益处和效率的同时,仍有一些基本问题需要我们解决。下表列出了一些担忧,以及与每项担忧相关的最佳实践。
担忧 | 最佳实践 |
---|---|
隐私担忧 特别是人脸识别技术,由于执法部门和政府对其使用引发的担忧,一直是备受争议的话题。 | 考虑伦理影响 在开发和部署这项技术时,考虑这些伦理影响非常重要。 |
偏见和歧视 计算机视觉系统可能会在有偏见的数据上进行训练,从而导致有偏见和歧视性的结果。 | 使用多样化和具有代表性的数据 重要的是使用多样化且具有代表性的数据,以确保系统能够准确识别和辨认不同的个人、对象和模式。 |
缺乏透明度 计算机视觉系统可能难以理解或解释,也很难知道它们是如何做出决策的。这种缺乏透明度的情况使得难以确保系统公平公正。 | 使用适当的评估指标 使用适当的评估指标来评估计算机视觉系统的性能非常重要。应选择这些指标以增强模型的可解释性,以便利益相关者能够理解其工作原理和决策过程。 |
数据泄露和网络安全 计算机视觉系统处理大量个人数据,这些数据容易受到黑客攻击或其他网络攻击。如果保护不当,可能导致数据泄露和敏感信息外泄。 | 保护你的数据 确保数据得到妥善保护以防止数据泄露或敏感信息外泄非常重要。因此,在设计和构建计算机视觉系统时,需要制定数据存储计划。 |
不准确性 没有算法能完全避免不准确。计算机视觉系统不可避免地会犯错误或做出错误决策。这可能对某些任务产生极其负面的影响。例如,监控系统的误报会引起对公民自由的严重信任问题。 | 定期更新算法 随着新数据和新技术的出现,你现有的计算机视觉系统可能会过时。持续监控和跟踪模型以捕获可能出现的任何问题(例如偏见)非常重要。此外,定期重新训练模型可以确保其保持准确和相关。 |
我想指出的一个额外最佳实践是,计算机视觉是一个极其复杂的领域,脱离行业背景,技术本身无法发挥作用。因此,与特定领域的领域专家合作以确保模型得到正确设计、开发和部署非常重要。只有考虑到这些,我们才能以最大化这项技术益处并最小化风险的方式利用计算机视觉。
如果你想开始解决自己的计算机视觉用例,可以通过使用我们的免费层服务器或自行托管来开始使用ClearML。在此阅读我们的文档。你会在我们的YouTube频道上找到更多关于ClearML的深入教程,我们还有一个非常活跃的Slack频道,为需要帮助的人提供支持。如果你需要扩展你的ML管道和数据抽象,或者需要无与伦比的性能和控制,请申请演示。了解更多关于ClearML的信息,请访问:https://clearml.org.cn/。
结论
得益于深度学习算法的发展和海量数据集的可用性,我们能够教会计算机“看”和“理解”物体。计算机视觉是一个快速发展的领域,正在各个行业找到应用。如果你有兴趣了解更多关于计算机视觉的信息,可以在这个GitHub仓库中找到一份很棒的资源列表。我们希望这篇文章能给你带来一些启发,并引导你在改变计算机如何“看”世界的探索中前行!