本申请涉及互联网技术领域,特别涉及一种头像挂件生成方法、装置、设备及计算机可读存储介质。
背景技术:
随着互联网技术的发展,越来越多的软件,例如,游戏软件、社交软件、即时通信软件等软件已经进入用户的日常生活,方便了用户的工作、学习和娱乐。用户在使用这些软件时,通常都会设置自己的头像,利用头像代表自己在网络中的个人形象。
目前,为了方便用户配置个性化头像的需求,一些软件会提供利用头像挂件配饰头像的功能,用户使用这些软件时,可以选择一些头像挂件适配头像,以个性化个人头像。
但是这些软件为不同的用户提供的头像挂件均是相同的,基于此,不同用户很可能会选择相同的头像挂件来装饰自己的头像,而由于头像尺寸非常小,导致配饰有相同头像挂件的头像看起来非常相似,这些头像就很难代表用户在网络中的独特性,这就很难满足用户的个性化需求。
技术实现要素:
本申请实施例提供了一种头像挂件生成方法、装置以及相关设备,使得用户利用该方法生成头像挂件时,能够获得更好的个性化体验。
有鉴于此,本申请第一方面提供了一种头像挂件生成方法,所述方法包括:
获取头像,确定所述头像的挂件编辑区域;所述挂件编辑区域为弧形区域;
响应于在所述挂件编辑区域内被触发的贴图编辑操作,记录贴图编辑数据和确定贴图的位置数据;所述贴图的位置数据用于表征所述贴图在所述挂件编辑区域内的位置与所述头像中心位置之间的相对关系;
根据所述贴图编辑数据和所述贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
本申请第二方面提供一种头像挂件生成装置,所述装置包括:
挂件编辑区域确定模块,用于获取头像,确定所述头像的挂件编辑区域;所述挂件编辑区域为弧形区域;
贴图编辑操作响应模块,用于响应于在所述挂件编辑区域内被触发的贴图编辑操作,记录贴图编辑数据和确定贴图的位置数据;所述贴图的位置数据用于表征所述贴图在所述挂件编辑区域内的位置与所述头像中心位置之间的相对关系;
挂件生成模块,用于根据所述贴图编辑数据和所述贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
本申请第三方面提供一种头像挂件生成设备,所述设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令,执行如上述第一方面所述的头像挂件生成方法的步骤。
本申请第四方面提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行上述第一方面所述的头像挂件生成方法。
本申请第五方面提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得所述计算机执行上述第一方面所述的头像挂件生成方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供的头像挂件生成方法,为用户提供自定义头像挂件的服务,首先,获取用户指定的头像,基于用户指定的该头像动态地确定弧形区域为该头像的挂件编辑区域,然后,用户根据实际需求在挂件编辑区域内编辑贴图,用户可以在该挂件编辑区域内沿弧线运动轨迹移动贴图至合适的位置,即用户实施贴图编辑操作,对应的,响应于用户的贴图编辑操作,记录贴图编辑数据和贴图的位置数据,并根据记录的贴图编辑数据和贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件;通过这种自定义头像挂件的方式,方便用户根据自己爱好以贴图为基础制作满足个性化需求的头像挂件,提高了用户体验,再者,由于所记录的贴图的位置数据能够表征该贴图与头像中心之间的相对位置关系,因此,无论在何种尺寸的屏幕上显示该配置有头像挂件的头像,贴图相对于头像的位置均不会发生改变,不会对头像的显示效果产生影响,提高了头像挂件的适配性。
附图说明
图1为本申请实施例中一种头像挂件生成方法在应用中的界面示意图;
图2为本申请实施例中另一种头像挂件生成方法在应用中的界面示意图;
图3为本申请实施例中头像挂件生成系统的架构示意图;
图4为本申请实施例中一种头像挂件生成方法的流程示意图;
图5为本申请实施例中一种计算挂件编辑区域的场景示意图;
图6为本申请实施例中另一种计算挂件编辑区域的场景示意图;
图7为本申请实施例中又一种计算挂件编辑区域的场景示意图;
图7a为本申请实施例中再一种计算挂件编辑区域的场景示意图;
图8为本申请实施例中一种贴图编辑操作对应的界面示意图;
图9为本申请实施例中另一种贴图编辑操作对应的界面示意图;
图10为本申请实施例中另一种头像挂件生成方法的流程示意图;
图11为本申请实施例中一种边框选择操作和贴图选择操作对应的界面示意图;
图12为本申请实施例中一种确定第一位置并移动贴图的界面示意图;
图13为本申请应用场景中头像挂件生成方法的界面示意图;
图14为本申请实施例中第一种头像挂件生成装置的结构示意图;
图15为本申请实施例中第二种头像挂件生成装置的结构示意图;
图16为本申请实施例中第三种头像挂件生成装置的结构示意图;
图17为本申请实施例中第四种头像挂件生成装置的结构示意图;
图18为本申请实施例中第五种头像挂件生成装置的结构示意图;
图19为本申请实施例中第六种头像挂件生成装置的结构示意图;
图19a为本申请实施例中第七种头像挂件生成装置的结构示意图;
图20为本申请实施例中第八种头像挂件生成装置的结构示意图;
图21为本申请实施例中终端设备结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
如今,为了满足用户越来越强烈的个性化需求,很多软件均为用户提供了利用头像挂件装饰个人头像的功能,用户可以通过在个人头像上配置头像挂件实现头像的个性化。其中,头像挂件为能够装饰个人头像的元素,也被简称为挂件,其可以包括贴图和/或边框等装饰元素;贴图具体为用于装饰头像的图片,可以为静态图片,也可以为动态图片;贴图也被称为贴纸,为了便于说明,本申请称之为贴图;边框具体为环绕头像的装饰框,边框也可以表现为图片形式,可以是静态图片,也可以是动态图片。
发明人经研究发现,传统的头像挂件生成方法存在自定义方式受限,生成的头像挂件适配性不好等问题,仍旧无法满足用户的个性化需求。下面结合附图1和2对两种传统方法进行介绍。
参见图1,图1为本申请实施例中一种头像挂件生成方法在应用中的界面示意图;如图1所示,用户基于图像101自定义头像挂件,图像101为用户的头像,用户在定义头像挂件时,基于贴图来自定义头像挂件,其中,图像102、图像103和图像104为可供用户选择的用于装饰头像101的贴图;假设用户选定贴图103,则贴图103会被自动地设置到头像显示区域上的预设位置105;用户还可以进一步手动拖拽贴图103至合适的位置,由于在该传统方法中,设置了针对任何头像进行自定义头像挂件操作时,均仅支持贴图直线运动,基于此,贴图103的移动轨迹只能为直线的,如图1中的轨迹106、轨迹107和轨迹108所示,因此,用户若想将贴图103移动至合适的位置可能需要对贴图103反复进行移动操作。最终,当贴图103到达合适的位置后,根据该贴图103和贴图103当前所处的实际位置生成适配头像101的头像挂件。
在该传统方法中,由于贴图只能沿直线运动,因此,用户在调整贴图设置位置时,往往需要反复移动贴图才能将贴图设置到合适的位置,才能够达到用户预期的头像个性化效果,用户体验较差。并且,由于该方法对贴图的移动范围以及设置范围均没有限制,因此,用户在拖动贴图移动时,很容易将该贴图移动至用户的头像显示区域内时,这种情况下,贴图会大面积的遮挡用户头像,导致头像展示效果较差。另外,在该传统方法中针对特定头像生成与该头像适配的头像挂件,以头像挂件的实际位置为基础,在不同设备上显示具有头像挂件的该头像时,会存在显示屏尺寸不同导致头像画面失调的问题。
参见图2,为本申请实施例中另一种头像挂件生成方法在应用中的界面示意图;如图2所示,用户基于图像201自定义头像挂件,图像201为用户的头像;用户在定义头像挂件时,基于贴图来自定义头像挂件,其中,图像202、图像203和图像204为可供用户选择的用于装饰头像201的贴图;由于在该传统方法中,仅支持在预设的几个固定位置放置贴图的自定义方式,基于此,假设用户选择贴图203后,贴图203只能设置于系统提供的预设的分离的固定位置,如图2中的位置205、206、207和208,不能设置于上述固定位置外的其他位置。用户将贴图203设置于固定的用于设置贴图的位置上后,根据贴图203和贴图203所处的实际位置,生成头像201的头像挂件。
在该传统方法中,用于设置贴图的位置是固定不变的,不同的用户均只能够在系统提供的固定的位置上设置贴图,设置位置以及设置数量都非常受限,用户自定义空间很小,导致最终生成的头像挂件的差异性并不明显,无法满足用户个性化的需求,用户体验较差。
发明人经过分析发现,传统方法还不能够满足用户对头像挂件的个性化需求,并且,由于在传统方法中记录的是贴图在头像挂件图片中的绝对位置,这就导致在不同尺寸的显示屏下该头像挂件的显示效果不同,有时候会出现贴图错位的情况导致图像失真,再者,传统方法中仅针对特定头像设置头像挂件,头像挂件的通用性不强,用户体验不太好。
基于上述研究,本申请提供了一种交互性更高、适用性更强的头像挂件生成方法,该头像挂件生成方法可以应用于终端设备,终端设备是指具有面向用户交互功能的智能设备,例如,智能手机、计算机、个人数字助理(personaldigitalassitant,pda)、平板电脑等。
终端设备利用该方法,为用户提供了自定义头像挂件的服务,终端设备获取头像,根据该头像为用户提供挂件编辑区域,该挂件编辑区域为弧形区域,其中,弧形区域为支持贴图沿弧形轨迹移动的区域,即,用户在该弧形区域内移动贴图时,只能沿着弧形轨迹移动贴图;具体的,该挂件编辑区域可以为环绕头像的边缘的环形区域,即围绕头像外围的环形区域;该挂件编辑区域也可以为围绕头像中的头部位置边缘的弧形区域,该弧形区域可以围绕头部部分边缘,也可以围绕整个边缘。
基于此,用户可以在该挂件编辑区域内实施贴图编辑操作,例如,实施添加贴图、移动贴图、放大缩小贴图等等编辑操作,终端设备响应用户的该贴图编辑操作,记录贴图编辑数据和确定贴图的位置数据,其中,贴图编辑数据是指贴图经过编辑操作后对应的数据;终端设备利用该数据能够显示出贴图;贴图的位置数据是指贴图在挂件编辑区域内的位置与头像中心位置之间的相对位置,最终,根据该贴图编辑数据和贴图的位置数据生成头像挂件,并在头像中显示该头像挂件,即为该头像配饰该头像挂件。基于此,用户可以立即在头像上使用该头像挂件,也可以保存该头像挂件以供以后更换头像挂件时使用。
在本申请提供的头像挂件生成方法中,所确定的挂件编辑区域为弧形区域,该挂件编辑区域可以根据头像的实际大小和形状确定,也可以根据头像中头部位置的实际大小和形状来确定,用户在进行贴图编辑操作时,可以在此挂件编辑区域内沿弧线运动轨迹移动贴图至合适的位置。基于此,用户的自定义空间较大,不同用户设置出相同头像挂件的可能性非常小,能够满足用户对挂件的个性化需求;并且,由于贴图的设置位置和移动范围均受限在该挂件编辑区域内,因此,在进行贴图编辑操作时,能够有效地避免因将贴图移动至头像区域内而大面积遮挡头像的情况发生。
此外,由于在该头像挂件生成方法中所记录的贴图的位置数据表征的是贴图与头像中心位置之间的相对位置关系,因此,无论在何种尺寸的屏幕上显示该头像,头像上的贴图与头像之间的相对位置关系均不会发生改变,不会因显示设备型号的不同而影响头像的显示效果。而且,该头像挂件还可以很好的适配于其他头像中,其通用性较好,无需用户重复设置。
综上所述,本申请提供的头像挂件生成方法可以为用户提供较好的使用体验,并且,无论在何种显示设备上显示该头像,均能够保证较好的头像显示效果。
应理解,本申请提供的头像挂件生成方法应用于头像挂件生成系统中,参见图3,图3为本申请提供的头像挂件生成方法的场景示意图。在该场景中包括终端设备301和服务器302。服务器302也可以为独立设备,也可以采用集群服务器;服务器302可以同时为多个终端设备301提供数据支持。
用户操作终端设备301,通过终端设备301与服务器302相互通信以生成头像303的头像挂件;具体的,用户在终端设备301上确定基于头像303自定义挂件,终端设备301获取头像303后,可以根据头像303的形状类型,计算适用于该头像303的挂件编辑区域304,并为用户显示该挂件编辑区域304;当然,终端设备301获取头像303后,也可以识别头像303中是否包含具有头部特征的头部位置即头部区域,则可以根据头像303中的头部位置,计算适用于围绕该头部位置边缘的挂件编辑区域304,并为用户显示该挂件编辑区域304。
同时,终端设备301与服务器302交互,向服务器302发送头像挂件自定义请求,以从服务器302获取可供用户选择的贴图选项,进而为用户显示这些贴图选项,如贴图305、贴图306和贴图307。用户在终端设备301上可以选择用于装饰头像303的贴图,进而,用户在挂件编辑区域304中实施添加贴图、移动贴图等贴图编辑操作。如图3所示,用户选择贴图306作为装饰头像的贴图,进行贴图编辑操作过程中,可以在挂件编辑区域304沿任意移动轨迹移动贴图306至合适的位置,终端设备301响应于用户实施的每一次贴图编辑操作,记录贴图306的贴图编辑数据和贴图306的位置数据,其中,贴图的位置数据能够表征贴图306在挂件编辑区域304内的位置与头像303中心位置之间的相对关系,最终,终端设备301根据该贴图306的贴图编辑数据和贴图306的位置数据生成头像挂件,并在头像303中显示该头像挂件,还可以将用户自定义的头像挂件发送至服务器302中进行存储。
需要说明的是,上述图3所示场景仅为一种示例,在实际应用中,本申请提供的头像挂件生成方法也可以在终端设备上独立实现。
下面通过实施例对本申请提供的头像挂件生成方法进行介绍。
参见图4,图4为本申请实施例提供的一种头像挂件生成方法的流程示意图。为了便于描述,下述实施例以终端设备作为执行主体进行描述。具体如图4所示,该头像挂件生成方法包括以下步骤:
步骤401:获取头像,确定所述头像的挂件编辑区域;所述挂件编辑区域为弧形区域。
在本实施例中,头像是指用户在网站或社交平台或即时通信软件上用做用户标识的图片,也被称头像图片;具体的,该头像是用户指定的用于参与挂件生成过程的头像,可以是用户当前所使用的头像,也可以是用户随意指定的头像;则用户使用终端设备先指定参与挂件生成的头像,终端设备获取该头像,进而确定该头像的挂件编辑区域。
在本实施例中,终端设备上可以安装有即时通信应用,则终端设备基于该即时通信应用为用户提供自定义挂件的服务,具体的,终端设备可以在运行即时通信软件后,通过调用插件的方式为用户提供自定义挂件的服务;或者,终端设备上可以安装有浏览器,则终端设备基于浏览器为用户提供自定义挂件的服务;具体的,用户在终端设备上运行浏览器,通过浏览器登录网站或社交平台或即时通信网页版对应的网址,终端设备基于网站或社交平台或即时通信软件对应的网页,为用户提供自定义挂件的服务。
下面仅以终端设备上安装有即时通信应用为例,对本实施例的具体实现进行解释说明。
用户启动即时通信应用,如微信、qq等应用,则终端设备基于该即时通信应用为用户提供头像挂件自定义界面,例如,在该即时通信应用的功能控件中增加有头像挂件自定义控件,基于此,用户点击该头像挂件自定义控件,终端设备为用户显示头像挂件自定义界面。用户在该头像挂件自定义界面上,可以指定当前自定义挂件时所要使用的头像,该头像可以是用户在该即时通信应用中已使用的头像,也可以是临时指定的头像。该头像可以是人物图片、动物图片、风景图片等等,当然该头像也可以是不包含任何内容的空白图片,该图片可以是静态图片,也可以是动态图片。
由于不同应用对头像的形状尺寸有不同的要求,因此,在指定头像的过程中,终端设备通过头像挂件自定义界面还可以为用户提供头像自定义服务,即在该挂件自定义界面上提供头像编辑区域,用户在该头像编辑区域内编辑图片以生成头像。例如用户可以选定一个图片,在该头像编辑区域移动裁剪图片使得裁剪后的图片符合要求,最终生成头像,将该头像作为参与此次挂件自定义过程的头像。
终端设备获取用户指定的参与此次挂件自定义过程的头像,进而确定该头像的挂件编辑区域;该挂件编辑区域是指基于该头像所适配的能够编辑挂件的图片区域,该挂件编辑区域为基于两条弧线包围而形成的弧形区域,例如,环形区域、圆弧形区域等。具体的,该挂件编辑区域可以为环绕头像的边缘区域的弧形区域,由于在为头像进行挂件自定义的过程中,在环绕头像的边缘区域上的任意位置均可以设置贴图,因此,具体针对头像确定挂件编辑区域时,一般确定环绕头像整个边缘的环形区域为该头像的挂件编辑区域,以便可以该挂件编辑区域内沿着弧线运动方式编辑图片;此外,该挂件编辑区域也可以为围绕该头像中头部位置边缘的弧形区域。
终端设备确定出该头像的该挂件编辑区域之后,可以以高亮地方式显示该挂件编辑区域,也可以以虚线框方式突出显示该挂件编辑区域,通过这种突出显示方式以提示用户在此区域内进行编辑。
下面对终端设备确定该挂件编辑区域的具体实现过程进行说明。
若所要确定的挂件编辑区域为环绕头像的边缘的环形区域,则终端设备可以先确定头像的形状类型;头像的形状是指头像图片具体所呈现的物理形状,例如,头像为圆形、椭圆形、圆角矩形、三角形、或者正方形等等。在确定形状类型之后,终端设备根据头像的形状类型确定挂件编辑区域。
在具体实现时,终端设备可以从预设的区域计算算法库中查找与所述头像的形状类型匹配的计算算法;所述区域计算算法库中存储有计算算法,所述计算算法用于针对指定形状类型的头像计算适配的挂件编辑区域;调用查找到的计算算法计算得到所述头像的挂件编辑区域。即,终端设备可以预先存储有不同类型的头像所适配的计算算法于区域计算算法库中,每种计算算法用于针对指定形状类型的头像计算适配于该形状类型头像的挂件编辑区域;一种计算算法可以适配一种或者多种形状类型。
例如,针对圆形或者椭圆的头像,其所对应的计算算法具体为以头像的圆周为中心,根据预设圆环厚度阈值计算包含该圆周的圆环区域,将该圆环区域作为该圆形头像对应的挂件编辑区域。
再例如,针对正方形或者圆角矩形的头像,其所对应的计算算法具体为根据头像的内切圆的圆周和外接圆的圆周计算圆环,将该圆环的区域作为该正方形头像对应的挂件编辑区域。
再例如,针对三角形的头像,其所对应的计算算法具体为根据头像的内切圆的圆周和外接圆的圆周计算圆环,将该圆环的区域作为该正方形头像对应的挂件编辑区域。
再例如,针对正方形或者三角形或者圆角矩形的区域的头像,其所对应的计算算法具体以头像的周边为中心,根据预设环厚度阈值计算包含该头像的周边的正方形环或者三角环或者圆角矩形的区域,将计算得到的该区域作为该圆形头像对应的挂件编辑区域。
则在具体实现时,终端设备根据当前头像的形状,调用适配的计算算法,运行该计算算法就能够针对该头像计算出与该头像适配的挂件编辑区域。
为了更形象地理解上述挂件编辑区域,下面通过具体示例进行说明。
参见图5,图5为头像类型为圆形时确定适配于该头像的挂件编辑区域的场景示意图。其中,图501为需要配置挂件的圆形头像,终端设备从预设的区域计算算法库中调用与圆形头像对应的计算算法,假设与圆形头像对应的计算算法具体是,以该头像的圆心为圆心,以预设的同心圆的外圆半径和内圆半径为基准,计算该同心圆的不重合区域,该不重合区域即为圆环,将该圆环区域作为该头像的挂件编辑区域。其中,预设外圆半径和预设内圆半径可以是基于该头像的半径而设定的,例如,预设外圆半径为该头像半径的三分之四倍,内圆半径为该头像半径的三分之二倍。如图5所示,以头像501为基准,计算的圆502为内圆,圆503为外圆,圆502和圆503为以头像501圆心为基准的同心圆,圆502和圆503之间不重合的环形区域504即为头像501的挂件编辑区域。
当然,当头像类型为圆形时,也可以采用其他计算算法计算适配于该圆形头像的挂件编辑区域,上述计算算法仅为本申请实施例提供的一种示例计算算法,在此不对适配于圆形头像的挂件编辑区域的计算方法做任何限定。
参见图6,图6为头像类型为三角形时确定适配于该头像的挂件编辑区域的场景示意图。图601为需要配置挂件的三角形头像,终端设备从预设的区域计算算法库中调用与三角形头像所对应的计算算法,假设与三角形头像所匹配的计算算法具体是,以三角形的外接圆作为外圆,以三角形的内切圆作为内圆,该外圆和内圆所形成的环形区域即可作为该三角形头像的挂件编辑区域。如图6所示,圆602为三角形头像601的内切圆,圆603为三角形头像601的外接圆,圆602和圆603为同心圆,圆602和圆603之间的环形区域604即为头像601的挂件编辑区域。
当然,当头像类型为三角形时,也可以采用其他计算算法计算适配于三角形头像的挂件编辑区域,上述计算算法仅为本申请实施例提供的一种示例计算算法,在此不对适配于三角形头像的挂件编辑区域的计算算法做任何限定。
参见图7,图7为头像类型为正方形时确定适配于该头像的挂件编辑区域的场景示意图。图701为需要配置挂件的正方形头像,终端设备从预设的区域计算算法库中调用与正方形头像所对应的计算算法,假设与正方形头像所匹配的计算算法具体是,分别做该正方形头像的内切圆和外接圆,该内接圆与外接圆之间的环形区域即可作为该正方形头像的挂件编辑区域。如图7所示,圆702为正方形头像701的内切圆,圆703为正方形头像701的外接圆,圆702和圆703为同心圆,圆702和圆703之间的环形区域704即为头像701的挂件编辑区域。
当然,当头像类型为正方形时,也可以采用其他计算方法计算适配于正方形头像的挂件编辑区域,上述计算方法仅为本申请实施例提供的一种示例计算方法,在此不对适配于正方形头像的挂件编辑区域的计算方法做任何限定。
此外,在本实施例中参与上述挂件自定义过程的头像还可以为其他任意形状类型,在此不对头像的形状类型做任何限定。并且,针对任意形状类型的头像,仅需要在计算算法库中预先配置匹配的适用于该形状类型头像的挂件编辑区域的计算算法,在此也不会计算算法库所提供的用于计算挂件编辑区域的计算算法作一一列举。
若所要确定的挂件编辑区域为围绕头像中头部位置边缘的弧形区域,则终端设备识别该头像中的头部位置,根据该头部位置确定该头像挂件编辑区域,该挂件编辑区域为围绕该头像中头部位置边缘的弧形区域。
具体实现时,若头像中主体显示的是人物,则终端设备可以根据头像中包括的人物类型,采取对应的算法识别该头像中人物的头部位置,例如,若头像中包括的人物为真实人物,则终端设备可以采用对应的人脸识别算法,识别出该头像中头部特征,进而确定该头像中的头部位置;又例如,若头像中包括的人物为动画人物,则终端设备也可以采用对应于动画人物的脸部识别算法,识别出该头像中任务的头部特征,进而确定出该头像中的头部位置。
应理解,若头像中主体显示的是动物,则终端设备也可以相应地根据头像中的动物类型,采用对应的算法识别出该头像中动物的头部位置。
当然,也可以采用其他方法确定头像中的头部位置,在此不对识别头像中头部位置的方法做任何限定。
定位出头像中的头部位置后,确定挂件编辑区域为包含头部位置边缘的整个轮廓或者部分轮廓的弧形区域,该挂件编辑区域的面积大小是根据其所包含的头部边缘外围轮廓的长度与头部边缘外围整个轮廓的比例以及头部位置区域面积而确定的。例如,头部位置区域面积为24mm2,而假设挂件编辑区域所包含的外围轮廓的长度与头部外围整个轮廓的比例为1/2,预设面积比例因子为1/4,则挂件编辑区域的面积为1/2、1/4以及24mm2这三者的乘积,即3mm2;即,更具体的,该挂件编辑区域的面积为其所包含的外围轮廓的长度与头部外围整个轮廓的比例、预设面积比例因子以及头部位置区域面积这三者的乘积。
当然,还可以采用其他方式根据头像中的头部位置确定挂件编辑区域,在此不对确定该挂件编辑区域的方式做任何限定。
为了更形象地理解上述挂件编辑区域,下面结合附图通过具体示例进行说明。
参见图7a,图7a为确定适配于该头像中头部位置的挂件编辑区域的场景示意图。图701a为需要配置挂件的头像,终端设备先识别该头像中具有头部特征的位置作为头部位置,再确定挂件编辑区域需环绕该头部位置上半部分的轮廓,再根据该头部位置所覆盖区域的面积确定该挂件编辑区域的面积,具体的,该挂件编辑区域的面积大小是根据其所包含的外围轮廓的长度与头部外围整个轮廓的比例以及头部位置区域面积而确定的,最终根据该面积和挂件编辑区域需环绕该头部位置上半部分的轮廓,确定出挂件编辑区域。如图7a中702a所示的虚线弧形区域。
终端设备获取头像并确定出该头像的挂件编辑区域之后,为用户显示该挂件编辑区域,用户基于该挂件编辑区域即可进行挂件编辑。
在本实施例中,终端设备具体为用户提供的是基于贴图的挂件自定义方式,即用户可以通过在挂件编辑区域编辑贴图的方式来制作个性化的挂件。
步骤402:响应于在所述挂件编辑区域内被触发的贴图编辑操作,记录贴图编辑数据和确定贴图的位置数据;所述贴图的位置数据用于表征所述贴图在所述挂件编辑区域内的位置与所述头像中心位置之间的相对关系。
终端设备确定并显示挂件编辑区域后,用户可以在终端设备上进行贴图编辑操作,该贴图编辑操作可以包括贴图移动操作,当然也可以包括添加贴图、放大/缩小贴图等操作;终端设备响应用户在该挂件编辑区域内所实施的每一次贴图移动操作,相应地记录贴图编辑数据和确定贴图的位置数据,该贴图的位置数据能够表征贴图在挂件编辑区域内的位置与头像中心位置之间的相对关系。
此外,若用户认为所选择的贴图的大小不合适,用户可以在挂件编辑区域内对贴图进行缩小或放大操作,以使贴图的大小达到预期的效果。用户在该挂件编辑区域内可以放大/缩小贴图,终端设备会响应这些操作,记录被放大或者被缩小后的贴图对应的数据作为贴图编辑数据,用户可以移动贴图至目标位置之前实施对贴图放大或者缩小操作,可以在移动贴图至目标位置之后实施对贴图放大或者缩小操作,不论在何时触发该操作,终端设备均会响应该操作记录对应的贴图编辑数据。当然,若用户认为所选择的贴图的大小合适,不需要在挂件编辑区域内对贴图进行缩小或放大操作,则终端设备可以直接记录所选择的贴图本身作为贴图编辑数据。
例如,终端设备可以响应于被触发的贴图移动确定操作,该贴图移动确定操作可以是用户将贴图移动到目标位置后点击贴图的操作,即用户每一次将贴图移动到目标位置时,可以点击一次贴图,即表明当前位置为目标位置,基于此,终端设备响应该贴图移动确定操作,记录当前操作所对应的贴图编辑数据并确定该贴图的位置数据。
再例如,终端设备可以响应于被触发的贴图移动确定事件,该贴图移动确定事件可以是用户触发贴图移动操作并且停留在某个位置达到预设时间时所触发的事件,该预设时间可以是几毫秒;即用户将贴图移动的目标位置时无需点击操作,可以刻意停留几毫秒,此时即触发了贴图移动确定事件,基于此,终端设备则会记录当前被移动的贴图的贴图编辑数据并确定该贴图的位置数据。
下面通过示例对贴图的位置数据进行解释说明。
该贴图的位置数据可以是以头像中心位置为零点坐标,计算贴图在挂件编辑区域内的实际位置与该零点坐标之间的相对坐标位置。该相对坐标位置可以以坐标向量的形式,或者以相对零点坐标轴中x轴或者y轴的相对角度和半径的形式来表达。
下面以贴图的位置数据为坐标向量的形式为例进行说明。例如,当头像为圆形时,头像的中心位置即为圆形的圆心处,贴图的位置数据即为其在挂件编辑区域内的位置相对于头像圆心的位置数据,即以头像圆心为零点坐标建立新坐标系,重新确定该贴图在新坐标系中的坐标位置。例如,假设贴图在挂件编辑区域内的实际位置为(0,5);而头像中心即圆心的实际位置为(5,5),则可以计算出贴图的位置数据为(-5,0)。其中,贴图在挂件编辑区域内的实际位置可以理解为贴图中心在挂件编辑区域内的实际位置。当然,当头像为其他形状类型时,可以相应地采用其他记录方式记录贴图与头像中心位置之间的相对关系,在此不对贴图位置数据的记录方式做任何限定。
下面以贴图的位置数据为以相对零点坐标轴中y轴的相对角度和半径的形式来表达为例进行说明。例如,仍旧以上述场景为基础,则贴图在挂件编辑区域的实际位置为(0,5),而头像中心即圆心的实际位置为(5,5),则可以计算出以头像中心位置作坐标零点位置建立坐标系,计算贴图在挂件编辑区域的实际位置相对该零点位置的距离5,作为半径,计算相对y轴的角度为270度,则可以记录该贴图的位置数据为,以头像的中心位置为坐标零点位置建立坐标系中,以半径为5圆,相对y轴角度为270度。
如上文所述,用户可以通过在挂件编辑区域内编辑贴图的方式来自定义头像挂件,其中,贴图可以是用户从其他存储空间复制粘贴的,当然,为了给用户提供更友好的交互界面。在本实施例中,终端设备可以在挂件自定义界面上为用户提供贴图选择服务,即在该挂件自定义界面上为用户显示贴图选择界面。具体实现时,终端设备响应于用户触发的头像挂件自定义操作,将可供用户选择的贴图显示在贴图选择界面上,当贴图数目较多时,还可以以翻页形式为用户展示所有选项。
在终端设备显示贴图选择界面的基础上,用户可以在贴图选择界面上选择感兴趣的贴图,相应地,终端设备响应于用户的贴图选择操作,将被选中的贴图加载到挂件编辑区域。
具体实现时,用户可以点击贴图选项中的某一贴图,终端设备相应地将该用户点击的贴图加载到挂件编辑区域内某一预设初始位置,该预设初始位置可以是随机的一个位置,也可以预设的一个固定位置;此外,终端设备也可以支持用户通过拖拽方式将被选中的贴图拖拽到挂件编辑区域内,即用户还可以在贴图选项中的选中某一贴图,并将该贴图拖拽至挂件编辑区域内加载显示。
在选定贴图并且将贴图加载至挂件编辑区域之后,用户就可以进一步编辑该贴图,通过编辑该贴图以制作头像挂件。
需要说明的是,用户可以在整个头像上移动贴图但是只能将贴图放置于挂件编辑区域,即在头像的除去挂件编辑区域之外其他区域内禁止放置贴图,这就能够防止贴图遮挡头像核心区域,能够保证头像画面效果。
另外,在自定义挂件的过程中,用户可以仅选择一个贴图,也可以选择多个不同的贴图,本实施例对贴图的具体种类和具体数量均不作限定,只有能够在挂件编辑区域内部署即可。
为了便于理解,下面结合具体应用场景,以挂件编辑区域为环绕头像的边缘的环形区域为例,对上述贴图编辑操作进行介绍:
参见图8,图8为一种进行贴图编辑操作时的界面示意图。如图8所示,用户触发头像挂件自定义操作后,终端设备会相应地在头像挂件自定义界面上显示贴图选择界面,用户可以在该界面上的贴图选项区中,选择用于装饰头像801上的贴图。假设用户选定贴图803作为装饰头像801上的贴图后,终端设备将贴图803自动加载至挂件编辑区域内预设初始位置上,如图8中的位置805;当然,用户也可以从贴图选项区中手动拖拽贴图803至挂件编辑区域内任意位置。
贴图803显示于挂件编辑区域内后,用户可以根据自身的个性化需求,在挂件编辑区域内对贴图803进行贴图移动操作,以将贴图803移动至合适的位置,具体的,用户可以控制贴图803沿轨迹806移动,使贴图803绕头像801顺时针运动至合适的位置;用户也可以控制贴图803沿轨迹807移动,使贴图803绕头像801逆时针运动至合适的位置,以使头像的显示效果满足用户的个性化需求,并记录贴图每一次被移动到目标位置时所对应的贴图编辑数据,并确定贴图的位置数据。
此外,为了进一步增强用户头像的个性化效果,用户还可以自定义贴图样式,即用户除了可以在系统提供的贴图选项中选取用于装饰头像的贴图,还可以从本地图库中选择图片作为贴图,或者,选择开启终端设备的摄像头拍摄图片,将所拍摄的图片作为贴图。
为了便于理解,下面结合具体应用场景,对该种贴图编辑操作进行介绍:
参见图9,图9为另一种进行贴图编辑操作时的界面示意图。如图9所示,用户触发头像挂件自定义操作后,终端设备会相应地在挂件自定义界面上显示贴图选择界面,在该界面还设置有自定义贴图按钮,用户点击该自定义贴图按钮进入自定义贴图模式后,终端设备会提醒用户可以从本地图库中选择图片作为贴图,或者可以启用拍照模式。若用户选择从本地图库中选择图片作为贴图,则终端设备将跳转至相册界面,用户可以在相册中选取任意图片作为装饰头像的贴图;若用户选择拍照模式,则终端设备自动开启摄像头,用户可以利用摄像头拍摄照片,进而将所拍摄的照片作为装饰头像的贴图。用户通过上述任一种方式选定贴图后,贴图将显示于挂件编辑区域,用户可以在此区域内沿弧线运动轨迹移动该贴图至合适的位置,并对贴图进行放大或缩小操作,以使头像的显示效果满足用户的个性化需求,记录此时挂件编辑区域内的贴图编辑数据并确定贴图的位置数据。
当然,也可以采用其他方式在挂件编辑区域内进行上述贴图编辑操作,上述贴图编辑操作为本申请实施例提供的示例性的操作方式,在此不对贴图编辑操作的具体形式做任何限定。
步骤403:根据所述贴图编辑数据和贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
用户完成贴图编辑操作后,若用户确认当前配置有挂件的头像显示效果已达到用户预期的头像显示效果,则用户可以点击头像挂件自定义界面上的完成按钮,确认完成头像挂件的自定义操作。终端设备响应于用户点击完成按钮的操作,确认使用当前挂件编辑区域内的贴图生成头像挂件,即根据当前挂件编辑区域内的贴图编辑数据和贴图的位置数据生成头像挂件,并在该头像中显示该头像挂件。
此外,若用户在头像挂件生成界面上长时间停留,且不继续进行贴图编辑操作,终端设备可以默认用户已完成头像挂件的自定义操作,进而,根据挂件编辑区域内当前的贴图编辑数据和贴图的位置数据生成头像挂件,并在该头像中显示该头像挂件。
当然,终端设备还可以根据其他操作形式确认用户已完成头像挂件的自定义操作,在此不对能够表征用户完成头像挂件的自定义操作的具体形式做任何限定。
终端设备生成头像挂件后,还可以进一步将生成的头像挂件发送至服务器,以将该头像挂件保存至用户自定义的挂件库中,以便用户在之后需要使用头像挂件装饰头像时,可以从服务器的挂件库中直接调取其中保存的头像挂件,无需再次通过贴图编辑操作重新生成头像挂件,进一步提高了用户的使用体验。
本申请实施例提供的头像挂件生成方法,获取用户指定的头像,根据该头像确定适配于该头像的弧形挂件编辑区域,该挂件编辑区域可以根据头像的实际大小和形状确定,也可以根据头像中头部位置的实际大小和形状来确定,用户可以在该挂件编辑区域内进行添加贴图、移动贴图等贴图编辑操作,贴图可以设置在该挂件编辑区域内的任意位置,并且响应于用户的贴图编辑操作,贴图可以在该挂件编辑区域内贴图沿弧线运动轨迹移动。贴图编辑操作完成后,终端设备记录该贴图编辑数据,并确定能够表征该贴图在挂件编辑区域内的位置与头像中心位置之间的相对关系的贴图位置数据,并根据记录的贴图编辑数据和贴图的位置数据生成头像挂件,并在头像中显示该头像挂件。由于所记录的贴图的位置数据能够表征该贴图与头像中心之间的相对位置关系,因此,无论在何种尺寸的屏幕上显示该配置有挂件的头像,贴图相对于头像的位置均不会发生改变,进而不会对头像的显示效果产生影响。
为了进一步满足用户的个性化需求,使得头像的显示效果更能够体现用户的个性,本申请实施例提供的头像挂件生成方法还可以结合边框元素生成装饰头像的挂件。参见图10,图10为本申请实施例提供的另一种头像挂件生成方法的流程示意图。如图10所示,该方法包括:
步骤1001:获取头像,确定所述头像的挂件编辑区域。
步骤1001的具体实现过程与上述实施例中步骤401类似,详见上述步骤401的相关内容,在此不再对步骤1001的实现过程进行详细描述。
步骤1002:响应于被触发的头像挂件自定义操作,显示挂件元素选择界面;所述挂件元素选择界面上承载贴图元素控件和边框元素控件。
步骤1003:响应于所述边框元素控件被触控的操作,显示边框选择界面。
步骤1004:响应于被触发的边框选择操作,将被选中的边框加载到所述挂件编辑区域内,并记录所述边框的位置数据。
步骤1005:响应于所述贴图元素控件被触控的操作,显示贴图选择界面。
步骤1006:响应于被触发的贴图选择操作,将被选中的贴图加载到所述边框之上。
下面对上述步骤1002至步骤1006具体实现方法进行介绍:
用户触发头像挂件自定义操作后,终端设备响应于该用户触发的头像挂件自定义操作,显示挂件元素选择界面,该挂件元素选择界面上包括贴图元素控件和边框元素控件。
用户点击边框元素控件,终端设备会响应于该边框元素控件被触控的操作,向服务器发送获取边框元素的请求,服务器相应地将自身存储的边框元素返回给终端设备,终端设备将这些边框元素显示在边框选择界面上的边框选择区;用户可以在边框选择区内选择边框,具体的,用户可以通过点击边框选择区内的边框来选择用于装饰头像的边框,终端设备响应于该边框选择操作,将被选中的边框加载到挂件编辑区域内显示,并记录该边框的位置数据,边框的位置数据能够表征边框中心位置与头像中心位置之间的关系,边框中心位置为边框外圆和边框内圆重叠的圆心所在的位置,该边框的中心位置与头像的中心位置重合。
相类似的,用户点击贴图元素控件,终端设备会响应于贴图元素控件被触控的操作,向服务器发送获取贴图元素的请求,服务器相应地将自身存储的贴图元素返回给终端设备,终端设备将这些贴图显示在贴图选择界面上的贴图选择区;用户可以在贴图选择区内选择贴图,具体的,用户可以通过点击贴图选择区内的贴图来选择用于装饰头像的贴图,用户也可以将贴图选择区内的某一贴图拖拽至挂件编辑区域内,将该贴图作为用户选中的贴图。终端设备响应于上述贴图选择操作,将被选中的贴图加载到挂件编辑区域内,若挂件编辑区域内已显示有边框,则相应地将该贴图加载到该边框上显示。
需要说明的是,上述边框选择操作和贴图选择操作的执行顺序不固定,具体实现时,可以先执行边框选择操作,再执行贴图选择操作,也可以先执行贴图选择操作,再执行边框选择操作。但是无论按何种顺序执行边框选择操作和贴图选择操作,本申请实施例提供的方法均能够保证贴图显示于边框之上,即边框不会遮挡贴图。
为了便于理解,下面结合具体应用场景,以挂件编辑区域为环绕头像的边缘的环形区域为例,对上述操作过程进行介绍:
参见图11,图11为上述边框选择操作和贴图选择操作对应的界面示意图。如图11所示,用户触发头像挂件自定义操作后,终端设备会相应地显示挂件元素选择界面,该挂件元素选择界面中包括有贴图元素控件和边框元素控件。应理解,终端设备显示挂件元素选择界面时,可以默认先为用户展示边框元素,当用户点击贴图元素控件时再相应地为用户展示贴图元素,当然,终端设备显示挂件元素选择界面时,也可以默认先为用户展示贴图元素,当用户点击边框元素控件时再相应地为用户展示边框元素,在此不对挂件元素选择界面上默认显示的元素类型做限定,如图11所示,终端设备显示挂件元素选择界面时,默认先为用户展示边框元素。
用户可以点击边框元素控件,终端设备相应地显示边框选择界面,边框选择界面中包括边框选择区,该边框选择区用于显示系统提供的边框1102、1103和1104等边框,用户点击选择边框1102,相应地终端设备将边框1102加载到挂件编辑区域1101内。
用户继续点击贴图元素控件,终端设备相应地显示贴图选择界面,贴图选择界面中包括贴图选择区,该贴图选择区用于显示系统提供的贴图1105、1106和1107等贴图,用户点击选择贴图1106,相应地贴图1106显示在边框1102上。
步骤1007:响应于在所述挂件编辑区域内被触发的贴图编辑操作,记录贴图编辑数据和确定所述贴图的位置数据。
步骤1008:根据所述边框、所述边框的位置数据、所述贴图编辑数据和所述贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
上述步骤1007和步骤1008的具体实现过程可以参照上述实施例中步骤402和403,详见上述步骤402和403的相关内容,此处不再赘述。
本申请实施例提供的头像挂件生成方法,在利用贴图生成头像挂件的基础上,进一步为用户提供了可以用于装饰头像的边框元素,给用户提供更多的个性化元素选择,用户可以将贴图和边框结合起来生成头像挂件,使得头像能够呈现更好的显示效果,进而使头像更能够满足用户的个性化需求。
为了进一步实现头像的个性化显示效果,用户可以根据自身的需求在挂件编辑区域内设置任意个数的贴图,当在挂件编辑区域内设置多个贴图时,用户很容易将贴图移动至挂件编辑区域内已设置有贴图的位置,这样该被移动的贴图就会遮挡已设置在此处的贴图,出现贴图叠加显示的情况,进而导致头像的显示效果较差。
为了防止在挂件编辑区域内发生贴图遮挡的情况,执行上述实施例中的步骤402或步骤1007时,还可以进一步判断贴图的移动目标位置处是否已存在贴图,若否,则根据贴图的移动目标位置和头像中心位置计算生成贴图位置数据,并记录该贴图编辑数据和确定该贴图的位置数据;若是,则在挂件编辑区域内确定出与贴图移动目标位置临近的并且未设置贴图的第一位置;根据该第一位置和头像中心位置计算生成该贴图的位置数据;再记录该贴图编辑数据和确定该贴图的位置数据。
具体实现时,用户可以通过触控终端设备的屏幕,来控制选定的贴图在挂件编辑区域内移动,即用户可以在终端设备的屏幕上画出移动轨迹,相应地,贴图在挂件编辑区域内沿该移动轨迹方向移动。当用户停止触控终端设备的屏幕时,终端设备即可确定该贴图已到达移动目标位置。
此时,终端设备判断该移动目标位置处是否已存在之前设置在此处的贴图,若不存在,终端设备即可将贴图设置在该移动目标位置处,根据移动目标位置和头像中心位置之间的相对关系,计算生成该贴图的位置数据。
反之,若终端设备判断该移动目标位置处已存在之前设置在此处的贴图,则在挂件编辑区域内选择与该移动目标位置临近的,并且之前未设置贴图的位置作为第一位置,可以认为第一位置为空白位置,在该第一位置处设置该贴图。终端设备确定第一位置时,可以根据当前移动的贴图的中心与移动目标位置处已存在的贴图的中心之间的相对关系,确定第一位置所处的位置。
具体的,若当前移动的贴图的中心相对于移动目标位置处已存在的贴图的中心处于顺时针方向,则终端设备可以在挂件编辑区域内相对于该移动目标位置的顺时针方向上,以预设距离为步长逐步选择临近的且未设置贴图的位置作为第一位置;相类似的,若当前移动的贴图的中心相对于移动目标位置处已存在的贴图的中心处于逆时针方向,则终端设备可以在挂件编辑区域内相对于该移动目标位置的逆时针方向上,以预设距离为步长逐步选择临近的未设置贴图的位置作为第一位置;若当前移动的贴图的中心与移动目标位置处已存在的贴图的中心重合,则终端设备既可以在相对于该移动目标位置的顺时针方向上确定与移动目标位置临近的第一位置,又可以在相对于该移动目标位置的逆时针方向上确定与移动目标位置临近的第一位置。
为了便于理解,下面以挂件编辑区域为环绕头像的边缘的环形区域为例进行说明,当前移动的贴图中心相对于移动目标位置处已存在的贴图的中心处于顺时针方向的情况为例,结合具体应用场景对上述确定第一位置并相应地移动贴图的方法进行介绍:
参见图12,图12为确定第一位置并移动贴图的界面示意图。如图12所示,用户将贴图1201移动至移动目标位置,但是该移动目标位置处先前已设置有贴图1202,由于贴图1201的中心相对于贴图1202的中心处于顺时针方向,终端设备相应地在顺时针方向上,以预设距离为步长,逐步确定与移动目标位置1202最临近的且未设置有贴图的位置1203作为第一位置,进而将贴图1201移动至该第一位置1203。
当然,还可以采用其他方法确定第一位置,在此不对第一位置的确定方法做任何限定。
上述头像挂件生成方法中,判断贴图的移动目标位置处是否设置有其他贴图,当该移动目标位置处已设置有其他贴图时,终端设备确定与该目标位置处临近的且没有设置其他贴图的位置作为第一位置,在该第一位置处设置该贴图。这样,有效地避免了在挂件编辑区域内出现贴图叠加显示的情况,进一步保证了所生成的头像挂件的美观性。
为了便于理解本申请提供的头像挂件生成方法,下面结合具体的应用场景,以挂件编辑区域为环绕头像的边缘的环形区域为例,对本申请实施例提供的头像挂件生成方法进行介绍:
参见图13,图13为本申请应用场景中的头像挂件生成方法的界面示意图。用户通过点击头像触发进行头像挂件自定义操作,进入如图13中1301所示的挂件元素选择界面,该挂件元素选择界面上设置有贴图元素控件和边框元素控件,并且,该挂件元素选择界面上默认先为用户展示边框元素。用户在进入挂件元素选择界面后,终端设备获取用户选定的头像,并自动根据该用户头像的形状类型等属性,匹配出适配于该头像的挂件编辑区域1304,并相应地在环绕头像的边缘区域显示该挂件编辑区域1304。
用户可以直接在如图13中1301所示的挂件元素选择界面上显示的边框元素中选择用于装饰头像的边框,当然,当挂件元素选择界面上默认先为用户展示贴图元素时,用户可以通过点击挂件元素选择界面上的边框元素控件,相应地进入如图13中1302所示的边框选择界面,用户在边框选择界面上的边框选择区内选择边框1305作为装饰头像的边框,相应地,边框1305加载在挂件编辑区域1304上,终端设备记录该边框1305以及该边框1305的位置数据。
进一步地,用户可以点击挂件元素选择界面上的贴图元素控件,相应地进入如图13中1303所示的贴图选择界面,用户在贴图选择界面上的贴图选择区内选择贴图1306作为装饰头像的贴图,相应地,贴图1306加载在挂件编辑区域1304中预设的贴图加载位置上。用户可以通过触控终端设备,在挂件编辑区域1304中移动贴图1306,如图13所示,用户通过触控终端设备使贴图1306沿逆时针运动至合适的位置,终端设备记录该贴图1306的贴图编辑数据,并确定该贴图1306的位置数据。
为了使个人头像更能够展示个人性格,用户还可以在贴图选择区内继续选择装饰头像的贴图,如图13所示,用户在贴图选择区内又进一步选择了贴图1307,并将该贴图1307移动至挂件编辑区域1304内的移动目标位置,由于该移动目标位置处已设置有贴图1306,为了避免贴图1307遮挡贴图1306,终端设备根据贴图1307中心和贴图1306中心的相对位置关系,在挂件编辑区域1304内确定一个与贴图1307移动目标位置临近的且未设置贴图的位置作为第一位置,并将该贴图1307设置在该第一位置上。
用户确认当前的头像显示效果已满足个人的个性化需求,可以点击当前界面上完成按钮,以确定完成贴图编辑操作。终端设备相应地记录此时挂件元素选择界面上的各贴图的贴图编辑数据,并确定各贴图的位置数据,其中,各贴图的位置数据为各贴图在挂件编辑区域1304内的位置与头像中心位置之间的相对位置关系。进而,根据上述被选择的边框、边框的位置数据、上述贴图编辑数据及贴图位置数据,生成用户的头像挂件。
针对上文描述的头像挂件生成方法,本申请还提供了对应的头像挂件生成装置,以便于这些方法在实际中的应用及实现。
参见图14,图14是与上文图4所示方法相对应的一种头像挂件生成装置1400的结构图,该装置1400包括:
挂件编辑区域确定模块1401,用于获取头像,确定头像的挂件编辑区域;所述挂件编辑区域为弧形区域;
贴图编辑操作响应模块1402,用于响应于在所述挂件编辑区域内被触发的贴图编辑操作,记录贴图编辑数据和确定所述贴图的位置数据;所述贴图的位置数据用于表征所述贴图在所述挂件编辑区域内的位置与所述头像中心位置之间的相对关系;
挂件生成模块1403,用于根据所述贴图编辑数据和所述贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
本申请实施例提供的头像挂件生成装置,获取头像,根据该头像确定适配于该头像的弧形挂件编辑区域,该挂件编辑区域可以根据头像的实际大小和形状确定,也可以根据头像中头部位置的实际大小和形状来确定,用户可以在该挂件编辑区域内进行添加贴图、移动贴图等贴图编辑操作,贴图可以设置在该挂件编辑区域内的任意位置,并且响应于用户的贴图编辑操作,贴图可以在该挂件编辑区域内贴图沿弧线运动轨迹移动。贴图编辑操作完成后,终端设备记录该贴图编辑数据,并确定能够表征该贴图在挂件编辑区域内的位置与头像中心位置之间的相对关系的贴图位置数据,并根据记录的贴图编辑数据和贴图的位置数据生成头像挂件,由于所记录的贴图的位置数据能够表征该贴图与头像中心之间的相对位置关系,因此,无论在何种尺寸的屏幕上显示该配置有挂件的头像,贴图相对于头像的位置均不会发生改变,进而不会对头像的显示效果产生影响。
可选的,在上述图14所示装置的基础上,参见图15,图15是本申请实施例提供的另一种头像挂件生成装置1500的结构图,该装置在图14所示装置的基础上,还包括:
贴图选择界面显示模块1501,用于响应于被触发的头像挂件自定义操作,显示贴图选择界面;
贴图加载模块1502,用于响应于被触发的贴图选择操作,将被选中的贴图加载到所述挂件编辑区域内。
为了进一步满足用户的个性化需求,使得头像的显示效果更能够体现用户的个性,本申请实施例提供的头像挂件生成装置还可以结合边框元素生成装饰头像的挂件。
可选的,在上述图14所示装置的基础上,参见图16,图16是与上文图10所示方法相对应的一种头像挂件生成装置1600的结构图,该装置在图14所示的装置的基础上,还包括:
挂件元素选择界面显示模块1601,用于响应于被触发的头像挂件自定义操作,显示挂件元素选择界面;所述挂件元素选择界面上承载贴图元素控件和边框元素控件;
边框选择界面显示模块1602,用于响应于所述边框元素控件被触控的操作,显示边框选择界面;
边框加载模块1603,用于响应于被触发的边框选择操作,将被选中的边框加载到所述挂件编辑区域内,并记录所述边框的位置数据;
贴图选择界面显示模块1604,用于响应于所述贴图元素控件被触控的操作,显示贴图选择界面;
贴图加载模块1605,用于响应于被触发的贴图选择操作,将被选中的贴图加载到所述边框之上;
则所述挂件生成模块1403,具体用于根据所述边框、所述边框的位置数据、所述贴图编辑数据和所述贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
本申请实施例提供的头像挂件生成装置,在利用贴图生成头像挂件的基础上,进一步为用户提供了可以用于装饰头像的边框元素,用户可以将贴图和边框结合起来生成头像挂件,使得头像能够呈现更好的显示效果,进而使头像更能够满足用户的个性化需求。
可选的,在上述图14所示装置的基础上,参见图17,图17是本申请实施例提供的又一种头像挂件生成装置1700的结构图,该装置中贴图编辑操作响应模块1402包括:
贴图移动操作响应子模块1701,用于响应于在所述挂件编辑区域内被触发的贴图移动操作,确定被移动的贴图和所述贴图的移动目标位置;
位置数据生成子模块1702,用于根据所述贴图的移动目标位置和所述头像中心位置计算生成所述贴图的位置数据;
记录子模块1703,用于记录所述贴图编辑数据和确定所述贴图的位置数据。
为了防止在挂件编辑区域内发生贴图遮挡的情况,可选的,在上述图17所示装置的基础上,参见图18,图18是本申请实施例提供的又一种头像挂件生成装置1800的结构图,该装置在图17所示的贴图编辑操作响应模块1402中还包括:
判断子模块1801,用于判断所述移动目标位置是否已存在贴图;若否,则根据所述贴图的移动目标位置和所述头像中心位置计算生成所述贴图的位置数据;记录所述贴图编辑数据和确定所述贴图的位置数据。
可选的,判断子模块1801还用于:
判断所述移动目标位置是否已存在贴图;若是,则在所述挂件编辑区域内确定出与所述移动目标位置临近的并且未设置贴图的第一位置;根据所述第一位置和所述头像中心位置计算生成所述贴图的位置数据;记录所述贴图编辑数据和确定所述贴图的位置数据。
本申请实施例提供的头像挂件生成装置中,判断贴图的移动目标位置处是否设置有其他贴图,当该移动目标位置处已设置有其他贴图时,终端设备确定与该目标位置处临近的且没有设置其他贴图的位置作为第一位置,在该第一位置处设置该贴图。这样,有效地避免了在挂件编辑区域内出现贴图叠加显示的情况,进一步保证了所生成的头像挂件的美观性。
可选的,在上述图14所示装置的基础上,参见图19,图19是本申请实施例提供的又一种头像挂件生成装置1900的结构图,该装置中挂件编辑区域确定模块1401包括:
形状类型确定子模块1901,用于确定所述头像的形状类型;
挂件编辑区域确定子模块1902,用于根据所述头像的形状类型确定所述头像的挂件编辑区域,所述挂件编辑区域为环绕头像的边缘的环形区域。
可选的,该装置中挂件编辑区域确定子模块1902具体用于:
从预设的区域计算算法库中查找与所述头像的形状类型匹配的计算算法;所述区域计算算法库中存储有计算算法,所述计算算法用于针对指定形状类型的头像计算适配的挂件编辑区域;
调用查找到的计算算法计算得到所述头像的挂件编辑区域。
可选的,在上述图14所示装置的基础上,参见图19a,图19a是本申请实施例提供的又一种头像挂件生成装置1900a的结构图,该装置中挂件编辑区域确定模块1401包括:
头部位置识别子模块1901a,用于识别所述头像中的头部位置;
挂件编辑区域确定子模块1902a,用于根据所述头部位置确定所述头像的挂件编辑区域,所述挂件编辑区域为围绕所述头像中头部位置边缘的弧形区域。
可选的,在上述图14所示装置的基础上,参见图20,图20是本申请实施例提供的又一种头像挂件生成装置2000的结构图,该装置在图14所示的装置的基础上,还包括:
挂件保存模块2001,用于向服务器发送所述头像挂件,以将所述头像挂件保存至用户自定义的头像库中。
利用本申请实施例提供的头像挂件生成装置,能够为用户提供新形式的自定义挂件的服务,通过这种自定义挂件的方式,方便用户根据自己爱好以贴图为基础在挂件编辑区域内移动贴图,以制作挂件,自定义空间较大,提高了用户体验,再者,由于所记录的贴图的位置数据能够表征该贴图与头像中心之间的相对位置关系,因此,无论在何种尺寸的屏幕上显示该配置有挂件的头像,贴图相对于头像的位置均不会发生改变,不会对头像的显示效果产生影响,提高了挂件的适配性。
本申请实施例还提供了一种头像挂件生成设备,如图21所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该头像挂件生成设备可以为包括手机、平板电脑、个人数字助理(英文全称:personaldigitalassistant,英文缩写:pda)、销售终端(英文全称:pointofsales,英文缩写:pos)、车载电脑等任意终端设备,以终端为手机为例:
图21示出的是与本申请实施例提供的终端相关的手机的部分结构的框图。参考图21,手机包括:射频(英文全称:radiofrequency,英文缩写:rf)电路2110、存储器2120、输入单元2130、显示单元2140、传感器2150、音频电路2160、无线保真(英文全称:wirelessfidelity,英文缩写:wifi)模块2170、处理器2180、以及电源2190等部件。本领域技术人员可以理解,图21中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图21对手机的各个构成部件进行具体的介绍:
rf电路2110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器2180处理;另外,将设计上行的数据发送给基站。通常,rf电路2110包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(英文全称:lownoiseamplifier,英文缩写:lna)、双工器等。此外,rf电路2110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(英文全称:globalsystemofmobilecommunication,英文缩写:gsm)、通用分组无线服务(英文全称:generalpacketradioservice,gprs)、码分多址(英文全称:codedivisionmultipleaccess,英文缩写:cdma)、宽带码分多址(英文全称:widebandcodedivisionmultipleaccess,英文缩写:wcdma)、长期演进(英文全称:longtermevolution,英文缩写:lte)、电子邮件、短消息服务(英文全称:shortmessagingservice,sms)等。
存储器2120可用于存储软件程序以及模块,处理器2180通过运行存储在存储器2120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器2120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器2120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元2130可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元2130可包括触控面板2131以及其他输入设备2132。触控面板2131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板2131上或在触控面板2131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板2131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器2180,并能接收处理器2180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板2131。除了触控面板2131,输入单元2130还可以包括其他输入设备2132。具体地,其他输入设备2132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元2140可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元2140可包括显示面板2141,可选的,可以采用液晶显示器(英文全称:liquidcrystaldisplay,英文缩写:lcd)、有机发光二极管(英文全称:organiclight-emittingdiode,英文缩写:oled)等形式来配置显示面板2141。进一步的,触控面板2131可覆盖显示面板2141,当触控面板2131检测到在其上或附近的触摸操作后,传送给处理器2180以确定触摸事件的类型,随后处理器2180根据触摸事件的类型在显示面板2141上提供相应的视觉输出。虽然在图21中,触控面板2131与显示面板2141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板2131与显示面板2141集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器2150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板2141的亮度,接近传感器可在手机移动到耳边时,关闭显示面板2141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路2160、扬声器2161,传声器2162可提供用户与手机之间的音频接口。音频电路2160可将接收到的音频数据转换后的电信号,传输到扬声器2161,由扬声器2161转换为声音信号输出;另一方面,传声器2162将收集的声音信号转换为电信号,由音频电路2160接收后转换为音频数据,再将音频数据输出处理器2180处理后,经rf电路2110以发送给比如另一手机,或者将音频数据输出至存储器2120以便进一步处理。
wifi属于短距离无线传输技术,手机通过wifi模块2170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图21示出了wifi模块2170,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器2180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器2120内的软件程序和/或模块,以及调用存储在存储器2120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器2180可包括一个或多个处理单元;优选的,处理器2180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器2180中。
手机还包括给各个部件供电的电源2190(比如电池),优选的,电源可以通过电源管理系统与处理器2180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本申请实施例中,该终端所包括的处理器2180还具有以下功能:
获取头像,确定所述头像的挂件编辑区域;所述挂件编辑区域为弧形区域;
响应于在所述挂件编辑区域内被触发的贴图编辑操作,记录贴图编辑数据和确定所述贴图的位置数据;所述贴图的位置数据用于表征所述贴图在所述挂件编辑区域内的位置与所述头像中心位置之间的相对关系;
根据所述贴图编辑数据和所述贴图的位置数据生成头像挂件并在所述头像中显示所述头像挂件。
本申请实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例所述的一种头像挂件生成方法中的任意一种实施方式。
本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的一种头像挂件生成方法中的任意一种实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read-onlymemory,英文缩写:rom)、随机存取存储器(英文全称:randomaccessmemory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。