[0001]
本发明属于单光子成像技术领域,尤其涉及一种基于二进制神经网络的单光子压缩识别系统及其使用方法。
背景技术:[0002]
单像素成像是一种使用单点探测器来捕获二维图像的成像方法,在2008年由莱斯大学(rice university)的romber和baraniuk等根据压缩感知原理提出了单像素照相机方案,该方案利用图像的空间稀疏性和点探测器实现对二维物体的成像。2012年中科院俞文凯将单像素照相技术和光子计数成像技术结合,实现了突破探测器件自身极限的超高灵敏度光子计数成像,该成像方案具有高灵敏度、低光子水平的优势。
[0003]
随着计算机视觉技术的发展,越来越多的计算机视觉任务被提出,对图像进行识别在单像素成像中是一种重要的应用方向。在2013年使用非线性相关算法完成了在5%奈奎斯特采样率下辨识单一目标对象,2016年在之前的基础上优化了非线性相关算法,使之能够在更低的采样率下进行单一目标识别。在2018年用匹配关键点的方法实现了在低采样率下重建的模糊图片上进行多类别识别。然而这类方法的识别需要先对目标进行图像重建,因此存在方案复杂,耗时长以及在极低采样率下识别准确率低的缺点。
技术实现要素:[0004]
为了解决目前单光子压缩成像重建识别时间长,识别准确率低的问题,本发明提供了一种基于二进制神经网络的单光子压缩识别系统,包括二进制压缩采样子网络和识别子网络,所述二进制压缩采样子网络的权值矩阵为由“+1”和
“-
1”两元组成的二值化矩阵,所述“+1”和
“-
1”分别用于调制单像素成像系统中dmd微镜的正向翻转和反向翻转;所述识别子网络用于对所述测量值矩阵进行维度压缩与扩展,并完成类别识别,得到识别结果,所述识别子网络的权值由网络的训练所得到。
[0005]
所述二进制压缩采样子网络由第一级隐藏层构成,权重由网络的训练得到。
[0006]
所述单像素成像系统包括光源、成像透镜、目标物体、dmd微镜、汇聚透镜、光电倍增管pmt、fpga和上位机处理单元,所述光源发射的光束经过目标物体和成像透镜后打到dmd微镜上,所述dmd微镜上的部分光通过汇聚透镜收集至光电倍增管pmt,所述fpga分别与光电倍增管pmt、dmd微镜连接,并与所述上位机处理单元连接。
[0007]
训练完成的所述二进制压缩采样子网络,权重作为测量矩阵加载到dmd微镜上,再将实验中采集到的光子计数值输入述的识别子网络,能够进行快速准确的识别。
[0008]
一种基于二进制神经网络的单光子压缩识别系统的使用方法,包括以下步骤:
[0009]
(1)构建样本集:
[0010]
mnist数据集和mpeg-7数据集,mnist数据集是一系列图片大小为28
×
28的手写数字图片,共十个类别(0-9),70000张图片;抽取50000张作为训练集,10000张作为验证集,10000张作为测试集;mpeg-7数据集是图片大小不一包含70类不同物体的剪影图片,每个类
别共20张图片;为避免数据过少,对结果产生影响;设计对该数据集进行了数据增强,通过水平翻转,垂直翻转,图像选择等操作,将其扩充至50400张图片;将增强后的图集统一为60
×
60大小的图片,设计抽取其中840张图片作为验证集,另抽取840张作为测试集,余下作为训练集。
[0011]
(2)从步骤(1)构建的样本集中提取样本;
[0012]
(3)搭建单光子压缩识别系统;
[0013]
(4)对步骤(3)搭建的网络中的压缩采样子网络进行二值化处理;
[0014]
在正向传播过程中,采用基于符号函数sign的确定性方法,将采样子网络的权值矩阵二值化,即:
[0015][0016]
其中:x
b
是二值化之后的变量;x是实值变量,即网络中压缩采样子网络二值化之前的权值;
[0017]
(5)计算步骤(3)所构建的网络的整体梯度g
x
:
[0018]
g
x
=g
q1|x|≤1
;
[0019]
其中:为步骤(3)所构建的网络中识别子网络的整体梯度;1
|x|≤1
为压缩采样子网络的梯度,可表示为tanh函数,c为整个网络的损失函数。
[0020]
本发明的优点:
[0021]
1、本发明识别的速度更快,相比于传统的识别方法而言,该发明无需进行图片重建即可完成图片的识别。
[0022]
2、与传统的识别方法相比,本发明具有更高的识别准确率。
[0023]
3、与传统的识别方法相比,本发明能够在极低采样率的情况下,保持较高的识别准确率。
附图说明
[0024]
图1为本发明神经网络结构示意图;
[0025]
图2为单光子压缩成像系统图;
[0026]
图3为mnist数据集部分图片;
[0027]
图4为mpeg-7数据集部分图片;
[0028]
图5为数字“3”的蒙特卡洛仿真图片。
具体实施方式
[0029]
以下结合附图和实施例对本发明作进一步说明。
[0030]
如图1所示,是本发明(基于二进制神经网络的单光子压缩识别系统)的神经网络(bfci-net),将图片重塑为一列的向量,再将其输入至二值化神经网络进行训练。其中第一层为权重矩阵大小为(x,y)的二值化全连接层,x的大小取决于图片的大小,而y的大小取决于压缩感知的采样率mr,即y=mr*x,训练得到的权重矩阵即为压缩感知的测量矩阵。经过
数层全连接层和批标准化层后,从输出层输出图片的预测结果。
[0031]
1.1压缩采样子网络f
c
(
·
)
[0032]
基于二进制神经网络的单光子压缩识别系统的神经网络(bfci-net)中的第一层全连接层即为压缩采样子网络f
c
(
·
),其输入是第i个原始图像x
i
∈r1×
m
;第一层全连接层的权值矩阵w1∈r
m
×
n
可以看作一个压缩感知测量矩阵,用以代替传统的随机高斯测量矩阵。为了适应dmd的采样特性,本发明对第一层全连接层的压缩感知测量矩阵w1进行了二值化,得到二值化矩阵w
1b
。压缩采样就是将二值化矩阵w
1b
加载到dmd上进行采样的过程,可以表示为:
[0033]
y
i
=x
i
w
1b
[0034]
其中,y
i
∈r1×
n
,是第i个原始图像x
i
压缩采样后的结果,n是测量次数。测量次数n随着测量率(mr)的变化而变化,对于1*784的输入,n=196,79,32,8分别对应于mr=0.25,0.10,0.04,0.01。
[0035]
上述二值化方法及相应的梯度计算方法:
[0036]
本发明二值化神经网络通过将权重二值化为+1或-1,使模型参数的储存空间得以节省,并且加快了运算速率。二值化神经网络可以被看作是一种特殊的正则化的方式,且已经被验证能够在保证足够精确度的情况下实现。
[0037]
对神经网络中的权重进行二值化有两种方法,第一种为基于符号函数sign(x)的确定性方法,即当w>0时使二值化权重w
b
=1,当w<0时使w
b
=-1,表达式为:
[0038][0039]
第二种为随机二值化方法:
[0040][0041]
其中
[0042][0043]
本发明一种方法对全连接层进行二值化,且由于只有第一层权重需要加载在dmd上,其余的隐藏层我们依然使用浮点型数据。
[0044]
发明以下方法更新二值化全连接层权重:
[0045]
forward propagation:
[0046]
w
b
←
binarize(w
t-1
)
[0047]
for k=1to l,compute a
k
witha
k
,w
b
,b
t-1
[0048]
backward propagation:
[0049]
initialize output layer’s activations gradient
[0050]
for k=l to 2,computewith chain rule
[0051]
parameter update:
[0052]
computeand
[0053][0054][0055]
1.2识别子网络f
i
(
·
)
[0056]
基于二进制神经网络的单光子压缩识别系统的神经网络(bfci-net)中的后端网络即为识别子网络f
i
(
·
),用于对压缩测量图像的识别,得到识别结果。
[0057]
1.3网络训练方法及参数
[0058]
我们使用的是tensorflow框架进行训练和测试。我们采用的训练集是mnist数据集和mpeg-7数据集。
[0059]
mnist数据集是一系列图片大小为28*28的手写数字图片,如图3,共十个类别(0-9),70000张图片。我们抽取50000张作为训练集,10000张作为验证集,10000张作为测试集。
[0060]
mpeg-7数据集是图片大小不一包含70类不同物体的剪影图片,如图4所示,每个类别共20张图片。为避免数据过少,对结果产生影响。我们对该数据集进行了数据增强,通过水平翻转,垂直翻转,图像选择等操作,将其扩充至50400张图片。将增强后的图集统一为60*60大小的图片,我们抽取其中840张图片作为验证集,另抽取840张作为测试集,余下作为训练集。
[0061]
如图5所示,为数字“3”的蒙特卡洛仿真图片,其识别结果如表1所示:
[0062][0063]
表1
[0064]
本发明基于二进制神经网络的单光子压缩识别系统的图像识别:
[0065]
如图1所示,对于给定的图像,首先将其拉伸为1*784,拉伸后的图像经过第一层全连接层后,输出压缩采样后的结果。后端网络对采样值进行识别,最终得到识别结果。
[0066]
将本发明(基于二进制神经网络的单光子压缩识别系统)应用于单光子压缩成像系统的方法:
[0067]
如图2所示是单光子压缩成像系统,包括光源、成像透镜、目标物体、dmd微镜、汇聚透镜、光电倍增管pmt、fpga和上位机处理单元。
[0068]
当led光源发出的光通过平行光管、衰减片和光阑后,它就变成了一个非常微弱的平行光,其强度为单光子水平,平行光经过目标物体和成像透镜后打到dmd上。
[0069]
dmd(ti:0.7xgaddr dmd)具有1024*768个可单独控制偏转的微镜,作为空间光调
制器,向dmd连续加载测量矩阵,可实现对空间光的随机调制。本实施例dmd中每个微镜的尺寸为13.68μm
×
13.68μm;每个数字微镜都有两种反射状态,+12度和-12度的反射分别代表“开”和“关”的调制。
[0070]
我们放置了一个汇聚透镜在+12度的位置上,将已调光收集进工作在光子计数模式下的光电倍增管pmt(hamamatsu photonics h10682-110 pmt)。该工作在光子计数模式下的光电倍增管pmt作为单点光子探测器,可以在一次采集中同时收集多个dmd上像素的光强值,输出一个离散脉冲至fpga。因此,该系统的信噪比非常高,可以在很高的灵敏度下进行成像。
[0071]
将已经训练好的本发明(基于二进制神经网络的单光子压缩识别系统)的神经网络(bfci-net)的第一层全连接层二值化的权值矩阵w
1b
作为测量矩阵,通过基于fpga的控制模块加载至dmd来实现光的调制,并在每一次采集之后读出光电倍增管pmt的计数值,即光子数,通过fpga的串口将数据发送到上位机,上位机汇总后输入已经训练好的单光子压缩识别系统的神经网络(bfci-net)的识别子网络得到图像的识别结果。
[0072]
以上所述仅为本发明的实施例,凡是利用本发明说明书及附图内容所作的等同变换或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。