CN113362292A - 一种基于可编程逻辑门阵列的骨龄评估方法及系统 - Google Patents

一种基于可编程逻辑门阵列的骨龄评估方法及系统 Download PDF

Info

Publication number
CN113362292A
CN113362292A CN202110582950.XA CN202110582950A CN113362292A CN 113362292 A CN113362292 A CN 113362292A CN 202110582950 A CN202110582950 A CN 202110582950A CN 113362292 A CN113362292 A CN 113362292A
Authority
CN
China
Prior art keywords
module
hand bone
image
data
bone
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110582950.XA
Other languages
English (en)
Other versions
CN113362292B (zh
Inventor
王伟
刘佳宏
李章勇
姜小明
李欣蔚
冉鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing University of Post and Telecommunications
Original Assignee
Chongqing University of Post and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing University of Post and Telecommunications filed Critical Chongqing University of Post and Telecommunications
Priority to CN202110582950.XA priority Critical patent/CN113362292B/zh
Publication of CN113362292A publication Critical patent/CN113362292A/zh
Application granted granted Critical
Publication of CN113362292B publication Critical patent/CN113362292B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0012Biomedical image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30008Bone
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Medical Informatics (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Radiology & Medical Imaging (AREA)
  • Quality & Reliability (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及医学图像处理领域,尤其涉及一种基于可编程逻辑门阵列的骨龄评估方法及系统;所述方法包括获取手骨图像并预处理;分批次从可编程逻辑门阵列中的存储器调用训练完成的卷积神经网络的权重参数和偏置参数,对手骨图像进行卷积处理,对卷积层的手骨特征图进行归一化处理和激活处理;将激活处理后的手骨特征图通过仲裁转换后从存储器中按批次通过AXI4总线传输到池化模块中,直至完成所有卷积层的池化操作;将池化操作后的手骨特征图输入到全连接层中,进行softmax分类后得到手骨图像的骨龄评估结果。本发明的可编程逻辑门阵列通过并行方式对不同卷积层的数据进行处理,能加快卷积神经网络的运行处理速度,提高评估的效率。

Description

一种基于可编程逻辑门阵列的骨龄评估方法及系统
技术领域
本发明涉及医学图像处理领域,尤其涉及一种基于可编程逻辑门阵列的骨龄评估方法及系统。
背景技术
骨龄是衡量青少年儿童生长发育的重要指标之一,它能较准确的反映个体的生长发育情况。目前,骨龄广泛应用于卫生、医疗、司法领域。
目前市场缺乏骨龄专用系统。现有手骨图片都是基于普通DR机拍摄,非儿童专用,存在射线超标隐患;现有骨龄评估均由临床医师判断,主观性较强。并且研发中的骨龄评估算法基于服务器实现,计算量较大,消耗资源较多,在移动式平台上难以实现。
基于上述问题,中国专利CN112801994A提供了一种骨龄评估方法及系统,该方案应用于树莓派,在树莓派接收到骨龄评估请求后,根据骨龄评估请求获取手骨图像以及手骨图像对应的用户性别,进而将手骨图像进行裁剪和直方图匹配,和用户性别进行数值转换后输送到神经计算棒,通过预先训练好部署在神经计算棒中的骨龄评估模型根据手骨图像和所述用户性别进行骨龄评估。该方法通过树莓派实现骨龄评估,无需联网,提高了安全性。同时,将训练好的骨龄评估模型部署到神经计算棒中使用,进一步提高安全性的同时能够利用神经计算棒进行加速处理,从而提高评估的效率。
然而,上述方案中依赖于串行设计的树莓派,而树莓派的运行速度低,导致骨龄评估的效率有待提高。
并且现有移植方案对特征图以及权重数据的读取是按照卷积滑动窗口中所需的数据从存储器中进行读取,然而滑动窗口的数据在存储器中并不是连续的,这使得从存储器中加载一个滑动窗口所需的数据不能进行连续突发的读写,从而增加了数据的读取时间。
发明内容
基于现有技术存在的问题,为了加快骨龄评估的效率,本发明的目的在于提供一种基于可编程逻辑门阵列的骨龄评估方法及系统,用来解决上述背景技术问题。
为解决上述问题,本发明的采用的技术方案如下:
在本发明的第一方面,本发明提供了一种基于可编程逻辑门阵列的骨龄评估方法,包括:
获取手骨图像并对其进行预处理;
分批次从可编程逻辑门阵列中的存储器调用训练完成的卷积神经网络的权重参数,并基于所述权重将所述手骨图像进行卷积处理;
对应批次从所述存储器调用训练完成的卷积神经网络的偏置参数,并对卷积处理后的特征图进行偏置处理;
将每个卷积层中的所有批次的手骨图像偏置处理完成后,对当前卷积层的手骨特征图进行归一化处理和激活处理;
将激活处理后的手骨特征图通过req、ready和data信号线将数据传输到仲裁转换模块中的FIFO队列进行暂存,然后通过仲裁转换模块中的轮询仲裁器裁决后将FIFO中的数据以AXI总线方式存到存储器中,之后从所述存储器中按批次通过AXI4总线传输到池化模块中进行池化操作,直至完成所有卷积层的池化操作;
将池化操作后的手骨特征图输入到全连接层中,进行softmax分类后得到手骨图像的骨龄评估结果。
在本发明的第二方面,本发明还提供了一种基于可编程逻辑门阵列的骨龄评估系统,所述系统搭载于所述可编程逻辑门阵列中,包括:
输入模块,用于输入手骨图像并对其进行预处理;
缓存模块,用于缓存预处理后的手骨图像、手骨特征图以及卷积神经网络的权重参数和偏置参数;
卷积模块,用于对缓存的手骨图像进行卷积处理;
归一化模块,用于对卷积完成的手骨特征图进行归一化处理;
激活模块,用于对归一化处理后的手骨特征图进行激活;
池化模块,用于对激活后的手骨特征图进行池化处理;
仲裁转换模块,用于对各个模块对存储器需求的轮询仲裁;
存储器,用于存储训练完成的卷积神经网络的权重参数和偏置参数以及手骨特征图;
输出模块,用于对池化操作后的手骨特征图分类后,输出手骨图像的骨龄评估结果;
控制模块,用于对各个模块进行控制调用。
本发明的有益效果:
本发明实施例提供的一种基于可编程逻辑门阵列的骨龄评估方法及系统,相对于传统的骨龄评估技术,本发明通过在可编程逻辑门阵列中搭载训练完成的卷积神经网络,批次性地对卷积神经网络的参数进行调用,对每个卷积层的数据进行调用,本发明无需联网即可进行骨龄评估,能够避免手骨图像以及其他数据泄露,提高了评估过程的安全性,同时,本发明的可编程逻辑门阵列通过并行方式对不同卷积层的数据进行处理,能够加快卷积神经网络的运行处理速度,另外,本发明将权重特征图按照一定的方式进行存储,在读取时便可以进行顺序读取从而降低数据读取时间;从而进一步提高评估的效率,本发明采用的卷积运算方式对特征图的数据和权重数据进行复用,从而降低了系统的功耗。
附图说明
图1为本发明实施例中一种基于可编程逻辑门阵列的骨龄评估方法流程图;
图2为本发明实施例中一种基于可编程逻辑门阵列的骨龄评估系统结构图;
图3为本发明优选实施例中一种基于可编程逻辑门阵列的骨龄评估系统结构图;
图4为本发明实施例中卷积模块的运算调度图;
图5为本发明实施例中权重参数在存储器中的排列方式图;
图6为本发明实施例中手骨图像及手骨特征图在存储器中的排列方式图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在一个实施例中,如图1所示,提供了一种基于可编程逻辑门阵列的骨龄评估方法,包括:
101、获取手骨图像并对其进行预处理;
具体的,所述手骨图像为包含手骨的图像,即为目标用户的手部骨骼图像信息,可以通过便携式DR(Digital Radiography)影像设备获取目标用户的手部骨骼图像信息。
示例性的,本发明实施例中,通过串口向X射线发射器发送使能信号、曝光信号、管电压和管电流信号并产生X射线;平板探测器接收所述X射线并生成RAW格式的原始手骨图像;将RAW格式的手骨图像通过网口传输到可编程逻辑门阵列中进行图像格式转换,将其转换为JPG格式;将JPG格式的手骨图像裁剪为所需的大小,对裁剪后的手骨图像进行去噪以及增强预处理。
具体地,当获取到手骨图像后,首先对手骨图像进行裁剪,去掉手骨图像中腕骨以下的图像区域,裁剪后的手骨图像保留腕骨、指骨和掌骨。再利用一些图像匹配算法将裁剪后的手骨图像进行图像匹配。
102、分批次从可编程逻辑门阵列中的存储器调用训练完成的卷积神经网络的权重参数,并基于所述权重参数将所述手骨图像进行卷积处理;
在本发明实施例中,所述卷积神经网络模型包括输入层、卷积层、池化层、全连接层及输出层;本发明中在PC机上利用手骨图像训练集和手骨图像验证集对所述卷积神经网络进行训练,在这个训练过程中,需要输出所述卷积神经网络中每一层所需要的特征、权重参数、偏置参数,按照批次性地调用这些参数数据对待测手骨图像在每一个卷积层的进行处理。
在本发明实施例中,可以将权重参数和手骨图像特征数据加载到某一卷积模块进行乘累加操作,与此同时,准备调用下一批次运算所需的手骨图像特征数据以及权重参数。
103、对应批次从所述存储器调用训练完成的卷积神经网络的偏置参数,并对卷积处理后的特征图进行偏置处理;
本实施例中,将卷积后的手骨特征图键入偏置参数,即表示对手骨特征图减去一个特定的偏置。
104、将每个卷积层中的所有批次的手骨图像偏置处理完成后,对当前卷积层的手骨特征图进行归一化处理和激活处理;
在本发明实施例中,当每个卷积层中所有批次的卷积运算都完成以后,对卷积模块输出的手骨特征图进行BN归一化处理,将归一化处理后的手骨特征图继续进行Relu激活操作。
在本发明的优选实施例中,在进行Relu激活操作后,将处理后的手骨特征图通过仲裁转换模块存储到储存器中。
105、将激活处理后的手骨特征图通过req、ready和data信号线将数据传输到仲裁转换模块中的FIFO队列进行暂存,然后通过仲裁转换模块中的轮询仲裁器裁决后将FIFO中的数据以AXI总线方式存到存储器中,之后从所述存储器中按批次通过AXI4总线传输到池化模块中进行池化操作,直至完成所有卷积层的池化操作;
在本发明实施例中,将激活处理后的特征图通过仲裁转换模块从存储器中按批次通过AXI4总线传输到池化模块进行最大或平均池化操作。在进行池化操作时先对手骨特征图进行横向池化,然后再进行纵向池化,最后将计算结果的特征手骨图传输到存储器中预先分配好的地址空间中。
106、将池化操作后的手骨特征图输入到全连接层中,进行softmax分类后得到手骨图像的骨龄评估结果。
在本发明实施例中,当所有卷积神经网络所有层计算完毕后在ARM端进行全连接层计算和Softmax分类后得出受检者的手骨年龄,假设其中分类标签为240个类,即代表1到240个月的骨龄,可以输出受检者骨龄评估结果。
图2是本发明实施例中一种基于可编程逻辑门阵列的骨龄评估系统结构图;如图2所示,所述骨龄评估系统包括:
输入模块,用于输入手骨图像并对其进行预处理;
缓存模块,用于缓存预处理后的手骨图像、手骨特征图以及卷积神经网络的权重参数和偏置参数;
卷积模块,用于对缓存的手骨图像进行卷积处理;
归一化模块,用于对卷积完成的手骨特征图进行归一化处理;
激活模块,用于对归一化处理后的手骨特征图进行激活;
池化模块,用于对激活后的手骨特征图进行池化处理;
仲裁转换模块,用于对各个模块对存储器需求的轮询仲裁;
存储器,用于存储训练完成的卷积神经网络的权重参数和偏置参数以及手骨特征图;
输出模块,用于对池化操作后的手骨特征图分类后,输出手骨图像的骨龄评估结果;
控制模块,用于对各个模块进行控制调用。
在本发明的优选实施例中,图3是本发明优选实施例中一种基于可编程逻辑门阵列的骨龄评估系统结构图;如图3所示,所述骨龄评估系统包括:
输入模块,用于输入手骨图像并对其进行预处理;
所述输入模块通过网口连接内部的图像缓存模块;通过外部的串口向X射线发射器发送使能信号、曝光信号、管电压和管电流信号产生X射线,平板探测器接收所述X射线并生成RAW格式的原始手骨图像;将RAW格式的手骨图像通过网口传输到可编程逻辑门阵列中进行图像格式转换,将其转换为JPG格式;对手骨图像裁剪为224×224大小,之后对图片进行去噪以及增强预处理;将处理好的手骨图像转换为BIN格式并储存到可编程逻辑门阵列中的所述图像缓存模块。
图像缓存模块,用于缓存预处理后的手骨图像;
在一些实施例中,所述图像缓存模块为宽度16位,容量98KB的BRAM,用于存储受检者224×224的手骨图像;所述图像缓存模块可以从存储器中加载相应的手骨图像。
特征图缓存模块,用于缓存手骨图像特征图;
在一些实施例中,所述特征图缓存模块为宽度16位和深度为1024的FIFO。
权重缓存模块,用于缓存卷积神经网络的权重参数;
在一些实施例中,所述权重缓存模块为宽度16位和深度256的FIFO。
偏置缓存模块,用于缓存卷积神经网络的偏置参数;
在一些实施例中,所述偏置模块为位宽16位和深度为256的FIFIO。
卷积模块,用于对缓存的手骨图像进行卷积处理;
所述卷积模块采用的卷积操作包括,先将特征图模块和权重模块中加载好的数据通过简单握手信号req、ready和data三根信号线传输到卷积模块,然后如图4所示,采用16并行度运算,将不同卷积核位置0的数据块所组成的矩阵分别对特征图位置0~15的数据块进行乘累加操作。然后再将卷积核的数据块换成位置1的数据块所组成的矩阵别对特征图位置0~15的数据块进行乘累加操作。以此类推将卷积核所有位置的数据块完成上述乘累加操作后加上偏置运算得出卷积后的特征图。
归一化模块,用于对卷积完成的手骨特征图进行归一化处理;
所述归一化模块将偏置后的特征图进行Batch Normalization处理,即对特征图减去一个特定的偏置再乘以一个特定的系数。
激活模块,用于对归一化处理后的手骨特征图进行激活;
进行Relu激活操作后将处理后的手骨特征图通过仲裁转换模块存储到储存器中。
池化模块,用于对激活后的手骨特征图进行池化处理;
所述池化模块包括最大池化操作和平均池化操作;将通过仲裁转换模块从存储器中按批次通过AXI4总线传输到池化模块进行最大或平均池化操作。
先将手骨特征图只进行卷积神经网络该层所需池化大小的横向池化操作,然后再将手骨特征图只进行卷积神经网络该层所需池化大小的纵向池化操作。
仲裁转换模块,用于对各个模块对存储器需求的轮询仲裁;
所述仲裁转换模块作为一个中间模块,该仲裁转换模块负责存储器与其他模块之间的通信;其他模块通过简单握手信号req、ready和data进行数据交换与仲裁转换模块通信,所述仲裁转换模块与存储器之间通过AXI4协议进行数据交换。
仲裁转换模块先接收多个通道送来的基于简单通信握手协议的数据,然后对多通道数据进行轮询仲裁,将仲裁结果通道的数据转化为AXI4协议读写到储器端。
存储器,用于存储训练完成的卷积神经网络的权重参数和偏置参数以及手骨特征图;
其中,所述存储器的权重参数的排列方式如图5所示。将每个权重通道的数据进行如图所示的分块,在平面上按照权重的尺寸大小进行分快,如图5所示3x3的卷积核,平面分为9个块;在输入通道数上对权重数据进行分块,如图5所示在输入通道上分为2块权重数据,每块表示每批次卷积并行运算时所需的权重通道数K,分批进行卷积运算时先进行第一块数据的运算再进行第二块数据的运算;如图5所示K0~Kn-1代表卷积核的输出通道数,将卷积核K0中第0个分块(一个分块有K个通道的数据)存放到存储器的低地址端(为权重存储起始地址),先存放分块数据0的地通道数据,再存放分块数据0的高通道数据;然后再将K1的第0个分块存放到存储器中接下来的位置中,以此类推将卷积核Kn-1中的第0个分块数据存放到存储器中;然后按照上述方式再进行K0的第1个分块数据的储存,K0的第2分块数据的储存直至所有权重数据被储存到存储器中。其中,所述存储器的手骨图像以及手骨特征图的排列方式如图6所示。将手骨图像或者特征图数据进行如图6所示的分块,在通道数上分为两大块,先第一大块中分块0(每个小分块中所含的通道数为每批次进行的卷积所需的手骨图或特征图的通道数)的数据排列到存储器的低地址端,然后再将分块1的数据排列到接下来的地址中,以此类推排列完第一大块中的分块后,再进行第二大块的数据排列,排列方式同上。
全连接模块,用于对池化操作后的手骨特征图进行全连接处理;
Softmax模块,用于对全连接处理后的手骨特征图进行softmax分类后得到手骨图像的骨龄评估结果。
控制模块,用于对各个模块进行控制调用。
所述控制模块按照卷积神经网络结构,层与层间采用串行执行,每层则通过卷积模块、池化模块并行执行;
所述控制模块在卷积神经网络每层计算开始时将卷积所需的特征图和权重的尺寸、通道数、数据卷积前读取和卷积后存储的地址以及长度、卷积步长、padding的个数配置到卷积模块中的寄存器中;将该层池化操作所需的特征图的尺寸、通道数、池化前数据读取和池化后存储的地址以及长度、池化窗口尺寸、池化步长配置到池化模块的寄存器中;将该层进行归一化处理的输入特征图尺寸、通道数、数据归一化处理前读取和处理后存储的地址以及长度配置到归一化处理模块中的寄存器中去;将该层激活所需的特征图的尺寸、通道数、激活前数据读取和激活处理后存储的地址以及长度配置到激活模块;所述控制模块根据各个模块反馈的状态信息(各个模块状态信息分为:空闲、运行中、运行结束)和卷积神经网络每层的结构并按照该结构去依次顺序启动各个模块的运算;最后控制模块启动完成全连接层和softmax运算来完成骨龄评估。
在本发明的一个实施例中,上述系统所对应的整个评估过程可以包括:
1)将获取到的经过去噪、增强预处理的手骨图像通过网口由图像采集器传输到可编程逻辑门阵列中的图像缓存模块中;
2)通过简单的握手通信将图像缓存模块中的手骨图像分批次传输到特征图缓存模块中,与此同时将对应批次的权重数据从存储器中通过AXI4总线加载到权重缓存模块。
3)将特征图缓存模块和权重缓存模块中的手骨特征图以及权重参数数据传输到卷积模块进行乘累加操作;与此同时图像缓存模块和权重缓存模加载该卷积层运算下一批次运算所需的特征数据和对应的权重参数。当每层中所有批次的卷积运算完成后,对产生的手骨特征图进行Batch Normalization处理,和Relu激活操作后通过仲裁转换模块以AXI4总线将手骨特征图存储到存储器中,即将该卷积层计算完成后所产生的手骨特征图储存到预先分配好的地址空间中。
4)将步骤3)产生的手骨特征图通过仲裁转换模块从存储器中按批次通过AXI4总线传输到池化模块进行最大池化或平均池化操作。然后再将池化后的计算结果的特征手骨图传输到存储器中预先分配好的地址空间中。
5)反复执行步骤1)~步骤4),完成神经网络中每一卷积层的卷积计算。
6)当所有卷积神经网络所有层计算完毕后在ARM端进行全连接层计算和Softmax分类;完成整个基于可编程逻辑门阵列的骨龄评估的计算。
在本发明的一个优选实施例中,上述系统所对应的整个评估过程还可以包括步骤A和步骤B的准备阶段,步骤C到步骤G的计算阶段以及步骤H的输出阶段,具体的:
步骤A:将训练好的卷积神经网络的权重和偏置存储到可编程逻辑门阵列器件中的存储器中;其中权重数据按照一定排列方式进行存储;再根据PC机训练好的卷积神经网络的结构,计算卷积神经网络结构中每一层所需要的特征、权重、偏置数据的起始地址以及所需的数据长度,以及每层计算完毕的特征图的存储地址,然后将这些数据信息储存到可编程逻辑门阵列控制模块中用于调度卷积神经网络中各个模块的协调工作来有序的完成整个神经网络结构的计算。
其中,所述控制模块中存放的整个卷积神经网络中每层所需特征图和权重数据的尺寸信息,通道数信息等数据信息,从存储器中读取特征图和权重的起始地址信息和所读取的数据长度大小等参数,这些参数是用来配置每一层卷积或其他模块操作的。各个模块通过这些配置信息就会知道该层网络中所处理的卷积,池化,BN,激活的图片大小和数据的多少。
步骤B:可编程逻辑门阵列通过串口向X射线发生器发送使能信号、曝光信号、管电压和管电流信号产生适量的X射线,然后平板探测器接收X射线并生成RAW格式的原始手骨图像。将RAW格式的手骨图像通过网口传输到可编程逻辑门阵列中进行图像格式转换,将其转换为JPG格式。然后对手骨图像裁剪为224X224大小,之后对图片进行去噪、增强预处理。最后将处理好的手骨图像转换为BIN格式并按照一定的排列方式储存到可编程逻辑门阵列中的图像缓存模块。
步骤A和步骤B主要包括将训练完成的卷积神经网络的权重参数和偏置参数存储到可编程逻辑门阵列的存储器中,以及获取手骨图像,这两个步骤主要是为了后续计算阶段做准备。
步骤C:通过req、ready和data三根信号线将手骨图像缓存模块中的图像按照每通道16并行度的数据,一共3通道为一批次传输到特征图缓存模块;与此同时将16并行度的权重数据为一批次从内部存储器中通过AXI4总线加载到权重缓存模块。
步骤D:在卷积模块空闲的状态下将特征图缓存模块和权重缓存模块的数据加载到卷积模块进行卷积操作。将不同卷积核位置0的数据块所组成的矩阵分别对特征图位置0~15的数据块进行乘累加操作。然后再将卷积核的数据块换成位置1的数据块所组成的矩阵别对特征图位置0~15的数据块进行乘累加操作。以此类推将卷积核所有位置的数据块完成上述乘累加操作得出卷积后的特征图。
步骤E:将步骤C中得到的卷积后的特征图加上偏置缓存模块中对应的偏置,然后对特征图进行Batch Normalization处理,即对特征图减去一个特定的偏置再乘以一个特定的系数。然后再进行Relu激活操作后将处理后的数据通过仲裁转换模块存储到储存器中。
步骤F:将步骤E中产生的特征图通过仲裁转换模块从存储器中按批次通过AXI4总线传输到池化模块进行最大或平均池化操作。在进行池化操作时先对手骨特征图进行横向池化,然后再进行纵向池化,最后将计算结果的特征手骨图传输到存储器中预先分配好的地址空间中去。
步骤G:通过控制模块的有序调度多次执行步骤C~F来完成整个卷积神经网络对待测手骨图像的计算。
步骤H:当所有卷积神经网络所有层计算完毕后在ARM端进行全连接层计算和Softmax分类后得出受检者的手骨年龄,其中分类标签为240个类,即代表1到240个月的骨龄。
在本发明的描述中,需要理解的是,术语“同轴”、“底部”、“一端”、“顶部”、“中部”、“另一端”、“上”、“一侧”、“顶部”、“内”、“外”、“前部”、“中央”、“两端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
关于骨龄评估系统的具体限定可以参见上文中对于骨龄评估方法的限定,在此不再赘述。上述骨龄评估系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在本发明中,除非另有明确的规定和限定,术语“安装”、“设置”、“连接”、“固定”、“旋转”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (10)

