当前位置:首页 期刊杂志

基于SSM框架的糖尿病性视网膜病变检测管理系统的设计与实现

时间:2024-05-04

龙坡 何晶

摘要:为提高医生对于糖尿病性视网膜病变的诊断效率,方便医生高效管理诊断信息等相关数据,减少病人等待的时间,文章基于项目组前期糖尿病视网膜病变检测算法研究成果,采用目前流行的Spring+SpringBoot+MyBatis+Tensorflow框架,设计了一套糖尿病性视网膜病变的检测管理系统。诊断时调用预制模型进行在线预测,将检测结果反馈给医生信息管理和病人信息处理等功能,最终为眼科医生诊断眼底图片提供更便利的流程,降低病人的等待时间,为病人提供更好的治疗体验。

关键词:SSM;管理系统;信息处理;医学诊断

中图分类号:TP391        文献标识码:A

文章编号:1009-3044(2022)25-0053-04

开放科学(资源服务) 标识码(OSID) :

1 引言

近年来深度学习的快速发展带来了一系列应用落地使用,各行各业的人们在不知不觉中享受着深度学习带来的便利,其中不乏医疗影像领域的应用,为医生的诊断效率和病人的健康带来了巨大的帮助。基于深度学习的糖尿病性视网膜图像分类算法能够快速准确地识别糖尿病患者的眼底图像是否病变,为医生的诊断提供科学有力的依据。因此有必要为医疗人员开发准确快速地检测糖尿病人眼底图片的系统。该系统采用目前流行的Spring + SpringBoot + MyBatis + Tensorflow框架[1]。诊断时调用项目組前期研发的图像分类模型进行在线预测,充分利用深度学习的优势,能够准确快速地预测所拍摄糖尿病患者的眼底图片是否病变,为眼科医生提供参考。同时该检测系统中也加入了医生信息管理和处理病人信息等功能,最终为眼科医生诊断眼底图片提供更便利的流程,降低病人的等待时间,为病人提供更好的治疗体验[2]。本章将从系统架构设计、系统数据库设计、系统模块实现和系统测试共四个方面来详细地介绍该检测系统。

2 系统架构设计

本文设计的糖尿病性视网膜病变检测系统由四个核心模块组成,分别是医生信息管理、病人信息管理、病例信息管理和检测信息管理。系统功能结构图如图1所示。

本系统将实验训练的最优深度学习CNN模型用于糖尿病患者的眼底图像检测,其识别系统流程图如图2所示:

如图1和图2所示,本文设计的糖尿病性视网膜病变检测系统共由医生信息管理、病人信息管理、病例信息管理和检测信息管理四个核心模块组成。医生信息管理实现的功能主要是负责对眼科医生信息的管理,主要有医生账号登录、查看医生信息和修改医生个人基本信息,以及对密码进行修改等功能,让眼科医生可以保护个人的重要信息;病人信息管理主要负责病人信息的管理,主要有对糖尿病人进行登记患者信息、查看患者信息、修改患者信息等功能;病例信息管理主要对诊断信息进行管理,实现的功能主要是在系统中登记前来看病的糖尿病患者的眼球诊断信息,因为算法是对病变结果进行预测,所以医生可以根据诊断结果进行相应的操作,比如删除、修改、查看病例信息等功能,每次诊断都可以实时地为眼科医生提供诊断参考;眼底图片检测信息管理的主要功能是管理糖尿病人眼底图片的检测信息。在通过医院专业的医疗设备拍摄糖尿病患者的眼底图片后,可以通过该系统的简易UI界面上传眼底图像,然后调用诊断算法可以检测眼底图像是否发生了糖尿病性视网膜病变以及病变的类型,同时将检测信息保存至数据库,系统则通过视图层(UI界面) 显示检测结果。以上模块均基于医院正常的眼科医生诊断流程开发设计,尽可能地优化眼科医生的诊断效率。

3 系统数据库设计

本文设计的系统使用的开源数据库MySQL,其版本为5.7.20,同时在SQL语言的设计上兼容Oracle、SQLServer等其他关系型数据库。在系统中共设计了医生信息表、病人信息表、病人病例信息表、图像检测信息表共四张表,医生信息表主要包含医生的个人基本信息,如:姓名、手机号、邮箱、年龄以及其登录密码等字段,详细结构如表1所示,病人信息表主要包含的是病人的个人信息,如:病人姓名、年龄、性别等字段,详细结构如表2所示,病人病例信息表和眼底图像检测信息表也是包含相关信息,详细结构如表3和表4所示:

数据库的设计尽可能地考虑了眼科医生的诊断流程和病人的看病流程,完成了从眼科医生登录系统到把糖尿病患者信息和检测结果等录入系统的过程,可以为眼科医生和糖尿病患者提供较为方便的诊断流程。缩短眼科医生的诊断过程以及患者的等待时间。

4 眼底图像检测系统实现

本文的眼底图像检测系统使用了Java+Python语言进行开发,采用了当前较为流行的Spring、SpringBoot、MyBatis和Tensorflow框架,数据库设计部分已在上文介绍,服务器采用的为开源服务器Tomcat8.5,算法部分用Python和Tensorflow框架实现,由于该系统为个人开发实现,没有使用版本控制工具,在开发完成后在本地和服务器端均进行了部署测试[3],以下是对本系统的四个重要模块的介绍。

4.1 医生信息管理模块

该模块主要实现眼科医生对个人基本信息的管理,主要有更改个人信息和密码等功能,主要界面如图3所示。具体操作流程如下:

