Как получить кодировку face_recognition из множества изображений в каталоге и сохранить их в файле CSV?
Вот код, который у меня есть, и он работает для отдельных изображений:
Загрузка изображений и применение кодировки
from face_recognition.face_recognition_cli import image_files_in_folder
Image1 = face_recognition.load_image_file("Folder/Image1.jpg")
Image_encoding1 = face_recognition.face_encodings(Image1)
Image2 = face_recognition.load_image_file("Folder/Image2.jpg")
Image_encoding2 = face_recognition.face_encodings(Image2)
Кодировки лица сохраняются в первом массиве, после column_stack мы должны изменить размер
Encodings_For_File = np.column_stack(([Image_encoding1[0]],
[Image_encoding2[0]]))
Encodings_For_File.resize((2, 128))
Конвертировать массив в pandas dataframe и записать в csv
Encodings_For_File_Panda = pd.DataFrame(Encodings_For_File)
Encodings_For_File_Panda.to_csv("Celebrity_Face_Encoding.csv")
Как зациклить изображения в "Папке" и извлечь кодировку в CSV-файл? Я должен сделать это со многими изображениями и не могу сделать это вручную. Я пробовал несколько подходов, но ни один из них не работает для меня. Cv2 можно использовать вместо load_image_file?
1 ответ
Попробуй это
Примечание: я предполагаю, что вам не нужно указывать путь к папке перед именем файла в вашей команде. Этот код покажет вам, как перебирать каталог, чтобы вывести список файлов и обработать их
import os
from face_recognition.face_recognition_cli import image_files_in_folder
my_dir = 'folder/path/' # Folder where all your image files reside. Ensure it ends with '/
encoding_for_file = [] # Create an empty list for saving encoded files
for i in os.listdir(my_dir): # Loop over the folder to list individual files
image = my_dir + i
image = face_recognition.load_image_file(image) # Run your load command
image_encoding = face_recognition.face_encodings(image) # Run your encoding command
encoding_for_file.append(image_encoding[0]) # Append the results to encoding_for_file list
encoding_for_file.resize((2, 128)) # Resize using your command
Затем вы можете конвертировать в панд и экспортировать в CSV. Дайте мне знать, как это происходит