【发布时间】:2021-10-20 15:01:59
【问题描述】:
我有一个对象检测算法的数据集,其中包含图片 (.jpg) 和包含边界框的相应 .xml 文件。
我想编写一个脚本,将数据集随机拆分为训练集和测试集,这意味着我必须确保将 jpg 及其对应的 XML 分配到同一目录。
我应该如何编辑以下代码来实现这一点?
此外,这是执行此操作的“最佳”方式,还是在 xml 到 csv 转换或生成 csv 到 tfrecords 转换之后拆分数据集更好?
import shutil, os, glob, random
# List all files in a directory using os.listdir
basepath = '/home/createview/Vegard/createview/lice_detection_v2/workspace/images/Synced_dataset'
filenames = []
for entry in os.listdir(basepath):
if os.path.isfile(os.path.join(basepath, entry)):
#print(entry)
filenames.append(entry)
filenames.sort() # make sure that the filenames have a fixed order before shuffling
random.seed(230)
random.shuffle(filenames) # shuffles the ordering of filenames (deterministic given the chosen seed)
split = int(0.8 * len(filenames))
train_filenames = filenames[:split]
test_filenames = filenames[split:]
【问题讨论】:
标签: python tensorflow