本文转载自知乎,已获作者授权转载。

链接:https://zhuanlan.zhihu.com/p/186905783

这篇文章是我们在CVPR2020 智慧城市AICity比赛中 得到冠军的基础,发表于 IEEE Trans. on Multimedia。拓展了我们在CVPR 2019 workshop中的工作。我们在比赛中领先第二名大约6个点。同时在VeRi-776上也达到了83.41% mAP(就是顺便测的resnet baseline,没有调参,没有rerank,没有PCB,就很高了)。

下面就来介绍一下我们的工作,可能比较工程化一点,也有一些我们的试错。感谢大家。

作者:Zhedong Zheng,Tao Ruan,Yunchao Wei,Yi Yang,Tao Mei

论文:https://arxiv.org/abs/2004.06305

比赛代码:https://github.com/layumi/AICIty-reID-2020

数据:

深度学习模型的基础就是data-driven,所以我们首先先关注了数据。我们发现大多数数据集都是长尾的,而且数据量不是很均衡。如下图a,我们统计了几个数据集,每类样本的个数,发现多数车辆类别少于10张训练图像。就导致了整体intra-class 类内的变化有限。

所以对于AICity 19年的比赛(AICity 2020比赛方则提供了生成数据),我们就采集了额外3个数据集来辅助训练。其实并没有解决intra-class的问题,而是加多了inter-class类间变化,使模型学的更好。

如图b,我们混合了额外3个数据集来帮助训练。我们也统计了其他的数据集信息如下:

模型学习:

