疟疾检测-Keras深度学习医学图像分析


计算机视觉在医疗领域的应用非常广泛,52CV曾有相关博文:

AI医疗 | 新开源计算机视觉技术用于新生儿胎龄估计

NIHCC发布迄今世界最大的CT医学影像数据集(附下载)

Kaggle新上比赛:胸部X光片肺炎检测

前天PyImageSearch博主Adrian Rosebrock发表博文展示了使用Keras库利用深度学习技术进行疟疾检测的流程,并取得了超过目前文献的最好方法,值得大家参考。(昨天52CV-医学影像群里还有一位同学说如何做医学图像方面的毕设,这篇文章真是及时雨啊)

文末附代码和数据库下载。

疟疾全球分布

疟疾是一种致命传染病,在全世界范围内每年造成超过40万的人死亡,下图展示了疟疾发病数量的全球分布图。红色代表高危地区。

由上图可知,疟疾最泛滥的地区在中非。而这也往往是世界经济欠发达地区,医疗条件和生活卫生环境堪忧。

疟疾的地理分布和以下因素强相关:

贫困程度、医疗条件、是否战争、政府是否腐败、传染媒介(蚊虫叮咬等)。

可知,在这些地区开展疟疾检测的技术手段不仅需要速度快还需要是低成本的(设备低廉而且要省电)。

目前疟疾检测的方法

目前临床医疗环境中对疟疾的诊断主要依赖两种方法。

一种是血液采样涂片,通过有经验的医生在显微镜下观察载玻片并手动计算感染的红细胞数,有时候医生需要数5000个细胞,这显然需要耗费大量的时间。

为了使疟疾检测更快,科学家和研究人员开发了快速诊断检测(RDT)的抗原检测

所使用设备如下所示:

虽然RDT明显快于细胞计数,但它的准确性也低得多。

新方法,深度学习自动检测

值得高兴的是,2018年,NIH提出了新的基于深度学习的疟疾检测方法,通过采集血液样本图像,将疟疾的检测建模为已感染、未感染的二分类问题,他们的论文名为《Pre-trained convolutional neural networks as feature extractors toward improved parasite detection in thin blood smear images》,使用了6个预训练模型。

这种方法取得了可观的检测精度(95.9%),但训练时间也很长,需要24个小时。

更大的问题是,这么多大型的预训练模型,实际使用时是极其耗时、耗电、耗内存的。在刚才我们看到的疟疾高发地区部署这样的系统依然面临挑战。

于是,作者的想法是,构建小型结构的CNN网络,在原始数据上重新训练,并期望达到相当的精度。

作者使用方法

Adrian Rosebrock通过构建残差CNN网络来实现疟疾检测。

其中一些细节包括:

1.数据集直接使用NIH发布的疟疾数据集,其共有27588幅图像,正负样本各13794幅图像(文末附下载)。

图像样本示例:

2.训练集:验证集:测试集的数量之比为:8:1:1。

3.训练迭代次数50次,batch size 设为32,初始学习率1e-1,动量0.9。

4.数据预处理阶段除了必要的归一化外还经过多种数据增广操作,包括:旋转、缩放、平移、镜像等。

5.输入图像resize到64*64大小(而NIH研究中使用的ImageNet预训练模型需要的大小)。

6.模型构建使用Keras构建残差网络(ResNet.build())

7.使用softmax分类模型。

使用Titan X GPU训练,经过50个epoch,共计54分钟的训练,模型精度达到:

  • 96.50% accuracy on 训练集

  • 96.78% accuracy on 验证集

  • 97% accuracy on 测试集

检测精度高于NIH的6个大型模型的方法!而模型大小仅17.7M!

原博文地址:

https://www.pyimagesearch.com/2018/12/03/deep-learning-and-medical-image-analysis-with-keras/

代码数据下载

(0)

