python - 尝试使用 kairos 上传文件时出错

标签 python image opencv request python-requests

我正在使用 kairos api 进行人脸识别。我正在尝试注册图像。documentation这里说它也接受 Base64 编码照片。所以我使用 Base 64 对图像进行编码,但出现以下错误

{"Errors":[{"ErrCode":5000,"Message":"an invalid image was sent must be jpg or p
ng format"}]}

我使用了以下Python代码来发送请求

import cv2
import requests
import base64
import json

image=cv2.imread('Face-images/Subject 9.jpg')
encoded_string =base64.b64encode(image)
payload2= {"image":encoded_string ,"subject_id":"Abhishek","gallery_name":"MyGallery"}
headers={'Content-Type':'application/json','app_id':'app_id','app_key':'app_key'}
r = requests.post('https://api.kairos.com/enroll',headers=headers,data=json.dumps(payload2),verify=False)
print  r.text   

如有任何帮助,我们将不胜感激

最佳答案

不要对您的照片进行编码。也许他们接受它,但它更难通过。检查此解决方案:

import requests

files = {"image": (filename,open(location+'/'+filename,"rb"))}
payload= {"subject_id":"Abhishek",
          "gallery_name":"MyGallery"}
headers={'Content-Type':'application/json',
         'app_id':'app_id',
         'app_key':'app_key'}
response = requests.post('https://api.kairos.com/enroll',headers=headers,data=payload,files=files,verify=False)
print response.text 

关于python - 尝试使用 kairos 上传文件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43175107/

相关文章:

python - 如何使用括号在换行符中打印列表元素?

c++ - 没有lmdb的Caffe+Opencv

javascript - 如何在 django 模板中使用 Hogan

python - 发现字典中的最大值

python - 405 “Method POST is not allowed” 在 Django REST 框架中

php - Laravel 5.1 多个图像 move() 问题

python - Matplotlib imshow 缩放功能?

java - Java 中的文档呈现

c++ - OpenCV:寻找 CPU 密集度较低的帧捕获+调整大小并进入缓冲方式:如何优化我的代码?

c++ - 使用 OpenCV 3.0 训练 SVM 并保存