自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (3)
  • 收藏
  • 关注

原创 YAML配置文件和argparse模块的使用

yaml配置文件和argparse应该是深度学习研究人员要掌握的最基础的技能了~一、YAML配置文件yaml文件是一种配置文件,我最早接触它是在学习yolov5的官方代码的时候。虽然之前没有怎么接触过ini、conf和py等配置文件,但是使用过yaml之后发现是真的方便,所以来总结一下yaml文件读写相关的操作。官方文档1、基本用法yaml文件并不是python自带的,需要通过pip install PyYaml 指令安装。基本规则:1、大小写敏感2、使用缩进表示层次关系(和python用法

2021-06-17 21:00:25 5186 2

原创 深度学习损失函数、优化器选择——调参与优化

早些年很多深度学习的研究人员还在做着调参、炼丹的工作,随着深度卷积神经网络发展到现在,调参的工作渐渐地不被看重,甚至出现了很多自动调参的工具。本文就深度学习中经常使用的损失函数、优化器、学习率迭代策略等进行介绍。一、损失函数损失函数是指用于计算标签值和预测值之间差异的函数,对于不同的任务,使用的损失函数也不相同,在目标检测等领域,损失函数往往需要自己定义。1、L1 LossL1Loss 计算的是预测值和真实值之间绝对误差的平均数。公式如下所示:#pytorch代码torch.nn.L1Loss

2021-05-31 15:14:06 5410 1

原创 YOLOv5网络结构学习

最近在学习yolov5的代码(因为项目需要),其实陆陆续续接触yolov5已经半年左右了,用yolov5也跑过了自己的数据集,但是一直没有上手对代码进行修改,主要还是因为用到了很多工程性的技术和代码,之前做科研的时候没有接触到,改代码方式如果不正确会引发很多BUG。我们就先从yolov5的网络结构开始讲起吧~一、Focus层Focus层的代码如下:class Focus(nn.Module): # Focus wh information into c-space def __ini

2021-05-09 12:00:14 14391 13

原创 SWIG工具实现Python语言调用C/C++代码

最近在使用DOTA_devkit工具的时候,需要计算多边形之间的iou;为了增加计算速度,作者使用了C++编写的polyiou.cpp文件,然后通过python调用C++代码来实现相关操作。为了更加深入了解python语言如何调用C/C++代码,我又重新尝试了一遍整个过程,写了一个教程供大家参考学习。(仅针对Windows系统)Swig安装1、swig下载swig:下载链接Windows用户下载swigwin-4.0.2压缩包,然后将其解压放在你能找到的地方即可。2、配置环境变量在系统变量的P

2021-04-27 15:50:13 1033

原创 论文学习笔记《Arbitrary-Oriented Ship Detection through Center-Head Point Extraction》

这是一篇2021刚刚挂在arXiv上的论文,作者提出了一种center-head point extraction based detector(命名为CHPDet)的网络,以实现遥感图像中的任意方向船舶检测。同时提出了一种新的用于固定ground sample distance(GSD)遥感图像中多类任意定向船舶检测的数据集,称为FGSD2021。最后在两个船舶检测数据集(即FGSD2021和HRSC2016)上进行了相关的实验。论文链接:Arbitrary-Oriented Ship Detectio

2021-03-31 21:11:15 3026 9

原创 论文学习笔记《SWA Object Detection》

这是一篇2020年年底挂在arxiv上的论文,主要思想很简单,就做了一件事情:采用周期性学习率迭代策略(余弦退火算法)额外再训练模型12个epoch,然后平均每个epoch训练得到的weights作为最终的模型权重。通过这样简单地一个操作,模型的准确率可以上涨~1.0AP。论文链接:SWA Object DetectionAbstract 摘要你想为你的目标探测器改进1.0ap而不需要任何推理成本和对探测器的任何更改吗?让我们告诉你这样一个方法。它非常简单:**使用循环学习率(cyclical lea

2021-03-27 18:18:48 1116 4

原创 使用pytorch搭建自己的网络之Res2Net

一、introductionRes2Net由南开大学程明明组2019年提出,主要贡献是对ResNet模型中的block模块进行了改进,计算负载不增加,特征提取能力更强大。论文地址:Res2Net: A New Multi-scale Backbone Architecture二、网络结构回顾ResNet网络结构:https://blog.csdn.net/qq_40356092/article/details/109024375左图是ResNet网络中的block模块,右图是论文中新提出来的Res

2020-11-24 16:14:13 8163 9

原创 python在图片上绘制标注框

前言最近帮人跑代码的时候遇到了不少问题,后来发现他提供给我的数据集中标注文件不太准确,部分box框没有很好地框到物体。所以写了一个代码,通过在图片上绘制标注框来直观地判断标注文件是否存在问题,也可以绘制经过网络预测之后的box框。参考文档:python读取数据集并生成txt文件一、文件路径# -*- coding:utf-8 -*-import osimport numpy as npimport colorsysimport randomfrom PIL import Image,Ima

2020-11-13 11:37:27 5364 2

原创 python读取数据集并生成txt文件

前言在目标检测领域,无论是公开数据集还是自建的数据集,数据集的存储方式通常是一个JPEGImages图片文件夹和一个Annotations的xml标注数据文件夹。在进行数据处理时,首先要做的工作是将其读取并写入一个txt检索文本中,方便后续的操作。一、文件路径import osimport xml.etree.ElementTree as ET#获取所有类别classes = get_classes('../model_data/dataset/voc_dataset/voc_classes

2020-11-13 11:06:26 4582 1

原创 基于pytorch实现的yolo v3

一、introduction论文地址:https://arxiv.org/abs/1804.02767本文是对yolo v3的复现,在前人的基础上对代码进行了修改,尽可能方便读者进行训练和测试,同时易于修改。二、网络结构yolo v3使用了Darknet53作为主干网络(backbone),Darknet53的结构来源于Resnet,同样使用了resnet中的残差网络结构和shortcut连接,不同的是全部使用3×3和1×1的卷积层(已经被证明,用多个小的卷积层替代一个大的卷积层效果更好),将池化层

2020-11-11 15:40:32 1124

原创 使用pytorch搭建自己的网络之ResNet

一、introductionResNet是2015年提出来的深度学习网络模型,其主要解决的是网络层数过多导致的退化问题。过去的网络模型层数差不多在十几二十层,随着网络层数的增多,人们发现模型的准确率很难再有较大的提升,甚至会出现准确率下降的情况,而ResNet提出的残差网络有效解决了这一问题,使得网络层数达到了上百层。更重要的是,这一思想的提出,使得ResNet模型逐渐取代了VGG网络,几乎是当前应用最广泛的CNN特征提取网络,甚至影响了学术界和工业界未来的发展方向。随后提出的Res2Net和Dense

2020-10-12 16:04:11 2050 5

原创 论文学习笔记:FCHD: A fast and accurate head detector

FCHD是2018年提出来的人头检测模型,在处理小目标检测的问题上效果很好。论文链接:FCHD: A fast and accurate head detectorAbstract 摘要在本文中,我们提出了fchd - full Convolutional Head Detector,这是一种端到端可训练的头部检测模型,在一个非常普通的GPU上以5 fps的速度运行,平均精度为0.70 (AP)。最近的头部检测技术避免了一开始就使用锚框进行检测,特别是在复杂的环境中。原因是在对象大小较小的情况下,基于

2020-09-10 17:20:58 1351

原创 使用pytorch训练自己的数据集

一、introduction不得不说pytorch的功能十分强大,其中torchvision.datasets已经内置了常用的数据集,我们也可以使用datasets.ImageFolder来加载我们自己的数据集。如果你觉得这两个方法都不能很好的加载你想要的数据集,也可以通过继承dataset类来自定义自己的数据集加载方式。本文主要介绍前两种加载数据集的方法,然后使用常见的卷积神经网络来训练并测试自己的数据集。二、加载数据集2.1 加载FashionMNIST数据集def load_FashionM

2020-09-09 09:48:10 6629 2

原创 使用pytorch搭建自己的网络之GoogLeNet

一、introduction在上一篇博客中提到了2014年分类比赛的第二名VGG,今天来自己动手搭建当年比赛的冠军GoogLeNet网络。tips:注意该网络中google的L是大写的,据说是为了致敬当年的LeNet。很巧的是,这两个卷积神经网络的特点都是加深了网络层数,而GoogLeNet在此基础上提出了Inception网络结构,这是一个稀疏网络结构,但是能够产生稠密的数据,既能增加神经网络表现,又能保证计算资源的使用效率。从2014年2016年,Inception经历了Inception v1、

2020-09-08 16:22:51 513

原创 CSRNet-pytorch版本代码复现

一、概述在之前的博客中我有详细介绍过人群计数领域中密度图的生成方法,还有一篇CSRNet的论文学习笔记。人群计数之生成密度图论文学习笔记:CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly Congested Scenes接下来我使用ShanghaiTech数据集对论文中提出的CSRNet模型进行了复现,其中关于数据增强等一些细节进行了省略,以方便初学者更快地了解人群计数相关的方法。二、数据集预处理

2020-09-04 17:22:37 5540 22

原创 使用pytorch搭建自己的网络之VGG

一、introductionVGG网络是2014年ILSVRC2014比赛分类项目的第二名(其中第一名是GoogLeNet)。论文发表于2015年的ICLR,其主要贡献是使用多个较小的卷积核(如3 X 3)替代大卷积核,降低了卷积核的尺寸,增加了网络深度。证明了不断加深网络深度可以提高网络的性能。二、网络结构网上比较流行的网络结构如上图所示,通过对网络结构的评估,最终证明16层和19层的网络结构能够取得较好的识别精度。具体代码如下:import torchfrom torch import n

2020-09-04 14:50:44 1861

原创 离线下载并安装python第三方包

离线下载并安装python包下载离线包安装包及相应的依赖包由于实验室网络安全等问题,服务器关闭了和外网的接触,这就导致我们使用服务器时十分不方便,尤其是在安装第三方包时需要自己手动下载相关包并上传到服务器上。下载离线包这是一个十分方便的下载包的网址:https://pypi.org/在输入框中搜索我们要下载的第三方包,这里以numpy为例。可以看到搜索的第一个结果就是我们想要的,点进去之后就是关于numpy包的介绍,左边有三个按钮,分别是Project description(项目介绍)、Re

2020-09-04 09:48:01 2113 2

原创 使用pytorch搭建自己的网络之AlexNet

一、introduction回顾近几年来卷积神经网络的发展历史,我们必须要提到AlexNet卷积神经网络。这是Alex在2012年提出来的神经网络模型,赢得了当年的图像识别大赛冠军,首次证明了通过网络学习到的特征可以超越手工设计的特征,同时也奠定了CNN在处理图像分类任务上的地位。二、网络结构网上比较流行的网络结构如上图所示,由于当年计算能力的不足,AlexNet网络在训练时使用了两块GPU同时进行训练;随着现在硬件能力的提升,我们使用一块普通的GPU已经能够很快速地训练该网络。具体代码如下:i

2020-08-27 11:10:52 1030

原创 人群计数之生成密度图

一、概述在近几年人群计数领域的研究中,大多数论文都沿用了MCNN( Multi-column Convolutional Neural Network )中提出的生成密度图的方法,本文将通过代码和CSRNet网络中生成密度图的实例来详细讲解该方法。二、生成密度图在进行人群计数的研究时,数据集通常由原始图片和标注文件共同构成,本文使用的数据集是shanghaiTech,该数据集包含了part_A_final,part_B_final两部分,标注文件是mat格式,里面记录了每个注释人头的二维坐标和总人头数

2020-08-21 15:53:06 11874 29

原创 论文学习笔记:CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly Congested Scenes

CSRNet网络模型是2018年CVPR论文中提出来的一种用于人群计数的模型。论文链接:CSRNetAbstract 摘要我们提出了一个拥挤场景识别网络CSRNet,它提供了一种数据驱动的深度学习方法,可以理解高度拥挤的场景,进行精确的计数估计,并提供高质量的密度图。我们提出的CSRNet由两个主要部分组成:一个是作为二维特征提取的前端卷积神经网络(即模型中的前端网络frontend ),另一个是用于后端的扩展CNN(后端网络backend),它使用扩展的核(空洞卷积操作)来传递更大的感受野,并代替池

2020-08-18 11:29:28 7367 2

原创 python学习笔记

1、在Pytorch中,tensor是常用的存储和变换数据的主要工具,在编写代码的时候会涉及到大量的NumPy数组和Tensor之间的转换。2、Tensor常用的数据类型有五种: 32位浮点型:torch.FloatTensor。 64位浮点型:torch.DoubleTensor。 64位整型:torch.LongTensor。 32位整型:torch.IntTensor。 16位整型:torch.ShortTensor。其中torch.FloatTensor是默认的数据类型。3、view

2020-07-29 16:20:00 1082

原创 Pytorch安装教程

Pytorch安装教程开发环境Anaconda安装CUDA 安装Pytorch安装附录近几年来,pytorch的发展速度越来越快,在github、CSDN等开源网站上下载的源代码逐渐由tensorflow向pytorch转变。近期在看论文时需要对代码进行复现,在安装pytorch时遇到了很多问题,将整个过程写出来供大家借鉴学习。注:在进行安装的过程中,通过cmd命令框输入命令发现找不到文件,说明环境变量没有配置好。此方法不需要配置环境变量。开发环境python3.x (注意python3.8版本和

2020-07-27 13:00:37 7556 3

原创 Unity发布VR项目到Android

Unity发布VR项目到Android一、准备工作1、下载并安装Unity2、已经完成Android打包的相关配置3、下载GoogleVRForUnity的unity包前两步操作在我的上一篇博客中有详细介绍(https://blog.csdn.net/qq_40356092/article/details/103217932)为了方便,博主使用的是Google提供的项目,然后将该项目进...

2019-11-24 10:24:30 1817 1

原创 Unity下载安装和Android打包成APK

Unity下载安装和Android打包成APK一、下载并安装unity博主之前是在官网上下载的,但是最近一段时间由于各种原因好像无法访问官网了,下面的网址是一个可以下载unity的中文页面:http://www.unity3d.com/找到对应的版本下载即可,博主使用的版本是Unity 2018.3.9f11、安装unity下载完安装包之后直接运行即可,注意的是安装路径必须是英文路径,这...

2019-11-23 22:17:32 1438

原创 Learning to Reconstruct 3D Human Pose and Shape via Model-fitting in the Loop 论文学习笔记(1)

Learning to Reconstruct 3D Human Pose and Shape via Model-fitting in the Loop 论文学习笔记(1)一、摘要部分原文Model-based human pose estimation is currently approached through two different paradigms.Optimizati...

2019-10-19 11:54:09 1942

基于pytorch实现的yolo_v3

pytorch实现的yolo_v3,我们只造最精致的轮子!如果你在运行过程中有任何问题,都可以评论或者私信我。

2020-11-18

基于pytorch的yolo_v1

pytorch实现的yolo_v1,数据集使用VOC2012,我们只造最精致的轮子!如果你在运行过程中有任何问题,都可以评论或者私信我。

2020-10-09

CSRNet-pytorch.zip

使用pytorch实现了CSRNet人群计数模型的复现,如果下载文档之后有任何问题均可以私信博主进行讨论

2020-09-04

空空如也

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

TA关注的人

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