wa1tzy
速战速决!
展开
-
YOLOv5系列(3)——YOLOv5修改网络结构
文章目录一、设置网络结构为mobilenet-V2二、添加注意力模块一、设置网络结构为mobilenet-V2首先,需要在models/common.py里,实现MobileNetv2的 bottleneck 和 Pwconv。1、Mobilenetv2的bottleneck: InvertedResidual#mobilenet Bottleneck InvertedResidual class BottleneckMOB(nn.Module): #c1:inp c2:oup原创 2021-03-07 20:42:17 · 36193 阅读 · 137 评论 -
YOLOv5系列(2)——YOLOv5导出jit,onnx,engine
文章目录一、YOLOv5导出jit二、YOLOv5导出onnx三、使用onnx四、YOLOv5导出engine(tensorrt/trt)五、总结所有代码5.1 models/common.py5.2 models/yolo.py5.3 test00.py5.4 onnx_export.py(test01.py)5.5 models/yolov5s.yaml5.6 pkg/common.py5.7 engine_export.py(test03.py)做个YOLOv5的专题,这部分写一些YOLOv5的工程原创 2021-03-06 21:00:06 · 8201 阅读 · 9 评论 -
YOLOv5系列(1)——推理图像显示中文标签
无论是YOLO还是opencv,都是老外开发的,开发的过程中肯定不会考虑中文显示了,所以一直以来,在opencv-python中显示中文都有一些麻烦。那如何才能在YOLOv5图像识别中让标签变为中文呢?这里提供了一种修改YOLOv5源码方法可以参考。YOLOv5的使用在这里就不再阐述了,我们直接在YOLOv5程序中utils/utils.py(新版的是utils/general.py)文件下找到这一行代码:def plot_one_box(x, img, color=None, label=None,原创 2021-03-06 17:37:25 · 2176 阅读 · 6 评论 -
xml与python文件常用转换,读取图像
# coding:utf-8from PIL import Imageimport os.pathimport globimport xml.etree.ElementTree as ETimport xml.dom.minidomi = 0xmldir = r"D:\YOLOV5\数据集\outputs"imgsdir = r"D:\YOLOV5\数据集\danger2"for xmlfile in os.listdir(xmldir): xmlname = os.path.原创 2020-07-27 09:26:04 · 3221 阅读 · 3 评论 -
YOLOv5训练自己的数据集
一、准备工作在data下新建几个文件夹XML文件放到Annotations图片文件放到images二、xml转txt(xml格式的label转换为yolo版的label)# -*- coding:utf-8 -*-import syssys.path.append('D:\\Program files\\Anaconda\\libs')import os #os:操作系统相关的信息模块import random #导入随机函数#存放原始图片地址data_base_dir = "./d原创 2021-01-14 11:32:00 · 922 阅读 · 10 评论 -
使用yolov4训练自己的数据集——科大讯飞X光安检图像识别baseline
文章目录一、cfg文件修改二、data/下新建配置文件三、创建标注文件四、划分训练集、验证集与对应标签4.1 split_data.py4.2 xml2txt.py4.3 creattxt.py五、训练六、推理一、cfg文件修改创建yolov4-mydatasets.cfg,因为我用了yolov4.cfg训练太吃显存,2080TI的机子batchsize设置为2也会爆显存。其主要原因是mish函数太占显存了。修改的地方:将mish函数替代为relu函数,大大降低显存使用!另外filters设置为:原创 2020-08-05 12:22:10 · 4892 阅读 · 20 评论 -
使用yolov5训练自己的数据集——科大讯飞X光安检图像识别baseline
文章目录1、创建数据集的配置文件mydataset.yaml2、创建标注文件3、组织训练集的目录4、选择模型backbone进行模型配置文件的修改5、Train6、Visualize7、已有图像和xml制作标签的过程7.1 check_img.py7.2 check_box.py7.3 rain_val_split.py7.4 myData_label.py1、创建数据集的配置文件mydataset.yaml# train and val datasets (image directory or *.t原创 2020-08-05 09:21:06 · 6993 阅读 · 49 评论 -
DeepLearing—CV系列(十五)——目标检测中的Data Augmentation、Backbone、Head、Neck、Loss Function的汇总
文章目录一、数据增强方式二、解决数据不均衡三、常用backbone四、常用Head4.1 Dense Prediction (one-stage):4.2 Sparse Prediction (two-stage):五、常用neck5.1 Additional blocks:5.2 Path-aggregation blocks:六、Skip-connections七、常用激活函数和loss7.1 激活函数:7.2 loss:八、正则化和BN方式8.1 正则化:8.2 BN:九、训练技巧一、数据增强方式原创 2020-06-27 22:10:17 · 968 阅读 · 0 评论 -
DeepLearing—CV系列(十四)——YOLOv5理论详解+Pytorch源码解析
文章目录前言——从YOLOv3到YOLOv5二、网络结构二、代码解析2.1 运行起来项目2.2先放官网大图YOLOv5官方Pytorch实现:https://github.com/ultralytics/yolov5前言——从YOLOv3到YOLOv5YOLOv3YOLO原项目darknet(官方)截止2020年5月31日,并没有更新添加这个"YOLOv5"的链接。最新的一次update还是上个月YOLOv4重磅出炉的那次,官方正式添加了YOLOv4项目链接。"YOLOv5"的项目团队是Ult原创 2020-06-26 14:27:51 · 20861 阅读 · 40 评论 -
DeepLearing—CV系列(十三)——YOLOv4完整核心理论详解
文章目录一、结构1.1 网络结构图1.2 YOLOv4的PAN结构1.3 激活函数的思考1.3.1 Mish激活函数1.3.2 Swish激活函数二、损失2.1 L1、L2、SMOPTH_L12.2 IOU_LOSS的问题2.3 GIOU_Loss2.4 DIOU_Loss2.5 CIOU_Loss三、训练一、结构1.1 网络结构图Yolov4的五个基本组件:1)CBM:Yolov4网络结构中的最小组件,由Conv+Bn+Mish激活函数三者组成。2)CBL:由Conv+Bn+Leaky_rel原创 2020-06-24 16:54:28 · 1779 阅读 · 1 评论 -
DeepLearing—CV系列(十二)——多类多目标物体的侦测——YOLOv3的Pytorch实现(从零使用自己数据集的侦测)
文章目录一、思路1.1 YOLO对图像缩放算法的实现1.2 做数据集(json/xml解析)1.3 配置文件(anchor box等)1.4 造数据集(Mydataset.py)1.5 搭建网络(model.py)1.6 训练(Train.py)1.7 工具iou,nms(tool.py)1.8 侦测(detector.py)二、总结代码目录(代码包含大量注释,有疑问的可以看注释)一、思路1.1 YOLO对图像缩放算法的实现1)先做一个过拟合版本的YOLOv3,再大批量增加数据,则我们需要先取我们原创 2020-06-22 15:30:57 · 452 阅读 · 1 评论 -
DeepLearing—CV系列(十一)——多类多目标物体的侦测——YOLO系列之YOLOv3算法详解
文章目录原创 2020-06-22 11:17:44 · 588 阅读 · 0 评论 -
DeepLearing—CV系列(十)——多类多目标物体的侦测——YOLO系列之YOLOv2、YOLO9000算法详解
文章目录前言一、YOLOv2的优化改进Better(预测更准确)1.1 Batch Normalization(批归一化)1.2 High Resolution Classifier(大尺度预训练分类)1.3 Convolutional With Anchor Boxes(使用锚框卷积)1.4 Dimension Clusters(维度聚类)1.5 Direct location prediction(直接定位预测)1.6 Fine-Grained Features(细粒度特征)1.7 Multi-Scal原创 2020-06-21 14:27:13 · 523 阅读 · 0 评论 -
DeepLearing—CV系列(九)——多类多目标物体的侦测——SSD
文章目录一、SSD核心设计理念1.1 采用多尺度特征图用于检测1.2 采用卷积进行检测1.3 设置先验框二、网络结构一、SSD核心设计理念SSD在Yolo的基础上主要改进了三点:多尺度特征图,利用卷积进行检测,设置先验框。这使得SSD在准确度上比Yolo更好,而且对于小目标检测效果也相对好一点。1.1 采用多尺度特征图用于检测所谓多尺度采用大小不同的特征图,CNN网络一般前面的特征图比较大,后面会逐渐采用stride=2的卷积或者pool来降低特征图大小,这正如上图所示,一个比较大的特征图和一个比原创 2020-06-20 22:55:24 · 375 阅读 · 0 评论 -
DeepLearing—CV系列(八)——多类多目标物体的侦测——YOLO系列之YOLOv1算法详解
文章目录一、目标检测的做法二、YOLO的核心思想一、目标检测的做法1.采用滑动窗口,对每个窗口分类和位置修正;2.RPN的方式先提取候选区域,特征图对应候选区域范围经过roipooling得到所需特征;3.SSD继承RPN类似的anchor机制,设定预设框并对每个预设框赋予groundtruth,全卷积网络训练目标。二、YOLO的核心思想YOLO核心思想:利用整张图作为网络的输入,yolo将输入图像划分为 S×S 的网格,物体的中心落在哪一个网格内,这个网格就负责预测该物体的置信度,类别以及位置。原创 2020-06-20 22:17:40 · 648 阅读 · 0 评论 -
DeepLearing—CV系列(七)——多类多目标物体的侦测——R-CNN系列
文章目录一、R-CNN二、Fast R-CNN三、SPP-Net四、ASPP五、Faster-R-CNN六、mask-R-CNN七、总结计算机视觉的任务:分类->分类+回归->目标侦测->实例分割单目标识别追踪:多目标识别追踪:R-CNN系列一、R-CNN在原图进行操作,根据聚类算法(颜色,边缘,纹理等)对图像区域分割成块,分割后的图像区域大小不一样,要做一个合并,再缩放到相同大小,再把不同大小的图像输入到同一个网络当中去,进行回归/分类(SVM),用全连接输出,所以输入原创 2020-06-19 15:44:37 · 574 阅读 · 0 评论 -
yolov4-论文解析(3)
4. 实验我们在ImageNet (ILSVRC 2012 val)数据集上测试了不同的训练改进技术对分类器精度的影响,然后在MS COCO (test-dev 2017)数据集上测试了检测器的精度。4.1.实验设置在ImageNet图像分类实验中,默认超参数为:训练步骤为8,000,000;批大小和小批大小分别为128和32;采用多项式衰减学习率调度策略,初始学习率为0.1;热身步长1000;动量衰减为0.9,重量衰减为0.005。我们所有的BoS实验都使用与默认设置相同的超参数,在BoF实验中,.原创 2020-05-25 18:03:51 · 545 阅读 · 0 评论 -
yolov4-论文解析(2)
3.方法其基本目标是在生产系统和并行计算优化中提高神经网络的运行速度,而不是低计算量理论指标(BFLOP)。我们提出了实时神经网络的两种选择:对于GPU,我们在卷积层中使用少量的组(1 - 8):CSPResNeXt50 / CSPDarknet53对于VPU -我们使用群卷积,但我们不使用挤压和兴奋(SE)块-具体来说,这包括以下模型:EfficientNet-lite / MixNet [76] / GhostNet [21] / MobileNetV33.1架构选择我们的目标是在输入网..原创 2020-05-25 17:46:30 · 1376 阅读 · 0 评论 -
yolov4-论文解析(1)
有大量的功能据说可以提高卷积神经网络(CNN)的准确性。需要在大型数据集上对这些特性的组合进行实际测试,并对结果进行理论验证。某些功能仅针对某些模型,仅针对某些问题,或仅适用于小规模数据集;而某些功能(如批归一化和残差连接)适用于大多数模型、任务和数据集。我们使用新功能:WRC、CSP、CmBN、SAT、Mish 激活、马赛克数据扩增、CmBN、DropBlock 正化和 CIoU 损耗,并结合其中一些功能实现最先进的结果:43.5% AP (65.7% AP 50),实时速度为特斯拉 V100 上的 M.原创 2020-05-25 17:06:38 · 667 阅读 · 0 评论