import os def parse_labels(file_path): categories = {} with open(file_path, 'r') as file: for line in file: parts = line.strip().split() file_path = parts[0] category = int(float(parts[-1])) if category not in categories: categories[category] = [] categories[category].append(file_path) return categories def load_watermark_info(watermark_txt, image_path): """ 从标签文件中加载指定图片二维码嵌入坐标及所属类别 :param watermark_txt: 标签文件 :param image_path: 图片路径 :return: [x1, y1, x2, y2, cls] """ with open(watermark_txt, 'r') as f: for line in f.readlines(): parts = line.strip().split() filename = parts[0] filename = os.path.basename(filename) if filename == os.path.basename(image_path): x_center, y_center, w, h = map(float, parts[1:5]) cls = int(float(parts[5])) # 转换类别为整数 return [x_center, y_center, w, h, cls] return []