屏幕识别(iOS 14中现已提供)是一种计算机视觉系统,已经对正在使用的应用程序的数千张图像进行了培训,可以学习按钮的外观,图标的含义等。这样的系统非常灵活-根据您提供给他们的数据,它们可以成为发现猫,面部表情或用户界面不同部分的专家。
结果是,现在在任何应用程序中,用户都可以调用该功能,并且在不到一秒钟的时间内,屏幕上的每个项目都将被标记。所谓“每一个”,是指每个人-毕竟,屏幕阅读器需要从图像中了解有视力的用户将看到并能够与之交互的每件事(iOS能够创建以下内容的单句摘要:一段时间)到常见的图标(主页,后退)和上下文相关的图标,例如“…”菜单,这些图标随处可见。
这个想法并不是要使手工标记过时-开发人员最清楚如何标记自己的应用程序,但是更新,不断变化的标准和具有挑战性的情况(例如游戏中的界面)可能导致事情难以获得。
我与Apple的iOS辅助功能工程团队的Chris Fleizach以及AI / ML辅助功能团队的Jeff Bigham进行了交谈,讨论了这项极为有用的新功能的起源。 (将在明年发表的一篇论文中进行描述。)
“我们正在寻找可以介入可访问性的领域,例如图像描述,” Fleizach说。 “在iOS 13中,我们自动为图标添加了标签-屏幕识别又向前迈出了一步。我们可以查看屏幕上的像素,并确定可以与之交互的对象的层次结构,所有这些操作都在设备上的十分之一秒之内发生。”
确实,这个想法不是一个新想法。 Bigham提到了屏幕阅读器Outspoken,几年前它曾尝试使用像素级数据来标识UI元素。但是,尽管该系统需要精确匹配,但机器学习系统的模糊逻辑以及iPhone内置AI加速器的速度意味着屏幕识别更加灵活和强大。
仅仅几年前这是不可能的-机器学习的状态以及缺少执行它的专用单元意味着这样的事情将对系统造成极大的负担,花费更长的时间并且可能会耗尽系统资源。电池一直。
但是一旦这种系统成为可能,团队就必须在他们专用的辅助功能人员和测试社区的帮助下进行原型设计。
“ VoiceOver长期以来一直是视觉可及性的标准承担者。如果您查看“屏幕识别”的开发步骤,它是基于各个团队之间的协作-整个环境中的可访问性,我们在数据收集和注释,AI / ML以及设计方面的合作伙伴。我们这样做是为了确保我们的机器学习开发继续推动获得出色的用户体验。” Bigham说。
通过为流行的应用程序和游戏拍摄数千张屏幕截图,然后将其手动标记为几种标准UI元素之一来完成。标记后的数据被馈送到机器学习系统,该系统很快就熟练地自行挑选出相同的元素。
它并不像听起来那样简单,而是像人类一样,我们已经很好地理解了特定图形或文本的意图,因此我们经常可以浏览抽象或创造性设计的界面。对于机器学习模型来说,它还不是很清楚,因此团队必须与它一起创建一套复杂的规则和层次结构,以确保最终的屏幕阅读器解释有意义。
这项新功能应有助于使数以百万计的应用程序更容易被视力障碍的用户访问,或者完全可以访问。您可以通过以下方法打开它:“辅助功能”设置,然后依次选择“ VoiceOver”和“ VoiceOver识别”,在其中可以打开和关闭图像,屏幕和文本识别。
将“屏幕识别”引入其他平台(例如Mac)并非易事,因此暂时不要抱有希望。但是原理是合理的,尽管模型本身不能推广到桌面应用程序,这与移动应用程序有很大不同。也许其他人会承担这项任务; AI驱动的可访问性功能的前景才刚刚开始被意识到。