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;
}
相关推荐
午彦琳7 分钟前
2026.9.17
数据结构·算法·leetcode
龙亘川22 分钟前
AI + 人社新范式:智慧人社系统如何为民生治理数字化难题提供帮助
人工智能·智慧城市·数据可视化·政务
水如烟22 分钟前
孤能子视角:蓝星文明篇·市——交换机制的运行化:从偶发交换到日常运行的制度化
人工智能
shada24 分钟前
Boost.Process v2 在旧内核上报 `assign: Bad file descriptor`
c++
技灵AI26 分钟前
Wan 3.0 API怎么做多参考商品视频?从图片、视频、音频分工到30秒交付
人工智能·prompt·aigc·音视频·wan 3.0
武子康27 分钟前
CLAUDE.md 引用 AGENTS.md 后,两边真的读到同一套规则吗?
人工智能·llm·agent
木井巳30 分钟前
【记忆化搜索】不同路径
java·算法·leetcode·深度优先·剪枝·推荐算法
动恰客流统计39 分钟前
线下零售数字化浪潮下,客流统计的3个核心发展趋势
大数据·前端·人工智能
johnsong44 分钟前
效率的边界:当推理突破遇见语言革命
人工智能·语言模型
染指11101 小时前
119.Agent-LangChain核心组件-Runtime运行时
人工智能·langchain·agent