一种基于深度学习的光学畸变修正方法与流程

文档序号:15463405发布日期:2018-09-18 18:43阅读:3419来源:国知局

本发明涉及计算摄像学领域,尤其涉及一种图像非盲去模糊方法。



背景技术:

光学畸变是影响成像系统成像质量的最大挑战。畸变主要包含球差、慧差、色差和散光等,光学系统一般通过组合多片不同折射率的镜片以消除畸变,然而,即使是最精密的光学系统也不可能完全消除这些畸变。系统设计人员需要在成像质量与系统复杂度之间权衡。从光学设计的角度消除畸变的难度高,而且价格高昂,重量大,难以在移动端或者其他环境下工作。

近年来,随着计算能力的提高,众多计算的方法被引入到图像处理之中。这些方法主要分为非盲去模糊与盲去模糊两种。非盲去模糊方法通过测量成像系统的点扩散函数PSF,再基于图像本身的边缘、通道间相关性等先验知识,重建出清晰图像。该方法仅适用于空间均匀模糊图像,而在实际系统为空间非均匀模糊,需要将图像分割为小块,精确测量每一块区域的PSF后再对每块图像分别求解,最后将求解后的各块图像拼接为最终的完整清晰图像。由于精确测量每一块区域的点扩散函数较为困难,盲去模糊方法应运而生。盲去模糊方法通过模糊图像预估可能的PSF,在此基础上进行重建工作,虽然该方法避免了标定PSF的过程,但在一定程度上牺牲了鲁棒性与精度。这两类方法都无法在整张非均匀图像上求解,无法使用全局快速傅里叶加速运算,求解速度较慢。



技术实现要素:

针对现有技术中存在的问题,本发明的目的在于提出一种基于深度学习的光学畸变修正方法。该方法利用深度神经网络算法重建图像,效果显著,速度快。

为了达到上述目的,本发明系统的技术方案如下:

一种基于深度学习的光学畸变修正方法,包括如下步骤:

步骤1,测量镜头的点扩散函数PSF:于暗室中使用待修正镜头拍摄点光源,固定好相机与点光源位置后旋转相机,使得拍摄所得的点扩散函数PSF亮点出现在画面中的不同位置,记录下图像I;从图像I中截取出包含点扩散函数PSF的正方形区域并做标准化处理后作为模糊核P待用;

步骤2,制作数据集:利用数据生成器生成训练数据:先将多张高清图像G与步骤1中获得的模糊核P送入数据生成器输入口,所述数据生成器将随机挑选一幅高清图像G与一个模糊核P进行随机旋转与随机缩放操作,之后所述数据生成器对图像G与模糊核P进行剪切,生成合适大小的高清图像块与模糊核块;最后所述数据生成器对模糊核P与图像G实施卷积操作生成模糊图像,加入高斯白噪声后,将模糊图像送入训练队列;

步骤3,搭建神经网络框架:通过上下采样卷积实现三种不同尺度网络,从上往下网络特征层数量分别取128、96、64;在各尺度之间堆叠残差模块,残差模块中去掉批标准化层,由两层卷积层堆叠而成,并在卷积层之前加上丢弃层;

步骤4,训练网络:开启所述数据生成器,使用Adam优化方法,采用默认参数,对多张高清图像G进行多次迭代后收敛;之后保存模型即可配合镜头拍摄高清图像。

本发明设计了数据生成器和神经网络结构,使得一幅1080P的模糊图像仅需一秒即可处理完毕,而传统方法至少需要十倍以上的时间。另一方面,本发明利用点扩散函数PSF的变化规律,进行数据增强方法,降低了对点扩散函数PSF标定的要求,同时也降低了对训练数据集的依赖。

附图说明

图1是本发明实施例的深度神经网络的结构示意图;

图2是本发明实施例的神经网络残差模块结构示意图;

图3是本发明实施例的数据生成器的结构示意图。

具体实施方式

下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

本实施例的一种基于深度学习的光学畸变修正方法,首先标定镜头PSF,在数据增强技术下仅需测量不同位置处共约4~7个点,点数与具体镜头类型有关;使用已标定的PSF生成数据集;使用生成训练集训练特殊设计的神经网络结构;训练完成后即可使用训练好的模型重建待求清晰图像。具体计算方法步骤如下:

步骤1,测量镜头PSF。于暗室中使用星孔板制作点光源,星孔板孔径为λ1,传感器像元尺寸为λ2,镜头焦距为f,则星孔板距离相机距离应设为D:

固定好相机与星空板位置后旋转相机,使得拍摄所得的PSF亮点出现在画面中的不同位置,按对角线方向,从图像中心往角落移动PSF亮点,记录下4~7幅图像I。使用5x5均值滤波器F与I做卷积,在所得数据中选取数值最大点作为PSF中心点,并以此中心截出大小合适的正方形区域并做标准化处理后作为模糊核P待用。

