首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用谷歌的移动视觉识别静态图像中的文本?

使用谷歌的移动视觉识别静态图像中的文本?
EN

Stack Overflow用户
提问于 2016-10-23 06:04:46
回答 2查看 3.9K关注 0票数 8

我正试图用谷歌的移动视觉API编写一个基本的ocr android应用程序,但我很难让该应用程序识别静态图像中的文本。我已经看过了codelabs教程,其他人的问题,也就是每一个带有android-vision标签的堆叠溢出问题,以及文档,但我仍然没有任何运气。我知道还有人问过类似的问题,但在那里贴出的答案不管用。

以下是我的代码摘录

代码语言:javascript
复制
Bitmap photo = (Bitmap) extras.get("data");
        pictureOcrView.setImageBitmap(photo);
        Context context = getApplicationContext();
        TextRecognizer ocrFrame = new TextRecognizer.Builder(context).build();
        Frame frame = new Frame.Builder().setBitmap(photo).build();
        if (ocrFrame.isOperational()){
            Log.e(TAG, "Textrecognizer is operational");
        }
        SparseArray<TextBlock> textBlocks = ocrFrame.detect(frame);

        for (int i = 0; i < textBlocks.size(); i++) {
            TextBlock textBlock = textBlocks.get(textBlocks.keyAt(i));

            Log.e(TAG, "something is happening");
            }

我不明白这是什么问题。这不是说我收到了乱七八糟的短信,我只是没有收到任何短信。当我用用于codelab教程的文本图片测试这个应用程序时,我什么也没有得到。看起来textBlock数组甚至没有被创建,但是我不知道为什么。我知道我已经创建了框架,因为我仍然可以成功地运行其他框架方法,比如getHeight,并且isOperational()一直在返回true。

对我做错了什么有什么建议吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-01-29 11:26:20

我刚才也有同样的问题。问题是,您正在处理的图像不是整张照片,而是缩略图(通过调用extras.get(“data”)获得)。为了访问完整的映像,您需要保存它,然后使用它。有关如何做到这一点的详细信息,请参见以下链接:https://developer.android.com/training/camera/photobasics.html

票数 2
EN

Stack Overflow用户

发布于 2016-10-25 05:27:07

在我的案子里。当我从相机或画廊获得位图时,位图方向已经旋转。TextRecognizer无法检测文本,因为位图是旋转的。必须旋转位图以纠正方向。

可以通过使用this注释来旋转图像

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40200074

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档