自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (1)
  • 收藏
  • 关注

原创 使用diffusers库训练自己的数据

在这个代码链接里面拉取最新的代码,里面的examples有很多使用实例,比如说原始的diffusion,控制网络等等,对应的任务就是无条件图像生成、文本到图像、文本引导的图像到图像的生成任务等等,可以根据自己的需求选择。里面的内容来进行训练,使用hugging face 提供的数据集,如何要训练自己的数据集的话,就按照提供的数据集替换里面的内容就好了。需要注意的是需要将.py的名字改成和你存放路径同样的名字,然后将存放路径作为 train_data_dir的参数传入,就可以训练了。

2025-02-25 10:12:18 308

原创 如何将分割的mask转为为分割标签

将分割的mask转换为分割标签通常涉及将每个像素的类别标识(在mask中以不同的灰度值或颜色表示)转换为整数标签。这些标签通常用于机器学习或深度学习模型的训练、验证和测试阶段。转换代码,来自X_anyLabeling的tool文件夹下的转换文件。

2025-01-08 11:44:00 207

原创 YOLOv8分割训练自己的数据全面指南:从环境搭建到训练、验证及预测的深度解析

YOLOv8是Ultralytics公司推出的YOLO(You Only Look Once)目标检测系列版本。它是一个先进的、实时的目标检测模型,旨在提供高精度和高速度的目标检测能力。YOLOv8建立在YOLO系列之前版本的成功基础上,并引入了多项新的功能和改进,以进一步提升模型的性能和灵活性。具体来说,YOLOv8采用了新的网络结构,包括新的骨干网络、特征融合模块和检测头,以优化特征提取和目标检测的能力。它还引入了新的损失函数和标签分配策略,以提高模型的学习效率和检测准确性。

2024-11-19 10:48:03 879

原创 将分割标签数据从JSON格式转换为YOLOv8的TXT格式

AnyLabeling是一款突破性的开源图像标注工具。

2024-11-18 17:55:13 808 3

原创 使用高斯差分DOG(Difference of Gaussians)检测图像中的斑点或者边缘

高斯差分是指两个不同尺度下的高斯模糊图像之间的差值。具体而言,它通过对原始灰度图像应用两个具有不同标准差的高斯核进行卷积,得到两个模糊图像,然后计算这两个模糊图像之间的差分,从而生成高斯差分图像。

2024-11-11 10:17:53 928

原创 cv2.threshold利用OTSU方法分割图像的前景和背景

该方法由日本学者大津(Nobuyuki Otsu)于1979年提出,旨在通过最大化前景与背景之间的类间方差来自动确定一个最佳阈值,从而将图像分割成前景和背景两部分。OTSU方法具有自适应性强、分割效果好的优点,特别适用于目标单一的图像分割。然而,对于多目标图像或灰度分布不均匀的图像,OTSU方法可能无法获得理想的分割效果。OTSU方法的核心思想是寻找一个阈值T,使得图像的前景(高灰度值区域)和背景(低灰度值区域)之间具有最大的类间方差。类间方差越大,说明前景和背景的区分度越高,分割效果越好。

2024-11-06 09:36:15 791

原创 cv2.Laplacian利用LOG(Laplacian of Gaussian, LOG)提取图像的边缘或者检测斑点

利用高斯拉普拉斯算子(Laplacian of Gaussian, LOG)提取图像边缘是一种结合了高斯平滑和拉普拉斯边缘检测的方法。这种方法首先使用高斯滤波器对图像进行平滑处理,以减少噪声对边缘检测的影响,然后应用拉普拉斯算子来检测平滑后图像中的边缘。拉普拉斯算子的结果是一个图像,其中边缘区域会有较高的绝对值。对平滑后的图像应用拉普拉斯算子,使用OpenCV的。函数或Matplotlib库来显示边缘检测结果。函数对灰度图像进行高斯平滑处理。你需要导入OpenCV(函数将图像转换为灰度图像。

2024-11-05 14:03:08 486

原创 Nomacs:Linux下的全能图像查看器,快速、多功能与跨平台体验

Nomacs是一款免费的开源图像查看器,专为Linux系统以及其他操作系统(如Windows、MacOS、FreeBSD等)设计。它以其快速启动、图片打开速度快以及多窗口运行的能力而著称。Nomacs的界面简洁直观,提供了丰富的功能来满足用户的不同需求。

2024-09-27 09:09:21 1143

原创 The Llama 3 Herd of Models 第8部分语音实验部分全文

Llama 3第8部分,语音实验部分

2024-08-05 15:45:25 1354 1

原创 The Llama 3 Herd of Models 第7部分视觉实验部分全文

Llama 3第7部分,视觉实验部分

2024-08-05 15:25:12 964

原创 基于DDP的单机多卡分布式训练深度学习程序

单机多卡训练程序

2024-08-01 16:52:44 1530

原创 rle的编码与解码的代码实现Python

rle的编码与解码的代码实现

2024-08-01 09:34:03 744

原创 The Llama 3 Herd of Models 第6部分推理部分全文

Llama 3第6部分,推理部分

2024-07-29 16:46:21 864

原创 The Llama 3 Herd of Models 第5部分,结果部分全文

Llama 3第5部分,结果部分

2024-07-29 16:28:20 645

原创 The Llama 3 Herd of Models 第4部分后训练的全文

Llama 3 第4部分全文

2024-07-29 10:57:49 530

原创 计算model的参数量和计算量通过summary和ptflops方法

查询model的参数量和计算量

2024-07-26 15:06:04 382

原创 The Llama 3 Herd of Models.Llama 3 模型第1,2,3部分全文

Llama 3 模型论文全文,了解Llama 3的训练细节和效果

2024-07-25 16:25:51 2039

原创 使用pymongo连接mongodb数据库与在mongodb数据库中查询数据

使用pymongo连接mongodb数据库与在mongodb数据库中查询数据

2024-07-25 09:50:42 569

原创 测试集数据语义特征t_SNE降维可视化

载入训练好的模型,对测试集图像进行分类在图像分类通用步骤中,第一步是训练数据集,第二步是测试数据集,而无论是训练还是测试,对我们而言都是黑盒子。我们只知道模型从训练数据中学习到了特征,然后应用到测试集数据集中,最终得出测试集数据的分类结果。对于其中的细节,我们就不得而知了。因此本文将在训练好模型的基础上,在测试集进行数据降维可视化,观察模型将不同数据划分到什么位置,有助于我们理解模型在面对图像是进行了怎样的判断。载入训练好的模型,对测试集图像进行分类数据预处理,采用ImageNet的预处理方式载入数据。

2022-10-24 16:08:09 4651 2

原创 2022华为杯C题汽车制造涂装-总装缓存调序区调度优化问题建模解决

如果去除PBS约束说明中第6、7两条约束,其余约束不变,根据涂装出车序列,考虑PBS区域调度能力及限制,建立PBS优化调度模型,使得总装进车序列尽可能满足总装生产需求。由于各车间的约束不同导致生产调度无法按照同一序列连续生产,特别是涂装车间与总装车间序列差异较大,这就需要在两个车间之间建立一个具有调序功能的缓存区,即PBS(Painted Body Store,汽车制造涂装-总装缓存调序区),用来将涂装车间的出车序列调整到满足总装车间约束的进车序列。各车道距离等分,每车道宽度2米,两相邻车道间间隔1米。

2022-10-11 14:35:43 1690 1

原创 深度学习过程中测试准确率先上升后下降是为什么?

在初始训练阶段,模型逐渐开始学习到一些信息,因而在验证集上的表现是提升的,在到达某一点后,模型接着训练则会更加的去关注一些细枝末节的东西,即模型表达更加多。1.早停,既然模型在某一点时达到最优,那么就设置模型在最优点附近停止训练。在整个训练过程中,虽然说模型出现了过拟合,但是其在训练集上的损失还是趋于平稳的,并不会说因为过拟合而导致损失波动。在训练过程中的验证准确率前上升,后下降,即在验证集上的表现先好后差。3.改变数据,使数据更加复杂,多变,适应模型,也能取得不错的效果。2.为模型增加惩罚项,即正则化。

2022-09-11 10:26:17 10490 1

原创 pytorch迁移学习载入部分权重

使用官方预训练权重,这样的权重包含的信息量大且全面,可以适配一些小数据的任务,即小数据在使用迁移学习后仍然能够保持良好的性能,避免的小数据带来的数据不足,模型训练不充分的问题。载入自己的训练的权重在模型测试和继续训练时使用较多,模型测试载入权重就不说了,继续训练是指假设设置epoch为500,训练接受后,发现模型仍然没有收敛,那么你就可以载入epoch为500时的训练权重,再训练500的epoch,这样你对模型就总共训练了1000个epoch,而不需要在发现模型未收敛时,又重头去训练1000个epoch。

2022-09-05 16:54:51 2846 1

原创 python查看网络的特征图,并计算特征图的直方图,并计算香农熵。

查看特征图的原理在网络的每一层输出中,都会输出一个[b,c,h,w]维度的数据,b是batch的大小,c是通道数,h,w是高和宽。比如某一层的特征图是32x64x112x122,即batch大小为32,通道数为64,大小为112x112的图像。我们读取到这个数据32x64x112x122之后,将其batch维度压缩掉,然后在转换成为图像的PIL格式,即112x112x64.这也就意味着我们有64个112x112大小的图像,我们只需要读取每个通道的图像就可以看到特征图。1.获取输出在p

2022-05-25 19:43:54 2500 6

原创 孪生网络pytoch实现,以resnet为特征提取网络

我的孪生网络代码来源于孪生网络博主,这里的源代码使用的vgg16作为特征提取网络,我的主要工作是将vgg16替换为resnet网络。1.建立resnet网络import torch.nn as nnimport torch# from torchvision.models.utils import load_state_dict_from_urlfrom torchsummary import summaryfrom torch.hub import load_state_dict_fro

2022-05-07 16:39:10 4527 18

原创 OSError: [Errno 28] No space left on device以及查看系统分区情况

在Linux服务器运行程序的时候,运行完一个epoch后就会出现这个报错OSError: [Errno 28] No space left on device。大致意思就是说系统的空间不足。查看系统空间的使用情况:df -h可以看到其中有一个文件夹已经占用100%了,所以提示空间不足。解决办法就是删除掉文件夹内的一些东西即可。查看空间的占用:du -sh /home/* |grep G...

2022-05-05 10:02:39 48250 1

原创 2022年第十四届华中杯数学建模A题解题思路附代码

A 题 分拣系统优化问题 某电商公司配送中心的工作流程分为统计汇总、转运上架、按订单分拣、核对打包等 步骤。其中,分拣环节操作复杂,耗时较长,其效率是影响配送中心整体性能的关键因素。 首先,系统统计汇总出当天全部待配送订单所包含的所有货品及相应数量。然后,转运工 将这些货品由仓库转运至分拣处,并放置到货架上,等待分拣。上架时,一个货架中仅放 置同一种货品。为简化问题,不考虑货架...

2022-05-03 08:48:22 11877 71

原创 第十届泰迪杯数据挖掘挑战赛A题解题思路附代码

A题:农田害虫图像识别赛题描述一、问题背景病虫害一直是农业生产中无法避免的问题,每年都会由此造成巨大的经济损失。为了对农田病虫害进行有效的预防和控制,需要收集有害生物信息,在此基础上进行虫情分析。由于农田害虫的多样性和信息类型的复杂性,通过人工观察统计的传统害虫监测方式已经难以满足现代大规模农业生产对虫害预防工作的需要。近年来出现的虫情测报灯是虫情信息采集的智能设备,可以在无人...

2022-05-02 17:14:49 3135 8

原创 labelImg的使用教程,快捷键,用于标注voc或者yolo格式的数据

labelImg是用于图像标注的软件,其用途是为制作xlm格式的标签或者是txt格式的标签,两种标签格式都可以作为YOLO5的训练标签。1.安装安装labelImg的方法是直接依托pip安装的,其命令如下:pip install labelImg我这里已经安装过了,所以显示的是已经有了。2.调用调用labelImg时,只需要在命令窗口输入即可。labelImg也可以在你需要标注的文件内,直接鼠标右键加shift进入在此处打开powershell,然后输入labelIm

2022-05-01 09:15:51 9254

原创 YOLOv5训练自己的数据集

1.找到代码:YOLO5的代码可以在GitHub上找到,最好是用最新的代码。YOLO5https://github.com/ultralytics/yolov5可以选择在网站上面下载代码,或者用命令克隆代码也行;git clone https://github.com/ultralytics/yolov5 代码克隆好以后会放在当前克隆命令文件夹的yolov5文件里。2.配置环境:YOLO5要求python大于等于3.7.0,pytorch大于等于1.7版本。可以根据自己的硬件设.

2022-04-25 12:27:34 918

原创 向CSV文件写入多个内容的方法。

1.使用pandas写入内容。依托pandas中的DataFrame函数,实现对数据的写入。这是按列的方法写入CSV文件中,即每个参数保存的是要写入的每列的元素。下面是一个简单的示例:import csvimport pandas as pdlist=['0001.jpg',1312,151,1651,1561,1561,51658,100]index=[]tupan=[]x1=[]x2=[]x3=[]x4=[]x5=[]x6=[]x7=[]list_n=[]

2022-04-25 12:26:50 6163

原创 python使用random.sample将数据集随机划分为训练集与验证集并另存在文件夹中,设置随机种子

在做深度学习或者其他学习需要的时候,要求我们将数据集划分为训练集和验证集,一般来说按照9:1,8:2的比例划分训练集和验证集都是可以的。我们基于random.sample函数来实现对数据的划分。假设我们数据摆放如下:images里面存放的 是训练的图片,labels里面存放的是图片的标签信息,如TXT,xml等信息。我们最终做成的结果如下:在每一个文件夹里都存在一个train文件和val文件,val里存放的文件来源是从train里面随机抽取出来的。train与val里面的数

2022-04-25 12:26:16 9452 3

原创 YOLO5的数据增强和权重设置hyp.scratch-med.yaml文件解读,degrees角度旋转和水平、垂直翻转解释

在新的YOLO5代码中,其中的超参数设置文件已经变成了5个,如下:放在data文件夹下得hyps文件夹中。作者对于这些文件的解释如下:这是什么意思呢?可以翻译为中文看看:这样是不是就比较清楚了。这个文件的调用命令在train.py里面,如下:那么我们接下来看看这个hyp.scratch-med.yaml超参数设置文件里面都有些什么内容吧。#YOLOv5 🚀 by Ultralytics, GPL-3.0 许可证#用于从头开始进行中等增强 COCO 训练的超...

2022-04-22 17:52:04 12291 3

原创 Overriding model.yaml nc=80 with nc=28

在使用yolov5训练自己的数据集的时候可能会在运行代码的输出过程中会出现如下的一个信息,但是代码依旧能够运行。这个的意思是说模型中设定的分类类别与你自己在.yaml文件中配置的nc数值不匹配,只需要修改模型.yaml文件即可。找到你自己所用的模型对应的.yaml文件,在model文件夹里,以yolov5s为例:修改如下即可:如果这样修改之后还是出现这样的提示,Overriding model.yaml nc=80 with nc=28那么可以再看看train.py文...

2022-04-20 15:02:33 7266 6

原创 WARNING: NMS time limit 1.060s exceeded

在使用yolo5训练数据时候会出现这样的警告:WARNING: NMS time limit 1.060s exceeded其实这也不能算是错误,是一种正常的现象。在训练的早期阶段发出警告是很正常的,因为网络仍在学习课程的特征。因此,在早期阶段,网络“几乎随机”给出了很多猜测,因为它不确定正确的特征!经过一些训练时期(可能几十或几百个,取决于数据集),网络将更加确定其预测,并且警告将自然消失。...

2022-04-20 14:49:56 10351 2

原创 pytorch如何指定GPU设备运行代码

查看自己的GPU设备:nvidia-smi在某一块设备上运行代码的基本条件:1.有这个设备;2.代码所需的数据在这块设备上,代码所需的数据是指网络的模型以及训练数据两部分,只要这两部分在同一块设备上,就可以运行。1.单GPU设备:1.1使用DataParallel()函数:由于使用的是单GPU,所以其设备编号一定是0.所以这样默认的调用GPU0.impor torch.nn as nn# 模型加载# 假设模型初始化如下:model=VGG16()# 将其指

2022-04-19 15:05:44 2712 1

原创 Linux服务器成功安装CUDA11.3和cudnn

说在前面:NVIDIA的显卡驱动与CUDA的版本并不是严格的一一对应关系,CUDA实际上也只是一个工具包,我们可以根据自己的需求进行安装,即可以安装多个CUDA版本。同时CUDNN是一个SDK,专门用于神经网络的加速包,它与CUDA也没有严格的一一对应关系,可以选择多个版本的CUDNN进行安装。虽然说不是严格的对应,不过还是要服从大版本的对应,即安装之前查看GPU驱动版本与CUDA版本的对应关系,选择对应的版本进行安装,避免不兼容而报错的错误。查看版本对应关系https://docs.nvidia.

2022-04-19 15:04:16 20641 5

原创 python数据处理之pandas.read_csv()用法详解

def read_csv( filepath_or_buffer: FilePathOrBuffer, sep=lib.no_default, delimiter=None, # Column and Index Locations and Names header="infer", names=None, index_col=None, usecols=None, squeeze=False, p

2022-04-15 22:11:21 6155

原创 Linux服务器成功重装centos7系统,图形界面安装

在某些情况下,我们可能会遇到重装服务器操作系统的需求,比如服务器长时间没用,不记得其登录密码,嫌弃以前的系统不好,或者想要换一个操作系统。下面就详细指导如何安装centos7系统的图形界面。假设前提是我们已经拥有了一个制作好centos7系统的镜像U盘,如果没有的话可以百度一下如何用U盘制作一个centos7的系统镜像。1.读入操作系统将U盘插在服务器上,然后重启服务器,按F11进入bost 系统菜单界面,然后选择U盘的名称,选择进入,就可以看到centos7的安装选项了。第一个选项

2022-04-12 20:48:37 7244 1

原创 Linux服务器修改系统时间

Linux服务器在某些情况下可能会导致系统时间与当前时间不一致的情况,比如说操作系统之后,或者长时间断电之后,或者多次重启之后,或者是上一次设置时间时没有将其写入系统中,导致重启后时间失效的。下面就记录一下如何修改系统时间:查看系统的当前时间:date显示的是2019年的时间,与当前时间不匹配。我们直接手动修改时间,不需要去改什么时区之类的东西:输入一下命令修改年月日:date -s 12/04/2022修改时分秒:date -s 20:09:40..

2022-04-12 20:12:28 3045

原创 解决Linux服务器(Windows)tqdm进度条不待在一行,总是换行的情况。(tqdm详解)

在运行代码时,会有一个进度条,显示当前代码运行的进度,但是有时会出现进度条总是换行的情况,这就让人很不爽,必须找个方法解决了。我们来看一下tqdm的参数,及其说明: def __init__(self, iterable=None, desc=None, total=None, leave=True, file=None, ncols=None, mininterval=0.1, maxinterval=10.0, miniters=None,

2022-04-12 18:52:22 7703

清华大学DeepSeek:从入门到精通

清华大学DeepSeek:从入门到精通

2025-02-10

YOLOv5网络结构完整版,Visio源文件

YOLOv5,6.0版本完整版网络结构图,包含SPPF结构

2022-12-07

图像分类数据集Oxford-102花分类数据集

自然图像分类数据集Oxford-102。Oxford 102 Flowers Dataset 是一个花卉集合数据集,主要用于图像分类,它分为 102 个类别共计 102 种花,其中每个类别包含 40 到 258 张图像。 2008年由牛津大学工程科学系发布。面向深度学习人群,可用于验证神经网络性能,主流的VGG,GOGELNET,残差网络等网络都可以用于训练。适合新手人群做学习使用,可将其划分为6149张图片做训练,1020张图片做验证,1020张图片做测试。

2022-04-05

空空如也

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

TA关注的人

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