基于数据降维和CNNs的彩色图像逆半调处理方法与流程

文档序号:16266017发布日期:2018-12-14 21:55阅读:437来源:国知局
基于数据降维和CNNs的彩色图像逆半调处理方法与流程

本发明属于人工智能和图像处理技术领域,涉及一种彩色图像逆半调处理方法,具体涉及一种基于数据降维和cnns的彩色图像逆半调处理方法。可用于文件打印和文档扫描领域。

背景技术

图像“半调”又称为半色调、半影调,是指用二值灰度近似模拟多级灰度的过程。逆半调技术是指由半调图像重建为连续色调图像的一种图像恢复技术。在传真、印刷图书、数字化文本等情况下,只能获取到半调图像,如需对半调图像进行分类识别、图像压缩、图像缩放、图像增强等操作,只能使用连续色调图像,为了处理这类图像,逆半调技术研究随之逐步展开。传统逆半调技术包括低通滤波法、快速逆半调算法、基于小波变换的逆半色调算法、基于b样条小波变换的逆半调算法、基于mrf-map估计的逆半调算法、查找表(lut)逆半色调算法等方法。

半调过程是用量化操作将多级灰度转变为二级灰度的过程,属于多对一映射,因此逆半调过程不存在唯一解,是一种不适定问题。此外,半调处理引入的噪声主要分布在结果图像的中、高频分量当中,和图像的细节、边缘混淆在一起,增加了逆半调问题的解决难度。若要提高逆半调处理图像的质量,就必须掌握足够的半调先验知识,并充分利用半调的先验知识,有针对性地消除半调处理过程中引入的噪声,同时尽可能减少图像细节信息的丢失。逆半调图像的清晰度评价指标一般采用峰值信噪比(peaksignaltonoiseratio,psnr),峰值信噪比值越高,图像清晰度越好,

卷积神经网络(convolutionalneuralnetworks,cnns)是在多层神经网络的基础上发展起来的针对图像处理而特别设计的一种深度学习方法。它是一种人工神经网络,一个卷积神经网络的结构包括输入层、若干隐含层和输出层,每一层都有多个神经元,上一层的神经元通过激活函数映射到下一层神经元。研究人员可以通过卷积神经网络完成图像处理任务。

基于卷积神经网络在图像领域表现的优越性能,为解决传统逆半调算法处理彩色半调图像后得到的彩色逆半调图像清晰度不高的问题,xianxuhou和guopingqiu率先把卷积神经网络方法引入到图像逆半调处理过程中,在其发表的论文“imagecompandingandinversehalftoningusingdeepconvolutionalneuralnetworks”(xianxuhouandguopingqiu."imagecompandingandinversehalftoningusingdeepconvolutionalneuralnetworks."arxivpreprintarxiv:1707.00116(2017).)中提出一种基于卷积神经网络的彩色图像逆半调方法。该方法使用卷积神经网络对输入的彩色半调图像进行处理,卷积神经网络经过若干次训练,得到训练好的神经网络,输入为彩色半调图像,输出为彩色逆半调图像。但是,该方法仍然存在不足是,在对卷积神经网络进行训练时,输入的训练样本集和训练标签集存在冗余,数据分析难度大,不能有效的提取出数据特征,导致最终输出的彩色逆半调图像清晰度较低,且由于卷积神经网络的结构复杂,网络所需参数会增多,导致网络容易过拟合,进一步影响网络输出图像清晰度。



技术实现要素:

本发明的目的在于克服上述现有技术存在的缺陷,提出一种基于数据降维和cnns的彩色图像逆半调处理方法,用于解决现有技术中存在的彩色图像逆半调结果清晰度较低的技术问题。

为实现上述目的,本发明采取的技术方案包括如下步骤:

(1)获取训练标签集vl、训练样本集v、测试标签集tl和测试样本集t:

从数据库中选取mnum幅彩色图像,mnum≥500,并将其中半数以上的彩色图像以矩阵的形式存储,作为训练标签集vl,将对fcol进行半调处理获得的彩色半调图像以矩阵的形式存储,作为训练样本集v,将mnum幅彩色图像中半数以下的彩色图像作为测试标签集tl,将对半数以下的彩色图像进行半调处理获得的彩色半调图像作为测试样本集t;

(2)对训练样本集v和训练标签集vl进行高维数据降维:

采用主成份分析方法对训练样本集v和训练标签集vl分别进行初次降维,再采用线性判别分析方法分别对两个初次降维结果进行降维,得到降维后的训练样本集v'和降维后的训练标签集vl';

(3)构建卷积神经网络cnns:

