自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 收藏
  • 关注

原创 论文精读-DDE-CLIP: Detail-Guided Dual-Modal Enhancement for Zero-Shot Anomaly Detection

工业产品制造中的异常检测至关重要。由于,该领域已从有监督学习转向无监督异常检测(UAD)。然而,UAD仍依赖目标类别的正常样本进行训练。:在涉及国防、军事或商业机密等数据敏感场景中,连正常样本都难以获取。ZSAD旨在无需任何目标产品训练样本的情况下检测和定位异常,解决了样本稀缺和数据隐私问题。:现有ZSAD方法多基于CLIP模型。直观地解释了视觉特征如何指导DDE-CLIP中的文本嵌入。(a)现有方法通常使用静态文本嵌入来检测各种异常。

2026-07-09 12:06:21 348

原创 clip模型及论文精读-Learning Transferable Visual Models From Natural Language Supervision

1.CLIP的训练数据CLIP的训练数据是<图像,文本>pair。如图所示,一个batch的数据里,有若干张图像,每张图像都配有相应的文字描述信息(prompt),比如:一张小狗图片,prompt为<dog>,或者为prompt的设计也会影响模型最终的效果把prompt从单词<dog>换成句子后,模型在ImageNet分类任务上的准确率直接提高了1.3%在OCR数据集上,作者发现如果把要识别的文字、数字用引号扩起来,能达到更好的效果在卫星图分类数据集上,作者发现把prompt替换成。

2026-07-08 22:17:53 255

原创 多模态-复现OpenAI的CLIP模型

1. 导入 PyTorch 核心库# 2. 导入之前自定义的 MNIST 数据集类# 3. 导入之前定义的 CLIP 模型类(包含图像编码器和文本编码器)# 4. 导入 PyTorch 的函数式接口,这里主要用到交叉熵损失函数# 5. 导入数据加载器,用于批量加载数据# 6. 导入操作系统模块,用于文件的重命名(安全保存模型)import os# 7. 设置运行设备:如果有 NVIDIA GPU 则使用 'cuda',否则使用 'cpu'# 8. 实例化 MNIST 数据集。

2026-07-07 10:48:31 233

原创 论文精读-Crack segmentation network via difference convolution-based encoder and hybrid CNN-Mamba multi-

相比于基于 Transformer 的同类模型(如 SegFormer),DCCM-Net 在保持甚至超越其性能的同时,推理速度更快,内存占用更低。:Mamba 架构中的扫描机制(Scan direction)对裂缝走向可能有一定的偏好,论文对不同扫描方向的影响讨论较少。与标准卷积只学习强度信息不同,差分卷积通过计算中心像素与周围像素的差异,显式地增强了对裂缝边缘纹理的提取能力。:在不同分辨率下并行处理特征,确保网络对不同宽度(从发丝裂缝到大裂缝)的鲁棒性。

2026-05-07 12:45:54 422

原创 论文精读-bridge surface crack detection and segmentation using computer vision-based deep learning

通过注意力机制和轻量化网络的结合,模型在资源受限的边缘平台上依然能保持高性能,为桥梁自动养护提供了实用的技术方案。如何优化深度学习模型,使其在保证检测精度的同时,具备较小的模型体积和较高的运行速度,以满足边缘设备的部署需求?:引入 PAM 模块以获取丰富的上下文信息,使不同位置的相似特征相互增强,从而提高复杂裂缝的分割精度。:改进的 PSPNet 能够提供裂缝的轮廓、大小和形状信息,弥补了检测框无法精确描述裂缝轮廓的不足。:尽管有所改进,但对于某些对比度极低或极细微的裂缝,检测能力仍存在提升空间。

2026-05-01 15:00:34 405

原创 论文精读-An End-to-End Steel Surface Defect Detection Approach via Fusing Multiple Hierarchical Featur

钢板表面缺陷(如裂纹、夹杂、斑块等)的检测是保证工业生产质量的关键环节,传统的人工检测方法不仅效率低下,且可靠性不足。:钢材表面常出现多类别缺陷并存、缺陷重叠以及复杂的背景干扰,这要求系统不仅要能“分类”(是什么),还要能“定位”(在哪里):传统的自动化检测方法依赖手动设计特征,主观性强且定位精度差;而现有的深度学习分割模型(如 Mask R-CNN)计算开销巨大,难以满足工业实时检测需求。:如何构建一个既具备强大分类能力,又能实现精准目标定位的端到端深度学习系统?

