• 图像处理项目——生成csv文件提高读取效率


    利用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()

    三 : 生成结果

     
    萍水相逢逢萍水,浮萍之水水浮萍!
  • 相关阅读:
    获取<input type="checkbox" >控件的checked值
    网站IIS部署及调试
    winform窗体全屏实现
    ComBox控件的使用
    在vs2005项目中,将.sln文件和.suo文件放在一个独立的文件夹内
    .NET面试题整理
    《url重写——更友好的网站url设计》
    char、varchar、nvarchar三者间的区别
    操作符"??"的用法
    Maven 学习笔记(三)
  • 原文地址:https://www.cnblogs.com/AIBigTruth/p/10535093.html
Copyright © 2020-2023  润新知