今天在用face_recognition进行人脸识别代码执行时遇到一个报错信息:IndexError: list index out of range。
这个错误信息是在执行代码这条语句中出现的:
image_encoding = face_recognition.face_encodings(image)[0]
因为返回的是image图片中数组0位置的人脸编码,但忽略了一个问题:在图片中没有识别到人脸时,使用face_recognition.face_encodings()进行图片面部编码,获取的数组是空的,所以在获得第一个索引位置数据时就会报错。
因此,在进行下一步时应该对是否识别到人脸,成功获得图片面部编码数据进行判断,判断语句如下:
image_encoding = face_recognition.face_encodings(image