位置: 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状态管理有哪些)

  • 华为手机自带万能钥匙在哪(华为手机自带万能遥控器下载)

    华为手机自带万能钥匙在哪(华为手机自带万能遥控器下载)

  • 希沃怎么导入PPT课件(希沃怎么导入视频)

    希沃怎么导入PPT课件(希沃怎么导入视频)

  • 苹果xr人像模式怎么用(苹果xr人像模式没有舞台光)

    苹果xr人像模式怎么用(苹果xr人像模式没有舞台光)

  • 酷狗概念版什么区别(酷狗概念版什么时候出来的)

    酷狗概念版什么区别(酷狗概念版什么时候出来的)

  • 华为荣耀10有没有面部解锁(华为荣耀10有没有红外线功能)

    华为荣耀10有没有面部解锁(华为荣耀10有没有红外线功能)

  • 荣耀v20单摄还是双摄(荣耀v20相机参数配置)

    荣耀v20单摄还是双摄(荣耀v20相机参数配置)

  • 学习通开摄像头有声音吗

    学习通开摄像头有声音吗

  • 快手非法行为是属于几类(快手非法行为是怎么回事)

    快手非法行为是属于几类(快手非法行为是怎么回事)

  • mla-tl10是什么型号(mlaal10是什么型号)

    mla-tl10是什么型号(mlaal10是什么型号)

  • OTG为什么连不上

    OTG为什么连不上

  • 抖音能投屏吗(抖音能投屏吗电视)

    抖音能投屏吗(抖音能投屏吗电视)

  • powerpoint是干什么的(powerpoint干什么的)

    powerpoint是干什么的(powerpoint干什么的)

  • qq为什么匹配不了(qq为什么匹配不了聊天)

    qq为什么匹配不了(qq为什么匹配不了聊天)

  • 显示非好友却能发消息(显示非好友却能发信息)

    显示非好友却能发消息(显示非好友却能发信息)

  • word2007默认的文件扩展名是什么(word2007默认格式是什么)

    word2007默认的文件扩展名是什么(word2007默认格式是什么)

  • excel都能干什么(excel到底可以干什么)

    excel都能干什么(excel到底可以干什么)

  • ipad无法连接到app store是什么意思(苹果ipad连不上wifi怎么回事)

    ipad无法连接到app store是什么意思(苹果ipad连不上wifi怎么回事)

  • 内存储器主要有哪些(内存储器主要有哪几种)

    内存储器主要有哪些(内存储器主要有哪几种)

  • win7专业版密码忘了怎么办(win7专业版密码忘了怎么解除)

    win7专业版密码忘了怎么办(win7专业版密码忘了怎么解除)

  • 手机qq怎么编辑文件(手机QQ怎么编辑分组)

    手机qq怎么编辑文件(手机QQ怎么编辑分组)

  • 运算器能不能存储信息(运算器能不能存储数据)

    运算器能不能存储信息(运算器能不能存储数据)

  • 怎样延长手机锁屏时间(怎样延长手机锁屏时间长一点)

    怎样延长手机锁屏时间(怎样延长手机锁屏时间长一点)

  • 双栏布局下自定义宽度(双栏布局下自定义宽度 658)

    双栏布局下自定义宽度(双栏布局下自定义宽度 658)

  • 睡眠app开发有哪些功能(睡眠软件工作原理)

    睡眠app开发有哪些功能(睡眠软件工作原理)

  • 做设计win7还是win10强(设计师用windows什么版本)

    做设计win7还是win10强(设计师用windows什么版本)

  • 移动操作系统有哪些(移动操作系统有哪些主要特点和功能)

    移动操作系统有哪些(移动操作系统有哪些主要特点和功能)

  • 【Uni-App】uniapp使用uview实现弹出键盘输入密码/验证码功能(uniqpp)

    【Uni-App】uniapp使用uview实现弹出键盘输入密码/验证码功能(uniqpp)

  • Yolov7-pose 训练body+foot关键点(yolo训练参数)

    Yolov7-pose 训练body+foot关键点(yolo训练参数)

  • 没有固定金额的合同叫什么合同
  • 中国的税收制度是什么
  • 礼品进项怎么做进项转出
  • 怎么计提固定资产折旧科目
  • 银行存款产生的利息怎么写分录
  • 金蝶财务系统录入发票
  • 残疾人就业保障金征收使用管理办法
  • 销售货款会计分录怎么做
  • 交通运输业安全心得体会范文
  • 材料检测费怎么计算
  • 农场管委会是什么性质单位
  • 工程改造合同印花税
  • 冬虫夏草开票什么税率
  • 电子发票详见清单怎么开
  • 修缮发票要注明什么
  • 利用发票管税的意义
  • 生活服务业包括哪些行业照片
  • 管理不善造成的损失怎么处理
  • 工程项目管理人员任命书
  • 计算应纳税所得额时可以扣除的项目有
  • 参加失业保险本期实际缴费金额包括员工承担部分吗?
  • 四种存款账户的定义
  • 差旅费账务处理例子
  • 期初银行余额有误怎么调分录怎么写
  • sharedprem.exe - sharedprem是什么进程 有什么作用
  • ros source
  • uniapp接入支付宝
  • 寿命最短的苹果手机
  • php操作json
  • 未注销的坏账可以转出吗
  • 购买用友财务软件
  • 运输合同印花税税率
  • 手把手教你暴力破解wifi密码
  • 短期借款产生的利息进入总账吗
  • etc发票计算抵扣
  • vue环境搭建及配置简书
  • 销售费用可以开专票吗
  • 瑞吉接送
  • seq命令
  • 新注册企业实收资本没到账怎么处理
  • 金税盘插电脑上没反应是怎么回事
  • index.php备份文件名
  • python生成器的应用场景
  • Python IDE之Thonny的介绍
  • mysql查询缓慢
  • 净利润和毛利润谁大
  • 旅游业营改增怎么报税
  • 客户多付的尾数计入什么科目
  • 房产增值税发票可以抵税吗
  • 减免的应付账款如果入账
  • 三证合一哪三个证
  • 招聘一年以内
  • 单位购牙膏牙刷卫生纸怎么做账?
  • 进项税怎么做账务处理
  • 在分公司签的合同能转到总公司吗?
  • 为什么看科目四看不进去呀
  • 赊销是什么意思 视频
  • mac系统10.10
  • 联想yoga升级win11
  • ubuntu 12.04安装
  • win7更改win10系统要怎么更改
  • Linux桌面环境安装
  • linux误删文件怎么办
  • macbook外接多个显示器
  • WIN7系统电脑对话框跟鼠标走怎样设置
  • win8怎么系统重装系统
  • win8.1无线网
  • bootstrap treeview 扩展addNode方法动态添加子节点的方法
  • sublime text配置node.js调试(图文教程)
  • 学dos有用吗
  • javascript中的判断语句
  • 支持向量机
  • css checked
  • javascript用处
  • js入门基础教程
  • 进口肉的税率是多少
  • 咨询服务费税率2020小规模
  • 出口退税收入怎么做账
  • 买楼送地下室划算吗
  • 交强险是什么样的照片
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设