20250313
This commit is contained in:
72
dataset/multi-trajs.py
Normal file
72
dataset/multi-trajs.py
Normal file
@ -0,0 +1,72 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
Created on Mon Mar 10 09:33:35 2025
|
||||
基准数据集筛选,选取tracking输出多个轨迹的事件
|
||||
|
||||
@author: ym
|
||||
"""
|
||||
import os
|
||||
import numpy as np
|
||||
|
||||
import sys
|
||||
sys.path.append(r"D:\DetectTracking")
|
||||
from tracking.utils.read_data import extract_data, read_tracking_output_realtime
|
||||
|
||||
|
||||
def get_multitraj_file(spath, pattern):
|
||||
multi_traj_events = []
|
||||
n = 0
|
||||
for evtname in os.listdir(spath):
|
||||
name, ext = os.path.splitext(evtname)
|
||||
eventpath = os.path.join(spath, evtname)
|
||||
|
||||
evt = name.split('_')
|
||||
condt = len(evt)>=2 and evt[-1].isdigit() and len(evt[-1])>=8
|
||||
if not condt: continue
|
||||
if not os.path.isdir(eventpath): continue
|
||||
|
||||
trackingboxes = []
|
||||
for dataname in os.listdir(eventpath):
|
||||
if os.path.splitext(dataname)[-1] in [".jpg", ".png"]:
|
||||
continue
|
||||
|
||||
datapath = os.path.join(eventpath, dataname)
|
||||
if not os.path.isfile(datapath): continue
|
||||
CamerType = dataname.split('_')[0]
|
||||
|
||||
if pattern=="realtime" and dataname.find("_tracking_output.data")>0:
|
||||
trackingboxes, trackingfeats, tracking_outboxes, tracking_outfeats = read_tracking_output_realtime(datapath)
|
||||
if pattern=="evtsplit" and dataname.find("_track.data")>0:
|
||||
bboxes, ffeats, trackerboxes, trackerfeats, trackingboxes, trackingfeats = extract_data(datapath)
|
||||
|
||||
if len(trackingboxes)>=2:
|
||||
multi_traj_events.append(evtname)
|
||||
n += 1
|
||||
print(f"{n}: {evtname}")
|
||||
break
|
||||
|
||||
|
||||
multi_traj_file = os.path.join(spath, "multi_traj_file.txt")
|
||||
with open(multi_traj_file, "w") as file:
|
||||
for item in multi_traj_events:
|
||||
file.write(item + "\n")
|
||||
|
||||
def main():
|
||||
spaths = [r"\\192.168.1.28\share\测试视频数据以及日志\各模块测试记录\比对测试\1212",
|
||||
r"\\192.168.1.28\share\测试视频数据以及日志\各模块测试记录\比对测试\1216",
|
||||
r"\\192.168.1.28\share\测试视频数据以及日志\各模块测试记录\比对测试\1218",
|
||||
r"\\192.168.1.28\share\测试视频数据以及日志\各模块测试记录\比对测试\202412"
|
||||
]
|
||||
|
||||
pattern = "evtsplit" # realtime # 全实时版、事件切分版数据读取方式
|
||||
for spath in spaths:
|
||||
get_multitraj_file(spath, pattern)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
Reference in New Issue
Block a user