颜色映射方法和装置的制造方法

xiaoxiao2020-10-23  12

颜色映射方法和装置的制造方法
【技术领域】
[0001]本发明涉及图像处理领域,特别涉及一种颜色映射方法和装置。
【背景技术】
[0002]妆容造型是女性日常生活中不可或缺的重要环节,发型及发色更是对女性的整体妆容形象具有关键影响,因此如何选择适合自己的发色逐渐成为女性群体关注的热点问题。近年来,随着计算机仿真的发展,利用图像处理技术进行虚拟化妆的方法开始出现在人们的视野中,这一试妆新方法相比于传统的实际试妆大大提高了用户的体验,节省了时间和资源的消耗,具有广泛的应用前景。
[0003]然而,现有技术在虚拟染发方面的应用很少,仅有的虚拟染发技术只是将色板上的颜色单纯地映射到模特的头发区域,效果并不自然真实,也不能为染发剂应用于模特本人头发上之后的真实色彩提供较为可靠的估计。

【发明内容】

[0004]为此,需要提供一种效果真实自然的颜色映射方法和装置。
[0005]为实现上述目的,发明人提供了一种颜色映射方法,包括如下步骤:
[0006]根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值;
[0007]根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列,并且,根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列;
[0008]对第二区域一像素点i获取其在第二序列中的位置数据Ii,利用Ii从第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。
[0009]进一步地,所述的颜色映射方法中,对第二区域一像素点i获取其在第二区域中的位置数据1的公式为:
[0010]Ii= (Y ^YminV(Ymax-Ymin),其中,1为像素点i的亮度值,Ymax和Ymin分别为第二区域各像素点的亮度值中的最大值和最小值。
[0011]进一步地,所述的颜色映射方法中,所述预设亮度公式具体为:
[0012]Y = (4899*R+9617*G+1868*B+8192)/16384,其中 Y 表示像素点的亮度值,R、G、B分别表示RGB颜色模型中像素点各颜色分量的值。
[0013]进一步地,所述的颜色映射方法中,根据第一区域各像素点的亮度值大小对第一区域各像素点排序或根据第二区域各像素点的亮度值大小对第二区域各像素点排序时,排序的依据均为从大到小,或均为从小到大。
[0014]进一步地,所述的颜色映射方法中,步骤“根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列”具体包括:
[0015]根据第一区域各像素点的亮度值大小对第一区域各像素点排序,并按排序结果生成色板图像作为第一序列。
[0016]发明人同时还提供了一种颜色映射装置,包括亮度获取单元、排序单元、位置数据获取单元和映射单元;
[0017]所述亮度获取单元用于根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值;
[0018]所述排序单元用于根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列,并且,根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列;
[0019]所述位置数据获取单元用于对第二区域一像素点i获取其在第二序列中的位置数据Ii;
[0020]所述映射单元用于利用IiW第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。
[0021]进一步地,所述的颜色映射装置中,位置数据获取单元对第二区域一像素点i获取其在第二区域中的位置数据^的公式为:
[0022]Ii= (Y ,-Ymin) / (Ymax-Ymin),其中,1为像素点i的亮度值,Y -和Y min分别为第二区域各像素点的亮度值中的最大值和最小值。
[0023]进一步地,所述的颜色映射装置中,所述预设亮度公式具体为:
[0024]Y = (4899*R+9617*G+1868*B+8192)/16384,其中 Y 表示像素点的亮度值,R、G、B分别表示RGB颜色模型中像素点各颜色分量的值。
[0025]进一步地,所述的颜色映射装置中,排序单元根据第一区域各像素点的亮度值大小对第一区域各像素点排序或根据第二区域各像素点的亮度值大小对第二区域各像素点排序时,排序的依据均为从大到小,或均为从小到大。
[0026]进一步地,所述的颜色映射装置中,排序单元根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列具体包括:
[0027]根据第一区域各像素点的亮度值大小对第一区域各像素点排序,并按排序结果生成色板图像作为第一序列。
[0028]区别于现有技术,上述技术方案在应用于例如虚拟染发场景时,能够提供真实自然的染发效果,为染发剂色板上的颜色应用于有染发需求的客户本人头发上之后的色彩提供了精准可靠的估计。
【附图说明】
[0029]图1为本发明一实施方式所述颜色映射方法的流程图;
[0030]图2为本发明一实施方式所述颜色映射装置的结构示意图。
[0031]附图标记说明:
[0032]1-亮度获取单元
[0033]2-排序单元
[0034]3-位置数据获取单元
[0035]4-映射单元
【具体实施方式】
[0036]为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
[0037]请参阅图1,为本发明一实施方式所述颜色映射方法的流程图。所述方法包括如下步骤:
[0038]S1、根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值;
[0039]本实施方式中,所述预设亮度计算公式为如下的公式:Y = (4899*R+9617*G+1868*B+8192)/16384,其中Y表示像素点的亮度值,R、G、B分别表示RGB颜色模型中像素点各颜色分量的值。在其他实施方式中,预设亮度计算公式还可以是现有技术中其他的根据RGB颜色模型中像素点各颜色分量的值计算出亮度的公式,例如:
[0040]Y = 0.2126R+0.7152G+0.0722B ;或
[0041]Y = 0.33R+0.5G+0.16B ;或
[0042]Y = 0.375R+0.5G+0.125B,等等。
[0043]实际上,亮度值的获取也可以不局限于利用RGB颜色模型所提供的RGB分量值计算所得,现有技术中的任何将亮度与色度分离以获取亮度值的方法都可应用于本发明技术方案中,以实现获取目标区域(即上文中所述的第一区域)或源区域(即上文中所述的第二区域)中像素点的亮度的目的,供后续处理所用。
[0044]S2、根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列;
[0045]S3、根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列;
[0046]本实施方式中,步骤S2与步骤S3所进行的工作都是对某一区域的各像素点的亮度值大小进行排序,所以实际上两个步骤并没有先后之分,步骤S2与S3可以同步处理或任意先后处理。
[0047]另外,此处所说的“排序”也可以是依照亮度值大小所进行的 任意标准的排序,例如从大到小排序或从小到大排序,或大小穿插排序,需要保证的仅仅是获取第一序列和获取第二序列所依据的标准一致即可。
[0048]本实施方式中,对第二区域图像各像素点的亮度值进行排序后,可以将排序结果(像素点)生成一个色板图像作为第二序列并将色板图像呈现在前端供用户查看。当然,其他实施方式中,第二序列或第一序列也可以仅仅以数据的形式存储并待后续调用。
[0049]S4、对第二区域一像素点i获取其在第二序列中的位置数据Ii;
[0050]本实施方式中,对第二区域一像素点i获取其在第二区域中的位置数据Ii的公式为山=(Y ^YminV(Ymax-Ymin),其中,1为像素点i的亮度值,Ymax和Ymin分别为第二区域各像素点的亮度值中的最大值和最小值。这个公式所实现的实际含义是,获取第二区域中所有像素的亮度值范围(即公式右边分母位置的(Ymax-Ymin),以像素点i的亮度值Yi与第二区域亮度值最小值Ymin的差值与其作比,得出其亮度在第二区域所有点整体亮度中的相对位置。实际上,不局限于本公式,在其他实施方式中亦可使用与“获取某一亮度值在整体亮度值的相对位置”相同思路的其他公式来得到这一位置数据Ii。
[0051]S5、利用IiW第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。
[0052]本实施方式所述的颜色映射方法所产生的映射实际效果相当于保持了光照条件的不变,在此基础上将目标区域的颜色映射到源区域,所得结果更为真实自然,能得到符合实际的预估效果。
[0053]请参阅图2,为本发明一实施方式所述颜色映射装置的结构示意图。所述装置包括亮度获取单元1、排序单元2、位置数据获取单元3和映射单元4 ;
[0054]所述亮度获取单元I用于根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值;
[0055]所述排序单元2用于根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列,并且,根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列;
[0056]所述位置数据获取单元3用于对第二区域一像素点i获取其在第二序列中的位置数据Ii;
[0057]所述映射单元4用于利用IiW第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。
[0058]进一步地,所述的颜色映射装置中,位置数据获取单元3对第二区域一像素点i获取其在第二区域中的位置数据^的公式为:
[0059]Ii= (Y ,-Ymin) / (Ymax-Ymin),其中,1为像素点i的亮度值,Y max和Y min分别为第二区域各像素点的亮度值中的最大值和最小值。
[0060]进一步地,所述的颜色映射装置中,所述预设亮度公式具体为:
[0061]Y = (4899*R+9617*G+1868*B+8192)/16384,其中 Y 表示像素点的亮度值,R、G、B分别表示RGB颜色模型中像素点各颜色分量的值。
[0062]进一步地,所述的颜色映射装置中,排序单元2根据第一区域各像素点的亮度值大小对第一区域各像素点排序或根据第二区域各像素点的亮度值大小对第二区域各像素点排序时,排序的依据均为从大到小,或均为从小到大。
[0063]进一步地,所述的颜色映射装置中,排序单元2根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列具体包括:根据第一区域各像素点的亮度值大小对第一区域各像素点排序,并按排序结果生成色板图像作为第一序列。
[0064]下面以一个具体的实施步骤阐述上述颜色映射装置如何实现颜色映射功能。这一流程包括如下步骤:
[0065]S1、亮度获取单元I根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值;
[0066]本实施方式中,亮度获取单元I使用的预设亮度计算公式为如下的公式:Y =(4899*R+9617*G+1868*B+8192)/16384,其中Y表示像素点的亮度值,R、G、B分别表示RGB颜色模型中像素点各颜色分量的值。在其他实施方式中,预设亮度计算公式还可以是现有技术中其他的根据RGB颜色模型中像素点各颜色分量的值计算出亮度的公式,例如:
[0067]Y = 0.2126R+0.7152G+0.0722B ;或
[0068]Y = 0.33R+0.5G+0.16B ;或
[0069]Y = 0.375R+0.5G+0.125B,等等。
[0070]实际上,亮度值的获取也可以不局限于利用RGB颜色模型所提供的RGB分量值计算所得,现有技术中的任何将亮度与色度分离以获取亮度值的方法都可应用于本发明技术方案中,以实现获取目标区域(即上文中所述的第一区域)或源区域(即上文中所述的第二区域)中像素点的亮度的目的,供后续处理所用。
[0071]S2、排序单元2根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列;
[0072]S3、排序单元2根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列;
[0073]本实施方式中,排序单元2所进行的步骤S2与步骤S3的工作都是对某一区域的各像素点的亮度值大小进行排序,所以实际上两个步骤并没有先后之分,步骤S2与S3可以由排序单元2同步处理或以任意先后次序处理。
[0074]另外,此处所说的“排序”也可以是依照亮度值大小所进行的任意标准的排序,例如从大到小排序或从小到大排序,或大小穿插排序,需要保证的仅仅是获取第一序列和获取第二序列所依据的标准一致即可。
[0075]本实施方式中,排序单元2对第二区域图像各像素点的亮度值进行排序后,可以将排序结果(像素点)生成一个色板图像作为第二序列并将色板图像呈现在前端供用户查看。当然,其他实施方式中,在排序单元2生成第二序列或第一序列之后,这些序列也可以仅仅以数据的形式存储并待后续调用。
[0076]S4、位置数据获取单元3对第二区域一像素点i获取其在第二序列中的位置数据Ii;
[0077]本实施方式中,对第二区域一像素点i获取其在第二区域中的位置数据Ii的公式为山=(Y ^YminV(Ymax-Ymin),其中,1为像素点i的亮度值,Ymax和Ymin分别为第二区域各像素点的亮度值中的最大值和最小值。这个公式所实现的实际含义是,获取第二区域中所有像素的亮度值范围(即公式右边分母位置的(Ymax-Ymin),以像素点i的亮度值Yi与第二区域亮度值最小值Ymin的差值与其作比,得出其亮度在第二区域所有点整体亮度中的相对位置。实际上,不局限于本公式,在其他实施方式中亦可使用与“获取某一亮度值在整体亮度值的相对位置”相同思路的其他公式来得到这一位置数据Ii。
[0078]S5、映射单元4利用IiW第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。
[0079]本实施方式所述的颜色映射装置所产生的映射实际效果相当于保持了光照条件的不变,在此基础上将目标区域的颜色映射到源区域,所得结果更为真实自然,能得到符合实际的预估效果。
[0080]需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体 或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此夕卜,在本文中,“大于”、“小于”、“超过”等理解为不包括本数以上”、“以下”、“以内”等理解为包括本数。
[0081]本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
[0082]上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0083]这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0084]这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0085]尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。
【主权项】
1.一种颜色映射方法,其特征在于,包括如下步骤: 根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值; 根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列,并且,根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列; 对第二区域一像素点i获取其在第二序列中的位置数据Ii,利用Ii从第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。2.如权利要求1所述的颜色映射方法,其特征在于,对第二区域一像素点i获取其在第二区域中的位置数据^的公式为: Ii= (Y ^YminV(Ymax-Ymin),其中,1为像素点i的亮度值,Ymax和Ymin分别为第二区域各像素点的亮度值中的最大值和最小值。3.如权利要求1或2所述的颜色映射方法,其特征在于,所述预设亮度公式具体为: Y= (4899*R+9617*G+1868*B+8192)/16384,其中 Y 表示像素点的亮度值,R、G、B 分别表示RGB颜色模型中像素点各颜色分量的值。4.如权利要求1或2所述的颜色映射方法,其特征在于,根据第一区域各像素点的亮度值大小对第一区域各像素点排序或根据第二区域各像素点的亮度值大小对第二区域各像素点排序时,排序的依据均为从大到小,或均为从小到大。5.如权利要求1或2所述的颜色映射方法,其特征在于,步骤“根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列”具体包括: 根据第一区域各像素点的亮度值大小对第一区域各像素点排序,并按排序结果生成色板图像作为第一序列。6.—种颜色映射装置,其特征在于,包括亮度获取单元、排序单元、位置数据获取单元和映射单元; 所述亮度获取单元用于根据预设亮度计算公式获取第一区域各像素点以及第二区域各像素点的亮度值; 所述排序单元用于根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列,并且,根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列; 所述位置数据获取单元用于对第二区域一像素点i获取其在第二序列中的位置数据Ii; 所述映射单元用于利用IiW第一序列中读取相应像素点i’,并将所述相应像素点i’的颜色值映射到所述像素点i。7.如权利要求6所述的颜色映射装置,其特征在于,位置数据获取单元对第二区域一像素点i获取其在第二区域中的位置数据1的公式为: Ii= (Y ^YminV(Ymax-Ymin),其中,1为像素点i的亮度值,Ymax和Ymin分别为第二区域各像素点的亮度值中的最大值和最小值。8.如权利要求6或7所述的颜色映射装置,其特征在于,所述预设亮度公式具体为: Y= (4899*R+9617*G+1868*B+8192)/16384,其中 Y 表示像素点的亮度值,R、G、B 分别表示RGB颜色模型中像素点各颜色分量的值。9.如权利要求6或7所述的颜色映射装置,其特征在于,排序单元根据第一区域各像素点的亮度值大小对第一区域各像素点排序或根据第二区域各像素点的亮度值大小对第二区域各像素点排序时,排序的依据均为从大到小,或均为从小到大。10.如权利要求6或7所述的颜色映射装置,其特征在于,排序单元根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列具体包括: 根据第一区域各像素点的亮度值大小对第一区域各像素点排序,并按排序结果生成色板图像作为第一序列。
【专利摘要】为实现真实自然的颜色映射效果,发明人提供了一种颜色映射方法,包括步骤:根据预设亮度计算公式获取第一区域以及第二区域各像素点的亮度值;根据第一区域各像素点的亮度值大小对第一区域各像素点排序,得到第一序列,根据第二区域各像素点的亮度值大小对第二区域各像素点排序,得到第二序列;对第二区域一像素点i获取其在第二序列中的位置数据Ii,利用Ii从第一序列中读取相应像素点i’,并将相应像素点i’的颜色值映射到所述像素点i。发明人还同时提供了实现上述方法的装置,方案所产生的映射实际效果相当于保持了光照条件的不变,在此基础上将目标区域的颜色映射到源区域,所得结果更为真实自然,能得到符合实际的预估效果。
【IPC分类】G06T11/40
【公开号】CN104899909
【申请号】CN201510239555
【发明人】吴拥民, 叶仲雯, 许凯杰, 何汉鑫, 刘德建, 陈宏展
【申请人】福建天晴数码有限公司
【公开日】2015年9月9日
【申请日】2015年5月12日

最新回复(0)