APP下载

基于原始对偶方法的图像去色算法

2021-09-26张俊康金正猛

关键词:彩色图像亮度灰度

张俊康,金正猛,冯 灿

(1.南京邮电大学 理学院,江苏南京 210023 2.北方信息控制研究院集团有限公司,江苏南京 211153)

图像去色又称彩色图像灰度化。灰度图像由于能用较少的信息量刻画彩色图像的特征、系统处理效率高,在人脸识别、目标跟踪、医学诊断和艺术美学等图像处理领域广泛应用[1]。从数学角度讲,彩色图像灰度化是将三通道彩色图像转换为单通道黑白图像的降维过程,在转换过程中不可避免地会丢失信息。因此如何在灰度化过程中保持原彩色图像中的边缘、纹理、对比度等特征信息,使去色后的黑白图像尽可能清晰、准确地呈现原彩色图像中的各种特征信息一直是图像去色研究中有挑战性的问题之一。

最简单的彩色图像灰度化方法是对RGB彩色空间各通道采用固定权重的加权平均,如MATLAB软件中自带的rgb2gray函数。该方法虽然运算简单且容易实现,但也极易丢失原彩色图像的细节信息。

目前,灰度化算法可分为全局映射法[2-7]和局部映射法[8-11]。全局方法着眼于整体颜色分布差异,采用同一映射函数求解,因此具有全局一致性。例如,Gooch 等[2]提出了“color2gray”的彩色图像灰度化算法,它首先将原图像从RGB彩色空间转换为CIELab彩色空间[12],然后结合原彩色图像的亮度差和色度差的最小二乘构造模型。该方法能较好地保持原图像的彩色对比度信息,但是对于色彩丰富的图像,该方法并不能同时保留亮度和色度信息。之后,Lu等[4]设计了一种线性组合方法,旨在通过使用严格的弱色序约束最大程度地保留原始颜色对比度。基于全局映射的去色方法在所有的像素位置处,采用相同的映射函数,使得灰度化结果难以保留原彩色图像不同区域的局部特征。基于局部映射的去色方法注重颜色在局部空间位置的分布差异,并根据局部分布差异调整局部位置的像素强度,能较好地地保留原彩色图像的局部颜色特征。例如,Smith等[8]提出了一种分两步去色方法,即首先通过考虑Helmholtz-Kohlrausch颜色效应和全局映射进行颜色排序,然后使用拉普拉斯金字塔提取边缘信息以实现局部对比度的增强。卢红阳等[13]提出一种最大加权投影算法,该算法通过将原图像梯度的权重引入到最大化模型中,并用高斯加权系数表示输入彩色图像的每个彩色通道梯度来保持原彩色图像的对比度和颜色顺序。尽管局部映射法能够找出彩色图像各通道的局部颜色差异,使得去色后的图像能较好地保留原彩色图像中的局部细节特征。但大部分局部映射算法无法保证颜色的整体一致性,即:彩色图像灰度化过程中,相同的颜色映射为相同的灰度值。而且,利用局部映射算法去色后的图像中会出现伪影[14]等现象。

近年来,基于方差最大化的图像去色方法[5,10-11]被人们广泛研究。 2008 年,Qiu 等[5]认为去色的图像可通过彩色图像各通道的某种最优加权平均得到,然后提出了基于整体方差最大化和亮度保持的优化模型来得到最优的权重系数,从而得到灰度化结果。由于Qiu等[5]所提的优化模型非凸,导致该模型的结果对参数的选取较为敏感。另外,该模型得到的最优权重系数是空间全局不变的,使得该模型的去色结果不能很好地保护原彩色图像中的一些重要细节。最近,Jin等[10]提出基于局部方差最大化和亮度保持的变分模型来得到最优的局部权重系数,使得去色后的结果能较好地保持原图像的对比度和亮度等细节信息。

注意到Jin模型[10]在数值求解过程中,仅部分利用了图像的局部方差和亮度信息,导致该算法去色结果丢失了原彩色图像中的部分细节信息。本文结合原始对偶(Primal-Dual)方法,给出求解Jin模型的新算法,该算法能完整利用彩色图像各通道间的局部协方差和局部亮度信息。另外,分析本文算法的收敛性。数值实验表明:本文所提算法能较好地保持原彩色的纹理、对比度和亮度等细节特征。

1 模型介绍

本文假设 I(x) = {R(x),G(x),B(x)} 为定义在有界开集Ω∈R2的彩色图像,灰度图像L(x)可通过加权平均得到

其中,α,β和γ分别是彩色图像中红色、绿色和蓝色通道的权重系数。在下面的讨论中,记u=(α,β,γ),定义

