我对Emotion API中的输入有疑问。我想实时使用它,所以目的是每5秒发送一个二进制数组(我的图像数据)。
我的问题是,是否可以直接发送我的二进制数组,或者我必须在特定文件中创建并保存我的磁盘中的图像,如PNG,JPEG,...然后将其发送到Microsoft API?
如果我们可以发送除JPEG,PNG之外的其他内容,...您是否知道如何在Python 2.7中执行此操作? 标题['内容类型'] =' application / json'要么 标题['内容类型'] =' application / octet-stream'
感谢您的帮助, 卡米尔
答案 0 :(得分:0)
对于Python,你需要这样的东西:
import requests
with open('your-file.jpg', 'rb') as f:
headers['Ocp-Apim-Subscription-Key'] = 'YOUR-KEY'
headers['Content-Type'] = 'application/octet-stream'
req = requests.post('https://westus.api.cognitive.microsoft.com/emotion/v1.0/recognize', headers=headers, data=f)
req.json()
在该示例中,它使用一个文件,但只要理解了格式,它就可以很容易地成为内存缓冲区。
您可能有兴趣知道有sample application定期调用该服务。但是,它在C#中可能不适合您。该示例应用程序的优势在于它使用OpenCV在客户端上使用基本的面部矩形检测,从而减少了对Microsoft认知服务的网络请求。