具体实施方式
这里描述的一个以上的实施方式涉及在设备的用户界面中提供动画用户标识符。在一些实施方式中,系统可以存储由第一设备从与该第一设备通信的第二设备接收到的多个图像的集合,作为视频通话的一部分。如果从第二设备的第二用户接收到许可,那么存储该图像。例如,图像可以描绘在视频通话中通信的第二用户。图像的集合可以被自动地形成为运动片段,运动片段被分配给与第二用户关联的用户标识符,并且可用于例如在显示的联系人列表、通信界面、其他用户界面等等中视觉地表示第二用户。由第一设备在一个以上的用户界面中显示用于用户标识符的运动片段,其中,该运动片段被显示为提供第二用户或者其他主题的动画的连续图像。
在接收图像时,被存储的并且被形成为运动片段的图像的集合可以基于视频通话期间的时段。例如,从视频通话开始起的特定时段中的图像,例如,第一个5秒、第一个10秒、或者其他时段中的图像可以被存储。用于运动片段的存储的图像的集合可以是来自被接收为视频通话的一部分的多个图像的被选子集,其中,可以评估多个图像的多个候选子集。例如,可以基于一个以上的特征从多个图像选择图像的集合,一个以上的特征包含持续时间(例如,显示特定的秒数)、在特定的时段出现(例如,通话的开始、中途、或者结束等等)、图像的集合中描绘的内容特征的类型(例如,具有正面朝向的面)、图像的集合的视觉特征(例如,亮度、对比度、清晰度/模糊度等等)等等。在一些示例中,标准可以包括图像的集合是否适合于被显示为循环,例如,在序列中的最后图像之后接下来显示图像次序中的第一图像,以及,第一图像在视觉内容上与最后图像的视觉差异很小。在一些实施方式中可以修改被选的运动片段,例如,当被选的运动片段被接收作为一部分视频通话时,它的显示速率被设置为不同于视频通话的显示速率,和/或它的视觉外观被修改为不同于图像的视觉外观。
在一些实施方式中,运动片段可以被显示作为用于第二用户的用户标识符的图像序列的重复循环。一些实施方式可以确定重写片段是否已经被第一设备例如从第二用户接收,使得该重写片段被分配给第二用户的用户标识符,并且包括要按序列显示的特定的图像集合。例如,用户标识符可以被显示在第一设备上的联系人列表中,其中第一用户选择用户标识符使得向关联用户请求视频通话。用户标识符还可以被显示在其他用户界面中,例如,用于通信应用及其他应用、与用户内容关联等等。
这里描述的一个以上的特性允许动画用户标识符被自动地确定并且显示,以在设备的显示界面中表示用户。可以基于在与关联用户的视频通话中接收的图像来自动地确定动画。这种特性允许相关的并且描述性的用户标识符被分配给用户联系人列表中的联系人,而用户不必手动地将特定图像分配给联系人。如果从由用户标识符表示的用户接收到许可,那么高质量的并且期望部分的视频通话可以被自动地选择,以视觉地刻画用户标识符。此外,例如通过将动画的显示速率和/或视觉外观设置为不同于视频数据,描述的特性允许动画用户标识符可与视频通话及其他视频输入和数据区分。一些特性允许为用户标识符提供动画,以例如基于联系用户相对于设备用户的状况,从其他联系用户中区分特定的联系用户。
描述的特性可以提供清楚的呈现并且允许在设备的用户界面中高效的选择用户联系人。描绘关联用户的图像可以被自动地分配给合适的联系人,并且动画可以允许显示的用户标识符在界面中被清楚地突出显示,并且容易被用户注意到并且选择。动画可以被改变,为指示用户联系人对于该用户的不同的重要性。描述的特性可以允许设备提供视觉上相关的用户联系人,而无需设备所需的大量的处理时间,以便允许用户手动地搜索图像并且分配图像给用户联系人。因此,一个以上的描述的实施方式的技术效果是,用户标识符的搜索、组织、访问、以及呈现在为了获得结果的计算时间和资源消耗中被减少。例如描述的特性的技术效果是,对于特定用户的用户标识符的搜索和显示所需的系统处理资源的消耗问题减少了,对于特定用户的用户标识符可以另外被用于系统,以提供手动搜索用户联系人和分配给用户联系人的相关数据。在附加示例中,一些描述的特性的技术效果包括,例如通过提供一些动画用户标识符的低显示速率、在没有显示冗余帧或者较少相关性或者不太优质的帧的情况下从动画用户标识符中的视频通话自动选择和显示相关的或者优质的帧、从适合于循环的视频通话中自动选择帧(例如,与非循环帧的较长的片段相比,允许用于循环的更少的帧被存储)等等,减少对于显示处理的设备要求。在另一个示例中,一些描述的特性的技术效果包括,用重新捕获的或者获得的动画用户标识符自动替换现有的动画用户标识符,与现有的标识符相比,重新捕获或者获得的动画用户标识符具有改进的特征,因此减少设备资源的消耗,设备资源的消耗将另外用于为用户呈现手动替换的选项和选择。
这里所称的“图像”可以是静止图像,单个图像,或者独立的图像,或者可以是包含在一系列图像中的图像,例如,视频帧的视频序列中的帧,或者不同类型序列或者选集的图像中的图像。例如,这里描述的各种实施方式可以用于单个图像(照片)或者序列或者视频中的一个以上的图像。
这里讨论的一个以上的系统和方法并不需要用户个人信息的收集或者利用。在这里讨论的某些实施方式可以收集或者使用关于用户的个人信息(例如,用户数据,关于用户社交网络的信息,用户位置和在该位置的时间,用户的生物信息,用户的活动和人口统计信息)的情形中,为用户提供一个以上的机会来控制是否收集信息、是否存储个人信息、是否使用个人信息、以及如何收集、存储和使用关于该用户的信息。也就是说,只有从相关的用户接收这样做的明确授权,这里讨论的系统和方法才收集、存储、和/或使用用户个人信息。例如,为用户提供对程序或者特性是否收集与特定用户或者与该程序或者特征有关的其他用户有关的用户信息的控制。要对其收集个人信息的每个用户呈现有允许控制与那个用户有关的信息收集的一个以上的选项,以便提供是否收集信息以及要收集信息的哪些部分的许可或者授权。例如,可以通过通信网络为用户提供一个以上的这种控制选项。此外,某些数据在被存储或者使用之前,可以以一个以上的方式被处理,以便去除个人可识别的信息。作为一个示例,用户的身份信息可以被处理,使得没有个人可识别的信息可以被确定。作为另一个示例,用户的地理位置可以被概括为较大的区域,以使用户的特定位置不能被确定。
图1图示了可以用于这里描述的一些实施方式的示例网络环境100的方框图。在一些实施方式中,网络环境100包括一个以上的服务程序系统,例如,图1的示例中的服务器系统102。例如,服务器系统102可以与网络130通信。服务器系统102可以包括服务器设备104和数据库106或者其他存储设备。网络环境100还可以包括一个以上的客户端设备,例如客户端设备120,122,124和126,一个以上的客户端设备可以经由网络130互相通信和/或与服务器系统102通信。网络130可以是任何类型的通信网络,包含因特网、局域网(LAN)、无线网络、交换机或者集线器连接等等中的一个或多个。在一些实施方式中,网络130可以包括例如使用对等无线协议的设备之间的对等通信132。
为了便于说明,图1对于服务器系统102、服务器设备104和数据库106显示了一个方框,并且为客户端设备120,122,124和126显示了四个方框。服务器方框102、104和106可以表示多个系统,服务器设备和网络数据库,并且方框可以以与所显示不同的配置被提供。例如,服务器系统102可以表示经由网络130与其他服务器系统通信的多个服务器系统。在一些示例中,数据库106和/或其他存储设备可以被提供在服务器系统模块中,该服务器系统模块与服务器设备104分开,并且可以经由网络130与服务器设备104及其他服务器系统通信。同样,可能有许多客户端设备。每个客户端设备可以是任何类型的电子设备,例如,台式计算机,膝上型计算机,便携式或者移动设备,手机,智能手机,平板电脑,电视,电视机顶箱或者娱乐设备,可穿戴设备(例如,显示眼镜或者护目镜,手表,头戴式耳机,臂带,首饰等等),个人数字助理(PDA),媒体播放机,游戏设备等等。一些客户端设备还可以具有类似于数据库106或者其他存储器的本地数据库。在其他实施方式中,网络环境100可以不具有所示的全部部件和/或可能具有其他元件,其他元件包含代替这里描述的那些元件的或者除了这里描述的那些元件之外的其他类型的元件。
在各种实施方式中,终端用户U1,U2,U3和U4可以使用各自的客户端设备120,122,124和126与服务器系统102通信和/或互相通信。在一些示例实施方式中,用户U1,U2,U3和U4可以经由在各自的客户端设备和/或服务器系统102上运行的应用互相交互。在一些实施方式中,可以经由网络服务进行互动,网络服务例如是社交网络服务或者在服务器系统102上实现的其他类型的网络服务。例如,各个客户端设备120,122,124和126可以将数据传送给一个以上的服务程序系统(例如系统102),并从一个以上的服务程序系统(例如,系统102)传送数据。在一些实施方式中,服务器系统102可以提供合适的数据给客户端设备,使得每个客户端设备可以接收上传给服务器系统102和/或网络服务的传送内容或者共享内容。在一些示例中,网络服务可以包括任何系统,该任何系统允许用户进行各种通信(例如,语音通话,视频通话,聊天,消息传递,等等),形成链接和关联,上传和发布诸如图像,视频,音频及其他类型内容的共享内容,接收各种形式的数据,和/或进行社交相关的功能。例如,网络服务可以允许用户发送消息给特定的用户或者多个其他用户,以与网络服务之内的其他用户的关联的形式形成社交链接,将其他用户分组在用户列表、朋友列表或者其他用户群中,发布或者发送包含文本,图像,视频序列,音频序列或者记录的内容,或者由网络服务的指定的用户或者用户集合用于访问的其他类型的内容,参与与该服务的其他用户的实况视频、音频和/或文本聊天等等。可以使用已知的协议来提供语音通话,视频通话及其他通信,已知的协议例如是会话发起协议(SIP)或者其他VOIP协议,蜂窝网络,公共电话交换网(PTSN)等等,或者用于特定应用的定制协议。在一些实施方式中,“用户”可以包括一个以上的程序或者虚拟实体,以及与系统或者网络接触的人。
用户界面可以实现在客户端设备120,122,124和126(或者在服务器系统102)上显示图像,视频数据,及其他内容以及通信,隐私设定,通知,及其他数据。可以使用客户端设备上的软件,服务器设备上的软件和/或在服务器设备104上执行的服务器软件与客户端软件的组合来显示这种界面,客户端软件例如是应用软件或者与服务器系统102通信的客户端软件。用户界面可以由客户端设备或者服务器设备的显示设备来显示,该显示设备诸如是显示屏幕,投影仪等等。在一些实施方式中,在服务器系统上运行的应用程序可以与客户端设备进行通信,以接收在客户端设备的用户输入并且在客户端设备输出诸如视觉数据,音频数据等等的数据。
在一些实施方式中,服务器系统102和/或一个以上的客户端设备120-126可以提供一个以上的通信应用。通信应用可以提供一个以上的通信功能。例如,该功能可以包括允许设备发起并且接收与其他设备的通话,通过网络130为其他设备传送数据,例如,在聊天,语音通话,视频通话等等中。通信应用可以输出相关的数据,相关的数据包含通信控制,联系人列表,用户标识符,文本和视频等等。通信应用可以提供关联用户界面,该关联用户界面被显示在与服务器系统或者客户端设备关联的显示设备上。该用户界面可以提供用于通信应用的各种功能,允许用户选择和控制可用的功能。
这里描述的特性的其他实施方式可以使用任何类型的和/或服务。例如,照片收集服务或者其他联网服务(例如连接到因特网)可以代替社交网络服务被使用,或者除了社交网络服务可以被使用。任何类型的电子设备可以使用这里描述的特性。一些实施方式可以在间歇地连接到计算机网络的客户端或者服务器设备上提供这里描述的特性。在一些示例中,包含显示设备或者连接到显示设备的客户端设备可以处理和显示存储在客户端设备本地的存储设备(例如不经由通信网络连接的)上的数据,并且可以提供用户看得见的如这里描述的特性和结果。
图2是图解在设备上提供动画用户标识符的方法200的一个实例的流程图。例如,在诸如图1所示的一个以上的客户端设备120,122,124或者126的系统上可以实现一些或者全部方法200。在一些实施方式中,方法200可以在如图1所示的服务器系统102上、和/或服务器系统和客户端系统两者上被实现。在描述的示例中,实现的系统包括一个以上的处理器或者处理线路,和一个以上的存储设备,诸如数据库106或者其他存储器。在一些实施方式中,一个以上的服务器和/或客户机中不同的部件可以进行方法200的不同的方框或者其他部分。
这里描述的图像例如可以是由多个像素组成的数字图像,并且视频可以由一般具有显示序列的多个图像(例如,帧)组成。这里描述的图像或者视频可以存储在实现系统或者另外可访问该系统的一个以上的存储设备上,诸如连接的存储设备,例如,本地存储设备,连接到网络或者与网络通信的远程存储设备等等,第一设备可访问该网络。
在方框202中,确定在第一设备和第二设备之间连接视频通话。例如,第一和第二设备可以是操作为通过网络互相通信的设备,例如是如上所述的示例中的客户端设备和/或服务器设备。在一些示例中,第一设备和第二设备可以是便携式设备,例如,智能手机,平板,护目镜,眼镜或者可穿戴设备等等。在附加示例中,第一和第二设备中的一个或两者可以是非便携式的,例如,台式设备,电视机,机顶盒,或者其他设备。这里,在示例中,描述用于视频通话的两个设备。在一些实施方式中,可以确定在大于两个的设备之间发起视频通话,例如,电话会议或者其他多方通话。
视频通话是两个设备之间的通信,在该通信中,随着时间的过去,由设备的摄像机部件捕获在第一和第二设备(或者仅仅在第二设备)的图像。被捕获图像被传送到其他设备作为视频通话的一部分。在一些示例中,视频通话可以包括视频和音频成分,其中还在第一和第二设备(或者在第一和第二设备中的一个设备)处从设备的传声器(microphone)捕获音频数据。在这个示例中,以被捕获图像的形式传送视频数据,并且音频数据从每个设备被传送到其他的远程设备。在一些示例中,视觉图像可以显示在每个设备上,该视觉图像一般描绘讲话的远程用户的脸部,并且在每个设备输出的同步音频提供远程用户的语音。在其他示例中,用户的脸部可以不在视频通话的传送图像中被描绘,并且描绘不同的对象、场景或者其他特性的视频或者动画可以被传送。例如,不显示用户的被捕获场景、来自影片的场景、机构的动画标识语或者广告等等可以从设备被传送。
在图2的示例中,方法200可以从第一设备的角度被实现,其中,第一设备是本地设备并且第二设备是视频通话中的远程设备。方法200,和/或各种实施方式可以在视频通话中的任何或者全部设备和/或其他设备上被实现,其他设备例如是连接的服务器系统。
视频通话可以由视频通话中所包含的任何设备发起。在一个示例中,第一设备可以响应于第一设备的用户(例如,第一用户)例如在第一设备上显示的联系人列表中选择显示的用户标识符来发起通话(例如,发送对第二设备的通话请求。用户标识符(在一些实施方式或者应用中还可以被认为是联系人头像)视觉地表示第二设备的第二用户,并且基于与被选的用户标识符和/或第二用户关联的存储地址信息,第二用户的用户标识符的选择可以指示第一设备通过网络去请求与第二设备的视频通话。例如,存储的地址信息可以是电子邮件地址,电话号码,存储在服务器或者网络服务的识别第二用户的帐户的信息,或者其他地址信息。基于地址信息,第二设备被传递该通话请求。在各种实施方式中,第二用户可以决定答复该通话请求(例如,选择接收通话)以连接(例如,建立)视频通话,视频通话可以被自动地答复和连接,或者其他技术可用于连接该视频通话。
在方框204中,确定是否已经从第二用户接收到许可(例如,同意),以允许第一设备存储和/或使用来自与第二用户关联的视频通话的用户数据(以及任何其他的个人信息)。可以随时在方法200附加地进行方框204。例如,第二用户具有选项来禁止其他设备存储和/或使用在视频通话中由第二设备发送的图像,并且禁止其他设备使用这些图像。第二用户还可以禁止与第二用户有关的个人信息或者用户数据的其他使用,例如,第二用户的脸部识别,在从第二用户或者第二设备接收的图像上使用的图像识别,对如上所述的其他第二用户数据的检索和/或使用等等(第一用户类似地具有关于图像的这些许可选项,该图像描绘第一用户及与第一用户有关的其他用户数据,这些许可选项用在第二设备,第一设备及其他设备上)。在各种实施方式中,第二用户选择的许可选项可以在第一设备被接收,作为对于视频通话许可的指示,例如,作为通过网络的数据并且在连接视频通话之前。例如,一些实施方式可以在每次视频通话开始之前提示第二用户许可。在一些实施方式中,第二用户的许可偏好可能已经基于先前的视频通话被第一设备存储,和/或可以通过网络被服务器或者其他设备上的第一设备所访问。例如,可以访问这种许可偏好,以确定第二用户是否提供存储和使用在视频通话中接收的图像的许可。一些实施方式可以在方法200中不同的时间或者多个时间接收许可的指示。例如,如果许可的指示指示了第二用户没有提供许可,并且在已经发起视频通话以及来自第二设备的一个以上的图像已经存储在第一设备之后接收到这个指示,那么从第一设备的存储器删除来自视频通话的任何存储图像。方框204还检查是否已经从第一用户接收到关于这里描述的操作和方框中的第一用户的用户数据的使用的许可。
如果用户尚未提供使用由第二设备发送的作为视频通话的一部分的图像的许可,那么方法继续到方框206,其中,进行视频通话的正常操作。这个结果防止如方框210-216描述的、基于视频通话来创建和使用动画用户标识符。在标准视频通话的一些实施方式中,对于第一设备,从第二用户接收的图像没有被存储。
如果在方框204中已经从用户获得了许可,那么可以进行方框208。在方框208中,确定是否已经从第二用户,例如从第二设备或者从与第一设备通信的另一个设备,接收到重写片段。重写片段是要显示的作为第二用户的动画用户标识符的图像的集合,并且可以类似于这里描述的运动片段。例如,重写片段可以是视频,动画等等。重写片段可以由第二用户限定,例如是重写片段中包含的特定图像。因此第二用户能够提供动画用户标识符,第二用户将在其他设备上为第二用户的用户标识符显示该动画用户标识符。在各种实施方式中,重写片段可以是提供动画的视频帧或者图像的片段。如果没有接收到重写片段,那么该方法继续到如下所述的方框210。
如果已经接收到重写片段,那么该方法继续到方框209,在方框209,重写片段被分配给第二用户的用户标识符。重写片段是替换任何现有的运动片段的运动片段,任何现有的运动片段先前被分配给第二用户的用户标识符。如下所述,在方框216中,重写片段被显示在用户界面中,类似于分配的运动片段。例如,第二用户首选重写片段来进行显示,以在其他设备上表示第二用户。在一些实施方式中,在方法200期间随时或者在其他时间可以接收该重写片段,并且响应于在这种时间接收重写片段,可以进行方框209。
如果第二用户已经在视频通话期间提供使用第二设备发送的图像的许可,并且如果尚未接收到重写片段,那么在方框210中,第一设备从第二设备接收的作为一部分视频通话(例如,作为视频通话的视觉成分)的多个图像(例如,帧),为了确定如这里描述的动画用户标识符而被存储。例如,在视频通话期间或者之后,图像可以被自动地存储(没有用户输入或者介入)。
在一些实施方式中,存储图像是在视频通话期间接收的连续图像。一些实施方式可以存储可能尚未被依序接收的图像,例如由作为通话的一部分被接收的不是用于方法200的一个以上的其他图像隔开的图像。例如,可以存储每第N个图像。在一些实施方式中,在方框210中,存储在视频通话中的特定时段具有特定(例如,预先确定)持续时间图像和出现率的一些图像。例如,通话的最初30秒,通话的最后30秒,每隔一个接收的图像,或者在其他指定时段(例如,中途,开始,结束,后半时开始或者通话期间的其他特定部分等等)的图像可以被存储。在一些实施方式中,从几个先前进行的测试可能已知用户通常更喜欢他们在任何视频通话的特定时段中出现,例如,在视频通话开始时,并且在方框210中,来自这种时段的图像可以被存储。
接收的图像可以描绘任何人,对象,场景,标识语,或者其他视觉表示。例如,在接收的图像中可以描绘第二用户的脸部,在通话期间显示第二用户的外观。在其它情况或者实施方式中,接收的图像可以描绘任意对象或者场景,在视频通话期间,第二用户引导第二设备的摄像机捕获该任意对象或者场景。在一些实施方式中,来自另一个源的视频输入可以被插入到视频通话中,以使接收的图像描绘任何其他主题,例如,任何以前捕获的视频数据,来自影片的场景,标识语的动画,虚拟角色,动画片,绘图等等。
音频数据还可以被接收作为视频通话的一部分,例如,音频数据可以与接收的视觉图像关联。例如,音频数据可以与同时捕获的图像同步,例如,提供第二用户的语音的特定音频数据可以与描绘提供那个语音的第二用户的图像同步。在一些实施方式中,,不用为了创建如这里描述的用户标识符而去存储音频数据,例如,用户标识符不具有关联音频输出。在其他实施方式中,第一设备可以存储与存储图像关联的音频数据,并且可以包括在用户标识符的显示时进行音频数据的输出。一些实施方式可以在视频通话中提供其他类型的数据,例如,触觉反馈数据,在一些实施方式中,其他类型的数据可以与对应的动画用户标识符关联,并且由与用户标识符的显示对应的设备(例如,使用设备的致动器)来输出。
在方框212中,形成包含图像的集合的运动片段,其中,图像的集合包括在方框210中存储的图像中的多个图像。例如,运动片段可以包括(例如,指示或者指派)来自视频通话的要以限定的序列显示的特定图像。在一些示例中,运动片段可以是记录的视频、动画或者其他图像集合的一部分。在一些实施方式中,来自方框210的所有存储的图像被用作运动片段中的图像的集合。一些实施方式可以选择存储图像的子集和/或部分,以用作运动片段中的图像的集合。参考图3描述为运动片段选择图像的一些示例。
运动片段还可以描述图像的集合的显示特征。例如,在一些实施方式中,可以与限定运动片段的数据关联地存储显示设置。显示设置可以包括序列中的每个图像被显示的指定的持续时间,例如,运动片段的显示速率(诸如显示帧速率)或者显示时间。指定的显示速率或者时间可以应用于全部图像,和/或可以为图像集合中的个别的图像或者特定群的图像指定个别的显示速率或者时间。例如,运动片段中的图像可以被指定为显示相等的持续时间,或者不相等的持续时间,例如,在显示序列期间,一些图像显示地比其他图像更长时间。
在一些实施方式中,显示设置可以包括与现有的显示速率不同的图像集合的特定显示速率。例如,如果为运动片段选择来自视频通话的一些连续图像,那么那些图像具有用于该视频通话的现有的显示速率。这个显示速率可以在运动片段中被改变,例如,被改变为比视频通话期间的显示速率更快或者更慢。在一些示例中,显示速率可以被改变为与视频通话的显示速率相差(例如,更快或者更慢)阈值量或以上。如上一些变形例所述,这种显示速率差异可用于帮助视觉地区分显示的用户标识符和显示的用户界面中的视频通话。在一些实施方式中,显示速率可以在单个运动片段之内被调整到多个不同的幅度,例如,指定为以一个速率显示的序列的第一部分,以不同速率显示的第二部分,等等。通过为运动片段的图像,或者个别的图像或者图像群指示显示持续时间,一些实施方式可以指示显示速率。
显示设置的另一个示例包括当图像集合被显示时指示图像的集合是否被循环的设置,例如,在已经显示了序列中的最后的图像之后,这些连续图像的显示是否返回到序列的起点图像,或者在最后的图像显示之后,图像集合的显示是否停止。一些设置可以指定要显示的连续图像的集合的特定的循环次数,或者可以指定没有停止的连续循环。
一些实施方式可以修改运动片段的一个以上的图像和/或添加一个以上的图像到运动片段,根据图3描述一些示例。
可以在运动片段的特定显示期间改变与运动片段关联存储的各种设置,例如,由用户偏好,用户输入,提供显示的应用的设置等等指定的。
在方框214中,方框212的运动片段被分配给与第二用户关联的用户标识符。用户标识符识别人,例如,设备的用户。在一些实施方式中,用户标识符可以识别例如,由人表示的实体或者机构。在一些实施方式中,用户标识符可以是联系人标识符,例如,联系人标识符识别例如在设备通信中的以前地、现在地、或者预期地被第一用户联系的用户,或者识别通信、文稿、存在、参与或者关联(例如,在论坛,网站,网络服务,其他接收的或者可访问的信息等等)可以被第一用户看到的用户。在一些实施方式中,该用户标识符可用于在显示器中视觉地表示关联的用户。例如,显示的用户标识符可以视觉地指示关联用户与显示数据、显示通信、显示产品、服务或者机构等等的关联。一些实施方式可以使用用户标识符来在用户界面中视觉地指示关联用户,例如,在显示窗口、列表(例如,联系人列表,群中的用户列表等等中)、菜单或者其他界面元素,或者指示用户为界面中可选的项目等等。在一些实施方式中,用户标识符可被用于设备使用的各种不同的功能和/或应用中,如下描述一些示例。
在一些实施方式中,实现方法200的系统,例如,第一设备,可以在与第二用户视频通话期间或者在与第二用户视频通话之后,自动地将运动片段分配给第二用户的用户标识符。在一些实施方式中,系统可以确定是否用方框212中确定的运动片段来替换先前分配的运动片段(或者其他数据)。参考图4描述将运动片段分配给用户标识符的一些示例。
在方框216中,使得分配的运动片段显示在第一设备上,作为第二用户的用户标识符。可以随时,例如,响应于允许显示用户标识符的显示条件,进行方框216。如下参考图5-8描述用户标识符的显示的一些示例。在一些实施方式中,可以在第一设备上的一个以上的用户界面中显示用户标识符,以视觉地表示第二用户。例如用户界面可被用于第一设备提供的一个以上的通信功能和/或其他功能。
在一些示例中,响应于第一用户输入显示联系人列表、其他列表或者群、或者可在第一设备上用的用户标识符的菜单的命令,描述的用户标识符可以与其他用户标识符一起显示。例如,第一用户可以命令在通话列表中显示可用的用户标识符,以确定呼叫哪个用户。通过用户选择这种显示的用户标识符向表示的用户发起呼叫。在一些实施方式中,显示的用户标识符的用户选择可以是显示关于关联用户的附加信息的请求,如果对于这种信息的检索和/或显示已经从关联用户获得同意,那么可以由设备进行该请求。例如,可以由第一设备存储关于第二用户的信息,或者从远程存储器中的关联用户账号检索关于第二用户的信息(如果已经从第二用户获得同意)。这种信息可以包括第二用户的地址、联系人信息、当前用户状态等等。可以从以各种形式中的任何形式提供的用户输入来确定用户标识符的选择,例如,在第一设备的触摸屏幕的用户接触,指向设备(例如,触控板,鼠标,触控笔等等),指示关联用户的姓名或者标识符的语音命令等等。
在一些实施方式中,描述的用户标识符可以被显示在由第一设备显示的图形环境或操作系统的主屏幕或者背景上。例如,一个以上的用户标识符可以被显示在主屏幕上,方便用户选择以发起呼叫。
一些实施方式可以在可以选择目标用户的任何列表,菜单,或者其他分组中显示描述的用户标识符。例如,如果用户希望在网络服务上形成社交群,那么在该群中包括的可能的用户的列表(例如,基于第一用户的现有的社交群,由第一设备提供的先前的通信等等)可以被显示为用户标识符的列表。第一用户可以选择期望被归入社交群的用户的用户标识符。类似地,如果第一用户发送电子消息(例如,电子邮件或者即时消息),那么对于该消息的可能的接收者用户的用户标识符可以被显示在菜单中,供第一用户选择。
在一些实施方式中,描述的用户标识符还可以被显示以将关联用户表示为与设备上显示的特定内容或者数据关联的用户或发起者。例如,如果第一设备从第二用户接收呼叫请求(例如,为了视频通话,语音通话,文本聊天等等),那么用户标识符可以被显示在第一设备上,以指示谁正在发送呼叫请求给第一设备。在另一个示例中,由第二用户通过网络共享给第一设备的图像可以与第二用户的用户标识符关联地(例如,邻近的)视觉显示,因此指示谁共享该图像。在日历或者事件列表中,用户标识符可以与事件关联地(例如,邻近的)显示,该事件由关联用户提供或者由关联用户协调。用户标识符可以与用户内容关联地显示,以便例如指示谁编写的、评述的、发表的、修改的或者其他方面的内容与用户内容关联。
一些实施方式可以在第一设备上显示的电子消息传递通信界面中显示用户标识符。例如,在用户可能有延迟响应的情况下,在与第二用户的异步的文本聊天或者电子邮件进程中,例如通过在来自第二用户的每个文本文稿的开始或者结束时显示用户标识符,聊天或者进程中来自第二用户的文本(或者图像)的每个条目或者文稿可以与第二用户的用户标识符关联。用户标识符可以类似地被显示在视频通话,聊天或者会议中,以表示尚未实现视频信源的用户。例如,用户标识符可以代替视频信源被显示。附加功能还可以使用用户标识符来在显示的用户界面中表示第二用户。
一些实施方式可以选择并且显示用户标识符的运动片段的单个图像(例如,运动片段的第一图像,最后图像,运动片段的最高分图像,例如,如图3描述的,具有超过特定阈值的分数的运动片段的第一图像,等等)。在一些示例中,如果不希望显示动画,那么可以显示运动片段的被选单个图像(例如,如下对于图5-8描述的一些示例)。在另一个示例中,在一个以上的特定条件下,可以显示单个图像来在显示器上表示用户。举例来说,例如,这种条件可以包括在视频通信期间讲话的关联用户,以使运动片段的动画不会与视频通信中用户说出的话混淆或者不同步。
图3是图解示例方法300的流程图,以选择用于用户标识符的运动片段中包含的图像的集合。例如,方法300可以用于图2的方框212的至少一部分。其他方法可以替换地用于方框212。
在方框302中,从作为视频通话的一部分接收的存储图像中选择一群多个图像,存储图像例如是在图2的方框210中存储的图像。图像群可以是在各种实施方式中的任何存储图像。例如,在一些实施方式中,方框210中的从视频通话存储的所有图像可以包含在图像群中。在一个示例中,在视频通话的初期(例如,初始几秒,诸如5秒,8秒等等)存储该存储图像,并且初期的所有图像被选择在图像群中。在一些实施方式中,存储图像的子集被提供在图像群中,例如,存储图像的子集少于方框210的所有存储图像。例如,存储图像可以来自于视频通话的初始30秒,并且被选择的图像群可以仅仅包括来自视频通话的初始8秒的图像。
在方框304中,为了选择用于运动片段的图像的集合,确定是否进一步进行评估。在一些实施方式中,在方框302中被选择的图像群用作运动片段中的图像集合,如图的方框212描述的,并且不需要进一步的评估。在一些实施方式中,在方框302选择的图像群是图像的超集,从该图像的超集选择图像的子集,并且图像的子集用作运动片段中的图像的集合。
在一些实施方式中,如果已经获得合适的用户同意,那么基于用户输入、存储的用户偏好、默认设置、和/或其他存储的指导,可以确定是否进行进一步的评估。一些实施方式通过使系统检查图像群和/或视频通话的特定特征,可以确定是否进行进一步的评估。例如,如果图像群描绘特定检测到的内容类型,或者缺少的内容类型,那么可以指示评估。在一个示例中,如果系统不在被选图像群的一个以上的图像(例如,最初特定数量的图像或者最初特定数秒之内)中检测脸部,那么可以指示进行进一步的评估,并且如果检测到脸部,那么评估可以被省略。还可以检测其他条件,例如,如果视频通话涉及一个以上的特定用户(例如,特定用户可能更喜欢评估他们的联系人指示符),本地存储器受限(例如,评估可以为该运动片段选择更少和更多相关的图像来进行存储),在视频通话期间网络连接是不可靠的(指示评估是需要的以确保为该运动片段选择合适的帧,例如,显示平稳的动画并且不缺少帧或者几乎没有缺少帧,具有清晰度,分辨率,像素化或者满足特定阈值的其他特征等等),和/或其他条件可以指示是否评估图像群。
如果不进行进一步的评估,那么方法继续到方框305,在方框305,方框302中选择的图像群被提供作为如图2的方框212描述的运动片段中的图像的集合。如下所述,然后方法继续到方框314。
如果如方框304中确定的要进行进一步评估,那么该方法继续到方框306,在方框306,从图像群选择多个图像的候选集合。被选择的图像候选集合可以是图像的特定序列,例如,当连续图像被显示时的特定持续时间,特定数量的图像等等。在一些示例中,图像的候选集合可以是图像群的连续的图像子集。
在方框308中,评估被选择的图像候选集合,以基于一个以上的标准为候选集合确定分数(例如,总体分数)。该分数可以基于图像候选集合的各种不同类型特征中的一个以上的特征。在一些实施方式中,每种类型的特征可以基于图像候选集合提供它自己的个体分数,并且来自不同类型的特征的个体得分可以被组合(例如,被求和),以便为图像候选集合提供总分数。在一些实施方式中,例如,基于先前分配给特定类型的特征的优先级,不同类型的特征可以在总分数中被不同地加权。
例如,特征的一个类型可以是内容特征的类型。例如,可以为与更好的得分关联的特定类型的内容特征检查图像,例如,被认为更加期望用于用户标识符的内容特征。在一些示例中,诸如脸部的内容特征可以具有比其他内容特征更好的得分,其他内容特征例如是有树,道路,车辆,对象,或者其他没有脸部的场景的风景。例如,可以使用图像检测技术,例如,为了面部特征使用机器学习技术来检查图像,以检测脸部是否在图像中被描绘,面部特征诸如是嘴巴,鼻子,眼睛等等。如果已经从第二用户获得同意以进行脸部检测来识别第二用户,那么系统可以检查在图像中描绘的脸部是否是第二用户的,例如,检查第二用户的已知面部特征。如果描绘的脸部不是第二用户的,那么描绘那个脸部的那些图像并不会(例如,同样高地)得分,因为用户标识符将与第二用户关联。在一些实施方式中,描绘具有多个脸部的场景(例如,合影)的图像的得分可以比描绘单个脸部的图像差,因为用户标识符可能是用来表示单个用户。在一些实施方式中,用户标识符可以表示一群用户(例如,在用户界面中表示多个用户的用户群),并且在这种情况下,描绘多个脸部的图像的得分可以比描绘单个脸部的图像更好。
在一些实施方式中,可以为一种类型的内容特征检查特定特征。在一些示例中,检测到的脸部可以为了朝向或者角度方向被检查,例如,脸部是否在显示脸部正面的特定希望的角度范围之内。在一些实施方式中,检测到的脸部可以被检查以确定脸部是否在图像的边界之内的特定尺寸范围之内,例如,脸部是否太小或者太大(其他实施方式可以忽视脸部及其他特征的尺寸,并且可以调整图像,以便如下所述,为作为用户标识符的运动片段的显示描绘希望的尺寸)。可以基于特定的面部特征,为面部表情或者情感检查检测到的脸部,特定的面部特征包含微笑,皱眉,愤怒,吃惊,诧异,中立情感等等,如基于检测到的面部特征的被检测到的形状和间隔,检测到的面部特征包含嘴巴,眼睛,头部的倾斜等等。在一些示例中,笑脸可以比皱眉或者愤怒的脸部分配更好的(例如,较高的)分数。可以为可能是不太期望的其他条件检查检测到的脸部,例如,脸部的眼睛是闭着的阈值时间量,例如,脸部的眼睛是闭着导致较差的(例如,较低的)分数。在一些示例中,系统可以检查图像边界之内的内容特征的位置,例如检测到的脸部或者其他对象是否在图像之内居中(例如,提供更好的分数),或者是否偏向图像区域的一边(例如,导致较差的分数)。
在一些实施方式中,可以为循环特征检查图像,并且图像的候选集合可以根据特征来得分。循环特征可以包括基于用于图像候选集合的动画如何平稳地从片段序列的最终图像显示到片段序列的第一图像的特征。例如,如果图像候选集合的最后的帧(或者最后几帧)非常类似于候选集合的第一个帧(或者前几帧),那么当图像候选集合从它最终的图像循环回到它的起始图像时,在显示的特征的动作或者位置中将没有大的不连贯性或者跳跃。在一些示例中,方框308可以检查图像候选集合,以便例如使用一个以上的图像相似性测量技术,确定候选集合中的第一和最后的图像在它们的像素内容上是否超过了阈值差。如果小于阈值差,那么特定的循环分数可以被分配给候选集合,或者与这些图像之间的类似度成比例的循环分数可以被分配给候选集合。在一些示例中,一个以上的特征(例如,脸部,物体,或者其他特征)可以在图像候选集合中被检测到,在图像候选集合的连续显示期间,一个以上的特征相对于图像的边界移动,并且图像边界之内的特征的位置的类似度可以在候选集合中的最后图像和第一图像之间被检查,并且基于该类似度而得分。
在进一步的示例中,可以为了能够与特定的分数关联的图像的一个以上的像素的视觉图像特征,检查图像。例如,视觉图像特征可以包括亮度,饱和度,对比度,模糊度或者锐度,色彩噪声,偏色,阴影,高光等等。在一些实施方式中,对于这些视觉特性的特定的阈值和/或值可以与特定的分数关联。例如子集的图像越模糊,它对于视觉特性的分数越差。一些实施方式可以为被检查的每种类型的视觉特性提供个体视觉特性分数,例如,模糊度分数,亮度分数等等。例如,个体视觉特性分数可以被组合以提供总的或者总体的视觉特征分数。
在一些实施方式中,候选集合的视觉特性可以包括图像候选集合中检测到的一个以上的图像特征的运动量。例如,如果检测到的用户的头部从帧边界的一侧显著地移动(例如,超过阈值角度范围或者图像尺寸的阈值比例或者区域)到另一侧,和/或局部地或者完全地移动到帧边界之外,那么这个运动量可能是不太期望做成用户标识符。在一个示例中,较差的分数可以被分配给具有比其他候选集合的运动多的候选集合,在其他候选集合中,用户的头部在图像序列自始至终都不太运动。在另一个示例中,候选集合的视觉特性可以包括在图像候选集合中描绘的内容相对于希望的基准方向的偏斜或者不希望的转动。例如,基于指示内容的特定朝向的描绘特征的检测到的线或者边缘(例如,使用图像边缘检测技术),可以确定图像内容相对于希望的水平基准方向(例如,地平线)的转动。偏斜或者转动越大,可以被分配的分数越差。
在一些示例中,第二用户的用户偏好(如果得到第二用户的同意而在第一设备上获得),第一用户的用户偏好,和/或响应于显示提示的用户输入,可以使得一些候选集合特征不同地得分,或者被分配与标准或者默认特征评估不同的权重。例如,第二用户(和/或第一用户)可能对于描绘第二用户不微笑的运动片段具有偏好,并且经由一个以上的脸部检测技术,系统可以确定在被选图像候选集合中的一个以上的图像中用户是否正在微笑,以便提供相应的较差分数。在另一个示例中,用户可能具有显示运动片段中的脸部的情感变化的偏好,例如,从皱眉到微笑或者反之亦然。特定用户的各种用户偏好可以涉及表示那些用户的用户标识符,和/或可以涉及表示其他用户的用户标识符,其他用户例如是指定用户和/或所有用户。
在一些实施方式中,系统可以确定对于候选集合的每个个体图像的个体图像分数,并且将个体图像分数进行组合,以确定用于该图像候选集合的总分数。如上所述,一些实施方式可以为每个类型的特征确定个体分数,其中对于候选集合的每个图像,这个个体分数被不同地确定。对于候选集合的每个图像的每个类型的特征的个体分数可以被组合,以提供用于候选集合的总分数。一些实施方式可以确定在候选集合的图像之中找到的最差图像分数(或者最佳图像分数),并且将那个最差(或者最佳)图像分数分配给候选集合作为总分数(或者作为用于图像候选集合的特定类型特征的总分数)。在一些实施方式中,如果那个最差图像分数被呈现用于候选集合的阈值数量的图像,那么最差图像分数可以被分配作为总的候选集合分数。可以替换地或者附加地使用其他得分技术。
在方框310,确定是否有要评估的附加候选集合。在一些实施方式中,可以选择另一个候选集合,另一个候选集合包括被选图像群中还没有被评估过的一个以上的图像。例如,刚刚评估的候选集合可能具有包含的十个图像,并且另一个候选集合可以被选择有在图像群的序列中向前转移一个图像(或者特定数量的图像)的十个图像。在一些实施方式中,可以从图像群中选择与先前评估的候选集合完全不同的图像候选集合,例如,候选集合中的所有图像还没有被评估过。一些实施方式可以确定先前评估的图像候选集合中哪些图像是最差得分的个体图像,并且可以从不包括那些最差得分图像的图像群中选择新的图像候选集合,例如,在图像群的序列中充分地向前或者向后转移图像候选集合,使得最差得分的图像在新的候选集合之外。一些实施方式可以在被选候选集合中保持标准数量的图像,例如,所有的候选集合具有特定数量的图像,同时其他实施方式可以为不同的候选集合选择不同数量的图像,例如,在指示用于候选集合的最少和最大数量的图像的指定范围之内。
如果有更多的图像候选集合要被评估,那么返回到方框306,以从图像群选择用于评估的不同的图像候选集合。如果没有其他的图像候选集合要评估(例如,如果评估的候选集合的数量等于特定最大值,如果图像群的所有图像已经被评估,如果图像的特定组合已经被评估等等),那么该方法继续到方框312。
在方框312,具有最佳分数的图像候选集合被选择作为用于运动片段的图像集合。在一些示例中,最佳分数可以是特定图像候选集合的最佳(例如,最高)总分数,其中,总分数可以包括如上所述的示例中的来自候选集合的个体分数的贡献。在一些实施方式中,对于不同的已评估的图像候选集合不提供分数,并且基于如上所述的一个以上的类型的特征的结果,图像候选集合可以直接被相比。例如,如果循环特征用于选择图像候选集合,那么不同的图像候选集合中的第一和最后图像之间的类似度可以被确定和比较,使得在第一和最后图像之间具有最多类似度的图像候选集合被选择为用于运动片段的图像集合。
在方框314中,在一些实施方式中,对于运动片段特定显示设置可以被限定。在一些示例中,显示设置可以包括运动片段的每个图像的显示速率(例如,帧速率)或者显示持续时间。例如,如果运动片段的目标持续时间是恒定的(例如,5秒,10秒等等),那么运动片段的显示速率可以被调整为显示运动片段中的每个图像特定时间量,以获得该运动片段的目标持续时间。如上所述,一些实施方式可以为片段中的不同图像设置不同的显示持续时间,例如,以加速或者减速运动片段的特定部分。在一些实施方式中,运动片段可以被指定作为循环运动片段或者非循环运动片段。在显示运动片段的最后的图像之后,循环运动片段在运动片段的第一图像重新开始它的显示。如此,能够获得通过存储较少的帧来节省计算资源同时仍然实现连续动画效果的技术效果。在显示运动片段的最后的图像之后,非循环运动片段停止显示变化的图像。例如,在停止之后,非循环运动片段可以连续地显示最后的图像,第一图像,或者其他存储图像(例如,用户偏好中指定的)。例如当运动片段由设备新显示时,运动片段将执行的循环数量还可以被指定用于该运动片段。例如,一个循环,特定数量的循环,或者没有停止的连续循环可以在显示设置中被指定用于该运动片段。
在方框316中,在一些实施方式中,可以修改运动片段中的一个以上的图像的一个以上的像素,和/或一个以上的图像可以被添加到运动片段(和/或从运动片段减掉)。例如,如果一个以上的图像中描绘的脸部被发现低于阈值尺寸(例如,在方框308的评估期间),那么图像的包围脸部的一个以上的外部区域可以被修剪,以使得脸部占据修剪图像的较大的区域。如果发现脸部或者其他对象偏离图像的中心,那么图像可以被修剪为使脸部居中。在一些实施方式中,用于第一设备的用户标识符可以具有预定尺寸和/或形状。可以调整运动片段的图像的大小与形状(例如,图像分辨率,边界尺寸,纵横比等等),以适合用户标识符的要求。替换地,例如当使用覆盖图像的不希望的部分的图形叠加层等等来显示图像时,一个以上的这些类型的修改可以由用户界面做出。
在一些实施方式中,可以通过亮度、对比度、色调、模糊度/锐度、和/或其他视觉图像特征中的变化来修改运动片段的一个以上的图像。在一些实施方式中,视觉效果可以被添加到运动片段的一个以上的图像。例如,在运动片段的图像序列开始时和/或序列结束时可以添加视觉效果。视觉效果的一些示例包括图像逐渐地变亮为白色或者其他亮色,或者变暗为黑色或者其他暗色,例如,淡化效果。如果连续图像的集合的显示从最后图像循环到第一图像,那么淡化效果或者变体效果可以使从序列的最后图像回到第一图像的过渡平滑。例如通过至少局部地混和这些图像,可以创建从运动片段的最后图像到运动片段的第一图像的淡化或者变体效果。在一些实施方式中,如果第一和最后图像在互相的阈值类似度之内,那么可以提供淡化效果或者变体效果。
一些实施方式可以将附加图像添加到运动片段。例如,一个以上的新的图像可以被创建并且添加到该序列,以促成如上所述的视觉效果。一些实施方式通过复制运动片段的一个以上的图像并且以相反的序列顺序将它们添加到运动片段的末尾,可以提供向前向后的循环。这使得图像序列中描绘的运动以一个方式或者方向移动,然后以相反的方式或者方向移动,例如,在运动片段从向前运动变化为向后运动的时候之后。因为第一和最后帧可以是相同的,所以这可以在循环中提供从片段的最后帧到第一帧的平稳的并且连续的过渡。
一些实施方式可以将图像添加到运动片段作为内插图像,例如,在运动片段的序列中的两个相邻图像之间提供的一个以上的图像。例如,内插图像可以描绘对象、脸部或者其他特性的位置或者状态,使用内插技术,在两个相邻图像中的那些特性的位置之间创建该位置或者状态。在一些示例中,这种内插可以提供平稳的运动,例如,如果运动片段的原始相邻图像描绘了运动中的大的间断性。一些实施方式可以将内插图像添加到运动片段的末尾或者起点,以提供第一帧和最后帧之间的较大的类似度,并且因此为循环动画提供更大的适应性。
图4是图解将运动片段分配给用户的用户标识符的示例方法400的流程图。例如,方法400可以用于图2的方框214,其中,形成的运动片段被分配给第二用户的用户标识符。其他方法可以替换地用于方框212。
在方框402,检查形成的运动片段(例如,最近创建的运动片段)是否被自动地分配给第二用户的用户标识符。例如,在一些实施方式中,形成的运动片段可以总是被分配给用户的用户标识符。在一些实施方式中,这可以是受第一用户和/或第二用户的用户偏好控制的选项(例如,可以与视频通话相关联地接收这样的偏好,或者随着用户同意,在服务器或其他设备上访问这样的偏好)。在一些实施方式中,可以检查其他条件以确定形成的运动片段是否应当被分配给用户标识符。如果形成的运动片段被自动地分配给用户标识符,那么方法继续到如下所述的方框410。
如果形成的运动片段没有被自动地分配给用户标识符,例如,检查以确定形成的运动片段是否被分配给用户标识符的条件,那么方法继续到方框404,在方框404,形成的运动片段(例如,在方框212中最近形成的运动片段)的分数和一个以上的先前形成的(“以前的”)运动片段的分数被比较。例如,在一些实施方式中,形成的运动片段的分数和先前运动片段的分数被比较,其中,形成的运动片段是在进行方框404的时候仍然被分配给第二用户的用户标识符的运动片段,先前运动片段是以前被被分配给第二用户的用户标识符的运动片段。在一些实施方式中,多个先前运动片段的分数可以与形成的运动片段进行比较,例如,在过去某个时候被分配给第二用户的用户标识符并且被存储在第一设备可访问的存储器上的先前的运动片段。在一些实施方式中,可以如上参考图3所述类似地确定分数,例如,这些分数可以与先前运动片段关联地存储在可访问的存储器中。例如,分数可以基于运动片段的一个以上的特定特征,例如,描绘的内容特征的类型,视觉图像特征,循环适应性等等。分数还可以或者替代地基于类似于如上所述的设置,用户偏好,或者用户输入。在一些实施方式中,可以与图3确定的分数不同地为方框404确定分数。例如,在方框404,可以对不同的条件不同地加权,而非在图3中不同的特征被检查等等。
在方框406,确定形成的运动片段的分数是否比在方框404与其比较的先前运动片段的分数更好(例如,更高)。例如,可以确定形成的运动片段是否具有最佳分数。如果不,在方框408,形成的运动片段不会被分配给用户标识符。这可以使得最近被分配的先前运动片段仍然被分配给第二用户的用户标识符。在一些示例中,形成的运动片段可以被丢弃,删除,或者存储,用于稍后可能的比较。如果形成的运动片段的分数比先前片段的分数更好,那么进行方框410。
在方框402或者方框406的正面结果之后进行方框410。在方框410中,形成的运动片段被分配给第二用户的用户标识符。例如,分配给用户标识符的任何先前运动片段被形成的运动片段替代。
一些实施方式可以提供附加或者替换的条件来确定形成的运动片段(例如,最近形成的运动片段)是否被分配给第二用户的用户标识符。在一些示例中,时段或者时限可以被分配给已经分配给用户标识符的特定运动片段,并且在自从该分配后该时段已经期满之后,最近的运动片段被自动地分配给用户标识符,代替那个期满的运动片段(例如,如果最近创建的运动片段是可用的)。第二用户和/或第一用户的用户偏好(并且存储在实现方法400的设备可访问的存储器中),或者响应于显示的提示而接收的用户输入,可以使得形成的运动片段被分配给用户标识符,即使那个运动片段具有比以前分配一个以上的先前运动片段的分数更差的分数(例如,如果分数没有结合用户偏好)。例如,如果第二用户(和/或第一用户)具有用于描绘不戴帽子的用户的用户标识符的已存储的偏好,并且如果在形成的运动片段的一个以上的图像中检测到帽子(例如,使用图像目标检测技术),那么形成的运动片段仍然可以不分配的给第二用户的用户标识符,即使它与比先前运动片段更好的分数关联,如果该分数不考虑那个偏好。用于表示他们自己的用户标识符、用于指定用户和/或所有用户的用户偏好的其他示例可以包括笑脸(或者非笑脸),特定亮度的运动片段图像,由先前视频通话形成的多个存储运动片段中的一个运动片段的随机选择等等。
一些实施方式可以允许第一用户手动地指示要被分配给用户标识符的运动片段,例如,类似于如上所述的重写片段,但是由第一用户指定,而不是第二用户指定(或者除了第二用户指定之外)。例如,人工选择的运动片段在第一设备的存储器或者第一设备可访问的存储器上是可用的。
一些实施方式可以分配将被用于表示单个用户的多个不同的运动片段。例如,多个不同的运动片段可以被分配给用于特定用户的特定用户标识符。在一些实施方式中,多个不同的用户标识符可以被分配给单个特定用户,其中每个不同的用户标识符与一个以上的运动片段关联。在各种实施方式中,分配给用户的每个不同的运动片段可以在显示设备上出现的不同条件集合下被显示。例如,不同的条件集合可以包括不同设备情境,例如,具有在设备上显示的输出的特定应用,被显示或者另外输出的特定类型的数据(例如,文本,图像,视频,音频等等)或者特定类型的用户界面特征(例如,窗口,图标,菜单等等),或者出现的事件(例如,接收到的呼叫或者文本消息,提示或者通知等等)。在一些示例中,如果确定第二用户正在呼叫第一设备,那么分配给第二用户的第一运动片段可以被显示在第一设备上作为用户标识符,以表示第二用户。例如,在第一设备响铃以指示第二用户正在请求通话(类似于以下在一些示例中描述的)的设备情境中,第一运动片段可以被显示。分配给第二用户的第二的不同的运动片段可以被显示在不同的设备情境中,例如,如果联系人菜单被显示并且第二用户的用户标识符被显示在菜单之内,或者如果与第二用户的文本聊天或者其他聊天会话被显示等等。在一些实施方式中,第二用户可以提供偏好以指示多个运动片段中的哪些运动片段要用于指定条件(例如,诸如第一设备的其他设备的指定设备情境)。例如,在用于第二用户的用户标识符要被显示的任何特定的情况下,一些实施方式可以从与用户标识符关联的多个存储的运动片段的集合选择随机的运动片段,以进行显示。
例如,在这些实施方式中的一些实施方式中,如上所述的方框406-410可用于确定形成的运动片段是否将被分配给与特定条件集合关联的用户标识符,例如,代替与用于那个用户标识符的那个条件集合关联的先前用户标识符。一些实施方式可以强制最大数量的运动片段与每个用户标识符或者用户关联。
图5是示例用户界面500的示意图,该示例用户界面500被显示在设备的显示器上,并且图解这里描述的一个以上的特性。在一些示例实施方式中,在设备(例如,客户端设备)上运行的应用程序可以提供用户界面500,并且可以基于接收到的并且确定的数据以及用户偏好、命令和/或其他输入来显示输出。使用界面500的用户在这些示例中被称为第一用户。
在图5中用户界面500显示视频通话联系人列表,该视频通话联系人列表显示了可以被选为由界面500的用户(和/或设备)发起的视频通话的接收者的一个以上的联系人用户。联系人用户由界面500中显示的用户标识符502表示。一些实施方式可以基于一个以上的标准按顺序显示用户标识符的列表。例如,最近已经与第一用户交流的用户的用户标识符可以被显示为更接近列表的上部。一些实施方式可以为特定用户使用的每个设备显示分开的用户标识符502。
在一个示例中,如上所述,用户标识符502被显示作为运动片段。如此,通过在为用户标识符限定的区域中随着时间而显示图像的序列,使每个用户标识符502被动画,其中在各个分配的运动片段中提供图像。在这个示例中,为用户标识符限定的区域是显示图像的圆形轮廓。例如,运动片段的图像可以被修剪为圆形,或者叠加层可以被显示在用户界面500中,该叠加层覆盖限定的圆形区域之外的显示图像的区域。其他实施方式可以呈现正方形或者矩形形状的用户标识符或者其他形状。标签(例如,文本的部分)也可以与每个用户标识符502关联,例如,如所示的被表示用户(或者其他实体或者机构)的名称,或者词语,短语,或者其他标签。
如这里描述的,在一些情况下或者一些实施方式中,为用户标识符502显示的运动片段可以显示循环动画,使得在运动片段图像序列的最后图像帧之后,显示运动片段图像序列的第一图像帧。在各种实施方式中,该循环可以是连续的,使得在用户标识符被显示在界面500中的时候,用户标识符总是显示在运动中。一些实施方式可以显示单个循环或者特定数量的循环,然后在停止动画之后,例如达到运动片段的最后图像之后,为用户标识符显示静态图像。例如,该静态图像可以是运动片段的最后图像,运动片段的第一图像,由第一用户(或者由用户标识符表示的用户)从片段或者从其他存储器选择或者指定的图像等等。
在一些实施方式中,用户界面500中显示的用户标识符502的仅仅一部分或者子集在任何给定的时段是动画的。在一些情况下,这允许特定的用户标识符在用户界面中被突出显示,以便例如协助第一用户找到那些标识符。例如,存储在设备可访问的存储器中的设置或者用户偏好可以指示多少显示的用户标识符是动画的,和/或可以指定一个以上的条件来确定哪些用户标识符在显示器上或者是在联系人列表中是动画的。
在一些实施方式中,基于关联用户相对于第一用户的状况,特定的用户标识符可以是动画的,例如,如果已经获得各个用户的同意,从可访问的用户数据确定该状况。在一些示例中,界面500仅仅为最近特定数量的用户(例如最后三个用户)的用户标识符显示动画,最近特定数量的用户参与了与第一用户和/或第一设备的视频通话。例如,其他的非动画的用户标识符可以被显示为静态图像,例如,从运动片段选择的图像或者默认图像。其他示例可以包括为联系人列表中的用户的用户标识符制作动画,该用户是第一用户最常联系的(例如,基于指示在一段时间之内的与第一用户设备的呼叫或其他通信的次数的阈值频率)、与第一用户已经有一个以上的特定社交关系(例如,第一用户的家人,第一用户的第一级朋友,网络服务中限定的特定社交群的成员等等)、和/或是具有与第一用户有关的历史的其他用户。在另一个示例中,动画的联系标识符仅仅用于将来在特定时段之内计划被第一用户呼叫的那些用户,例如,那些用户是基于设备可访问的存储的日历数据而确定的(如果已经获得第一用户的同意)。在一些实施方式中,例如,可以基于描述的一个以上的条件来改变用户标识符的循环量。例如,只有一些显示的用户标识符可以被显示为连续循环的动画,同时其他标识符可以被显示为单个循环或者具有少量的循环(例如,两个到五个循环)。
在一些实施方式中,用于用户标识符的运动片段图像的显示速率(例如,运动片段的持续时间或者动画速度)在不同的用户标识符之中可以不同。在一些示例中,显示速率可以基于各种因素中的一个以上的因素。例如,存储的设备设置和/或用户偏好可以指示一个以上的条件,以确定用于用户标识符的运动片段的各个显示速率。例如,运动片段的显示速率或者速度可以基于关联用户满足一个以上的条件的程度。一些实施方式可以基于关联用户相对于第一用户的状况来提供显示速率,例如,类似于如上所述的状况。在一些示例中,较高的显示速率可以与联系人用户对于第一用户较高的重要性或者熟悉度关联。例如,最常被第一用户呼叫或者另外与第一用户交流的联系人用户可以与以最大运动片段显示速率显示的用户标识符关联,中频交流的联系人用户可以与以中间显示速率显示的用户标识符关联,并且低频交流的联系人用户可以与以非常慢的显示速率或者作为静态图像显示的用户标识符关联。在另一个示例中,最迫切地或者最紧急地需要被第一用户呼叫的用户可以与以最高显示速率显示的用户标识符关联,根据减小的紧迫感利用为其他用户标识符的较慢的显示速率来联系关联的其他用户。一些实施方式对于第一用户具有较高的重要性或者熟悉度的用户,可以显示用户标识符为静态图像或者为利用较慢显示速率来显示用户标识符。
在用户界面500的示例中,新的视频通话图标504可以被呈现作为用于第一用户的另一个选项。当被选择时,图标504使得不同的菜单或者界面被显示,以允许第一用户输入或者选择要呼叫的用户。例如,可以响应于选择图标504来显示字段入口和/或键盘界面,以允许第一用户打入用户姓名,例如,使得匹配该姓名的用户列表被显示。第一用户可以从显示的列表选择要呼叫的用户。
在这个示例中,第一用户决定要发起与用户标识符506表示的特定用户(例如,第二用户)的视频通话。例如,通过使用触摸屏、指向设备、语音命令、或者其他输入,第一用户选择用户标识符506来发起呼叫。在一些示例中,接收该选择的设备(例如,显示用户界面500的设备)例如基于与用户标识符506关联存储的第二设备的地址信息,发出呼叫请求给已知与第二用户关联的第二设备。在一些实施方式中,在第二设备的显示器上(未显示),可以显示消息,向第二用户通知呼入的呼叫请求。此外,在一些实施方式中,可以通过第二设备显示与第一用户关联的动画用户标识符,例如,包含或者基于存储在第二设备上的或者第二设备可访问的运动片段,并且该运动片段被分配为表示第一用户,类似于如上所述的表示第二用户的运动片段。例如,呼叫请求可以使得第二设备可听见地响铃和/或在第二设备的显示屏幕上显示呼叫提示一段时间,并且在这段时间(在第二用户应答该呼叫之前)期间,呼叫者(例如,第一用户)的动画用户标识符可以被显示在第二设备显示屏幕上,例如,在指示呼入的呼叫的窗口或者其他显示区域中。在其它情况下,如果第二用户呼叫第一用户的第一设备,那么用于第二用户的用户标识符可以类似地被显示在第一设备上。
图6是示例用户界面600的示意图,该示例用户界面600被显示在设备的显示器上,并且图解示例视频通话。在这个示例中,可以响应于如上参考图5所述的第一用户选择用户标识符506来发起视频通话并且响应于第二用户接受视频通话来显示用户界面600。
用户界面600显示主视频信源602(例如,实时视频信源)该主视频信源602描绘了由参与视频通话的远程设备(例如,第二设备)捕获的场景。例如,响应于选择用户标识符506,与用户标识符506表示的用户(例如,第二用户)关联的第二设备接收到由第一用户的设备发出的呼叫请求。第二用户接受视频通话的请求,并且作为响应,在第一和第二设备之间发起视频通话。然后第二设备开始用第二设备的摄像机捕获图像。在这个示例中,例如使用第二设备的面对第二用户的前置摄像机,随着时间的推移,第二设备捕获显示第二用户的脸部的图像。随着视频通话持续,视频信源602呈现了随着时间的推移的捕获图像,该捕获图像表示第二用户的运动。第二设备的传声器可以捕获第二用户的语音,并且第二设备将捕获的语音转换为通话期间被传送给第一设备的音频数据。音频数据作为音频被第一设备输出,与在捕获语音时捕获的图像的视频信源显示同步。
用户界面600可以显示对于第一用户的可选功能。例如,当断开控制604在视频通话期间被第一用户选择时,使得视频通话被中止并且视频信源602被停止。用户窗口606可以显示实时视频信源,该实时视频信源描绘了由第一设备的摄像机捕获的场景。例如,第一设备的前置摄像机可以在视频通话期间捕获第一用户的脸部。这个视频信源602可以被发送给第二设备,作为视频通话的一部分,使得第二设备显示第一用户的视频信源606,类似于显示第二用户的视频信源602。在其他实施方式中,例如,具有多方的会议视频通话,每个参与的用户可以以类似于信源606的视频信源被显示在界面600中。
当静音控制608和610被选择时,使得由第一设备捕获的音频与视频分别被关闭,以使第二设备不接收这个数据。当摄像机控制612被选择时,使通话中的一个设备上的不同的摄像机是激活的,使得从该不同的摄像机捕获的图像被显示,用于视频信源602。例如,第一用户视频信源606和第二用户视频信源602可以被交换,或者可以选择第二设备的背面的摄像机来提供图像等等。
图7是在如图6所示视频通话已经开始或者出现之后,图5的更新用户界面500的示例的示意图。例如,在已经断开视频通话之后,或者在一些图像已经被接收作为视频通话的一部分之后的视频通话期间,第一用户已经命令显示界面500。在这个示例中,从第二用户接收到许可,以允许从图6的视频通话形成运动片段,并且在图6的视频通话期间接收到的图像已经被形成为新的运动片段,用于第二用户的用户标识符。新的运动片段已经被分配给第一用户的设备上的用于第二用户的联系人指示符702。在图7的示例中,现在显示用户标识符702,该用户标识符702基于新的动作片段显示动画。图5所示的用户标识符506与先前运动片段关联,并且不再被显示在界面500中。在各种实施方式中,新的运动片段作为最近的运动片段可能已经被自动地分配给用户标识符702,可能已经与先前运动片段进行比较并且发现得分更好,或者另外被确定为替换先前运动片段,如这里描述的示例。
图8是示例用户界面800的示意图,该示例用户界面800用于设备的消息传递功能,并且包含这里描述的一个以上的特性。用户界面800可以被显示在设备(例如,客户端设备)的显示器上,以提供即时消息传递的功能或者在该设备上运行的其他通信应用程序。
用户界面800示出已经从显示界面800的第一设备发送和接收到的(和/或从与设备关联的用户的用户账号发送和接收到的)消息。例如,从特定(例如,第二)用户接收到消息802和808,该特定用户从第二设备发送该消息。消息804和806由第一用户/第一设备发送给第二用户使用的第二设备。消息802和804在一天发送,并且消息806和808在如界面800中指示的不同的日子发送。消息可以是即时消息,电子邮件消息,文本消息(例如,通过电话网络的SMS消息),或者其他类型的电子消息。
用户标识符810和812可以被显示为识别特定消息的源用户,并且包括如这里描述的一个以上的动画特性。例如,用户标识符810表示第二用户,并且靠近第二用户发送的消息802和808显示。类似地,用户标识符812表示第一用户,并且靠近第一用户发送的消息804和806显示。用户标识符810和812被显示为动画运动片段,如这里描述的,该动画运动片段由先前视频通话形成。
在一些实施方式中,类似于如上图5的联系人列表所描述的,可以为用户标识符810和/或812提供特定显示特性。例如,可以以不同的显示速率和/或不同的循环量来显示特定用户标识符,以突出显示特定消息。例如,类似于如上所述的,显示差异可以指示关联用户相对于访问界面800的第一用户的不同的状况。在一些示例中,与旧消息的用户标识符(例如,用于消息802和804的标识符810和812)相比,最近发送消息的用户标识符(例如,用于消息806和808的标识符810和812)可以是动画的,或者是处于最高显示速率和/或循环数量的动画,该旧消息的用户标识符可以是静态图像,或者处于较慢显示速率和/或循环数量的动画。
在适当情况下,这里公开的方法中描述的方框与操作可以按照与所示的或者描述的不同的顺序进行,和/或与其他方框同时(部分或者完全)进行。对于一部分数据,可以进行一些方框,并且例如对于另一个部分数据可以稍后再次进行这些方框。在各种实施方式中,不是所有描述的方框与操作都需要进行的。在一些实施方式中,在方法中,方框与操作可以被进行多次,以不同的顺序进行,和/或在不同的时间进行。
在一些实施方式中,在诸如图1所示的一个以上的客户端设备120,122,124或者126的系统上可以实现一些或者全部方法。在一些实施方式中,例如,可以在如图1所示的服务器系统102上、和/或服务器系统和客户端系统两者上实现这里描述的一个以上的方法。在一些实施方式中,一个以上的服务器和/或客户机中不同的部件可以进行方法的不同的方框、操作或者其他部分。
图9是可以用于这里描述的一个以上的实施方式的示例设备900的方框图。在一个示例中,设备900可以用于实现这里描述的计算设备并且进行适当的方法实施方式,或者它们的一部分,计算设备实现服务器设备,例如图1的服务器设备104。设备900可以是任何合适的计算机系统,服务器,或者其他电子或者硬件设备。例如,设备900可以是大型计算机,台式计算机,工作站,便携式计算机,或者电子设备(便携式设备,手机,智能手机,平板电脑,电视,电视机顶箱,个人数字助理(PDA),媒体播放机,游戏设备,可穿戴设备,遥控装置,手持游戏或者设备控制器,等等)。
这里描述的一个以上的方法可以运行在能够在任何类型的计算设备上运行的独立程序、在网页浏览器上运行的程序、在移动计算设备(例如,手机,智能手机,平板电脑,可穿戴设备(手表,臂带,首饰,头戴设备,护目镜,眼镜等等),膝上型计算机等等)上运行的移动应用(“app”)上。在一个示例中,可以使用客户端/服务器架构,例如,移动计算设备(如客户端设备)发送用户输入数据给服务器设备,并且从服务器接收最终输出数据用于输出(例如,用于显示)。在另一个示例中,可以在移动计算设备上的移动应用(和/或其他应用)之内进行全部计算。在另一个示例中,计算可以在移动计算设备和一个以上的服务器设备之间分开。
在一些实施方式中,设备900包括处理器902,内存904和输入/输出(I/O)界面906。处理器902可以是一个以上的处理器和/或处理电路,以执行程序代码并且控制设备900的基本操作。“处理器”包括任何合适的硬件和/或软件系统,处理数据、信号或者其他信息的机构或元件。处理器可以包括具有通用中央处理单元(CPU)、多重处理单元、用于实现功能的专用电路的系统,或者其他系统。处理不必限于特定的地理位置,或者具有时间限制。例如,处理器可以“实时”,“离线”,“批处理模式”等等进行它的功能。一部分处理可以在不同的时间以及不同的地点由不同的(或者相同的)处理系统进行。计算机可以是与内存通信的任何处理器。
内存904一般地被设置在设备900中,用于由处理器902访问,并且可以是任何合适的处理器可读的存储介质,诸如随机存取存储器(RAM),只读存储器(ROM),电可擦只读存储器(EEPROM),闪存等等,适合于存储由处理器执行的指令,并且与处理器902分开和/或与处理器902集成。内存904可以存储由处理器902在服务器设备900上操作的软件,包含操作系统908和一个以上的应用910,一个以上的应用910诸如是数据显示引擎,网络托管引擎,图像显示引擎,通知引擎,社交网络引擎等等。在一些实施方式中,应用引擎910可以包括使得处理器902能够进行这里描述的功能的指令,例如图2-4的方法中的一些或者全部。例如,应用910可以包括一个以上的通信应用912,这些通信应用包含程序,该程序能够实现与其他设备的视频通话,存储和处理接收的图像,并且提供使得在设备900的显示设备上显示动画用户标识符的输出。例如,通信程序可以响应于用户输入来提供显示的用户界面,以显示可选的选项/控制,用户联系人,以及基于被选选项的交流数据。其他应用或者引擎914同样或者可以包含在应用910中,例如,图像编辑应用,媒体显示应用,网络托管引擎或者应用等等。这里公开的一个以上的方法可以在若干环境和平台中进行操作,例如,作为可以在任何类型的计算设备上运行的孤立的计算机程序,作为具有网络页面的网络应用,作为在移动计算设备上运行的移动应用(“app”)等等。
内存904中的任何软件可以替换地存储在任何其他合适的存储位置或者计算机可读介质上。此外,内存904(和/或其他连接的存储设备)可以存储图像,图像元数据(包含运动片段显示设置等等),联系人信息,数据结构,及其他信息,用户偏好,和/或用于这里描述的特性的其他指令和数据。内存904和任何其他类型的存储器(磁盘,光盘,磁带,或者其他有形的介质)可以被认为是“存储器”或者“存储设备”。
输入输出接口906可以提供能够实现服务器设备900与其他系统和设备交接的功能。例如,网络通信设备,存储设备(例如,内存和/或数据库106),以及可以经由界面906进行通信的输入输出设备。在一些实施方式中,输入输出接口可以连接接口设备,诸如输入设备(键盘,指向设备,触摸屏,传声器,摄像机,扫描仪等等)和/或输出设备(显示设备,扬声器设备,打印机,马达等等)。显示设备920是可用于显示内容的输出设备的一个示例,如这里描述的,该内容例如是在输出应用的用户界面中提供的一个以上的图像,动画,联系人信息等等。显示设备920可以经由本地连接(例如,显示总线)和/或经由网络连接被连接到设备900,并且可以是任何合适的显示设备,以下描述一些示例。
为了便于说明,图9对于处理器902,内存904,输入输出接口906以及软件方框908和910中的每个显示了一个方框。这些方框可以表示一个以上的处理器或者处理电路,操作系统,内存,输入输出接口,应用,和/或软件模块。在其他实施方式中,服务器设备900可以不具有所示的全部部件和/或可能具有其他元件,其他元件包含代替这里所示的那些元件的或者除了这里所示的那些元件之外的其他类型的元件。虽然系统102被描述为进行如这里在一些实施方式中描述的方框与操作,但是系统102或者类似系统的任何合适的部件或者部件的组合,或者与这种系统关联的任何合适的处理器或者多个处理器可以进行描述的方框与操作。
客户端设备同样可以实现和/或被用于这里描述的一个以上的特性,例如,图1所示的客户端设备120-126。示例客户端设备可以包括与设备900类似的一些部件,诸如处理器902,内存904,和输入输出接口906。适合于客户端设备的操作系统,软件和应用可以被设置在内存中并且由处理器使用,例如,视频通话软件,客户端群通信应用软件等等用于客户端设备的输入输出接口可以被连接到网络通信设备,以及输入输出装置,例如,用于捕获声音的传声器,用于感测地理位置的GPS传感器,用于捕获图像或者视频的一个以上的摄像机,用于输出声音的音频扬声器设备,用于输出图像或者视频的显示设备,和/或其他输入输出装置。例如,显示设备920可以被连接到或者被包含在设备900中,以显示这里描述的图像,其中,这种设备可以包括任何合适的显示设备,诸如LCD,LED,或者等离子显示屏幕,CRT,电视,监控器,触摸屏,3D显示屏幕,投影仪,或者其他视觉显示设备。一些实施方式可以提供音频输出设备,诸如说文本的语音输出或者合成。
这里描述的方法可以由计算机程序指令或者代码实现,计算机程序指令或者代码可以在计算机上被执行。例如,代码可以由一个以上的数字处理器(例如,微处理器或者其他处理电路)实现,并且可以被存储在计算机程序产品上,计算机程序产品包含非临时性计算机可读介质(例如,存储介质),诸如磁性的、光学的、电磁或者半导体存储介质,包含半导体或者固态存储器,磁带,可更换的计算机磁盘,随机存取存储器(RAM),只读存储器(ROM),闪存,刚性磁盘,光盘,固态存储驱动器等等。程序指令还可以被包含在电子信号中并且被设置为电子信号,例如,以作为服务(SaaS)的软件的形式从服务器(例如,分布式系统和/或云计算机系统)传递。替换地,一个以上的方法可以在硬件(逻辑门等等)或者硬件和软件组合中被实现。示例硬件可以是可编程处理机(例如现场可编程门阵列(FPGA),复杂的可编程序逻辑设备),通用处理器,图形处理器,专用集成电路(ASICs)等等。一个以上的方法可以被进行作为在系统上运行的应用的一部分或者应用的组件,或者作为连同其他应用和操作系统一起运行的应用或者软件。
进一步的实施方式被下面的示例概括:
示例1:一种计算机实现的方法,包括:确定在与第一用户关联的第一设备和与第二用户关联的第二设备之间通过通信网络连接视频通话;存储由所述第一设备接收到的多个图像的集合,作为所述视频通话的一部分;形成运动片段,所述运动片段包含所述多个图像的集合,并且指示所述多个图像的集合的用于显示的序列;将所述运动片段分配给与所述第二用户关联的用户标识符;以及响应于在所述第一设备上的至少一个用户界面中显示的所述用户标识符,使得显示所述运动片段,以视觉地表示所述第二用户。
示例2:如示例1的方法,其中,当接收所述多个图像的集合时,基于所述视频通话期间的时段,存储所述多个图像的集合。示例3:如示例2的方法,其中,在从所述视频通话开始的特定时段之内,接收所述多个图像的集合。
示例4:如示例1到3中的一个示例的方法,其中,作为所述视频通话的一部分的所述多个图像的集合是由所述第一设备接收的多个图像的子集。示例5:如示例4的方法,进一步包括自动地从所述视频通话的时段内接收的所述多个图像中选择所述多个图像的集合,所述多个图像的集合具有特定的持续时间,并且出现在所述视频通话中的特定时段。示例6:如示例4或者5的方法,进一步包括基于所述多个图像的集合中描绘的一个以上的类型的内容特征的检测,自动地从所述多个图像选择所述多个图像的集合,其中,所述一个以上的类型的内容特征包括脸部。示例7:如示例4到6中的一个的方法,进一步包括基于所述多个图像的一个以上的视觉特征的检测,自动地从所述多个图像选择所述多个图像的集合,其中,所述一个以上的视觉特征包括亮度和锐度中的至少一个。示例8:如示例4到7中的一个示例的方法,进一步包括基于所述多个图像的集合作为循环的适应性,自动地从所述多个图像选择所述多个图像的集合,由所述多个图像的集合的序列中的第一图像和最后图像之间在视觉内容上的差异来指示适应性。示例9:如示例8的方法,其中选择包含:确定由所述多个图像形成的两个以上的候选图像序列中的所述第一图像和所述最后图像之间的所述差异;以及选择所述多个图像的集合作为所述候选图像序列中的一个候选图像序列,所述一个候选图像序列在所述第一图像和所述最后图像之间的差异较小。
示例10:如示例1到9中的一个示例的方法,进一步包括从所述第二设备接收许可指示,其中所述许可指示允许所述第一设备存储来自所述视频通话的至少一部分的图像。示例11:如示例1到10中的一个示例的方法,使得显示所述用户标识符包括,当显示所述用户标识符时,使得循环显示所述多个图像的所述序列,以便在所述多个图像的集合的所述序列中的所述最后图像之后,显示所述多个图像的集合的所述序列中的第一图像。示例12:如示例1到11中的一个示例的方法,其中形成运动片段包括以下中的至少一个:将所述运动片段的显示速率设置为不同于所述视频通话的显示速率;以及将所述多个图像的集合中的至少一些图像的视觉外观修改为与所述视频通话期间显示的所述至少一些图像的视觉外观不同。示例13:如示例1到中的一个的方法,进一步包括确定所述第一设备是否接收到重写片段,所述重写片段包含要在序列中显示的多个图像的第二集合,其中,响应于接收到所述重写片段,所述重写片段被分配给所述第二用户的所述用户标识符。示例14:如示例1到13中的一个示例的方法,进一步包括:基于所述多个图像的集合中的一个以上的图像的一个以上的图像特征,确定与所述多个图像的集合关联的分数;将所述运动片段的所述多个图像的集合的所述分数与分配给从包含所述第二用户的先前视频通话中存储的图像的先前序列的分数进行比较,其中,所述图像的先前序列先前地在所述第一设备上被分配给所述第二用户的所述用户标识符;以及响应于确定与所述运动片段关联的所述分数比与所述图像的先前序列关联的所述分数更好,用所述运动片段来替换所述图像的先前序列,作为所述第二用户的所述用户标识符。
示例15:一种非临时性计算机可读介质,在所述非临时性计算机可读介质上存储有软件指令,当所述软件指令被处理器执行时,使得所述处理器进行操作,所述操作包括:在第一设备确定在与第一用户关联的所述第一设备和与第二用户关联的第二设备之间通过通信网络连接视频通话;通过通信网络从不同的设备接收许可指示,其中,所述许可指示许可所述设备存储来自视频通话的至少一部分的图像;存储所述第一设备接收的连续图像的集合,作为所述视频通话的一部分,其中,所述连续图像的集合是接收的多个图像的子集,作为所述视频通话的一部分;将所述连续图像的集合分配给与所述第二用户关联的用户标识符;以及使得连续显示所述连续图像的集合,作为所述用户标识符,以在所述第一设备上的一个以上的显示的用户界面中视觉地表示所述第一设备上的所述第二用户。
示例16:如示例15的计算机可读介质,所述用户标识符被显示在所述第一设备上的联系人列表中,并且进一步包括以下操作:接收由所述第一设备的所述第一用户选择的被显示的所述用户标识符;以及向所述第二用户发起视频通话。示例17:如示例15或者16的计算机可读介质,所述操作进一步包括基于以下中的至少一个,自动地从所述多个图像选择所述连续图像的集合:在所述视频通话的特定时段中出现并且具有特定持续时间的所述连续图像;在所述连续图像的集合中描绘的一个以上的类型的内容特征的检测;以及由所述连续图像的集合中的第一图像和最后图像之间在视觉上的差异所指示的、所述连续图像的集合作为循环的适应性。
示例18:一种设备,包括:存储设备;显示器;至少一个处理器,所述至少一个处理器被耦接到所述显示器并且被配置为访问所述存储设备,所述至少一个处理器被配置为进行操作,所述操作包括:存储所述设备接收的多个图像的集合,作为通过与第一用户关联的所述设备和与第二用户关联的不同的设备之间的通信网络的视频通话的一部分,其中所述多个图像的集合是接收的多个图像的子集,作为所述视频通话的一部分;将所述多个图像的集合与用户标识符关联,所述用户标识符与所述第二用户关联;以及使得连续显示所述多个图像的集合中的所述图像,作为所述用户标识符,以在所述第一设备上的至少一个用户界面中视觉地表示所述第一设备上的所述第二用户。
示例19:示例18的设备,所述至少一个处理器进一步进行操作,所述操作包括基于以下中的至少一个,自动地从所述多个图像选择所述多个图像的集合:在所述视频通话的特定时段中出现并且具有特定持续时间的所述多个图像;在所述多个图像的集合中描绘的一个以上的类型的内容特征的检测;以及基于所述多个图像的集合的序列中的第一图像和最后图像之间在视觉内容上的差异,所述多个图像的集合作为循环的适应性。示例20:示例18或者19的设备,所述至少一个处理器进一步进行操作,所述操作包括修改用作所述用户标识符的所述多个图像的集合,其中所述修改包括以下中的至少一个:将所述多个图像的集合的至少一些图像的显示速率设置为不同于所述视频通话的显示速率;以及将所述多个图像的集合中的至少一些图像的显示的视觉外观修改为与所述视频通话期间显示的所述多个图像的集合的视觉外观不同。
尽管已经关于特定实施方式描述了说明书,但是这些特定实施方式仅仅是说明性的,并非限制性的。示例中图示的概念可以适用于其他示例以及实施方式。
这里讨论的一个以上的系统和方法并不需要用户个人信息的收集或者利用。在这里讨论的某些实施方式可以收集或者使用关于用户的个人信息(例如,用户数据,关于用户社交网络的信息,用户的位置和时间,用户的生物信息,用户的活动和人口统计信息)的情况下,为用户提供一个以上的机会,以控制是否收集个人信息,是否存储个人信息,是否使用个人信息,以及如何收集,存储和使用关于用户的信息。也就是说,一旦从相关的用户接收这样做的明确授权,这里讨论的系统和方法就仅仅收集、存储、和/或使用用户个人信息。此外,某个数据在被存储或者使用之前,可以以一个以上的方式被处理,以便去除个人可识别的信息。作为一个示例,用户的身份信息可以被处理,使得没有个人可识别的信息可以被确定。作为另一个示例,用户的地理位置可以被概括为较大的区域,以使用户的具体地点不能被确定。
注意,在本公开中描述的功能方框,操作,特征,方法,设备和系统可以被集成或者被分成系统、设备和功能方框的不同的组合,如本领域的技术人员已知的。任何合适的程序语言和编程技术可以用于实现特定实施方式的例行程序。可以采用不同的编程技术,诸如程序上的或者面向对象的。例行程序可以在单个处理设备或者多个处理器上执行。尽管步骤,操作或者计算可以以指定的顺序呈现,但是在不同的特定实施方式中可以改变该顺序。在一些实施方式中,在这个说明书中显示为连续的多个步骤或操作可以同时进行。