带有Node.js的Google Vision API文本检测设置了语言提示

时间:2019-09-27 16:05:20

标签: node.js google-cloud-platform vision-api

我正在@google-cloud/vision和Node.js中使用

我使用以下示例代码

async function quickstart() {
  try {
    // Imports the Google Cloud client library
    const vision = require('@google-cloud/vision');

    // Creates a client
    const client = new vision.ImageAnnotatorClient();

    // Performs label detection on the image file
    const [result] = await client.textDetection('./test.jpg');
    const texts = result.textAnnotations;
    console.log('Text:');
    texts.forEach((text: string) => console.log(text));
  } catch (err) {
    console.log(err);
  }
}

这当前正在工作,并且返回英文文本和数字。我在图像中使用了Vision API的实验语言。如何将语言提示设置为node.js API中指定的文档?

https://cloud.google.com/vision/docs/ocr

2 个答案:

答案 0 :(得分:0)

您可以使用batchAnnotateImages方法。例如:类似

const request = {
    features: [{type: 'TEXT_DETECTION'}],
    imageContext: {
        languageHints: ["en-t-i0-handwrit"]
    },
    <other parts of your request>
};
const [response] = await imageAnnotatorClient.batchAnnotateImages({
    requests: [request],
});

答案 1 :(得分:0)

我用这个来检测我的高棉语身份证。 imageUri ,在这种情况下,您可以使用任何地址,例如,我将Google的网址作为地址。 languageHints (这是您想要的),将其更改为languageHints代码。这里是a link

async function quickstart() {
  const vision = require('@google-cloud/vision');

  const client = new vision.ImageAnnotatorClient();

  const request = {
    "requests": [
      {
        "image": {
          "source": {
            "imageUri": "https://pbs.twimg.com/media/Cm_Jj7hUEAALwRF.jpg"
          }
        },
        "features": [
          {
            "type": "DOCUMENT_TEXT_DETECTION"
          }
        ],
        "imageContext": {
          "languageHints": ["km"]
        }
      }
    ]
  };

  const [result] = await client.batchAnnotateImages(request);
  const detections = result.responses[0].fullTextAnnotation;
  console.log(detections.text);
}

quickstart().catch(console.error);

当您操纵文本时,无法正确呈现该文本,只需将其复制到word或记事本中即可。