【论文阅读笔记】基于YOLO和ResNet深度卷积神经网络的结直肠息肉检测

作者:李素琴、吴练练、宫德馨、胡珊、陈奕云、朱晓云、李夏、于红刚
效果视频链接:https://www.xhnj.com/m/video/1008384.htm

小结

  从算法的角度来说,作为2020发布的论文,使用的技术是比较落后的了。一个息肉检测项目,它使用了YOLO算法(应该是v1)来得到候选集,阈值使用 0.2 0.2 0.2,然后使用ResNet进行类别识别
  ResNet使用的是ResNet152,文中有说YOLO+ResNet152的系统达到了25帧/s 的处理速度,暂不知道处理平台。大概率是1080Ti,同期的腾讯觅影使用的YOLOv3,也是1080Ti上达到“实时”。
  从视频效果来看,算法系统的检测速度是不够的,明显有时延,应该是异步检测,检测速度不足且未同步的结果从准确性看,小目标,以及不在正面的目标,效果检测效果一般。

  作为一个做着息肉识别的开发者来说,添加一个病灶检测分类,也是可以理解的,因为一些气泡/组织确实较难处理。况且是五年前的算法结构(实际上是 10 10 10年了,YOLO和ResNet均是十年前提出的),昨日的bad case今日或许easy。
  但本文的数据集,已经剔除掉大量的气泡/粪水等实际的难点,是经过筛选过的数据。且从视频的效果来看,一些观察角度不正、较小的息肉,应该也不在测试集数据上。验证集应该相对简单

  从摘要的指标来看,即使筛选过的测试集,其假阳性其实也不低,虽然文中说比其他文献要高了。

摘要

  算法系统由YOLO和ResNet152构建,系统在本文称作DCNN。

  数据集有4个来源,其中数据集 1 1 1作为训练集,数据集 2 / 3 / 4 2/3/4 2/3/4均为测试集。

  数据 1 / 3 / 4 1/3/4 1/3/4的来源都是从武汉大学人民医院消化内镜中心数据库2018年01月 - 2019年03月的肠镜图像及视频。

  • 数据集 1 1 1(2018年01月-2018年11月),共 4700 4700 4700张。其中 3700 3700 3700张带息肉,训练YOLO; 1000 1000 1000张不带息肉,结合前面的 1000 1000 1000张带息肉,共 2000 2000 2000张来训练ResNet;
  • 数据集 2 2 2(CVC-ClinicDB),开源数据集,共 612 612 612张,来源 29 29 29个结肠镜检查视频。所有图像均有息肉,用于测试和与其他文献对比;
  • 数据集 3 3 3(2019年01月-2019年03月),共 720 720 720张图像,含息肉图像 320 320 320张,不含息肉图像 400 400 400张;
  • 数据集 4 4 4(2018年12月), 15 15 15个肠镜视频,用于测试;

  指标如下:

  • 数据集 2 2 2:敏感度 93.19 % 93.19\% 93.19%
  • 数据集 3 3 3:准确度 95.00 % 95.00\% 95.00%,敏感度 98.13 % 98.13\% 98.13%,特异性 92.50 % 92.50\% 92.50%
  • 数据集 4 4 4,逐帧准确度 96.29 % 96.29\% 96.29%,逐帧敏感度 90.25 % 90.25\% 90.25%,特异性 96.49 % 96.49\% 96.49%,假阳性 3.51 % 3.51\% 3.51%

论文内容

数据集

  结直肠癌一般由腺瘤性息肉发展而来,从腺瘤演变成早期浸润癌平均 10 − 15 10-15 1015年。所以,在临床中,腺瘤检出率(adenoma detection rate, ADR)被认为是结肠镜检查质量的评判标准,腺瘤检出率每增加 1 % 1\% 1%,结直肠癌发病率就降低 3 − 6 % 3-6\% 36%

  数据集制作,资源充足!!! 4 4 4医学博士进行分类(有无息肉,并不区分腺瘤性息肉与非腺瘤性),再由 2 2 2高年资(大于 8 8 8年肠镜检查经验)内镜医师对两类图像进行确认。标注工具,使用的是剑桥大学Visual Geometry Group开发的VGG Image Annotator(VIA),本实验标注如下图所示:
在这里插入图片描述  每个肠镜视频都是记录从找到回盲瓣到刚门口的完整的退镜过程(退镜过程大于 6 6 6分钟),且每个视频至少包含 1 1 1个肠息肉,视频按 25 25 25帧/秒展开。
  排除图像,一些困难图像在采集图像的标准外:(1)年龄 < 18 \lt18 <18岁;(2)肠道清洁度差;(3)结直肠部分切除患者;(4)进展期癌;(5)炎症性肠病;
在这里插入图片描述  肠镜检查器械:富士EC-530WM/W, EC-L590WM, EC-600WM;奥林巴斯 CF-240I, CF-Q260AI, CF-H290I, CF-HQ290I。
  采集图像均为白光非放大模式下拍摄。

算法架构

  算法系统是YOLO + ResNet的组合:使用YOLO,在低阈值( 0.2 0.2 0.2)的筛选下粗晒得到候选病灶图像,候选图像crop出来再resize 1.5 × 1.5\times 1.5×,再通过ResNet(阈值 0.1 0.1 0.1),将疑似息肉图片分为非息肉和息肉。文中显示该DCNN模型处理速度为每秒 25 25 25帧。

在这里插入图片描述
  

  分类数据集上,有 1000 1000 1000张无息肉图像,再加上 3700 3700 3700张有息肉图像中随机选出 1000 1000 1000张图像,组成 2000 2000 2000张数据集。再按照 2 : 8 2:8 2:8分配,即 800 800 800张有息肉, 800 800 800张无息肉作为训练集, 200 200 200张有息肉, 200 200 200张无息肉作为验证集。
  分类算法的准确率为 96 % 96\% 96% 384 / 400 384/400 384/400)。

  对于同一个患者的同一个息肉在不同角度/不同距离拍摄的图像,作者有特意将其在训练集和验证集中分离。

算法结果

  DCNN模型,在数据集 2 2 2中,检测肠息肉的敏感性为 93.19 % 93.19\% 93.19% 602 / 646 602/646 602/646);
  在数据集 3 3 3中,检测肠息肉的准确度为 95.00 % 95.00\% 95.00% 684 / 720 684/720 684/720),敏感性为 98.13 % 98.13\% 98.13% 314 / 320 314/320 314/320),特异性为 92.50 % 92.50\% 92.50% 370 / 400 370/400 370/400),假阳性率为 7.50 % 7.50\% 7.50% 30 / 400 30/400 30/400)。对于 ≤ 5 \leq5 5息肉检测的准确度为 97.80 % 97.80\% 97.80%,未检测出的 6 6 6个息肉均为 ≤ 5 \leq5 5mm,山田 I \mathrm{I} I型。
  在数据集 4 4 4中,15个肠镜视频总时间约 94 94 94分钟,按 25 25 25帧/秒展开,共 138998 138998 138998帧图像,其中息肉阳性图像 4506 4506 4506帧,息肉阴性图像 134492 134492 134492帧,逐帧准确度为 96.29 % 96.29\% 96.29% 133840 / 138998 133840/138998 133840/138998),逐帧敏感性为 90.24 % 90.24\% 90.24% 4066 / 4506 4066/4506 4066/4506),特异性为 96.49 % 96.49\% 96.49% 129774 / 134492 129774/134492 129774/134492),假阳性为 3.51 % 3.51\% 3.51% 4718 / 134492 4718/134492 4718/134492)。 15 15 15个视频共包含 33 33 33个息肉, 33 33 33个息肉均被DCNN检出,逐息肉个数敏感性为 100 % 100\% 100%这个逐息肉检测,就是所有帧中,该息肉只要有一张图像检出,就算OK。可能会出现如下情况:角度不正/中远距离检测不到,凑近息肉较大时检出。
