python方法生成txt标签文件的实例代码


Posted in Python onMay 10, 2018

1、如果想要利用代码(不论是python、c++、亦或是matlab)实现生成标签文件,首先,也是灰常重要的一件事就是你的图片集一定要是有规律的命名。数字字母顺序排开。这一点非常重要,相关重命名方法请自行百度或请教大牛。

2、如图为博主的图片集。(注意命名规律)

博主只分为猫和鸟两类。

python方法生成txt标签文件的实例代码

3、看代码。

在caffe根目录下创建一个我们的工程目录my-caffe-project

创建并编辑create_db.py文件,使用如下指令:

vim create_db.py

然后,代码内容就是我们的重点了。注意相关变量和路径的修改。

# -*- coding: UTF-8 -*-
import os
import re

"""
函数说明:生成图片列表清单txt文件

Parameters:
 images_path - 图片存放目录
 txt_save_path - 图片列表清单txt文件的保存目录
Returns:
 无
Author:
 Jack Cui
Modify:
 2017-03-29
"""
def createFileList(images_path, txt_save_path):
 #打开图片列表清单txt文件
 fw = open(txt_save_path,"w")
 #查看图片目录下的文件,相当于shell指令ls
 images_name = os.listdir(images_path)
 #遍历所有文件名
 for eachname in images_name:
 #正则表达式这里可以根据情况进行更改,如果多类记得仿照下面定义相关变量
 #正则表达式规则:找以cat开头,紧跟0到49个数字,并以jpg结尾的图片文件
 pattern_cat = r'(^cat\d{0,49}.jpg$)'
 #正则表达式规则:找以bird开头,紧跟0到49个数字,以jpg结尾的图片文件
 pattern_bird = r'(^bird\d{0,49}.jpg$)'#更改变量名需要定义
 #正则表达式匹配
 cat_name = re.search(pattern_cat, eachname)
 bird_name = re.search(pattern_bird, eachname)
 #按照规则将内容写入txt文件中
 if cat_name != None:
  fw.write(cat_name.group(0) + ' 1\n')
 if bird_name != None:
  fw.write(bird_name.group(0) + ' 2\n')#如果分为多类,多加几个if便是。当然相关变量也要记得定义。
 #打印成功信息
 print "生成txt文件成功"
 #关闭fw
 fw.close()

#下面是相关变量定义的路径
if __name__ == '__main__':
 #caffe_root目录
 caffe_root = '/home/xn/caffe/'
 #my-caffe-project目录
 my_caffe_project = caffe_root + 'my-caffe-project/'
 #图片存放目录
 images_path = caffe_root + 'data/mydata/myimagenet/train/'
 #生成的图片列表清单txt文件名
 txt_name = 'train.txt'
 #生成的图片列表清单txt文件的保存目录
 txt_save_path = my_caffe_project + txt_name
 #生成txt文件
 createFileList(images_path, txt_save_path)

完成。如果想要生成测试标签文件类似。

以上这篇python方法生成txt标签文件的实例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python的Tornado框架中实现简单的在线代理的教程
May 02 Python
Python2.x版本中maketrans()方法的使用介绍
May 19 Python
Linux 发邮件磁盘空间监控(python)
Apr 23 Python
windows 10下安装搭建django1.10.3和Apache2.4的方法
Apr 05 Python
让Python更加充分的使用Sqlite3
Dec 11 Python
python语言中with as的用法使用详解
Feb 23 Python
详解python中的time和datetime的常用方法
Jul 08 Python
python3 写一个WAV音频文件播放器的代码
Sep 27 Python
利用python实现AR教程
Nov 20 Python
python 调用API接口 获取和解析 Json数据
Sep 28 Python
Pytorch中Softmax与LogSigmoid的对比分析
Jun 05 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 01 Python
Python处理菜单消息操作示例【基于win32ui模块】
May 09 #Python
Python创建普通菜单示例【基于win32ui模块】
May 09 #Python
Python使用Windows API创建窗口示例【基于win32gui模块】
May 09 #Python
Python基于win32ui模块创建弹出式菜单示例
May 09 #Python
numpy中的delete删除数组整行和整列的实例
May 09 #Python
java中两个byte数组实现合并的示例
May 09 #Python
Python 使用PIL numpy 实现拼接图片的示例
May 08 #Python
You might like
PHP面向对象教程之自定义类
2014/06/10 PHP
PHP 读取和编写 XML
2014/11/19 PHP
PHP中$this和$that指针使用实例
2015/01/06 PHP
php生成酷炫的四个字符验证码
2016/04/22 PHP
基于JQuery框架的AJAX实例代码
2009/11/03 Javascript
jQuery EasyUI API 中文文档 - ComboBox组合框
2011/10/07 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
2013/08/02 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
2015/03/13 Javascript
JS+CSS3实现超炫的散列画廊特效
2016/07/16 Javascript
微信小程序-消息提示框实例
2016/11/24 Javascript
jQuery插件版本冲突的处理方法分析
2017/01/16 Javascript
JS实现图片放大缩小的方法
2017/02/15 Javascript
原生JS实现的简单小钟表功能示例
2018/08/30 Javascript
Javascript删除数组里的某个元素
2019/02/28 Javascript
微信小程序实现的一键复制功能示例
2019/04/24 Javascript
vue项目中使用scss的方法步骤
2019/05/16 Javascript
react 中父组件与子组件双向绑定问题
2019/05/20 Javascript
vue中实现Monaco Editor自定义提示功能
2019/07/05 Javascript
浅谈bootstrap layer.open中end的使用方法
2019/09/12 Javascript
element el-table表格的二次封装实现(附表格高度自适应)
2021/01/19 Javascript
[00:26]TI7不朽珍藏III——冥界亚龙不朽展示
2017/07/15 DOTA
利用Python在一个文件的头部插入数据的实例
2018/05/02 Python
python 在某.py文件中调用其他.py内的函数的方法
2019/06/25 Python
Python Django基础二之URL路由系统
2019/07/18 Python
python实现kNN算法识别手写体数字的示例代码
2019/08/16 Python
Python3实现发送邮件和发送短信验证码功能
2020/01/07 Python
详解Python3中的 input() 函数
2020/03/18 Python
如何在Python对Excel进行读取
2020/06/04 Python
django跳转页面传参的实现
2020/09/17 Python
新西兰领先的内衣店:Bendon Lingerie新西兰
2018/07/11 全球购物
巴西独家产品和现场演示购物网站:Shoptime
2019/07/11 全球购物
介绍Ibatis的核心类
2013/11/18 面试题
资金主管岗位职责范本
2014/03/04 职场文书
社会稳定风险评估方案
2014/06/02 职场文书
销售经理工作检讨书
2015/02/19 职场文书
python 中[0]*2与0*2的区别说明
2021/05/10 Python