问题描述
在某些使用face_alignment的工程里可能会出现以下错误:
File "xxx/detectors.py", in line 22, in __init__
self.model = face_alignment.FaceAlignment(face_alignment.LandmarksType._2D, flip_input=False, device=device)
AttributeError: _2D
原因分析:
运行python
import face_alignment
print(dir(face_alignment.LandmarksType))
发现只有’THREE_D’, ‘TWO_D’, ‘TW0_HALF_D’。
说明这个类里压根就没有_2D这个属性,应该是版本没对上。
解决方案:
要么把这些python包的版本装对。
要么依据报错信息直接改那个py文件,比如我的是detectors.py的第22行,我把:
face_alignment.FaceAlignment(face_alignment.LandmarksType._2D, flip_input=False, device=device)
直接改成:
face_alignment.FaceAlignment(face_alignment.LandmarksType.TWO_D, flip_input=False, device=device)
就行了!
_3D的报错同理。