当前位置: 首页 > news >正文

小程序app分销网站建设兰州网站外包

小程序app分销网站建设,兰州网站外包,wordpress首页调用页面文章的内容,南京页面网站制作数据集文件夹拆分 前言代码说明导入模块设置文件夹路径创建目标文件夹读取和准备图片列表打乱图片顺序计算分配比例定义和使用移动文件函数最后打印分配结果 总结 前言 在学习和训练涉及YOLO等神经网络的过程中#xff0c;我们通常需要对收集到的大型数据集进行合理的拆分我们通常需要对收集到的大型数据集进行合理的拆分标准的做法是将其分为训练集train、测试集test和验证集validation。手动对大规模的图片集进行分类不仅耗时而且容易出错因此我编写了一个Python脚本旨在自动化这一繁琐的过程。该脚本能够将指定文件夹中的图片按照8:1:1的比例自动分配到train、test和validation三个文件夹中使用的是Python的os和shutil库来处理文件操作。 PS. 如果觉得该笔记对您有用的话可以点个小小的赞吗或者点赞收藏关注一键三连ヾ(◍’౪◍) ~ 谢谢 代码 import os import shutil import random# 设置源文件夹和目标文件夹路径 source_folder ./source train_folder ./train test_folder ./test validation_folder ./validation# 如果目标文件夹不存在则创建它们 os.makedirs(train_folder, exist_okTrue) os.makedirs(test_folder, exist_okTrue) os.makedirs(validation_folder, exist_okTrue)# 读取所有图片文件 images [f for f in os.listdir(source_folder) if f.endswith((.png, .jpg, .jpeg, .gif, .bmp))]# 打乱文件顺序以随机分配 random.shuffle(images)# 计算分配比例 total_count len(images) train_count int(total_count * 0.8) test_count int(total_count * 0.1) validation_count total_count - train_count - test_count # 保证总数正确# 分配文件到train, test, validation文件夹 def move_files(files, destination):for f in files:shutil.move(os.path.join(source_folder, f), os.path.join(destination, f))move_files(images[:train_count], train_folder) move_files(images[train_count:train_count test_count], test_folder) move_files(images[train_count test_count:], validation_folder)print(fFiles distributed: {train_count} to train, {test_count} to test, {validation_count} to validation.) 说明 这个Python脚本的主要目的是将一个包含大量图片的源文件夹(source_folder)中的图片按照8:1:1的比例随机分配到三个不同的文件夹(train_folder, test_folder, validation_folder)中用于机器学习或深度学习模型的训练、测试和验证。下面是对脚本中每个部分的详细解释 导入模块 import os import shutil import randomos: 用于处理文件和目录如读取文件列表、创建目录等。shutil: 用于执行文件操作如复制和移动文件。random: 用于生成随机数这里用于打乱文件列表确保分配的随机性。 设置文件夹路径 source_folder ./source train_folder ./train test_folder ./test validation_folder ./validation这些变量定义了源文件夹和目标文件夹的路径。这些路径可以根据实际情况进行调整。 创建目标文件夹 os.makedirs(train_folder, exist_okTrue) os.makedirs(test_folder, exist_okTrue) os.makedirs(validation_folder, exist_okTrue)这些语句确保目标文件夹存在。如果目标文件夹不存在os.makedirs 将创建它们。参数exist_okTrue表示如果文件夹已存在不会抛出错误。 读取和准备图片列表 images [f for f in os.listdir(source_folder) if f.endswith((.png, .jpg, .jpeg, .gif, .bmp))]这行代码读取source_folder中所有的图片文件并将它们存储在列表images中。列表推导用于过滤出只包含图片的文件基于文件扩展名进行筛选。os.listdir(source_folder) 这个函数是用来列出指定目录下的所有文件和目录名的。 打乱图片顺序 random.shuffle(images)使用random.shuffle函数随机打乱images列表中元素的顺序这是为了确保后续分配到训练、测试和验证集的随机性。 计算分配比例 total_count len(images) train_count int(total_count * 0.8) test_count int(total_count * 0.1) validation_count total_count - train_count - test_count根据总图片数计算出应分配到训练集、测试集和验证集的图片数量。按照8:1:1的比例训练集占80%测试和验证集各占10%。 定义和使用移动文件函数 def move_files(files, destination):for f in files:shutil.move(os.path.join(source_folder, f), os.path.join(destination, f))move_files(images[:train_count], train_folder) move_files(images[train_count:train_count test_count], test_folder) move_files(images[train_count test_count:], validation_folder)move_files 函数接受文件列表和目标文件夹作为参数然后逐个将文件从源文件夹移动到指定的目标文件夹。这里使用切片操作分割images列表根据之前计算的数量将文件分配到相应的文件夹。 最后打印分配结果 print(fFiles distributed: {train_count} to train, {test_count} to test, {validation_count} to validation.)在所有操作完成后打印出每个集合中文件的数量以确认文件已正确分配。 总结 此脚本极大地简化了将大规模图片数据集分配到训练集、测试集和验证集的过程不仅提高了效率还避免了手动分配时可能出现的错误。这对于快速准备机器学习和深度学习模型的训练数据是非常有用的。
http://www.pierceye.com/news/259471/

相关文章:

  • 东莞网站制作南城电商网站模板
  • 特色的佛山网站建设深圳勘察设计协会
  • 网站关键词重要性如皋网站制作
  • 河池市网站建设成都网站开发工资
  • 网站建设服务亿企网络十大现货交易平台排名
  • 邯郸大网站英文wordpress转中文乱码
  • 卖汽车的网站怎么做网站建设需要多少钱知乎
  • 苏州模板建站平台自助快速建站
  • 域名查询网ip郑州百度网站优化
  • 泉州网站建设 乐本园东昌府网站制作
  • 电子产品配件采购网站阿里云 虚拟主机 wordpress
  • 网站的电子手册用什么做的百度云搜索引擎官网
  • 网站代码隐蔽代码jsp网站开发pdf
  • 厚街手机网站制作网站开发年终总结
  • 泉州网站建设技术外包网站建设的具体奖罚措施
  • 汕头企业网站推广技巧南宁关键词网站排名
  • 做我的世界背景图的网站阿里云服务器做网站外网访问慢
  • 云南百度智能建站登录wordpress数据库吗
  • 万网买好域名后如何开通网站网站历史记录怎么恢复
  • 游戏租号网站开发网页设计的技术有哪些
  • 工信部网站备案文件合肥网站制作建设
  • 网站架设标准网站域名注册费用
  • 东莞网站制作功能十堰微网站建设价格
  • google关键词分析工具网站建设seo 视频教程
  • 泸州市规划建设局网站网站建设及维护包括范围
  • 网站设计培训成都哪个网站开发软件
  • 四川炜航建筑公司网站新郑网络推广外包
  • 网站建设名头网站项目建设方案
  • 可以用asp做哪些网站简历模板大学生免费
  • 公司 宜宾网站建设头条小程序