python生成人脸识别数据集,包括训练集与测试集,前提是通过形如下图的url下载的图片
通过下方代码生成训练集与测试集,形式为"图片地址 label 人脸坐标"
代码目前存在局限性,只能手动输入不同path路程,同时不同path标签也需要自己手动输入...,如有大量文件需要进行类似 *** 作,应该再在外面套个category这种,用个for category in categories这种套进去...具体咋弄等有大量文件夹时再搞搞吧......
import os def findd(): #f1 = open(r'C:Usersfr150DesktopuseuseA.J._Buckley.txt', 'r') path = r'F:testBellamy_Young_use4'#需要转为txt照片所在地 # 图片 f = open(r'F:txttest.txt', 'a')#需要写入的txt,'a'表示可追加 dirs = os.listdir(path) # 图片名字 # dirs = f1.readlines() for dir in dirs: with open(r'C:Usersfr150DesktopuseuseBellamy_Young.txt', 'r')as f1:#必须有with这个前提,才能循环进去 txts = f1.readlines() #n_txts = len(txts) for txt in txts: aa = txt.split(" ")[1]#按空格分割取txt中第一位 if dir in aa:#根据图片名称按行读取txt,如存在相应图片名称则执行下面 *** 作 bb = txt.split(" ")[2] + 't' +txt.split(" ")[3] + 't'+ txt.split(" ")[4] +'t'+txt.split(" ")[5]#用split取人脸坐标,t表示空格 #print(bb) cc= path + '/' + dir + 't'+'4' + 't'+bb+'n'#生成最后"图片地址 标签 人脸位置",'4'是标签,可以自己改 print(cc) f.writelines(cc)#写入需要的txt if __name__ == '__main__': findd()
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)