基于迁移学习的多尺度特征融合牦牛脸部识别算法
陈占琦, 张玉安, 王文志, 李丹, 何杰, 宋仁德

Multiscale Feature Fusion Yak Face Recognition Algorithm Based on Transfer Learning
CHEN Zhanqi, ZHANG Yu'an, WANG Wenzhi, LI Dan, HE Jie, SONG Rende

Algorithm 特征金字塔算法实现

Input: F3、F4、F5、F6

  Output: P

1   def OurFPN(Input)

2  P3 = F3, P4 = F4, P5 = F5, P6 = F6, Features = P3, P4, P5, P6

3  for j in rangelen(Features))

4   C_Feature[j] = Conv2D(channels_num, kernel_size = 1)Feature[j] #调整通道数

5  P3_in = C_Feature[0], P4_in = C_Feature[1], P5_in = C_Feature[2], P6_in = C_Feature[3

  # P3_in、P4_in、P5_in、P6_in分别为通道数调整后的特征输入

6  P6_UP = UpSampling2D()(P6_in), P65 = Add([P6_UP,P5_in]), P65 = SeparableConv()(P65)

  # P6_in经过上采样与P5_in进行Add操作生成P65。P54、P43、P53生成操作相似

7  P65_UP= UpSampling2D()(P65), P5_UP = UpSampling2D()(P5_in),P54=Add([P65_UP,P5_UP,P4_in]), P54= SeparableConv()(P54)

  # P65_UP和P5_UP经过上采样后与P4_in进行Add操作生成P54

8  P54_UP= UpSampling2D()(P54), P4_UP = UpSampling2D()(P4_in),P43=Add([P54_UP,P4_UP,P3_in]), P43= SeparableConv()(P43)

  # P54_UP和P4_UP经过上采样后与P3_in进行Add操作生成P43

9  P53 = Add([P54_UP,P43]), P53= SeparableConv()(P53)

10 P53_MaP = MaxPooling2D()(P53),P64 = Add([P53_MaP,P54,P65_UP]), P64= SeparableConv()(P64)

  # P53进行最大池化生成P53_MaP;P65经过上采样与P54、P53_MaP进行Add操作生成P64

11 P64_UP = UpSampling2D()(P64), P = Add([P64_UP,P53]), P= SeparableConv()(P)

12 return P #返回特征P,送入分类部分