1.一种基于可编程逻辑门阵列的骨龄评估方法,其特征在于,包括:
获取手骨图像并对其进行预处理;
分批次从可编程逻辑门阵列中的存储器调用训练完成的卷积神经网络的权重参数,并基于所述权重参数将所述手骨图像进行卷积处理;
对应批次从所述存储器调用训练完成的卷积神经网络的偏置参数,并对卷积处理后的特征图进行偏置处理;
将每个卷积层中的所有批次的手骨图像偏置处理完成后,对当前卷积层的手骨特征图进行归一化处理和激活处理;
将激活处理后的手骨特征图通过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.一种基于可编程逻辑门阵列的骨龄评估系统,其特征在于,所述系统搭载于所述可编程逻辑门阵列中,包括:
输入模块,用于输入手骨图像并对其进行预处理;
缓存模块,用于缓存预处理后的手骨图像、手骨特征图以及卷积神经网络的权重参数和偏置参数;
卷积模块,用于对缓存的手骨图像进行卷积处理;
归一化模块,用于对卷积完成的手骨特征图进行归一化处理;
激活模块,用于对归一化处理后的手骨特征图进行激活;
池化模块,用于对激活后的手骨特征图进行池化处理;
仲裁转换模块,用于对各个模块对存储器需求的轮询仲裁;
存储器,用于存储训练完成的卷积神经网络的权重参数和偏置参数以及手骨特征图;
输出模块,用于对池化操作后的手骨特征图分类后,输出手骨图像的骨龄评估结果;
控制模块,用于对各个模块进行控制调用。
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运算来完成骨龄评估。
CN202110582950.XA 2021-05-27 2021-05-27 一种基于可编程逻辑门阵列的骨龄评估方法及系统 Active CN113362292B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110582950.XA CN113362292B (zh) 2021-05-27 2021-05-27 一种基于可编程逻辑门阵列的骨龄评估方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110582950.XA CN113362292B (zh) 2021-05-27 2021-05-27 一种基于可编程逻辑门阵列的骨龄评估方法及系统