2026-04-27 10:39:57 411

原创 论文精读-“A deep-learning-based approach for fast and robust steel”

摘要: 针对钢板表面缺陷检测中传统方法效率低、深度学习模型实时性不足的问题,本研究提出一种基于SqueezeNet的轻量化分类模型。通过浅层特征强化训练(ELF)和多感受野模块(MRF),模型在少量样本(1440张)下实现了100%的原始数据集准确率和97.5%的增强数据集准确率,处理速度超100fps。研究验证了模型在噪声、模糊等复杂环境下的强鲁棒性,但极端光照下性能仍有提升空间。该方案为工业实时检测提供了高效解决方案,但未涵盖缺陷定位任务。

2026-04-21 17:08:11 236

原创 PyTorch模型训练全流程详解

完整且标准的 PyTorch 模型训练模板。

2026-04-21 16:29:35 81

原创 网络模型的保存和读取

的全量加载。如果你把代码第一行的。

2026-04-21 11:10:27 289

原创 论文精读-基于注意力机制的 U⁃Net 叶片缺陷图像分割

本研究针对风机叶片缺陷检测难题,提出了一种基于改进U-Net的语义分割网络。通过结合VGG16迁移学习、CBAM注意力机制和扩张卷积,有效解决了小样本训练和微小缺陷分割模糊问题。实验表明,该模型mIoU达83.60%,较DeepLabV3+提升13.98%,对裂纹等微小缺陷检测效果显著。消融实验验证了各模块的有效性,但面对更复杂场景的泛化能力仍需进一步验证。该研究为工业场景下的叶片缺陷检测提供了实用解决方案。

2026-04-20 12:47:34 417

原创 Torchvision 0.26:深度学习视觉库全面解析

Torchvision 0.26是PyTorch生态中的核心计算机视觉库,提供六大功能模块:1)数据增强Transforms支持多模态处理;2)Models提供主流视觉架构及预训练权重,采用新版Weights API管理模型版本;3)Datasets集成常见视觉数据集;4)Operators包含高效底层算子;5)IO模块实现高速数据读取;6)Training References提供官方训练脚本。文档特别详解了VGG架构,作为经典CNN代表,其3×3卷积堆叠设计至今仍是重要基准,同时介绍了新版中模型加载方式

2026-04-20 10:57:33 516

原创 pytorch-优化器

PyTorch 2.11 文档中的 torch.optim是一个专门用于的包。如果说“模型”是躯干,“损失函数”是痛觉感官,那么 Optimizer就是大脑。它根据痛觉(Loss)来决定如何移动身体(更新参数),以求减小痛苦。

2026-04-20 09:45:42 301

原创 损失函数与反向传播

reduction这是文档中最关键的参数,它决定了如何把这一堆“差值的绝对值”合并成一个数字。'mean'(默认值):计算所有元素损失的平均值。这是最常用的,因为它让损失的大小与 Tensor 的规模无关。'sum':将所有元素的损失求和。'none':不进行合并,直接返回一个和输入形状一样的 Tensor,里面记录了每个位置对应的损失。

2026-04-19 17:13:54 361

原创 神经网络-Sequential 应用与实战

是一个顺序容器。模块将按照它们在构造函数中传递的顺序被添加到容器中。核心功能:它会自动处理数据在各层之间的传递。你不需要手动编写forward函数里的数据流代码,Sequential会自动将第一层的输出传给第二层,第二层传给第三层,以此类推。角色:它将多个子模块打包成一个单一的模块。对Sequential对象进行操作(如移动到 GPU、保存模型)会同时作用于它包含的所有子层。

2026-04-16 12:44:52 441

原创 神经网络-非线性激活

ReLU 的全称是修正线性单元。它的设计非常简单且高效:如果输入是正数,直接原样输出;如果输入是负数,则输出 0。Sigmoid 是一种非常经典的逻辑激活函数,它将输入的任意实数压缩到(0, 1)之间。在深度学习中,它常用于二分类任务的输出层,用来表示概率。# --- 第一部分:手动测试数据 ---# 创建一个 2x2 的张量,包含正数和负数,用于模拟原始输入[-1, 3]])

2026-04-14 23:14:41 417

原创 神经网络-最大池化

默认步长等于窗口大小,这意味着窗口之间不会重叠。如果步长小于窗口大小,则会发生重叠。对于窗口覆盖的区域,它只保留该区域中的。:即便特征在图像中发生了轻微的位移,最大池化输出的结果通常保持不变,这增加了模型的鲁棒性。,会同时返回最大值所在的索引。:空洞卷积参数,控制窗口内元素的间距(较少用到)。:缩小图片尺寸,降低后续层的参数量和计算压力。,表示使用 $2 \times 2$ 的窗口。(向下取整),确保输入图像的所有像素都被覆盖。池化是在每个通道上独立进行的。:在输入边缘填充 0 的层数。

2026-04-14 18:52:31 187

原创 神经网络-卷积

Conv2d是对由多个输入平面组成的输入信号进行二维卷积操作。在最简单的情况下,对于输入大小为 $(N, C_{in}, H, W)$ 的层,输出大小为 $(N, C_{out}, H_{out}, W_{out})$ 的值可以表示为:其中 $\star$ 是有效值的互相关 (Cross-correlation)运算。这一行代码是在告诉 PyTorch:“我要买一个过滤器(Filter/Kernel)”。3:输入图像有 3 个通道。这通常对应 RGB 彩色图片的红、绿、蓝。6:我想要。

2026-04-13 19:28:19 444

原创 神经网络的基本骨架-nn.Module的使用

_init__:就像是准备实验器材。你在这里声明模型需要哪些“层”(Layer)。forward:就像是实验步骤。你在这里规定数据(Tensor)进入模型后,先经过哪一层,再经过哪一层,最后输出什么。注意:你不需要手动调用forward函数,当你实例化模型并输入数据时(例如),PyTorch 会自动帮你运行forward里的逻辑。

2026-04-12 22:02:58 233

原创 unet模型学习笔记

该U-Net图像分割项目采用模块化架构设计,主要包含:1)核心组件(nets/)实现U-Net架构和主干网络;2)工具集(utils/)处理数据加载、损失计算等功能;3)资源目录(model_data/、VOCdevkit/)存储模型权重和训练数据。核心脚本包括训练控制(train.py)、预测接口(predict.py)和性能评估(get_miou.py)等,支持完整的模型开发流程。项目采用标准语义分割评价指标(如mIoU),通过模块化设计实现了数据预处理、模型训练和推理的完整闭环。

2026-04-09 22:54:50 425

原创 图像去雾算法的对比研究-opencv-python

【代码】图像去雾算法的对比研究-opencv-python。

2026-02-01 01:50:17 220

原创 ROS 面向过程编写一个python节点

这是一个阻塞调用,会让节点保持运行,等待和处理来自ROS 2系统的消息(如订阅的消息、服务请求等)。这是使用任何ROS 2功能之前必须调用的函数,它会设置ROS 2的上下文环境。这是在程序退出前必须调用的函数,用于正确释放ROS 2相关的资源。这里的"li4"是节点的名称,在ROS 2网络中用于标识这个节点。Node类是创建ROS 2节点的基类,所有自定义节点都需要继承这个类。导入ROS 2的Python客户端库(rclpy),这是所有ROS 2节点程序的基础依赖库。定义主函数,这是程序的入口点。

2025-08-28 22:29:42 285

原创 Python算法+数据结构 查找排序练习题

for line in matrix: # 遍历矩阵的每一行if target in line: # 如果目标值在当前行中return True # 找到目标,返回Truereturn False # 修正:遍历完所有行后都没找到,才返回False逐行遍历二维矩阵,对每一行使用in操作符检查目标值是否存在。h = len(matrix) # 获取矩阵的行数(height)if h == 0: # 如果矩阵为空(没有行)return False # 直接返回False。

2025-08-23 21:23:18 341

原创 Python算法+数据结构 基数排序

按桶顺序(0→1→2→...→9)将元素重新组装。:根据当前位的数字将元素放入0-9的桶中。找到最大值,确定需要排序的轮数。:从最低位(个位)开始到最高位。

2025-08-22 18:09:51 167

原创 Python算法+数据结构 桶排序

按桶顺序将元素合并得到最终排序结果。:创建n个空桶(默认100个):根据元素值计算应该放入哪个桶。:对每个非空桶进行插入排序。确保索引不超过桶的范围。

2025-08-22 17:38:31 147

原创 Python算法+数据结构 希尔排序

最后间隔为1时,就是普通的插入排序(此时列表已基本有序。先对间隔较大的子序列进行插入排序(让元素大跨度移动):通过逐渐缩小间隔,对子序列进行插入排序。开始,每次除以2,直到间隔为1。逐渐缩小间隔,进行更精细的排序。

2025-08-22 17:00:39 144

原创 Python算法+数据结构 归并排序

O(n log n) - 最优、最差和平均情况下都相同。:O(n) - 需要额外空间存储临时列表。:大数据量排序,尤其是链表排序和外排序。:稳定排序(相等元素的相对位置不变)

2025-08-18 22:35:02 315

原创 Python算法+数据结构 堆排序topk问题

总体:O(NlogK) - 比完整排序 O(NlogN) 更高效。O(K) - 只需要额外存储 K 个元素。内存效率高(只需要维护大小为 K 的堆)处理剩余元素:O((N-K)logK)大数据集中查找最大/最小的 K 个元素。实时数据流中的 TopK 查询。堆排序:O(KlogK)内存有限时处理大规模数据。不需要完全排序整个数据集。时间复杂度优于完全排序。

2025-08-18 22:05:00 335

原创 Python算法+数据结构 堆排序

【代码】Python算法+数据结构 堆排序。

2025-08-17 15:33:14 111

原创 Python算法+数据结构 排序(冒泡,插入,快速排序)

重复遍历列表比较相邻元素,如果顺序错误就交换它们每轮遍历后,最大的元素会"冒泡"到正确位置。

2025-08-17 14:36:05 492

原创 Python算法+数据结构 查找

也叫线性查找,从头到尾依次查找这行定义了一个名为 `linear_search` 的函数,它有两个参数:- `li`:一个列表(或其他可迭代对象),我们将在其中进行搜索。- `val`:我们要在列表 `li` 中查找的目标值。这行开始一个循环,遍历列表 `li` 中的每一个元素。使用 `enumerate` 函数可以同时获取元素的索引和值。- `ind`:当前元素在列表中的索引(位置,从0开始)。- `v`:当前元素的值。

2025-08-16 21:29:33 175

原创 Python算法+数据结构 递归(汉诺塔问题)

调用自身结束条件。

2025-08-15 22:00:23 618

原创 Python深度学习 numpy数组的索引

矩阵同理。

2025-08-07 20:57:38 260

原创 Python深度学习 numpy数组的创建

根据B站up主的课程整理的笔记。

2025-08-07 16:20:49 283

原创 Matlab科研绘图

!(使用资料来自up公众号)

2025-08-06 18:26:38 673

原创 Matlab三维绘图

【代码】Matlab三维绘图。

2025-08-05 14:37:05 199

原创 Matlab 绘制二维平面图

【代码】Matlab 绘制二维平面图。

2025-08-03 19:10:49 223

原创 Matlab入门 程序结构(含例题)

case数值或字符串1。case数值或字符串2。switch 表达式。

2025-08-03 18:21:12 222

原创 Python深度学习 numpy 数组基础

根据B站up主的课程整理的笔记。

2025-08-02 22:52:21 222

原创 Python numpy 简易版安装

run后出现红色报错,最后一行显示no.....path,去更新pip。4.输入下面字符,运行,自动多出一行,可以开始使用numpy。一 .安装 pip方式(前提是已经下载过python)回车,几秒钟后自动打开此网页。5.可能出现的错误/问题。2.再输入cmd,输入。3.选择python3。

2025-08-02 21:49:24 232

多模态-复现OpenAI的CLIP模型

多模态-复现OpenAI的CLIP模型

2026-07-07

空空如也

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

TA关注的人

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