Код: Выделить всё
def train_classifier(self):
data_dir = "Photo_data"
path = [os.path.join(data_dir, file) for file in os.listdir(data_dir)]
faces = []
ids = []
for image in path:
img = Image.open(image).convert('L') #Gray scale image
image_np = np.array(img, 'uint8')
id = int(os.path.split(image)[1].split('.')[1])
faces.append(image_np)
ids.append(id)
cv2.imshow("Training", image_np)
cv2.waitKey(1) == 13
ids = np.array(ids)
# Train the classifier and save
clf = cv2.face.LBPHFaceRecognizer_create()
clf.train(faces, ids)
clf.write("classifier.xml")
cv2.destroyAllWindows()
messagebox.showinfo("Result", "Training Photo sample Completed!!")
cv2.error: OpenCV(4.9.0) /io/opencv_contrib/modules/face/src/lbph_faces.cpp:362 : ошибка: (-210:Неподдерживаемый формат или комбинация форматов) Были предоставлены пустые данные обучения. Для изучения модели вам понадобится более одного образца. в функции "train"
Попробовал удалить opencv-python, затем установил opencv-contrib-python с помощью pip
Подробнее здесь: https://stackoverflow.com/questions/784 ... rmat-error