# coding: utf-8
from PIL import Image
import os
import os.path
import numpy as np
import cv2
import glob
import pandas as pd
import xml.etree.ElementTree as ET
import time
start = time.time()
# 指明被遍历的文件夹
rootdir = r'E:/picture/water/waterDatasets/renameWater'
for parent, dirnames, filenames in os.walk(rootdir): # 遍历每一张图片
for filename in filenames:
# print('parent is :' + parent)
# print('filename is :' + filename)
currentPath = os.path.join(parent, filename)
print('the fulll name of the file is :' + currentPath)
img = Image.open(currentPath)
# print (img.format, img.size, img.mode)
# img.show()
path = r'E:/picture/water/waterDatasets/annotations/'
for xml_file in glob.glob(path + '/*.xml'):
# 返回解析树
tree = ET.parse(xml_file)
# 获取根节点
root = tree.getroot()
# print(root)
# 根据标签名查找root下的所有标签,并获取其值
# print(imgname)
# 对所有目标进行解析
for member in root.findall('object'):
xmlname = root.find('filename').text
#savefilename = member.find('name').text
if xmlname == filename:
pic_file_path = os.path.join(path, xmlname)
os.remove(pic_file_path)
end = time.time()
print("Execution Time:", end - start)
实现LabelImg标注的xml文件和文件夹下的图片匹配,删除漏标注的图像
最新推荐文章于 2023-05-22 06:30:00 发布