利用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("\n") 32 label = label + 1 33 file.close() #關閉存儲的文件 34 35 """啟動函數""" 36 def main(argv=None): 37 MakeLabel() 38 if __name__ =='__main__': 39 tf.app.run()
三 : 生成結果