源码下载:https://download.csdn.net/download/horseroll/10739546    源码下包含部分语言包,所以文件比较大

无积分付费下载地址:https://download.csdn.net/download/HorseRoll/21113304

先上效果图。测试中文英文日语识别,其他语言也都行,只要下载相应的语言包,操作使用后面都有讲

1.首先在Nuget中搜索Tesseract,下载到项目中

2.下载相应的语言包放至Debug/tessdata文件夹下,Tesseract语言包下载地址:https://github.com/tesseract-ocr/tesseract/wiki/Data-Files#data-files-for-version-302

3.代码操作

首先先初始化类,设置语言

TesseractEngine ocr;
ocr = new TesseractEngine("./tessdata", "chi_sim");//设置语言   中文
//ocr = new TesseractEngine("./tessdata", "eng", EngineMode.TesseractAndCube);//设置语言   英文
//ocr = new TesseractEngine("./tessdata", "jpn");//设置语言   日语

导入图片进行识别

Bitmap bit = new Bitmap(Image.FromFile(filename.FileName.ToString()));
//bit = PreprocesImage(bit);//进行图像处理,如果识别率低可试试
Page page = ocr.Process(bit);
string str = page.GetText();//识别后的内容
page.Dispose();

图片处理算法,如果是识别数字,识别率低可以试试这个方法

/// <summary>
/// 图片颜色区分,剩下白色和黑色
/// </summary>
/// <param name="image"></param>
/// <returns></returns>
private Bitmap PreprocesImage(Bitmap image)
{//You can change your new color here. Red,Green,LawnGreen any..Color actualColor;//make an empty bitmap the same size as scrBitmapimage = ResizeImage(image, image.Width * 5, image.Height * 5);//image.Save(@"D:\UpWork\OCR_WinForm\Preprocess_Resize.jpg");Bitmap newBitmap = new Bitmap(image.Width, image.Height);for (int i = 0; i < image.Width; i++){for (int j = 0; j < image.Height; j++){//get the pixel from the scrBitmap imageactualColor = image.GetPixel(i, j);// > 150 because.. Images edges can be of low pixel colr. if we set all pixel color to new then there will be no smoothness left.if (actualColor.R > 23 || actualColor.G > 23 || actualColor.B > 23)//在这里设置RGBnewBitmap.SetPixel(i, j, Color.White);elsenewBitmap.SetPixel(i, j, Color.Black);}}return newBitmap;
}/// <summary>
/// 调整图片大小和对比度
/// </summary>
/// <param name="image"></param>
/// <param name="width"></param>
/// <param name="height"></param>
/// <returns></returns>
private Bitmap ResizeImage(Image image, int width, int height)
{var destRect = new Rectangle(0, 0, width, height);var destImage = new Bitmap(width, height);destImage.SetResolution(image.HorizontalResolution, image.VerticalResolution * 2);//2,3//image.Save(@"D:\UpWork\OCR_WinForm\Preprocess_HighRes.jpg");using (var graphics = Graphics.FromImage(destImage)){graphics.CompositingMode = CompositingMode.SourceOver;graphics.CompositingQuality = CompositingQuality.HighQuality;graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;graphics.SmoothingMode = SmoothingMode.HighQuality;graphics.PixelOffsetMode = PixelOffsetMode.HighQuality;using (var wrapMode = new ImageAttributes()){wrapMode.SetWrapMode(WrapMode.Clamp);graphics.DrawImage(image, destRect, 0, 0, image.Width, image.Height, GraphicsUnit.Pixel, wrapMode);}}return destImage;
}

