基于遗传算法选择多光源下的光谱反射率重构研究
孔玲君1, 曾茜2,*, 张雷洪2, 占文杰2, 曾文超3
1. 上海出版印刷高等专科学校印刷包装工程系, 上海 200093
2. 上海理工大学出版印刷与印术设计学院, 上海 200093
3. 南京城建环境投资有限公司, 江苏 南京 210000
*通讯联系人 e-mail: 1015198189@qq.com

作者简介: 孔玲君, 1972年生, 上海出版印刷高等专科学校教授 e-mail: 908641376@qq.com

摘要

为解决基于RGB三通道信息值重构光谱反射率精度不理想的问题, 提出了一种优化的基于RGB三通道信息的光谱反射率重构算法。 首先编码产生随机选择多个光源的个体, RGB三通道值通过多项式回归算法预测多个光源下的三刺激值, 并采用伪逆法进行多光源下的光谱反射率重构, 然后将样本的重构精度作为个体的适应度评估值, 以优胜劣汰, 适者生存为原则对个体进行选择、 交叉、 变异操作, 最后得到适用于颜色样本光谱重构的多个光源与基于这些光源重构得到的光谱反射率。 实验选用Munsell颜色集作为训练样本集, RC24色卡、 SG140色卡作为检测样本集, 8个标准光源和82个发光二极管光源作为实验光源, 采用该算法从90个光源中选取最优的光源组合并重构得到样本的光谱数据, 并与Zhang提出的基于穷举法选择的多光源下的光谱重构方法和A光源下的伪逆法进行了重构精度对比。 实验结果显示该研究提出的方法随着光源个数的增加, 光谱反射率重构精度提高, 特别是光源个数增加到3时, 光谱重构精度提高的幅度最大。 在三种重构方法中, 该方法重构RC24的平均色差和平均光谱均方根误差分别为0.332 4和0.002 9, 而Zhang的方法与伪逆法的平均色差分别为0.429 3和3.266, 平均光谱均方根误差分别为0.029 7和0.004 8; 该文方法重构SG140的平均色差和平均光谱均方根误差分别为0.486 2和0.007 3, 而Zhang的方法与伪逆法的平均色差分别为0.544 8和3.821 9, 平均光谱均方根误差分别为0.035 6和0.013 3。 结果表明基于多光源下的光谱反射率重构精度明显优于基于单个光源下的重构精度, 而基于遗传算法的多光源选择方法又优于穷举法, 它能够根据颜色样本自动寻找到最优光源组合, 从而基于最优多光源下的三刺激值重构样本的光谱反射率, 提高了光谱反射率重构的精度。

关键词: 光谱反射率重构; 遗传算法; 多光源; 三刺激值; 最优组合
中图分类号:O433 文献标识码:A
Research on Spectral Reflectance Reconstruction Based on Genetic Algorithm for Selecting Multi-Illuminants
KONG Ling-jun1, ZENG Xi2,*, ZHANG Lei-hong2, ZHAN Wen-jie2, ZENG Wen-chao3
1. Department of Printing and Packaring Engineering, Shanghai Publishing and Printing College, Shanghai 200093, China
2. School of Communication and Art Design, University of Shanghai for Science and Technology, Shanghai 200093, China
3. Nanjing Urban Construction Environmental Investment Co., Ltd., Nanjing 210000, China
Abstract

