首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Tesseract读取简单字母

使用Tesseract读取简单字母
EN

Stack Overflow用户
提问于 2021-02-02 14:00:49
回答 2查看 84关注 0票数 0
代码语言:javascript
复制
int main()
{
    cv::Mat lettersmat = cv::imread("letters.jpeg", cv::IMREAD_GRAYSCALE);
    cv::threshold(lettersmat, lettersmat, 128, 255, cv::THRESH_BINARY);
    
    tesseract::TessBaseAPI* ocr = new tesseract::TessBaseAPI();
    
    if (ocr->Init(NULL, "eng", tesseract::OEM_LSTM_ONLY) == 0)
        {
            ocr->SetVariable("user_defined_dpi", "96");
            ocr->SetImage(lettersmat.data, lettersmat.cols, lettersmat.rows, 1, lettersmat.step);
            std::string outText = std::string(ocr->GetUTF8Text());
    
            cout << "Text: " << endl;
            cout << outText.c_str() << endl;
    
            ocr->End();
        }
        else
        {
            cout << "Could not initialize Tesseract API." << endl;
        }
}

我好像读不懂这4个简单的字母。他们在泰晤士报。输出结果远未达到预期效果,有时甚至会出现随机字符。

这是图片:letters.jpeg

EN

回答 2

Stack Overflow用户

发布于 2021-02-02 15:38:37

我在Tesseract上的工作并不多,但也许我能帮上忙。你不需要一个细分吗?喜欢

ocr->SetPageSegMode(tesseract::PSM_AUTO);

票数 0
EN

Stack Overflow用户

发布于 2021-02-02 22:30:59

docs.

  • Tesseract不是为解决验证码而设计的(验证码是用来愚弄光学字符识别的)
  1. =>
    1. is =>word=>
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66004370

复制
相关文章

相似问题

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