ValueError: invalid literal for int() with base 10: 'H'
这个问题怎么解决呢?
ValueError: invalid literal for int() with base 10: 'H'
这个问题怎么解决呢?
"""
"""
import os
import cv2
import numpy as np #数据计较
from PIL import Image #图片处理
def getImageAndLabels(path):
#图片和id的列表
facdeSamples = []
ids = []
#根据路径获取所有图像
print(os.listdir(path))
imagePaths = []
for f in os.listdir(path):
imagePaths.append(os.path.join(path,f))
print(imagePaths)
#检测人脸模型
face_detect = cv2.CascadeClassifier("D:/acada/Lib/site-packages/cv2/data/haarcascade_frontalface_default.xml")
#遍历所有的图片
for imagePath in imagePaths:
#打开图片
PIL_image = Image.open(imagePath).convert('L')
#将图片转化成数组
img_numpy = np.array(PIL_image,'uint8')
#用人脸模型检测图片
faces = face_detect.detectMultiScale(img_numpy)
#获取每张图片的id
id = int(os.path.split(imagePath)[1].split('.')[0])
print(os.path.split(imagePath))
#图片的路径
path = './data/hzj'
#获取图像的数组和10标签数组,脚文件名
faces,ids = getImageAndLabels(path)