目标检测
卡子爹
这个作者很懒,什么都没留下…
展开
-
Faster RCNN训练
训练其余均为通用的训练流程,Faster RCNN源码上的train、predict均可使用。import osimport datetimeimport torchimport transformsfrom FastRCNN_model import FasterRCNN, FastRCNNPredictorfrom ResNet50_FPN import ResNet50_FPN_backbonefrom Dataset_FasterRcnn import VOCDatasetfr原创 2022-03-30 07:10:47 · 1961 阅读 · 34 评论 -
Faster RCNN第二阶段(RoI Head部分)
RoIHead这部分为Faster RCNN中第二阶段的实现。import torchfrom torch import nn, Tensorimport torch.nn.functional as Ffrom RPN import box_iou, Matcher, BalancedPositiveNegativeSampler, box_Coder, smooth_l1_loss, clip_boxes_to_image, remove_small_boxes, batched_nms原创 2022-03-30 07:02:19 · 1091 阅读 · 2 评论 -
Faster RCNN中Backbone(ResNet50+FPN)
Backbone这部分展示了使用ResNet50+FPN作为Faster RCNN的特征提取部分import osfrom collections import OrderedDictimport torchimport torch.nn as nnimport torch.nn.functional as Fclass IntermediateLayerGetter(nn.ModuleDict): def __init__(self, model, return_layers):原创 2022-03-30 07:00:24 · 3294 阅读 · 1 评论 -
Faster RCNN中预处理部分
预处理在faster RCNN中由于输入的图像尺寸不一致,需要先将输入图像进行预处理打包成为一个batch,才能输入到网络中。该部分展示了如何将输入图像进行一系列处理后,输入到backbone中进行特征提取。import torchimport torch.nn as nnimport torch.nn.functional as Fimport mathdef resize_boxes(boxes, original_size, new_size): # 将boxes的参数根据图像原创 2022-03-30 06:58:10 · 706 阅读 · 0 评论 -
基于pytorch的Faster RCNN中RPN实现
RegionProposalNetwork在Faster RCNN中第一阶段是由RegionProposalNetwork生成anchors,并通过筛选得到proposal。代码中详细注释了每一部分的过程。import torchimport torchvisionfrom torch import nn, Tensorfrom torch.nn import functional as Fimport mathfrom typing import Dictdef smooth_l1_l原创 2022-03-30 06:55:28 · 644 阅读 · 2 评论 -
基于pytorch的FasterRCNN代码解读(整体结构)
Faster RCNN代码整体框架前言Faster RCNN作为经典的双阶段目标检测算法,掌握其中的思想和代码实现的方法,对于我们实现单阶段目标检测或者双阶段目标检测都是很有帮助的。相较于单阶段目标检测,双阶段目标检测主要多了一步生成proposal,也就是候选框的生成。在Faster RCNN中,对于图像中的生成的每一个anchor而言,首先要经过RPN(在这里只区分前景或者背景)做第一次筛选,选出概率大的一些anchor(train时采用预测目标概率前2000个anchor,test时采用1000原创 2022-03-29 14:26:33 · 4523 阅读 · 7 评论