- 博客(24)
- 收藏
- 关注
原创 医学分割常用损失函数
引言医学图像分割是医学图像处理领域的一个重要分支,它旨在辅助临床医生将器官和病变部位与图像背景分割开来,使医生能够直观地了解病患内部信息,以协助医生进行客观决策。虽然深度学习方法在医疗影像分割任务中大显身手,但由于医学图像与普通图像相比较,具有低对比度、不均匀性等特点,另外人体的解剖组织结构复杂且具有较大差异性,因此还有很多问题有待解决。近年来,越来越多的研究者开始注意到损失函数的重要性,并对其做...
2024-08-17 15:20:48
1270
原创 强化学习(Reinforcement learning)
引言强化学习是除了监督学习和无监督学习之外的另一种机器学习方法。监督学习:是从标记好的训练数据中学习模型。无监督学习:是从未标记的数据中发现模式、结构或关系,而无需提前知道预期的输出标签。强化学习:其重点是让智能体(agent)从与环境的交互中学习,以达到最大化某种形式的累积奖励。在强化学习中,智能体采取一系列行动来实现特定目标,然后根据环境的反馈(奖励或惩罚)来调整其行为策略。强化学习有哪些好处...
2024-08-10 16:16:57
3580
原创 VTK实现DICOM简单阅片
可以通过鼠标滚轮上下翻滚图像,鼠标移动实时获得坐标位置与像素值。#include <vtkActor.h>#include <vtkNamedColors.h>#include <vtkNew.h>#include <vtkObjectFactory.h>#include <vtkRenderWindow.h>#include ...
2023-07-02 15:22:31
626
原创 VTK与QT源码编译和示例
一:介绍VTK:是一个用于三维计算机图形学、图像处理、数据可视化和科学可视化的开源软件库。VTK提供了丰富的基础算法和数据结构,包括点、线、多边形、二维和三维图像、体绘制等,以及许多高级算法,例如曲面重建、流体力学模拟、拟合和插值、图像分割和成像处理等。QT:提供了一套完整的库,包括GUI、网络、数据库、XML、蓝牙、多媒体、OpenGL等,可以用来编写桌面、移动设备、嵌入式及实时应用程序。Qt的...
2023-05-28 15:16:19
1333
原创 PointNet++分类与分割详解
前言 PointNet++是一个用于对不规则形状的点云数据进行分类和分割任务的深度神经网络。相对于传统的基于网格的3D数据表示方法,点云数据更易于获取和处理。PointNet++的另一个优势是它引入了多尺度层次结构,可以处理更为复杂的点云数据。相比于第一版的PointNet网络作者提出了许多新的想法,也取得了很不错的效果。PointNet算法存在的问题(1)一幅点云图像点数量太多,这会...
2023-04-22 16:59:24
6300
2
原创 Cuda编程Thrust库
1.Thrust介绍 Thrust是一个C++模板库,为GPU计算提供高效的算法和数据结构。它是由NVIDIA开发的,旨在提供一个简单易用的接口来开发高性能GPU程序。 Thrust库基于CUDA,并且是在CUDA C++语言扩展的基础上构建的。Thrust为GPU编程提供了一种高级编程范式,使得开发人员可以使用类似于STL的算法和数据结构来加速应用程序。 Th...
2023-03-31 15:22:55
2576
原创 CUDA编程(二)基础与简单实例(并行规约、共享内存)
什么是并行规约 并行归约(Reduction)是一种很基础的并行算法,简单来说,我们有N个输入数据,使用一个符合结合律的二元操作符作用其上,最终生成1个结果。并行规约的适用对象数据特点:(1)对于数据集中的元素没有顺序要求。(2)可将数据分为若干小集合,每个线程处理一个集合。例如:求最大值、求最小值、求和、求乘等操作。未优化并行规约 首先开辟一个8个int的存储空间,如下图...
2023-03-19 15:30:46
837
原创 CUDA编程(一)安装
前言什么是CPUCPU 由数百万个晶体管组成,可以有多个处理内核,通常被称为计算机的大脑。它是所有现代计算系统必不可少的组成部分,因为它执行计算机和操作系统所需的命令和流程。在确定程序运行速度方面(从网页浏览到构建电子表格),CPU 也很重要。什么是GPUGPU 是由许多更小、更专业的内核组成的处理器。在多个内核之间划分并执行一项处理任务时,通过协同工作,这些内核可以提供强大的性能。我们为什么...
2022-09-25 16:42:45
825
原创 最大流与最小割(Maxflow与Mincut)
传统图像主要分割算法:基于阈值的分割(1)固定阈值分割(2)直方图双峰法(3)迭代阈值图像分割(4)自适应阈值图像分割(5)最佳阈值法2.基于边缘的...
2022-03-19 20:28:25
1897
原创 深度学习图像去噪
最近几个月的项目中图像噪声一直是我最大的困扰,能够找到一种好并且快的去噪方式对于项目的进度与最终效果都起着关键的作用。最近几年深度学习去噪也是一个热门的方向,有着许多显著的研...
2022-03-06 17:10:40
7632
1
原创 Hessian矩阵在血管增强中的应用
Hessian矩阵在图像处理中有着广泛的应用:其中在图像分割领域,包括边缘检测、纹理分析等。原理: 假设图像像素值关于坐标(x, y)的函数是f(x, y),那么将...
2021-12-11 15:41:39
1885
3
原创 Swin-Unet:纯Transformer的医学分割
整体架构: 由上图可以看出Swin-Unet主要由Swin Transformer Block,Patch Merging,Patch Expanding组成,其中左半部份就是Swi...
2021-10-23 16:01:11
3058
1
原创 多维图像膨胀腐蚀与开闭运算
原理及作用:形态学图像处理的理论根基是数学形态学(Mathematical Morphology),可以通过形态学处理获取图像中有意义的区域,比如边界信息。1. 腐蚀是一种消除边界点,使边...
2021-10-05 14:48:34
1143
1
原创 Swin Transformer解读
引言:Transformer 模型在自然语言处理(NLP)领域已然成为一个新范式,如今越来越多的研究在尝试将 Transformer 模型强大的建模能力应用到计算机视觉(C...
2021-09-06 15:28:26
3275
原创 多维滤波
概述:噪声对图像处理的影响很大,它影响图像处理的输入、采集和处理等各个环节以及输出结果。因此,在进行其它的图像处理前,需要对图像进行去噪处理。尤其在医学图像中可能有大量的3d数据,本文将从...
2021-09-04 15:02:51
432
原创 常用激活函数的优缺点
非线性激活函数是深度学习网络重要的组成部分,随着近几年的快速发展,越来越多的激活函数被提出与改进。选择一个合适的激活函数将决定了模型的最终结果。下文总结了13种常见的激活函数的计算方式与对...
2021-08-28 15:56:51
5776
原创 数据量太大无法一次性载入内存训练
问题:主要特指在医学领域,尤其是3d分割。由于每个数据可能有好几百张的dicom。用patch分割,如果每次都去重新加载如此大的数据集会十分的费时。要么一次性将数据与标签都载入内存,那就需...
2021-07-12 15:01:05
3461
1
原创 ITK安装与读取DICOM序列
一:ITK功能ITK 与 OpenCV 主打功能相似,都是面向于图像处理,但是两者在领域应用方面有一定的差别;ITK主要用于医学图像的分割与配准(有c++与python版本)。OPENCV...
2021-07-11 12:37:07
3734
原创 c++多线程调用python脚本
为什么?1、提升效率。2、一开始代码是在python中用了多进程,后面发现c++调用的Python代码是无法开启多进程的。由于Python解释器有全局解释所GIL的原因,导致在同一时刻只能...
2021-06-21 22:50:48
3126
1
原创 c++调用python脚本,指针快速传递
c++快速调用python脚本(无python安装环跨境),通过指针快速传递大量数据。适用于深度学习,机器学习,医学图像等大数据量场景。
2021-06-19 22:12:47
1638
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人