在这里插入图片描述
  在数据集 4 4 4中,敏感性较低,作者认为是因为视频是连续的,有画面不稳的情况,而且还有一些在距离较远时候息肉较小的情况。

假阳性样例

  图像和视频的假阳性的表现如下:
在这里插入图片描述
  在数据集 3 / 4 3/4 3/4的假阳性分析见下表:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/3411.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win32汇编环境,窗口程序中基础列表框的应用举例

;运行效果 ;win32汇编环境,窗口程序中基础列表框的应用举例 ;比如在窗口程序中生成列表框&#xff0c;增加子项&#xff0c;删除某项&#xff0c;取得指定项内容等 ;直接抄进RadAsm可编译运行。重点部分加备注。 ;以下是ASM文件 ;>>>>>>>>>>>…

Lora理解QLoRA

Parameter-Efficient Fine-Tuning (PEFT) &#xff1a;节约开销的做法&#xff0c;fine-tune少量参数&#xff0c;而不是整个模型&#xff1b; Low-Rank Adaptation (LoRA) &#xff1a;是PEFT的一种&#xff1b;冻结原参数矩阵&#xff0c;只更新2个小参数矩阵。 原文经过对比…

YOLOv5训练长方形图像详解

文章目录 YOLOv5训练长方形图像详解一、引言二、数据集准备1、创建文件夹结构2、标注图像3、生成标注文件 三、配置文件1、创建数据集配置文件2、选择模型配置文件 四、训练模型1、修改训练参数2、开始训练 五、使用示例1、测试模型2、评估模型 六、总结 YOLOv5训练长方形图像详…