In order to solve the problem that the accuracy of the spectral reflectance reconstruction based on RGB three-channel values is not ideal, an optimized spectral reflectance reconstruction algorithm based on RGB three-channel information was proposed. Firstly we coded to generate individuals with multiple illuminants selected randomly, and RGB three-channel values were used to predict CIE XYZ values under multi-illuminant by polynomial regression algorithm, and the pseudo-inverse method was used to reconstruct the spectral reflectance. Then the reconstruction accuracy of the sample was taken as the fitness evaluation value of the individual, and the individuals were selected, crossed, and mutated based on the principle of survival of the fittest. Finally, the combination of multiple illuminants which were suitable for spectral reconstruction of color samples were obtained, and then used to reconstruct the spectral of color samples. Munsell color set was used as training samples, RC24 chart and SG140 chart were used as test samples, and 8 standard illuminants and 82 LED light sources were used as experimental light sources. The proposed method was used to select the optimal combination from the 90 illumination sources and reconstruct the spectral reflectance of the test samples, and compared with the method based on multi-illuminant selected by exhaustive method proposed by Zhang and the pseudo-inverse method under A light source. The experimental results show that the spectral reflectance reconstruction accuracy is improved as the number of light sources increases, and the increase achieves the most when the number of light sources reach to 3. Among the three reconstruction methods, the average color difference and average root mean square error of the proposed method are 0.332 4 and 0.002 9 respectively for the RC24 chart, while the average color difference of the Zhang and pseudo-inverse methods are 0.429 3 and 3.266 respectively, and their average root mean square error are 0.029 7 and 0.004 8. For the SG140 chart, the average color difference and average root mean square error of the proposed method are 0.486 2 and 0.007 3 respectively, while the average color differences of the Zhang and pseudo-inverse methods are 0.544 8 and 3.821 9 respectively, and the average root mean errors are 0.035 6 and 0.013 3 respectively. The results show that the spectral reconstruction accuracy obtained under multi-illuminant is obviously superior to the one obtained under a single light source, and the results of the multi-illuminant selection method based on genetic algorithm is better than those of the exhaustive method. The genetic algorithm can automatically find the optimal illuminant combination according to the color samples, so as to reconstruct the spectral reflectance of the sample based on the optimal combination improving the accuracy of spectral reconstruction.

Key words: Spectral reflectance reconstruction; Genetic algorithm; Multi-illuminants; CIE XYZ values; Optimal combination
引 言

数码相机在日常生活中被广泛用于获取数字图像, 因为它们便携, 易于使用且经济实惠[1]。 但是在光谱成像技术中, 用低维度的数字响应信号来重建高维度光谱反射率是一个病态的数学求解过程, 分析当前基于光学带通滤光片的光谱成像系统的工作原理可知, 其通过配合滤光片来增加数字图像采集的通道数, 为光谱重建提供更高维度的输入信息, 从而提高光谱重建的精度[2]。 受此启发, 诸多学者开展利用彩色数码相机响应值扩展的方法实现物体表面光谱反射率重建的相关研究。 Dupont等较早提出利用多项式扩展方法, 对三刺激值信号进行光谱重建[3, 4], HARIFI等在Dupont的基础上做了改进, 他提出一个光源下的CIE XYZ值通过加权线性回归模型重构另一个光源下的CIE XYZ值, 然后基于主成分分析法对两组三刺激值信号进行光谱重建, 重建精度得到了提高[5, 6]。 Zhang等提出对多个光源下的三刺激值信号进行光谱重建, 重建结果获得了理想的效果[7]

因此基于多个光源下的三刺激值重构光谱反射率确实能够有效地提高重构精度, 但是增加光源个数的同时也造成数据量的增加, 如何选择最优光源组合是一个需要解决的问题。 Harifi等选择光源D65与CIEA光源组合, 而Zhang等利用穷举法发现光源CIEA, D65与D90组合时重构精度最好。 实际上不同的重构样本选择的光源应是不同的, 然而穷举法效率较低, 无法满足这一要求。 因此本文提出基于遗传算法选择光源, 能够根据不同样本的特征迅速而准确地找到不同数量的光源的最优组合, 从而提高光谱反射率重构精度。

1 基于遗传算法选择多光源的光谱反射率重构方法

基于遗传算法选择多光源下的光谱反射率重构方法主要步骤包括:

步骤1: 随机个体的产生。 首先将n个光源编码为1到n, 每个个体为一条含有n个基因组成的染色体, 被选择的光源的基因值为1, 未被选择的光源的基因值为0, 假设从n个光源中选择e个光源, 即每个个体代表e个光源, 写成向量形式如式(1)所示,

c=(1 0 1 1 0 0 0 0 0 0 0 )(1)

步骤2: 形成初始种群。 初始种群由所有个体组成[11], 因此初始种群可表示为

C=c1c2cN=c1, 1c1, 2c1, nc2, 1c2, 2c2, ncN, 1cN, 2cN, n(2)

式(2)中, N表示种群的规模。

步骤3: 将基于多光源下的三刺激值的光谱反射率重构精度作为个体的适应度值。 适应度值小的个体被淘汰的几率较大, 反之亦然; 基于多光源下的三刺激值的光谱反射率重构方法: 首先假设相机是理想的线性光电转换系统, 在实际照明环境下一个色块的RGB响应值可以由式(3)得到

dk=λminλmaxS(λ)l(λ)τ(λ)r(λ)d(λ)(3)

