当前位置:   article > 正文

mot数据集_基于MATLAB的MOT官方评估工具

motgcc

43ba9e65f0351d111d1db500b21cd6a8.png

MOT数据集

数据集地址:MOT Challenge

数据集格式:MOT Challenge,MOT17数据集格式_bug++-CSDN博客_mot数据集格式

本实验是基于mmdetection框架faster rcnn,数据集格式为将MOT17-Det转化成VOC格式进行训练,对于训练集的结果利用以下脚本转化成标准格式

数据集处理及训练参照以下几篇文章:

HUST小菜鸡:将MOT17-Det数据集转成VOC格式​zhuanlan.zhihu.com
7dfdbc65d3fa065eb73d36701081ad63.png
HUST小菜鸡:通过HSV转换的方式实现图片数据增强​zhuanlan.zhihu.com
HUST小菜鸡:使用mmdetection测试以及生成检测结果​zhuanlan.zhihu.com
  1. import pickle
  2. # import cv2
  3. import numpy as np
  4. import os
  5. fp_pkl = open('faster_voc_train1.pkl','rb')
  6. inf = pickle.load(fp_pkl)
  7. length = len(inf)
  8. # print(inf[:5])
  9. print(length)
  10. fp_txt = open('train1.txt','r')
  11. train_list = fp_txt.readlines()
  12. print(train_list[100])
  13. output_dir = 'D:/Pycharm/MOT-DET/result'
  14. if not os.path.exists(output_dir):
  15. os.makedirs(output_dir)
  16. # for i in range (len(test_list)):
  17. fp2 = open(output_dir+'/MOT17-02.txt','w')
  18. fp4 = open(output_dir+'/MOT17-04.txt','w')
  19. fp5 = open(output_dir+'/MOT17-05.txt','w')
  20. fp9 = open(output_dir+'/MOT17-09.txt','w')
  21. fp10 = open(output_dir+'/MOT17-10.txt','w')
  22. fp11 = open(output_dir+'/MOT17-11.txt','w')
  23. fp13 = open(output_dir+'/MOT17-13.txt','w')
  24. for i in range(length):
  25. pic_info = train_list[i]
  26. file_fp = pic_info[:2]
  27. if file_fp=='02':
  28. fp = fp2
  29. if file_fp == '04':
  30. fp = fp4
  31. if file_fp=='05':
  32. fp = fp5
  33. if file_fp=='09':
  34. fp = fp9
  35. if file_fp=='10':
  36. fp = fp10
  37. if file_fp=='11':
  38. fp = fp11
  39. if file_fp=='13':
  40. fp = fp13
  41. fram = int(pic_info[2:])
  42. for pre in inf[i]:
  43. for one in pre:
  44. x1 = one[0]
  45. y1 = one[1]
  46. x2 = one[2]
  47. y2 = one[3]
  48. conf = one[4]
  49. w = x2-x1
  50. h = y2-y1
  51. result = str(fram) + ',' + str(-1) +',' + str(x1) + ',' + str(y1) +',' + str(w) + ',' + str(h) + ',' + str(conf)+'n'
  52. fp.writelines(result)
  53. fp2.close()
  54. fp4.close()
  55. fp5.close()
  56. fp9.close()
  57. fp10.close()
  58. fp11.close()
  59. fp13.close()

7ce2f557001d8fe88baeb02edcfc808f.png
生成结果如图所示

motchallenage-devkit官方工具

官方工具地址:Bitbucket

官方工具Github地址:xstgavin/amilan-motchallenge-devkit

官方python工具:cheind/py-motmetrics(看着很复杂,想尝试放弃了)

MATLAB配置

1506a2d01857a2fd5fc2c0c36d65804c.png

官方工具基于MATLAB,运行需要C/C++环境,按照指引,使用工具包里面的compile,但是在编译的过程会显示“mex -setup 未找到支持的编译器或 SDK。您可以安装免费提供的 MinGW-w64 C/C++ 编译器”错误,现有的官方的安装编译器个人尝试都是安装不成功的,偶然在网上找到一个可用的TDM-GCC编译器(亲测可用),默认安装即可

https://sourceforge.net/projects/tdm-gcc/​sourceforge.net GCC编译器(TDM-GCC) v5.1.0 官方最新安装版 windows 64bit​www.jb51.net
884fbd81aca9a463a48a441886a229af.png

安装完成配置环境

  1. >> setenv('MW_MINGW64_LOC','C:TDM-GCC-64')
  2. >> mex -setup
  3. MEX 配置为使用 'MinGW64 Compiler (C)' 以进行 C 语言编译。
  4. 警告: MATLAB C 和 Fortran API 已更改,现可支持
  5. 包含 2^32-1 个以上元素的 MATLAB 变量。您需要
  6. 更新代码以利用新的 API。
  7. 您可以在以下网址找到更多的相关信息:
  8. http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html。
  9. 要选择不同的语言,请从以下选项中选择一种命令:
  10. mex -setup C++
  11. mex -setup FORTRAN
  12. >> mex -setup C++
  13. MEX 配置为使用 'MinGW64 Compiler (C++)' 以进行 C++ 语言编译。
  14. 警告: MATLAB C 和 Fortran API 已更改,现可支持
  15. 包含 2^32-1 个以上元素的 MATLAB 变量。您需要
  16. 更新代码以利用新的 API。
  17. 您可以在以下网址找到更多的相关信息:
  18. http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html。