基于微信小程序的电子点菜系统设计与实现(KLW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…

Titans 架构中的记忆整合:Memory as a Context;Gated Memory;Memory as a Layer

Titans 架构中的记忆整合 Titans 架构中的记忆整合 Memory as a Context(MAC)变体:在处理长序列数据时,将序列分段,对于当前段 S ( t ) S^{(t)}

洛谷P3916 图的遍历

题目描述 给出 N 个点,M 条边的有向图&#xff0c;对于每个点 v&#xff0c;求 A(v) 表示从点 v 出发&#xff0c;能到达的编号最大的点。 输入格式 第 1 行 2 个整数 N,M&#xff0c;表示点数和边数。 接下来 M 行&#xff0c;每行 2 个整数 Ui,Vi​&#xff0c;表示边 (U…

【python】实现图像中的阴影去除 | 方案和代码

去除图像中的阴影是一项复杂的图像处理任务&#xff0c;尤其是当阴影区域与图像的其他部分混合时。阴影的存在会影响图像的颜色平衡和亮度&#xff0c;导致图像分析和理解的困难。 目录 一 安装依赖 二 函数 ① rgb2hsv ② hsv2rgb 三 实现图像中的阴影去除的方法 四 实…

记录一次 centos 启动失败

文章目录 现场1分析1现场2分析2搜索实际解决过程 现场1 一次断电,导致 之前能正常启动的centos 7.7 起不来了有部分log , 关键信息如下 [1.332724] XFS(sda3): Internal error xfs ... at line xxx of fs/xfs/xfs_trans.c [1.332724] XFS(sda3): Corruption of in-memory data…

文件操作:系统IO

文件操作 目录 基本概念Linux文件特点操作方式1-系统IO操作方式2-标准IO两种操作模式的对比 基本概念 什么是文件 简单的说&#xff0c;文件就是存储在硬件磁盘上的数据集合 文件通过什么来标识&#xff1f; 系统中在处理的文件&#xff08;读、写操作&#xff09;的时候…

ComfyUI-PromptOptimizer:文生图提示优化节点

ComfyUI-PromptOptimizer 是 ComfyUI 的一个自定义节点&#xff0c;旨在优化文本转图像模型的提示。它将用户输入的提示转换为更详细、更多样化、更生动的描述&#xff0c;使其更适合生成高质量的图像。无需本地模型。 1、功能 提示优化&#xff1a;优化用户输入的提示以生成…

windows 搭建flutter环境,开发windows程序

环境安装配置&#xff1a; 下载flutter sdk https://docs.flutter.dev/get-started/install/windows 下载到本地后&#xff0c;随便找个地方解压&#xff0c;然后配置下系统环境变量 编译windows程序本地需要安装vs2019或更新的开发环境 主要就这2步安装后就可以了&#xff0…

从玩具到工业控制--51单片机的跨界传奇【3】

在科技的浩瀚宇宙中&#xff0c;51 单片机就像一颗独特的星辰&#xff0c;散发着神秘而迷人的光芒。对于无数电子爱好者而言&#xff0c;点亮 51 单片机上的第一颗 LED 灯&#xff0c;不仅仅是一次简单的操作&#xff0c;更像是开启了一扇通往新世界的大门。这小小的 LED 灯&am…

构建一个简单的深度学习模型

构建一个简单的深度学习模型通常包括以下几个步骤&#xff1a;定义模型架构、编译模型、训练模型和评估模型。下面是一个使用Keras&#xff08;TensorFlow的高级API&#xff09;构建和训练一个简单的全连接神经网络&#xff08;也称为多层感知器&#xff0c;MLP&#xff09;的示…

linux下的NFS和FTP部署

目录 NFS应用场景架构通信原理部署权限认证Kerberos5其他认证方式 命令serverclient查看测试系统重启后自动挂载 NFS 共享 高可用实现 FTP对比一些ftp服务器1. **vsftpd (Very Secure FTP Daemon)**2. **ProFTPD (Professional FTP Daemon)**3. **Pure-FTPd**4. **WU-FTPD (Was…

Python操作Excel——openpyxl使用笔记(3)

3 单元格基本操作 3.1 访问单元格和读写其内容 在前面的例子中&#xff0c;已经简单演示过了向单元格中写入和读取数据。这里进一步提供访问单元格的一些方法。和前面一样&#xff0c;使用工作表的索引方式&#xff0c;可以快速定位一个单元格&#xff1a; import openpyxl w…

【漏洞预警】FortiOS 和 FortiProxy 身份认证绕过漏洞(CVE-2024-55591)

文章目录 一、产品简介二、漏洞描述三、影响版本四、漏洞检测方法五、解决方案 一、产品简介 FortiOS是Fortinet公司核心的网络安全操作系统&#xff0c;广泛应用于FortiGate下一代防火墙&#xff0c;为用户提供防火墙、VPN、入侵防御、应用控制等多种安全功能。 FortiProxy则…

一、1-2 5G-A通感融合基站产品及开通

1、通感融合定义和场景&#xff08;阅读&#xff09; 1.1通感融合定义 1.2通感融合应用场景 2、通感融合架构和原理&#xff08;较难&#xff0c;理解即可&#xff09; 2.1 感知方式 2.2 通感融合架构 SF&#xff08;Sensing Function&#xff09;&#xff1a;核心网感知控制…

头盔识别技术

本项目参考b站视频https://www.bilibili.com/video/BV1EhkiY2Epg/?spm_id_from333.999.0.0&vd_source6c722ac1eba24d4cbadc587e4d1892a7 1.下载miniconda 使用 Miniconda 来管理 Python 环境&#xff08;如 yolov8&#xff09;&#xff0c;就可以通过 conda create -n y…

某讯一面,感觉问Redis的难度不是很大

前不久&#xff0c;有位朋友去某讯面试&#xff0c;他说被问到了很多关于 Redis 的问题&#xff0c;比如为什么用 Redis 作为 MySQL 的缓存&#xff1f;Redis 中大量 key 集中过期怎么办&#xff1f;如何保证缓存和数据库数据的一致性&#xff1f;我将它们整理出来&#xff0c;…

PCL 新增自定义点类型【2025最新版】

目录 一、自定义点类型1、前言2、定义方法3、代码示例二、合并现有类型三、点云按时间渲染1、CloudCompare渲染2、PCL渲染博客长期更新,本文最近更新时间为:2025年1月18日。 一、自定义点类型 1、前言 PCL库自身定义了很多点云类型,但是在使用的时候时如果要使用自己定义的…