【发布时间】:2013-03-04 10:16:47
【问题描述】:
我们传递了一个带有“Hello World”文本的单行图像,并且 Tesseract OCR 完美地显示了结果“Hello World”。
但是当我们传递一个带有多行文本的图像时
你好世界
你好吗
什么都不显示。
这是我们的代码:
#include "stdafx.h"
#include <iostream>
#include <baseapi.h>
#include <allheaders.h>
#include <fstream>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
tesseract::TessBaseAPI api;
api.Init("", "eng", tesseract::OEM_DEFAULT);
api.SetPageSegMode(static_cast<tesseract::PageSegMode>(7));
api.SetOutputName("out");
cout<<"File name:";
char image[256];
cin>>image;
PIX *pixs = pixRead(image);
STRING text_out;
api.ProcessPages(image, NULL, 0, &text_out);
cout<<text_out.string();
ofstream files;
files.open("out.txt");
files << text_out.string()<<endl;
files.close();
cin>> image;
return 0;
}
1 行输入
1 行输出
2 行输入
2 行输出
【问题讨论】:
标签: visual-studio-2010 visual-c++ ocr tesseract