本文主要用于记录从xml中提取相应的文本,并利用相对坐标进行截图。
import cv2
import re
# xml文件路径
xml_path = './b2635430.xml'
# 定义相应的pattern
name_pattern = '<name>[\S]*?</name>'
xmin_pattern = '<xmin>[\S]*?</xmin>'
xmax_pattern = '<xmax>[\S]*?</xmax>'
ymin_pattern = '<ymin>[\S]*?</ymin>'
ymax_pattern = '<ymax>[\S]*?</ymax>'
# 空列表用于收集信息
res_name = []
res_box_xmin = []
res_box_xmax = []
res_box_ymin = []
res_box_ymax = []
# 进行re.findall操作
for line in open(xml_path):
if len(re.findall(name_pattern, line)) != 0:
res_name.append(re.findall(name_pattern, line)[0][6:-7])
if len(re.findall(xmin_pattern, line)) != 0:
res_box_xmin.append(int(re.findall(xmin_pattern, line)[0][6:-7]))
if len(re.findall(xmax_pattern, line)) != 0:
res_box_xmax.append(int(re.findall(xmax_pattern, line)[0][6:-7]))
if len(re