
深度学习
介绍本人对深度学习的部分算法和总结,或在试验中遇到的问题
qq_39865109
这个作者很懒,什么都没留下…
展开
-
Yolov4网络代码Pytorch
import torchimport torch.nn as nnimport torch.nn.functional as Ffrom torchsummary import summary# Mish = x*tanh(ln(1+e^x))class Mish(nn.Module): def __init__(self): super().__init__() def forward(self, x): x = x * (torch.ta原创 2021-01-26 22:11:22 · 441 阅读 · 0 评论 -
浅谈人脸检测MTCNN以及Pytorch代码
MTCNN网络架构分析P-net 从总体看,网络是全卷积结构,优点是可以输入任意大小的的图片(针对侦测的时候)。训练的时候输入尺寸是12*12,然后经过3*3的卷积核和池化到1*1*32的过程中都是通道增加的,也就是特征融合的过程。最后分3个类别做输出一个是置信度、一个是边框的偏移量,另一个是十个关键点的位置。R-net 首先R-net是卷积+全链接结构,代表着输入图片大小固定只能是24*24。然后经过卷积池化到特征图3*3*64同样为特征融合过程,最后res...原创 2021-01-14 17:42:06 · 888 阅读 · 3 评论 -
Pytorch完整训练猫狗分类基本代码
import osimport torchfrom torch.utils import datafrom PIL import Imageimport numpy as npimport torch.nn as nnimport numpy as npfrom torch.utils import data# 定义一个类返回数据长度给dataLoader使用,还返回标签和数据class dataset(data.Dataset): def __init__(self,pat.原创 2021-01-09 14:00:11 · 1559 阅读 · 2 评论 -
人脸识别 ArcFace 实现
为什么用ArcFace前一篇文章已经提到了问什么不能直接用softmax loss做损失,是因为类与类之间交界处不容易分开,而center loss能把他分开是因为缩小了类内距,就是给每一个中心点,让每个类中的特征点无限向中心点靠拢。缩小类内距的同时,简介缩小了类间距。而ArcFace是直接缩小了类间距。下面是我用mnist数字十分类做的直接用softmax loss和arcFace做的效果图...原创 2019-10-10 11:00:06 · 1416 阅读 · 1 评论 -
人脸识别 Center Loss及实现
Center Loss为什么用Center Loss?首先要声明的是Center Loss主要用于做人脸的识别,那么为什么不用softmax对人脸直接分类呢?因为人脸之间的特征是十分相似的,在类与类之间的交界处是很难区分开的,换句话说softmax分类两张人脸得到的概率值都是0.5左右,导致分类结果不准确。那么怎么把这种交界处区分开呢?有两种方法:1、第一种扩大类间距,2、第二种扩大类内距。C...原创 2019-10-08 12:56:30 · 660 阅读 · 0 评论 -
经典网络总结1 LeNet-5
经典网络总结1 LeNet-51.1 模型介绍LeNet-5是由LeCun提出的一种用于识别手写数字和机器印刷字符的卷积神经网络(ConvolutionalNeural Network,CNN) ,其命名来源于作者LeCun的名字,5则是其研究成果的代号,在LeNet-5之前还有LeNet-4和LeNet-1鲜为人知。LeNet-5阐述了图像中像素特征之间的相关性能够由参数共享的卷积操...原创 2019-09-25 10:43:35 · 353 阅读 · 0 评论 -
人脸检测mtcnn 效果
人脸检测 mtcnn多目标检测与识别肿瘤图像分割原创 2019-10-05 14:58:23 · 415 阅读 · 0 评论 -
图像分割效果
图像分割效果原创 2019-10-05 17:42:13 · 626 阅读 · 0 评论 -
多目标检测与识别效果
多目标检测与识别yolov3原创 2019-10-05 17:39:13 · 1365 阅读 · 0 评论 -
多目标检测与识别 YOLOV3 解读四 反算
YOLOV3的反算1.1 怎么造的样本前面已经讲了怎么造的样本,我们这里回顾一下。1.标注目标位置(xmin,ymin,xmax,ymax),并算出中心点坐标、宽高(cx,cy,w,h)2.中心点坐标除以图片的宽高(cx/size(0),cy/size(2),w/size(0),h/size(1))然后resize(416,416)3.把(cx/size(0),cy/size(2),w/...原创 2019-10-01 21:12:40 · 531 阅读 · 0 评论 -
多目标检测与识别 YOLOV3 解读3 网络结构及实现(PyTorch)
网络结构Darknet 53一、从整体上看,网络一共有152层,分为两个网络,一个是提取特征的网络,另一个是侦测网络。先看特征提取网络,1、全部用的是1 * 1和3 * 3 的卷积核加残差,这也是为什么能把网络加深的原因。2、网络用卷积代替池化,让特征充分被提取,池化主要是用来快速压缩信息的,会丢失信息,用在这里提特征不合适。3、开始阶段传入图片较大,计算量也较大,所以用少量的残差块,通...原创 2019-09-28 17:21:24 · 862 阅读 · 0 评论 -
多目标检测与识别 YOLOV3 解读2 样本制作
YOLOv31.1样本制作前一篇文章已经总结了,要检测识别多目标,需要这几样东西。1.建议框和真实框的相对位置 2 中心点 3 iou(建议框和真实框) 4 cls(类别)如果自己做样本,就先用标注软件得到框的左上角和右下角的坐标点,然后算出中心点的坐标和宽高。由于yolov3输入图片大小必须是416416的。所以得到中心点和宽高不能直接resize,而是先应该用cx/size(0),cy...原创 2019-09-28 16:34:25 · 653 阅读 · 0 评论 -
多目标检测与识别 YOLOV3 解读1 怎么检测到物体
1 怎么检测到物体的?1.1 为什么不直接用中心点、宽、高定位目标一般来说,要检测物体就要定位物体,我们一般通过中心点、宽、高来定位,但是我们一般不让神经网络直接学习宽、高。为什么?请看下图:上面有两个框,一个大框一个小框,如果用神经网络直接学习宽、高,在设计损失的时候就会遇到问题,当损失很小的时候,对于大框而言位置会发生较小的偏移,但是对于小框而言,在相同的损失下小框的位置就会发生较大的...原创 2019-09-27 12:03:10 · 2426 阅读 · 2 评论