自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 java开源项目源码阅读 数据源

接上篇java开源项目源码阅读 mall4cloud-CSDN博客。

2023-11-10 00:00:18 97

原创 java开源项目源码阅读 mall4cloud

自定义异常代码,统一使用自定义异常类处理, 在统一异常拦截中,拦截了自定义异常类。

2023-11-09 13:45:03 146

原创 mall4cloud 开源项目源码阅读

前端:登录再进入菜单,整个流程是怎么样子的。涉及到的技术,请求,状态管理,路由拦截,路由。后端:token是怎么生成的?每一次请求是怎么校验token,权限的?。

2023-11-08 20:52:43 232

原创 java跨域问题

【代码】跨域访问。

2023-10-26 02:41:15 64

原创 响应异常处理

确定返回的json格式。@Schema(description = "返回消息")@Schema(description = "返回码")@Schema(description = "是否成功")@Schema(description = "返回数据")@Override'}';/*** 成功代码*//*** http成功*//*** 异常码,http相关*/FORBIDDEN(403, "禁止访问"),

2023-10-26 02:04:11 30

原创 p104 rx590 双卡 配置pytorch cuda开发环境 加恒源云开发环境

最重要的原因是没钱!!!!。a卡价格低,适合玩游戏。p104价格就100多,拿来作为本地调试已经搓搓有余了。再加上恒源云,按时间收费,可以使用4090, a100等等显卡,冲个100块钱学习就够用了。所以配置一台深度学习的机器,只需要2000元不到。这样一来,既可以本地使用低廉的gpu作为本地调试,也可以使用云环境的4090 a100这些买不起的gpu跑调好的代码。是没有钱的小伙伴最好的途径。

2023-09-03 23:56:24 591

原创 cv2 plt 绘制目标框 文字 掩码

example: 如果需要显示汉字则 输入一个汉字, 默认英文字符。txt_color=(255, 255, 255) 文本颜色值。color: (128, 128, 128) box颜色值。font_size:字体,不填将下载yolo字体。im: 需要绘制的图片(h, w, c)line_width: 线的宽度。label: str 标签名。yolo中有一个现成的类。xy: 绘制文字的位置。绘制矩形只使用plt。

2023-06-18 17:48:28 384

原创 pyqt 开源项目源码阅读

github。

2023-04-12 20:01:19 682

原创 pyqt 开源项目源码阅读

接上一篇提供两个类 dialog, mainwindow, 根据操作系统作了一个判断, 目前是win ,linux, mac继承关系class WindowsFramelessWindow(QWidget):设置titlebar实现qwidget resizeEvent事件。 resize时,调节 titlebar的大小。def setResizeEnabled(self, isEnabled: bool):设置resize禁用。无边框窗口弹窗

2023-04-12 00:43:27 195

原创 pyqt 开源项目 TitleBar 组件

接上一篇文章:自定义titlebar组件这个就是titlebar不是一种很好的设计,因为子类需要调用insertWidget ,来插入组件实现更多功能。必须要读了父类,才知道 inserWidget 插入的索引位置。不过好在简单。

2023-04-12 00:06:05 262

原创 pyqt 开源项目源码阅读

button继承结构:打开qt设计师qwidget:大概有的功能:0:设置对象id1:设置可用2: 设置 当前的xy位置 与宽高3:设置字体4:设置移动的光标形状5:设置提示信息6:设置qss样式1: 设置文本2: 设置图标3: 设置图标大小需求:光标移动到组件, 离开组件,和按下组件的时候改变颜色。设计思路:定义3个状态的枚举类型, 定义进入,离开,按下三类事件,控制button状态。通过_getColors方法获取当前状态下的颜色, 由子类完成动画绘制。NORMAL = 0。

2023-04-11 20:53:20 324

原创 pyqt 控件

QLabel对象作为一个占位符来显示不可编辑的文本或图像,或GIF动画的影片。它也可以作为其他小工具的记忆键使用。普通文本、超链接或富文本都可以在标签上显示。

2023-03-22 21:39:49 109

原创 pyqt api 学习

目录简介:QObjectsetParent(self, parent: QWidget):parent(self):children(self):findChildren(self, *__args):setObjectName(self, name):setProperty(self, name, value):dynamicPropertyNames(self):property(self, name):代码blockSignals(self, b: bool) -> booldisconnect(se

2023-03-20 00:26:30 154

原创 python 错误non-default parameter follows default parameter

python语法规定。有默认值的参数,得放在没有默认值的参数之后。

2023-03-19 15:44:11 81

原创 pyqt5 + Qt Designer 设计ui界面

pycharm -> tool -> External tools -> qt designet 打开。生成的代码: 是继承的object 提供了一个setui方法,传入我们自己的容器。有哪些事件是一个问题,我找了很多资料都没找到。但是有一种方法可以查到有那些事件。可以看见每个组件有哪些信号,并且还可以看见组件自带的函数(曹)通过qt desiger。曹可以理解为执行函数。

2023-03-15 14:06:08 520

原创 pyqt 样式:

开源项目, 提供了很多样式。

2023-03-14 19:41:50 33

原创 PYQT5 例子

pyqt5/examples/widgets at master · baoboa/pyqt5 · GitHub设计思路:主体网格布局,里面放容器 class IconPreviewArea(QWidget): 也是一个QGridLayout 布局的容器createImagesGroupBox: QTableWidget 布局 事件:createIconSizeGroupBox:QRadioButton() 单选框IconSizeSpinBo

2023-03-14 19:38:20 62

原创 pyqt Example

iconfont-阿里巴巴矢量图标库。

2023-03-14 14:55:59 46

原创 pyqt5

官方提供了几本书,我没钱买。有钱买了的大哥,可不可以提供一份拷贝本。这是一个前端框架。特点是跨平台:Windows, Mac or Linux官方说的安卓苹果也支持。只不过向导只有电脑上的例子。很简单的一个框架,最重要最重要的是它是跨平台的,而且还可以用python实现,对于自己来落地一个算法,无疑是最节省时间的。下一篇,了解更多的api,和布局技巧。

2023-03-14 12:45:04 44

原创 yolo 实例分割

1: 生成掩码标签图:列如(8, 160, 160)。8表示8个标签, 8张图片。2: forword: 调用 proto(输出为(32, c, c)) proto 有一个上采样,所以步长为4为什么需要proto?如果不加proto。那么就掩码坐标预测,就只能放在输出的最后一位(1, 3, 80, 80, 117)因为模型输出的掩码是固定的32位,实际数据可能是54, 64个掩码。所以无法设计损失函数。例如掩码的图片为(160, 160)。模型输出也是(160, 160)。

2023-02-19 17:18:46 1659 6

原创 yolo 推理 nms

另外一个说明cv2绘制不了中文,但可以用其他包实现。

2023-02-18 15:41:46 448

原创 yolo中 LoadImages, LoadScreenshots, LoadStreams

path: 路径地址(图片文件夹,文件,视频文件夹,文件,或者两者混合都可以。img_size: resize,或者letterbox转换后的大小。transforms: 自定义transforms。stride: letterbox转换参数。auto: letterbox 转换参数。功能:获取远程数据流 RTSP, RTMP, HTTP streams。功能: 读取本地图片,视频,摄像头数据。path : 文件地址。im: 增强后的图片。im0s: 原始图片。功能: 获取本地屏幕截图。

2023-02-17 18:15:27 1792

原创 自动调节学习率,混合精度训练

测试过程出现了梯度爆炸,原因是学习率的自动调节。具体用那个学习率,我没看见比较好的说明。

2023-02-16 18:54:25 238

原创 冻结训练。

一般选择前面几层stage,不让它参与训练,因为觉得它已经训练的比较好了,前面几层一般是提取的公共特征。实现很简单,几行代码。

2023-02-16 16:40:12 400

原创 yolo 分布式训练。

-1:当使用单进程, 单机多卡模式 ,DP模式的时候。RANK, LOCAL_RANK初始化就是-1.但是使用多进程,多机多卡, DDP模式的时候。这个时候不能把训练代码,当成单进程来看待,实际是多进程。一般的策略。主进程(0, -1)打印日志,统计数据,或者dataload切割的时候,主进程要负责数据的切割。

2023-02-15 23:43:13 692

原创 yolo锚框, 损失函数

tcls: 分类数据tbox: xywh 框数据indices: 索引数据image: 图片索引例如一个3大小的批量 则[0, 1, 2],如果筛选出4个标签则可能是[0, 0, 1, 1]anchor:先眼眶索引,列如筛选出四个标签 则可能他们对应是anchor索引为[1, 0, 2, 1]grid: 网格索引,假如讲特征图划分为8 * 8的大小。筛选出4个标签,则它们的网格有可能是[[3, 4], [3, 5], [4, 6], [5, 5]]

2023-02-11 19:58:10 221

原创 pytorch分布式编程

看下原文的描述,我英语比较差,只能看个大概意思,贴出原文,怕翻译错误。文档地址多机多卡:这里告诉我们为什么要使用ddp,它更快。

2023-02-01 16:24:44 341

原创 pytorch dataload源码解读

执行流程:初始化dataloader -> 创建索引策略(sample) -> 迭代 __next__ -> 选择选择进程迭代器 -> 工作进程读取索引,数据 放入队列中 -> 主进程从队列中取得数据 -> 完成迭代。sample: 负责随机策略, 通过dataset的 len() 初始化一个索引列表。batchsample: 负责切取 batch大小的索引列表。_MultiProcessingDataLoaderIter : 完成迭代策略,因为数据先读到队列里,所以内存压力很大。

2023-01-30 14:31:34 404

原创 augmentation 开源包

git地址:文档地址:调试工具地址:

2023-01-29 16:11:57 120

原创 精读yolo LoadImagesAndLabels类

做了几件事读取文件路径 生成标签路径处理标签信息: 得到shap, 目标检测坐标,分割坐标设置索引缓存:标签信息和图片信息。np.save() 内存/ram: 直接读进来cv.imread。

2023-01-20 02:33:26 1364

原创 重写yolo数据加载模块

"""Args:.. note::"""具体的可以看看,我另外一篇关于这个类的源码阅读。这个类我觉得相当于定义了一种编码规范其他一些增强的方法,都差不多。主要就是索引处理,标签和图片加载。性能肯定比yolo原生的差多了,yolo原生标签,图片在初始化就统一处理了,然后缓存。所以代码量非常大,可阅读性很差。另外torchvision.datasets这个包提供了一套编码规范逻辑很清晰。初学的话,照这个来,我觉得是比较好的选择。

2023-01-18 01:51:15 405

原创 torchvision.datasets.ImageFolder

如果要重写,我觉得主要就是getitem方法。首先:类给主要给我们提供了,文件读取的方法。我们可以直接拿到文件路径集合。有了文件路径,就没必要用它的文件加载方法。yolo中有更高效的方法,如果是目标检测,我们可以重新指定标签,比如yolo中规定标签和图片名一样,便于找到。

2023-01-17 01:19:43 829

原创 一些数据增强

np.ascontiguousarray()详解 - 九叶草 - 博客园yolo中最后都要调用这个,为了性能更快。PLT显示的图像都有问题,不知道是什么原因,只有最后一张图片是用opencv显。

2023-01-16 23:59:28 244

原创 yolo模型解析方法parse_model

可以看到新加的模型被添加进去了:至于输出为什么1024 不是2048. 这里受宽度参数调节的。2 : parse_model函数 如下添加。

2023-01-11 18:05:37 1073

原创 mixup 增强

1 beta 分布取一个随机数 r2 取两张图片 resize公式 :r * img1 + r * img2结果:具体实现:return im。

2022-12-31 02:27:11 61

原创 yolov7源码解读之mosaic增强

mosaic增强

2022-12-31 02:20:52 1367

原创 yolo5源码解读 v7

比如模型输出的shape(1,3,80,80,85): 80,80就代表网格的宽高。解释:比较早的版本是计算iou,v7改成了计算高宽比,只取最大的,因为要么小于1,要么大于1.越小越不好,越大也越不好,为了方便就取最大的。detect转换后的shape形状(图片数量, 先验框(默认3,每一个类别的3种类型), w,h, 预测类型 + 5(x ,y, w, h ,iou))配置文件 -1的时候,直接后面的模型。列如:[(1,3,32,32,85),(1,3,16,16,85),(1,3,8,8,85) ]

2022-12-25 02:56:25 411 1

空空如也

空空如也

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

TA关注的人

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