本文共 1867 字,大约阅读时间需要 6 分钟。
def genConfig(seq_path, set_type): path, seqname = os.path.split(seq_path) img_list = sorted([seq_path + '/img/' + p for p in os.listdir(seq_path + '/img') if os.path.splitext(p)[1] == '.jpg']) if seqname == 'Jogging_1' or seqname == 'Skating2_1': gt = np.loadtxt(seq_path + '/groundtruth_rect.1.txt') elif seqname == 'Jogging_2' or seqname == 'Skating2_2': gt = np.loadtxt(seq_path + '/groundtruth_rect.2.txt') elif seqname == 'Human4': gt = np.loadtxt(seq_path + '/groundtruth_rect.2.txt', delimiter=',') else: gt = np.loadtxt(seq_path + '/groundtruth_rect.txt', delimiter=',') if seqname == 'David': img_list = img_list[299:] if seqname == 'Football1': img_list = img_list[0:74] if seqname == 'Freeman3': img_list = img_list[0:460] if seqname == 'Freeman4': img_list = img_list[0:283] if seqname == 'Diving': img_list = img_list[0:215] if seqname == 'Tiger1': img_list = img_list[5:] if gt.shape[1] == 8: x_min = np.min(gt[:, [0, 2, 4, 6]], axis=1)[:, None] y_min = np.min(gt[:, [1, 3, 5, 7]], axis=1)[:, None] x_max = np.max(gt[:, [0, 2, 4, 6]], axis=1)[:, None] y_max = np.max(gt[:, [1, 3, 5, 7]], axis=1)[:, None] gt = np.concatenate((x_min, y_min, x_max - x_min, y_max - y_min), axis=1) return img_list, gt
以下是关于代码的主要描述:
函数定义与参数:
genConfig
接受两个参数:seq_path
(序列路径)和set_type
(数据类型)。图像路径处理:
os.path.split(seq_path)
分离文件路径和文件名。seq_path + '/img/'
中获取所有.jpg
图像文件,并按名称排序生成图像列表img_list
。ground truth数据处理:
seqname
选择不同的ground truth文件。Jogging_1
、Skating2_1
等),加载相应的ground truth文件。图像子集筛选:
David
设定从299th图像开始,Football1
筛选0-74th图像等。ground truth矩阵转换:
np.concatenate
合并最小值和最大值矩阵,构建最终ground truth矩阵。返回值:
img_list
和ground truth矩阵gt
。转载地址:http://cpnkk.baihongyu.com/