显著性模型是指确定图像哪部分对用户而言属于重要的或“显著的”,而这种确定对于特定场景非常有用,例如摄影和混合现实。迄今为止,大多数显著性模型都是基于大型训练集进行训练,例如从代表不同背景、年龄、文化、地理位置等的大量用户收集的数据。但这种显著性模型可能无法准确反映特定用户的差异。
所以,为用户提供生成、训练、更新和/或与用户社区共享其“个性化”显著性模型的能力将十分有益。随着支持摄像头的设备数量激增,现在用户可以在一系列不同的环境和地理位置捕获任意数量的照片、视频和/或音频,并在设备存储数百张照片和其他媒体项目。另外,通过允许多名用户同时训练并与更大的用户群体分享其个性化显著性模型,这或能帮助开发出更准确、更复杂的全球显著性模型。
在名为“Systems and methods for providing personalized saliency models”的专利申请中,苹果就介绍了一种提供个性化显著性模型的系统和方法。简单来说,苹果可以向用户发送一个全球模型,然后利用用户自己拍摄的图像和视频,以众包方式由用户端设备训练模型。然后,经过训练的个性化又可以反哺全球模型。
图1示出了由全球和/或个人显著性模型产生的示例性显著性热图。可以看到,第一图像100包括从左到右定位的各种人类对象102/104/106。第一图像100同时反映了室外场景,例如墙壁,树木和月亮等等。
示例性显著性热图110可用于识别图像的显著部分,例如边界框形式将图像中的显著对象和/或区域包围起来。再次说明,显著对象或显著区域是指对用户感兴趣的部分,而显著值是指特定像素属于图像中显著对象或区域的可能性。
显著性热图可以为图像中的每个像素提供二进制确定,例如非显著性像素的值为0,显著性像素的值为1。在一个实施例中,可以分配每个像素从0%到100%的连续显著性分数。例如,在显著性热图110中,以人类面部为中心的最小正方形可以表示显著性得分为60%或更高的像素区域。下一个较大正方形的颜色稍浅,并可以代表显著性得分为50%或更高的像素区域。最后,最外层、最大的正方形颜色最浅,并可以代表显著性得分为15%或更高的像素区域。在所述示例,显著性热图110中未被框覆盖的区域可以简单地表示显著性得分低于15%的像素区域,即图像中不太可能存在用户认为必要或重要的有趣内容或重要内容。
在一个实施例中,用于生成显著性热图110的显著性模型可以包括全球训练的显著性模型。然后,所述模型可以为图像预测对象的显著性。在一个或多个实施例中,显著性模型可以用静止图像数据或视频数据进行训练,并且可以训练成在全球用户群体中预测图像各种对象的显著性。另外,显著性模型可以利用RGB图像数据和/或RGB+深度图像数据进行训练。
通过将深度合并到训练数据中,可以生成更准确的显著性热图。例如,深度可用于识别对象边界、场景布局等。训练后的模型可以分发给个体用户,以用于识别图像的显著部分,这样个体用户就不必在大型数据集执行计算昂贵的机器学习和训练操作。
在一个实施例中,如显著性热图120所示,可使用个人训练的显著性模型来预测捕获图像或视频中对象的显著性。在一个或多个实施例中,个人显著性模型可以通过修改、改进或以其他方式更新全球显著性模型来构建,例如,利用从网络设备接收的全球显著性模型,可以利用特定用户的个性化训练数据及其反应。例如显著性热图120中的边界框122,用户A的个性化显著性模型产生了与显著性热图110中所示的全球显著性热图不同的显著性热图。
这可以反映,例如,用户A可以是第一图像100中的人类对象102的亲密联系人或朋友,但不认识人类对象104和106。因此,用户A的个性化显著性模型可以仅将人类对象102识别为第一图像100的显著部分,如边界框122所示。
类似地,如显著性热图130所示,对应于不同用户的个性化训练显著性模型可以产生第三个显著性热图,其不同于对应于用户A的全球显著性热图110和个性化显著性热图120。用户B可以是第一图像100中的人类对象106的亲密联系人或朋友,但不认识人类对象102和104。因此,用户B的个性化显著性模型可以仅将人类对象106识别为第一图像100的显著部分,如边界框132所示。
图2示出了基于个人显著性模型的输出进行图像修改。如图200所示,第一图像100可以基于特定用户的个性化显著性模型进行修改。如上所述,用户A可以是第一图像100中的人类对象102的亲密联系人或朋友,但不认识人类对象104和106。因此,用户A的个性化显著性模型可以仅将人类对象102识别为第一图像100的显著部分,如边界框122所示。
如图2的边界框202所示,第一图像100对应于边界框122的部分已被高亮显示,或以其他方式强调以引起用户的注意。对第一图像100进行这种修改可以触发通知,以提醒用户向人类对象102说“你好”,或向人类对象102发送另一种形式的通信。在其他实施例中,可以通过一系列不同的方法来进行强调,例如添加情景信息、添加视觉高亮显示、更改图像的一个或多个颜色或亮度分量、添加模糊等等。
设备端创建和更新个性化显著性模型
图3示出的流程图300用于在用户设备端提供个性化显著性模型。
从步骤305开始,第一设备可从服务器获取用于表征捕获图像的第一显著性模型,其中第一显著性模型表示全球显著性模型。在步骤310,第一设备可以捕获第一多个图像。在步骤315,第一设备可以获得指示第一用户对捕获图像的反应信息,例如心率的变化;压力水平的变化;情绪反应;眼睛注视位置的变化;体温的变化;血压的变化等等。
接下来可以进入步骤335,其中第一设备可以至少部分地基于获得的信息更新第一显著性模型,以形成个性化的第二显著性模型。在一个实施例中,更新第一显著性模型可以包括使用long term attention模块更新第一显著性模型
在步骤340,第一设备可以选择性地将第二显著性模型的至少一部分发送给服务器,以将其包含在全球显著性模型中。当然,苹果指出可以对所述模型进行安全处理。例如,在发送到服务器之前,可以向第二显著性模型添加某种形式的噪点,从而不暴露个人敏感和/或用户特定的信息。
在步骤345,第一设备可以捕获第二多个图像,然后至少部分地基于第二显著性模型修改第二多个图像中的至少一个。在一个实施例中,修改第二多个图像中包括对第二多个图像中的至少一个执行以下操作:添加情景信息;增加视觉突出;改变一种或多种颜色或亮度成分;模糊;压缩;强调;或者不强调等等。
在一个实施例中,第一设备同时可以从服务器获取用于表征捕获图像的第三显著性模型,其中第三显著性模型表示相对于第一显著性模型的更新全球显著性模型。在一个实施例中,可以基于在较早时间点从一个或多个其他用户设备发送的更新显著性模型来更新第三显著性模型。然后,第三显著性模型同样可以进一步更新,并用于修改随后捕获的图像。
服务器端创建和更新全球显著性模型
图4示出的流程图400用于在服务器更新全球显著性模型。从步骤405开始,服务器可以向第一设备发送用于描述捕获图像的第一显著性模型,其中第一显著性模型表示全球显著性模型。在步骤410,服务器可以通过网络从两个或多个用户设备中的每一个接收第一显著性模型的更新版本,其包括用户对各自设备捕获的图像的反应。
在步骤415,服务器可以至少部分地基于接收到的第一显著性模型的更新版本修改第一显著性模型,以形成第二显著性模型。在一个实施例中,第一显著性模型和/或第二显著性模型的输出可以包括多维显著性图。类似地,当修改第一显著性模型时,服务器可以采用监督学习技术,使得多维显著性图的至少一个维度具有已知的语义含义。
在步骤420,服务器可以将第二显著性模型的至少一部分发送到两个或多个用户设备。
以这种方式,不仅可以训练能够准确反应特定用户的个性化模型,同时可以帮助开发出更准确、更复杂的全球显著性模型。
名为“Systems and methods for providing personalized saliency models”的苹果专利申请最初在2021年9月提交,并在日前由美国专利商公布。