基于主成分分析的彩色图转灰度图方法的研究
2018-06-28,
,
(三明学院信息工程学院,福建 三明 365004)
0 引 言
目前,大部分的彩色图像采用RGB或RGBA的颜色模式,其中R、G、B、A分别表示图像的红色、绿色、蓝色和不透明度分量。应用传统的数字图像处理技术来处理图像的时候,如果对原始彩色图进行处理,需要对R、G、B三个分量逐一处理,计算量较大[1]。于是,通常将彩色图转换为灰度图来处理,以减少计算量,并且,灰度图充分反映了图像的形态学特征。基于此,研究者在做深度学习之前经常需要将彩色图转变为灰度图,通用的计算公式是Gray=R·0.299 +G·0.587 +B·0.114。该转换公式,适用于所有彩色图像,与图像的像素分布无关,进而没有反映出图像的个体特征[2]。
彩色图像的每个像素有R、G、B三个分量,可以由三维空间中的一个点来描述。这样,每一幅彩色图像的所有像素在三维空间中就形成一个像素分布。传统的转换方法就是将三维空间降维至一维空间,将所有像素点投影到一个固定的向量n上[3]:
n=(0.299,0.587,0.114)
(1)
以投影点在该向量中的相对位置作为最终的灰度值。如果像素本来就近似地分布于该向量的方向上,那么该公式是比较合理的;但是,如果所有像素点近似于分布在同一个平面上,并且该平面近似于垂直于向量n,那么所有投影点都会堆积在一小段区域内。于是该公式得到的结果就没有很高的对比度了。文中设计的方法是找到一个合适的向量,使得所有像素点在该向量上的投影尽可能地分散开,提高灰度图的对比度,称该向量为主轴。显然,不同图像有着不同的主轴。
1 图像主成分分析
主成分分析起源于统计学,是为了将高维数据映射到低维空间。有时候,图像的像素点之间具有一定的相关性,例如,对于一幅彩色图像,由黑暗过渡到明亮的区域时,R、G、B三个分量的强度同时递增。基于这种统计相关性,就可以对像素进行降维,灰度图的所有像素分布在一维空间,于是需要将三维空间中的像素点投影到一维空间中来。那么,目的就是要寻找这个一维空间的方向,即寻找图像的主轴[4,5]。
为了充分反映出每幅图像自身的特性,也为了利用灰度图进行形态学检测,及深度学习相关领域,希望该灰度图中的所有像素尽可能地分离开来,即有尽可能高的对比度。但是,如果单纯地为了提高对比度而直接将图像进行灰度均衡化,又会丢失每幅图像特有的灰度分布信息。基于此,以8位图像为例来说明PCA灰度化方法,每个像素点的每个颜色分量只占八个比特位,取值为0-255[6]。设投影矩阵为W,它是一个三行一列的矩阵,每一列是一个单位向量。只有一列,是因为只需要投影到一维的灰度空间。每个像素点可以用一个包含三个元素的列向量x表示,N个像素点组成一个三行N列的矩阵X。为了便于计算,将所有像素点进行中心化,即将每一个像素点的三个分量,减去所有像素点三个分量的平均值。假设中心化以后的像素矩阵依然用X表示,那么,有:
(2)
那么,投影到一维空间中的像素点可以表示为:
图1 三组彩色图片转灰度对比组图
Z=WTX
(3)
其中Z是一个一行N列矩阵。矩阵的每个元素表示一个灰度值,共N个点。如前所述,希望这N个点尽可能地分离,即样本方差尽可能大。投影后的样本的协方差矩阵为ZZT,该优化问题的目标函数可以写作
fX(W)=tr(WTXXTW)
(4)
需要求目标函数(4)的极大值,其中约束条件为
WTW=I
(5)
其中I为单位向量。在这里就是数值1。
利用拉格朗日乘子法,其拉格朗日函数为:
L(W)=WTXXTW-λ(WTW-I)
(6)
令
(7)
即得到
XXTW=λW
(8)
可见,只需要对像素点的协方差矩阵XXT进行相似对角化,求得三个特征值,取最大的特征值即为(8)中的λ,最大特征值所对应的特征向量即为主轴。
2 具体算法
从前一节可以很容易写出基于主成分分析对彩色图像进行灰度化的算法流程:
输入:一幅RGB三色图,其中宽为m高为n。
输出:PCA灰度图。
1)变形:将输入图像以行为主序排列成一个3×mn矩阵X,每一列为一个像素。
2)中心化:分别计算矩阵X的每一行的平均值,然后用X的每个元素减去对应行所在的平均值,结果依然用X表示。此时其每行的元素和为零。
3)计算协方差矩阵:计算像素点的协方差矩阵XXT。
4)对角化:对XXT进行相似对角化,取最大的特征值λ,以及其对应的特征向量,特征向量组成一个三行一列矩阵W。
5)剔除:若W的所有元素同号,则将其归一化为元素之和为1的三行一列的矩阵W,执行6;若W的元素有正有负,则该图片不适合与主轴灰度化,退出。
6)灰度化:计算每个像素点对应的灰度值Z=WTX。
7)变形:将Z转换为宽为m高为n的矩阵,即得到PCA灰度图。
3 对比与分析
由前述推导可知,XXT是一个对称的半正定矩阵,一定可以相似对角化,其所有的特征值都是0或者正值,所有的特征向量相互正交[7-9]。但是,线性代数理论并不能保证主轴一定指向三维直角坐标系的第一挂线,因此在具体的算法中,强调了对于求出来的主轴要分情况讨论。无论如何,在所有特征值大于零所对应的特征向量的低维空间来看,各个像素的三色分量的相关度为零。
下面给出几张图片的对比见图1,该对比图中,所有的主轴均能归一化到元素和为1,且各元素均为正数。第一行是彩色图像原图,第二行是传统方法将彩色图转换成灰度图,第三行是传统灰度图的直方图,第四行是主轴灰度图,第五行是主轴灰度图的直方图。
最上面一层为三张原始彩色图片,第二层为使用传统方法转变的灰度图,第三层为传统灰度图的直方图,第四层为使用PCA得到的主轴灰度图,第五层为主轴灰度图的直方图。可以看到,主轴灰度图的直方图更加均衡化。进一步,可以计算每幅图的主轴与如式(1)所示的传统的投影轴之间的夹角。对于上面三张图,其夹角分别为58.9,27.6,35.2。可见,对于同一张图片,主轴与传统投影轴的夹角越大,它们之间的灰度直方图的差距也越大,通常,主轴灰度图的直方图的的像素分布比传统的直方图更均衡化。
必须强调的是,主轴灰度化并不适用于所有情况。上面列举的三张图片,它们的主轴向量的各个分量都是同号的。若以三维空间坐标系的第一卦限的远方为正,那么它们的主轴元素都是正数。这时候便可以对R、G、B的各个分量求加权平均。但是,有时候,会求得主轴的三个分量元素有正有负,这时候若依然把像素向主轴投影,会产生有违生理学与物理学意义的情况,因为系数为负的像素分量,它的像素分量值越大,物理上表示它的能量越大,但是投影到主轴以后,对最后的灰度强度的贡献却越小。这显然是不能接受的。
4 结 语
文中给出了将彩色图像转换为灰度图的一种方法,即把每个彩色图像像素看作RGB三维彩色空间中的一个点,求得所有像素点分布的一个主轴,若该主轴能归一化为元素和为1,且各元素均为正,则可以将各个像素点投影到该主轴;若主轴的各个元素有正有负,彩色图转灰度图的效果就不能达到最佳效果。
事实上,单纯从统计学角度说,主成分分析的目标就是对高维数据进行降维,寻找最能反映数据本身的特征,找出各个数据点之间的本质差异,同时消除数据各个维度之间的相关关系。如果抛开物理学和生理学对彩色图像的视觉要求,而仅仅从图像的边缘特征、形态学角度去分析图像,那么不管主轴的方向如何,都可以朝这个主轴上投影。这样投影得到的像素点的坐标有正有负,且相对于传统图片灰度化而言,像素已经尽可能地分开了。这时候用数字图像处理的方法对图像进行形态学分析和边缘检测,将会大大提升准确率。
参考文献:
[1] 谭亚芳, 刘娟, 王才华,等. 一种稀疏可控的主成分分析方法[J]. 计算机科学, 2017, 44(1):243-246.
[2] 蔡晓洋, 张思荻, 曾俊,等. 基于主成分分析和聚类分析的栀子种质资源评价[J]. 中国实验方剂学杂志, 2017(14):30-37.
[3] 杜阳, 赵辉. 基于主成分分析的MWC采样数据压缩方法[J]. 计算机应用研究, 2017, 34(3):940-944.
[4] 段峰峰, 王永滨, 杨丽芳,等. 基于主成分分析方向深度梯度直方图的立体视觉深度图特征提取[J]. 计算机应用, 2016, 36(1):222-226.
[5] 陈锻生, 陈齐松, 刘政凯. 基于类灰度图的类Haar特征构建及其应用[J]. 郑州大学学报(理学版), 2007, 39(1):33-39.
[6] 陈文静, 苏显渝. 利用灰度图减小Fourier变换轮廓术的频谱混叠[J]. 激光杂志, 2002, 23(6):37-38.
[7] 周晔, 张军平. 基于多尺度深度学习的商品图像检索[J]. 计算机研究与发展, 2017, 54(8):1824-1832.
[8] 孙旭, 李晓光, 李嘉锋,等. 基于深度学习的图像超分辨率复原研究进展[J]. 自动化学报, 2017, 43(5):697-709.
[9] 刘丽丽. 车牌识别中的图像分割技术研究[J]. 科技通报, 2017, 33(4):125-129.