自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (3)
  • 问答 (1)
  • 收藏
  • 关注

原创 【代码随想录】day1 数组

因为学计算机语言是属于半路出家,在接触数据结构之前,我只了解数据的类型,从没有了解过不同数据类型的存储方式。数组、链表等等因为不同的存储方式,展现出不同的优缺点,以适应不同的用途。代码随想录是属于把饭喂到嘴里的好!里面资料对于我这种小白来说,真的是很保姆了。之前刷过一小段时间的力扣算法,但没有坚持下来,学到链表就已经放弃。这次学习给自己一个目标:按照卡哥的进度,完成整个数据结构的主要题目,并在平台中打卡记录。

2024-03-05 22:27:32 272 1

原创 AI模型部署基础知识(一):模型权重与参数精度

一般情况来说,我们通过收集数据,训练深度学习模型,通过反向传播求导更新模型的参数,得到一个契合数据和任务的模型。这一阶段,通常使用python&pytorch进行模型的训练得到pth等类型文件。AI模型部署就是将在python环境中训练的模型参数放到需要部署的硬件环境中去跑,比如云平台和其他cpu、gpu设备中。一般来说,权重信息以及权重分布基本不会变(可能会改变精度、也可能会合并一些权重)。该部分笔记参考内容。

2024-01-09 16:19:17 1607

原创 医学影像知识(四):三维医学影像分割任务常见后处理

对于3D分割任务,后处理的目标主要是减少假阳性。使用形态学操作、阈值处理和连通区域分析可以有效地提高分割的准确性。以下是这三种方法在3D分割任务中的具体应用说明:例如针对肺动脉风格任务,在几何上,肺内血管与其他正常和异常肺结构相比,呈凸圆柱状,在CT图像上呈高密度区。虽然气道也是为肺部通气的管状结构,但气道管腔在CT图像上表现为低密度区域,并具有凹形描述。

2023-12-27 20:18:51 1057

原创 医学影像知识(三):三维医学影像各向同性与各向异性的对比

需要注意的是,当水平方向和纵向的间距差异较大时,通过插值生成的中间层面可能不包含真实的图像信息。为此,医学影像的预处理阶段通常包括一步关键的图像插值过程,以调整像素间距,实现xyz三个方向的像素间距一致。通常情况下,CT图像在x和y方向(即水平层面)的像素间距较小,分辨率较高,大约为0.5mm。而在z方向(即纵向,从头到脚的方向)的像素间距,也就是层间距,通常较大,约在1到3mm之间。高数据要求: 要获得高质量的各向同性图像,需要更高的扫描分辨率,可能导致更长的扫描时间和更大的数据量。

2023-12-27 16:06:19 1394 3

原创 AI算法相关就业向学习(算法、部署、加速)

整个文章内容是在微信公众号进行的笔记总结和个人感悟本人本科通信,研究生是cv医学影像方向,初识算法模型相关还是在本科参加数学建模,那个时候用matlab实现最简单的机器学习方法解决的问题,后来研究生开始了解深度学习和CV相关的知识和代码,整个学习过程也不是很系统,很多问题也是一知半解,到现在做算法工作,发现AI整个方向有太多不我了解的,某天看到了老潘的文章,首先普及了我很多基础知识和词条,也能很清晰的指清楚学习的方向。

2023-12-22 18:22:43 779

原创 OpenVINO IR与 ONNX模型加载速度的对比与实现

模型加载速度的快慢通常取决于多个因素,包括模型格式、模型的大小和复杂性、使用的框架以及底层硬件。总之,如果您在 Intel 硬件上进行模型部署,使用 OpenVINO IR 格式可能会在模型加载和运行时推理上提供性能上的优势。这是因为 OpenVINO 对 Intel 硬件有针对性的优化。而在非特定于 Intel 的硬件或需要跨框架兼容性的情况下,ONNX 可能是一个更灵活的选择。

2023-12-22 15:30:47 1250

原创 C++ 部署问题(一):onnx模型出现精度偏差大问题

