位置: IT常识 - 正文

(HOTA)多目标跟踪MOT指标计算方法(多目标pso)

编辑:rootadmin
(HOTA)多目标跟踪MOT指标计算方法 基本内容:

推荐整理分享(HOTA)多目标跟踪MOT指标计算方法(多目标pso),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:多目标模型,多目标优化百度百科,多目标是什么意思,多目标break,多目标处理方法,多目标处理方法,多目标处理方法,多目标算法有哪些,内容如对您有帮助,希望把文章链接给更多的朋友!

先附上Track_eval下载地址:.GitHub - JonathonLuiten/TrackEval: HOTA (and other) evaluation metrics for Multi-Object Tracking (MOT).

各个指标的原理我在这里不谈了,主要讲一下使用该工程计算指标的方法 

我们在计算MOT评价指标的时候需要用到以上这个工程,下载好后,新建工程。

在算多目标跟踪指标的时候,我之前使用了motmetrics这个库,但是这个库不能算最新的HOTA指标,所以我们使用以上工程。

目录结构:data├─ gt│ └─ mot_challenge│ ├─ MOT17-train│ │ ├─ MOT17-02-DPM│ │ │ ├─ gt│ │ │ │ └─ gt.txt│ │ │ └─ seqinfo.ini│ │ ├─ MOT17-04-DPM│ │ │ ├─ gt│ │ │ │ └─ gt.txt│ │ │ └─ seqinfo.ini│ │ ├─ MOT17-05-DPM│ │ │ ├─ gt│ │ │ │ └─ gt.txt│ │ │ └─ seqinfo.ini│ │ ├─ MOT17-09-DPM│ │ │ ├─ gt│ │ │ │ └─ gt.txt│ │ │ └─ seqinfo.ini│ │ ├─ MOT17-10-DPM│ │ │ ├─ gt│ │ │ │ └─ gt.txt│ │ │ └─ seqinfo.ini│ │ ├─ MOT17-11-DPM│ │ │ ├─ gt│ │ │ │ └─ gt.txt│ │ │ └─ seqinfo.ini│ │ └─ MOT17-13-DPM│ │ ├─ gt│ │ │ └─ gt.txt│ │ └─ seqinfo.ini│ └─ seqmaps│ └─ MOT17-train.txt└─ trackers └─ mot_challenge └─ MOT17-train └─ MOT └─ data ├─ MOT17-02-DPM.txt ├─ MOT17-04-DPM.txt ├─ MOT17-05-DPM.txt ├─ MOT17-09-DPM.txt ├─ MOT17-10-DPM.txt ├─ MOT17-11-DPM.txt └─ MOT17-13-DPM.txt

        在下载好的项目主目录中创建data目录,需要创建的结构如上所示,其中trackers目录下的txt文件就是我们检测跟踪到的信息,gt下的gt.txt就是我们标定的目标信息文件。注意gt目录中的MOT17-train目录下的这些文件目录名要与trackers下的txt的文件名对应。seqinfo.ini是此视频序列的信息。(在不改变原代码的情况下,请按照上图配置)

 上图所示,序列名,视频长度,像素等信息。对于要评测的MOT17数据集这个是给定的。

注意到gt目录下seqmaps中有一个MOT17-train.txt文件,此文件中记录了我们要评测的序列名字,格式如下:

请注意此文件在项目中从第二行开始读取,第一行一定空出来或者写其他标注信息。

运行代码:

打开工程中主目录下的scripts,运行run_mot_challenge.py 则可得到MOTA,MOTP,HOTA等结果。完成对行人跟踪的评测。

使用此项目评价自己的数据集:(HOTA)多目标跟踪MOT指标计算方法(多目标pso)

该工程不仅可以评价MOT数据集,也可以评价自己数据集,接下来进行讲解:

打开run_mot_challenge.py文件,找到如下代码,进入到get_default_dataset_config()

default_dataset_config = trackeval.datasets.MotChallenge2DBox.get_default_dataset_config()

修改default_config字典中的值