有了数据以后,接下来就是模型学习。我们采用了一个很简单的方案。其实就是我们2017年就开源的baseline 中的方案。(https://github.com/layumi/Person_reID_baseline_pytorch)

而本篇文章 观测到 引入额外数据集会带来一些bias,所以我们采用了domain adaptation中两阶段训练。先在所有训练集上训练,然后再针对目标环境finetune。

我们分析了一下原理,其实就类似virtual class。有第一阶段的训练本质上,辅助了我们加大inter-class类间的距离,如下图的W3,所以我们第二阶段再finetune的时候就容易了。

后处理:

对于学术的数据集(VeRI 和 VehicleID),在报结果的时候,为了公平,我们没有用后处理,

而对于比赛,有很多细节,我们也尝试了很多后处理 来提高结果,最常用的包括 reranking, multi-scale ,还有model ensemble。整体流程如下图:

而我们在2020比赛中又针对 AICity数据集做了一些优化,比如组织者还提供了track的信息(哪几张图是一辆车在某个摄像头下的tracklist)所以我们还进一步做了优化。加入了一些group的概念。2020 年比赛的报告在https://github.com/layumi/AICIty-reID-2020/blob/master/paper.pdf

实验结果:

在VeRi-776 和 VehicleID上,我们没有用任何后处理, 就取得了比较高的结果。

我们还测试了不同的backbone 和 input size。

不同的后处理方式:

最后我们还可视化了学到的特征,集中在比较有鉴别力的区域:比如车头灯 和 轮胎上。


  • 其他资源:

- 我也做了一些车辆重识别论文/数据集的收集:https://github.com/layumi/Vehicle_reID-Collection

欢迎大家关注,把新的paper issue上来。

京东AI组 也提供了很棒的汇总车辆reid,做了很多这方面的工作:(https://github.com/JDAI-CV/VeRidataset )提供了VeRi-776 数据集的排行榜

还有北大的工作有很多,我这边简要提供几个链接,方便大家顺藤摸瓜。(https://github.com/PKU-IMRE/VERI-Wild)

END

备注:车辆

车牌车辆识别与智能交通交流群

车牌识别、车辆重识别、智能交通等技术,

若已为CV君其他账号好友请直接私信。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到  

TMM|车辆重识别的一些实践相关推荐

  1. mysql TMM_TMM|车辆重识别的一些实践

    本文转载自知乎,已获作者授权转载. 链接:https://zhuanlan.zhihu.com/p/186905783 这篇文章是我们在CVPR2020 智慧城市AICity比赛中 得到冠军的基础,发 ...

  2. 最新综述:车辆重识别技术

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 [导读]这是一篇新出的车辆ReID中文综述论文,相信对那些想要整体 ...

  3. unity随机方向的代码_ECCV 2020 目前用于车辆重识别(vehicle reID)中最大的合成车辆数据集(代码开源)...

    论文题目: Simulating Content Consistent Vehicle Datasets with Attribute Descent 论文地址: https://arxiv.org/ ...

  4. ICCV 2019 | 旷视研究院提出VANet:具备视角感知力的车辆重识别网络

    本文介绍旷视研究院提出具备视角感知力的车辆重识别网络 VANet,它可以克服因被拍摄车辆的视角变化过于巨大所造成的性能严重削弱的问题. 论文名称:Vehicle Re-identification w ...

  5. 车辆重识别综述(2021年非专业总结)

    车辆重识别研究 车辆重识别是指给出一张车辆图片,可以识别出在摄像头下或者其他照片中出现的同一辆车.它可以被分为图像检索的子问题.车辆重识别在现实中可以应用到真实交通系统中,起到对目标车辆的定位,追踪的 ...

  6. 车辆重识别、行人检测数据集、多摄像头数据集

    Time:2022 / 8/ 19 Author:QHL-taki content:Dataset Sharing 前言 ​ 近期博主在做多摄像头行人重识别的任务,查询多方资料,收集到一些重识别相关的 ...

  7. 车辆重识别:Flare-Aware Cross-modal Enhancement Network for Multi-spectral Vehicle Re-identification

    源码见专栏置顶- 论文作者:Aihua Zheng,Zhiqi Ma,Zi Wang,Chenglong Li 作者单位:###### 论文链接:http://arxiv.org/abs/2305.1 ...

  8. 车辆重识别(Re-ID)中的mAP和Rank-k评测指标

    1. mAP(mean Average precision) mAP(mean Average precision,平均精度均值)是目标检测和多标签图像分类等任务中常用的评测指标,因为这类任务中的标签 ...

  9. 利用行人重识别代码训练车辆重识别

    一.参考 行人重识别代码:Person_reID_baseline_pytorch-master 代码链接:https://github.com/layumi/Person_reID_baseline ...

最新文章

  1. 百度WordPress结构化数据插件上线
  2. mysql图形化及命令行操作用户权限
  3. C#到Java byte类型冲突的解决
  4. NeHe教程Qt实现——lesson10
  5. AB1601的波特率注意事项
  6. 区块链预言机(4)内在机制
  7. json数组传递到后台controller
  8. erlang的dict源码解析(1)
  9. 怎么在jquery里清空文本框的内容
  10. python迭代器生成器
  11. 使用vue-quill-editor实现富文本编辑器
  12. 搭建openstack keystone服务创建域报错An unexpected error prevented the server from fulfilling your request. (H
  13. python 转换文本从繁体到简体,但保留一切繁体符号
  14. 详解鸽巢原理【组合数学】
  15. 03 - 程序设计框架:裸机编程中应用层、中间层、驱动层划分
  16. RHEL7-team双网卡绑定
  17. DTU连接自建MQTT服务器
  18. 9.来电显示归属地--自定义Toast
  19. Ubutun20.0.4搭建Opengrok1.3.16查看Android源码
  20. 2022年东南大学计算机考研复试分数线

热门文章

  1. 非线性优化库liblbfgs初探
  2. 540 - Team Queue
  3. [shell][001] [advanced]定制化自己的shell命令
  4. 【实践驱动开发3-005】TI WL1835MODCOM8 在android的移植 - SDIO and wifi 基础
  5. linux etc profile生效,让/etc/profile文件修改后立即生效
  6. android不能在主线程,android.os.NetworkOnMainThreadException 在4.0之后谷歌强制要求连接网络不能在主线程进行访问(示例代码)...
  7. 感恩工作平台心得体会_珍惜工作,感恩企业,从而追求更美好的人生
  8. nuke无法理解服务器的响应,cuke4nuke服务器没有重新开始
  9. 闪退mac_幕布闪退怎么办?别着急看这里
  10. html5双波浪线怎么添加,在WPS中如何给段落添加双波浪线边框