其中, dk表示三个通道的响应值, k的范围为1~3, l(λ )表示相机CCD的灵敏度, S(λ )表示照明光源的光谱功率分布, τ (λ )表示相机滤色片的透过率, r(λ )表示物体表面的光谱反射率。 已知光源和CIE观察者匹配函数的样本可以通过式(4)计算该光源下的三刺激值

Tjc=λminλmaxSλjoλrλdλ (j=1, , e)(4)

其中, Tjc表示个体中第j个光源下的X, YZ值, j的范围为个体的光源数量1~eSλ j表示第j个光源的光谱相对分布能量, oλ 表示CIE观察者匹配函数 x̅, y̅, z̅的值, rλ 表示光谱反射率。 假设有m个训练样本, 样本通过式(1)和式(2)可分别得到相机的RGB三通道信息值De个光源下的CIEXYZ值, 采用多项式回归模型预测检测样本在多个光源下的CIEXYZ值[8]。 如式(5)所示

Tc=MD(5)

其中, Tc是一个m× 3e的矩阵, D是一个m× h的矩阵, h为多项式模型的扩展项, M是一个h× 3e的矩阵, 表示多项式模型的系数。 则光谱反射率重建可如式(6)所示

r˙=QTtestc(6)

其中, Tctest表示测试样本在多个光源下的CIEXYZ值, Q是光谱反射率与多光源下的三刺激值的变换矩阵, 当前研究采用基于训练方式的伪逆光谱重建方法[9], 并采用基于欧氏距离法选择训练样本, 光谱反射率重建如式(7)所示

r˙c=rtrain[ttrainc]-1Ttestc(7)

式(8)中, rtrain, tctrain分别表示训练样本的光谱反射率和在多个光源下训练样本的CIE XYZ值。

因此选择多光源的问题可以优化成如下的优化问题

g=argmax{Φ(r, r˙c)}(8)

其中Φ (r, r˙c)表示测试样本的光谱反射率重构值与实际测量值之间的误差。 定义如式(9)

Φr, r˙c=1uj=1u1RMSErj, r˙jc(9)

其中u为测试样本的数量, RMSE(rj, r˙jc)表示第j个样本的实际测量值与重构值的光谱均方根误差。 最后适应度函数表示为如式(10)表示

f=Φ(r, r˙c)=1uj=1u1RMSE(rj, r˙jc)(10)

步骤4: 选择、 交叉、 变异。 利用轮盘赌选择法从N个个体中选择两个父体, 适应度大的个体容易被选中, 反之亦然。 交叉操作按一定的交叉概率交换选择的两个父体的二值基因值, 以产生新的子代, 交叉概率根据种群中所有个体的适应度值调整, 如式(11)所示

pc=k1(fmax-f)fmax-favg, (ffavg)k2(f< favg)(11)

其中, k1k2分别是小交叉常数和大交叉常数, fmaxfavg分别是种群中最大适应度值和平均适应度值, 变异操作按一定的变异概率改变隨机选择的一个基因值, 变异概率pm也是根据整个种群的适应度调整, 如式(12)所示

pm=k3(fmax-f)fmax-favg, (ffavg)k4(f< favg)(12)

其中, k3k4分别是小变异常数和大变异常数。 为了保证在交叉与变异期间个体的光源数量不变, 对两个个体交叉与变异时的规则进行了设计。 图1是假设从11个光源中选择3个光源为例演示整个操作过程。

图1 交叉与变异操作Fig.1 Crossover and mutation operator

假设个体1和个体2表示通过轮盘赌选择出来的两个父体, 首先对这两个父体进行交叉操作。 在两个父体中找出对应基因值不同的位置, 在图1中分别为位置1, 2, 9, 11, 然后在这四个位置中随机选择两个基因值不同的位置, 假设选择位置2、 9进行交叉, 最后得到new Individual 1, 此时光源个数仍然是3。 然后对新个体进行变异操作, 为了保持要选择的光源数量不变, 需要从个体的11个基因位置中隨机找出基因值不同两个位置, 然后互换这两个位置的基因值。 在图1中new Individual 1的位置1和3互换得到new Individual 2, 交叉和变异后产生新的个体, 从而产生新的子代。

步骤5: 终止条件。 判断遗传代数是否达到设置的最大遗传代数, 若否, 则返回步骤3, 若是, 则终止循环, 找到具有最大适应度值的个体, 并解码得到最优光源组合与最优重构精度。

2 实验部分