解决方法:从数据读取开始,调试代码,找到数据处理的问题点;一般情况下,只有这两种原因,不太可能有第三种原因,所以没解决只能说明你还没找到问题点;

2023-11-15 15:02:28 970

原创 医学影像知识(二):医学影像常见数据预处理方式

医学图像数据分析是研究生物标记物并验证其准确性的过程,就像警察追踪嫌疑人一样,根据特征来识别目标并确认身份。这过程包括筛选特征以及验证结论的正确性。医学图像涵盖了病理图像、影像图像(如X光、CT扫描、MRI图像)和检验图像等。我们将重点介绍对影像图像的数据分析。比如,CT图像是由不同灰度构成的,医生通过观察图像上的异常特征来做出疾病诊断,比如肺癌病变通常呈现为肿块,具有特定的边缘特征。不过,这些特征通常是肉眼观察得出的。我们可以利用工具来提取更多特征,因为提取的特征越多,我们获得的判断证据也越充分。

2023-11-07 16:16:13 2098 1

原创 VS2022+Cmake3.22+dcmtk3.6.7编译问题记录

导致97个无法编译成功,尝试了改变cmake版本,以及对应了多个configure选取,发现勾选DCMTK中的DCMTK_WITH_ICU就解决了这个问题。

2023-09-06 15:27:15 199

原创 医学影像知识(一):DICOM影像文件参数:窗宽窗位

较大的窗宽意味着更宽广的灰度范围,可以显示更多的细节,但可能在图像中丧失一些对比度。较小的窗宽则会强调图像中的细微灰度变化,但在图像的范围内可能丢失了一些细节。窗宽窗位是医学影像处理中不可或缺的概念,通过调整灰度范围和中心,可以提高图像的对比度和清晰度。SOP实例UID(SOP Instance UID): 唯一标识DICOM文件中的具体图像实例,每个图像实例都有一个独特的UID。采集设备信息(Equipment Information): 描述了使用的影像设备的信息,包括制造商、型号、软件版本等。

2023-08-24 10:00:54 1775 5

原创 C++ opencv (一):基础代码入门

为实现图形的透明效果,采取在图形文件的处理与存储中附加上另一个8位信息的方法,这个附加的代表图形中各个素点透明度的通道信息就被叫做Alpha通道。Alpha通道使用8位二进制数,就可以表示256级灰度,即256级的透明度。存在问题:图像在放大后像素间存在间隙(为什么在1.2小节中进行膨胀的原因)图像模糊(GaussianBlur)图像转换(cvtColor)图像边缘扩大(dilate)图像边缘侵蚀(erode)\。显示内容(putText)\。图像边缘检测(Canny)创建色调可调节滑动窗口。

2023-08-21 23:27:59 233

原创 GAN知识点(一):GAN的网络结构与损失

该知识点中,我们首先介绍生成对抗网络GAN的主要模型架构——生成器和鉴别器。其次,我们介绍GAN的损失函数以及相关的训练过程。

2023-08-21 23:21:34 1372

原创 关于多分类的评价指标acc、pre、recall、f1

1.准确率ACC:overall:准确率是分类正确的样本占总样本个数的比例,即其中, ncorrect​为被正确分类的样本个数, ntotal​为总样本个数。结合上面的混淆矩阵,公式还可以这样写:y_pred = [0, 2, 1, 3]y_true = [0, 1, 2, 3]print(accuracy_score(y_true, y_pred)) # 0.5print(accuracy_score(y_true, y_pred, normalize=False)) # 2

2023-08-21 22:55:53 1650

原创 肺炎多分类任务BASE

针对backbone的分类网络具有Resnet系列、Densenet系列、Inception系列,常借助辅助手段(FPN、attention、决策树、lasso等)提高模型性能其中Resnet50v2 和 covidnet在四分类中取得不错的效果。1.数据集2.评价指标基于分类任务的常见评价指标:召回率(recall)、精准率(precision)、特异性(specificity)、准确率(accuracy)、FI-score、ROC曲线和AUC指标。3.模型Deeplearning enab

