【问题标题】:Using OCR on Google Glass在 Google Glass 上使用 OCR
【发布时间】:2015-04-17 11:00:28
【问题描述】:

我正在尝试使用 OCR,并且正在学习本教程:

https://community.idolondemand.com/t5/Blog/Tutorial-OCR-on-Google-Glass/ba-p/1164

但它不适用于 Glass。

相机显示不真实的颜色......皮肤的颜色是蓝色:( 而且我不知道如何解决。我已经修改了代码以像这样启动相机:

@Override
public void surfaceCreated(SurfaceHolder holder) {
    camera = Camera.open();

    Camera.Parameters params = camera.getParameters(); //added
    params.setPreviewFpsRange(30000, 30000); //added
    params.setPreviewSize(640,360); //added
    camera.setParameters(params); //added

    // Show the Camera display
    try {
        camera.setPreviewDisplay(holder);
    } catch (IOException e) {
        this.releaseCamera();
    }
}

遇到这个问题,我可以尝试使用OCR,但不能很好地识别图像的文字......但是,它会与相机问题有关吗?

还有其他 API 可以做 OCR 吗?

【问题讨论】:

    标签: android ocr google-glass


    【解决方案1】:

    如果肤色是蓝色的,可能是你拉取了 BGR 格式的帧,然后尝试用 RBG 显示。一些计算机视觉库(例如 OpenCV)使用 BGR,尝试将每帧的索引轮次从 BGR 交换为 RGB,看看这是否能解决您的颜色问题。

    此外,如果您在 OCR API 方面遇到困难,this 教程可能对您有用。

    它将解释如何在 android 环境中使用神经网络,它可以用于 OCR 等等。

    【讨论】:

    • 我如何才能将 BGR 更改为 RGB?感谢您的回复!
    • 如果您可以访问每个像素的数据,您应该会发现每个像素都存储为具有 3 个索引的数组,一个用于红色、绿色和蓝色。如果您可以提取其中每一个的值,则可以创建一个新图像,并使用您设法从原始图像中提取的像素数据填充图像信息,除非您这样做,您可以重新排列数据,以便它在正确的地方(我希望这是有道理的,恐怕我没有代码可以给你看)
    • 或者,如果您使用某种图像处理库,可能会有一个函数为您执行此操作(在 OpenCV 中为 cvtColor)
    • 我无权访问每个像素的数据 :(
    猜你喜欢
    • 2014-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多