首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】基于深度学习的糖尿病视网膜病变检测方法、系统及设备_长春理工大学_202410612035.4 

申请/专利权人:长春理工大学

申请日:2024-05-17

公开(公告)日:2024-06-18

公开(公告)号:CN118212229A

主分类号:G06T7/00

分类号:G06T7/00;G06N3/0464;G06N3/08;G06T7/13;G06V10/764;G06V10/766;G06V10/776

优先权:

专利状态码:在审-公开

法律状态:2024.06.18#公开

摘要:本发明涉及一种基于深度学习的糖尿病视网膜病变检测方法、系统及设备,属于图像处理技术领域,解决了传统糖尿病视网膜病变识别存在的病变微小不易被识别、耗时长、效率低等问题。本发明采用改进的MaskR‑CNN网络模型对预处理后的图像进行四种病变的分割,该模型选用改进的ResNext101‑FPN作为主干网络,并在该主干网络的BottleNeck模块中加入注意力机制模块,以提升模型对不同通道之间特征关系的感知能力,同时在ResNext的最后一个阶段加入感受野注意力模块,有助于特征之间的信息交互和融合,并更好地捕捉特征之间的复杂关系,提升模型的感知能力和表达能力,从而进一步提高病变检测的效率和准确率。

主权项:1.一种基于深度学习的糖尿病视网膜病变检测方法,其特征在于,包括以下步骤:步骤一:以DDR数据集作为数据来源,构建眼底图像数据集,并对所述眼底图像数据集进行预处理;步骤二:搭建改进的MaskR-CNN网络,所述改进的MaskR-CNN网络包括主干网络模块、RPN网络模块、目标分类和边界框回归模块以及Mask分割模块;以改进的ResNext101-FPN作为模型的主干网络模块,所述主干网络模块进行特征提取的过程包括以下步骤:步骤1:导入detectron2目标检测库,并通过checkpoint_url指向加载ImageNet预训练的初始权重参数链接,从而初始化模型;步骤2:定义build_modelcfg,backbone构建ResNext网络模型,构建过程包括以下步骤:步骤2.1:构建stemnn.Module主干网络,初始化模型,首先通过7x7大小的卷积层,步长为2,填充为3,同时应用BatchNormalization归一化,得到特征图,再通过ReLU激活函数,最后采用F.max_pool2d函数对激活后的特征图进行3x3大小的最大池化;步骤2.2:构建主要由卷积块构成的BottleneckBlock,用于构建残差网络的瓶颈结构,首先通过一个1x1卷积后进行ReLu激活,再通过3x3卷积层,再通过第二个1x1卷积层得到输出,将输出通过ECA模块处理,具体步骤为:首先对特征图进行全局平均池化,再通过1x1卷积学习权重,最后对卷积输出进行sigmoid激活,获得注意力权重y.expand_asx,最后返回特征图乘以权重;最后将模块通过shortcut方式连接,对输出特征进行ReLu激活;步骤2.3:采用不同阶段的模块构建ResNext网络;首先初始化字典stem.stride[]用于存储阶段模块,分别为{"res2":1,"res3":2,"res4":3,"res5":4};利用for循环对提供阶段进行迭代,Resnet101四个阶段对应的是[3,4,23,3],其中,在最后一个阶段后,即"res5"结束后引入RFA感受野注意力模块,具体步骤为:将输入特征使用unfold进行展开,获取感受野空间特征,得到特征矩阵,通过get_weights学习通道权重,再采用rearrange对权重和特征进行形状变换,最后将加权后的特征图进行3x3的卷积操作,并通过BatchNorm和ReLU进行非线性处理;ResNext网络是在ResNet网络的基础上引入分组卷积的概念,设定ResNext网络分组卷积中的组数为32,每组内部通道数为8,每组分别进行独立卷积,卷积后再将输出拼接;步骤2.4:采用特征金字塔网络获得多尺度特征信息,首先通过ResNext101得到底部特征["res2","res3","res4","res5"],再通过侧边连接卷积层将高分辨率特征降采样得到中间特征,然后逐步上采样并对逐层得到的高分辨率特征采用fuse_type="sum"进行融合和输出卷积操作,得到最终的特征金字塔结构,最后output_shape输出特征信息;所述RPN网络模块生成候选目标区域的过程包括以下步骤:步骤1:将主干网络模块处理后得到的特征图features与真实的目标实例数据gt_instance送入RPN网络,主干网络模块处理后得到的特征图features用于进行边界框预测,真实的目标实例数据gt_instance用于在训练阶段计算损失;步骤2:构建区域建议网络RPN,并定义__init__,其中,in_channels表示输入特征的通道数;num_anchors表示针对每个空间位置预测的锚框数量;box_dim表示每个锚框box回归预测的数量;conv_dims表示整数列表,即N个卷积层的输出通道数;设置-1表示使用与输入通道数相同的输出通道数;定义RPN网络层,初始化3x3的卷积层self.conv,生成共享的隐藏状态,根据conv_dims中指定的通道数设置多个卷积层,其中self.objectness_logits定义为1x1卷积层,再经过sigmoid函数将其转化为0~1的概率值,概率值越接近1表示越有可能包含目标,用于判断预测目标是否包含在锚框中;self.anchor_deltas定义为1x1卷积层,用于预测候选框回归偏移量,最后输出维度为num_anchorsxbox_dim;所述目标分类和边界框回归模块进行目标分类和边界框回归的过程包括以下步骤:构造函数__init__,并接受输入参数:input_shape表示输入数据形状规格;conv_dims表示卷积层输出维度的整数列表;fc_dims表示全连接层输出维度的整数列表;conv_norm用于指定卷积层中的归一化方式;首先,通过遍历整数列表conv_dims,在每次迭代中构建一个卷积层,每个卷积层都具有指定的输出维度conv_dim,采用3x3的卷积核,并使用填充为1的方式进行卷积操作,用于提取特征;对卷积的结果应用ReLU激活函数,更新output_size输出维度;然后,通过遍历整数列表fc_dims,在每次迭代中构建一个全连接层,将提取特征转化为类别概率,用于目标分类以及边界框回归,在第一次迭代时,添加一个Flatten模块以展平数据,再将展平后的输入形状np.prodself._output_size转换为指定的输出维度fc_dim;接着,对全连接层的输出应用ReLU激活函数;最后,更新_output_size以反映当前全连接层的输出维度;所述Mask分割模块进行分割的过程包括以下步骤:接收参数:input_shape表示输入特征的形状;num_classes表示前景类别的数量;conv_dims表示卷积层输出维度的列表;conv_norm表示卷积层的归一化方式参数;构建网络结构:首先通过卷积层提取特征,对于卷积层使用了3x3的卷积核,步长为1,填充为1;接着采用ConvTranspose2d进行上采样操作,上采样的核大小为2x2,步长为2,填充为0;最后通过一个1x1的卷积层作为预测层,进行像素级别的实例分割Mask预测;步骤三:将预处理后的数据输入到改进的MaskR-CNN网络中训练模型,并对模型进行验证评估;步骤四:接收待检测眼底视网膜彩色图像,并将待检测眼底视网膜彩色图像输入训练好的模型中进行病变检测,得到病变分割的可视化预测结果。

全文数据:

权利要求:

百度查询: 长春理工大学 基于深度学习的糖尿病视网膜病变检测方法、系统及设备

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。