gpt4 book ai didi

c# - 如何快速有效地从 'simple' 截图中读取文本?

转载 作者:行者123 更新时间:2023-12-05 07:24:12 24 4
gpt4 key购买 nike

我正在开发一个小型个人应用程序,它应该从一个非常简单的 Android 屏幕截图中读取一些文本(最多 2 个句子)。文本始终具有相同的大小、相同的字体和大约。相同的位置。背景非常朴素,通常是一种颜色的几个阴影(想想亮橙色逐渐变成深一点的橙色)。我试图弄清楚什么是最好的方法(最重要的是,最快的方法)来做到这一点。

我的第一次尝试涉及 IronOcr C# 库,公平地说,它运行良好!但我注意到它存在一些问题:

  • 不是 100% 准确
  • 尽管有社区/试用版,但它有时会抛出异常告诉您获得许可
  • 读取一张约 600x300 像素的图像需要约 400 毫秒,对于我的简单图像,我认为这相当长

虽然听起来很奇怪,但我觉得像 IronOcr 和 Tesseract 这样的库可能对我的需求来说太先进了。为了提高速度,我什至编写了一段代码来首先“阈值”我的图像,使其完全黑白。

我当前的 IronOcr 设置如下所示:

            ImageReader = new AdvancedOcr()
{
CleanBackgroundNoise = false,
EnhanceContrast = false,
EnhanceResolution = false,
Strategy = AdvancedOcr.OcrStrategy.Fast,
ColorSpace = AdvancedOcr.OcrColorSpace.GrayScale,
DetectWhiteTextOnDarkBackgrounds = true,
InputImageType = AdvancedOcr.InputTypes.Snippet,
RotateAndStraighten = false,
ReadBarCodes = false,
ColorDepth = 1
};

我完全可以接受我使用 IronOcr 获得的结果,但许可异常(exception)毁了它。我也没有 399 美元可以花在一个甚至不会离开我自己的 PC 的私有(private)爱好项目上:(

但我对这个问题的主要目标是找到一种更好、更快或更有效的方法来做到这一点。它不一定必须是一个现有的库,如果有人能给我指出正确的方向,我非常愿意制作我自己的字母检测代码,这种代码可以(仅?)用于像我这样的屏幕截图。

最佳答案

我研究过这个主题,我能找到的最佳解决方案是 Azure 认知服务。您可以使用计算机视觉 API 从图像中读取文本。 Here是完整的文档。

关于c# - 如何快速有效地从 'simple' 截图中读取文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55548497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com