OCR 在C语言中使用Tesseract API

这个程序演示使用C API调用Tesseract OCR进行光学字符识别。

输入图片:程序运行后会在CMD里打印识别结果:

需要自己找一张测试图片替换第15行里的img.png

代码(注意可以直接保存为main.c):

cpp 复制代码
#include <stdio.h>
#include <allheaders.h>
#include <capi.h>

void die(const char *errstr) {
	fputs(errstr, stderr);
	exit(1);
}

int main(int argc, char *argv[]) {
	TessBaseAPI *handle;
	PIX *img;
	char *text;

	if((img = pixRead("img.png")) == NULL)
		die("Error reading image\n");

	handle = TessBaseAPICreate();
	if(TessBaseAPIInit3(handle, NULL, "eng") != 0)
		die("Error initializing tesseract\n");

	TessBaseAPISetImage2(handle, img);
	if(TessBaseAPIRecognize(handle, NULL) != 0)
		die("Error in Tesseract recognition\n");

	if((text = TessBaseAPIGetUTF8Text(handle)) == NULL)
		die("Error getting text\n");

	fputs(text, stdout);

	TessDeleteText(text);
	TessBaseAPIEnd(handle);
	TessBaseAPIDelete(handle);
	pixDestroy(&img);

	return 0;
}
相关推荐
CHEEVEN_QY28 分钟前
B2B制造企业,AI搜索时代的信息架构怎么做
人工智能·制造·geo·结构化数据·b2b制造
月光船幽幽4 小时前
检测用户意图复杂性的关键方法
人工智能·python
Henry-SAP4 小时前
AI突破重塑未来科技格局
人工智能·云原生·sap·erp
OPEN-F4 小时前
C++进阶教程:继承与多态
开发语言·c++
空堂与归5 小时前
图像识别总是准确率低?用卷积神经网络CNN实现高效分类
人工智能·深度学习·分类·cnn
老猿AI洞察6 小时前
阿里云启用巴西数据中心,AI服务出海落子南半球
人工智能·阿里云·云计算
大金SEO6 小时前
GEO启动的正确顺序:先做信源清理,再谈内容扩张
大数据·人工智能
鹿角片ljp6 小时前
LeetCode 236. 二叉树的最近公共祖先|递归后序
算法
Bruce_Liuxiaowei6 小时前
从基础理论开始学习人工智能(三):盲目搜索——从状态空间图到生成-测试范式
人工智能·学习