1) 个人信息管理:医生可以查看自己的个人信息以及更改个人信息,通过点击修改可以完成对医生个人信息的修改;

2) 安全管理:安全管理主要实现修改密码的功能,通过输入原始密码和新密码可以完成更换密码的过程。

4.2 病人信息管理模块

该模块的基本功能是医生在看诊时完成对糖尿病病人的信息管理,所有操作的实现基于对MySQL数据库的增删改查,详细的操作流程如下:

1) 查看病人信息:系统可以展示所有糖尿病人的信息,也可以通过搜索框查找指定的病人信息,查询通过SQL语句中的模糊查询进行匹配,在视图层返回查询结果;

2) 增加病人实例:系统可以通过增加新的病人实例,在系统中录入新的糖尿病人的信息;

3) 修改糖尿病人信息:当眼科医生录入患者信息错误或者需要修改患者信息时,可以點击修改按钮对该信息进行修改。

4.3 病历信息管理模块

该模块的基本功能是完成医生每次对糖尿病患者的诊断,具体操作流程如下:

1) 添加病例:在诊断完成后,眼科医生可以通过点击新建病例对系统录入本次的诊断信息;

2) 查询病例:类似于病人信息管理模块,系统在视图层展示了所有的病例信息,同时医生也可以通过搜索框查找指定的病例信息;

3) 修改病例信息:此处也类似于病人信息管理模块,可以对指定信息进行删除。

4.4 检测信息管理模块

该模块主要对糖尿病人的眼底图像进行检测,具体操作流程如下:

1) 眼底图像检测:眼科医生可以通过点击检测图像按钮上传眼底图像到系统,获取检测结果;

2) 查询眼底图像检测信息:类似于之前的查询方法,在输入框中输入指定信息后,可以返回相关检测信息。

因为本糖尿病眼底图像检测系统所采用的开发语言是Java,而检测算法通过Python语言实现,所以本系统采用通过Runtime.getRuntime()开启进程来执行Python脚本文件的方法完成眼底图片的检测过程,其中Python脚本文件包含了眼底图片的分类算法,这种调用方式在该系统的实验测试过程中,计算上客户端将图片上传到服务器的网络传输过程,整个检测过程需要花费4~5秒的时间,具体根据带宽、服务器配置等条件差异可能检测耗时有所不同。眼科医生根据系统检测的结果,可以作为给糖尿病患者诊断的参考,提高诊断速度。

5 系统功能和性能测试

5.1 系统功能测试

功能测试是根据用户基本需求描述对系统子模块以及集成模块进行测试,保证设计出来的软件可以稳定地运行,可以提高用户体验,让用户对设计出来的系统满意度更高。

本文中采用黑盒测试[4],它不同于白盒测试,侧重软件的功能性需求,可以辅助白盒测试,通过黑盒测试,可以发现一些其他类型的错误。

测试用例设计方法常见的有几种:边界值分析方法、因果图方法、等价类划分方法、错误推测方法、正交实验设计方法等。

本文中主要针对系统功能测试用例,测试的业务流程为眼底图片预测,预期的结果是返回预测结果,测试结果为执行成功,返回了糖尿病性视网膜病变的类型为预测结果。

5.2 系统性能测试

本文中性能测试是通过相应的测试工具模拟正式场景,测试正式场景下系统是否能够满足业务要求。常见的性能测试方法有如下几种:并发测试、基准测试、负载测试等[5]。一般来说,性能是一种重要指标,它表明本文设计的系统对于及时性要求的契合程度,人们往往通过时间来衡量系统的性能,本文中采用Load Runner测试工具,这是一种可以预测系统行为和性能的负载测试工具,可以通过对n名用户的模拟,实施并发负载以及实时性能检测的方式寻找和发现当前系统存在的问题,通过测试,本文的检测系统的响应时间为8ms,在并发用户为500时仍然可以维持正常工作。

6 结束语

本章主要介绍了基于深度学习模型的糖尿病性视网膜病变检测系统的设计过程,首先介绍了该糖尿病性视网膜病变检测系统的总体架构设计,并以图形化的方式展示了架构设计和糖尿病性视网膜病变的检测流程;然后介绍了该系统的数据库中各个关系表的设计,详细字段信息以表格的方式展示;之后介绍了系统了四个主要模块,并展示了它们的主要功能和运行时的截图以及给出了简单的眼科医生操作指南;最后介绍了基于深度学习模型实现的糖尿病性视网膜病变诊断算法并对系统进行了相应的系统功能和性能测试,测试结果证明,本文设计的基于深度学习的糖尿病性视网膜病变检测系统检测病变耗时较短且系统较为稳定、界面简洁方便,可以让眼科医生对糖尿病人诊断时使用,具有一定的实用价值。

参考文献:

[1] 李春生,李朝霞,刘涛,等.基于SSM的科研室管理系统的研究与设计[J].计算机技术与发展,2021,31(12):148-154.

[2] 夏芳.探讨优化住院医保登记流程的意义[J].现代经济信息,2019(12):112.

[3] 周新邵,曾强,张莉.基于B/S结构的学生公寓管理信息系统的设计与实现[J].电脑知识与技术,2016,12(25):9-10.

[4] 向润.黑盒测试方法探讨[J].软件导刊,2009,8(1):33-35.

[5] 刘忠朝,苗放,程承旗,等.软件工程中并发测试的研究与实践[J].物探化探计算技术,2003,25(2):178-182.

【通联编辑:王力】

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!