颜色推荐方法、装置、计算机设备及存储介质与流程

文档序号:31687758发布日期:2022-09-30 21:28阅读:23来源:国知局
颜色推荐方法、装置、计算机设备及存储介质与流程

1.本技术涉及计算机技术领域,更具体地,涉及一种颜色推荐方法、装置、计算机设备及存储介质。


背景技术:

2.随着互联网技术的发展和普及,各种类型的应用程序越来越多,人们可以通过应用程序来实现其各种需求。应用程序的界面均有其自己的色彩搭配,设计师在开发应用程序时,需要从上万种颜色中寻找这些色彩搭配,使得设计师的任务比较繁重。
3.目前,设计师在进行界面的色彩搭配时,往往通过给定一个色值,并利用相应的颜色生成规则来生成颜色,但该方式中用户无法把控生成的颜色,无法满足用户需求。


技术实现要素:

4.本技术提出了一种颜色推荐方法、装置、计算机设备及存储介质,以改善上述缺陷。
5.第一方面,本技术实施例提供了一种颜色推荐方法,包括:获取初始颜色,所述初始颜色包括第一颜色以及第二颜色;基于所述第一颜色与所述第二颜色的差异,确定所述第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及所述待调整颜色分量对应的调整值;基于所述待调整颜色分量对应的调整值,对所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色;对所述多个待推荐颜色进行推荐展示。
6.第二方面,本技术实施例还提供了一种颜色推荐装置,包括:初始色获取模块、调整值获取模块、推荐色获取模块、以及推荐展示模块。所述初始色获取模块用于获取初始颜色,所述初始颜色包括第一颜色以及第二颜色;所述调整值获取模块用于基于所述第一颜色与所述第二颜色的差异,确定所述第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及其对应的调整值;所述推荐色获取模块用于基于所述调整值,对所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色;所述推荐展示模块用于对所述多个待推荐颜色进行推荐展示。
7.在一种可能的实施方式中,所述第一颜色以及第二颜色在所述目标颜色空间中均包括多个颜色分量。调整值获取模块用于:获取所述第一颜色的每个颜色分量的颜色分量值与所述第二颜色的对应颜色分量的颜色分量值之间的差值;将所述差值不为0的颜色分量作为待调整颜色分量;基于所述待调整颜色分量对应的所述差值,确定所述待调整颜色分量对应的调整值。
8.在一种可能的实施方式中,调整值获取模块用于:获取每个待调整颜色分量对应的所述差值的绝对值,作为所述每个待调整颜色分量对应的调整值。
9.在一种可能的实施方式中,调整值获取模块用于:获取所有待调整颜色分量对应的所述差值的绝对值的平均值,将所述平均值作为所述待调整颜色分量对应的调整值。
10.在一种可能的实施方式中,所述第一颜色以及第二颜色在所述目标颜色空间中均包括多个颜色分量。推荐色获取模块用于:基于所述调整值、所述目标颜色空间的颜色分量阈值、以及所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量,确定对所述待调整颜色分量的调整操作,所述调整操作包括累加所述调整值以及累减所述调整值中的至少一个;对所述待调整颜色分量进行多次所述调整操作,将每次所述调整操作后获得的颜色作为待推荐颜色,直至所述待调整颜色分量的颜色分量值与所述颜色分量阈值之间的差值的绝对值小于所述调整值。
11.在一种可能的实施方式中,所述颜色分量阈值包括第一阈值以及第二阈值,所述第一阈值小于所述第二阈值。推荐色获取模块用于:获取每个待调整颜色分量的颜色分量值与所述第一阈值之间的差值作为第一差值,以及所述第二阈值与所述每个待调整颜色分量的颜色分量值之间的差值作为第二差值;若任一待调整颜色分量对应的第一差值小于所述调整值,则确定所述调整操作为累加所述调整值;若任一待调整颜色分量对应的第二差值小于所述调整值,则确定所述调整操作为累减所述调整值;若所述每个待调整颜色分量对应的第一差值大于或等于所述调整值,且所述每个待调整颜色分量对应的第二差值大于或等于所述调整值,则确定所述调整操作为累加所述调整值以及累减所述调整值。
12.在一种可能的实施方式中,所述颜色分量阈值包括第一阈值以及第二阈值,所述第一阈值小于所述第二阈值。若所述调整操作为累加所述调整值以及累减所述调整值,推荐色获取模块用于:对每个待调整颜色分量累加其对应的调整值,将每次累加后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与所述第二阈值的差值的绝对值小于其对应的调整值;对每个待调整颜色分量累减其对应的调整值,将每次累减后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与所述第一阈值的差值小于其对应的调整值。
13.在一种可能的实施方式中,初始色获取模块用于:获取第一应用程序的界面主色作为第一颜色,以及第二应用程序的界面主色作为第二颜色。推荐展示模块用于:将所述多个待推荐颜色分别作为当前应用程序的界面主色,进行推荐展示,所述当前应用程序为设计中的应用程序。
14.在一种可能的实施方式中,初始色获取模块用于:获取当前应用程序的界面主色作为第一颜色,以及输入的第二颜色,所述当前应用程序为设计中的应用程序。推荐展示模块用于将所述多个待推荐颜色分别作为所述当前应用程序的控件颜色,进行推荐展示。
15.第三方面,本技术实施例提供了一种计算机设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述第一方面提供的颜色推荐方法。
16.第四方面,本技术实施例提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行上述第一方面提供的颜色推荐方法。
17.本技术提供的方案,通过获取初始颜色,初始颜色包括第一颜色以及第二颜色,基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一
颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,再将多个待推荐颜色进行推荐。因此,待推荐颜色是依据初始颜色之间的差异所生成,用户可以通过把控初始颜色之间的差异,而获得用户所需的颜色,实现颜色内容的精准推送,满足用户的需求。
附图说明
18.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1示出了本技术实施例的应用场景的示意图。
20.图2示出了本技术一个实施例的颜色推荐方法的方法流程图。
21.图3示出了本技术另一个实施例的颜色推荐方法的方法流程图。
22.图4示出了本技术实施例提供的待推荐颜色的一灰度示意图。
23.图5示出了本技术实施例提供的待推荐颜色的另一灰度示意图。
24.图6示出了本技术又一个实施例的颜色推荐方法的方法流程图。
25.图7示出了本技术实施例提供的一种界面示意图。
26.图8示出了本技术实施例提供的另一种界面示意图。
27.图9示出了本技术再一个实施例的颜色推荐方法的方法流程图。
28.图10示出了根据本技术一个实施例的颜色推荐装置的一种框图。
29.图11是本技术实施例的用于执行根据本技术实施例的颜色推荐方法的计算机设备的框图。
30.图12是本技术实施例的用于保存或者携带实现根据本技术实施例的颜色推荐方法的程序代码的存储单元。
具体实施方式
31.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
32.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
33.随着互联网的发展,各类型的应用程序越来越多,而每个应用程序背后都是有一套自己的色彩搭配。很多应用程序的功能基本类似,因此在开发这些应用程序时,相类似的功能由于人力成本和维护成本方面的问题,不可能从零开始开发。为了保证每个应用程序的差异性,这就要求设计在输出相类似功能的设计时,不能使用相同的设计搭配,而计师需
要在256*256*256种颜色去寻找这些色彩的搭配是一个非常繁重的工作。
34.传统的配色方法中,通过设计师给定一个颜色值,并通过固定的颜色生成规则,根据该颜色值来生成一些列颜色色值,设计师再从这些颜色中选取想要的颜色。通常,颜色生成规则为:将给到的色值通过一定的方法,转变成hsl颜色空间中的色值,然后给h、s和l位增/减固定百分比。例如,将hex(十六进制)的色值:#006eff,转成hsl色值为hsl(214,100%,50%),再结合冷暖色判断,从而生成10个颜色((#d5e7ff、#aacfff、#7fb7ff、#559eff、#2a86ff、#006eff、#005adc、#0046b9、#003296、#001e73))。
35.然而,发明人在研究中发现,传统的配色方法中,其颜色的生成规则固定,只能在h、s和l位增/减固定百分比,导致生成的颜色较为单一;并且,对于生成的颜色具有未知性,例如,可以生成同样颜色的多个深色和多个浅色,但是对于生成的颜色的深浅度未知,可能无法满足设计师的需求。
36.因此,为了解决上述缺陷,本技术实施例提供了一种颜色推荐方法、装置、计算机设备以及存储介质,通过获取初始颜色,初始颜色包括第一颜色以及第二颜色,基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,再将多个待推荐颜色进行推荐。因此,待推荐颜色是依据初始颜色之间的差异所生成,用户可以通过把控初始颜色之间的差异,而获得用户所需的颜色,实现颜色内容的精准推送,满足用户的需求。
37.作为一种实施方式,本技术实施例可以应用于用户终端,即用户终端可以作为本技术的颜色推荐方法的执行主体,具体地,该执行主体可以是安装在用户终端内的应用程序,则颜色推荐的过程由用户终端执行。
38.作为另一种实施方式,本技术实施例可以应用于服务器,服务器可以作为本技术的颜色推荐方法的执行主体,则颜色推荐的过程由服务器执行,则服务器可以获取用户终端上传的初始颜色,基于初始颜色来生成待推荐颜色,并将待推荐颜色返回给用户终端进行展示。
39.图1示出了本技术实施例提供的一种颜色推荐方法的实施环境示意图,参加图1,该实施环境中包括服务器10和用户终端20。
40.用户终端20通过无线网络或有线网络与服务器10相连,服务器10和用户终端20之间能够进行数据交互。可选地,用户终端20可以为笔记本电脑、台式计算机、智能手机、平板电脑、智能手表、智能音箱等,但并不局限于此。
41.可选地,服务器10可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
42.可选地,用户终端20泛指多个用户终端中的一个,本技术实施例仅以用户终端20来举例说明。本领域技术人员可以知晓,上述用户终端的数量可以更多或者更少。比如上述用户终端仅为1个,或者上述用户终端为几十个或几百个,或者更多数量,此时上述实施环境中还包括其他终端。本技术实施例对用户终端的数量和设备类型不加以限定。
43.作为一种实施方式,该用户终端20可以是用户所使用的终端,用户通过该用户终端发送初始颜色值服务器10,以从服务器10获取推荐的多个待推荐颜色。作为另一种实施方式,用户终端20也可以根据初始颜色,自行生成多个待推荐颜色,并将多个待推荐颜色进行推荐展示。具体地,于本技术实施例中,并不限定本技术实施例中的各个方法步骤的执行主体。
44.介绍完本技术实施例的实施环境以后,下面对本技术实施例提供的技术方案的应用场景进行说明。本技术实施例提供的技术方案能够应用在多种场景下,例如,应用在应用程序设计时的界面色推荐的场景下,又例如,应用在应用程序设计时的控件颜色推荐的场景下,再例如,应用在服装设计时的颜色推荐的场景下,还例如,应用在建筑设计的建筑颜色推荐的场景下,本技术实施例对此不作限定。
45.在应用程序设计时的界面色推荐的场景下,设计师可以输入包括第一颜色以及第二颜色的初始颜色,计算机设备基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,也就是得到多个待推荐的界面色,然后将多个待推荐颜色作为界面色进行推荐展示,以便设计师选取其所需的界面色,从而设计出其满意的应用程序。
46.在应用程序设计时的控件颜色推荐的场景下,设计师可以输入包括第一颜色以及第二颜色的初始颜色,计算机设备基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,也就是得到多个待推荐的控件颜色,然后将多个待推荐颜色作为控件颜色进行推荐展示,以便设计师选取其所需的控件颜色,从而设计出其满意的应用程序。
47.在服装设计时的颜色推荐的场景下,设计师可以输入包括第一颜色以及第二颜色的初始颜色,计算机设备基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,也就是得到多个待推荐的服装颜色,然后将多个待推荐颜色作为服装颜色进行推荐展示,以便设计师选取其所需的服装颜色,从而设计出其满意的服装。
48.在建筑设计的建筑颜色推荐的场景下,设计师可以输入包括第一颜色以及第二颜色的初始颜色,计算机设备基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,也就是得到多个待推荐的建筑颜色,然后将多个待推荐颜色作为建筑颜色进行推荐展示,以便设计师选取其所需的建筑颜色,从而设计出其满意的建筑。
49.请参阅图2,图2示出了本技术实施例提供的一种颜色推荐方法,该方法的执行主体可以是上述服务器,也可以是上述用户终端,具体地,该方法包括:s210至s240。
50.步骤s210:获取初始颜色,所述初始颜色包括第一颜色以及第二颜色。
51.在本技术实施例中,初始颜色可以为用于生成待推荐颜色所指定的颜色。初始颜色可以至少包括第一颜色和第二颜色,当然,初始颜色所包括的颜色数量可以不做限定,例如,初始颜色也可以包括两个以上的颜色。本技术实施例中主要以初始颜色包括第一颜色和第二颜色,对颜色推荐方法的实施过程进行说明。
52.在一些实施方式中,初始颜色可以为用户终端所接收的颜色值。可选的,用户终端可以展示颜色输入界面;于该颜色输入界面中,用户可以输入初始颜色的颜色值,相应的,用户终端可以检测到用户的输入操作,并获取到用户输入的初始颜色的颜色值。在该实施方式中,若颜色推荐方法的执行主体为用户终端,则用户终端在获取到初始颜色后,可以根据初始颜色生成待推荐颜色,以进行待推荐颜色的推荐展示;若颜色推荐方法的执行主体为服务器,则用户终端可以将获取到的初始颜色的颜色值发送至服务器,相应的,服务器可以接收到用户终端发送的初始颜色的颜色值,以根据初始颜色生成待推荐颜色后,进行待推荐颜色的推荐展示。应当理解的是,初始颜色至少包括第一颜色以及第二颜色,在以上方式中,用户终端可以获取至少两个颜色作为初始颜色。
53.其中,颜色值可以是任一颜色空间下的色值,例如,可以为hex(十六进制)的色值,也可以为rgb色值,还可以为hsl色值等,但并不局限于此。
54.在另一些实施方式中,由于用户可能并不知道颜色的颜色值,而无法直接输入初始颜色的颜色值,该情况下,可以由用户终端获取相应颜色的图像,通过对图像进行颜色值的识别,从而得到初始颜色的颜色值。其中,若颜色推荐方法的执行主体为用户终端,则用户终端在获取到图像后,识别图像的颜色值作为初始颜色的颜色值后,可以根据初始颜色生成待推荐颜色,以进行待推荐颜色的推荐展示;当然,用户终端也可以将图像发送至服务器,以获取服务器对该图像识别后得到的初始颜色的颜色值。若颜色推荐方法的执行主体为服务器,则用户终端可以将获取到的图像发送至服务器,相应的,服务器可以接收到用户终端发送图像,识别图像的颜色值作为初始颜色的颜色值,以根据初始颜色生成待推荐颜色后,进行待推荐颜色的推荐展示。应当理解的是,初始颜色至少包括第一颜色以及第二颜色,在以上方式中,用户终端可以获取至少两个颜色作为初始颜色。
55.可选的,由于用于获取的初始颜色的图像可能为纯色图像(图像中仅包含一种颜色),也可能包含多种颜色,因此用户终端可以输出提示信息,该提示信息用于提示用户输入纯色的图像,以便获取到纯色图像后,识别纯色图像对应的颜色值作为初始颜色的颜色值;在用户输入的图像包含多种颜色时,也可以将识别得到的多种颜色进行展示,以供用户选取需求的初始颜色;在用户输入的图像包含多种颜色时,其中,不同的颜色分布于图像中的不同区域,可以将图像划分为多个区域,该区域的大小可以是若干个像素点组成的;再将划分后的多个区域进行输出,以供用户选取其中一个区域,并在获取到选取的区域后,识别该区域的颜色值作为初始颜色的颜色值。
56.当然,获取初始颜色的方式在本技术实施例中可以不做限定。
57.步骤s220:基于所述第一颜色与所述第二颜色的差异,确定所述第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及所述待调整颜色分量对应的调整值。
58.其中,目标颜色空间可以为任一颜色空间。可选的,目标颜色空间可以为rgb颜色空间、hsl颜色空间、rgba颜色空间、yuv颜色空间、lab颜色空间等,具体的颜色空间可以不
做限定。待调整颜色分量可以为目标颜色空间中的任意颜色分量,待调整颜色分量可以为目标颜色空间中的其中一个颜色分量,也可以为目标颜色空间中的多个颜色分量,例如,目标颜色空间为rgb颜色空间,待调整颜色分量可以为r(红色)分量,也可以为g(绿色)分量以及b(蓝色)分量。
59.在申请实施例中,在获取到第一颜色以及第二颜色之后,可以基于第一颜色与第二颜色的差异,确定目标颜色空间中的待调整颜色分量,以及待调整颜色分量对应的调整值,以对第一颜色和第二颜色中的至少一个进行调整,得到待推荐颜色。
60.在一些实施方式中,可以基于第一颜色以及第二颜色在目标颜色空间中的多个颜色分量,确定两者的每个颜色分量之间的差异,即第一颜色的每个颜色分量与第二颜色的对应颜色分量之间的差异,然后根据确定出的差异,确定待调整颜色分量以及待调整颜色分量对应的调整值。例如,目标颜色空间为hsl颜色空间,则确定第一颜色的颜色分量h(色相)与第二颜色的颜色分量h之间的差异,第一颜色的颜色分量s(饱和度)与第二颜色的颜色分量s之间的差异,以及第一颜色的颜色分量l(亮度)与第二颜色的颜色分量l之间的差异。在确定出第一颜色的每个颜色分量与第二颜色的对应颜色分量之间的差异之后,可以根据第一颜色的每个颜色分量与第二颜色的对应颜色分量之间的差异,确定待调整颜色分量及其对应的调整值。
61.可选的,可以将第一颜色与第二颜色之间存在差异的颜色分量作为待调整颜色分量,并根据第一颜色的待调整颜色分量与第二颜色的待调整颜色分量之间的差异,确定待调整颜色分量的调整值。
62.可选的,在获取到第一颜色的每个颜色分量与第二颜色的对应颜色分量之间的差异后,可以将差异大于指定阈值的颜色分量作为待调整颜色分量,并根据第一颜色的待调整颜色分量与第二颜色的待调整颜色分量之间的差异,确定待调整颜色分量的调整值。
63.当然,基于第一颜色与第二颜色之间的差异,确定待调整颜色分量及其对应的调整值的具体方式可以不做限定。
64.步骤s230:基于所述待调整颜色分量对应的调整值,对所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色。
65.在本技术实施例中,在获取到待调整颜色分量以及待调整颜色分量对应的调整值之后,可以根据待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,并将每次调整后获得的颜色,作为待推荐颜色,从而获取到多个待推荐颜色。
66.在一些实施方式中,可以根据待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行累加调整值以及累减调整值,并且保证待调整颜色分量的颜色分量值至不超过目标颜色空间的颜色分量值范围,将每次累加调整值以及累减调整值后获得的新颜色,作为待调整颜色。
67.可选的,在进行如上对第一颜色和第二颜色中至少一个颜色进行多次调整,获得多个待推荐颜色之后,若获得的待推荐颜色的数量大于指定数量,还可以从多个待推荐颜色中筛选出部分待推荐颜色,作为后续进行推荐展示的待推荐颜色。作为一种方式,该情况下,可以将相邻两次调整所获得的待推荐颜色中取前一个待调整颜色或者后一个待调整颜色,以此筛选出用于推荐展示的待推荐颜色,例如,多次调整所获得的颜色按照调整顺序排
序为a1、a2、a3、a4...、an,则可以取a1、a3、a5、...a(2m-1)作为用于推荐展示的待推荐颜色,其中,n和m为正整数。
68.步骤s240:对所述多个待推荐颜色进行推荐展示。
69.在本技术实施例中,在获取到待推荐颜色后,可以对多个待推荐颜色进行推荐展示。若颜色推荐方法的执行主体为用户终端,则用户终端可以将多个待推荐颜色进行显示,以供用户选取其所需的颜色;若颜色推荐方法的执行主体为服务器,则服务器可以将多个待推荐颜色发送至用户终端,以供用户终端对多个待推荐颜色进行显示。
70.本技术实施例提供的颜色推荐方法,通过基于第一颜色与第二颜色的差异,确定第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及该待调整颜色分量对应的调整值,然后,基于待调整颜色分量对应的调整值,对第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色,再将多个待推荐颜色进行推荐,因此,待推荐颜色是依据初始颜色之间的差异所生成,用户可以通过把控初始颜色之间的差异,而获得用户所需的颜色,实现颜色内容的精准推送,满足用户的需求。
71.请参阅图3,图3示出了本技术实施例提供的一种颜色推荐方法,该方法的执行主体可以是上述服务器,也可以是上述用户终端,具体地,该方法包括:s310至s370。
72.步骤s310:获取初始颜色,所述初始颜色包括第一颜色以及第二颜色。
73.在本技术实施例中,步骤s310可以参阅其他实施例的内容,在此不再赘述。
74.步骤s320:获取所述第一颜色的每个颜色分量的颜色分量值与所述第二颜色的对应颜色分量的颜色分量值之间的差值。
75.在本技术实施例中,第一颜色以及第二颜色在目标颜色空间中均包括多个颜色分量,例如,目标颜色空间为rgb颜色空间时,第一颜色以及第二颜色在目标颜色空间中均包括颜色分量r、颜色分量g以及颜色分量b。在获取到初始颜色后,在获取初始颜色中第一颜色与第二颜色的差异时,可以获取第一颜色的每个颜色分量的颜色分量值与第二颜色的对应颜色分量的颜色分量值之间的差值,以此来确定待调整颜色分量以及待调整颜色分量对应的调整值。
76.在一些实施方式中,在获取第一颜色的每个颜色分量的颜色分量值与第二颜色的对应颜色分量的颜色分量值之间的差值时,可以将第一颜色以及第二颜色转换为目标颜色空间中的颜色值。例如,若第一颜色为十六进制的颜色值#006eff,第二颜色为十六进制的颜色值#005adc,目标颜色空间为rgb颜色空间时,第一颜色可以转换为rgb(0,110,255),即r=0,g=110,b=255,第二颜色可以转化为rgb(0,90,255),即r=0,g=90,b=255。
77.在确定出第一颜色以及第二颜色在目标颜色空间中的颜色值之后,可以分别计算第一颜色的每个颜色分量的颜色分量值,与第二颜色的多个颜色分量中对应颜色分量之间的差值,也就是说,针对每个颜色分量,将第一颜色对应的颜色分量值与第二颜色的颜色分量值相减,获得每个颜色分量对应的差值。例如,目标颜色空间为rgb颜色空间,第一颜色为rgb(0,110,255),第二颜色为rgb(0,90,255),则对于颜色分量r,两者的差值为0,对于颜色分量g,两者的差值为20,对于颜色分量b,两者的差值为0。
78.步骤s330:将所述差值不为0的颜色分量作为待调整颜色分量。
79.在本技术实施例中,在确定出第一颜色的每个颜色分量的颜色分量值与第二颜色的对应颜色分量的颜色分量值之间的差值,可以判断每个颜色分量对应的差值是否为0;根
据判断结果,确定出获得的差值不为0的颜色分量,并将获得的差值不为0的颜色分量作为待调整颜色分量。
80.步骤s340:基于所述待调整颜色分量对应的所述差值,确定所述待调整颜色分量对应的调整值。
81.在本技术实施例中,确定出待调整颜色分量后,则可以根据以上确定的待调整颜色分量所对应的差值,确定待调整颜色分量对应的调整值。
82.作为一种实施方式,可以获取每个待调整颜色分量对应的差值的绝对值,作为每个待调整颜色分量对应的调整值。其中,对于每个待调整的颜色分量而言,该待调整的颜色分量所对应的调整值为该待调整的颜色分量所对应的差值,即每个待调整颜色分量对应的调整值与其对应的以上差值对应。示例性的,目标颜色空间为rgb颜色空间,第一颜色为rgb(0,110,255),第二颜色为rgb(0,90,255),则对于颜色分量r,两者的差值为0,对于颜色分量g,两者的差值为20,对于颜色分量b,两者的差值为0;则可以确定出待调整颜色分量为g,并且g对应的差值为20,因此调整值为20。通过该方式确定待调整颜色分量对应的调整值,可以实现根据第一颜色与第二颜色之间的精准差异,获取待推荐颜色。
83.作为另一种实施方式,可以获取所有待调整颜色分量对应的差值的绝对值的平均值,将平均值作为待调整颜色分量对应的调整值。在该实施方式中,在确定出待调整颜色分量后,可能待调整颜色分量为多个,该情况下,由于多个待调整颜色分量中可能存在以上差值偏小或者偏大的待调整颜色分量,这样的话,后续在生成待推荐颜色时,可能使得生成的待推荐颜色较多或者较少。例如,目标颜色空间为rgb颜色空间,待调整颜色分量对应的差值为60,若将其作为调整值,则由于rgb颜色空间的色值范围为0~255,因此最多可以调整四次,导致得到的待调整颜色较少。因此,可以取所有待调整颜色分量对应的差值的绝对值的平均值,将平均值作为待调整颜色分量对应的调整值将平均值作为待调整颜色分量对应的调整值。可以理解地,若待调整颜色分量为1个,则待调整颜色分量对应的调整值为其对应的以上差值;若待调整颜色分量为多个,则各个待调整颜色分量对应的调整值为所有待调整颜色分量对应的差值的绝对值的平均值。示例性的,目标颜色空间为rgb,若第一颜色为十六进制的#006eff,第二颜色为#005ae1,则第一颜色在目标颜色空间中的颜色值为rgb(0,110,255),第二颜色在目标颜色空间中的颜色值为rgb(0,90,225),则待调整颜色分量为颜色分量g和颜色分量b,颜色分量g对应的差值为20,颜色分量b对应的差值为30,获取颜色分量g对应的差值以及颜色分量b对应的差值的平均值为25,将25作为颜色分量g和颜色分量b的调整值。
84.作为又一种实施方式,在待调整颜色分量对应的差值偏大或者偏小时,若直接将其作为待调整颜色分量对应的调整值,可能会使得生成的待推荐颜色较多或者较少,例如,目标颜色空间为rgb颜色空间,待调整颜色分量对应的差值为60,若将其作为调整值,则由于rgb颜色空间的色值范围为0~255,因此最多可以调整四次,导致得到的待调整颜色较少。因此,可以对差值设置第三阈值以及第四阈值,其中,第三阈值小于第四阈值,若存在待调整颜色分量对应的差值小于第三阈值时,可以将该待调整颜色分量的调整值确定为第三阈值;若存在待调整颜色分量对应的差值大于第四阈值,可以将该待调整颜色分量的调整值确定为第四阈值。第三阈值以及第四阈值的具体数值可以根据目标颜色空间而定,例如,目标颜色空间为rgb颜色空间,则第三阈值可以为20,第四阈值可以为50,当然,以上仅为举
例,并不构成对第三阈值以及第四阈值的限定。
85.可选的,上述实施方式也可以结合,在确定待调整颜色分量后,可以判断待调整颜色分量对应的差值是否小于第三阈值,或大于第四阈值,若待调整颜色分量对应的差值小于第三阈值,或大于第四阈值,则可以对所有待调整颜色分量的差值取绝对值后,求取平均值,将平均值作为各个待调整颜色分量对应的调整值。
86.步骤s350:基于所述调整值、所述目标颜色空间的颜色分量阈值、以及所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量,确定对所述待调整颜色分量的调整操作,所述调整操作包括累加所述调整值以及累减所述调整值中的至少一个。
87.在本技术实施例中,由于颜色空间对于颜色分量是有阈值范围的,例如,rgb颜色空间,每个颜色分量对应的取值范围都是0~255,而根据调整值,对第一颜色以及第二颜色中的至少一个进行调整时,不能使颜色分量值超过该范围。因此,在确定待调整颜色分量以及待调整颜色分量对应的调整值后,可以根据调整值、目标颜色空间的颜色分量阈值、以及第一颜色和第二颜色中至少一个颜色的待调整颜色分量,确定对待调整颜色分量的调整操作。其中,调整操作包括累加调整值以及累减调整值中的至少一个,即,调整操作可以为累加调整值,也可以为累减调整值,也可以为累加调整值和累减调整值。
88.在一些实施方式中,颜色分量阈值包括第一阈值以及第二阈值,第一阈值小于所述第二阈值。也就是说,第一阈值为目标颜色空间的颜色分量的取值范围的最小值,第二阈值为目标颜色空间的颜色分量的取值范围的最大值。在确定对待调整颜色分量的调整操作时,步骤s350可以包括:
89.获取每个待调整颜色分量的颜色分量值与所述第一阈值之间的差值作为第一差值,以及所述第二阈值与所述每个待调整颜色分量的颜色分量值之间的差值作为第二差值;若任一待调整颜色分量对应的第一差值小于所述调整值,则确定所述调整操作为累加所述调整值;若任一待调整颜色分量对应的第二差值小于所述调整值,则确定所述调整操作为累减所述调整值;若所述每个待调整颜色分量对应的第一差值大于或等于所述调整值,且所述每个待调整颜色分量对应的第二差值大于或等于所述调整值,则确定所述调整操作为累加所述调整值以及累减所述调整值。
90.其中,若任一待调整颜色分量对应的第一差值小于调整值时,若再进行累减调整值的操作,则会使得该待调整颜色分量的颜色分量值小于第一阈值,也就超出了目标颜色空间的颜色分量值的范围,因此,此时的调整操作则只有累加调整值的操作;若任一待调整颜色分量对应的第二差值小于调整值,若再进行累加调整值的操作,则会使得待调整颜色分量的颜色分量值大于第二阈值,也就超出了目标颜色空间的颜色分量值的范围,因此,此时的调整操作只有累减调整值的操作;若每个待调整颜色分量对应的第一差值大于或等于调整值,且每个待调整颜色分量对应的第二差值大于或等于调整值,则在待调整颜色分量的原本颜色分量值的基础上进行累加调整值或者累减调整值,均不会超过目标颜色空间的颜色分量值的范围,因此,此时的调整操作可以同时包括累加调整值和累减调整值。
91.示例性的,目标颜色空间为rgb,若第一颜色为十六进制的#006eff,第二颜色为#005ae1,则第一颜色在目标颜色空间中的颜色值为rgb(0,110,255),第二颜色在目标颜色空间中的颜色值为rgb(0,90,225),则待调整颜色分量为颜色分量g和颜色分量b,颜色分量g对应的差值为20,颜色分量b对应的差值为30,按照将各个待调整颜色分量对应的差值作
为其对应的调整值;若在第一颜色的基础上,进行调整操作以获得待推荐颜色,对于颜色分量g,其对应的调整值为20,计算第一差值为(110-0)=110,第二差值为(255-110)=145;对于颜色分量b,其对应的调整值为30,计算第一差值为(255-0)=255,第二差值为(255-255)=0;因此,存在颜色分量b对应的第二差值小于调整值(30),因此,调整操作只有累减调整值。
92.在一些实施方式中,若初始颜色包括两个以上的颜色时,也可以参照上述的方式获取待调整颜色分量以及待调整颜色分量对应的调整值。例如,初始颜色包括第一颜色、第二颜色以及第三颜色,可以针对每个颜色分量,分别获取第一颜色的该颜色分量与第二颜色的该颜色分量之间的差值,第一颜色的该颜色分量与第三颜色的该颜色分量之间的差值,以及第二颜色的该颜色分量与第三颜色的该颜色分量之间的差值;然后再获取每个颜色分量对应的所有差值的平均值,将平均值不为0的颜色分量作为待调整颜色分量,并且将待调整颜色分量对应的该平均值作为调整值。
93.步骤s360:对所述待调整颜色分量进行多次所述调整操作,将每次所述调整操作后获得的颜色作为待推荐颜色,直至所述待调整颜色分量的颜色分量值与所述颜色分量阈值之间的差值的绝对值小于所述调整值。
94.在本技术实施例中,在确定对待调整颜色分量的调整操作后,则可以针对第一颜色以及第二颜色中的至少一个,对待调整颜色分量进行多次调整操作,将每次调整操作后获得的颜色作为待推荐颜色,直至待调整颜色分量的颜色分量值与颜色分量阈值之间的差值的绝对值小于调整值。具体地,若调整操作为累加调整值,则对待调整颜色分量进行累加调整值,将每次累加后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与第二阈值的差值的绝对值小于其对应的调整值;若调整操作为累减调整值,则对待调整颜色分量进行累加调整值,将每次累减后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与第一阈值的差值的绝对值小于其对应的调整值;若调整操作为累加调整值以及累减调整值,则对待调整颜色分量累加其对应的调整值,将每次累加后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与第二阈值的差值的绝对值小于其对应的调整值,以及对每个待调整颜色分量累减其对应的调整值,将每次累减后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与第一阈值的差值小于其对应的调整值。其中,累加调整值以及累减调整值的操作均为在待调整颜色分量的原颜色分量值的基础上进行,例如,对第二颜色rgb(0,90,225)进行调整从而生成待推荐颜色,则累加调整值以及累减调整值均为在90和225的基础上进行。
95.在一些实施方式中,可能待调整颜色分量为多个,在调整操作为累加调整值以及累减调整值时,则可以对每个待调整颜色分量累加其对应的调整值,将每次累加后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与第二阈值的差值的绝对值小于其对应的调整值;以及对每个待调整颜色分量累减其对应的调整值,将每次累减后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与第一阈值的差值小于其对应的调整值。
96.示例性的,目标颜色空间为rgb,若第一颜色为十六进制的#006eff,第二颜色为#005adc,第一颜色在目标颜色空间中的颜色值为rgb(0,110,255),第二颜色在目标颜色空间中的颜色值为rgb(0,90,255),则待调整颜色分量仅包括颜色分量g,且调整值为20;若在
第一颜色的基础上,对待调整颜色分量进行调整操作,此时调整操作包括累加调整值以及累减调整值;进行累加调整值时,在第一颜色原本的颜色分量值基础上,对于颜色分量g,将110+20,得到130,获取到颜色rgb(0,130,255),再将130+20得到150,获取到颜色rgb(0,150,255),如此重复,直至获取到颜色rgb(0,250,255),此时,此时颜色分量g与第二阈值之间的差值的绝对值已经小于调整值(20),因此,无法再进行累加操作;进行累减调整值,在第二颜色的原本的颜色分量值基础上,对于颜色分量g,将110-20,得到90,获取到颜色rgb(0,90,255),再将90-20,得到70,获取到颜色rgb(0,70,255),如此重复,直至获取到颜色rgb(0,10,255),此时颜色分量g与第一阈值之间的差值已经小于调整值,无法再进行累减操作,此时获取到全部的颜色:rgb(0,10,255)、rgb(0,30,255)、rgb(0,50,255)、rgb(0,70,255)、rgb(0,90,255)、rgb(0,110,255)、rgb(0,130,255)、rgb(0,150,255)、rgb(0,170,255)、rgb(0,190,255)、rgb(0,210,255)、rgb(0,230,255)、和rgb(0,250,255)。
97.示例性的,目标颜色空间为rgb,若第一颜色为十六进制的#006eff,第二颜色为#005ae1,第一颜色在目标颜色空间中的颜色值为rgb(0,110,255),第二颜色在目标颜色空间中的颜色值为rgb(0,90,225),则待调整颜色分量为颜色分量g和颜色分量b,颜色分量g对应的差值为20,颜色分量b对应的差值为30,按照将各个待调整颜色分量对应的差值作为其对应的调整值;若在第二颜色的基础上,对待调整颜色分量进行调整操作,此时调整操作包括累加调整值以及累减调整值;进行累加调整值时,在第二颜色的原本的颜色分量值基础上,对于颜色分量g,将90加20,得到110,对于颜色分量b,将225加30,得到255,即获取到颜色rgb(0,110,255),此时颜色分量b与第二阈值之间的差值的绝对值已经小于调整值(30),因此,无法再进行累加操作;然后进行累减调整值,在第二颜色的原本的颜色分量值基础上,对于颜色分量g,将90减20,得到70,对于颜色分量b,将225减30,得到195,即获取到颜色rgb(0,70,195);对于颜色分量g,再将70减20,得到50,对于颜色分量b,将195减30,得到165,即获取到颜色rgb(0,50,165);对于颜色分量g,再将50减20,得到30,对于颜色分量b,将165减30,得到135,即获取到颜色rgb(0,30,135);对于颜色分量g,再将30减20,得到20,对于颜色分量b,将135减30,得到105,即获取到颜色rgb(0,10,105),此时待调整颜色分量b对应的值为10,其与第一阈值的差值(10)已经小于调整颜色分量b对应的调整值(20),因此,停止累减调整值的操作;获取到的所有颜色为:rgb(0,110,255)、rgb(0,90,225)、rgb(0,70,195)、rgb(0,50,165)、rgb(0,30,135)、和rgb(0,10,105),请参阅图4,其示出了生成的所有待推荐颜色;另外,在进行应用程序设计时,通常设置界面颜色采用的是十六进制的颜色,因此,如图5所示,可以将其转换为十六进制的颜色。
98.可以理解地,若直接将待调整颜色分量对应的差值作为其调整值,则生成的各个待推荐颜色对应的待调整颜色分量之间的差值均为相同的,并且针对第一颜色还是第二颜色调整,得到的颜色都是相同的,因此可以针对第一颜色或者第二颜色进行如上的调整操作,从而获得多个待推荐颜色。另外,若待调整颜色分量同时包括颜色分量r、颜色分量g以及颜色分量b时,可以参照如上的调整流程进行。
99.步骤s370:对所述多个待推荐颜色进行推荐展示。
100.在本技术实施例中,步骤s370可以参阅其他实施例的内容,在此不再赘述。
101.本技术实施例提供的颜色推荐方法,通过根据初始颜色中第一颜色与第二颜色在各个颜色分量上的差值,确定出存在差异的颜色分量作为待调整颜色分量,根据待调整颜
色分量对应的差值,确定待调整颜色分量对应的调整值,然后根据待调整颜色分量对应的调整值,在初始颜色的基础上对待调整颜色分量进行累加调整值和累减调整值中的至少一个,从而得到多个待推荐颜色,再将多个待推荐颜色进行推荐,因此,待推荐颜色是依据初始颜色之间的差异所生成,用户可以通过把控初始颜色之间的差异,而获得用户所需的颜色,实现颜色内容的精准推送,满足用户的需求。并且,用于生成待推荐颜色的以上差异根据初始颜色之间的各个颜色分量的差异确定,可以实现精准地根据初始颜色之间的差异,生成待推荐颜色。
102.请参阅图6,图6示出了本技术实施例提供的一种颜色推荐方法,该方法的执行主体可以是上述服务器,也可以是上述用户终端,具体地,该方法包括:s410至s440。
103.步骤s410:获取第一应用程序的界面主色作为第一颜色,以及第二应用程序的界面主色作为第二颜色。
104.在本技术实施例中,颜色推荐方法可以应用于设计师设计应用程序时进行界面配色的场景。该场景中,可以获取第一应用程序的界面主色作为第一颜色,以及第二应用程序的界面主色作为第二颜色。如此,设计师可以通过输入感兴趣的两个应用程序的界面;在获取到第一应用程序的界面以及第二应用程序的界面后,识别第一应用程序的界面主色,以及第二应用程序的界面主色,从而得到初始颜色中的第一颜色和第二颜色,以便根据第一应用程序的界面主色以及第二应用程序的界面主色,生成待推荐颜色,以获得与第一应用程序的界面主色和第二应用程序的界面主色相关的待推荐颜色。
105.在一些实施方式中,请参阅图7,可以展示界面输入的界面a1,在界面输入的界面a1中,可以对控件a2和a3进行检测,在检测到控件a2或者a3的操作时,可以接收输入的第一应用程序的界面图像或者第二应用程序的界面图像;请参阅图8,在接收到输入的界面图像后,可以将界面图像添加于界面a1中,以便用户确认是否为想要输入的界面图像;当检测到对控件a4的操作时,可以根据接收到的界面图像获取界面主色作为初始颜色,并且执行后续的过程,以生成待推荐颜色。
106.步骤s420:基于所述第一颜色与所述第二颜色的差异,确定所述第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及所述待调整颜色分量对应的调整值。
107.步骤s430:基于所述待调整颜色分量对应的调整值,对所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色。
108.在本技术实施例中,步骤s420及步骤s430可以参阅其他实施例的内容,在此不再赘述。
109.步骤s440:将所述多个待推荐颜色分别作为当前应用程序的界面主色,进行推荐展示,所述当前应用程序为设计中的应用程序。
110.在本技术实施例中,颜色推荐方法应用于设计师设计应用程序时进行界面配色的场景,在获取到多个待推荐颜色之后,在将多个待推荐颜色进行推荐展示时,可以将待推荐颜色配置成当前应用程序的界面主色,生成当前应用程序的界面预览图,进行展示,如此,可以方便设计师查看待推荐颜色应用于当前应用程序的界面主色的效果,便于设计师获得想要的界面设计效果。
111.在一些实施方式中,可以由于在进行应用程序设计时,通常设置界面颜色采用的是十六进制的颜色,此时,若以上待推荐颜色不为十六进制的颜色,还可以将其转换为十六
进制的颜色,以将待推荐颜色配置成当前应用程序的界面主色,生成当前应用程序的界面预览图。另外,也便于后续设计师将应用程序的界面主色配置为所需的颜色。
112.本技术实施例提供的颜色推荐方法,应用于设计师设计应用程序时进行界面配色的场景,可以通过获取提供的第一应用程序以及第二应用程序的界面主色作为初始颜色,然后根据初始颜色之间的差异,生成多个待推荐颜色,并将多个待推荐颜色作为当前应用程序的界面主色进行推荐展示,不仅实现了待推荐颜色是依据初始颜色之间的差异所生成,用户可以通过把控初始颜色之间的差异,而获得用户所需的颜色,实现颜色内容的精准推送,满足用户的需求,也方便了设计师获取其想要的界面设计效果。
113.请参阅图9,图9示出了本技术实施例提供的一种颜色推荐方法,该方法的执行主体可以是上述服务器,也可以是上述用户终端,具体地,该方法包括:s510至s540。
114.s510:获取当前应用程序的界面主色作为第一颜色,以及输入的第二颜色,所述当前应用程序为设计中的应用程序。
115.在本技术实施例中,颜色推荐方法可以应用于设计师设计应用程序时进行界面配色的场景。该场景中,也存在对控件进行配送的需求,而控件颜色通常与界面主色相关,因此初始颜色中,可以获取当前应用程序的界面主色作为第一颜色。第二颜色可以为用户终端获取到的用户输入的另一初始颜色。
116.s520:基于所述第一颜色与所述第二颜色的差异,确定所述第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及所述待调整颜色分量对应的调整值。
117.s530:基于所述待调整颜色分量对应的调整值,对所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色。
118.在本技术实施例中,步骤s520及步骤s530可以参阅其他实施例的内容,在此不再赘述。
119.s540:将所述多个待推荐颜色分别作为所述当前应用程序的控件颜色,进行推荐展示。
120.在本技术实施例中,颜色推荐方法应用于设计师设计应用程序时进行界面配色的场景,在获取到多个待推荐颜色之后,在将多个待推荐颜色进行推荐展示时,可以将待推荐颜色配置成当前应用程序的控件颜色,生成当前应用程序的界面预览图,进行展示,如此,可以方便设计师查看待推荐颜色应用于当前应用程序的控件颜色的效果,便于设计师获得想要的界面设计效果。
121.在一些实施方式中,可以由于在进行应用程序设计时,通常设置应用程序设计时采用的是十六进制的颜色,此时,若以上待推荐颜色不为十六进制的颜色,还可以将其转换为十六进制的颜色,以将待推荐颜色配置成当前应用程序的控件颜色,生成当前应用程序的界面预览图。另外,也便于后续设计师将应用程序的控件颜色配置为所需的颜色。
122.本技术实施例提供的颜色推荐方法,应用于设计师设计应用程序时进行界面配色的场景,可以通过获取提供的当前应用程序的界面主色以及输入的颜色作为初始颜色,然后根据初始颜色之间的差异,生成多个待推荐颜色,并将多个待推荐颜色作为当前应用程序的界面主色进行推荐展示,不仅实现了待推荐颜色是依据初始颜色之间的差异所生成,用户可以通过把控初始颜色之间的差异,而获得用户所需的颜色,实现颜色内容的精准推送,满足用户的需求,也方便了设计师获取其想要的界面设计效果。
123.请参阅图10,其示出了本技术实施例提供的一种颜色推荐装置400的结构框图。该颜色推荐装置600应用上述的计算机设备,该颜色推荐装置400包括:初始色获取模块610、调整值获取模块620、推荐色获取模块630、以及推荐展示模块640。所述初始色获取模块610用于获取初始颜色,所述初始颜色包括第一颜色以及第二颜色;所述调整值获取模块620用于基于所述第一颜色与所述第二颜色的差异,确定所述第一颜色与第二颜色在目标颜色空间中的待调整颜色分量及其对应的调整值;所述推荐色获取模块630用于基于所述调整值,对所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量进行多次调整,得到多个待推荐颜色;所述推荐展示模块640用于对所述多个待推荐颜色进行推荐展示。
124.在一种可能的实施方式中,所述第一颜色以及第二颜色在所述目标颜色空间中均包括多个颜色分量。调整值获取模块620用于:获取所述第一颜色的每个颜色分量的颜色分量值与所述第二颜色的对应颜色分量的颜色分量值之间的差值;将所述差值不为0的颜色分量作为待调整颜色分量;基于所述待调整颜色分量对应的所述差值,确定所述待调整颜色分量对应的调整值。
125.在一种可能的实施方式中,调整值获取模块620用于:获取每个待调整颜色分量对应的所述差值的绝对值,作为所述每个待调整颜色分量对应的调整值。
126.在一种可能的实施方式中,调整值获取模块620用于:获取所有待调整颜色分量对应的所述差值的绝对值的平均值,将所述平均值作为所述待调整颜色分量对应的调整值。
127.在一种可能的实施方式中,所述第一颜色以及第二颜色在所述目标颜色空间中均包括多个颜色分量。推荐色获取模块630用于:基于所述调整值、所述目标颜色空间的颜色分量阈值、以及所述第一颜色和第二颜色中至少一个颜色的待调整颜色分量,确定对所述待调整颜色分量的调整操作,所述调整操作包括累加所述调整值以及累减所述调整值中的至少一个;对所述待调整颜色分量进行多次所述调整操作,将每次所述调整操作后获得的颜色作为待推荐颜色,直至所述待调整颜色分量的颜色分量值与所述颜色分量阈值之间的差值的绝对值小于所述调整值。
128.在一种可能的实施方式中,所述颜色分量阈值包括第一阈值以及第二阈值,所述第一阈值小于所述第二阈值。推荐色获取模块630用于:获取每个待调整颜色分量的颜色分量值与所述第一阈值之间的差值作为第一差值,以及所述第二阈值与所述每个待调整颜色分量的颜色分量值之间的差值作为第二差值;若任一待调整颜色分量对应的第一差值小于所述调整值,则确定所述调整操作为累加所述调整值;若任一待调整颜色分量对应的第二差值小于所述调整值,则确定所述调整操作为累减所述调整值;若所述每个待调整颜色分量对应的第一差值大于或等于所述调整值,且所述每个待调整颜色分量对应的第二差值大于或等于所述调整值,则确定所述调整操作为累加所述调整值以及累减所述调整值。
129.在一种可能的实施方式中,所述颜色分量阈值包括第一阈值以及第二阈值,所述第一阈值小于所述第二阈值。若所述调整操作为累加所述调整值以及累减所述调整值,推荐色获取模块630用于:对每个待调整颜色分量累加其对应的调整值,将每次累加后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与所述第二阈值的差值的绝对值小于其对应的调整值;对每个待调整颜色分量累减其对应的调整值,将每次累减后获得的颜色作为待推荐颜色,直至任一待调整颜色分量的颜色分量值与所述第一阈值的差值小于其对应的调整值。
130.在一种可能的实施方式中,初始色获取模块610用于:获取第一应用程序的界面主色作为第一颜色,以及第二应用程序的界面主色作为第二颜色。推荐展示模块640用于:将所述多个待推荐颜色分别作为当前应用程序的界面主色,进行推荐展示,所述当前应用程序为设计中的应用程序。
131.在一种可能的实施方式中,初始色获取模块610用于:获取当前应用程序的界面主色作为第一颜色,以及输入的第二颜色,所述当前应用程序为设计中的应用程序。推荐展示模块640用于将所述多个待推荐颜色分别作为所述当前应用程序的控件颜色,进行推荐展示。
132.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
133.在本技术所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
134.另外,在本技术各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
135.图11示出了本技术实施例提供的一种计算机设备的结构示意图。该计算机设备100可以是终端或者服务器。终端可以为笔记本电脑、台式计算机、智能手机、平板电脑、智能手表等,但并不局限于此;服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
136.本技术中的计算机设备100可以包括一个或多个如下部件:处理器110、存储器120、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
137.处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个计算机设备100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行计算机设备100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器110可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
138.存储器120可以包括随机存储器(random access memory,ram),也可以包括只读存储器(read-only memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指
令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
139.请参考图12,其示出了本技术实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质800中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
140.计算机可读存储介质800可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质800包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质800具有执行上述方法中的任何方法步骤的程序代码810的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码810可以例如以适当形式进行压缩。
141.本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述的颜色推荐方法。
142.最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1