细粒度分类
无监督目标定位
SCDA:selective convolution descriptor aggregation
https://www.jianshu.com/p/69bebb635b3d?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
三分支(多分支)多尺度学习网络结构MMAL-Net(TBMSL-Net)
https://blog.csdn.net/calvinpaean/article/details/115416696
https://blog.csdn.net/Dear_Linlin/article/details/112362077

1、raw branch:输入原始图像(raw image),通过CNN学习物体的整体特征,并生成的feature maps用于下一分支;
2、AOLM:从原始图像的feature maps中学习到物体的边界框信息;
3、object branch:根据边界框信息对原始图像进行crop,得到较细尺度的目标图像(object image)不仅包含目标物体的结构特征还包含较细粒度的特征,输入CNN网络中,具有更好的分类效果;
4、APPM:根据目标图像的feature maps得到几个差异最大、冗余度最小的局部区域(part regions);
5、part branch:从目标图像(object image)中裁剪局部区域输入到CNN中训练;
6、在三个分支中CNN和FC的参数是共享的,因此网络结构对不同尺度,不同部位的物体有较好的分类能力;
7、测试阶段只包含上图中的绿框中的结构;分类损失函数是cross entropy loss
SCDA:弱监督定位
对于一个1x2048x14x14的feature_map1,2048个通道上求和得到1x14x14的feature_map2, 然后求一个平均值a, feature_map2上值大于a的位置即为响应比较高的区域,就是目标可能存在的区域
A = mx.nd.sum(fms, axis=1, keepdims=True) #batch*1*14*14 a = mx.nd.mean(A, axis=[2, 3], keepdims=True) #batch*1*1*1 M = (A>a)
AOLM:
resnet50的最后两层的两个14x14的feature_map(conv5_b, conv5_c), 分别进行SCDA,取两者相交的区域,求出一个外接矩形,resize到448x448,送入网络进行分类
APPM: 对于resnet最后一个14x14feature_map, 采用MaxPooling得到7个proposal,resize到224x224, 送入网络进行分类


浙公网安备 33010602011771号