按比例從文件夾中取一定數(shù)量圖片
# -*- coding: utf-8 -*-
import os, random, shutil
def moveFile(fileDir):
pathDir = os.listdir(fileDir) # 取圖片的原始路徑
filenumber = len(pathDir)
rate = 0.75 # 自定義抽取圖片的比例
picknumber = int(filenumber * rate) # 按照rate比例從文件夾中取一定數(shù)量圖片
sample = random.sample(pathDir, picknumber) # 隨機選取picknumber數(shù)量的樣本圖片
print (sample)
for name in sample:
shutil.move(fileDir + name, tarDir + name)
return
if __name__ == '__main__':
fileDir = "/mnt/NIvsCG/datasets/prcg_images/" # 源圖片文件夾路徑
tarDir = '/mnt/NIvsCG/datasets/train/' # 移動到新的文件夾路徑
moveFile(fileDir)
隨機選取一定數(shù)量的樣本圖片
import os, random, shutil
data_base_dir = "/mnt/NIvsCG/temp/train/" # 源圖片文件夾路徑
tarDir = "/mnt/NIvsCG/random/train/" # 移動到新的文件夾路徑
for file in os.listdir(data_base_dir):
fileDir = data_base_dir + file + '/' # 取圖片的原始路徑
pathDir = os.listdir(fileDir)
filenumber = len(pathDir)
if filenumber > 30:
picknumber = 30 # 所取圖片數(shù)量
sample = random.sample(pathDir, picknumber) # 隨機選取picknumber數(shù)量的樣本圖片
print(sample)
for name in sample:
shutil.copy(fileDir + name, tarDir + name)
按比例從文件夾中取一定數(shù)量圖片,并在移動到新文件夾之前重命名選取的圖片
import os, random, shutil
def moveFile(fileDir):
pathDir = os.listdir(fileDir) # 取圖片的原始路徑
filenumber = len(pathDir)
rate = 0.75 # 自定義抽取圖片的比例
picknumber = int(1000 * rate) # 按照rate比例從文件夾中取一定數(shù)量圖片
sample = random.sample(pathDir, picknumber) # 隨機選取picknumber數(shù)量的樣本圖片
count = 1
for namein sample:
shutil.move(fileDir + name, tarDir + name)
os.rename(os.path.join(tarDir, name), os.path.join(tarDir, str(count) + ".jpg"))
count += 1
return
if __name__ == '__main__':
fileDir = "/mnt/NIvsCG/datasets/mobilephone_img/" # 源圖片文件夾路徑
tarDir = "/mnt/NIvsCG/datasets/train/" # 移動到新的文件夾路徑
moveFile(fileDir)