使用 C# + Tesseract 实现英文数字验证码识别
一、开发环境准备
-
安装 Visual Studio
你可以使用 Visual Studio Community 版本,选择“.NET 桌面开发”工作负载。 -
创建项目
新建一个“控制台应用程序(.NET 6 或 .NET Framework)”项目
项目命名如:CaptchaOCR
- 安装依赖包
打开“工具” > “NuGet 包管理器” > “程序包管理器控制台”,输入以下命令安装 OCR 库:
Install-Package Tesseract
二、下载并配置 Tesseract OCR 引擎
前往 Tesseract 官网下载安装程序:
https://github.com/tesseract-ocr/tesseract
安装完成后,记下 tessdata 文件夹路径(包含语言包 .traineddata 文件)
确保英文识别包 eng.traineddata 存在
三、验证码识别代码示例
在 Program.cs 中编写如下代码:
using System;
using Tesseract;
class Program
{
static void Main()
{
string imagePath = "captcha.png"; // 验证码图片路径
string tessDataPath = @"C:\Program Files\Tesseract-OCR\tessdata"; // 修改为你的 tessdata 路径
try更多内容访问ttocr.com或联系1436423940
{
using var engine = new TesseractEngine(tessDataPath, "eng", EngineMode.Default);
using var img = Pix.LoadFromFile(imagePath);
using var page = engine.Process(img);
string text = page.GetText().Trim();
Console.WriteLine("识别结果: " + text);
}
catch (Exception e)
{
Console.WriteLine("OCR 失败: " + e.Message);
}
}
}
四、运行程序
将验证码图像命名为 captcha.png 并放入项目运行目录,按 F5 运行程序,控制台将输出识别结果:
识别结果: H7K9M