利用pyhton脚本生成csv文件
*开发环境为windows PyCharm
*使用的是pyhton脚本
*生成人脸和人脸对应的标签的csv文件
一:主要步骤
1、载入对应路径
2、提取每一张图片对应的位置与同一个人脸对应的标签
3、写入存储文件夹data.txt
二:代码
1 """------------------------------------------------------------------ 2 利用pyhton脚本生成csv文件 3 人脸模型训时需要读取人脸和人脸对应的标签,利用csv文件读取,以取代传统 4 的逐一的方式,直接在数据库读取效率很低。在训练之前生成csv文件,主要步骤: 5 1、载入对应路径 6 2、提取每一张图片对应的位置与同一个人脸对应的标签 7 3、写入存储文件夹data.txt 8 ---------------------------------------------------------------------""" 9 import tensorflow as tf 10 import os.path 11 """定义csv文件生成函数""" 12 def MakeLabel(): 13 face_path = "faces" # 人脸数据的路径 14 separator = ";" # 分隔符 15 file = open("data.txt", 'w') # 打开存储的文件 16 """filenames对应faces; dirnames对应s1; dirname对应1.pgm;其中faces/s1/1.pgm""" 17 for dirname, dirnames, filenames in os.walk(face_path): 18 for targetname in dirnames: 19 target_path = os.path.join(dirname, targetname) 20 for filename in os.listdir(target_path): 21 targetname2 = targetname[::-1] 22 targetname3 = targetname2[:-1] 23 targetname4 = targetname3[::-1] 24 25 label = int(targetname4) # 文件名字符串型转数字int型 26 path = "%s/%s" % (target_path, filename) 27 print("%s%s%d" % (path, separator, label)) 28 file.write(path) # 写入路径 29 file.write(separator) # 写入;号 30 file.write(str(label)) # 写入标签 31 file.write(" ") 32 label = label + 1 33 file.close() #关闭存储的文件 34 35 """启动函数""" 36 def main(argv=None): 37 MakeLabel() 38 if __name__ =='__main__': 39 tf.app.run()
三 : 生成结果