1

我在我的 android 应用程序中集成了 firebase MLKit。我正在使用设备上的 TextRecognizer API 来检测实时摄像机源上的文本。它检测到文本,但处理图像需要很长时间(从 300 毫秒到 1000 毫秒)。由于延迟较大,叠加层不像 Google 镜头应用程序那样平滑。

我该怎么做才能使检测到的文本覆盖在帧之间获得平滑过渡,从而以更大的延迟进行处理?

另外,我注意到谷歌镜头应用程序将文本检测为一个完整的句子,而不是显示文本块。谷歌镜头应用程序如何将文本检测为句子/段落?

4

1 回答 1

1

我假设您已经在 API 文档中看到了性能提示。没有提到的一件事是图像中的文本量对延迟有很大影响。即使图像分辨率相同,单行文本的处理时间也比一本书的页面要少得多。

如果您不需要识别相机视图中的所有文本,只需对屏幕的一小部分进行识别。看看 ML Kit Translate Demo with Material Design可能会有所帮助,它利用这个“技巧”来获得出色的性能。

第二点,Google Lens 使用更新的文本识别模型,可以更好地将文本块分组为段落。我们希望尽快在 ML Kit 中采用这些新模型。此外,我们正在研究硬件加速,以确保可以实现大量文本的实时体验。

于 2020-05-15T18:57:30.477 回答