2023-08-21 22:54:30 110

原创 Attention总结(自用,不定期更新)

Channel AttentionSqueeze-and-Excitation NetworksSENet的高效率主要来自于2个模块:(1)squeeze:global pool将w*h压缩到了1减少了后续操作中对spatial维度的计算和参数。(2)excitation:通道维度先降再升如果直接用一个c->c的FC,那么参数为c2;如果先降再升用两个FC,那么参数为(c2)/r+(c**2)/r,原文中r=16,那么参数就变为了一个FC的1/8.(为什么r=16???)Selec

2023-08-21 22:53:40 27

原创 在分类问题中CE loss 与BCE loss的应用

在做视觉分类问题的过程中有个问题一直困扰着我:1.CE和BCE 分别是针对何种分类任务?2.在做具体的任务时如何区别的使用他们?3.分类标签对于不同的多分类任务,是选择普通标签还是one-hot标签?这和loss选择有关么?损失函数公式定义区别由于softmax输出的概率值和为1,网络的优化方向是提升对 y=1 的分类能力,自然其它类别的预测得分就会下降,因此不必担心假阳性的预测得不到改善。类别间是否互斥问题在分类问题中,如果遇到类别间不互斥的情况,只能采用“sigmoid+BCE”;如

2022-04-18 08:18:59 1771

原创 调试parser.parse_args 出现systemexit 2解决方案

在使用parser过程中经常遇到parser.parse_args 出现systemexit 2具体如下:parser = argparse.ArgumentParser()# model argumentsparser.add_argument('--img_size', type=int, default=256, help='Image resolution')args = parser.parse_args() vscode

2022-04-17 18:32:21 5405 7

原创 医学可用的数据增强算法

常用医学数据增强算法传统数据增强算法mix up数据增强Samplepairing数据增强是对训练样本的各种有章法的变换,这就使得模型能够学到图像更本质的特征,增强模型对样本细微变换的适应性,减弱对变化的敏感。传统数据增强算法通过对图片进行针对图像整体的物理几何变换:翻转、平移、放大、缩小等。还有针对图像像素增加噪声的增强方法:高斯噪声、椒盐噪声等。这些传统数据增强算法作用有限,尤其是针对复杂模型,收效甚微。mix up数据增强该算法由Facebook人工智能研究院于2018年提出,发表在《m

2021-07-01 16:57:53 2196 2

原创 Pytorch多GPU和Sync BatchNorm代码

由于复现spade的过程中遇到了一些GPU的问题,所以决定好好理解一下DPL代码问题终端显示暂行不动,并没有报错。GPU没有加载进程,同时CPU也没有动。考虑可能是DPL的问题。由于代码中使用了Sync BatchNorm,考虑到可能是DPL的问题。nn.DataParallel在forward阶段,当前GPU上的module会被复制到其他GPU上,输入数据则会被切分,分别传到不同的GPU上进行计算;在backward阶段,每个GPU上的梯度会被求和并传回当前GPU上,并更新参数。也就是复制mo

2021-06-17 09:55:53 1866 1

原创 pytorch 提高gpu利用率

pytorch跑Unet代码,gpu利用率在0%-20%闪现,主要问题是GPU一直在等cpu处理的数据传输过去。利用top查看cup的利用率也是从0省道100%且显然cup的线程并不多,能处理出的数据也不多。在一般的程序中,除了加载从dataloader中数据和model的运行需要gpu,其余更多的dataset、dataloader、loss的计算和日志的输出很多部分都需要cup的计算。所以,可以提升的方面包括 从class dataset的优化、dataloader的优化和其他部分代码的优化。当然代码

2021-04-08 10:36:11 6160 1

原创 Unet语义分割dice提升

