# -*- coding: utf-8 -*-
import os.path
import os
import cv2
import numpy as np
count = 0
#将images文件夹下所有子文件夹里面的图片转移到同一个文件夹下imgs
dir="D:/pythoncode/WIDER_train/images" #存放所有子文件夹的文件
save_dir = "D:/pythoncode/WIDER_train/imgs" #将子文件夹里面的图像转移到此文件夹里面
f1 = open('D:/pythoncode/WIDER_train/widerface_train.txt', 'w') #将train.txt文本内容重命名,并生成新的文本widerface_train.txt
#读train.txt文本内容,一行一行的读。
with open(r'D:/pythoncode/WIDER_train/images/train.txt', 'r') as lines:
#循环
for line in lines:
#每行以空格切分
name = line.split(' ')
#取每行的第一个,以空格作为分割
info = name[0]
dir_img = dir + '/' + info
#根据路径读入图片
img = cv2.imread(dir_img)
#cv2.imshow("img", img)
#cv2.waitKey(0)
#以/作为分隔符
save_img_name = info.split('/')[1]
save_dir_img = save_dir + '/' + save_img_name
#写入,第一个参数是要保存的文件名,第二个参数是要保存的图像。
cv2.imwrite(save_dir_img, img)
f1_file = save_img_name + ' face ' + name[2] + ' ' + name[3] + ' ' + name[4] + ' ' + name[5]
#将新的名字写入f1路径文本下
f1.write(f1_file)
#写入一行之后,换行。
f1.write('\n')
count = count + 1
print count
#关闭这个文件
f1.close()