属性错误在 /app/ 'numpy.ndarray'对象没有属性'read'



我正在用django和face_recognition api制作一个用于人脸识别的wep应用程序,我不知道如何解决这个错误

from django.http import HttpResponse
from django.shortcuts import redirect, render
from .models import *
import face_recognition
import cv2
import urllib.request
import numpy as np
import dlib
def Home(request):
print(f'request method is {request.method}')
if(request.method=='GET'):
return render(request, "app.html")
elif(request.method=='POST'):
print(f'printing req body {request.POST["imageURL"]}')
imageURL = urllib.request.urlopen(request.POST["imageURL"])
imageURL = face_recognition.load_image_file(imageURL)
image = face_recognition.load_image_file(imageURL)
image = cv2.cvtColor(image,cv2.COLOR_BGR2RGB)
imgLoc = face_recognition.face_locations(image);
print(f'Image imagLoc {imgLoc}')
cv2.imshow(image)
cv2.waitKey(3000)
return redirect('/app/')

这是我第一次在stackoverflow上提问,很抱歉有任何错误。

你的问题在这里:

imageURL = urllib.request.urlopen(request.POST["imageURL"])
imageURL = face_recognition.load_image_file(imageURL)
image = face_recognition.load_image_file(imageURL)

首先

imageURL = face_recognition.load_image_file(imageURL)

现在imageURL具有numpy.ndarray类型。

image = face_recognition.load_image_file(imageURL)

在这里你试图加载图像再次传递numpy.ndarray作为一个参数,而不是传递图像文件路径,即字符串。我不明白你为什么要加载这个图像两次。

最新更新