pytorch FPN框架

FPN全解-最全最详细,我接触目标检测,直接就到FPN了,所以不了解历史。就人的第一反映,可以想象,的确早期的目标检测算法是基于顶层的特征信息,因为顶层的特征语义丰富,但是位置发而粗糙,因为它不一定是最佳边界。而底层的特征语义少,但位置信息反而精确了。我们一开始接触就知道应该用全量特征分析,故此FPN更符合机器学习的逻辑。
1.1 上采样
图像的上采样(upsampling)与下采样(subsampled),上采样是放大图像,下采样是缩小图像。
上采样采用内插值法插入新的像素。也可以参考上采样方法原理简介

  • 双线性插值
    图像处理之双线性插值法,这里有关于数学公式的推导。

1.2 Average Recall
准确率(Accuracy), 精确率(Precision), 召回率(Recall)和F1-Measure ,Average为准确率,recall是召回率。FPN的评价标准采用的是AR。

# 衡量查准率,是搜索结果中找到正确匹配的数量
正确率 = 提取出的正确信息条数 /  提取出的信息条数
# 衡量查全率,这个是分母是全部样本   
召回率 = 提取出的正确信息条数 /  样本中的信息条数

1.3 anchor
怎么理解anchor?,这篇文章中有一些单词没听过,感觉头大,专业术语太多。
2 网络分析
RetinaNet系列1:ResNet和FPN部分总结,结合Rsenet残差网络笔记,添加FPN代码
2.1 logits and labels must be broadcastable
原先我参考别人的代码,因为很简单,就是将

self.avgpool=layers.GlobalAveragePooling2D()
self.fc=layers.Dense(num_classes)

替换为,但实际这样做,会产生异常信息:

 self.toplayer = Sequential([
            layers.Conv2D(filters=256, kernel_size=1, strides=1, padding='valid'),
            layers.BatchNormalization(),
            layers.Activation('relu')
        ])
        # smooth layers
        self.smooth = Sequential([
            layers.Conv2D(filters=256, kernel_size=3, strides=1, padding='same'),
            layers.BatchNormalization(),
            layers.Activation('relu')
        ])
        # Lateral layers
        self.latlayer4 = Sequential([
            layers.Conv2D(filters=256, kernel_size=1, strides=1, padding='valid'),
            layers.BatchNormalization(),
            layers.Activation('relu')
        ])
        self.latlayer3 = Sequential([
            layers.Conv2D(filters=256, kernel_size=1, strides=1, padding='valid'),
            layers.BatchNormalization(),
            layers.Activation('relu')
        ])
        self.latlayer2 = Sequential([
            layers.Conv2D(filters=256, kernel_size=1, strides=1, padding='valid'),
            layers.BatchNormalization(),
            layers.Activation('relu')
        ])
InvalidArgumentError: logits and labels must be broadcastable: logits_size=[524288,10] labels_size=[512,10] [Op:SoftmaxCrossEntropyWithLogits] name: softmax_cross_entropy_with_logits/

你可能感兴趣的:(python,机器学习,python,python,torch)