我正在使用Azure OCR服务来获取图像的文本(https://docs.microsoft.com/de-de/azure/cognitive-services/Computer-vision/quickstarts/javascript#OCR)。
到目前为止,所有内容都已启动并运行,但现在我想使用本地文件而不是已上传的文件。
// Display the image.
var sourceImageUrl = document.getElementById("inputImage").value;
document.querySelector("#sourceImage").src = sourceImageUrl;
// Perform the REST API call.
$.ajax({
url: uriBase + "?" + $.param(params),
// Request headers.
beforeSend: function(jqXHR){
jqXHR.setRequestHeader("Content-Type","application/json");
jqXHR.setRequestHeader("Ocp-Apim-Subscription-Key", subscriptionKey);
},
type: "POST",
// Request body.
data: '{"url": ' + '"' + sourceImageUrl + '"}',
})
.done(function(data) {
// Show formatted JSON on webpage.
$("#responseTextArea").val(JSON.stringify(data, null, 2));
})
我试过
答案 0 :(得分:2)
您发布的代码是JavaScript,而不是Node.js.
以下是使用带有 request 模块的Node.js分析本地图像的示例:
var request = require('request');
var fs = require('fs');
var options = {
url: 'https://westus.api.cognitive.microsoft.com/vision/v1.0/analyze',
qs: {
visualFeatures: 'Categories',
details: '',
language: 'en'
},
headers: {
'Content-Type': 'application/octet-stream',
'Ocp-Apim-Subscription-Key': '<key>'
},
body: fs.readFileSync('./Shaki_waterfall.jpg')
};
request.post(options, function (error, response, body) {
console.log(body);
});