读书人

tesseract 3.02识别汉字的有关问题方面

发布时间: 2013-10-01 12:15:56 作者: rapoo

tesseract 3.02识别汉字的问题方面的问题
我是一个tesseract方面的菜鸟,最近想通过tesseract3.02来识别图片中的文字,但是我的代码当调用“eng.traindata”库时对图片上的英文有很好的识别效果,但是调用“chi_sim.traindata”文字库时识别图片上的汉字都是乱码。希望大家能够帮助我,谢谢大家了。
tesseract 3.02识别汉字的有关问题方面的有关问题

代码:
#include "stdafx.h"
#include "baseapi.h"
#include "strngs.h"
int _tmain(int argc, _TCHAR* argv[])
{
const char * image = "image1.jpg";
tesseract::TessBaseAPI api;
//api.Init(NULL, "eng", tesseract::OEM_TESSERACT_ONLY);//识别英文
api.Init(NULL, "chi_sim", tesseract::OEM_TESSERACT_ONLY);//识别汉字
STRING text_out;
if (!api.ProcessPages(image, NULL, 0, &text_out))
{
printf("Can not read this picture!!!");
return 0;
}
printf(text_out.string());
getchar();
return 0;
}
[解决办法]
#include <locale.h>
setlocale(LC_ALL,"chs");

对电脑而言没有乱码,只有二进制字节;对人脑才有乱码。啊 GBK:0xB0 0xA1,Unicode:0x4A 0x55,UTF-8:0xE5 0x95 0x8A

[解决办法]
识别的结果要进行转码

读书人网 >C++

热点推荐