初次复现Medical Image Synthesis for Data Augmentation and Anonymization using Generative Adversarial Networks文章,但是并没有用pix2pix的分割模型,而是使用Unet分割利用pix2pix合成的brats数据集。但是发现原本的Unet模型bceloss效果并不好,val的dice值很低。就开始踏上了炼丹之路。论文地址:https://arxiv.org/abs/1807.102251.学习率找到最

2021-04-08 08:39:19 4543

原创 pytorch—多GPU使用

文章目录单机多卡显卡编号调用全部显卡调用指定编号显卡1. os.environ[“CUDA_VISIBLE_DEVICES”]详解2. torch.cuda主要函数3.关于unet分割一段指定gpu代码多机多卡单机多卡单机多卡情况一般有,单机双卡或者八卡比较常见。一般通过nvidia-smi查看gpu的规格和使用情况。gpu会被编上序号:[0,1,2,3,4,5,6,7]等。显卡编号在默认情况下,标号为0的显卡为主卡增加其他显卡为主卡语句:os.environ["CUDA_VISIBLE_D

2021-03-31 21:04:37 7223 2

转载 Ubuntu查找文件的命令

findfind命令准确,但速度非常慢,它可以查找任何类型的文件使用格式如下find [指定目录] [指定条件] [指定动作]1参数说明[指定目录]: 所要搜索的目录及其所有子目录。默认为当前目录 [指定条件]: 所要搜索的文件的特征 [指定动作]: 对搜索结果进行特定的处理常用的[指定条件]-name:按文件名来查找文件 -user:按照文件的属主来查找文件 -group:按照文件所属的组来查找文件 -perm:按照文件权限来查找文件 -prune:不在当前指定

2020-09-17 10:30:48 2676

转载 残差网络的在医学图像处理的应用

残差网络(Residual Networks, ResNets)什么是残差(residual)?实际观察值与估计值之间的差。什么是残差网络(Residual Networks,ResNets)?① Deeper is better?在训练集上,并不一定这样。随着层数增多,会产生退化问题。随着网络越来越深,训练变得原来越难,网络的优化变得越来越难。理论上,越深的网络,效果应该更好;但实际上,由于训练难度,过深的网络会产生退化问题,效果反而不如相对较浅的网络。而残差网络就可以解决这个问题的,残差

2020-09-09 13:14:33 884

转载 Unet在医学图像分割表现好原因浅析

根据UNet的结构,它能够结合底层和高层的信息。底层(深层)信息:经过多次下采样后的低分辨率信息。能够提供分割目标在整个图像中上下文语义信息,可理解为反应目标和它的环境之间关系的特征。这个特征有助于物体的类别判断(所以分类问题通常只需要低分辨率/深层信息,不涉及多尺度融合)高层(浅层)信息:UNet共进行了4次上采样,并在同一个stage使用了skip connection,而不是直接在高级语义特征上进行监督和loss反传,这样就保证了最后恢复出来的特征图融合了更多的low-level的feature,

2020-09-09 09:19:14 1869

转载 读《中科院徐波:医学人工智能技术发展现状和趋势》

徐波教授是中国科学院自动化研究所所长,已经率领全所完成了“从自动化向智能化转变”的全过程,建立了三个国家级平台和九个国家级实验室和研究中心,成为世界上少有的几个国家级人工智能引擎和发动机之一,引领中国人工智能的发展方向。徐所长的主要观点:1、医学人工智能是人工智能超级应用场景(患者数量、医生医院规模、临床数据、可以发挥效益痛点无数等);2、经过人工智能与医学两大领域几年碰撞和磨合,医学人工智能进入了比较理性和务实的状态;3、医学人工智能一定以医生为主体,AI技术和AI系统为...

2020-08-21 00:13:50 516

转载 U-net论文详解

U-net论文:《U-Net: Convolutional Networks for Biomedical Image Segmentation》提交日期:2015年5月论文链接:https://arxiv.org/abs/1505.04597v1U-net 是基于FCN的一个语义分割网络,适合用来做医学图像的分割。U-Net是比较早的使用全卷积网络进行语义分割的算法之一,论文中使用包含能够捕获上下文语义的压缩路径和可实现精确定位的扩展路径的对称U形结构。特点:从很少的图像端到端地进行训练,且优于

2020-08-11 17:07:25 1322

转载 FCN论文详解

1.端到端学习?传统的图像识别问题:将过程分解为预处理,特征提取和选择,分类器设计等若干步骤。优点:把复杂的问题分解为简单、可控且清晰的若干小的子问题。缺点:尽管可以在子问题上得到最优解,但子问题上的最优解并不意味着就能得到全局问题的最后解。深度学习图像识别(提供了一种端到端的学习范式):整个学习的流程并不进行人为的子问题划分,而是完全交给深度学习模型直接学习从原始数据到期望输出的映射。对深度模型而言,其输入数据是未经人为加工的原始样本形式,后续则是堆叠在输入层上的众多操作层,这些操作层整体可以

2020-08-09 18:51:47 2369

转载 全连接层替换为卷积层

卷积和全连接卷积层的特点:稀疏连接,权值共享全连接层的特点:每个神经元都和上一层的所有神经元相连接两者的共同点:都是由上一层的输出与参数矩阵相乘从而得到下一层的输入所以我们得以得到结论,全连接层和卷积层实际上是可以相互转换的。举个例子:最后一个卷积层的输出为 77512,即每个 feature map 的大小为 77,共有 512 个 feature map,然后通过一个全连接层得到了 11*4096 的输出,如下图所示:全连接到卷积将全连接层转换为卷积层的关键就在卷积核参数的设置上,仍然

2020-08-09 16:22:28 2304

转载 CNN的发展史LeNet、Alexnet 、VGG、GoogleNet、ResNet简介

作者:我爱机器学习链接:https://zhuanlan.zhihu.com/p/22094600来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。CNN的发展史上一篇回顾讲的是2006年Hinton他们的Science Paper,当时提到,2006年虽然Deep Learning的概念被提出来了,但是学术界的大家还是表示不服。当时有流传的段子是Hinton的学生在台上讲paper时,台下的机器学习大牛们不屑一顾,质问你们的东西有理论推导吗?有数学基础吗?搞得过SVM

2020-07-30 12:12:35 2288

原创 端到端学习

传统的图像识别问题:将过程分解为预处理,特征提取和选择,分类器设计等若干步骤。优点:把复杂的问题分解为简单、可控且清晰的若干小的子问题。缺点:尽管可以在子问题上得到最优解,但子问题上的最优解并不意味着就能得到全局问题的最后解。深度学习图像识别(提供了一种端到端的学习范式):整个学习的流程并不进行人为的子问题划分,而是完全交给深度学习模型直接学习从原始数据到期望输出的映射。对深度模型而言,其输入数据是未经人为加工的原始样本形式,后续则是堆叠在输入层上的众多操作层,这些操作层整体可以看作一个复杂的函

2020-07-30 12:02:09 158

原创 win10安装双系统Ubuntu重启出现了 Failed to load ldlinux.c32

我搜索了好多答疑,发现都没有解决我的问题。我先说一下我的整个安装过程下载镜像文件—>下载刻录软件—>电脑分区—>将镜像文件刻录到u盘—>设置Bios—>重启电脑u盘驱动—>安装Ubuntu在试过各类博主的方法:1.更换UltraISO刻录软件的写入方式,重启后直接黑屏。2.修改BIOS设置,还是不行。我是小白也不懂UEFI是什么,但是就是行不通。3.最后换了镜像文件,开门大吉~https://blog.csdn.net/qq_4120.

2020-06-20 19:21:10 867

模拟电子技术基础面试问题汇总.docx

模电复试经常会问到的知识点!

2020-04-29

四川大学面试模拟题.pdf

高分学姐总结经验,根据每年复试情况,总结一些查出现的或者是被重点考察的复试面试知识点,只要好好背,复试成功上岸不是问题!!!!!加油考研人,冲呀

2020-04-29

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除