论文部分内容阅读
传统的X射线探测器结构复杂,成本高,而基于CMOS传感器的解决方案欲求通过X射线的灰度值得出辐射剂量,而灰度值和辐射剂量之间的关系是未知的,因此本文设计和实现了一个基于FPGA的BP神经网络平台,利用该平台可以完成X射线的辐射剂量和最高灰度值之间的非线性关系的拟合,二者的关系一经确定,即可由任意X射线环境测得的灰度值得出与之相对应的X射线辐射剂量,从而根据辐射剂量计算出X射线的剂量信息,实现探测器对X射线剂量的测量。该平台具有速度快、精度高、方便携带的特点。首先,本文利用BP神经网络对非线性映射关系可以快速精确处理的特性,将最高灰度值作为输入信号,辐射剂量作为输出信号,对BP神经网络进行训练,从而得到输入输出关系的拟合曲线。其中,关于BP神经网络拓扑结构的选择,本文在算法上分别针对不同的拓扑结构,对BP神经网络的特性进行了讨论,从而选取出性能最优的结构。其次,鉴于BP神经网络在训练过程中需要处理大量的样本,本文利用FPGA的逻辑模块高度并行、快速运算的特性,用Verilog搭建了基于FPGA的硬件平台,实现对BP神经网络高效的训练。其中,本文在BP神经网络的FPGA实现过程中,重点对神经网络的激励函数的硬件实现进行了设计。激励函数在BP神经网络的训练过程中是决定训练能否成功的关键因素,本文采用的激励函数是Sigmoid函数,作为超越函数,不能直接在FPGA上实现,因此本文采用的是查找表法和非线性函数逼近法结合的方式对其进行实现。最后,为了验证该FPGA平台是否能达到预期的要求,本文利用该平台,将采集到的实验灰度值样本数据作为其输入信号,并随机的赋给BP神经网络初始权值矩阵和阈值矩阵,在FPGA上经过上万次的训练之后,误差结果可以表明本平台具有拟合X射线辐射剂量和最高灰度值之间的非线性映射关系的能力,仿真结果表明实际输出与预期输出基本一致。本文搭建的基于FPGA的BP神经网络平台,可以快速的对复杂的非线性关系进行拟合,且在对大量训练样本的处理中表现出非常高效的运算能力,最后仿真得出的实际结果也符合预期要求,精度高,成本低,便于携带。