在Python 3.8.2中运行人脸识别模块时,我得到以下OpenCV-Python错误:
cv2.error: OpenCV(4.2.0) /io/opencv/modules/imgproc/src/demosaicing.cpp:1721: error: (-215:Assertion failed) scn == 1 && (dcn == 3 || dcn == 4) in function 'demosaicing'
有没有人能解释一下这个错误的原因和解决方法?
代码如下:
known_faces=[]
known_names=[]
for name in os.listdir(KNOWN_FACES_DIR):
for filename in os.listdir(f"{KNOWN_FACES_DIR}/{name}"):
image=face_recognition.load_image_file(f"{KNOWN_FACES_DIR}/{name}/{filename}")
encoding=face_recognition.face_encodings(image)[0]
known_faces.append(encoding)
known_names.append(name)
print("processing unknown faces!")
for filename in os.listdir(UNKNOWN_FACES_DIR):
print(filename)
image=face_recognition.load_image_file(f"{UNKNOWN_FACES_DIR}/{filename}")
locations= face_recognition.face_locations(image,model=MODEL)
encodings=face_recognition.face_encodings(image,locations)
image=cv2.cvtColor(image,cv2.COLOR_BAYER_BG2BGR)
发布于 2020-05-02 10:54:51
我做了一些测试和搜索。我认为错误是由于我上传的图片格式不正确。
我在维基百科上找到了这个定义
去马赛克算法(也称为去马赛克、去马赛克或去层叠)算法是一种数字图像处理,用于从覆盖有滤色器阵列(CFA)的图像传感器输出的不完整颜色样本重建全彩色图像。它也称为CFA插值或颜色重建。
我试着修改代码,但没有用。然后,在看到定义后,认为这可能是图片中的错误输入。我认为这是我发现不正确的图片格式类型。
https://stackoverflow.com/questions/61538429
复制相似问题