import os
import config
import shutil
for split in (config.TRAIN,config.VALID,config.TEST):
print('[INFO] processing {} split:'.format(split))
imagePaths=os.listdir(os.path.join(config.ORIG_DATA_PATH,split))
for ele in imagePaths:
if not ele.endswith('.jpg'):
imagePaths.remove(ele)
for imagePath in imagePaths:
label=config.CLASSES[int(imagePath.split('_')[0])]
dst=os.path.join(config.BASE_PATH,split,label)
if not os.path.exists(dst):
os.makedirs(dst)
#复制图片
shutil.copy2(os.path.join(config.ORIG_DATA_PATH,config.TRAIN,imagePath), os.path.join(dst,imagePath))
print('[INFO] All is done' )
这是卷积神经网络的训练集测试集验证集按类别进行划分,我觉得倒数第二行的代码中的config.TRAIN应该改为split,不知道对不对,请解答一下
输出倒数第二行的代码,看看和分析一下数据变化
你的目的是进行,训练集、测试集、验证集的划分,接下来解析下关键代码:
shutil.copy2(os.path.join(config.ORIG_DATA_PATH,config.TRAIN,imagePath), os.path.join(dst,imagePath))
第一个参数是source,代表原图片
第二个参数是destination,表示要把原图片复制到哪个位置
看你这段代码的意思,其实就是把 config.TRAIN 下面的图片,划分成训练集、测试集、验证集,并保存在三个文件夹中(config.TRAIN,config.VALID,config.TEST)
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y