基于大数据的配色方案优化约束空间建构

【www.zhangdahai.com--其他范文】

刘肖健,冯玉梅,张幂,徐博群

(浙江工业大学,杭州 310023)

平面设计和产品设计常用的一种配色方法是从图片中提取特征色彩,经过组合与微调后赋予各色区,使之可以再现图片的色彩意象。如果设计任务是体现某一文化或亚文化的色彩意象,则色源通常是一个图库。基于大数据技术从图库中提取特征色彩的研究很多,而提取色在设计中的应用方式则相对简陋[1]。从图库中提取出来的色彩信息类型有很多,如色值、占比、像素分散度、色值分散度、源图色区邻接关系等。这些信息均为色源的色彩“意象”组成部分。如需在设计中再现色源的色彩意象,应该对意象编码进行全面体现,但目前绝大多数相关文献中的方法只用到了色值信息,鲜见其他信息。本文针对提取色信息的有效应用提出了改进方案

图像特征色彩的设计重用,或图像色彩意象的设计再现,包括两个过程:一是图像特征色彩的提取;
二是提取色的应用。

图像色彩提取常用的方法是聚类法,已有较多研究,聚类结果通常是得到一系列特征色。近期的一些研究力图从图像中提取出更丰富的信息。刘肖健等[2]提出了色彩网络模型,除了提取色的色值外,还加入了提取色的占比、两色在图库中的共现概率等信息,丰富了色彩意象的编码和内涵;
赵露唏[3]基于色彩网络模型分析了11 种传统纹样图库的色彩特征,并提出了色彩特征显著度的概念和计算方法;
李愚[4]在色彩网络基础上构建了色彩邻接网络,把提取色在源图中的邻接关系考虑进去,并构建了配色对象的色区邻接网络,把配色问题表达为两个矩阵之间的映射问题,规范了配色设计的数学形式;
Xu Bo Qun 等[5]提出了基于色序偏差、邻接偏差、凝聚度偏差和子空间尺寸偏差4 个指标的图库提取色编码,以及配色结果对图库色彩意象还原度的量化计算模型。

本文的提取色应用主要面向进化算法。由于配色方案的评价是一个比较感性的工作,交互式遗传算法(Interactive Genetic Algorithms,IGA)应用较多。刘肖健等[6]给出了基于单图提取色重用的交互式遗传算法的基本架构,并用于3D 产品模型的配色方案优化;
朱昱宁等[7]提出了基于图库提取色的意象再现交互式遗传算法。刘肖健等[8]提出了基于图库提取色的非随机种群交互式遗传算法,以适应设计师对连续变化的色彩进行比较评价的需求;
郭一楠等[9]通过协同交互式多Agent 文化算法解决配色设计交互式遗传算法的用户疲劳问题;
Hu Guo Sheng 等[10]开发了基于交互式操作生成和谐配色方案的技术,并构建了基于HSL 色彩空间的6 个变量色彩组合模型[11];
Man Ding 等[12]建立了用户色彩意象空间,利用BP 神经网络构建了色彩语义映射模型并通过遗传算法推荐配色方案。

配色设计的遗传算法应用中,研究热点在于用户评价方式,以及基于评价数据的用户偏好预测,以便使用程序代替人类自动评价,以增加进化代数,解决IGA 人工评价的低效瓶颈。该做法对用户评价给予了较高的权重,以致用户偏好完全主导了进化方向。由于色彩重用的目标并非一味地取悦用户,配色方案对源图色彩意象的再现程度也是一个重要指标。Xu Bo Qun 等[5]考虑到此因素,给出了两者的组合决策模型。

上述研究提供了特征色彩的提取和配色方案的自动生成方法,解决了配色优化的核心问题,但是对优化流程中色彩变化范围的约束条件普遍处理得比较粗糙。色彩意象的再现要求对配色方案色彩的变化范围设置约束,这个约束应该是色源的色彩提取信息与用户评价信息融合的结果。关于这一点,多数基于进化算法的配色优化方法考虑得并不充分。这是开展本工作的出发点。

