1.一种基于可编程逻辑门阵列的骨龄评估方法,其特征在于,包括:
获取手骨图像并对其进行预处理;
在平面上按照权重参数的尺寸大小进行分块,分为多个平面分块;
在输入通道数上按照每个平面分块对权重参数进行分块,分为两块权重参数,将第一分块权重参数存放到存储器的低地址端,将第二分块权重参数存放到存储器的高地址端,每块表示每批次卷积并行运算时所需的权重通道数K,分批进行卷积运算时先进行第一块权重参数的运算,再进行第二块权重参数的运算;
在输入通道上将手骨图像或者手骨特征图分块,分为两块图分块,将第一图分块中的每个小分块的数据存放到存储器的低地址端,再将第二图分块中的每个小分块的数据存放到存储器的高地址端,每个小分块中所含的通道数为每批次进行的卷积所需的手骨图像或手骨特征图的通道数;分批进行卷积运算时先进行第一图分块中小分块的运算,再进行第二图分块中小分块的运算;
分批次从可编程逻辑门阵列中的存储器调用训练完成的卷积神经网络的权重参数,并基于所述权重参数将所述手骨图像进行卷积处理;对应批次从所述存储器调用训练完成的卷积神经网络的偏置参数,并对卷积处理后的特征图进行偏置处理;
将每个卷积层中的所有批次的手骨图像偏置处理完成后,对当前卷积层的手骨特征图进行归一化处理和激活处理;
将激活处理后的手骨特征图通过req、ready和data信号线将数据传输到仲裁转换模块中的FIFO队列进行暂存,然后通过仲裁转换模块中的轮询仲裁器裁决后将FIFO中的数据以AXI总线方式存到存储器中,之后从所述存储器中按批次通过AXI4总线传输到池化模块中进行池化操作,直至完成所有卷积层的池化操作;
将池化操作后的手骨特征图输入到全连接层中,进行softmax分类后得到手骨图像的骨龄评估结果。
2.根据权利要求1所述的一种基于可编程逻辑门阵列的骨龄评估方法,其特征在于,所述获取手骨图像并对其进行预处理包括通过串口向X射线发射器发送使能信号、曝光信号、管电压和管电流信号并产生X射线;平板探测器接收所述X射线并生成RAW格式的原始手骨图像;将RAW格式的手骨图像通过网口传输到可编程逻辑门阵列中进行图像格式转换,将其转换为JPG格式;将JPG格式的手骨图像裁剪为所需的大小,对裁剪后的手骨图像进行去噪以及增强预处理;将处理好的手骨图像转换为BIN格式并储存到可编程逻辑门阵列中的图像缓存模块中。
3.根据权利要求1所述的一种基于可编程逻辑门阵列的骨龄评估方法,其特征在于,所述存储器中存储有包括所述卷积神经网络中每一卷积层所需的特征、权重参数、偏置参数的起始位置以及所需的数据长度,以及每个卷积层计算完成后特征图的存储地址。
4.根据权利要求1所述的一种基于可编程逻辑门阵列的骨龄评估方法,其特征在于,批次调用的方式包括通过req、ready和data三根信号线作为三通道,按照每通道16并行度的数据为一批次进行数据传输和调用。
5.一种基于可编程逻辑门阵列的骨龄评估系统,其应用于如权利要求1~4任一所述的一种基于可编程逻辑门阵列的骨龄评估方法,其特征在于,所述系统搭载于所述可编程逻辑门阵列中,包括:输入模块,用于输入手骨图像并对其进行预处理;
缓存模块,用于缓存预处理后的手骨图像、手骨特征图以及卷积神经网络的权重参数和偏置参数;
卷积模块,用于对缓存的手骨图像进行卷积处理;
归一化模块,用于对卷积完成的手骨特征图进行归一化处理;
激活模块,用于对归一化处理后的手骨特征图进行激活;
池化模块,用于对激活后的手骨特征图进行池化处理;
仲裁转换模块,用于对各个模块对存储器需求的轮询仲裁;
存储器,用于存储训练完成的卷积神经网络的权重参数和偏置参数以及手骨特征图;
输出模块,用于对池化操作后的手骨特征图分类后,输出手骨图像的骨龄评估结果;
控制模块,用于对各个模块进行控制调用。
6.根据权利要求5所述的一种基于可编程逻辑门阵列的骨龄评估系统,其特征在于,所述输入模块包括通过串口向X射线发射器发送使能信号、曝光信号、管电压和管电流信号产生X射线,平板探测器接收所述X射线并生成RAW格式的原始手骨图像;将RAW格式的手骨图像通过网口传输到可编程逻辑门阵列中进行图像格式转换,将其转换为JPG格式;对手骨图像裁剪为224×224大小后对图片进行去噪以及增强预处理;将处理好的手骨图像转换为BIN格式并储存到可编程逻辑门阵列中的所述图像缓存模块。
7.根据权利要求5所述的一种基于可编程逻辑门阵列的骨龄评估系统,其特征在于,所述缓存模块包括图像缓存模块、特征图缓存模块、权重缓存模块以及偏置缓存模块;
所述图像缓存模块,用于缓存预处理后的手骨图像;
所述特征图缓存模块,用于缓存手骨图像特征图;
所述权重缓存模块,用于缓存卷积神经网络的权重参数;
所述偏置缓存模块,用于缓存卷积神经网络的偏置参数。
8.根据权利要求5所述的一种基于可编程逻辑门阵列的骨龄评估系统,其特征在于,所述各个模块与所述存储器之间分别通过AXI4总线进行数据交换,各个模块之间分别通过简单握手信号req、ready和data进行数据交换,仲裁转换模块接收多个通道送来的基于简单握手信号的数据,对这多个通信数据进行轮训仲裁,将轮训仲裁结果通道的数据转换为AXI4总线的数据,并按照AXI4协议读写到存储器中。
9.根据权利要求5所述的一种基于可编程逻辑门阵列的骨龄评估系统,其特征在于,所述仲裁转换模块包括:多通道FIFO缓存、轮询仲裁器、寄存器;当多个通道数据同时向存储器读写数据时,多个通道的数据会被暂存到仲裁转换模块中的多个FIFO缓存器中,每个FIFO缓存一个通道的数据;当存储器空闲状态时,轮询仲裁器会将该次仲裁到的通道数据从FIFO缓存中以AXI4总线的形式发送给存储器;其中寄存器用于存储上一次被仲裁到的通道,上一次被仲裁到的通道下次将不会被仲裁到,以此来保证所述轮询仲裁器以轮询的方式进行仲裁工作。
10.根据权利要求5所述的一种基于可编程逻辑门阵列的骨龄评估系统,其特征在于,所述控制模块,用于对各个模块进行控制调用包括:所述控制模块按照卷积神经网络结构,对层与层之间采用串行执行,对每层中内部则通过卷积模块、池化模块并行执行;
所述控制模块用于在卷积神经网络每层计算开始时配置出卷积参数到所述卷积模块中;
所述控制模块用于在卷积神经网络进行池化操作时配置出池化参数到所述池化模块中;
所述控制模块用于在卷积神经网络进行归一化处理配置出归一化参数到所述归一化处理模块中;
所述控制模块用于在卷积神经网络进行激活处理时配制出激活参数到所述激活模块中;
所述控制模块根据各个模块反馈的状态信息和卷积神经网络每层的结构并按照该结构去依次顺序启动各个模块的运算;
所述控制模块启动完成全连接层和softmax运算来完成骨龄评估。