摘要:地标辨认,基于深度学习及大规模图像训练,反对上千种物体辨认及场景辨认,广泛应用于拍照识图、幼教科普、图片分类等场景。本文将为大家带来6种对于地标识的算法整顿和总结。
本文分享自华为云社区《地标辨认算法》,原文作者:阿杜 。
地标辨认,基于深度学习及大规模图像训练,反对上千种物体辨认及场景辨认,广泛应用于拍照识图、幼教科普、图片分类等场景。本文将为大家带来6种对于地标识的算法。
一、《1st Place Solution to Google Landmark Retrieval 2020》
算法思路:
Step1:应用荡涤过的GLDv2数据集训练初始embedding模型。
Step2:应用全量GLDv2数据基于Step1失去的模型进行迁徙学习。
Step3:逐渐扩充训练图片的尺度(512512,640640,736*736),模型性能失去进一步晋升。
Step4:减少荡涤后的数据的训练loss权重,进一步训练模型。
Step5:模型交融。
Notes:
1、Backbone模型为Efficientnet+global average pooling,训练应用了cosine softmax loss。
2、为了解决类别不平衡问题,应用了weighted cross entropy。
经验总结:
1、荡涤后的数据有利于模型疾速收敛。
2、全量大数据集有利于模型学习到更好的特色示意。
3、减少训练分辨率能晋升模型性能。
二、《3rd Place Solution to “Google Landmark Retrieval 2020》
算法思路:
Step1:应用CGLDv2训练根底模型用于提取GLDv2全量图片特色,应用DBSCAN聚类办法更新图像类别,进行数据荡涤。
Step2:应用了Corner-Cutmix的图像增广办法,进行模型训练。
Notes:
1、backbone为ResNest200和ResNet152,GAP池化,1*1卷积降维到512维,损失函数为cross entropy loss。
三、《Two-stage Discriminative Re-ranking for Large-scale Landmark Retrieval》
算法思路:
Step1:应用CNN特色进行KNN搜寻,获取类似图片。
Step2:插入Step1脱漏的图片进行从新排序。
Notes:
1、Backbone模型为ResNet-101+Generalized Mean (GeM)-pooling,训练loss为ArcFace loss。
2、应用全局特色+部分特色对GLd-v2数据集进行荡涤,用于后续模型训练。
四、《2nd Place and 2nd Place Solution to Kaggle Landmark Recognition and Retrieval Competition 2019》
算法思路:
1、应用GLD-v2全量数据别离训练Resnet152、ResNet200等模型,训练loss为ArcFace loss、Npairs loss,拼接各个backbone的特色,应用PCA降到512维,作为图像的全局特色。
2、应用全局特色进行KNN搜寻,对搜寻后果应用SURF、Hassian-Affine 和root sift部分特色进行再排序,并且应用了DBA和AQE。
五、《Detect-to-Retrieve: Efficient Regional Aggregation for Image Search》
算法思路:
Step1:应用GLD的带bbox数据集,训练Faster-RCNN或SSD检测模型,用于地标框的提取。
Step2:提出了D2R-R-ASMK办法,用于检测框内的部分特征提取与特色聚合。
Step3:应用聚合后特色在database中进行搜寻。
Notes:
1、D2R-R-ASMK基于DELF部分特色抽取和ASMK特色聚合办法实现。
2、每张图片提取4.05个region的时候成果最好,search的内存占用会有相应减少。
六、《Unifying Deep Local and Global Features for Image Search》
算法思路:
Step1:对立在同一个网络中提取全局和部分特色
Step2:应用全局特色搜寻top100的类似图片
Step3:应用部分特色对搜寻后果进行重排序
Notes:
1、全局特色应用GeM池化和ArcFace loss。
2、部分特色匹配应用Ransac办法。
点击关注,第一工夫理解华为云陈腐技术~