代码如下:

import os
import random
import argparseparser = argparse.ArgumentParser()
# 1.xml文件的文件夹路径,根据自己的数据进行修改。 xml一般存放在Annotations下
parser.add_argument('--xml_path', default='D:/数据集/dataset/SeaShips(7000)/Annotations', type=str, help='input xml label path')
# 2.保存 数据集划分生成的txt文件 的文件夹路径。
parser.add_argument('--txt_path', default='D:/数据集/dataset/SeaShips(7000)/ImageSets/Main', type=str, help='output txt label path')
opt = parser.parse_args()trainval_percent = 1  # 3.训练+验证集一共所占的比例,剩下的就是测试集了。
train_percent = 0.9     # 4.训练集在训练集和验证集总集合中占的比例
xmlfilepath = opt.xml_path
txtsavepath = opt.txt_path
total_xml = os.listdir(xmlfilepath)
if not os.path.exists(txtsavepath):os.makedirs(txtsavepath)num = len(total_xml)
list_index = range(num)
tv = int(num * trainval_percent)
tr = int(tv * train_percent)
trainval = random.sample(list_index, tv)
train = random.sample(trainval, tr)file_trainval = open(txtsavepath + '/trainval.txt', 'w')
file_test = open(txtsavepath + '/test.txt', 'w')
file_train = open(txtsavepath + '/train.txt', 'w')
file_val = open(txtsavepath + '/val.txt', 'w')for i in list_index:name = total_xml[i][:-4] + '\n' # 5.-4可以用来去掉文件后缀名if i in trainval:file_trainval.write(name)if i in train:file_train.write(name)else:file_val.write(name)else:file_test.write(name)file_trainval.close()
file_train.close()
file_val.close()
file_test.close()

按占比划分文件,并将文件名写入txt文件(train、valid、trainvalid、test)相关推荐

  1. java实现读取txt文件和将内容写入txt文件

    1.java读取txt和写入txt文件 package com.ztesoft.TestClusterHHHT;import java.io.BufferedReader; import java.i ...

  2. 按占比划分文件,并将文件名写入txt文件

    全部文件: 生成的文件: 注:文件名可自行在代码中决定加不加 代码: import os import random import argparseparser = argparse.Argument ...

  3. 划分数据集代码(按照4:1的比例)以及根据各自文件名写入txt文件

    会将图片分到两个文件夹中: #include <opencv2/opencv.hpp> #include "opencv2/features2d.hpp" #inclu ...

  4. python 写文件 换行_python中写入txt文件需要换行,以及\r 和\n

    原博文 2019-09-25 16:16 − 在Python中,用open()函数打开一个txt文件,写入一行数据之后需要一个换行 如果直接用 f.write('\n')只会在后面打印一个字符串'\n ...

  5. java追加txt文件_java怎么追加写入txt文件

    java中,对文件进行追加内容操作的三种方法! import java.io.BufferedWriter;import java.io.FileOutputStream;import java.io ...

  6. java 导入导出txt文件_Java读取和写入txt文件

    1 问题描述 对于java的读取和写入txt一直心存疑惑,随着知识的积累,又重新进行学习,对java的文件读写理解更加深刻,在这里将自己的小小经验总结分享给大家.下面是大家了解java流的一个基本框架 ...

  7. java 追加写入txt文件_ava如何追加写入txt文件

    (二)方法1 public void method1() { FileWriter fw = null; try { //如果文件存在,则追加内容:如果文件不存在,则创建文件 File f=new F ...

  8. matalb读取txt文件以及将数据写入txt文件

    matlab读取txt文件 三个文件a.txt,b.txt,d.txt 1.load load只能读取ascii文件,如果文件中有不同数据类型将出错. 2.importdata 3.textread ...

  9. android 读写文件 简书,Android写入txt文件并读取

    直接上代码~ 注意权限 1.写入数据 private void writeData() { String filePath = "/sdcard/Gyt/"; String fil ...

最新文章

  1. 32位微型计算机quot;中的32指的是,《计算机应用基础作业一).doc
  2. spring中Validation设计与实现
  3. java http 上传_Java使用HttpURLConnection上传文件
  4. standford lessons
  5. matlab debug出现k,MATLAB下的程序调试
  6. P5707 【深基2.例12】上学迟到(python3实现)
  7. c语言年历表程序设计,c语言程序设计年历显示-20210413153548.docx-原创力文档
  8. 【人脸识别】VGGFace--基于VGGNet的人脸识别模型
  9. 异步发电机 matlab仿真,基于MATLABSIMULINK异步电机矢量控制系统的仿真.pdf
  10. macOS Sierra 10.12.6 odoo 10.0 开发环境配置
  11. Ubuntu固定ip和dns配置和查看
  12. 网易云音乐推出“云村乐评路灯”开学季策划 再造刷屏事件营销
  13. 用Java实现N*N的标准数独及对角线数独解题
  14. 计算机用户删除文件找回,文件删除了怎么找回来_文件删掉了怎么恢复-win7之家...
  15. 转录组助力HIV-1病毒感染机制研究新成果
  16. iperf测试交换机流量
  17. PUK 码为8位数字
  18. 可视化1300个故事 揭秘6种情节套路
  19. 迅雷下载显示服务器响应超时?
  20. EDP/DP转LVDS转接板,支持多种分辨率,最大分辨率支持1920*1200 1080P60HZ,可搭配3288 3399 3588 TV板板

热门文章

  1. U盘启动,使用winpe安装win7的方法
  2. 金仓数据库KingbaseES数据库中存储过程和函数的区别
  3. 果园机器人反思稿_语文《果园机器人》教学反思
  4. 鲁班二期 java架构师_Java架构师鲁班二期学习笔记
  5. “乙方”没有·真·产品经理
  6. pygame模块参数汇总
  7. 72.日常问题整理[2023/04/06]sql查询年度,月度,上个月数据
  8. 归并排序 | 递归 非递归 |C语言
  9. 基于时延的毫米波雷达回波模拟(多chirp组合) (三)
  10. 关于densenet的改进:condensenet、VoVNet