2.1 问题分析

本方法对配色方案优化算法的改进主要在于为色彩变化施加有效约束,约束来自源图库的提取色信息。

在基于遗传算法的配色方案优化方法中,方案色彩的变化主要有2 种方式。

1)在色彩自身邻域内变化。指定一个邻域尺寸,让色彩在邻域中随机变化。此法多用于构造初始种群、方案变异,或以单性繁殖方式生成后代。邻域大小一般是设置好的固定值,如RGB 空间的一个比例值。

2)在两色之间插值。线性插值或以两色作为对角点构造子空间,在整个子空间内部随机取色。

以色彩意象再现为目标的优化过程较少使用二进制编码进行交叉重组或突变,以免出现不在提取色范围之内的全新色彩(相当于无效方案)。某种程度上,编码的选择也是一种约束形式。

配色方案种群的形成不是完全随机的,而是来自源图提取色,通常是基于聚类方法得到,因此,提取色即聚类中心。在生成初始种群时,这些提取色通过随机组合形式被赋予配色方案的各色区。在后续的优化过程中,原始提取色不再对配色方案的变化形成直接的约束。因此,色源的原始提取信息(不仅是提取色代表的几个聚类中心)的约束未能作用于整个优化过程,这是配色方案优化的一个不足之处。

色彩的原始提取信息约束失效(或者代之以固定尺寸的子空间约束)会有4 个问题:有些提取色十分精准(如“点睛色”),采用固定尺寸的子空间进行色彩变化会导致色彩偏离原始意象;
有些提取色旗下的像素色彩变化范围十分宽广,固定尺寸的子空间约束会错过一些潜在的优秀色彩;
有些提取色实际上是连续色调,表现在色彩空间中是一个形状不规则的区域,或者在一条线上,而子空间的形状是一个立方体,用于表达提取色误差过大;
经过多轮优化后,配色方案的色彩会逐渐偏离原始提取色,导致意象失真,而多数算法只是通过用户评价(评价方案的色彩意象吻合度)法来解决这些问题,对交互式优化方法来说,即使能解决失真问题也是比较低效的,增加了进化代数和用户疲劳。

2.2 方法整体架构

针对上述问题,本文有2 个解决方案:一是从色源提取多种信息(除了聚类中心以外),用作优化过程的约束;
二是这些约束在优化过程中全程有效,而不是仅针对初始种群的生成阶段。

本方法面向交互式遗传算法开展。交互式遗传算法的交互方式通常比较单一,即用户对生成的配色方案进行交互评价。本文拓展了用户的交互方式,在约束条件的生成过程中让用户有效介入,生成定制约束条件;
另外,也简化了部分用户交互,配色方案是否再现了原始色彩意象不再让用户单独评价,用户要做的只是基于一个综合评价标准进行打分或选择。方法的整体架构见图1。在交互式进化中,用户的交互行为体现在约束空间(即特征色彩空间)的定义和进化过程中的交互评价。

图1 方法整体架构Fig.1 Structure of the method

本文用“色彩意象信息提取”代替“色彩提取”的说法,以区别于单一的色值信息。源图库的色彩意象信息有很多种,如色值、占比、像素分散度、色值分散度、色区邻接度、双色共现度、多色共现度等。为避免干扰并集中叙述约束的处理,本文只提取色值、占比和色值分散度三类信息加以利用。其中色值即提取色(聚类中心)的色彩分量值,如RGB 等;
占比为提取色旗下的像素在图像总像素数中的占比;
色值分散度为提取色旗下的像素色值的差异程度,用像素色彩与提取色距离的标准差来表达。