构建包含输入层、m个隐含层和输出层依次层叠的卷积神经网络cnns,4≤m≤8,m个隐含层包括依次层叠的卷积层ci、bt'个网络层b'和卷积层co,其中,网络层b'由依次层叠的卷积层ch、批量标准化bnh和线性整流函数rh构成,1≤bt'≤m-2;

(4)对卷积神经网络cnns进行初始化:

设置卷积神经网络cnns的权重矩阵为wl,偏置为bl,训练迭代次数为m',峰值信噪比目标值为acc,并将wl和bl初始化为0~1之间的随机数,其中m'=1,2,3...mmax,mmax为最大迭代次数;

(5)对卷积神经网络cnns进行训练:

(5a)将降维后的训练样本集v'和训练标签集vl'输入到卷积神经网络cnns中,实现对cnns的权重矩阵wl和偏置bl的更新,得到cnns的前向输出ytrain-pre,ytrain-pre中的像素点s的值为ys,并通过ys和vl'计算损失函数mse;

(5b)采用反向传播算法,通过ytrain-pre和mse对cnns进行微调,实现对cnns的权重矩阵wl和偏置bl的更新,得到cnns的反向输出ytrain-bac;

(5c)采用dense-sparse-densetraining算法,通过ytrain-pre和ytrain-bac对cnns进行微调,实现对cnns的权重矩阵wl和偏置bl的更新,得到微调后的cnns;

(5d)令m'=m'+1,并重复步骤(5b)至(5d),直到m'=mmax停止迭代,得到训练好的卷积神经网络cnns;

(6)对训练好的卷积神经网络cnns进行测试:

将从测试样本集t中选取的m个彩色半调图像组合成集合p,m≥50,并将p中的彩色半调图像逐个输入到训练好的卷积神经网络cnns中,得到m个彩色逆半调图像g,g中的像素点s的r,g,b三通道的平均值是fs';

(7)对训练好的卷积神经网络cnns进行优化;

将从测试标签集tl中选取的m个与集合p中彩色半调图像对应的彩色图像,组合成集合p',p'中彩色图像g'中的像素点s的r,g,b三通道的平均值是fs”,通过m、fs'和fs”计算训练好的卷积神经网络cnns的峰值信噪比平均值accpre,并判断accpre>acc是否成立,若是,执行步骤(8),否则,增大mmax的值,并执行步骤(5);

(8)对待处理的彩色半调图像进行逆半调处理:

将待处理的彩色半调图像输入到训练好的卷积神经网络cnns中,得到彩色半调图像的彩色逆半调图像。

本发明与现有技术相比,具有以下优点:

1.本发明在卷积神经网络进行训练时,对输入的训练样本集和训练标签集采用高维数据降维操作,克服了由于输入数据存在冗余所带来的数据分析难度大的问题,使得本发明具有有效的提取出数据特征的优点。

2.本发明在构建卷积神经网络cnns的过程中,采用的卷积神经网络cnns可以完成彩色图像逆半调的功能,与现有技术相比,简化了网络结构,网络所需参数会减少,提高了清晰度。

附图说明

图1是本发明的实现流程图;

图2是本发明实验所用的待处理的彩色半调图像;

图3是采用本发明的方法对图2中的彩色半调图像进行逆半调处理的结果。

具体实施方式

下面结合附图和具体实施例,对本发明作进一步的详细描述。

参照图1,一种基于卷积神经网络cnns的彩色图像逆半调处理方法,包括如下步骤:

步骤1)获取训练标签集vl、训练样本集v、测试标签集tl和测试样本集t:

从数据库中选取800幅彩色图像,并将600幅彩色图像以矩阵的形式存储,作为训练标签集vl,将对600幅彩色图像进行半调处理获得的彩色半调图像以矩阵的形式存储,作为训练样本集v,将200幅彩色图像作为测试标签集tl,将对200幅彩色图像进行半调处理获得的彩色半调图像作为测试样本集t;

步骤2)对训练样本集v和训练标签集vl进行高维数据降维:

采用主成份分析方法对训练样本集v和训练标签集vl分别进行初次降维,再采用线性判别分析方法分别对两个初次降维结果进行降维,得到降维后的训练样本集v'和降维后的训练标签集vl';

步骤3)构建卷积神经网络cnns:

步骤3a)将训练集经过输入层输入到卷积神经网络中;

步骤3b),在卷积神经网络的卷积层c1中,用1个卷积核,分别对训练集进行块大小为3*3像素和步长为5像素的卷积操作,得到含有特征图的卷积神经网络的第2层;