步骤2,制作数据集。选取COCO数据集中约5000张高清图像G;选取所得模糊核P,并对其做标准化处理,使的模糊核P中每一个通道数值之和为1。利用镜头构造特点,本实施了设计了一种独特的训练数据生成器以解决训练集不足的问题,数据生成器将会在训练过程中被执行。数据生成器的结构如图3所示,先将多张高清图像G与步骤一中获得的模糊核P送入生成器输入口,数据生成器将随机挑选一幅高清图像G与一个模糊核P进行随机旋转与随机缩放操作,具体体现为随机旋转20种角度(从0°开始,依次递增18°),随机缩放5种尺寸(缩放因子为0.8、0.9、1.0、1.1、1.2)。之后将对G与P进行剪切,生成224*224的高清图像块(其中不包含旋转产生的黑色区域)与合适大小的模糊核块。之后对P与G实施卷积操作生成模糊图像,随机加入噪声水平0~5的高斯白噪声后,送入训练队列。

由于镜头设计的轴对称性,距离镜头中心相同距离处的PSF有着相似的形状大小。在同样的距离处仅拍摄一幅PSF图像,之后对其随机旋转20次以增强训练数据。由于在小尺度范围内,PSF尺寸大小近似随着与图像中心距离的增减而线性变化,对所标定的PSF进行随机缩放,缩放尺度设置在0.8~1.2之间以适当增强数据集。该方法可以降低对标定精度的依赖,就算标定过程略有偏差也不会影响最终结果。同样对训练集中的原始高清图片进行随机的缩放旋转,缩放比例为0.8~1.2,随机旋转次数为20。对高清数据的旋转增强可以产生倒立、倾斜视角的图像,缩放可以模拟在各种距离下拍摄所得效果。由于随机旋转缩放的加入,原训练集会扩大20*5*20*5=10,000倍,如此庞大的数据无论是存储还是读取都会存在困难,为此本实施例专门设计的数据生成器,在训练的过程中生成所需数据,降低了存储开销。

步骤3,搭建神经网络框架。

(1)网络深度。经实验发现,常见光学镜头PSF直径约在31~81像素之间,单层残差结构网络感受野小于PSF尺寸时无法恢复出高质量图像,而大于该尺寸时,效果无明显提升。因此本发明控制Unet中尺度残差网络感受野与图像PSF相同,小尺度与大尺度残差网络层数与此相同,分别用于细节处理与更大视野范围内的探索。

(2)网络宽度。在实验中观察到,更多的网络特征通道数可以明显提升网络在空间非均匀模糊图像上的恢复效果,该结论异于深度学习中常见的“越深越好”经验规则,原因在于在此类底层图像处理任务中无需高深的语义信息,但是需要更多的普通级别特征层组合以适应实际图像中各个方向大小与形状的PSF。

基于以上两点,本实施例设计了一种多尺度残差U型神经网络框架,框架大致结构见图1。输入图片尺寸为224*224,网络中使用步长为2的卷积层实现下采样,使用步长为2的反卷积层实现上采样,以此产生多种尺度的特征图,特征图尺寸分别为:224*224、112*112、56*56。在各尺度之间堆叠残差模块,残差模块结构见图2,由两层卷积层堆叠而成,并去掉了普通残差模块中的批标准化层,在复制操作之前加上丢弃层并设置丢弃层保留率为0.9。同一个尺度下的残差模块结构、参数均相同,不同尺度下残差模块的特征图数量有所差异,由大到小残差模块卷积层特征图数量分别为:128、96、64。各尺度下残差模块数量根据模糊核P的大小决定,保证Unet中尺度网络感受野略大于模糊核P的尺寸。网络感受野计算公式如下:

r=1+n·(k-1)

其中r为感受野大小,n为残差结构层数,k为卷积核尺寸。为了保证网络能适用于大多数镜头,将n设置为10,k设置为3。此外在网络头尾之间加上全局链接以降低训练难度。

网络损失函数分成MSE损失与感知损失PerceptualLoss:

S为图像尺寸,f(X)为网络生成图像,X、Y分别为输入模糊图像与原始高清图像(label)。V为的VGG19网络,用于提取高层特征。网络总损失表示为:

Ltotal(X,Y)=LMSE(X,Y)+λ·Lpercept(X,Y)

λ为感知损失权重,为了生成真实清晰的图像,将其设置为0.01。此结构可明显提高网络稳定性。

步骤4,训练网络。开启数据生成器,生成训练数据输送至训练队列。使用Adam优化方法,采用默认参数,初始学习率设置为0.0001,随着训练过程的进行学习率逐渐降低十倍。每次使用4张图片迭代,在100,000次迭代后收敛。之后保存模型即可配合镜头拍摄高清图像。

步骤5,测试。使用相同的镜头在固定焦距下拍摄图像,将图像直接导入网络计算,保存输出结果后即可获得高清图像。

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