Publications (2)

Publication Number Publication Date
CN113362292A true CN113362292A (zh) 2021-09-07
CN113362292B CN113362292B (zh) 2023-04-28

Family

ID=77527799

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110582950.XA Active CN113362292B (zh) 2021-05-27 2021-05-27 一种基于可编程逻辑门阵列的骨龄评估方法及系统

Country Status (1)

Country Link
CN (1) CN113362292B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116630709A (zh) * 2023-05-25 2023-08-22 中国科学院空天信息创新研究院 可配置混合卷积神经网络的高光谱图像分类装置及方法

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108968991A (zh) * 2018-05-08 2018-12-11 平安科技(深圳)有限公司 手骨x光片骨龄评估方法、装置、计算机设备和存储介质
CN109032781A (zh) * 2018-07-13 2018-12-18 重庆邮电大学 一种卷积神经网络算法的fpga并行系统
CN110097174A (zh) * 2019-04-22 2019-08-06 西安交通大学 基于fpga和行输出优先的卷积神经网络实现方法、系统及装置
CN110555846A (zh) * 2019-10-13 2019-12-10 浙江德尚韵兴医疗科技有限公司 基于卷积神经网络的全自动骨龄评定方法
CN110660484A (zh) * 2019-08-01 2020-01-07 平安科技(深圳)有限公司 骨龄预测方法、装置、介质及电子设备
CN110880038A (zh) * 2019-11-29 2020-03-13 中国科学院自动化研究所 基于fpga的加速卷积计算的系统、卷积神经网络
US20200117978A1 (en) * 2018-10-12 2020-04-16 Alibaba Group Holding Limited Systems and methods for efficiently mapping neural networks to programmable logic devices
US20200151088A1 (en) * 2018-11-14 2020-05-14 The Mathworks, Inc. Systems and methods for configuring programmable logic devices for deep learning networks
CN111161254A (zh) * 2019-12-31 2020-05-15 上海体育科学研究所 一种骨龄预测方法
CN111178518A (zh) * 2019-12-24 2020-05-19 杭州电子科技大学 一种基于fpga的软硬件协同的加速方法
CN111353586A (zh) * 2020-02-23 2020-06-30 苏州浪潮智能科技有限公司 一种基于fpga实现cnn加速的系统
CN111488983A (zh) * 2020-03-24 2020-08-04 哈尔滨工业大学 一种基于fpga的轻量级cnn模型计算加速器
US20210142477A1 (en) * 2018-08-01 2021-05-13 China Medical University Hospital Bone Age Assessment And Height Prediction Model, System Thereof And Prediction Method Thereof

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108968991A (zh) * 2018-05-08 2018-12-11 平安科技(深圳)有限公司 手骨x光片骨龄评估方法、装置、计算机设备和存储介质
CN109032781A (zh) * 2018-07-13 2018-12-18 重庆邮电大学 一种卷积神经网络算法的fpga并行系统
US20210142477A1 (en) * 2018-08-01 2021-05-13 China Medical University Hospital Bone Age Assessment And Height Prediction Model, System Thereof And Prediction Method Thereof
US20200117978A1 (en) * 2018-10-12 2020-04-16 Alibaba Group Holding Limited Systems and methods for efficiently mapping neural networks to programmable logic devices
US20200151088A1 (en) * 2018-11-14 2020-05-14 The Mathworks, Inc. Systems and methods for configuring programmable logic devices for deep learning networks
CN110097174A (zh) * 2019-04-22 2019-08-06 西安交通大学 基于fpga和行输出优先的卷积神经网络实现方法、系统及装置
CN110660484A (zh) * 2019-08-01 2020-01-07 平安科技(深圳)有限公司 骨龄预测方法、装置、介质及电子设备
CN110555846A (zh) * 2019-10-13 2019-12-10 浙江德尚韵兴医疗科技有限公司 基于卷积神经网络的全自动骨龄评定方法
CN110880038A (zh) * 2019-11-29 2020-03-13 中国科学院自动化研究所 基于fpga的加速卷积计算的系统、卷积神经网络
CN111178518A (zh) * 2019-12-24 2020-05-19 杭州电子科技大学 一种基于fpga的软硬件协同的加速方法
CN111161254A (zh) * 2019-12-31 2020-05-15 上海体育科学研究所 一种骨龄预测方法
CN111353586A (zh) * 2020-02-23 2020-06-30 苏州浪潮智能科技有限公司 一种基于fpga实现cnn加速的系统
CN111488983A (zh) * 2020-03-24 2020-08-04 哈尔滨工业大学 一种基于fpga的轻量级cnn模型计算加速器

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
李睿;张世杰;黄奥云;陈虎;: "基于深度学习的青少年手腕骨骨龄评价" *
步小康: "基于FPGA的卷积神经网络图像分类算法硬件加速电路设计与实现", 《中国优秀硕士学位论文全文数据库电子期刊》 *
白洁;张金松;刘倩宇;: "基于卷积网络特征迁移的小样本物体图像识别" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116630709A (zh) * 2023-05-25 2023-08-22 中国科学院空天信息创新研究院 可配置混合卷积神经网络的高光谱图像分类装置及方法
CN116630709B (zh) * 2023-05-25 2024-01-09 中国科学院空天信息创新研究院 可配置混合卷积神经网络的高光谱图像分类装置及方法

