Я взял кучу изображений, преобразовал их в серый, затем сохранил их в img_data_list, затем я преобразовал их в массивный массив, все работает нормально, пока теперь не будет часть кода, которая работает
import cv2
import os
import numpy as np
people = ['s1', 's2']
num_classes = 2
img_data_list = []
labels = []
valid_images = [".jpg",".gif",".png"]
for index, person in enumerate(people):
print(index)
dir_path = 'I:\\project_face_detection\\face_detetion\\training_data\\' + person
for img_path in os.listdir(dir_path):
name, ext = os.path.splitext(img_path)
if ext.lower() not in valid_images:
continue
img_data = cv2.imread(dir_path + '\\' + img_path)
# convert image to gray
img_data=cv2.cvtColor(img_data, cv2.COLOR_BGR2GRAY)
img_data_list.append(img_data)
labels.append(index)
img_data = np.array(img_data_list)
, но когда я пытаюсьчтобы преобразовать массив в тип данных float32, я получаю ValueError
img_data = img_data.astype('float32')
вот ошибка
ValueError: setting an array element with a sequence.
вот как хранятся мои изображения
- training_data
- s1
- 0.jpg
- 1.jpg
- s2
- 0.jpg
- ......
Если выребята, выручите меня любым способом, я был бы благодарен за внимание :).