分别为输入的彩色图像中红色、绿色和蓝色3个通道的协方差矩阵和平均值向量。其中,ki,j为第i和第 j通道之间的协方差 (i,j∈ {r,g,b})。

在文献[5]中,通过对式(1)两边求方差可得灰度化后的黑白图像的方差

一般认为,图像的方差越大,表示图像的对比度越明显。因此,Qiu等[5]针对权重向量u提出了方差最大化模型

其中,参数λ为一个正数。目标函数(2)的第一项是为了保证输出的灰度图像L(x)的方差最大,即uKuT最大;第二项是为了保留输入的彩色图像的平均亮度信息。约束式(3)保证灰度化过程能量守恒且去色后的灰度图像非负。

为了保持原彩色图像中更多的细节特征信息,Jin 等[10]引入局部变换

Jin等[10]提出基于交替方向乘子法(ADMM)数值求解Jin模型,后面简称为Jin算法。注意到在该算法的子问题求解过程中,为了利用傅里叶变换实现快速求解,Jin算法将协方差矩阵 K(x)中的ci,i(x) 和均值向量 m(x) 中的 mi(x)(i= 1,2,3) 固定为全局方差和全局均值,即 ci,i(x) 和 mi(x)(i =1,2,3)在每一个像素点x处为同一常数,使得该算法在处理结构纹理丰富的彩色图像时,不可避免地丢失一些局部细节信息。以图1为例,图1(a)为输入的彩色图像,图 1(b)为 Jin算法的去色结果,图1(c)为本文算法的去色结果。观察图1(b)结果不难发现:Jin算法得到的灰度图像,丢失了原彩色图像中的部分纹理细节信息,图像中“叶子”和“花瓣”等区域尤为明显。

为了能更充分地利用输入的彩色图像I(x)中各通道的局部特征信息以及局部亮度信息,本文结合原始对偶方法设计了一个用于求解Jin模型的快速算法。与Jin算法不同的是,本文算法在求解过程中完整地使用了局部协方差矩阵K(x)和局部均值向量m(x)的信息。从图1(c)可以看出,采用本文算法所得到的灰度图像,较好地保留了原彩色图片的局部对比度和纹理特征,更好地呈现了原彩色图像。

图1 不同算法的结果比较

2 本文算法与收敛性分析

本节结合原始对偶(Primal-dual)[15]算法,给出Jin模型(5)的快速求解算法与收敛性分析。经过Legendre-Fenchel变换,式(5)可以等价为如下鞍点问题

由于算法1的收敛性证明与经典Primal-dual[15]算法的收敛性证明过程相同,故这里不再赘述。

下面给出算法1的收敛性结果。

定理1 对于任意给定的σ,ξ>0以及任意的初始值 u0,z0,l2= ‖ ∇‖2= ‖div‖2≤ 8/h2, 当σξ<1/l2时,由Primal-dual算法产生的迭代序列(uk,zk) 收敛到鞍点问题(6)的解 (u*,z*)。

2.1 u 子问题的解

本节给出u子问题(10)的一个基于投影梯度法的求解算法。为简单起见,定义

不难验证,算法2满足向前向后分裂算法[16]的收敛性条件,因此本文仅给出算法2的收敛性结果。

3 实验结果与分析

本节将对多幅彩色图像进行灰度化处理,验证本文算法的有效性,并同现有算法进行比较。在每一个像素点x,本文基于11×11的局部窗口来计算局部协方差阵K(x)和局部均值向量m(x)。 在模型式(5)中,固定τ=30,μ为自适应的选取以保证模型的凸性, λ 取值为{1,5,10,15,20}。 在算法 1中,令;在算法2中,迭代步长t=1/L,其中L为∇G的利普希茨常数。本文实验的停止准则 ε =1 × 10-3。

本文采用平均颜色对比度保持度(Average Color Contrast-Preserving Ratio,ACCPR)[18]来定量评估模型的实验结果,定义为

相应地,‖Γ‖是集合Γ内元素的个数。显然,若L的ACCPR值越大则表示灰度图像与输入颜色的相似程度越高。

为了验证本文去色算法的有效性,从Cadik数据集[19]中选取10幅具有代表性的图片,这些图片包含了丰富的结构纹理细节和颜色信息。这里,将本文算法与 Smith 算法[8]、Lu 算法[4]以及 Jin 算法[10]的实去色结果进行比较,来验证本文算法的优越性。实验结果如图2所示,其中图2(a)是输入的原彩色图像,图 2(b)是 Smith算法[8]的灰度化效果,图 2(c)是 Lu 算法[4]的实验结果,图 2(d)是 Jin算法[10]的实验结果,图2(e)是本文所提算法的去色效果。表1是图2中彩色图像灰度化后的ACCPR值,其中加粗的ACCPR值代表同一彩色图片在不同灰度化算法中取得的最大值。