本实验样本选用Munsell色卡作为训练样本, ColorChecker Color Rendition Chart(以下简称RC24色)和ColorChecker SG(以下简称SG140色)为检测样本, 并在标准暗室内拍摄获取色卡中各色块的RGB三通道信息。 拍摄时利用平面式日光灯以对称45° 方向均匀照射样本。 利用佳能60D数码相机在拍摄面垂直方向拍摄样本, 手动设置相机的焦距以捕获清晰的图像, 相机曝光时间为1/20 s, 光圈大小为f4, 感光度ISO为100, 白平衡采用自动校正。 通过盖上相机镜头盖, 获取相机系统暗电流噪声, 完成暗电流噪声校正。 通过拍摄标准均匀灰板, 完成样本数字图像的光照不均匀性校正[10]。 然后以30× 30的像素区域中心的平均RGB值表示色卡中每个色块的RGB响应。

实验光源为CIE光源A, B, C, D65, D90, F2, F8, F11以及文献[11]中82个发光二极管光源(LED)。 同时, 使用X-Rite i1iSis自动扫描分光光度计测量每个色块的光谱反射率, 并计算训练样本在每个光源下的三刺激值。 所有的光谱反射率和标准光源的光谱相对能量分布均以10 nm为间隔, 在400~700 nm之间采样, LED光源的光谱相对能量分布数据见文献[11]。 根据经验, 多项式回归模型中的扩展项数设置为24时, 模型预测精度最佳。 遗传算法中种群大小N设置为100, 最大遗传代数设置为200, 交叉常数与变异常数k1, k2, k3k4的值参考文献[11]中的值, 分别为1, 1, 0.5, 0.5[11]。 实验同时采用了光谱指标RMSE和色度指标Δ Eab评价光谱重构精度。

3 结果与讨论
3.1 光源个数对重构精度的影响

实验首先选用8个标准光源和随机选取的三个LED光源(LED1: CREELRP-38, LED2:GE Par 38 80 W Spot、 LED3: Nature Studio2 Filtered Daylight)作为光源, 通过改变本算法中的输入光源个数e, 分别得到在不同光源数量下两个检测样本集的光源组合结果, 表1表2给出了部分实验结果。

表1 RC24在不同数量光源下的组合结果 Table 1 Combined results of RC24 under different numbers of light sources
表2 SG140在不同数量的光源下的组合结果 Table 2 Combined results of SG140 under different numbers of light sources

表1表2可以看出, RC24与SG140两组检测样本集所使用的光源组合结果并不相同。 当光源数为3, 4, 6, 7时, 两个检测样本集的光源组合相同, 而在光源数为2, 5, 8时光源组合不同。 比如, 当光源数为2时, RC24的光源组合为LED2, LED3, 而SG140的光源组合为D50, LED3。 这充分说明基于遗传算法选择光源具有自适应性, 能够根据不同的样本颜色自动选择最优的光源组合。 图2给出了在不同数量光源组合下重构得到两个测试样本集的光谱反射率的平均色差和平均光谱均方根误差。

由图2可以得到如下结论: 随着光源数量由2增加到11, 两个检测样本集的光谱重构精度均有大幅度的提高, 反映光源的个数越多, 重构的精度会越高。 但是当光源的个数小于等于3时, 色差曲线与均方根误差曲线降低的坡度较大, 重构精度提升幅度较大, 当光源的个数大于3时, 重构精度继续提高, 但提高的幅度较小, 且光源越多, 相应的数据量会增加, 重构效率降低, 因此结合重构精度与效率两个因素, 光源的最佳个数选为3较为合理。

图2 不同数量光源下得到的重构光谱色差(a)和 均方根误差(b)Fig.2 Color Differences (a) and RMS errors (b) of the reconstructed spectral under different numbers of light sources

3.2 光源组合对重构精度的影响

除了光源的个数会影响本算法的重构精度以外, 光源的组合也会影响重构的精度, 为了找到适用于样本的光谱重构的最优光源组合, 实验首先从90个照明光源中寻找到3个最优光源, 结果显示: 当选择的光源为LED14, LED39, LED48时RC24样本的重构精度最好, 当选择的光源为A, LED45, LED48时SG140样本的重构精度最好。 两组最佳光源的光谱曲线如图3所示。

图3 两个样本选择的最优光源组合
(a): RC24; (b): SG140
Fig.3 Optimal source combination for two sample selections
(a): RC24; (b): SG140

