ruby-on-rails - 为 Heroku Rails 应用实现 OCR

标签 ruby-on-rails heroku ocr tesseract

我需要 Heroku 上的 Rails 应用程序的 OCR 功能。我让 tesseract 工作的努力没有成功。有没有人有什么建议?很难相信像 OCR 这样基本的东西在 Heroku 上的 Rails 这样无处不在的东西上不受支持。

努力让 TESSERACT 工作的背景

  • 使用 tesseract 二进制文件和 tesseract-ocr gem
  • 的应用程序在 MacOS 上运行良好
  • Heroku 没有内置的 tesseract 支持,也不支持安装二进制文件(见 Configuring environmental paths in Heroku)
  • 大多数关于 Heroku 上的 tesseract 的 SO 问题都没有答案( Using Tesseract on Heroku with DjangoTesseract-OCR on Heroku with Node.js )
  • 无法获取 tesseract_bin gem 在本地加载(尚未在 Heroku 上尝试过)
  • 使用路线 buildpack-libraries对我来说似乎势不可挡(如果这种方法可行,我不明白为什么有人没有提供预先打包的解决方案)

  • 加载 TESERACT_BIN gem 的特定错误
    /Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/pathname.rb:422:in `open': No such file or directory - /Users/palfvin/.rvm/gems/ruby-2.0.0-p247@avlats/gems/tesseract_bin-1.0.2/bin (Errno::ENOENT)
        from /Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/pathname.rb:422:in `foreach'
        from /Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/pathname.rb:422:in `children'
        from /Users/palfvin/.rvm/gems/ruby-2.0.0-p247@avlats/gems/tesseract_bin-1.0.2/lib/tesseract_bin.rb:7:in `<module:TesseractBin>'
        from /Users/palfvin/.rvm/gems/ruby-2.0.0-p247@avlats/gems/tesseract_bin-1.0.2/lib/tesseract_bin.rb:3:in `<top (required)>'
        from /Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:110:in `require'
        from /Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:110:in `rescue in require'
        from /Users/palfvin/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:35:in `require'
        from tmp/tesseract.rb:261:in `<main>'
    

    最佳答案

    我在 RoR 中为 Heroku 开发了一个使用 Tesseract OCR 的简单服务器。服务器接收 jpg 图像,运行 OCR 并将文本作为字符串返回。这对您来说可能是一个很好的起点。

    https://github.com/fouady/RoR-Tesseract-Heroku



    此外,我使用了一个我为自己修改过的自定义 buildpack。您将在此处找到详细信息:

    https://github.com/fouady/heroku-buildpack-tesseract



    我希望这能解决你的问题。

    关于ruby-on-rails - 为 Heroku Rails 应用实现 OCR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20034150/

    相关文章:

    ruby-on-rails - 无法通过关联找到没有带有 has_many 的 ID 的 [model]

    javascript - 如何将ajax请求的成功响应传递给html模板?

    ruby-on-rails - 搜索另一个型号

    node.js - 如何使用自定义后端 api 将 'create-react-app' 部署到 Heroku

    ruby-on-rails-3 - Heroku——从多台计算机部署?

    mysql - Rails 数据库查询

    heroku - 在Windows 7中无法为heroku生成ssh公钥

    java - 如何在 Tesseract (Java) 中使用用户词?

    python - ValueError : Error when checking target: expected dense_6 to have shape (46, )但得到形状为(1,)的数组

    android - 是否有适用于 Android 的免费 OCR 库?