import cv2
import numpy as np

images = []									# 空串列，儲存照片
labels = []									# 空串列，儲存人臉的標籤序號

for index in range(100):
    filename = 'images/h0/{:03d}.pgm'.format(index)
    print('read ' + filename)
    img = cv2.imread(filename, cv2.COLOR_BGR2GRAY)
    images.append(img)
    labels.append(0)							# 第一張人臉的標籤為 0

print('training...')
model = cv2.face.LBPHFaceRecognizer_create()			# 建立模型，使用 LBPH 演算法
model.train(np.asarray(images), np.asarray(labels))		# train() 只能接收 numpy 格式的陣列，asarry() 方法將輸入的物件轉成陣列
model.save('faces.data')						# 儲存訓練好的辨識檔
print('training done')