从表1可以看出,Smith算法仅有一幅图片具有最高的 ACCPR值,也有 3幅图片具有最低的ACCPR值;Lu算法虽然有3幅图片具有最高的ACCPR值,但仍有6幅图片具有最低的ACCPR值;Jin算法的局部映射的方法虽无最高的ACCPR值,但平均ACCPR值优于Smith算法和Lu算法;本文算法的实验结果中有7幅图像具有最高的ACCPR值,同时没有最低的ACCPR值,这表明本文算法不但能够有效地对彩色图像灰度化处理,同时还能更好地保持原彩色图像的局部对比度和纹理特征。本文算法的平均ACCPR值为0.708 3,优于Smith算法、Lu算法与Jin算法,这亦能说明本文算法的实验结果在保持对比度和纹理特征等方面效果更佳。

表1 图2彩色图像灰度化后的ACCPR值的比较

从图2中可以看出,Smith算法基于全局映射的方法,去色效果不同程度地丢失了原彩色图像的对比度信息,导致色差不够明显,例如图片IV,V,VI,X;Lu算法虽然能对彩色图像去色处理,但其结果往往色差不够明显,纹理特征不能很好地体现,导致视觉效果欠佳,例如图片 I,III,IV,V,VIII。 Jin 算法基于局部映射的方法能较好地保持原彩色图像的对比度信息,具有良好的去色结果,然而由于部分利用了局部协方差矩阵K(x)的信息和局部亮度信息,实验结果不同程度地丢失了局部纹理特征信息,如图片 II,IV,VIII和 IX;与之相反,利用本文算法,在充分利用原彩色图像的协方差信息和局部亮度信息后,所得到的去色结果既保持了对比度信息和亮度信息,同时也保留了原彩色图像的局部特征信息,具有更优的视觉效果。

图2 不同灰度化算法的结果

尽管局部映射的方法能够有效地保留原彩色图像的局部特征信息和亮度信息,但无法保证全局颜色一致性,例如原彩色图像中具有相同颜色的两个像素位置灰度化后可能映射为两个不同的灰度值。因此本文采用一致性误差(CSErr)指标[10]来定量评估不同算法在颜色一致性方面的保持程度。首先假设一幅原彩色图像有n种不同的颜色,记种颜色在原彩色图像中的所有位置坐标,同时记Numk为灰度化后的图像中不同灰度值的个数。具体地,一致性误差(CSErr)定义为

对于该评价指标,值越小,意味着连续性越高。如表2所示,列出了Smith算法,Jin算法和本文算法实验结果的CSErr值,以及本文算法中针对不同图像的参数λ的选取。不难发现,本文算法的CSErr值在整体上低于Smith的方法,高于Jin算法。这是因为Jin算法虽采用局部映射的方法,但在求解时模型中的局部协方差阵K(x)的主对角线元素和局部均值向量m(x)均为全局信息,使得去色后黑白图片的全局颜色一致性更强,因此具有最低的CSErr值。本文算法的平均CSErr值0.180 9,低于Smith算法的平均CSErr值0.213 5。尽管本文所研究的局部映射方法不具有全局一致性,但其误差仍是可以接受的。

表2 图2灰度化结果的CSErr值的比较以及本文参数的选取

4 结束语

本文结合原始对偶算法,设计了一个新的算法求解Jin模型[10],同时给出了算法的收敛性条件。通过与 Smith 算法[8]、Lu 算法[4]以及 Jin 算法[10]的灰度化结果的比较,可以看出:本文算法不仅能够实现对彩色图像灰度化处理,而且能够有效解决Jin算法[10]在处理纹理结构丰富的彩色图片时易丢失局部结构细节的问题。

猜你喜欢

彩色图像亮度灰度
用于遥感影像亮度均衡的亮度补偿方法
采用改进导重法的拓扑结构灰度单元过滤技术
远不止DCI色域,轻量级机身中更蕴含强悍的亮度表现 光峰(Appptronics)C800
天津港智慧工作平台灰度发布系统和流程设计
Bp-MRI灰度直方图在鉴别移行带前列腺癌与良性前列腺增生中的应用价值
基于二维直方图的彩色图像全局阈值分割方法研究
Arduino小车巡线程序的灰度阈值优化方案
基于FPGA的实时彩色图像边缘检测
亮度调色多面手
基于DCT—DWT—SVD的彩色图像安全存储方案