使用Google-Vision改善OCR结果

时间:2019-06-11 15:05:50

标签: node.js computer-vision google-vision

我正在尝试在Twitch的here(2048x1152)上运行OCR(用于Dota / LOL)。

在将该屏幕截图发送到Google-Vision之前,我正在应用黑白滤镜:

export function imageToBW(filename) {
  return new Promise((resolve, reject) => {
    loadImage(filename).then((image) => {
      const canvas = createCanvas(image.width,image.height)
      const ctx = canvas.getContext('2d')


      ctx.fillStyle = 'white'

      ctx.fillRect(0, 0, image.width, image.height);
      // set the gCO
      ctx.globalCompositeOperation = 'luminosity';

      ctx.drawImage(image, 0, 0)

      resolve(canvas.toBuffer())
    }).catch(err => reject(err))
  })
}

这是“ screenshot” 问题是Google正在检测大量文本,但不是我想要的主要内容:得分排在首位...

是否有其他过滤器或其他可以使我获得更好结果的过滤器? 我尝试了多种过滤器和屏幕截图大小,但从未得到最重要的文本:D

谢谢

1 个答案:

答案 0 :(得分:-1)

我很惊讶它不适用于Google。 OCR.space的免费OCR API可以使您的测试图像正常运行。我没有没有预处理。

有关对ocr.space的node.js支持,请参见https://www.npmjs.com/package/ocr-space-api

结果:

enter image description here