相关推荐

  • 使用TensorFlow和OpenCV实现口罩检测

    重磅干货,第一时间送达 在这段艰难的疫情期间,我们决定建立一个非常简单和基本的卷积神经网络(CNN)模型,使用TensorFlow与Keras库和OpenCV来检测人们是否佩戴口罩. 图片来源于澳门图 ...

  • 10个预训练模型开始你的深度学习(计算机视觉部分)

    重磅干货,第一时间送达 作者:PRANAV DAR编译:ronghuaiyang导读对于希望学习算法或尝试现有框架的人来说,预训练的模型是一个很好的帮助.由于时间限制或计算资源的限制,不可能总是从头构 ...

  • 基于计算机视觉的棋盘图像识别

    重磅干货,第一时间送达 本期我们将一起学习如何使用计算机视觉技术识别棋子及其在棋盘上的位置 我们利用计算机视觉技术和卷积神经网络(CNN)为这个项目创建分类算法,并确定棋子在棋盘上的位置.最终的应用程 ...

  • GitHub上25个最受欢迎的开源机器学习库

    重磅干货,第一时间送达! 译者 | Shawn Lee 编辑 | Jane 来源 | AI科技大本营(ID: rgznai100) 在过去的几年里,机器学习为各行各业开创了新纪元,诞生了许多成功的案例 ...

  • Mask R

    原文链接 Mask R-CNN Keras 对象检测 对象分割 像素掩码 在 2019年7月16日 上张贴 由 hotdog发表 Mask R-CNN Keras 在本教程中,您将学习如何使用 Ker ...

  • 疟疾的诊断检测

    疟 疾 髋骨前后脊中间上缘,坐直时,环跳处的胆经路线上有压痛.

  • 基于OpencvCV的情绪检测

    重磅干货,第一时间送达 情绪检测或表情分类在深度学习领域中有着广泛的研究.使用相机和一些简单的代码我们就可以对情绪进行实时分类,这也是迈向高级人机交互的一步. 前言 本期我们将首先介绍如何使用Kera ...

  • 5个优秀的计算机视觉应用与相关数据集

    介绍 计算机视觉是数据科学世界中最热门的研究领域之一.而且,它已经成为我们个人生活的一部分.我们都知道或不知道地使用各种功能,这些功能在后端运行计算机视觉技术.例如,我们在智能手机中使用面部解锁.下图 ...

  • 传统视觉检测和深度学习检测的区别在哪里

    如今,工业自动化快速发展,工业4.0的概念已经被提上日程.在产品生产流水线上,对于产品的质量检测,许多企业也逐渐尝试用机器视觉代替人工肉眼进行检测,但时代瞬息万变,神经网络之深度学习这项技术的不断成熟 ...

  • 两种策略整合TCGA多组学进行数据挖掘(SNFtool包或者keras深度学习)

    大家都喜欢整合多组学数据,实际上目前大多数研究都是拿其中一种组学数据来对样本进行分类,然后查看病人分组后另外一种组学的差异情况.再其次,就是整合多组学数据对样本统一分组. 策略1的案例介绍 看到文章 ...

  • R语言KERAS深度学习CNN卷积神经网络分类识别手写数字图像数据(MNIST)

    原文链接:http://tecdat.cn/?p=23184 在本文中,我们将学习如何使用keras,用手写数字图像数据集(即MNIST)进行深度学习.本文的目的是为了让大家亲身体验并熟悉培训课程中的 ...

  • 用于代码克隆检测的深度学习代码片段

    摘要: https://m.toutiao.com/is/JWhQ522/ 代码克隆检测是软件维护和进化的一个重要问题. 许多方法考虑结构或标识符,但现有的检测技术都没有对两种信息来源进行建模. 这些 ...

  • DL之Keras: Keras深度学习框架的注意事项(默认下载存放路径等)、使用方法之详细攻略

    DL之Keras: Keras深度学习框架的注意事项(自动下载存放路径等).使用方法之详细攻略 Keras深度学习框架的注意事项 1.Keras自动下载默认数据集/模型存放位置 Windows系统 数 ...

  • 利用深度学习检测行驶中的车辆驾驶员是否有分散注意力活动行为!

    一.定义 1.1项目概况 减少交通事故的一种有效方法是防止分散注意力驾驶,这是在驾驶时进行其他活动(例如发信息,通话等)的行为.这种性质的活动会分散驾驶员对道路的注意力.这些干扰反过来会危机司机,乘客 ...

  • Keras: 基于Python的深度学习库

    Keras 是一个用 Python 编写的高级神经网络 API,它能够以TensorFlow, CNTK或者 Theano作为后端运行.Keras 的开发重点是支持快速的实验.能够以最小的时延把你的想 ...

  • 深度学习为机器视觉检测带来了什么

    深度学习(Deep Learning)的概念源于人工神经网络的研究.含多隐层的多层感知器就是一种深度学习结构.它是机器学习研究中的一个新的领域,其动机在于建立.模拟人脑进行分析学习的神经网络,模仿人脑 ...

  • 实战:基于深度学习的道路损坏检测

    重磅干货,第一时间送达 1.简介 道路基础设施是一项重要的公共资产,因为它有助于经济发展和增长,同时带来重要的社会效益.路面检查主要基于人类的视觉观察和使用昂贵机器的定量分析.这些方法的最佳替代方案是 ...