骨骼年龄作为生物学年龄, 骨龄的预测在众多领域具有重要意义. 在未成年生长发育诊断中, 骨龄预测是研究青少年女性初潮、儿童基因生长障碍的一种常用方法[1]; 在竞技赛事中, 骨龄作为最权威的评价指标, 常用来甄别运动员年龄以辅助选拔[2]; 在刑侦案件中, 骨龄预测是法医学年龄鉴定工作的主要方法[3]; 在考古领域中, 骨龄预测对种族、生活环境、面貌复原等的研究具有重要借鉴意义[4]; 目前国内医学影像专业医师缺口巨大, 医学影像误诊漏诊率偏高, 诊断速度有限, 因此, 建立一个能够智能化精准预测骨龄的分类器具有十分重要的意义.
传统骨龄预测方式主要依赖于人工对手骨X光片的解读, 专家通过人为观察非惯用手(常为左手)部位的X光片得出个体骨龄, 由于已形成较为统一的标准, 且非惯用手部的不同骨龄骨骼结构差别及生长规律差异较大, 便于观察区分, 因此在骨龄预测领域上常对人体手骨进行分析. 目前骨龄的人工预测方法有计数法、图谱法[5]和计分法[6]. 传统计数法误差大, 并易对人体产生损害; G-P (Greulich and Pyle)图谱法规范且精度高, 但需要复杂的专业知识及人力储备; TW (Tanner and Whitehouse)计分法具有明确的量化概念, 准确度高, 可重复性较强, 但缺点是需要掌握相关知识及进行繁琐的操作, 人工预测的方法耗时普遍较长.
近年来自动化骨龄检测也有较大发展. Seok等人[7]于2016年提出一种决策规划评估方法, 在135张未公布年龄的手骨X射线图像非公开数据集上评估得到骨龄均方差(mean square error, MSE)为0.19岁; Spampinato等人[8]于2017年提出的一种骨龄评估方法BoNet, 在0–18岁涵盖所有种族和性别的手骨X射线图像公共数据集上进行自动化骨龄评估, 得到骨龄MAE (平均绝对误差)为0.8岁.
上述G-P方法或TW方法中的参考值皆对手骨射线图像进行分割提取并计算出图像特征来评估骨龄, 然而将临床特征直接作为机器学习分析处理的对象大大限制了自动化骨龄预测的泛化能力. 传统的机器学习与深度学习的区别在于, 前者通过已有知识把原始数据预处理成各种特征, 然后对特征进行分类, 此分类效果依赖于特征的选取, 不能很好地表征样例本质, 导致训练效果欠佳; 后者通过多层网络结构进行表征学习(feature representation learning)和表征数据特征[9], 其比传统机器学习对数据特征的提取更准确.
此外, 在进行模型的训练及预测中, 医学骨骼图像的单通道、小对比度、复杂纹理、细粒度图像识别等特征有别于自然图像特征; 骨龄数据集的不公开及规模小; 针对特定性别或种族的骨质差异等问题都会影响骨龄预测的泛化能力, 因此针对上述人工或自动化骨龄预测方法存在的种种问题, 本文提出一种基于深度学习的手骨X射线骨龄分类器, 对骨龄预测精度提高的效果显著.
1 基于深度学习的骨龄预测方法深度卷积神经网络对图像识别性能更加优异, 近年来相继出现了AlexNet、VGGNet、GoogleNet、ResNet、MobileNet等深度网络结构, 其中轻量级网络MobileNet系列更具代表性. 该系列网络利用深度卷积构造, 可以平衡延迟和准确性之间的关系, 又引入了倒残差结构, 可以适应不同尺寸的图像并在低精度计算下具有更强的鲁棒性, 该网络结构与其他常用分类模型相比, 拥有更优秀的计算性能. MobileNetV3为该系列最新网络结构, 由Howard等人[10]于2019年提出, 该网络增添了互补搜索技术组合, 通过硬件架构搜索(NAS)与NetAdapt相结合的方式, 开展了网络设计和自动搜索算法在互补利用方面的研究以用来提高整体技术水平, 较前代相比拥有更强大的计算能力. 表1列出了5种较流行的深度学习网络模型, 可以看出MobileNet系列网络的准确率大都高于的其他网络, Top-1错误率大都低于其他网络, 需求参数(parameters)和多层叠加(mult-adds) (除SqueezeNet)均小于其他网络, 同时轻量级的神经网络为可移动智能骨龄预测奠定基础, 因此本文将MobileNetV3作为基础网络用于构建骨龄分类器.
1.1 旋转不变LBP纹理增强处理层
对骨龄的预测应用上, 基于深度学习的自动骨龄预测仍面临很大的挑战, 手骨X光图像与卷积神经网络通常处理的自然图像有着很大区别, 对手骨X光片的纹理特征提取及增强有利于深度学习的网络模型使用更少的特征数据来更集中的表征全图特征, 剔除无效特征信息, 减少无关特征干扰, 从而提升训练、测试的准确率. 旋转不变LBP纹理增强处理层的引入, 可以摆脱一些如平移不变性的假设在骨龄数据集中不再满足等难点; 同时还可解决手骨X光图像的辨识特征仅体现在局部的纹理差异、特征粒度较为细化, 导致模型获取这些细粒度特征并分类的难度较大等难点[11].
LBP (local binary pattern, 局部二值模式)是用于提取全局图像的局部纹理特征, 增强区域纹理特征以加深后期网络注意力机制的训练效果, 并缩减整个图片像素的值, 使训练、预测速度加快.
利用LBP算子对手骨X光片进行阈值处理, 以每3×3网格的窗口中心像素为阈值, 把相邻网格的像素值与其对比, 若中心像素值较大, 则标记为0, 反之为1, 得到的8位二进制数即窗口中心像素点的LBP值, 此为该区域的纹理特征信息, 如图1所示.
对手骨X光片纹理特征信息进行直方图转化:
$\begin{split} {\left(01111100\right)}_{2}&=124 \\ LBP\left( {{x_c}{\rm{, }}{y_c}} \right) &= \sum\nolimits_{P = 0}^{P - 1} {{2^p}s({i_p} - {i_c})} \end{split}$ | (1) |
其中,
$ s\left(x\right)=\left\{\begin{array}{l} 1,\; {\rm{if}}\;x\geqslant 0\\ 0,\;{\rm{else}}\end{array}\right. $ | (2) |
通过上述变换, 将手骨X光片图像可转换成具有相邻点之间差值关系的集合, 但原始LBP算子只涵盖中心与相邻共9个网格的像素值区域, 如果将上述涵盖区扩展到任意区域, 把正方形区域替换为半径为R的圆形区域, 就能满足在提取不同尺度纹理特征时拥有灰度不变性、旋转不变性的优势. 圆形LBP算子如图2所示, 其区域半径为R, 内含P个采样点.
对比图2, 可以看出当P=8, R=1时, 圆形LBP与原始LBP一致, 在P=16, R=2时, 圆形边界上的点可能不是整数或正好落在某个像素格子内, 或位于交界处, 因此使用双线性插值法来计算该点的像素值. 圆形LBP算子的计算公式如下:
$ \left\{ {\begin{split} {X}_{P}={X}_{c}+R{\rm{cos}}\left(\frac{2\pi p}{P}\right)\\ {Y}_{P}={Y}_{c}+R{\rm{sin}}\left(\frac{2\pi p}{P}\right)\end{split}} \right. $ | (3) |
其中, R表示采样半径, P表示第P个采样点, p表示采样数目,
经过LBP与圆形LBP算子处理可以得到图片灰度不变性与多尺度纹理特征稳定性这些特点, 为了摆脱因图像旋转而得到的不同LBP值影响纹理特征的读取要求, 还需要加入旋转不变性因子, 即不断旋转圆形邻域得到一系列初始定义的LBP值, 取其最小值作为该邻域的LBP值, 对LBP的结果进行二进制编码, 并做循环位移, 取所有结果中最小的值, 公式如下:
$ LB{P}_{P\text{, }R}^{rot}={\rm{min}}\left\{ROR(LB{P}_{P\text{, }R}\text{, }i)\left|i\right.\right.=0\text{, }\cdots \text{, }\left.P-1\right\} $ | (4) |
依据上述方法, 本文对原始数据集RSNA进行纹理特征的提取并分别进行LBP (LBP-RSNA_bone)增强、圆形LBP (circular_LBP-RSNA_bone)增强、旋转不变LBP (rotation_invariant_LBP-RSNA_bone)增强处理, 得到手骨X光片纹理特征, 如图3所示. 可以看出对手骨X光片进行纹理增强处理后的纹理特征清晰可见, 以此使用更少的数据量来更好的表征图像的全局信息, 从而加快运算速度与更好的配合下文的深度学习注意力机制进行验证.
1.2 引入注意力机制的轻量级网络模型设计为了实现全智能化识别手骨X光片的信息, 本文根据TW计分法在1972年正式定制TW2标准, 引入一种自动框选感兴趣区域的注意力机制, 该标准包含骨骺、骨骺端、骨干等20个感兴趣区域[6], 引入该注意力机制的改进网络依据此标准, 根据其图像的特征, 进行自动搜索特定区域, 将资源分配倾向于更为关键的特征. 在不同维度对图像及隐藏层中特征映射进行注意力聚焦, 首先对原始输入图像进行逐层的空间区域学习, 输出若干个具有辨识能力的子区域, 再将子区域反馈进多个辨识卷积网络中, 对子区域内的特征分配注意力取得更好的分类, 使区域选择得到优化.
引入注意力机制的卷积神经网络模型如图4所示, 其主要包含空间网络变压器[12]和多个识别网络.
1)空间网络变压器, 其作为一种空间注意力机制输出多个子区域, 其将特征映射作为输入, 输出更加具有辨识能力的特征映射. 空间网络变压器作用于输入图像, 在输入图像中学习到若干信息密集的子区域, 对于手骨X光片, 该操作给输入高分辨率图像提供支持, 在该类图像中截取出适中分辨率子图, 这相当于将原图像在骨龄评定关键部位放大, 局部信息可以更加清晰地展现, 从而提取表达能力更强的特征, 为后续识别网络的进一步处理提供基础.
2)识别网络, 其通过在特征映射后的隐藏层加入压缩激活块[13], 加入压缩激活块不改变网络输出的维度, 设网络架构中有N个识别网络, 每个网络输入一张手骨X光片子图像, 输出一个D维向量, 将所有网络的输出连结成一个N×D维向量, 输入到一个全连接层中, 之后由Softmax层输出最终骨龄值. 本实验中依据TW2计分法等对手骨骨龄预测建议的感兴趣区域, 对N和D分别设置为9和512. 识别网络对特征映射在通道维度进行特征再校准, 从而将模型注意力集中于信息密集的通道上, 压缩激活块使用了全局平均汇聚层和两层全连接层, 因此该结构中包含训练参数较少, 可以方便、高效的加入MobileNet系列网络架构中并引入较少的计算负担, 以满足轻量化的网络架构并提升网络的泛化效果.
1.3 骨龄预测分类器设计
基于MobileNetV3 Large网络结构, 设计具有可引入注意力机制和旋转不变LBP纹理增强处理层的模型RIL-MobileNetV3 Large, 在顶层引入纹理特征增强处理层, 即对原始数据集进行旋转不变LBP处理, 并于底层加入测试集输入的X光片旋转不变LBP处理层, 以便于验证的统一, 在池化层后引入本文设计好的自动框选感兴趣区域的注意力机制, 设计的骨龄预测分类器如图5所示.
为了避免过拟合, 将训练时间放大与缩小, 通过使平均绝对误差(MAE)最小化对分类器寻优, 利用optimizers. Adam优化器对网络进行训练; 构建分类器模型, 分配给每个骨龄不同类别, 在数据集中, 骨龄是以月份表示的, 因此本文截取1–228月骨龄的数据集, 以12个月为一岁, 共取19类, 即0–18岁, 故倒数第二层变成具有19个输出概率的Softmax层, 该层输出概率的向量, 其中每一类的概率都在范围[0, 1]中取值, 最后一层概率向量乘以不同骨龄的向量[1, 2, 3, …, 19], 由此, 模型输出骨龄的单个预测值.
1.4 评价指标对于骨龄数值回归预测结果, 本文采用MAE和accuracy (准确率)作为综合评价指标, 其中当预测值与真实值完全吻合, 即MAE为0时为完美模型, MAE越小, 说明预测精度越高, 计算公式如下:
$ MAE = \frac{1}{N}\left( {\sum\nolimits_{i = 1}^N {{\rm{|}}{y_{\rm{true}}} - {y_{\rm{pred}}}} |} \right) $ | (5) |
其中, N表示样本数,
2 实验验证与结果分析 2.1 数据集
研究采用北美放射学会举办的骨龄挑战赛公开数据集RSNA, 其包含12611个训练图像, 1425个验证图像和200个测试图像, 大多为1–228月的骨龄X光片数据集, 显而易见测试集过小, 且开发阶段验证集、测试集标签混乱, 为使其对骨龄预测的强针对性训练与扩大测试集, 本实验按照原始数据集csv文件截取训练集前1376张图片作为测试集, 其余图片为训练集; 为了防止标签混乱导致的训练及测试精度降低, 以便于骨龄的预测标准化, 本文依据原始csv文件骨龄编号按12个月为一岁依次归为19类csv文件, 分别对测试集、训练集图像按新编csv文件归为0–18岁共计19类, 并进行后续训练预测实验.
2.2 数据处理为验证本文对手骨X光片的骨龄预测可以使用更少的数据量来最好的表征图像特征, 以此加快运算速度与高效配合注意力机制, 对原始数据集进行纹理特征的提取并分别按顺序进行LBP、圆形LBP、旋转不变LBP纹理增强处理, 得到包含清晰纹理信息的L-RSNA、CL-RSNA、RIL-RSNA数据集.
2.3 实验平台本实验搭建于x64处理器的Windows 10操作系统, 实验仿真环境采用谷歌开发的TensorFlow 2.1.0框架, 以Python 3.7作为编程语言, PyCharm 2019.3.3为编辑器, CPU 使用Intel(R)Core(TM)i7-9750H, GPU使用Inter(R)UHD Graphics 630, 运行内存为8 GB, 所有程序通过以TensorFlow为后端的开源框架Keras及其Python接口实现.
2.4 训练策略实验采用改进模型RIL-MobileNetV3 Large进行训练, 在增强后的RIL-RSNA数据集上分别进行了20、30、40、50、80和120轮训练, 每次喂入分类器8张图片, 类别数为19, 初始学习率为0.0001并逐步调优, 训练图像采用三通道, 并调整图片的宽高皆为224. 设置缩放因子1/255以增强模型泛化能力, 并配置optimizers.Adam优化器, 结合fit_generator训练方式进行训练以节约内存, 最后计算骨龄预测值和骨龄真实值Accuracy作为模型输出, 并结合在测试集上计算的MAE值, 综合判断分类器性能.
2.5 结果分析将新编好的原图数据集RSNA、LBP纹理增强处理数据集L-RSNA、圆形LBP纹理增强处理数据集CL-RSNA、旋转不变LBP纹理增强处理数据集RIL-RSNA分别在引入自动框选感兴趣区域注意力机制的MobileNetV3 Large网络中训练50轮, 将训练结果进行对比, 实验结果如表2所示.
由表2可知, 用纹理增强处理后的数据集进行训练, 较原数据集的预测误差下降较多, 其中旋转不变LBP处理对骨龄预测误差下降最大, 说明端对端逐层监督式学习方法受原始图片背景中无关信息影响较大, 经手骨纹理增强处理后, 可以用更少的数据量来更精确的表征图像信息, 从而扩大训练准确率, 并缩小平均绝对误差MAE, 由此可知引入旋转不变LBP纹理增强层具有提高训练准确率与缩小平均误差的显著作用.
在采用引入自动框选感兴趣区域注意力机制和旋转不变LBP纹理增强层的RIL-MobileNetV3 Large网络进行骨龄预测过程中, 神经网络权值变化基于损失梯度的调整, 而学习率控制神经网络权值的变化速度, 为取得最优学习率, 本文在不同学习率及多次训练轮数下进行实验, 所得结果如图6所示, 当进行40轮训练, 学习率设为0.0001时, 梯度增幅变大, 收敛时间加快, 训练集准确率为91.80%, 损失率为23.41%; 当学习率设为0.0005时, 梯度增幅较小, 将会延长收敛时间, 故分别进行40、80轮训练, 80轮时训练集准确率较高为94.04%, 此时损失率为16.74%;
由图7可以看出, 当学习率设为0.00075时, 梯度增幅继续变小, 收敛时间继续延长, 故进行120轮训练, 训练集准确率为93.32%, 损失率为20.46%, 此时的准确率低于学习率为0.0005训练80轮时的准确率94.02%, 继续取学习率0.0001和0.00005进行训练时, 准确率曲线走势的收敛速度明显加快, 在训练80轮时得到的训练集曲线和测试集曲线基本粘合成一条, 此时的准确率为94.20%, 损失率为16.74%. 因此, 采用改进的RIL-MobileNetV3 Large网络在预测骨龄过程中, 学习率设为0.0001, 训练次数设为80, 此时可快速得到极佳的预测效果, 且使用测试集在该网络预测骨龄的MAE值为0.35岁, 表明可以达到非常低的平均预测误差.
2.6 预测精度对比
为验证本文提出改进RIL-MobileNetV3 Large网络的检测性能, 将其与基于深度学习的其他骨龄预测网络在同一数据集上进行对比, 对比试验结果如表3.
可以看出, 本文改进网络的MAE值较其他网络更低, accuracy值较其他网络更高, 由此可见, 在引入自动框选感兴趣区域注意力机制和旋转不变LBP纹理增强处理层的骨龄分类器能提取不同骨龄更具区分性的特征, 对骨龄预测准确度更高, 具有非常好的鲁棒性与泛化能力.
3 结论与展望针对手骨X光片数据集图像的单通道、小对比度、复杂纹理、细粒度图像识别等特征提取难, 导致影响骨龄预测准确度等问题, 提出了一种同时引入注意力机制和旋转不变LBP纹理增强处理层的改进模型, 作为骨龄预测分类器. 其基于轻量级神经网络MobileNet系列融合处理纹理特征的旋转不变LBP算子处理层, 通过处理层将手骨X光片数据集的纹理特征进行提取并增强, 使更细致纹理特征的手骨信息作为网络输入端, 减少无关特征影响, 提高训练的准确率; 同时又对卷积网络引入一种注意力机制, 在不借助任何先验信息的情况下, 把引入纹理增强处理层处理后的图像作为网络的输入, 再通过引入注意力机制的轻量级神经网络, 进行自动定位、学习提取处理后的手骨X光片图像中具有高识别能力的区域特征、深层特征并完成识别和分类. 最后通过在RSNA数据集上进行训练及预测, 结果表明该分类器较传统方法具有更高的骨龄预测精度. 消除了在临床环境中人工进行繁琐的数据集查找需求, 智能化的骨龄分类器提高骨龄预测精确度并大大节省了时间, 对青少年生长发育、刑侦案件、体育赛事、考古等领域的骨龄评估具有重要协助意义, 为建立标准化的可移动骨龄分类器, 推动实现便捷准确快速的智能化骨龄预测提供重要借鉴意义.
[1] |
刘洁琳, 刘杰. 骨龄评估系统发展综述. 生命科学仪器, 2017, 15(2): 9-13. |
[2] |
黄陈力子. 中国儿童青少年乒乓球分龄赛运动员骨龄检测状况的研究[硕士学位论文]. 北京: 北京体育大学, 2015.
|
[3] |
李蓝江, 李振辉. 影像学科在法医人类学中的应用. 放射学实践, 2018, 33(9): 979-982. |
[4] |
Park HW, Yoon HK, Han SB, et al. Brain MRI measurements at a term-equivalent age and their relationship to neurodevelopmental outcomes. AJNR American Journal of Neuroradiology, 2014, 35(3): 509-603. |
[5] |
Radiographic atlas of skeletal development of the hand and wrist: 2nd edition. California and Western Medicine, 1959, 91(1): 53.
|
[6] |
Hägg U, Taranger J. Skeletal stages of the hand and wrist as indicators of the pubertal growth spurt. Acta Odontologica, 1980, 38(3): 187-200. DOI:10.3109/00016358009004719 |
[7] |
Seok J, Kasa-Vubu J, DiPietro M, et al. Expert system for automated bone age determination. Expert Systems with Applications, 2016, 50: 75-88. DOI:10.1016/j.eswa.2015.12.011 |
[8] |
Spampinato C, Palazzo S, Giordano D, et al. Deep learning for automated skeletal bone age assessment in X-ray images. Medical Image Analysis, 2017, 36: 41-51. DOI:10.1016/j.media.2016.10.010 |
[9] |
Ohno H. Uniforming the dimensionality of data with neural networks for materials informatics. Applied Soft Computing, 2016, 46: 17-25. DOI:10.1016/j.asoc.2016.04.017 |
[10] |
Howard A, Sandler M, Chen B, et al. Searching for MobileNetV3. 2019 IEEE/CVF International Conference on Computer Vision (ICCV). Seoul: IEEE, 2019. 1314–1324.
|
[11] |
王景樟. 基于深度学习的骨龄自动评测系统的研究与实现[硕士学位论文]. 北京: 北京邮电大学, 2018.
|
[12] |
Jaderberg M, Simonyan K, Zisserman A, et al. Spatial transformer networks. Proceedings of the 28th International Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2015. 2017–2025.
|
[13] |
Hu J, Shen L, Albanie S, et al. Squeeze-and-excitation networks. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(8): 2011-2023. DOI:10.1109/TPAMI.2019.2913372 |
[14] |
Lee JH, Kim KG. Applying deep learning in medical images: The case of bone age estimation. Healthcare Informatics Research, 2018, 24(1): 86-92. DOI:10.4258/hir.2018.24.1.86 |
[15] |
周文祥. 基于X-ray图像的骨龄自动评估[硕士学位论文]. 成都: 电子科技大学, 2018.
|
[16] |
Thodberg HH, Kreiborg S, Juul A, et al. The BoneXpert method for automated determination of skeletal maturity. IEEE Transactions on Medical Imaging, 2009, 28(1): 52-66. DOI:10.1109/TMI.2008.926067 |
[17] |
曾冬冬. 基于TW2法和卷积神经网络的骨龄辅助评测技术[硕士学位论文]. 成都: 电子科技大学, 2019.
|
[18] |
傅贤君, 汪婵婵. 基于深度学习的骨龄评估方法研究. 电脑知识与技术, 2021, 17(12): 183-185. |
[19] |
王嘉庆, 梅礼晔, 张俊华. 基于深度学习的手骨X射线图像骨龄评估. 计算机工程, 2021, 47(1): 291-297. |
[20] |
管骏. 基于卷积神经网络的骨龄辅助评测技术. 科学技术创新, 2021(4): 53-55. DOI:10.3969/j.issn.1673-1328.2021.04.024 |