文献[2]给出了基于K–Means 方法的图库色彩提取技术,使用了2 次聚类,第1 次聚类对每幅图像进行色彩提取;
第2 次聚类是把第1 次的提取结果合并在一起形成一幅新的图像,然后用同样的方法再进行一次聚类。

第2 次聚类结果中带有每种提取色的分散度指标,即色彩原点的外环。如果这个分散度指标用于约束,就只能提供一个用于设置邻域空间尺寸的参考量,并不能体现该提取色旗下像素色彩分布区域的实际形状。因此,笔者采用了一种新的方式来代替第2次聚类(不是使用K–Means 方法,而是用2.5D 的方式直接展示给用户),见图2。

图2 第1 次聚类结果的可视化展示Fig.2 Visual demonstration of first clustering result

图2 中的2.5D 空间中展示了第1 次聚类的全部提取色:圆点位置为其在色彩空间中的坐标位置;
圆点色彩即提取色的色值,圆点大小为提取色在源图中的占比;
周边3 个平面是2.5D 空间的3 个投影面,展示了提取色在3 个投影面上的位置。3 个投影面与中间3 个合在一起的投影面是相同的,复制分开表达是为了避免与中间的圆点重叠在一起,影响观察。

由图2 可知,敦煌图库的提取色在RGB 空间的分布形式大致是对角线方向上的月牙形空间。这种直观的展示给用户提供了交互操作的便利性。本文的原型系统基于平面矢量设计软件CorelDraw 开发,图2的可视化展示为矢量图,每种提取色均可单独选取。当用户通过点击提取色圆点选中一种色彩时,可以同时看到它在2.5D 空间及其3 个投影面上的位置(4个色彩圆点被设置为一个群组),以确保交互选择正确。

4.1 约束空间的定义

“约束空间”是RGB 色彩空间中的一个区域,它定义了配色方案中某一色彩的变化范围,对配色方案优化过程中的变化形成限定约束作用,它有以下几个特征。

1)约束空间是RGB 色彩空间的子集。

2)约束空间的形态不是立方体,而是一张基于4 个点(即4 种色彩)构建的曲面,所以约束空间的形态有一定的自由度。

3)构建约束空间的4 种色彩由用户在第1 次聚类结果的展示图上交互确定,见图3。

4)由于图3 中所有色彩点均为聚类结果,所以色彩点是有大小区别的;
色彩点的大小将以某种形式影响约束空间曲面的形态。

5)约束空间的数量由用户决定;
配色方案的每一种色彩在自己的约束空间中变化,但也允许几款色彩共用一个约束空间,这种情况多出现在同系列色的使用中。

上述第2 个特征是关键。希望色彩能在一个可以体现提取色分布规律的区域内变化,但是这个区域通常是不规则的,让色彩在里面自由变化需要使用间接方式。本方法是把这个不规则的约束空间映射到一个单位正方形中,这样只需一对UV 坐标就能在约束空间中寻优。

用户在图3 所示的界面中选择4 种色彩后,所对应的单位正方形形状的约束空间如图3b 所示,约束空间中的所有色彩均在此。

图3 约束空间的构建Fig.3 Construction of the constraint space

图3a 是用户以交互方式从图2 中选出的4 种色彩。在实际的优化过程中,图3b 所示的约束空间是在程序内部表达的,并不需要画出来,这里仅做图示。这个约束空间在RGB 空间中则表达为通过4 个色彩坐标的一个曲面。

在三维RGB 色彩空间中,在4 个坐标点之间通过插值方法构造一个直纹曲面并不困难,但约束空间曲面还需要体现4 种色彩的权重大小。即4 个色彩点的直径要在约束空间的构造中起到影响作用。图4 为相同的4 种色彩但权重不同,可以看到生成约束空间的差异。

图4 的2 个约束空间在3D 的RGB 空间表达为形态不同的2 个曲面。因此,为了体现色彩权重的影响,需要在单位空间的二维UV 坐标和RGB 空间的三维曲面坐标之间建立某种映射关系。

图4 色彩权重对约束空间的影响Fig.4 Color weights" influence to the constraint space

许多平面软件提供了网格节点赋色功能,允许用户手工调整一张UV 网格中每个节点的色彩及权重,效果与图4 类似。但这些功能中权重对色彩的影响算法是未知的,而且只能手工操作,无法用于优化迭代。因此,本文设计了一种色彩权重对约束空间形态的影响算法。

4.2 约束空间的建构

构建约束空间的目的是通过一个单位坐标(u,v)准确地在空间中锁定一种色彩,这样它就可以在空间中的某个色彩邻域中变化,或者在2 个(u,v)坐标之间进行插值。这些操作均可以确保操作结果满足约束条件,即属于同一个约束空间。

以下是约束空间的建构过程。

每种色彩有R、G、B3 个分量,每个分量的值需要单独计算,以下以红色分量R为例展示一个色彩分量的算法。

图5a 是用户选取的4 个色彩构成的约束空间,暂且假设它们的权重一样大。由于只讨论一个R分量,所以色彩用灰度来表达,灰度值即代表色彩的R分量值。

图5 色彩分量R 的约束空间(等权重)Fig.5 Constraint space for color"s red value (with even weight)

图5b 是加上了R分量轴的约束空间的3D 表达:下方的平面是UV 地平面上的单位正方形,竖轴表示色彩分量R的值,上方曲面上的每一点高度的坐标为约束空间中对应点的R分量值。由于4 种色彩的权重相同,所以约束空间中任意点(u,v)处的R分量值可以使用线性插值法算出,图5b 的曲面在u和v2个方向上的截线均为直线。

当用户选取的4 种色彩的权重不同时,仍然可以使用插值法计算任意点(u,v)处的R分量值,但不再是线性插值了。这种插值算法不是固定的,需要优化算法的开发者来设计。

对此本文进一步给出了一个非线性的插值算法,见图6。

图6 色彩分量R 的约束空间(不等权重)Fig.6 Constraint space for color’s red value (with uneven weight)

图6b 中的黄色曲面是不等权重的约束空间曲面,白色直纹曲面即图5b 中的等权重约束空间曲面,放在一起以示对比。可以看到,2 个曲面的4 个角点是相同的,这表示构造2 个约束空间所使用的4 种色彩是相同的;
但曲面的4 条边界均为曲线而不是直线,这表示在单位正方形中UV 坐标均匀取值时,在竖轴上所产生的R分量值的分布是不均匀的,如在色彩权重大的一端密度大。

约束空间曲面的边界曲线由非线性插值函数确定。

4.3 非线性插值函数的设计

非线性插值函数的设计有3 个要求:通过首尾两个给定的色彩坐标;
在定义域内为单调函数;
函数曲线向权重大的一侧凸起,凸起幅度由首尾两色的权重差决定。

以图6b 右近侧的曲面边界为例,该曲线对应的是图6a 单位正方形约束空间的下边界。由于右下角的色彩权重比左下角大,因此曲线应为上凸形态(右下角色彩比左下角浅,代表其R分量值比左下角大,因此在R轴上位于上方)。用指数函数构造一个u的定义域在[0,1]区间内的函数:

写成矩阵形式:

式中:u的指数中的d1和d2分别为图6a 左下角和右下角的2 个色彩的权重值(用圆点直径表达)。如此,当d1

同理可得上侧曲线和左右两侧曲线的函数。

式中:u和v为单位空间的横坐标和纵坐标;
d1~d4为4 个色彩的权重,逆时针顺序。

用上述方式可以构造约束空间曲面的四条边界曲线。基于4 条边界曲线构造曲面有多种方法,如Coons 曲面法。本文给出了一种相对简单的线性插值方法,其原理见图7。

图7 基于曲线边界构建约束空间Fig.7 Constraint built through border curves

该法分2 步进行。

1)基于2 条对边曲线构建2 个直纹面,上方的绿色曲面和下方的黄色曲面,2 个曲面各有2 条边是直线,见图7。

2)对2 个曲面进行融合,得到图7 中间蓝色的四边都是曲线的约束空间曲面。

图7 所示绿色直纹面的方程如下:

图7 黄色直纹面的方程如下:

2 个直纹面融合为图7 蓝色曲面的方式是修改RA的公式,RA原本是v的线性函数,现修改为按两端曲线变化,具体方式就是利用RB在RA的函数式上加一个修正量Δr:

式中:Δz1和Δz2为左右两侧曲线相对于直线的偏移量:

式(7)展开如下:

最后可得约束曲面方程如下:

如此,优化过程中的色彩遗传操作即可在各色彩的UV 空间内进行,最后把操作结果(u,v)坐标带入式(12)得到RGB色彩值,然后对配色方案进行赋色。

5.1 配色方案的编码设计

交互式遗传算法的色彩编码通常直接以色值作为编码,启用约束空间后,相当于配色方案的编码发生了变化,改为以约束空间代号和UV 坐标为编码:

式中配色方案的每一种色彩由3 个变量构成,其中u和v为该色在约束空间中的坐标,ID 为约束空间代号。在以源图色彩意象再现为目标的优化任务中,不允许不同约束空间内的色彩进行交叉重组,以免产生偏离提取色的新色彩,形成无效方案。约束空间代号ID 可以做识别之用,一是判断色彩的可交叉性,二是避免配色方案的色区产生“撞色”现象,即两个色区的色彩来自同一个约束空间,除非对此单独设置约束,如同系色的情况。

5.2 算法流程

基于交互式遗传算法的流程继承了文献[7]中所述的基本框架,除了编码操作启用新编码外,主要改进是增加了一个从UV 单位参数空间到RGB色彩空间的映射过程。算法流程如图8 所示,该流程是对图1 中“优化流程”环节的展开。

在准备阶段,用户定义好一系列的约束空间,这相当于旧方法中的提取色。

配色优化过程分为2 个阶段。

第1 阶段是色彩的随机组合:程序从用户定义的系列约束空间中随机选择并指派给相应的色区。基于约束空间形成色彩的方式,按等概率随机生成一个(u,v)坐标,然后将约束空间中该坐标位置按式(12)映射为色彩值。由于映射公式中已考虑构建约束空间的4 种色彩的权重,所以随机生成的色彩会一定程度上向权重大的位置靠近。这种方式生成的配色方案比基于有限提取色(聚类中心)排列组合更具多样性。第1 阶段主要是为各色区选定约束空间,按文献[6]中的方法进行。

第2 阶段对配色方案各色区的色彩进行优化。此时,每一色区均已有确定的约束空间,色彩只在各自的约束空间中变化。旧方法的遗传操作是在2 个母本之间插值,或在个体色彩周边邻域进行突变,这种做法会随着进化代数的增加逐渐偏离提取色。按本方法,每次遗传操作的结果都在约束空间内,确保遗传操作结果的有效性。这是本方法的一个进步。

原型系统界面见图9。

图9 原型系统界面Fig.9 Interface of the proto system

本文基于平面矢量软件CorelDraw 开发了原型系统,在文献[7]中所述的原型系统基础上增加了如下用户操作内容。

1)图2 所示的源图库聚类结果展示,在“2.5D提取色表达”模块完成。

2)用户交互定义一系列约束空间,在“定义约束空间”模块完成。

约束空间在使用中,可以随机为每一色区分配约束空间,也可以为选定的待配色方案的色区指定约束空间代号。

其他改进内容(如UV 参数空间的定义)在程序内部完成,主要集中在“阶段2:微调”部分,不体现在用户界面上。

使用本文的约束空间法在敦煌图库提取色基础上的优化过程方案种群,见图10。