实验同时采用 Zhang基于穷举法选择的三个光源(CIEA, D65, D90)下的光谱反射率重构方法与A光源下的伪逆法分别重构两组检测样本的光谱反射率。 由三种方法重构得到的光谱与实测光谱之间的色差和光谱均方根误差数据分别统计于表3中, 两个检测样本集中所有样本的光谱均方根误差如图4所示。

表3 三种方法的重构精度 Table 3 Reconstruction accuracy of three method

图4 三种方法的均方根误差
(a): RC24; (b): SG140
Fig.4 RMS error of three methods
(a): RC24; (b): SG140

根据表3和图4可以得到如下结论: (1)本方法和zhang的方法重构RC24和SG140的光谱曲线的精度都明显优于伪逆法得到的结果, 说明基于多光源下的光谱反射率重构算法相比于单一光源, 能够显著提高重构精度。 (2)本算法比Zhang的方法在平均色差和最大色差、 平均均方误差和最大均方误差等方面都有一定的提高, 说明本文提出的基于遗传算法相比穷举法选择的光源组合更加适用于颜色样本的光谱反射率重构, 具有精度高, 效率快的优点。

图5演示了RC24色卡和SG140色卡中饱和度较高的色块光谱重构效果。 图中的4条曲线分别是样本的实测光谱曲线和由三种方法重构得到的光谱曲线。

图5 三种方法重构得到的光谱反射率曲线
(a), (b): RC24; (c), (d): SG140
Fig.5 Spectral reflectance curves obtained by three reconstruction methods
(a), (b): RC24; (c), (d): SG140

从图5可以看出本算法与Zhang的方法得到的光谱反射率曲线均与实测得到的光谱曲线的耦合度高, 但是在波长两端即300~450 nm和波长为650~700 nm时, 本算法得到的光谱曲线耦合度要优于Zhang的方法。 结合图3中本方法选择的三个光源的SPDS分布情况分析可得: 本研究选择的光源的相对光源能量在波长两端分布较高, 在中间波段分布较低, 因此这可能与光源的相对光谱能量分布有关, 相对光谱能量分布高的重构效果较好。

4 结 论

提出了基于遗传算法选择多光源下的光谱反射率重构方法, 使用遗传算法从90个光源中选取一个最优光源组合, 并基于该最优光源组合进行光谱反射率重构, 同时将本方法与基于穷举法选择的多光源下的光谱重构方法以及A光源下伪逆法的光谱重构方法的精度进行对比分析。 结果表明本文提出的方法在光源数量达到3时具有最佳的算法精度和效率, 且针对不同的颜色样本可自适应选择三个最佳光源组合, 从而具有比穷举法等方法更快速更精确的优点。 本工作有效地解决了光源选择问题, 可实现利用数码相机拍摄的RGB三通道信息获得精确的多光谱图像。

The authors have declared that no competing interests exist.

参考文献
[1] Zhang L, Liang D, Pan Z, et al. Optical & Quantum Electronics, 2015, 47(7): 1679. [本文引用:1]
[2] LIANG Jin-xing, WAN Xiao-xia(梁金星, 万晓霞). Acta Optica Sinica(光学学报), 2017, 37(9): 0933001. [本文引用:1]
[3] Dupont D. Color Research & Application, 2002, 27(2): 88. [本文引用:1]
[4] Ayala F, Echávarri J F, Renet P, et al. Journal of the Optical Society of America A Optics Image Science & Vision, 2006, 23(8): 2020. [本文引用:1]
[5] Harifi T, Amirshahi S H, Agahian F. Optical Review, 2008, 15(6): 302. [本文引用:1]
[6] Amiri M M, Amirshahi S H. Optical Review, 2014, 21(6): 816. [本文引用:1]
[7] Zhang X, Wang Q, Li J, et al. Color Research & Application, 2017, 42(1): 68. [本文引用:1]
[8] Martinkauppi J B, Shatilova Y, Kekäläinen J, et al. Compational Color Imaging, Springer Berlin Heidelberg, 2009: 198. [本文引用:1]
[9] Elrifai M I A, Mahgoub M H, Magdy M A, et al. Computer Science Journals, 2013, 7(3): 278. [本文引用:1]
[10] Liang J, Wan X, Liu Q, et al. Color Research & Application, 2015, 41(6): 585. [本文引用:1]
[11] Karaman S, Shima T, Frazzoli E. IEEE Transactions on Evolutionary Computation, 2012, 16(4): 489. [本文引用:5]