C#用Tesseract进行OCR识别,可识别中英日韩所有语言相关推荐

  1. python查找文字在图片中的位置_使用Python识别图片中的中/英文字

    鉴于有小伙伴咨询图片识别实现的方式,在这里给大家分享一下,并提供主要的接口. 1.准备账号 申请百度开发者平台, 获取图片文字识别, 申请地址: https://console.bce.baidu.c ...

  2. OCR文档识别——数据录入工厂

    数据录入工厂特色 识别核心 软件内置文通科技最新研发的高性能文字识别引擎,支持中英日韩四国文字以及对英文的混排,识别率达99.8%以上. Unicode编码 采用UNICODE国际编码标准.系统可在一 ...

  3. Windows下使用Tesseract进行OCR文字识别

    Windows下使用Tesseract进行OCR文字识别 Tesseract最初由惠普实验室支持,用于电子版文字识别,1996年被移植到Windows上,1998年进行了C++化,在2005年Tess ...

  4. 使用Tesseract (OCR)实现简单的验证码识别(C#)+窗体淡入淡出效果

    来园子也有一段时间了,一直没时间写点东西,说实话刚开始也不知道写什么,一直以来对验证码识别比较感兴趣,曾经想着自己处理图形实现识别验证码, 不过感觉对我来说太难了,偶然中再网上发现了Tesseract ...

  5. android自动识别文字,Android文字识别tesseract ocr -训练样本库 识别字库

    目录 安装tesseract ocr引擎和jTessBoxEditor 安装jTessBoxEditor 开始制作box 准备好训练的图片 将图片转为tif格式的样本图片 合并样本图片 修改box文件 ...

  6. 文本的检测、识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别

    在本篇文章中,我们将使用 OpenCV.Python 和 Tesseract 执行 (1) 文本检测和 (2) 文本识别. 上篇文章,我向您展示了如何使用 OpenCV 的 EAST 深度学习模型执行 ...

  7. 基于Tesseract的OCR识别小程序

    一.背景 先说下开发背景,今年有次搬家找房子(2020了应该叫去年了),发现每天都要对着各种租房广告打很多电话.(当然网上也找了实地也找),每次基本都是对着墙面看电话号码然后拨打,次数一多就感觉非常麻 ...

  8. python opencv 文字识别_文本识别 使用 Tesseract 进行 OpenCV OCR 和 文本识别

    文本识别 用 Tesseract 进行 OpenCV OCR 和 文本识 在本教程中,您将学习如何应用OpenCV OCR(光学字符识别).我们将使用OpenCV,Python和Tesseract 执 ...

  9. 文本识别 使用 Tesseract 进行 OpenCV OCR 和 文本识别

    原文链接 文本识别 使用 Tesseract 进行 OpenCV OCR 和 文本识别 在 2019年7月18日 上张贴 由 hotdog发表回复 文本识别 用 Tesseract 进行 OpenCV ...

最新文章

  1. c语言大顶堆数组维护,图解大顶堆的构建、排序过程
  2. Beep()之我迷糊了……
  3. PHP编译过程中常见错误信息的解决方法
  4. c语言结构体如何定义字母,c语言中定义结构体如何定义?
  5. Spring 框架基础(01):核心组件总结,基础环境搭建
  6. PageAdmin建站系统模板制作教程1:Razor简介
  7. 在 ML2 中配置 OVS vlan network - 每天5分钟玩转 OpenStack(136)
  8. jpeglib的jpeg_finish_compress函数疑似越界
  9. Windows电脑上有哪些好用的txt小说阅读器?
  10. 企业信息化战略与实施(2)信息系统生命周期与战略规划方法
  11. 多旋翼无人机动力系统发展历程
  12. JavaScript 计算时间差
  13. iOS开发图片合成,多张图片合成一张图片
  14. phpmyadmin linux 安装,phpMyAdmin安装部署
  15. Niagara内容示例 1.3 Simple GPU Emitter
  16. 编码格式问题 错误:JSON parse error: Invalid UTF-8 middle byte 0x3f
  17. html img 图片不拉伸,固定长宽的img标签如何保持里面的图片不缩放
  18. jquery ajax添加ul li,jQuery.ajax动态添加标签无法被获取到
  19. explain ref_轻松搞定慢查询?这一文就够了(内附大量实例助你看懂Explain)
  20. UE4_地图程序化随机生成

热门文章

  1. python利用WMI监控windows状态如CPU、内存、硬盘
  2. sharepoint 2007 将%complete作为条件判断时,工作流无法正常工作
  3. Hyper-V vNext新的虚拟机配置文件、配置版本
  4. iOS宏定义的使用与规范
  5. FrostSullivan:2012年中国数据库安全审计与防护产品市场分析
  6. Visual Basic 2005 – 如何播放剪贴簿中的音效数据
  7. 硅谷产品实战-总结:15、如何组织有效的会议?
  8. 从技术谈到管理,把系统优化的技术用到企业管理
  9. 活久见!64 张图带你 Maven 实战通关
  10. 我挖掘Kafka底层原理!发现了它火爆宇宙的3个真相!