C++ tesseract 3.01实际\u tessdata\u num\u条目\u<;=TESSDATA_NUM_条目
我正在将tesseract 3.01和magick++构建到一个程序中,因为命令行版本太慢了。要正确编译所有内容需要花费很长时间,但最终我的编译器中没有错误,但只要我去运行我的控制台应用程序,我就得到了C++ tesseract 3.01实际\u tessdata\u num\u条目\u<;=TESSDATA_NUM_条目,c++,ocr,tesseract,magick++,C++,Ocr,Tesseract,Magick++,我正在将tesseract 3.01和magick++构建到一个程序中,因为命令行版本太慢了。要正确编译所有内容需要花费很长时间,但最终我的编译器中没有错误,但只要我去运行我的控制台应用程序,我就得到了 PS C:\Users\sirus\Documents\Visual Studio 2013\Projects\ConsoleApplication4\Release> .\ConsoleApplication4.exe first command actual_tessdata_num_
PS C:\Users\sirus\Documents\Visual Studio 2013\Projects\ConsoleApplication4\Release> .\ConsoleApplication4.exe
first command
actual_tessdata_num_entries_ <= TESSDATA_NUM_ENTRIES:Error:Assert failed:in file ..\ccutil\tessdatamanager.cpp, line 48
PS C:\Users\sirus\Documents\Visual Studio 2013\Projects\ConsoleApplication4\Release> l
PS C:\Users\sirus\Documents\Visual Studio 2013\Projects\ConsoleApplication4\Release>\ConsoleApplication4.exe
第一命令
实际数据数量条目
在线搜索显示,当你不得不输入错误的语言数据时,就会出现这种情况,但我有tesseract 3.01和tesseract 3.01语言数据,它们是直接从谷歌代码网站下载的
我正在windows 8.1上使用visual studio 2013 building 32位/MD
这是我的资料来源的一个样本
#include <stdio.h>
#include <string>
#include <iostream>
#include <iomanip>
#include <locale>
#include <sstream>
#include <string>
#include <Magick++.h>
#include "baseapi.h"
#include "allheaders.h"
using namespace Magick;
using namespace std;
using namespace tesseract;
#define MaxRGB ((Magick::Quantum)65545)
tesseract::TessBaseAPI tess;
string cmd = "";
string cmd2 = "";
void img_split(){
string tesseract = "\"C:\\Program Files (x86)\\Tesseract-OCR\\tesseract.exe\" text/";
int rect_y = 141;
string del = "del /s /q text\\*";
system(del.c_str());
for (int x = 1; x < 40; x++){
rect_y += 19;
Image image;
image.read("source.jpg");
Magick::Image* mImage;
Image sub_image(image);
mImage = &sub_image;
//mImage->write("test.jpg");
sub_image.chop(Geometry(1481, rect_y));
sub_image.crop(Geometry(220, 17));
sub_image.quantizeColorSpace(GRAYColorspace);
sub_image.quantizeColors(2);
sub_image.quantizeDither(false);
sub_image.quantize();
sub_image.scale(Geometry(2200,170));
sub_image.antiAlias();
sub_image.compressType(Magick::NoCompression);
//const unsigned char* imagedata = (unsigned char*)mImage;
//tess.SetImage(imagedata, 2200, 170, 1, 17300);
//tess.Recognize(0);
//const char* out = tess.GetUTF8Text();
//cout << "\n\nno idea if this will work: " << out << endl;
sub_image.write("text/" + static_cast<ostringstream*>(&(ostringstream() << x))->str() + ".gif");
//cmd2 = tesseract + static_cast<ostringstream*>(&(ostringstream() << x))->str() + ".png text/" + static_cast<ostringstream*>(&(ostringstream() << x))->str();
//tesseract_ocr(x);
}
}
int main(int argc, char **argv)
{
cout << "first command\n";
//tess.Init(argv[0], "eng", tesseract::OEM_DEFAULT);
tess.Init(*argv, "eng");
tess.SetPageSegMode(tesseract::PSM_AUTO);
cout << "\ntest" << endl;
InitializeMagick(*argv);
//img_split();
return 0;
}
#包括
#包括
#包括
#包括
#包括
#包括
#包括
#包括
#包括“baseapi.h”
#包括“allheaders.h”
使用名称空间Magick;
使用名称空间std;
使用命名空间tesseract;
#定义MaxRGB((Magick::Quantum)65545)
tesseract::TessBaseAPI-tess;
字符串cmd=“”;
字符串cmd2=“”;
无效img_分割(){
字符串tesseract=“\”C:\\Program Files(x86)\\tesseract OCR\\tesseract.exe \“text/”;
int rect_y=141;
字符串del=“del/s/q text\\\*”;
系统(del.c_str());
对于(int x=1;x<40;x++){
rect_y+=19;
图像;
image.read(“source.jpg”);
Magick::图像*mImage;
图像子图像(图像);
mImage=&sub_图像;
//mImage->write(“test.jpg”);
子图像切块(几何体(1481,矩形));
sub_图像裁剪(几何体(220,17));
子图像。量化色彩空间(灰度色彩空间);
子图像。量化颜色(2);
子图像量化抖动(假);
sub_image.quantize();
sub_图像比例(几何(2200170));
sub_image.antialas();
sub_image.compressType(Magick::NoCompression);
//常量无符号字符*图像数据=(无符号字符*)图像;
//tess.SetImage(imagedata,2200170,117300);
//认识苔丝(0);
//const char*out=tess.GetUTF8Text();
//库特
实际数据项数项