compile

  1. >> compile
  2. 使用 'MinGW64 Compiler (C++)' 编译。
  3. MEX 已成功完成。
  4. 使用 'MinGW64 Compiler (C++)' 编译。
  5. MEX 已成功完成。
  6. 使用 'MinGW64 Compiler (C++)' 编译。
  7. MEX 已成功完成。

motchallenage-devkit的使用

详细的使用参照官方给出的readme,个人觉得那个说的很详细

对于本工具包,官方给出了以下几种数据结果的评估接口

  • demo_evalMOT15
  • demo_evalMOT15_3D
  • demo_evalMOT16
  • demo_evalMOT17Det
  • demo_evalDukeMTMCT
  • demo_evalCVPR19

使用也很简单,只需要修改demo对应的路径地址运行就可以了

以MOT17-Det为例

fb8d81378ff70c9aa183e5bb5401fdaf.png

evaluateDetection函数有三个参数

evaluateDetection(seqmap, resDir, gtDataDir)

(1)seqmap

包含需要被评估的序列,该序列存放在./seqmaps文件夹中

f66c7539220d557740e3e942c2983303.png

(2)resDir

检测结果的存放位置,检测的结果的格式参照之前的mot官网的要求,也可以参照代码给出的测试案例

(3)gtDataDir

真实值标注地址,可以是本项目路径某个文件夹,也可以是电脑本地某个文件夹

以下是测试的结果

  1. >> demo_evalMOT17Det
  2. Challenge: MOT17Det
  3. Set: Training Set
  4. Sequences:
  5. 'MOT17-02'
  6. 'MOT17-04'
  7. 'MOT17-05'
  8. 'MOT17-09'
  9. 'MOT17-10'
  10. 'MOT17-11'
  11. 'MOT17-13'
  12. Preprocessing (cleaning) MOT17-02...
  13. ......
  14. Removing 4187 boxes from solution...
  15. Preprocessing (cleaning) MOT17-04...
  16. ..........
  17. Removing 11509 boxes from solution...
  18. Preprocessing (cleaning) MOT17-05...
  19. ........
  20. Removing 1071 boxes from solution...
  21. Preprocessing (cleaning) MOT17-09...
  22. .....
  23. Removing 880 boxes from solution...
  24. Preprocessing (cleaning) MOT17-10...
  25. ......
  26. Removing 2412 boxes from solution...
  27. Preprocessing (cleaning) MOT17-11...
  28. .........
  29. Removing 1408 boxes from solution...
  30. Preprocessing (cleaning) MOT17-13...
  31. .......
  32. Removing 2078 boxes from solution...
  33. Evaluating unknown
  34. ... MOT17-02
  35. ... MOT17-04
  36. ... MOT17-05
  37. ... MOT17-09
  38. ... MOT17-10
  39. ... MOT17-11
  40. ... MOT17-13
  41. Ok, results are valid. EVALUATING...
  42. *** Dataset: MOT17Det ***
  43. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  44. Precision: 1.000 0.984 0.981 0.981 0.966 0.964 0.969 0.968 0.964 0.961 0.000
  45. Average Precision: 0.8852
  46. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  47. 98.5 92.6| 0.98 66393 65418 5232 975| 90.7 90.1
  48. Here are the per-sequence evaluations:
  49. ... MOT17-02
  50. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  51. Precision: 1.000 1.000 1.000 1.000 1.000 1.000 1.000 1.000 0.999 0.998 0.000
  52. Average Precision: 0.9087
  53. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  54. 97.5 97.3| 0.33 7288 7103 195 185| 94.8 92.1
  55. ... MOT17-04
  56. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  57. Precision: 1.000 0.957 0.968 0.970 0.973 0.977 0.965 0.961 0.958 0.955 0.000
  58. Average Precision: 0.8804
  59. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  60. 99.2 91.7| 2.47 28936 28713 2594 223| 90.3 90.2
  61. ... MOT17-05
  62. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  63. Precision: 1.000 1.000 0.993 0.993 0.991 0.970 0.974 0.973 0.970 0.964 0.000
  64. Average Precision: 0.8935
  65. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  66. 99.0 91.3| 0.42 3667 3632 348 35| 89.6 85.8
  67. ... MOT17-09
  68. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  69. Precision: 1.000 0.938 0.968 0.978 0.982 0.984 0.975 0.979 0.980 0.982 0.000
  70. Average Precision: 0.8879
  71. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  72. 98.7 95.2| 0.30 3154 3113 158 41| 93.7 93.2
  73. ... MOT17-10
  74. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  75. Precision: 1.000 0.998 0.999 0.998 0.997 0.996 0.995 0.994 0.991 0.989 0.000
  76. Average Precision: 0.9051
  77. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  78. 99.1 90.2| 1.52 9172 9088 991 84| 88.3 88.0
  79. ... MOT17-11
  80. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  81. Precision: 1.000 1.000 1.000 1.000 1.000 0.998 0.996 0.996 0.993 0.984 0.000
  82. Average Precision: 0.9061
  83. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  84. 99.8 95.3| 0.34 6137 6123 305 14| 94.8 93.0
  85. ... MOT17-13
  86. Recall: 0.000 0.100 0.200 0.300 0.400 0.500 0.600 0.700 0.800 0.900 1.000
  87. Precision: 1.000 1.000 0.989 0.984 0.987 0.988 0.989 0.990 0.991 0.990 0.000
  88. Average Precision: 0.9007
  89. Rcll Prcn| FAR GT TP FP FN| MODA MODP
  90. 95.1 92.3| 0.85 8039 7646 641 393| 87.1 88.3
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/176087
推荐阅读
相关标签
  

闽ICP备14008679号