default_config = { 'GT_FOLDER': os.path.join(code_path, 'data/gt/demo/'), # Location of GT data 'TRACKERS_FOLDER': os.path.join(code_path, 'data/trackers/demo/'), # Trackers location 'OUTPUT_FOLDER': None, # Where to save eval results (if None, same as TRACKERS_FOLDER) 'TRACKERS_TO_EVAL': None, # Filenames of trackers to eval (if None, all in folder) 'CLASSES_TO_EVAL': ['pedestrian'], # Valid: ['pedestrian'] 'BENCHMARK': 'DEMO', # Valid: 'MOT17', 'MOT16', 'MOT20', 'MOT15' #'VIS19' 'SPLIT_TO_EVAL': 'val', # Valid: 'train', 'test', 'all' 'INPUT_AS_ZIP': False, # Whether tracker input files are zipped 'PRINT_CONFIG': True, # Whether to print current config 'DO_PREPROC': True, # Whether to perform preprocessing (never done for MOT15) 'TRACKER_SUB_FOLDER': 'data', # Tracker files are in TRACKER_FOLDER/tracker_name/TRACKER_SUB_FOLDER 'OUTPUT_SUB_FOLDER': '', # Output files are saved in OUTPUT_FOLDER/tracker_name/OUTPUT_SUB_FOLDER 'TRACKER_DISPLAY_NAMES': None, # Names of trackers to display, if None: TRACKERS_TO_EVAL 'SEQMAP_FOLDER': None, # Where seqmaps are found (if None, GT_FOLDER/seqmaps) 'SEQMAP_FILE': None, # Directly specify seqmap file (if none use seqmap_folder/benchmark-split_to_eval) 'SEQ_INFO': None, # If not None, directly specify sequences to eval and their number of timesteps 'GT_LOC_FORMAT': '{gt_folder}/{seq}/gt/gt.txt', # '{gt_folder}/{seq}/gt/gt.txt' 'SKIP_SPLIT_FOL': False, # If False, data is in GT_FOLDER/BENCHMARK-SPLIT_TO_EVAL/ and in # TRACKERS_FOLDER/BENCHMARK-SPLIT_TO_EVAL/tracker/ # If True, then the middle 'benchmark-split' folder is skipped for both. }

        第一行和第二行分别指的是自己的数据集gt主目录和检测跟踪结果的主目录,第五行是要评价的类别,这里先不提,要与下文进行对应,第六行和第七行就是上述的主目录下的目录(用杠连接起来如下所示)。

整理下就是gt目录为:data/gt/demo/DEMO-val/ 

跟踪结果主目录为:data/trackers/demo/DEMO-val ,其他不变动。

在此py文件往下翻找代码找到如下属性,将这个改成自己数据集标号和类别。

self.valid_classes = ['pedestrian'] #有效类别设置self.class_name_to_class_id = {'pedestrian': 1, 'person_on_vehicle': 2, 'car': 3, 'bicycle': 4, 'motorbike': 5, 'non_mot_vehicle': 6, 'static_person': 7, 'distractor': 8, 'occluder': 9, 'occluder_on_ground': 10, 'occluder_full': 11, 'reflection': 12}

继续向下翻找找到如下属性。下图为干扰类别项,将其改为自己类别的干扰项,不要为空会报错,博主已试。

distractor_class_names = ['person_on_vehicle', 'static_person', 'distractor', 'reflection'] #这个是mot评价的干扰项

到这里需要改的代码就已经修改完毕了。这个时候还需要添加一些文件到目录中。

对于我的设置,在data/gt/demo中创建seqmaps目录,在该目录下创建DEMO_val.txt,请注意这个文件名字与我们之前设置的default_config字典中的第六行和第七行的值要匹配。

文件内容的类型与之前所描述的MOT17-train.txt中的一致。

接下来就可以参考目录结构中第一个图进行创建目录和文件了,注意gt中序列目录的名字要和trackers的txt文件名对应上。

全部配置完后运行run_mot_challenge.py即可得到结果。

我这里附上一张效果图,仅供参考,计算了一个序列。

本文链接地址:https://www.jiuchutong.com/zhishi/293146.html 转载请保留说明!

上一篇:浦那的黄胸织布鸟鸟巢,马哈拉施特拉邦 (© Samyak Kaninde/Alamy Stock Photo)(井冈山游击队的口号)

下一篇:Vue状态管理--Pinia使用详解(vue状态管理有哪些)

  • 手机信号旁边的hd怎么关闭(手机信号旁边的hd什么意思)

    手机信号旁边的hd怎么关闭(手机信号旁边的hd什么意思)

  • 淘宝证书错误怎么办(淘宝证书风险怎么解决)

    淘宝证书错误怎么办(淘宝证书风险怎么解决)

  • vivos6用的是什么处理器(vivos6好不好用)

    vivos6用的是什么处理器(vivos6好不好用)

  • 红米k20需要贴膜吗(红米k20贴膜有白边怎么办)

    红米k20需要贴膜吗(红米k20贴膜有白边怎么办)

  • 笔记本键盘失灵怎么办(笔记本键盘失灵的原因)

    笔记本键盘失灵怎么办(笔记本键盘失灵的原因)

  • 手机电子版照片怎么拍(手机电子版照片怎么弄到word文档上)

    手机电子版照片怎么拍(手机电子版照片怎么弄到word文档上)

  • 华为20i怎么隐藏应用(华为20i怎么隐藏应用程序)

    华为20i怎么隐藏应用(华为20i怎么隐藏应用程序)

  • 手机上面一排孔是什么(手机上面一排孔掉了)

    手机上面一排孔是什么(手机上面一排孔掉了)

  • 电脑老蓝屏怎么回事(电脑老蓝屏怎么回事儿)

    电脑老蓝屏怎么回事(电脑老蓝屏怎么回事儿)

  • 苹果手机换过屏幕有什么影响(苹果手机换过屏幕值得买吗)

    苹果手机换过屏幕有什么影响(苹果手机换过屏幕值得买吗)

  • mate30是什么屏幕(mate30 什么屏)

    mate30是什么屏幕(mate30 什么屏)

  • 台式电脑不用音响怎么有声音(台式电脑不用音箱用耳机可以吗)

    台式电脑不用音响怎么有声音(台式电脑不用音箱用耳机可以吗)

  • ipada1567是几代(ipad a1567是第几代)

    ipada1567是几代(ipad a1567是第几代)

  • 陌陌关注多久才可以视频(陌陌关注多久才可以语音通话)

    陌陌关注多久才可以视频(陌陌关注多久才可以语音通话)

  • 快手推广是什么意思(快手运营推广公司)

    快手推广是什么意思(快手运营推广公司)

  • word2013稿纸设置在哪(word2013稿纸设置不见了)

    word2013稿纸设置在哪(word2013稿纸设置不见了)

  • 京东取消订单能恢复吗(京东取消订单能退定金吗)

    京东取消订单能恢复吗(京东取消订单能退定金吗)

  • iPhone11pro怎么一键关闭后台应用(苹果11pro如其名)

    iPhone11pro怎么一键关闭后台应用(苹果11pro如其名)

  • 荣耀20pro怎么关闭后台(荣耀20pro怎么关闭双击放大)

    荣耀20pro怎么关闭后台(荣耀20pro怎么关闭双击放大)

  • gorun是什么牌子(Gorun是什么牌子机油)

    gorun是什么牌子(Gorun是什么牌子机油)

  • xampp是什么(xampp是什么的组合)

    xampp是什么(xampp是什么的组合)

  • 9v2a和5v2a可以通用吗(9v2a和5v3a能通用吗)

    9v2a和5v2a可以通用吗(9v2a和5v3a能通用吗)

  • 美团月销量显示规则(美团月销量显示越来越少)

    美团月销量显示规则(美团月销量显示越来越少)

  • 光驱位装固态硬盘(光驱位装固态硬盘无法识联想电脑怎么进入)

    光驱位装固态硬盘(光驱位装固态硬盘无法识联想电脑怎么进入)

  • 站酷如何发表作品(站酷怎么发作品)

    站酷如何发表作品(站酷怎么发作品)

  • 视频聊天声音能关掉吗(视频聊天声音能听到吗)

    视频聊天声音能关掉吗(视频聊天声音能听到吗)

  • 怎样去除快捷方式小箭头?(怎样去除快捷方式小箭头win10)

    怎样去除快捷方式小箭头?(怎样去除快捷方式小箭头win10)

  • 安装dedecms织梦后显示数据库连接失败(将织梦dedecms转换到wordpress)

    安装dedecms织梦后显示数据库连接失败(将织梦dedecms转换到wordpress)

  • aisino金税盘怎么安装在电脑上
  • 消费税征收范围包括
  • 企业土地使用税征收标准
  • 其他综合收益影响递延所得税负债吗
  • 新入职员工哪月交社保
  • 分公司亏损总公司怎么办
  • 发票税率金额如何得出
  • 进项税未抵扣进账了怎么处理
  • 广告公司小规模税率
  • 已上传的红字发票怎么打印
  • 合并报表负商誉为什么计留存收益
  • 企业为什么要进行环境分析
  • 土地置换账务处理流程
  • 一般纳税人支出的钱没有发票年底怎么处理
  • 公司宣传牌模板
  • 利润表中列报项目
  • 怎么去税务局报账流程
  • 个人去税务局开票流程
  • 印花税股权转让计税依据
  • 发票是不是一定要三签才能开
  • 季初从业人数和季末从业人数怎么填
  • 小微企业季度销售额超过30万增值税
  • 交叉持股的合并财务报表
  • 农村的生产经营是什么
  • 收到退回的银行汇票会计分录
  • 以前年度多列的费用今年交回
  • 资产减值损失是什么类科目
  • 增加资产的会计科目
  • 怎样找此电脑
  • 鸿蒙大文件夹怎么设置透明度
  • 怎么解决笔记本电脑卡顿问题
  • 计提职工薪酬怎么算
  • typecho安装插件
  • 路由器怎么重置网络
  • 爱尔兰新手岛
  • qq2440启动linux后插入u盘出现usb 1-1: device descriptor read/64, error -110,usb 1
  • thinkphp多模块
  • 烟草带来的损失
  • 建设工程劳务分包合同属于建设工程合同吗
  • php怎么取数组
  • 垃圾清运费属于什么服务
  • 浅谈php中静态方法的应用
  • 可予税前扣除的合理部分
  • 公司员工抽奖活动
  • 准予扣除业务招标的情形
  • 茶叶开一般发票(非增值税发票)是多少个点的?
  • 织梦cms要钱吗
  • 发票可以开未来日期吗
  • discuz管理中心登陆
  • 资产负债表中的货币资金怎么算
  • 支付债券发行费怎么算
  • 用库存现金支付职工医药费用69元,会计人员
  • 开办费的最新账务处理会计视野
  • 场地租赁费属于什么税收分类编码
  • 税审报告一定要税所主任签吗
  • sql server.
  • sql合并字段
  • 一切为了任务
  • centos怎么配置ssh
  • winxp和win7双系统安装
  • mac u盘启动盘
  • centos分区命令
  • sesvc.exe是什么进程
  • 移动宽带解绑怎么办理
  • Android游戏开发教程
  • bootstrap怎么用
  • dos删除文件夹下所有文件 不删除父目录
  • gridview添加数据
  • django forms.py
  • javascript $符号
  • Metaio in Unity3d 教学--- 一. 搭建环境,运行官方案例
  • 基于jQuery和Bootstrap的设计报告的参考文献
  • python3新增特性
  • 公司税务风险情况说明怎么写
  • 支付宝申领失业金申请审核多久
  • 河南税务申报
  • 如何在国税网下载发票
  • 代账公司盈利水平如何
  • 公司租房的房产税应计入哪个科目
  • 粮食部门是不是国家机关
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设