CN109614173B - 一种换肤方法及装置 - Google Patents

一种换肤方法及装置 Download PDF

Info

Publication number
CN109614173B
CN109614173B CN201710919930.0A CN201710919930A CN109614173B CN 109614173 B CN109614173 B CN 109614173B CN 201710919930 A CN201710919930 A CN 201710919930A CN 109614173 B CN109614173 B CN 109614173B
Authority
CN
China
Prior art keywords
skin
original
color value
picture
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710919930.0A
Other languages
English (en)
Other versions
CN109614173A (zh
Inventor
金春雨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201710919930.0A priority Critical patent/CN109614173B/zh
Publication of CN109614173A publication Critical patent/CN109614173A/zh
Application granted granted Critical
Publication of CN109614173B publication Critical patent/CN109614173B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44573Execute-in-place [XIP]

Abstract

本发明实施例公开了一种换肤方法及装置,其中,所述换肤方法包括:接收用户发起的换肤请求;解析皮肤资源包,得到目标皮肤下的图片色值;根据所述图片色值对原始皮肤下的原始图片进行染色处理。本发明实施例能够减小应用安装包的体积,减少皮肤资源包的解析工作量,提高换肤效率。

Description

一种换肤方法及装置
技术领域
本发明实施例涉及数据处理技术领域,具体涉及一种换肤方法及装置。
背景技术
现有的应用(Application)换肤实现方案中,通常会把皮肤资源包打包进应用安装包内,当用户触发换肤动作时,终端对相应的皮肤资源包进行解析,以从皮肤资源包中获取目标背景信息及目标图片,利用目标背景信息将原始背景更换成目标背景,利用目标图片替换原始图片。
而一个应用通常有多套皮肤,这样就需要把多套皮肤对应的皮肤资源包,打包至对应的应用安装包内,这样一来,导致应用安装包的体积很大,需要占用较大的存储空间,且换肤的过程中,皮肤资源包的解析工作量也很大,最终导致换肤效率较低。
发明内容
有鉴于此,本发明实施例提供了一种换肤方法及装置,能够减少对存储空间的占用,提高换肤效率。
一方面,本发明实施例提供的换肤方法,包括:
接收用户发起的换肤请求;
解析皮肤资源包,得到目标皮肤下的图片色值;
根据所述图片色值对原始皮肤下的原始图片进行染色处理。
一方面,本发明实施例提供的换肤装置,包括:
接收单元,用于接收用户发起的换肤请求;
解析单元,用于解析皮肤资源包,得到目标皮肤下的图片色值;
图片处理单元,用于根据所述图片色值对原始皮肤下的原始图片进行染色处理。
另一方面,本发明实施例提供的换肤方法,包括:
接收用户发起的换肤请求;
解析皮肤资源包,得到目标皮肤下的图片地址信息;
根据所述图片地址信息加载目标图片。
可选地,所述根据所述图片地址信息加载目标图片包括:
根据所述图片地址信息通过网络从服务器加载所述目标图片;
或者根据所述图片地址信息从本地存储加载所述目标图片。
另一方面,本发明实施例提供的换肤装置,包括:
接收单元,用于接收用户发起的换肤请求;
解析单元,用于解析皮肤资源包,得到目标皮肤下的图片地址信息;
图片处理单元,用于根据所述图片地址信息加载目标图片。
可选地,所述图片处理单元根据所述图片地址信息通过网络从服务器加载所述目标图片;或者根据所述图片地址信息从本地存储加载所述目标图片。
本发明实施例中,在皮肤资源包中携带目标皮肤下的图片色值,在接收到用户发起的换肤请求之后,针对图片部分,仍沿用原始图片,只需根据皮肤资源包中携带的图片色值对原始图片进行染色处理,通过图片染色技术实现了图片的复用,不同皮肤可以复用同一张图片,因而,换肤的皮肤资源包中不用携带占用空间较大的目标图片,减小了应用安装包的体积,节省了存储空间,减少了皮肤资源包的解析工作量,提高了换肤效率。另外,由于皮肤资源包中不用携带图片,可以用极低的成本的拓展皮肤种类,更大程度地满足了用户的需求。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例所提供的换肤方法的一个场景示意图;
图2是现有技术的换肤方法示意图;
图3是本发明实施例所提供的换肤方法的一个流程示意图;
图4a是本发明实施例所提供的换肤方法的另一流程示意图;
图4b是本发明实施例的一个图片染色效果示意图;
图5是本发明实施例所提供的换肤装置的一个结构示意图;
图6是本发明实施例所提供的换肤装置的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于现有的换肤方案,皮肤资源包内需要携带对应皮肤的图片,导致皮肤资源包体积过大,需要占用较大的存储空间,对应地,皮肤资源包的解析工作量也较大,换肤效率较低,因而,本发明实施例提供了一种换肤方法,能够减少对存储空间的占用,提高换肤效率。本发明实施例提供的换肤方法可以实现在换肤装置中,换肤装置可以为手机、平板电脑等终端。
本发明实施例换肤方法一个具体实施场景可如图1所示,当需要换肤时,用户可以在终端上执行特定的操作(例如触发换肤按键)发起换肤请求,终端接收到用户发起的换肤请求之后,会解析皮肤资源包(该皮肤资源包可以预先下载,也可以在接收到换肤请求之后下载),以获取目标皮肤下的图片色值,根据所述图片色值对原始皮肤下的原始图片进行染色处理,与此同时,还可以根据皮肤资源包中的背景数据将原始背景替换成目标背景,以此实现换肤。
本发明一个具体的换肤方法例如图1所示,当需要将A皮肤换成B皮肤时,在终端接收到用户发起的换肤请求之后,终端解析皮肤资源包获取目标皮肤下的图片色值及背景色值,直接根据所述图片色值对皮肤A中的图片A1、A2、A3进行染色处理,得到图片A1”、A2”、A3”,根据所述背景色值填充上B皮肤对应的背景,即实现了换肤。图2所示为现有的换肤方法,当需要将A皮肤换成B皮肤时,终端需要解析皮肤资源包,以获取目标皮肤下的目标图片(B1、B2、B3)和背景色值,然后将原始皮肤下的图片A1、A2、A3替换成目标图片B1、B2、B3,根据上述背景色值填充上B皮肤对应的背景。通过对比,可以看出,本发明实施例换肤的皮肤资源包中,不需要携带目标图片,携带图片色值即可,因而可以避免皮肤资源包体积过大,减少对存储空间的占用,减小皮肤资源包的解析工作量,提高了换肤效率。
以下分别进行详细说明,需说明的是,以下实施例的序号不作为对实施例优选顺序的限定。
实施例一
如图3所示,本实施例的方法包括以下步骤:
步骤301、接收用户发起的换肤请求;
应用的皮肤是应用的一种界面展示效果,不同的皮肤有不同的展示效果,可以适应不同用户的审美习惯和需求。应用的皮肤可按照风格进行分类,例如可爱皮肤、唯美皮肤、炫酷皮肤等。一款皮肤需要包括对应的背景(例如背景的颜色,背景字体的颜色等)、对应的图片等。当用户想要更换皮肤时,可以通过应用发起换肤请求,终端接收用户发起的换肤请求。
步骤302、解析皮肤资源包,得到目标皮肤下的图片色值;
色值,指的是颜色在颜色模式中所对应的颜色值。在红(Red)绿(Green)蓝(Blue)RGB颜色模式中,颜色由原色红色、绿色、蓝色混合而成。将颜色用一个十六进制符号来定义,这个符号由红色、绿色和蓝色的值组成。每种颜色的最小值是0(十六进制:#00),最大值是255(十六进制:#FF),例如:红色在RGB颜色模式中所对应的值就是255,0,0;绿色在RGB颜色模式中所对应的值就是0,255,0;蓝色在RGB颜色模式中所对应的值就是0,0,255。
可以使用这些值改变背景色、文本颜色和链接颜色。这些值以十六进制表示,前两位数字代表红色值;接下来两位表示绿色;最后两位表示蓝色。每个红色、绿色或蓝色值可以在00(没有该颜色)到FF(完全是该颜色)之间变化。通过计算256*256*256可知,从0到255的红色、绿色和蓝色的值,一共可以组合出1600万种不同的颜色,不同的颜色具有不同的色值。
具体在本实施例中,图片色值为皮肤资源包中的一个可扩展标记语言(Extensible Markup Language,XML)类的配置文件。皮肤资源包可以预先打包在对应的应用安装包内,随着对应的应用安装包一起下载;也可以不和对应的应用安装包打包在一起,而在接收到用户发起的换肤请求之后,从对应的皮肤资源库下载。
解析皮肤资源包,可以得到目标皮肤下的图片色值,该图片色值可以理解为,在该皮肤下,各个图片应该被染成的具体颜色。另外,皮肤资源包中还可以包括目标皮肤下的背景色值,该背景色值可以理解为,在该皮肤下,背景(包括但不限于背景的颜色、背景文字的颜色)的颜色值。当然,皮肤资源包中还可以包括其他信息,例如控制时间戳的信息等,可视具体需求自定义,此处不做具体限定。
步骤303、根据所述图片色值对原始皮肤下的原始图片进行染色处理。
原始皮肤中包括原始图片、原始背景等。本实施例中,在换肤的过程中,原始图片染色后仍沿用。
图片染色即给图片加上指定色值的遮罩,具体在本实施例中,可以利用染色属性tint属性控制图片的染色色值,利用染色模式tint模式控制图片的着色模式,给所述原始图片加上所述图片色值的遮罩。
tint模式共有六种:
add:两层绘制叠加融合;
multiply:取两层绘制的交集;
screen:上下层都显示;
src_atop:取下层非交集部分与上层交集部分;
src_in:取交集,显示上层;
src_over:tint色覆盖住图片,都显示。
下面以src_in着色模式为例,说明对原始图片进行染色的过程,染色的过程中可以保留原始图片的透明度。src_in着色模式,即取指定颜色(即上述图片色值对应的颜色)的遮罩与原始图片的重叠部分(即非完全透明部分),将重叠部分全部染成遮罩的颜色,具体如下:
对原始图片的每个像素点进行采样,得到原始图片中每个像素点的原始色值;
根据遮罩的色值计算每个像素点的目标色值:目标色值等于Sa*Dc;其中,Sa表示原始图片的像素点的原始Alpha通道值(透明通道值),Dc表示遮罩的像素点的色值;其中,Alpha通道用来记录图像中的透明度信息,Alpha通道是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中黑表示透明,白表示不透明,灰表示半透明;
将每个像素点的原始色值替换成对应的目标色值。
另外,每个像素点的目标Alpha通道值等于:Sa*Da;其中Da表示表示遮罩的像素点的Alpha通道值,由于要保留原始图片的透明度,则Da取值为1,这样一来,Sa*Da=Sa*1=Sa,每个像素点的目标Alpha通道值等于对应像素点的原始Alpha通道值。
针对原始背景,可以直接根据皮肤资源包中携带的背景色值将原始背景更换成目标背景。例如:可以根据背景色值将黑色背景色更换成白色背景色,黑色背景色下,文字颜色为白色,当更换成白色背景色之后,将文字颜色更换成黑色。
本实施例中,在皮肤资源包中携带目标皮肤下的图片色值,在接收到用户发起的换肤请求之后,针对图片部分,仍沿用原始图片,只需根据皮肤资源包中携带的图片色值对原始图片进行染色处理,通过图片染色技术实现了图片的复用,不同皮肤可以复用同一张图片,因而,换肤的皮肤资源包中不用携带占用空间较大的目标图片,减小了应用安装包的体积,节省了存储空间,减少了皮肤资源包的解析工作量,提高了换肤效率。
另外,由于皮肤资源包中不用携带图片,可以用极低的成本的拓展皮肤种类,更大程度地满足了用户的需求。
实施例二
实施例一所描述的方法,本实施例将举例作进一步详细说明,如图4a所示,本实施例的方法包括:
步骤401、接收用户发起的换肤请求;
应用的皮肤是应用的一种界面展示效果,不同的皮肤有不同的展示效果,可以适应不同用户的审美习惯和需求。应用的皮肤可按照风格进行分类,例如可爱皮肤、唯美皮肤、炫酷皮肤等。一款皮肤需要包括对应的背景(例如背景的颜色,背景字体的颜色等)、对应的图片等。当用户想要更换皮肤时,可以通过应用发起换肤请求,终端接收用户发起的换肤请求。
步骤402、解析皮肤资源包,得到目标皮肤下的背景色值及图片色值;
本实施例中,皮肤资源包可以预先打包在对应的应用安装包内,随着对应的应用安装包一起下载;也可以不和对应的应用安装包打包在一起,而在接收到用户发起的换肤请求之后,从对应的皮肤资源库下载。
解析皮肤资源包,可以得到目标皮肤下的图片色值,该图片色值可以理解为,在该皮肤下,各个图片应该被染成的具体颜色。另外,皮肤资源包中还可以包括目标皮肤下的背景色值,该背景色值可以理解为,在该皮肤下,背景(包括但不限于背景的颜色、背景文字的颜色)的颜色值。色值,指的是颜色在颜色模式中所对应的颜色值。当然,皮肤资源包中还可以包括其他信息,例如控制时间戳的信息等,可视具体需求自定义,此处不做具体限定。
步骤403、将原始皮肤下的原始背景更换成所述背景色值对应的目标背景;
针对原始背景,可以直接根据皮肤资源包中携带的背景色值将原始背景更换成目标背景。例如:可以根据背景色值将黑色背景色更换成白色背景色,黑色背景色下,文字颜色为白色,当更换成白色背景色之后,将文字颜色更换成黑色。
本实施例中,在换肤的过程中,原始图片染色后仍沿用。图片染色即给图片加上指定色值的遮罩,具体在本实施例中,可以利用染色属性tint属性控制图片的染色色值,利用染色模式tint模式控制图片的着色模式,给所述原始图片加上所述图片色值的遮罩。
下面以src_in着色模式为例,说明对原始图片进行染色的过程,染色的过程中可以保留原始图片的透明度。src_in着色模式,即取指定颜色(即上述图片色值对应的颜色)的遮罩与原始图片的重叠部分(其实就是非完全透明部分),将重叠部分全部染成遮罩的颜色,一个具体的染色效果可如图4b所示,具体染色过程可如下:
步骤404、取所述图片色值的遮罩,根据所述遮罩的色值计算每个像素点的目标色值;
具体地,目标色值等于Sa*Dc;其中,Sa表示原始图片的像素点的原始Alpha通道值(透明通道值),Dc表示遮罩的像素点的色值;其中,Alpha通道用来记录图像中的透明度信息,Alpha通道是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中黑表示透明,白表示不透明,灰表示半透明;
步骤405、对原始皮肤下的原始图片的每个像素点进行采样,得到每个像素点的原始色值;
步骤406、将每个像素点的原始色值替换成对应的目标色值。
另外,每个像素点的目标Alpha通道值等于:Sa*Da;其中Da表示表示遮罩的像素点的Alpha通道值。在换肤的时候,可以保留原始图片的透明度,即Da取值为1,这样一来,Sa*Da=Sa*1=Sa,每个像素点的目标Alpha通道值等于对应像素点的原始Alpha通道值。
本实施例中,在皮肤资源包中携带目标皮肤下的图片色值,在接收到用户发起的换肤请求之后,针对图片部分,仍沿用原始图片,只需根据皮肤资源包中携带的图片色值对原始图片进行染色处理,通过图片染色技术实现了图片的复用,不同皮肤可以复用同一张图片,因而,换肤的皮肤资源包中不用携带占用空间较大的目标图片,减小了应用安装包的体积,节省了存储空间,减少了皮肤资源包的解析工作量,提高了换肤效率。
另外,由于皮肤资源包中不用携带图片,可以用极低的成本的拓展皮肤种类,更大程度地满足了用户的需求。
在本发明的另一实施例中,还可以将皮肤资源包中携带的目标皮肤下的图片色值替换成目标皮肤下的图片地址信息。在接收到用户发起的换肤请求之后,可以解析皮肤资源包,得到目标皮肤下的图片地址信息,根据该图片地址信息加载目标图片。例如可以根据图片地址信息,通过网络从服务器加载所述目标图片,或者根据所述图片地址信息从本地存储加载所述目标图片,用加载的目标图片替换原始图片。针对背景部分的换肤实现,可参阅前文对应的描述。相较于现有技术,该方案通过皮肤资源包中携带的地址信息重新加载了图片,该方案的皮肤资源包中仍不需要携带占用空间较大的目标图片,因而仍然可以减小应用安装包的体积,节省存储空间,减少皮肤资源包的解析工作量。
实施例三
为了更好地实施以上方法,本发明实施例还提供一种换肤装置,如图5所示,本实施例的装置包括:接收单元501、解析单元502以及图片处理单元503,如下:
(1)接收单元501;
接收单元501,用于接收用户发起的换肤请求。
应用的皮肤是应用的一种界面展示效果,不同的皮肤有不同的展示效果,可以适应不同用户的审美习惯和需求。应用的皮肤可按照风格进行分类,例如可爱皮肤、唯美皮肤、炫酷皮肤等。一款皮肤需要包括对应的背景(例如背景的颜色,背景字体的颜色等)、对应的图片等。当用户想要更换皮肤时,可以通过应用发起换肤请求,接收单元501接收用户发起的换肤请求。
(2)解析单元502;
解析单元502,用于解析皮肤资源包,得到目标皮肤下的图片色值。
色值,指的是颜色在颜色模式中所对应的颜色值。在红(Red)绿(Green)蓝(Blue)RGB颜色模式中,颜色由原色红色、绿色、蓝色混合而成。将颜色由一个十六进制符号来定义,这个符号由红色、绿色和蓝色的值组成。每种颜色的最小值是0(十六进制:#00),最大值是255(十六进制:#FF),例如:红色在RGB颜色模式中所对应的值就是255,0,0;绿色在RGB颜色模式中所对应的值就是0,255,0;蓝色在RGB颜色模式中所对应的值就是0,0,255。
可以使用这些值改变背景色、文本颜色和链接颜色。这些值以十六进制表示,前两位数字代表红色值;接下来两位表示绿色;最后两位表示蓝色。每个红色、绿色或蓝色值可以在00(没有该颜色)到FF(完全是该颜色)之间变化。通过计算256*256*256可知,从0到255的红色、绿色和蓝色的值,一共可以组合出1600万种不同的颜色,不同的颜色具有不同的色值。
具体在本实施例中,图片色值可以为皮肤资源包中的一个可扩展标记语言(Extensible Markup Language,XML)类的配置文件。皮肤资源包可以预先打包在对应的应用安装包内,随着对应的应用安装包一起下载;也可以不和对应的应用安装包打包在一起,而在接收到用户发起的换肤请求之后,从对应的皮肤资源库下载。
解析单元502解析皮肤资源包,可以得到目标皮肤下的图片色值,该图片色值可以理解为,在该皮肤下,各个图片应该被染成的具体颜色。另外,皮肤资源包中还可以包括目标皮肤下的背景色值,该背景色值可以理解为,在该皮肤下,背景(包括但不限于背景的颜色、背景文字的颜色)的颜色值。当然,皮肤资源包中还可以包括其他信息,例如控制时间戳的信息等,可视具体需求自定义,此处不做具体限定。
(3)图片处理单元503;
图片处理单元503,用于根据所述图片色值对原始皮肤下的原始图片进行染色处理。
原始皮肤中包括原始图片、原始背景等。本实施例中,在换肤的过程中,原始图片染色后仍沿用。
图片染色即给图片加上指定色值的遮罩,具体在本实施例中,图片处理单元503可以利用染色属性tint属性控制图片的染色色值,利用染色模式tint模式控制图片的着色模式,给所述原始图片加上所述图片色值的遮罩。
tint模式共有六种:
add:两层绘制叠加融合;
multiply:取两层绘制的交集;
screen:上下层都显示;
src_atop:取下层非交集部分与上层交集部分;
src_in:取交集,显示上层;
src_over:tint色覆盖住图片,都显示。
下面以src_in着色模式为例,说明对原始图片进行染色的过程,染色的过程中可以保留原始图片的透明度。src_in着色模式,即取指定颜色(即上述图片色值对应的颜色)的遮罩与原始图片的重叠部分(其实就是非完全透明部分),将重叠部分全部染成遮罩的颜色,具体图片处理单元可以包括采样子单元、计算子单元及替换子单元,如下:
采样子单元,用于对原始图片的每个像素点进行采样,以获取原始图片中每个像素点的原始色值;
计算子单元,用于根据遮罩的色值计算每个像素点的目标色值:目标色值等于Sa*Dc;其中,Sa表示原始图像的像素点的原始Alpha通道值(透明通道值),Dc表示遮罩的像素点的色值;其中,Alpha通道用来记录图像中的透明度信息,Alpha通道是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中黑表示透明,白表示不透明,灰表示半透明;
替换子单元,用于将每个像素点的原始色值替换成对应的目标色值。
另外,所述采样子单元还用于,对所述原始图片的每个像素点进行采样,以获取每个像素点的原始透明通道值;
所述计算子单元还用于,根据所述遮罩的透明度通道值计算每个像素点的目标透明度通道值;每个像素点的目标Alpha通道值等于:Sa*Da;其中Da表示表示遮罩的像素点的Alpha通道值,由于要保留原始图片的透明度,则Da取值为1,这样一来,Sa*Da=Sa*1=Sa,每个像素点的目标Alpha通道值等于对应像素点的原始Alpha通道值。
所述替换子单元还用于,将每个像素点的原始透明通道值替换成对应的目标透明度通道值。
另外,本实施例的换肤装置还包括背景处理单元,背景处理单元可以直接根据皮肤资源包中携带的背景色值将原始背景更换成目标背景。例如:可以根据背景色值将黑色背景色更换成白色背景色,黑色背景色下,文字颜色为白色,当更换成白色背景色之后,将文字颜色更换成黑色。
需要说明的是,上述实施例提供的换肤装置在实现换肤时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的换肤装置与换肤方法属于同一构思,其具体实现过程详见方法实施例,此处不再赘述。
本实施例中,在皮肤资源包中携带目标皮肤下的图片色值,在接收单元接收到用户发起的换肤请求之后,图片处理单元针对图片部分,仍沿用原始图片,只需根据皮肤资源包中携带的图片色值对原始图片进行染色处理,通过图片染色技术实现了图片的复用,不同皮肤可以复用同一张图片,因而,换肤的皮肤资源包中不用携带占用空间较大的目标图片,减小了应用安装包的体积,节省了存储空间,减少了皮肤资源包的解析工作量,提高了换肤效率。
另外,由于皮肤资源包中不用携带图片,可以用极低的成本的拓展皮肤种类,更大程度地满足了用户的需求。
实施例四
相应的,本发明实施例还提供了一种换肤装置,该换肤装置可以包括但不限于手机、平板电脑等终端设备,如图6所示,该装置可以包括射频(RF,Radio Frequency)电路601、包括有一个或一个以上计算机可读存储介质的存储器602、输入单元603、显示单元604、传感器605、音频电路606、无线保真(WiFi,Wireless Fidelity)模块607、包括有一个或者一个以上处理核心的处理器608、以及电源609等部件。本领域技术人员可以理解,图6中示出的装置结构并不构成对装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路601可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器608处理;另外,将涉及上行的数据发送给基站。通常,RF电路601包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路601还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器602可用于存储软件程序以及模块,处理器608通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据装置的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器608和输入单元603对存储器602的访问。
输入单元603可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元603可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器608,并能接收处理器608发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元603还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元604可用于显示由用户输入的信息或提供给用户的信息以及装置的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元604可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器608以确定触摸事件的类型,随后处理器608根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图6中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
换肤装置还可包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于装置还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路606、扬声器,传声器可提供用户与装置之间的音频接口。音频电路606可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路606接收后转换为音频数据,再将音频数据输出处理器608处理后,经RF电路601以发送给比如另一终端,或者将音频数据输出至存储器602以便进一步处理。音频电路606还可能包括耳塞插孔,以提供外设耳机与装置的通信。
WiFi属于短距离无线传输技术,装置通过WiFi模块607可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了WiFi模块607,但是可以理解的是,其并不属于装置的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器608是装置的控制中心,利用各种接口和线路连接整个装置的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器608可包括一个或多个处理核心;优选的,处理器608可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器608中。
装置还包括给各个部件供电的电源609(比如电池),优选的,电源可以通过电源管理系统与处理器608逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源609还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,装置还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,装置中的处理器608会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器608来运行存储在存储器602中的应用程序,从而实现各种功能:
接收用户发起的换肤请求;
解析皮肤资源包,得到目标皮肤下的图片色值;
根据所述图片色值对原始皮肤下的原始图片进行染色处理。
进一步地,处理器608还用于,
解析所述皮肤资源包,得到所述目标皮肤下的背景色值;
将所述原始皮肤下的原始背景更换成所述背景色值对应的目标背景。
具体地,处理器608可以按照如下方式对原始皮肤下的原始图片进行染色处理:
利用染色属性tint属性控制图片的染色色值,利用染色模式tint模式控制图片的着色模式,给所述原始图片加上所述图片色值的遮罩。
具体地,处理器608可以对所述原始图片的每个像素点进行采样,得到每个像素点的原始色值;根据所述遮罩的色值计算每个像素点的目标色值;将每个像素点的原始色值替换成对应的目标色值。
进一步地,处理器608还用于,
对所述原始图片的每个像素点进行采样,得到每个像素点的原始透明通道值;
根据所述遮罩的透明度通道值计算每个像素点的目标透明度通道值;
将每个像素点的原始透明通道值替换成对应的目标透明度通道值。
或者,处理器608还用于,
接收用户发起的换肤请求;
解析皮肤资源包以获取目标皮肤下的图片地址信息;
根据所述图片地址信息加载目标图片。
本实施例中,可以在皮肤资源包中携带目标皮肤下的图片色值,在换肤装置接收到用户发起的换肤请求之后,针对图片部分,仍沿用原始图片,只需根据皮肤资源包中携带的图片色值对原始图片进行染色处理,通过图片染色技术实现了图片的复用,不同皮肤可以复用同一张图片,因而,换肤的皮肤资源包中不用携带占用空间较大的目标图片,减小了应用安装包的体积,减少了皮肤资源包的解析工作量,提高了换肤效率。另外,由于皮肤资源包中不用携带图片,可以用极低的成本的拓展皮肤种类,更大程度地满足了用户的需求。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,装置,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (4)

1.一种换肤方法,其特征在于,包括:
接收用户发起的换肤请求;
根据所述换肤请求获取目标皮肤下的图片色值和背景色值;
将原始皮肤下的原始背景更换成所述背景色值对应的目标背景;对原始图片的每个像素点进行采样,得到每个像素点的原始色值和原始透明通道值;
获取所述图片色值的遮罩;
根据所述遮罩的透明度通道值计算每个像素点的目标色值和目标透明度通道值;
将每个像素点的原始色值替换成对应的目标色值;
将每个像素点的原始透明通道值替换成对应的目标透明度通道值,以将所述原始图片染色为所述图片色值,对原始皮肤进行更换。
2.一种换肤装置,其特征在于,包括:
接收单元,用于接收用户发起的换肤请求;
第一获取单元,用于根据所述换肤请求获取目标皮肤下的图片色值和背景色值;
背景更换单元,用于将原始皮肤下的原始背景更换成所述背景色值对应的目标背景;
采样单元,用于对原始图片的每个像素点进行采样,得到每个像素点的原始色值和原透明通道值;
计算单元,用于根据遮罩的色值计算每个像素点的目标色值和目标透明度通道值;
第一替换单元,用于将每个像素点的原始色值替换成对应的目标色值;
第二替换单元,用于将每个像素点的原始透明通道值替换成对应的目标透明度通道值,以将所述原始图片染色为所述图片色值,对原始皮肤进行更换。
3.一种计算机设备,其特征在于,包括存储器和处理器;所述存储器存储有计算机程序,所述处理器用于运行所述存储器内的计算机程序,以执行权利要求1所述的换肤方法。
4.一种存储介质,其特征在于,所述存储介质用于存储计算机程序,所述计算机程序被处理器加载以执行权利要求1所述的换肤方法。
CN201710919930.0A 2017-09-30 2017-09-30 一种换肤方法及装置 Active CN109614173B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710919930.0A CN109614173B (zh) 2017-09-30 2017-09-30 一种换肤方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710919930.0A CN109614173B (zh) 2017-09-30 2017-09-30 一种换肤方法及装置

Publications (2)

Publication Number Publication Date
CN109614173A CN109614173A (zh) 2019-04-12
CN109614173B true CN109614173B (zh) 2021-08-03

Family

ID=66001600

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710919930.0A Active CN109614173B (zh) 2017-09-30 2017-09-30 一种换肤方法及装置

Country Status (1)

Country Link
CN (1) CN109614173B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110175053B (zh) * 2019-04-24 2023-10-27 创新先进技术有限公司 图片加载方法及装置
CN110381303B (zh) * 2019-05-31 2021-07-09 成都品果科技有限公司 基于皮肤颜色统计的人像自动曝光白平衡矫正方法及系统
CN111061536A (zh) * 2019-12-20 2020-04-24 网易(杭州)网络有限公司 一种应用程序换肤的方法和装置
CN111443910A (zh) * 2020-03-24 2020-07-24 北京奇艺世纪科技有限公司 皮肤渲染方法、装置、电子设备及计算机存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102279745A (zh) * 2011-08-25 2011-12-14 深圳市五巨科技有限公司 一种移动终端浏览器外观设置的方法及系统
CN103399767A (zh) * 2013-07-31 2013-11-20 深圳创维数字技术股份有限公司 一种界面换肤方法及装置
CN106652046B (zh) * 2016-12-26 2021-04-23 网易(杭州)网络有限公司 模型染色方法及装置

Also Published As

Publication number Publication date
CN109614173A (zh) 2019-04-12

Similar Documents

Publication Publication Date Title
CN108287744B (zh) 文字显示方法、装置及存储介质
CN105867730B (zh) 状态栏的显示方法及装置
CN109614173B (zh) 一种换肤方法及装置
CN109542287B (zh) 消息提醒方法、装置、移动终端及存储介质
CN110458921B (zh) 一种图像处理方法、装置、终端以及存储介质
US10228830B2 (en) Method for starting application program, terminal and non-transitory computer readable storage medium
CN110990741B (zh) 一种页面展示方法、装置、电子设备、服务器及存储介质
EP3499489B1 (en) Method for display control and related products
CN106780684B (zh) 一种动画效果实现方法及装置
CN106293375B (zh) 一种场景切换方法,及设备
CN107436712B (zh) 为呼出菜单设置皮肤的方法、装置及终端
CN107977272A (zh) 应用运行的方法及装置
CN113313804B (zh) 一种图像渲染方法、装置、电子设备和存储介质
CN108172200B (zh) 一种应用中文本显示的方法及终端设备
CN106445970B (zh) 一种占位图的加载处理方法和装置
CN110851350A (zh) 网页界面白屏监测的方法及装置
CN110908757A (zh) 一种媒体内容显示的方法以及相关装置
CN112308947A (zh) 一种动画的生成方法、装置及存储介质
CN106919458B (zh) Hook目标内核函数的方法及装置
CN116594616A (zh) 一种组件配置方法、装置及计算机可读存储介质
CN108920086B (zh) 分屏退出方法、装置、存储介质和电子设备
CN111210496B (zh) 一种图片解码方法、装置以及设备
CN111368238A (zh) 状态栏调整方法、装置、移动终端和存储介质
CN107124638B (zh) 数据传输方法、装置及系统
CN113031838B (zh) 屏幕录制方法、装置及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant