- 博客(37)
- 资源 (2)
- 收藏
- 关注
原创 PyTorch 单机多卡分布式训练
main.py train训练代码阅读心得阅读代码官方的ImageNet例子设备处理args = parser.parse_args()if args.seed is not None: random.seed(args.seed) torch.manual_seed(args.seed) # 由于计算中有随机性,每次网络前馈结果有差异 # 为了避免这种结果波动,设置 cudnn.deterministic = True cudnn.deterministic
2021-08-03 22:59:30
1767
原创 比较好的CV链接收藏(动态更新)
数据增强 transforms的二十二个方法https://blog.youkuaiyun.com/weixin_38533896/article/details/86028509深度学习三十问!一位算法工程师经历30+场CV面试后总结的常见问题合集(含答案)https://zhuanlan.zhihu.com/p/3763697953W字长文带你轻松入门视觉transformerhttps://zhuanlan.zhihu.com/p/308301901...
2021-07-29 23:32:56
521
原创 学习率优化策略
Warmup 策略深度学习中, 模型的初始权重是在训练启动阶段随机生成的, 选择 Warmup 策略可以使模型在训练初期使用较小的学习率进行训练, 经过设定的一定数量的迭代次数, 模型趋向稳定后, 再改为预先设定的学习率, 达到预热学习率的效果, 可以防止模型震荡, 加速网络收敛速度, 提升效果.实验中使用 Warmup 策略中的 Gradual Warmup, 即在学习率预热阶段中学习率随着迭代次数增加也逐步提高, 直到预热阶段结束时学习率达到预设定值, 再进行后续训练, 这样能够避免学习率突然增
2021-06-22 18:21:45
784
原创 python 实现视频流播放
前言本项目应用于目标检测在服务器端,没有gui界面查看实时结果的项目上。如果考虑自己用,可以直接使用flask-video-stream简易视频流搭建来进行轻量化的搭建,但是带宽开销比较大,没有使用H264等协议,720清晰度大约带宽开销15MB,现场项目上无法使用,因此切换成ffmpeg+videojs(vlc也可以,客户端查看)+python的方式实现目标检测的视频流展示。rtmp 服务器搭建在服务器端搭建一套rtmp,接收视频流的传输,可以采用docker的方式实现一键化部署,实现链接放这里了
2021-02-24 13:42:55
7038
4
原创 如何解决训练集和测试集的分布差距过大问题
StratifiedKFold可以借用sklearn中的StratifiedKFold来来实现K折交叉验证,同时根据标签中不同类别占比来进行拆分数据的,从而解决样本不均衡问题。#!/usr/bin/python3# -*- coding:utf-8 -*-"""@author: xcd@file: StratifiedKFold-test.py@time: 2021/1/26 10:14@desc: """import numpy as npfrom sklearn.model_se
2021-01-26 11:44:21
4435
原创 前50%股票成交量占比计算
一个成熟市场,前50%市值的股票成交量占比总的成交量是4%。2016年是45%,A股目前(2020.12)是19%,预测这个数字会越来越低,用python计算了当日成交占比。import pandas as pdimport tushare as tsimport timeimport datetimeimport osimport csvimport numpy as npdef cmp(elem): return elem[1]todate = datetime.da
2021-01-08 02:25:48
1583
2
原创 DeepSort 总结
DeepSort与Sort先把两者区别写出来:Sort 算法利用卡尔曼滤波算法预测检测框在下一帧的状态,将该状态与下一帧的检测结果进行匹配,实现车辆的追踪。DeepSort中采用了一个简单的CNN来提取被检测物体(检测框物体中)的外观特征(低维向量表示),在没帧检测+追踪后,进行一次物体外观特征的提取并保存。Sort的问题:匹配的时候用的是匈牙利算法,但是当物体遮挡之后,前后帧的物体失去关联,物体重新出现后,会切换id。在实时视频流中,不可能保留全局视频帧中的检测框数据,因此想要解决ID频繁
2021-01-07 20:00:49
7596
2
转载 git汇总(更新中)
转载自https://blog.youkuaiyun.com/jkihi_lin/article/details/79974712https://blog.youkuaiyun.com/weixin_33868027/article/details/91899729先默认配置好git config --global credential.helper store
2020-12-28 11:38:53
203
原创 linux 大目录/大文件查找命令
linux 大目录/大文件查找命令查找大文件查找Linux下的大目录查找大文件find . -type f -size +50M# 显示文件信息find . -type f -size +50M -print0 | xargs -0 ls -l# 显示文件具体大小find . -type f -size +50M -print0 | xargs -0 du -h# 对查找结果按照文件大小做一个排序find . -type f -size +800M -print0 | xargs
2020-12-28 10:42:10
494
原创 dockerfile离线安装pip包
获取环境的requirement.txtpip install pipreqspipreqs ./ --encoding=utf8当前路径就会有一个requirement.txt按照这份清单文件下载安装包mkdir -p ./pkgpip3 download -r requirements.txt -d ./pkg/ -i https://pypi.tuna.tsinghua.edu.cn/simple/ --default-timeout=1000如果还是下不下来的话,就拷贝链接直
2020-10-27 10:24:50
3317
转载 YOLOv5学习总结(持续更新)
YOLOv5学习总结训练效果(持续更新)前言网络结构可视化yolov3yolov4yolov5核心基础内容Mosaic数据增强自适应锚框计算自适应图片缩放首先感谢江大白大佬的研究与分享,贴上链接深入浅出Yolo系列之Yolov5核心基础知识完整讲解将yolov3-v5的变化讲的很清楚,思路很清晰,值得花时间好好从头到尾读一遍。训练效果(持续更新)先贴结果,自己试了组工牌胸牌检测(yolov5s),100个epoch的mAP@.5 达到0.95,效果真的不错,检测速度也很快,一张图0.009s(20
2020-09-12 06:11:36
198925
31
原创 json.dumps()函数解析
json.dumps()json.dumps将一个Python数据结构转换为JSONimport jsondata = { 'name' : 'myname', 'age' : 100,}json_str = json.dumps(data)json库的一些用法方法作用json.dumps()将python对象编码成Json字符串json.loads()将Json字符串解码成python对象json.dump()将python中的对象转化
2020-09-02 13:51:11
190922
15
原创 绘制轮廓 cv2.findContours函数及参数解释
cv2 绘制轮廓cv2.findContours()注意事项mode参数method参数offset:(可选参数)返回值cv2.findContours()def findContours(image, mode, method, contours=None, hierarchy=None, offset=None): # real signature unknown; restored from __doc__ """ findContours(image, mode, method
2020-08-28 13:20:09
11254
原创 gitea学习+部署笔记
gitea部署docker 安装giteagitea整体部署在服务器上,比较麻烦,官方提供了现成的docker镜像,直接使用就可以了。简单分为三步(参考gitea官方文档)pull镜像(相当于基础镜像):docker pull gitea/gitea:latest如果要将git和其它数据持久化,你需要创建一个目录来作为数据存储的地方;然后就可以运行 docker 容器了,这很简单。 当然你需要定义端口数数据目录:sudo mkdir -p /var/lib/giteadocker
2020-07-25 09:51:47
4791
原创 dockerfile 参数名
FROMFROM:定制的镜像都是基于 FROM 的镜像RUN用于执行后面跟着的命令行命令。shell 格式:RUN <命令行命令># <命令行命令> 等同于,在终端操作的 shell 命令。exec 格式:RUN ["可执行文件", "参数1", "参数2"]# 例如:# RUN ["./test.php", "dev", "offline"] 等价于 RUN ./test.php dev offlineARG ENVARG和ENV都是配置环境变量
2020-07-24 01:05:44
191
原创 docker踩坑总结
docker换国内源创建或修改 /etc/docker/daemon.json 文件vi /etc/docker/daemon.json{ "registry-mirrors": ["https://registry.docker-cn.com"]}systemctl restart docker.serviceDocker加载/var/lib/mysql出现Permission Denied 原因:Selinux安全权限问题–privileged=true[root@localh
2020-07-23 15:53:21
311
1
原创 systemctl + journalctl
systemctl status giea查看服务状态journalctl -b 0 -u gitea查看日志后续更新
2020-07-19 14:54:19
356
原创 清华源 + conda + pip + windows + linux版本整理
pip清华源临时使用pip install -i https://pypi.tuna.tsinghua.edu.cn/simplewindows一劳永逸永久使用打开 C:\Users\你的用户名 目录下,新建pip文件夹,进到文件夹中创建pip.ini文件(可以先用记事本然后重命名成pip.ini),然后打开它,将下面代码粘贴进去–>保存[global]index-url = https://pypi.tuna.tsinghua.edu.cn/simple[install]
2020-06-28 22:19:36
336
原创 SGD,Adam等优化器整理使用
优化器的比较几种常见优化器SGD(Stochastic Gradient Descent)Mini-batch Gradient Descent改进版优化器momentum动量AdagradAdadeltaRMSpropAdam:Adaptive Moment Estimation实验表明如何选择优化算法几种常见优化器SGD(Stochastic Gradient Descent)SGD基本上已经被弃用了,因为其效果和其他优化器相比实在差太多了,不仅速度比较慢,而且还容易停止训练。今天用mmdetec
2020-06-23 23:48:06
7673
原创 python VOC格式的xml文件解析
python解析XML常见的有三种方法:xml.dom.*模块,它是W3C DOM API的实现,若需要处理DOM API则该模块很适合;xml.sax.*模块,它是SAX API的实现,这个模块牺牲了便捷性来换取速度和内存占用,SAX是一个基于事件的API,这就意味着它可以“在空中”处理庞大数量的的文档,不用完全加载进内存;xml.etree.ElementTree模块(简称 ET),它提供了轻量级的Python式的API,相对于DOM来说ET 快了很多,而且有很多令人愉悦的API可以使用,相对于
2020-06-22 11:55:06
978
原创 CVPR 2020丨图像超清化Texture Transformer Network for Image Super-Resolution(TTSR)
图像超清化论文链接SR背景SRCNNTTSR网络结构论文链接Learning Texture Transformer Network for Image Super-Resolution提取码:vo57SR表示的就是Super-Resolution,是指通过软件或硬件的方法,从观测到的低分辨率图像重建出相应的高分辨率图像。先上图,直观点看效果图。目标框RDNRCANRSRGAN示例图CrossNetSRNTTTTSR(本文用例)分别代表8张图片/组的清晰化效果
2020-06-22 00:01:20
3163
1
转载 SRCNN 读书笔记
文献名称:Dong C , Loy C C , He K , et al. Learning a Deep Convolutional Network for Image Super-Resolution[J]. 2014.文章内容:本篇文章讲述的是深度学习在图像超分辨率重建问题的开山之作SRCNN(Super-Resolution Convolutional Neural Network)。香港中文大学Dong等将卷积神经网络应用于单张图像超分辨率重建上。上图为SRCNN算法的框架,SRCNN将深
2020-06-21 11:03:39
638
原创 dict转json
dict转jsondict转jsonpython小数张量转常量json显示在页面上json.dump()报一些float32的错误json 与 dict的读写转换dict转jsonpython小数可以使用round()函数。round(a,2)即表示a保留两位小数张量转常量深度学习中经常遇到变量和常量转换的问题,可以使用item()函数,关于x.item()用法:文档中给了例子,说是一个元素张量可以用item得到元素值,请注意这里的print(x)和print(x.item())值是不一样的
2020-06-19 15:31:35
735
转载 txt 转 coco json格式
txt 转 coco json格式# -*- coding: UTF-8 -*-import cv2import jsonimport sys # process bardef process_bar(count, total, status=''): bar_len = 60 filled_len = int(round(bar_len * count / float(total))) percents = round(100.0 * count / floa
2020-06-19 09:07:10
2073
原创 postman批量测试 + flask多进程与多线程的区别
并发测试postman批量测试flask多进程与多线程的区别postman批量测试使用postman进行并发测试,虽然我感觉他也是串行运行的,等待一个post有响应结果后在发送下一个post请求,但我觉得还可以了,主要是测试连续并发会不会顺序打乱,程序崩溃。先新建一个集合,new->collection,给集合命名。点击 。。。然后add request,给请求命名。点击 。。。然后add request,给请求命名。若要发送多次请求,可以点击ctrl + d进行复制
2020-06-17 13:21:26
3810
原创 mmdetection训练 显卡选择
选择显卡块数训练细节实时查看显卡性能训练细节在终端执行.py文件时通过CUDA_VISIBLE_DEVICES来指定:在终端运行python程序的前面指定,比如:CUDA_VISIBLE_DEVICES=1 python train.py实验效果如下:在终端运行脚本或者jupyter notebook下运行:前面加上CUDA_VISIBLE_DEVICES=1实时查看显卡性能watch -n 1 -d nvidia-smi就会实时刷新了,可以查看显卡的用量等,哪块卡是空闲的(0开
2020-06-17 10:30:05
9055
5
原创 YOLO V4读书笔记
YOLO V4读书笔记背景目的亮点目标检测构建Mosaic算法实验成果分享几个相关链接paper链接code链接ppt链接 可能需要外网,但真的很好用!出不去可以用网盘下网盘链接 提取码:j25i背景之前用yolo v3做过救生衣检测,但实际应用效果不太好。后面数据集增加后,并且数据增强了一波,发现效果还是可以的,并且速度也很快。这次四月份出了yolo v4,整体感觉就是把19年新出的几个算法融合了进去。例如Mix-UP,Cut-Mix,Mosaic算法,就是对多张图像进行处理,对其目标物进
2020-06-17 00:54:14
1253
2
原创 VOC训练集制作
# file_name = voc_trainval.pyimport osimport randomimport sysif len(sys.argv) < 2: print("no directory specified, please input target directory") exit()root_path = sys.argv[1]xmlfilepath = root_path + '/Annotations'txtsavepath = root_
2020-06-16 10:56:15
240
VOC数据图片和xml同时增强
2020-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人