Also Published As

Publication number Publication date
CN113362292B (zh) 2023-04-28

Similar Documents

Publication Publication Date Title
US20180189643A1 (en) Convolution circuit, application processor including the same, and operating method thereof
CN112291793B (zh) 网络接入设备的资源分配方法和装置
JP2020523711A (ja) 医療報告書の生成方法および装置
CN112529146B (zh) 神经网络模型训练的方法和装置
CN112163601B (zh) 图像分类方法、系统、计算机设备及存储介质
CN114356223B (zh) 存储器的访问方法及装置、芯片、电子设备
US10733498B1 (en) Parametric mathematical function approximation in integrated circuits
CN111047008A (zh) 一种卷积神经网络加速器及加速方法
CN113362292A (zh) 一种基于可编程逻辑门阵列的骨龄评估方法及系统
CN110930443A (zh) 图像配准方法、装置及终端设备
US20230052327A1 (en) Creating digital twins at scale
WO2023142781A1 (zh) 图像三维重建方法、装置、电子设备及存储介质
CN117616424A (zh) 用于平衡权重中的稀疏性以用于加速深度神经网络的系统和方法
CN1206598C (zh) 基于pc机的医学超声成像系统
CN108615074A (zh) 基于压缩感知的神经网络处理系统及方法
US11423313B1 (en) Configurable function approximation based on switching mapping table content
US20210019602A1 (en) Using and training cellular neural network integrated circuit having multiple convolution layers of duplicate weights in performing artificial intelligence tasks
CN108231164B (zh) 一种图像处理方法、装置及系统
CN110413540A (zh) 一种fpga数据缓存的方法、系统、设备及存储介质
CN105677587A (zh) 一种医学成像设备数据的存储方法和装置
CN115454608A (zh) 基于权值散度和更新增量的联邦学习客户端调度方法
US20230326199A1 (en) Image recognition method and apparatus based on systolic array, and medium
CN107145745A (zh) 电子病历信息采集方法
CN114093463A (zh) 图像处理的系统和方法
CN116501904B (zh) 分布式存储方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant