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