图10 配色方案种群Fig.10 Populations of the designs

图10 中配色方案各色区的约束空间是事先指定好的,通过图9 界面左下角的按钮完成:先从下拉列表框中选择色区ID,然后选择原始配色方案的色区,点击完成设置(配色方案为矢量图群组,各色区可以单独选择)。遗传操作采用非等位基因交叉方式进行,即允许两个母本的等位基因来自不同的约束空间,程序内部确保执行交叉操作的基因(可以是非等位基因)来自相同的约束空间,以减少无效方案的生成,并且可以把组合优化和色值微调融合在一起进行。

图10 展示了第2 代和第5 代种群,与原方法比较,由于迭代偏色导致的无效方案显著减少,配色方案对源图库色彩意象的再现精准度得到了提高,优化效率也随之提高,且程序有效识别出用户对深色背景的偏好,并在种群个体的整体构成上有所体现。

约束空间是一个用于处理配色方案优化过程的约束条件的概念,本文对这个概念的实施给出了一种建构案例。约束空间的建构方法有很多,本文使用了UV 二维参数空间,并以此作为配色方案的色彩编码。也可以使用三维的参数空间,如此约束空间就映射为RGB空间中的一个实体区域而不是一个曲面,其建构方法与此类似。

本方法要求用户按顺序选择4 种色彩构建约束空间,选择顺序决定了约束空间的建构方式。考虑到防错的需要(由于选择顺序是看不见的),也可以在所选色彩的圆点之间建立连线以确保约束空间结构正确。文献[2]中的色彩网络模型的表达方法可以完成这个任务。

本方法的不足之处是约束曲面方程输出的色彩值并不能保证全部在[0,255],个别情况下可能会超界造成无效色彩。对这种情况,一个解决方案是以图5b 所示的直纹曲面为基准对约束曲面进行变形修正处理。不过考虑到人眼对色彩的知觉本身就存在一定容差,更简单的办法是在色彩分量值生成之后进行检查,如有超界则强制修正为边界值。这种处理方法会导致约束空间曲面局部曲率不连续,不过对寻优过程的影响并不大。

案例测试表明,本文的方法生成的方案种群从直观的视觉观察看更有效地再现了源图库的色彩意象,由迭代而导致严重偏离的色彩显著减少,客观上提高了优化效率。

在参数空间内实施寻优策略会使问题得到一定程度的简化,是一种值得推广的方法。

猜你喜欢 曲面配色聚类 一种傅里叶域海量数据高速谱聚类方法北京航空航天大学学报(2022年8期)2022-08-31基于知识图谱的k-modes文本聚类研究南京理工大学学报(2022年1期)2022-03-17一种改进K-means聚类的近邻传播最大最小距离算法计算机应用与软件(2021年7期)2021-07-16寻找古意的配色哈哈画报(2021年11期)2021-02-28基于模糊聚类和支持向量回归的成绩预测华东师范大学学报(自然科学版)(2019年5期)2019-11-11参数方程曲面积分的计算智富时代(2019年8期)2019-09-23参数方程曲面积分的计算智富时代(2019年8期)2019-09-23仪式感选择小资CHIC!ELEGANCE(2019年31期)2019-09-12关于第二类曲面积分的几个阐述卷宗(2017年16期)2017-08-30MIX&MATCH 清甜一夏 彩妆配色新风潮Coco薇(2017年7期)2017-07-21

推荐访问:配色 建构 约束

本文来源:http://www.zhangdahai.com/shiyongfanwen/qitafanwen/2023/0430/591601.html

  • 相关内容
  • 热门专题
  • 网站地图- 手机版
  • Copyright @ www.zhangdahai.com 大海范文网 All Rights Reserved 黔ICP备2021006551号
  • 免责声明:大海范文网部分信息来自互联网,并不带表本站观点!若侵害了您的利益,请联系我们,我们将在48小时内删除!