步骤3c),在卷积神经网络的卷积层c2中,用卷积核进行块大小为9*9像素的卷积操作,输出维度为64*64像素,再将卷积层输出的特征图输入到批量标准化bn2中,进行标准化操作,稳定深度网络,再将批量标准化输出的特征图输入到线性整流函数r2中,分别对特征图进行非线性操作操作,得到含有特征图的卷积神经网络的第3层;

步骤3d),在卷积神经网络的卷积层c3中,用卷积核进行块大小为1*1像素的卷积操作,再将卷积层输出的特征图输入到批量标准化bn3中,稳定卷积神经网络,再将批量标准化输出的特征图输入到线性整流函数r3中,分别对特征图进行非线性操作操作,得到含有特征图的卷积神经网络的第4层;

步骤3e),将训练集输入到卷积神经网络的卷积层c4中,用1个卷积核,分别对训练集进行块大小为3*3像素和步长为5像素的卷积操作,得到含有特征图的卷积神经网络的第5层;

步骤3f),经过卷积神经网络的输出层输出结果图像,这是卷积神经网络的第6层;

将上述6层网络依次从上到下连接,得到含有一个输入层、4个隐含层和一个输出层的卷积神经网络。由于卷积神经网络的结构简单,网络所需参数会减少,网络容易训练,不易过拟合,会提高网络输出图像清晰度。

步骤4)对卷积神经网络cnns进行初始化:

设置卷积神经网络cnns的权重矩阵为wl,偏置为bl,训练迭代次数为2000,峰值信噪比目标值为29,并将wl和bl初始化为0~1之间的随机数,其中m'=1,2,3...2000,最大迭代次数为2000;

步骤5)对卷积神经网络cnns进行训练:

步骤5a)将降维后的训练样本集v'和训练标签集vl'输入到卷积神经网络cnns中,实现对cnns的权重矩阵wl和偏置bl的更新,得到cnns的前向输出ytrain-pre,ytrain-pre中的像素点s的值为ys,并通过ys和vl'计算损失函数mse;

损失函数mse计算公式为:

其中,∑表示求和操作,g(xs)表示训练标签集vl'在像素点s的值,ys表示ytrain-pre中的像素点s的值。

步骤5b)采用反向传播算法,通过ytrain-pre和mse对cnns进行微调,实现对cnns的权重矩阵wl和偏置bl的更新,得到cnns的反向输出ytrain-bac;

步骤5c)采用dense-sparse-densetraining算法,通过ytrain-pre和ytrain-bac对cnns进行微调,实现对cnns的权重矩阵wl和偏置bl的更新,得到微调后的cnns;

步骤5d)令m'=m'+1,并重复步骤(5b)至(5d),直到m'=mmax停止迭代,得到训练好的卷积神经网络cnns;

步骤6)对训练好的卷积神经网络cnns进行测试:

将从测试样本集t中选取的200个彩色半调图像组合成集合p,并将p中的彩色半调图像逐个输入到训练好的卷积神经网络cnns中,得到200个彩色逆半调图像g,g中的像素点s的r,g,b三通道的平均值是fs';

步骤7)对训练好的卷积神经网络cnns进行优化:

将从测试标签集tl中选取的200个与集合p中彩色半调图像对应的彩色图像,组合成集合p',p'中彩色图像g'中的像素点s的r,g,b三通道的平均值是fs”,通过m、fs'和fs”计算训练好的卷积神经网络cnns的峰值信噪比平均值accpre,并判断accpre>acc是否成立,若是,执行步骤(8),否则,增大mmax的值,并执行步骤(5);

计算训练好的卷积神经网络cnns的峰值信噪比平均值accpre,计算公式为:

其中,m表示彩色逆半调图像g的个数,∑表示求和操作,*表示乘法,log表示以10为底的对数操作,fs”表示g'中的像素点s的r,g,b三通道的平均值,fs'表示g中的像素点s的r,g,b三通道的平均值。

步骤8)对待处理的彩色半调图像进行逆半调处理:

参照图2,(a)是待处理的彩色半调图像colorkorla,(b)是待处理的彩色半调图像colorcactus,将(a)和(b)逐次输入到训练好的卷积神经网络cnns中,得到两张彩色逆半调图像。

参照图3,(a)是网络输出的图2(a)对应的彩色逆半调图像,(b)是网络输出的图2(b)对应的彩色逆半调图像。(a)和(b)图像的清晰度明显提升。用峰值信噪比作为清晰度判断标准,(a)的psnr值为30.239db,(b)的psnr值为29.713db,提高了彩色逆半调图像的清晰度。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1