Microsoft Cognitive Services Emotion API。错误:“图片尺寸太小或太大。”

时间:2017-01-23 12:57:43

标签: botframework microsoft-cognitive

我注意到Cognitive Services套件中的Emotion API出现了一个奇怪的错误。

只要我发送URL,一切正常。发送图像附件时。我收到此JSON错误: Running setup.py bdist_wheel for pygame ... error

发送更小或更大的版本无济于事。 发送相同图片的网址,然后它会再次正常工作。

我将附件流式传输到API服务的方式与我为另一个Cognitive Services API(即计算机视觉)完全相同。这对于流式附件非常有用。

代码在GitHub上:https://github.com/sebsylvester/botbuilder-mcs

我知道API仍在预览中,但这仍然是一个奇怪的问题。

1 个答案:

答案 0 :(得分:2)

不幸的是,Emotion和Face API不支持分块传输,如here所述。 '解决方法'是在发出Web请求之前同步加载图像位。因此,该项目的代码snippet是:

function _postImageSync(url, image, options) {
    return new _Promise(function (resolve, reject) {
        request.post({
            uri: host + rootPath + url,
            headers: {
                'Ocp-Apim-Subscription-Key': key,
                'Content-Type': 'application/octet-stream'
            },
            qs: options,
            body: fs.readFileSync(image)
        }, (error, response) => {
            response.body = JSON.parse(response.body);
            _return(error, response, resolve, reject);
        });
    });
}