基于卷积神经网络的计算鬼成像方法研究 下载: 679次
0 引言
计算鬼成像(Computational Ghost Imaging,CGI),作为一种单像素成像方法,近年来广泛受到人们的关注.早在2008年,SHAPIRO J H等学者在理论上提出了计算鬼成像,取代了分束器分出的参考光路,根据空间光调制器(Spatial Light Modulator,SLM)特性,将其应用到关联成像[1].次年,BROMBERG Y完成了单路计算式鬼成像实验[2].计算式关联成像主要使用SLM或数字投影仪(Digital Light Processing,DLP)或数字微镜器件(Digital Micromirror Device,DMD)对光源进行调制,投射不同的随机散斑图到被测表面,利用桶探测器记录相应的光场信息,并通过关联计算恢复出待测表面的空间信息.相比传统鬼成像,单臂式计算鬼成像具有灵活的光路设计和较高的峰值信噪比(Peak Signal to Noise Ratio,PSNR),正被用于低光照和恶劣环境下的水下成像[3]、X射线成像[4]和透过散射介质成像[5]等领域,并涌现出相关应用,如单像素相机[6]、三维重建[7-9]等,具有更加广阔的应用前景.
然而,需要大量的测量数据是阻碍其实际应用的主要问题之一.自压缩感知(Compressed Sensing,CS)理论[10, 11]提出后,通过利用大多数自然物体的稀疏性以减少重构所需的采样次数,突破了奈奎斯特采样定理的限制,实现压缩鬼成像[12-16].但是这些方法仍需要很大的计算量,随着高分辨率图像的增加,重构时间成指数上升,导致实际应用可能性低.
随着成像数据量的急剧增长和计算能力的不断提高,通过深度学习方法从数据中学习先验知识,并利用一个深度神经网络拟合输入输出数据对,从而建立输入到输出的映射关系,因此可有效恢复被测物成像效果[17-22].2017年,SINHA A等[18]首次证实深度神经网络(Deep Neural Networks,DNN)通过训练后可解决端对端逆向的计算成像问题,并实验建立和测试了一个无透镜成像系统,实现了物体的相位恢复.LYU M等[19]提出了基于深度学习的计算鬼成像,通过DNN对低采样率的输入数据进行训练,获取低采样率下的重构图像.但该方法在学习过程中将图像转换为向量的形式实现全连接,计算量庞大,针对复杂图像并不能较好地提取图像底层信息,且训练数据集难以获取.SHIMOBABA T等[20]使用Caltech-256数据集,挑选出不同分辨率的普通图像选择差分计算鬼成像(Differential Computational Ghost Imaging,DCGI)进行重构,再运用DNN预测低噪声图像,成像速度虽有所提升,但成像质量不佳.HE Y等[21]运用卷积神经网络(Convolutional Neural Networks,CNN),但该方法样本较为单一,模型泛化能力较差,针对多样性物体预测效果波动较大.WANG F[22]等提出通过仿真数据集训练神经网络,运用恢复实验数据的方法应用于透过散射介质成像.鬼成像的重建质量可能从根本上受到采样效率的制约[23, 24],即表示在单位采样周期内获取对象信息的程度.LYU M等[19]通过实验证明在欠采样条件下,运用压缩感知算法图像的信噪比并不理想,但通过神经网络的方式可以在相同采样情况下提高图像信噪比.综上所述,目前计算关联成像方法主要是高采样率下提升整幅图像的信噪比,但在极小采样率β(如0 ≤ β ≤ 0.3)条件下,成像效果仍不理想.
鉴于此,本文借助神经网络的特征自提取优势,提出一种基于卷积神经网络的计算鬼成像方法(Computational Ghost Imaging Based on CNN,CNN-CGI),通过设计和构建卷积神经网络模型,可有效解决低采样下重构图像的成像质量和成像速度问题,深入推进鬼成像技术在实际场景中的应用.首先,利用关联计算方法重建的训练集图像和相应的无损图像训练一个卷积神经网络;然后,将通过关联计算重建的测试集图像作为卷积神经网络的输入层,使其能够学习传感模型,并使其最终能够预测出相应的图像;最后,通过理论分析和实验,充分验证了本方法能够在不同数据集低采样的情况下,图像的重建质量和重建速度大大提升.
1 算法及架构设计
1.1 计算鬼成像原理
计算鬼成像[5]原理示意图如图 1,利用DLP调制光场[25],其核心元件为DMD.由Matlab中randn()函数可生成N个符合正态分布的随机二值矩阵,将其按照预先设定的周期顺序加载到DMD上.当二值随机散斑图某点取值为1时,对应的微镜处于“打开”状态;当二值随机散斑图某点取值为0时,对应的微镜处于“关闭”状态,这相当于对光源进行了N次空间强度分布调制,且每次调制后的光强分布可由对应的二值随机矩阵
式中,〈 〉表示对N次测量结果的系综平均,T(x, y)为物体的透射率函数.经过N次采样后,理想情况下可由式(1)、(2)的关联计算算法对物体信息进行重建
1.2 卷积神经网络算法设计
在本方案中,设计卷积神经网络算法以提升低采样下CGI重构图像的质量和速度.算法的整体流程如图 2,其过程表述为
Step1:模拟现实中的大量不确定性数据,随机选取具有多样性数据集
Step2:将数据集
Step3:将重构后的新数据集
Step4:将增强后的
Step5:利用训练完成的模型对数据集
1.3 卷积神经网络的架构设计
在去噪卷积神经网络[26]基础上进一步优化为图像恢复模型,可获得基于卷积神经网络的CGI框架中CNN model.网络模型的架构如图 3所示,主要由输入、特征提取、非线性映射、重建和输出5个部分组成.
1) 数据输入.通过上述Step1~3步骤,将网络中输入和输出调整为滑窗法设置的尺寸,在有限的数据集中能够扩展数据集,选取
2) 特征提取.特征提取部分主要是对特征图像进行卷积运算,并通过修正线性单元(Rectified Linear Unit,ReLU)提取不同局部特征.
3) 非线性映射.非线性映射由卷积层、批量归一化(Batch Normalization,BN)层和修正线性单元(Rectified Linear Unit,ReLU)激励层组成.通过改变减小网络中间数据分布和训练过程中反向传递误差,不断更新每一层神经元的权重和偏置,实现对神经网络参数训练的影响,从而加速训练过程,提高去噪和泛化能力.
4) 重建与输出.只用一个卷积层便能实现图像重建,输出的是重建后优质量的图像.
通过多次实验验证,本文所设计网络的架构参数如下:特征提取层采用卷积核尺寸为3×3,卷积核数量为32,步长为1;非线性映射层采用卷积核尺寸为3×3,卷积核数量为32,步长为1,同时使每一层的输出都规范化到均值为0,方差为1,且激活函数均选择ReLU;重建层卷积核尺寸为3×3,卷积核数量为1,步长为1;上述网络层均需要在卷积后对图像边缘进行零填充,通过这种方式使图像的输出与输入分辨率相同.
2 仿真实验结果与对比分析
2.1 实验步骤
仿真实验时,根据1.2节设计的卷积神经网络算法,首先分别随机选取MNIST手写数字数据集[27]
训练过程中,两次仿真实验均训练20个周期,对应的每个周期分别训练8 906和11 578个批次,每个批次各含有128张小尺寸图像.采用损失函数设为均方误差(Mean Square Error,MSE)作为反向传播阶段的衡量参数,权重和偏置则是通过自适应矩估计(Adaptive Moment Estimation,Adam)优化算法得到更新,加速训练的收敛过程,同时将学习率调整为0.000 1.训练结束后,输入测试集,CNN就可以重构出目标图像
2.2 实验结果分析
在本文中,全采样率定义为2 500(50×50)次检测.相应地,0.1的采样率代表250次检测,低采样率范围为0 ≤β ≤ 0.3.实验中,分别在低采样率β为0.04、0.1、0.2的情况下通过CGI、CSCGI、CNN-CGI算法重构的图像,仿真实验结果如图 4.图 4(a)、(e)为测试目标原图像,图 4(b)~(d)、(f)~(h)中CGI所在列为不同采样率运用关联计算式(1)直接进行重构而成图像
图 4. 不同方法的数值仿真结果对比
Fig. 4. Comparison of numerical simulation results of different methods
仿真实验结果表明:随着采样率β增高,CSCGI和CNN-CGI成像效果越好,但在较低采样率时,CNN-CGI成像质量明显优于CSCGI成像质量.当β=0.1时,CGI和CSCGI是很难清晰地分辨图像,这是由于采用压缩感知算法在低采样下对重构图像影响较大,易造成区域模糊,重建效果差.但通过CNN进行图像预测,CNN-CGI算法处理后的输出图像的对比度和边缘信息显著增强,且PSNR和结构相似性(Structural Similarity Index,SSIM)大大提升,背景散斑也能够有效滤除.
3 实验平台测试及结果分析
3.1 实验平台搭建
为了验证本文提出方法的实际可行性,根据图 1搭建的实验装置如图 5所示.本成像系统主要由数字光处理器DLP4500、衰减片、被测物、光学镜头、CMOS相机、服务器组成,将它们放置在同一主光轴上.服务器的配置为:处理器为Inter(R) Xeon(R) CPU E5-2640 v4;运行内存:64 GB;操作系统为:Win7,64位;GPU型号:NVIDIA GeForce GTX2080Ti.算法程序是使用Python 3.5编写,采用基于TensorFlow的Keras框架实现CNN模型.
3.2 实验步骤
实验中,仍采用仿真实验中的测试图像,通过DLP4500依次投射50 pixel×50 pixel的散班图,先后通过衰减片和被测物后,并用CMOS相机代替桶探测器收集透过物体总光强值[2, 21].考虑到理论仿真散斑与实际散斑存在差别[28],由CMOS相机采集到的散斑场代替仿真散斑场,仿真散斑和实际散斑图分别如图 6(a)和(b)所示,将实际散斑图代入关联计算式(1)直接进行测试目标重构,构成新的图像测试集.将该测试集作为所设计卷积神经网络的输入,通过仿真数据集A′训练神经网络,输出的则是重建后优质量的图像
3.3 成像质量分析
利用CMOS相机测量次数分别为200次和400次,根据图 5实验装置所做的光学验证实验效果如图 7所示,分别在低采样率β为0.08、0.16的情况下通过CGI、CSCGI、CNN-CGI算法重构的图像.图 7(a)、(d)为测试目标原图像,图 7(b)~(c)、(e)~(f)中CGI所在列为不同采样率下的测试输入图像,对比实验输出结果如图 7(b)~(c)、(e)~(f)中的CSCGI和CNN-CGI所示.实物实验结果表明:由于DLP4500投影散斑在采集时受周围环境的影响,导致通过CGI重建的图像,上半部分较为模糊,效果较差;但采用CSCGI、CNN-CGI算法都不易受周围环境的影响,并且通过CNN-CGI能够更加真实地还原出图像的物体信息和背景信息.因此,通过本文方法可以在较低的采样率的情况下,可以将其运用在低光照和恶劣环境下.
图 7. 不同方法的实验实际效果对比
Fig. 7. Comparison of experimental actual effects of different methods
在物理实验中,数字场景的稀疏性较低.为进一步客观评价本文方法的优越性,利用PSNR和SSIM来衡量对比CGI、CSCGI和CNN-CGI三种成像方法的图像质量.通常,PSNR和SSIM越大,图像重构效果越好.为此,本文绘制了不同采样次数情况下,三种成像方法所对应的PSNR和SSIM关系曲线,如图 8所示.实验数据结果表明:CNN-CGI的PSNR和SSIM值明显高于其他方法,并且能够在低采样下能够还原出更好的图像;当在采样率不足(如β=0.08)的情况下,CSCGI结果的PSNR并不理想,部分图像存在失真,但通过CNN-CGI方法则可以有效避免.
3.4 实验成像速度分析
表 1为单张测试图像在不同采样次数下各算法重建图像所需的平均运行时间.从中可知,在不同的低采样率下,采用CNN-CGI方法重构单张图像的时间已经缩短至0.06 s左右,远小于采用CSCGI方法重构单张图像的时间.因此,相比传统的计算鬼成像方法,本文设计的CNN-CGI算法,在保证重构图像质量的前提下,利用GPU多核并行运算的高效率,能同时极大地缩短神经网络的训练时间和目标物体重建时间,对工程应用具有重要意义.
表 1. 单张测试图像在不同采样次数下各算法重建图像的平均运行时间(单位:秒)
Table 1. Average running time of each algorithm for a single test image at different sampling times (unit: s)
|
4 结论
本文提出一种基于卷积神经网络的计算鬼成像方法,能够充分挖掘图像内部特征,通过在去噪卷积神经网络算法的基础上进一步改进和优化,可有效解决低采样下重构图像的成像质量和成像速度问题.本文方法与传统的CGI、CSCGI方法相比,在低采样率的情况下,可以更快地重建出目标图像,并且图像的PSNR和SSIM均有明显提升,背景散斑也能够有效滤除.最后,分别通过仿真实验和实际物理实验,进一步验证了本方法的有效可行性.本文方法为解决计算鬼成像速度问题提供了一个新的解决方案,有效推动了人工智能技术在计算鬼成像领域的应用.在后续的研究中,将进一步完善CNN的结构以提高模型的泛化能力.
Article Outline
冯维, 赵晓冬, 吴贵铭, 叶忠辉, 赵大兴. 基于卷积神经网络的计算鬼成像方法研究[J]. 光子学报, 2020, 49(6): 0610002. Wei FENG, Xiao-dong ZHAO, Gui-ming WU, Zhong-hui YE, Da-xing ZHAO. Computational Ghost Imaging Method Based on Convolutional Neural Network[J]. ACTA PHOTONICA SINICA, 2020, 49(6): 0610002.