問題の説明:
トレーニングセット(0.1を占める)の写真の2つのコピーをランダムに移動して、検証セットとテストセットを形成します
完全なコード
import shutil
import random
import os
'''
获取所有图片的路径;
移动图片的数目
获取随机移动图片的名称列表
移动图片
'''
# shutil.move(train_path,verify_path)
# random.sample()
def move_file(file_dir, dst_dir):
path_dir = os.listdir(file_dir) # 源图像路径
file_num = len(path_dir)
rate = 0.1 # 移走图片的比率
# move_num=int(file_num*rate)
move_num = 200
sample = random.sample(path_dir, move_num) # 随机移动的图片名称
for name in sample:
shutil.move(file_dir + name, dst_dir + name)
return
if __name__ == '__main__':
# 注意最后有一个斜杠!!!
train_path = r'G:/00_deeplearning/机器学习/01_code/data/分纤箱外景照/train_image/' # 原图文件
aim_path = r'G:/00_deeplearning/机器学习/01_code/data/分纤箱外景照/test_image/' # 目标文件夹
move_file(train_path, aim_path)
問題解決のアイデア
- すべての画像パスリストを取得
現時点では、リストは抽出される各画像の名前であり、完全なパスではありません
ストレージイメージパス:
画像パスリスト
2.移動する必要のある画像の数を設定します
3.ランダムな動画の名前のリストを取得します
。4。移動
注:パスの終わり