【深度学习:DICOM 注释工具】在 DICOM 注释工具中寻找的 7 个功能
【深度学习:DICOM 注释工具】在 DICOM 注释工具中寻找的 7 个功能
- 原生 DICOM 支持
- 原生 3D 注释
- 易于使用的界面
- DICOM 图像的自动注释
- 质量控制功能
- 审计跟踪
- SOC2 和 HIPAA 合规性
如果您尝试为医疗 AI 模型创建训练数据,您可能已经使用了免费的开源工具(如 ITK SNAP)来标记医学图像。它们作为起点很棒,但确实缺乏许多有效注释的功能。
因此,如果您得出的结论是需要更好的解决方案来标记医学图像(尤其是 DICOM 或 NIfTI 格式),那么您将四处寻找图像标记工具。但是,即使考虑付费工具,也存在风险因素。并非所有图像注释工具都是一样的,尤其是在涉及计算机视觉和医疗保健领域的特定需求时。
因此,为了帮助您找到合适的平台,我们创建了一份指南,介绍您在选择用于注释和标记 DICOM 图像的工具时需要寻找的七个功能。
原生 DICOM 支持
这似乎是显而易见的,但一个基本的考虑因素是你正在查看的注释工具是否可以原生支持 DICOM 文件(如果它可以原生支持其他文件格式,如 NIfTI),它也会有所帮助)。这意味着该工具是否可以打开和查看 DICOM 文件,而无需将它们转换为其他格式(例如视频文件)。
当文件从 DICOM 转换为其他文件时,它会增加数据丢失(例如 DICOM 元数据)或转换后的文件以某种方式损坏的可能性。转换后的文件也不会使用 Hounsfield 单位显示,因为它们必须移动到与已转换的文件格式兼容的灰度范围。最终,这会导致注释质量降低,因为注释者会丢失他们正在查看的图像中的重要数据。鉴于为医疗 AI 模型提供高质量训练数据的重要性,确保在将图像文件添加到数据标记工具时不会丢失任何内容是有意义的。
原生 3D 注释
另一个关键功能是能够在注释平台中以原生方式查看和注释 3D 图像。这样可以更轻松地识别扫描中的物体(例如癌性肿瘤),还可以进行体积注释,即在三维空间中标记某些内容。能够对放射学图像进行 3D 注释意味着您可以创建更好的注释,并最终创建更好的数据来训练您的模型
易于使用的界面
虽然这似乎是一个基本点,但这是需要大量考虑的事情。有许多标记工具可用于注释医学图像,但它们在设计时并没有考虑到这一特定任务。注释胸部 X 光片或脑部 MRI 与标记路标或水果是一项截然不同的任务,您使用的工具必须反映这一点。
选择 DICOM 注释工具时需要注意的一些关键可用性功能包括:
- 能够渲染 Hounsfield 比例的全范围图像
- 多平面重建在 2D 正交平面(冠状面、矢状面、轴向平面)中显示图像,以便您可以更好地可视化、分析和注释图像
- 窗口宽度 (WW) 和窗口级别 (WL) 调整,并可选择保存自定义预设,从而节省注释者的时间
- 一种距离测量工具,用于测量图像中任意两点之间的准确真实距离
- 将元数据视为叠加层,以便注释者可以在需要时轻松查看元数据。
DICOM 图像的自动注释
考虑到使用高技能医学注释员的费用,任何可以提高他们效率的功能都至关重要。这就是为什么您的 DICOM 注释工具需要具有注释自动化功能的原因。实现自动化的方法有很多种,但其中最强大的方法之一是插值。但并非所有插值特征都相同。您需要一个:
- 不需要相邻帧中的匹配像素信息即可运行
- 不需要设置关键帧中对象之间的顶点数匹配
- 允许您在任意方向上绘制对象顶点,而不必遵循预定义的方向
质量控制功能
保持标记数据的质量对于确保模型具有最佳的学习真实性至关重要。能够采取严格的质量控制措施可以使这变得更加容易和高效。您需要在 DICOM 注释平台中寻找两件事。首先是能够为您的质量控制工作流程设置精细参数。这应包括以下内容:
- 要手动审核的标签的百分比
- 评审任务分配规则
- 可用于识别标签中的错误并使其系统化的常见拒收原因
- 审阅者到类和注释者的映射(例如,具有类 Y 的标签 X 应始终由审阅者 Z 审阅)
- 为专家评审分配在特定数量的审核周期后被拒绝的任务。
第二个需要注意的质量控制功能是能够动态地改变适用于已提交标注任务的采样率。这意味着项目管理人员可以设定更高的提交标签审查比例,以提高标签数据的整体质量。如果能进一步调整,按注释者和注释类型设置抽样率,让更复杂的图像得到更全面的审核,也会有所帮助。
审计跟踪
您需要考虑的 DICOM 注释工具的倒数第二个功能是创建审计跟踪。要获得 FDA 或 CE 批准,要求之一是能够提供医疗诊断模型训练数据的完整审计跟踪。考虑到这一点,您的标签工具需要能够显示生成的每个标签的完整审核跟踪以及该标签背后的审核流程。
SOC2 和 HIPAA 合规性
最后,无论您最终使用哪种医学图像标记工具,如果您打算使用它来处理敏感的患者数据,它都需要遵守几个关键框架。
第一个是 SOC 2(系统和组织控制 2),它表明组织的业务流程、信息技术和风险管理控制是否经过正确设计。其中第二个是符合 HIPAA(健康保险流通与责任法案),表明数据标签平台按照 HIPAA 的规则管理患者数据。
现在您已经了解了 - 选择 DICOM 注释平台时应该考虑的七个功能。总而言之,这些功能可以使您的医学图像标记更加高效,同时还能获得更好的标记数据并降低风险。
相关文章:

【深度学习:DICOM 注释工具】在 DICOM 注释工具中寻找的 7 个功能
【深度学习:DICOM 注释工具】在 DICOM 注释工具中寻找的 7 个功能 原生 DICOM 支持原生 3D 注释易于使用的界面DICOM 图像的自动注释质量控制功能审计跟踪SOC2 和 HIPAA 合规性 如果您尝试为医疗 AI 模型创建训练数据,您可能已经使用了免费的开源工具&am…...
Spring Boot与Kafka集成教程
当然可以,这里为您提供一个简化版的Spring Boot与Kafka集成教程: 新建Spring Boot项目 使用Spring Initializr或您喜欢的IDE(如IntelliJ IDEA, Eclipse等)新建一个Spring Boot项目。 添加依赖 在项目的pom.xml文件中,…...

基于飞腾ARM+FPGA国产化计算模块联合解决方案
联合解决方案概述 随着特殊领域电子信息系统对自主创新需求的日益提升,需不断开展国产抗恶劣环境计算整机及模块产 品的研制和升级。特殊领域电子信息系统的自主创新,是指依靠自身技术手段和安全机制,实现信息系统从硬 件到软件的自主研发…...

关于DVWA靶场Could not connect to the database service的几种解决办法
总的来说这个问题都是 config 配置文件没有修改正确 一般修改数据库的用户名和密码与 phpstudy 一致并且添加了 key 就能初始化成功的 但是我还遇到过另一种情况,修改了上面的东西依旧无法连接到数据库 Could not connect to the database service. Please check …...
已解决ModuleNotFoundError: No module named ‘paddle‘异常的正确解决方法,亲测有效!!!
已解决ModuleNotFoundError: No module named paddle异常的正确解决方法,亲测有效!!! 文章目录 问题分析 报错原因 解决思路 解决方法 总结 在人工智能和深度学习领域,PaddlePaddle是由百度发起的开源平台&#…...

