javascript - 如何使用微软认知API进行面部情绪检测?

标签 javascript api face emotion

我正在尝试从上传的图像中检测面部情绪。我似乎找不到任何情绪检测的示例代码。

https://azure.microsoft.com/en-us/try/cognitive-services/my-apis/?apiSlug=face-api&country=Canada&allowContact=true

我发现了这个

https://learn.microsoft.com/en-us/azure/cognitive-services/emotion/quickstarts/javascript

但是 url 端点不起作用。然后我尝试了常规的人脸 API,但即使这样我也得到资源未找到

有人知道发生什么事吗?

谢谢

var FACE = new function () {

    this.listen = function() {

        var camera = document.getElementById('camera');

        camera.addEventListener('change', function(e) {
            var imageFile = e.target.files[0];     
            var reader = new FileReader();
            var fileType;

            //wire up the listener for the async 'loadend' event
            reader.addEventListener('loadend', function () {    
                //get the result of the async readAsArrayBuffer call
                var fileContentArrayBuffer = reader.result;

                sendImage(fileContentArrayBuffer, fileType);
            });

            if (imageFile) {
                //save the mime type of the file
                fileType = imageFile.type;

                //read the file asynchronously
                reader.readAsArrayBuffer(imageFile);
            }   
        });

        function sendImage(fileContentArrayBuffer, fileType) {

            $.ajax({
                // NOTE: You must use the same location in your REST call as you used to obtain your subscription keys.
                //   For example, if you obtained your subscription keys from westcentralus, replace "westus" in the 
                //   URL below with "westcentralus".
                url: "https://westcentralus.api.cognitive.microsoft.com/face/v1.0/",
                beforeSend: function(xhrObj){
                    // Request headers, also supports "application/octet-stream"
                    xhrObj.setRequestHeader("Content-Type","application/json");

                    // NOTE: Replace the "Ocp-Apim-Subscription-Key" value with a valid subscription key.
                    xhrObj.setRequestHeader("Ocp-Apim-Subscription-Key","my key");
                },
                //don't forget this!
                processData: false,
                type: "POST",
                // Request body
                data: new Blob([fileContentArrayBuffer], { type: fileType })
            }).done(function(data) {
                alert(data);
                // Get face rectangle dimensions
                var faceRectangle = data[0].faceRectangle;
                var faceRectangleList = $('#faceRectangle');

                // Append to DOM
                for (var prop in faceRectangle) {
                    faceRectangleList.append("<li> " + prop + ": " + faceRectangle[prop] + "</li>");
                }

                // Get emotion confidence scores
                var scores = data[0].scores;
                var scoresList = $('#scores');

                // Append to DOM
                for(var prop in scores) {
                    scoresList.append("<li> " + prop + ": " + scores[prop] + "</li>")
                }
            }).fail(function(err) {
                alert("Error: " + JSON.stringify(err));
            });
        }
    };
};

最佳答案

假设您有 key ,Emotion API 的请求 URL 应为 https://westus.api.cognitive.microsoft.com/emotion/v1.0/recognize?

您可能还想查看this website 。它有类似的代码。

抱歉,我无法使用评论功能,因为我是新来的,没有足够的声誉来这样做。

关于javascript - 如何使用微软认知API进行面部情绪检测?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48859524/

相关文章:

javascript - Windows 小工具 : Why are settings deleted when my gadget is closed?

javascript - 如何将模型名称传递给函数并更改其值

api - 如何获取博客 API 帖子/搜索的下一页结果?

opencv - 将脸从非正面旋转到正面opencv

python - 语法错误: invalid syntax while trying to release webcam

ios - CATransform3D 能否用于获取面部网格中的眼睛大小尺寸?

javascript - chart.js 混合图表中的图表之一未绘制

javascript - 如果我更改设备时间,如何获取实际的世界时间?

java - 如何使用 swagger 使用以 json 作为有效负载的 post 请求创建 api

java - Apache httpclient HTTPGET 解码