Pytorch_net_深度学习的网络结构

关键词

 目标检测用bbox,实例分割用mask,姿态估计用keypoint
   bbox 用一个anchor点和指向极值点的四根向量就能确定目标框
   mask 一个anchor点和指向轮廓点的n个向量确定mask
   keypoint  用一个anchor点和指向17个关键点点的17个向量确定pose。heatmap预测关键点的方式 	 
  
   face landmark 人脸特征点检测 人脸72个关键点, 主要分布在五官和人脸轮廓,对眼、鼻、嘴唇、及脸型轮廓的描绘。
    现在升级为150个关键点,更加细腻了
    人脸标定 Face Landmark
    车牌识别 License Plate Recognition
    手势识别 Hand Gesture Recognition
	
  数据标注--数据采集-数据筛选-预处理-规整	
  模型训练、评测、调整、修剪和导出模型,以进行部署	
  训练、剪枝、再训练+
    training  inference 

目标检测

###detector=backbone + neck + head
 backbone部分的网络就是负责从图像中提取特征。
 neck是放在backbone和head之间的,是为了更好的利用backbone提取的特征。
 head这一部分的作用就是用于分类+定位
    backbone - 骨干
    目标检测和图像分类这两个任务具有一定的相似性,
         可以将分类的网络,比如VGG、ResNet等,用来做特征提取器称其为backbone。
    	 也许他们对图像中目标的位置不够敏感,但至少他们能够提取出图片中目标的类别特征。
    neck:
        neck这部分的作用就是更好地融合/提取backbone所给出的feature,然后再交由后续的head去检测,从而提高网络的性能。	
    	
    head
        分类+定位  检测头,用于预测目标的类和Box
    	 head才是决定能否将这些特征转换为我们真正需要的bbox参数和class参数
    	
YOLOv4
    输入端   采用mosaic数据增强,
    Backbone 采用了CSPDarknet53、Mish激活函数、Dropblock等方式,
    Neck     采用了SPP、FPN+PAN的结构,
    输出端   采用CIOU_Loss、DIOU_nms操作  
数据增强:
	Mosaic数据增强方法是YOLOV4论文中提出来的,主要思想是将四张图片进行随机裁剪,再拼接到一张图上作为训练数据。
	这样做的好处是丰富了图片的背景,并且四张图片拼接在一起变相地提高了batch_size
	 Mixup  Cutout  CutMix
YOLOv5 分别使用 CSPDarknet53+SPP为Backbone,PANet为Neck, YOLO检测Head。
    Yolov5代码中给出的网络文件是yaml格式,原本Yolov3、Yolov4中的cfg 
 	Yolov5s网络是Yolov5系列中深度最小,特征图的宽度最小的网络

Vision Transformer(ViT)

 视觉 Transformer (ViT)-- 构建图像到矢量的转换并保持图像的特征	
    detector= CNN骨干网+编码器-解码器transformer+一个简单的前馈网络
    作为颈部(neck)的 Transformer 
    作为主干(backbone)的 Transformer
    
   Transformer Prediction Heads(TPH)

分割:

 基于 patch 的 Transformer (patch-based Transformer)和基于查询的 Transformer (query-based Transformer)

参考

  目标检测中的数据增强、backbone、head、neck、损失函数	 https://blog.csdn.net/qq_34437210/article/details/106932193?spm=1001.2014.3001.5501
原文地址:https://www.cnblogs.com/ytwang/p/15787030.html