随机采样部分数据进行训练

#!/usr/bin/env python 
# -*- coding:utf-8 -*-
import os
import random
import shutil
 
def movefile(filedir, label_dir, img_tardir, label_tardir):
    pathdir=os.listdir(filedir) # 取數據集的原始路徑
    
    # 方法一:按照一定比例进行抽取
    # filenumber=len(pathdir)
    # rate=0.7 #自定義抽取數據集的比例
    # picknumber=int(filenumber*rate) # 按照rate比例從數據集中取一定數量文件
    
    # 方法二:直接规定抽取数量
    picknumber = 4200
    samples=random.sample(pathdir, picknumber) # 隨機選取picknumber數量的文件
 
    count = 0  #計數變量
    for sample in samples:  # 當前目錄下選取的數據
        # print('sample:',sample)
        name = os.path.splitext(sample)[0]
        label_name = name + ".txt"
        shutil.copy(filedir + sample, img_tardir + sample)
        shutil.copy(label_dir + label_name, label_tardir + label_name)
        count+=1
        #if(count/0.1>filenumber):#移動的圖片已經超過縂數據集的10%,跳出
            #break
    print('count: ',count)
    return
 
if __name__ == "__main__":
    
    img_dir ="/datasets/train/images/"          # 源數據集文件夾路徑
    label_dir ="/datasets/train/label_yolo/"   # 源數據集文件夾路徑, P2805_
    img_tardir = "/datasets/images_sample/"     # 移動到新的文件夾路徑
    label_tardir = "/datasets/train/label_yolo_sample/"  

    
    movefile(img_dir, label_dir, img_tardir, label_tardir)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值