并发编程之深入理解JVM并发三大特性
并发编程之深入理解JVM&并发三大特性 并发编程解决的问题 多线程同步(一个线程需要等待另一个线程的结果,一个线程依赖于另一个线程),互斥(一个资源只能一个线程使用),分工(…...

helm部署gitlab-runner问题解决
关于.gitlab-ci.yml中build镜像时,docker守护进程未启动错误 问题截图 解决方法 conf.toml添加 [[runners.kubernetes.volumes.host_path]]name "docker"mount_path "/var/run/docker.sock"read_only falsehost_path "/var/run/dock…...

[嵌入式系统-28]:开源的虚拟机监视器和仿真器:QEMU(Quick EMUlator)与VirtualBox、VMware Workstation的比较
目录 一、QEMU概述 1.1 QEMU架构 1.2 QEMU概述 1.3 什么时候需要QEMU 1.4 QEMU两种操作模式 1.5 QEMU模拟多种CPU架构 二、QEMU与其他虚拟机的比较 2.1 常见的虚拟化技术 2.1 Linux KVM 2.2 Windows VirtualBox 2.3 Windows VMware workstation 三、VirtualBox、VM…...

计算机组成原理:存储系统【三】
🌈个人主页:godspeed_lucip 🔥 系列专栏:计算机组成与原理基础 🚀1 只读存储器ROM✈️1.1 总览✈️1.2 各种ROM✈️1.3 计算机内部重要的ROM✈️1.4 总结 🚀2 主存储器与CPU的连接🛩️2.1 总览&…...
学习Android的第十三天
目录 Android TextClock 文本时钟控件 TextClock 控件主要属性和方法 简单的 TextClock 参考文档 Android AnalogClock 控件 AnalogClock 属性 Android Chronometer 计时器 Chronometer 属性 Chronometer 主要方法 范例: 完整的计时器 范例: …...

【开源】SpringBoot框架开发学校热点新闻推送系统
目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 新闻类型模块2.2 新闻档案模块2.3 新闻留言模块2.4 新闻评论模块2.5 新闻收藏模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 新闻类型表3.2.2 新闻表3.2.3 新闻留言表3.2.4 新闻评论表3.2.5 新闻收藏表 四、系统展…...

代码随想录刷题笔记 DAY 28 | 复原 IP 地址 No.93 | 子集 No.78 | 子集 II No.90
文章目录 Day 2801. 复原 IP 地址(No. 93)1.1 题目1.2 笔记1.3 代码 02. 子集(No. 78)2.1 题目2.2 笔记2.3 代码 03. 子集 II(No. 90)3.1 题目3.2 笔记3.3 代码 Day 28 01. 复原 IP 地址(No. 9…...

LeetCode LCR 085. 括号生成
题目链接https://leetcode.cn/problems/IDBivT/description/ 正整数 n 代表生成括号的对数,请设计一个函数,用于能够生成所有可能的并且 有效的 括号组合。 class Solution {public List<String> generateParenthesis(int n) {List<String>…...

django定时任务(django-crontab)
目录 一:安装django-crontab: 二:添加django_crontab到你的INSTALLED_APPS设置: 三:运行crontab命令来创建或更新cron作业: 四:定义你的cron作业 五:创建你的管理命令ÿ…...

【教3妹学编程-算法题】输入单词需要的最少按键次数 II
2哥 : 叮铃铃,3妹,准备复工了啊,过年干嘛呢,是不是逛吃逛吃,有没有长胖呢。 3妹:切,不想上班,假期能不能重来一遍啊,虽然在家我妈张罗着要给我相亲呢。可是在家还是很好的…...
突破编程_C++_高级教程(多线程编程实例)
1 生产者-消费者模型 生产者-消费者模型是一种多线程协作的设计模式,它主要用于处理生产数据和消费数据的过程。在这个模型中,存在两类线程:生产者线程和消费者线程。生产者线程负责生产数据,并将其放入一个共享的数据缓冲区&…...
精读《Function Component 入门》
1. 引言 如果你在使用 React 16,可以尝试 Function Component 风格,享受更大的灵活性。但在尝试之前,最好先阅读本文,对 Function Component 的思维模式有一个初步认识,防止因思维模式不同步造成的困扰。 2. 精读 什…...

类的构造方法
在类中,出成员方法外,还存在一种特殊类型的方法,那就是构造方法。构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的。每个类实例化一个对象时,类都会自动调用构造方法。 构造方法的特点: 构…...
ChatGPT和LLM
ChatGPT和LLM(大型语言模型)之间存在密切的关系。 首先,LLM是一个更为抽象的概念,它包含了各种自然语言处理任务中使用的各种深度学习模型结构。这些模型通过建立深层神经网络,根据已有的大量文本数据进行文本自动生成…...
「优选算法刷题」:判定字符是否唯一
一、题目 实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 示例 1: 输入: s "leetcode" 输出: false 示例 2: 输入: s "abc" 输出: true限制: 0 < len(s) < 100 s[i]仅包含小写字母 二…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
相机Camera日志分析之三十一:高通Camx HAL十种流程基础分析关键字汇总(后续持续更新中)
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了:有对最普通的场景进行各个日志注释讲解,但相机场景太多,日志差异也巨大。后面将展示各种场景下的日志。 通过notepad++打开场景下的日志,通过下列分类关键字搜索,即可清晰的分析不同场景的相机运行流程差异…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
【HTTP三个基础问题】
面试官您好!HTTP是超文本传输协议,是互联网上客户端和服务器之间传输超文本数据(比如文字、图片、音频、视频等)的核心协议,当前互联网应用最广泛的版本是HTTP1.1,它基于经典的C/S模型,也就是客…...

select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...

C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...