Java实现图片转文字!

前言

现在的手机已经可以实现拍照转文字了。作为一名程序员,得使用java代码实现这一功能,虽然可能没啥用!!!

pom.xml

添加依赖

<dependency>    <groupId>net.sourceforge.tess4j</groupId>    <artifactId>tess4j</artifactId>    <version>3.2.1</version></dependency>

这个依赖有点东西啊,32M。

test.java

 1     public static void main(String[] args) { 2         System.out.println("---------------------start--------------------------"); 3         Tesseract tesseract = new Tesseract(); 4         tesseract.setDatapath("D://DataScience//tessdata"); 5         // tesseract.setLanguage("chi_sim"); 6         try { 7             System.out.println(tesseract.doOCR(new File("C:\\Users\\caofei\\Desktop\\2.png"))); 8         } catch (TesseractException e) { 9             e.printStackTrace();10         }11         12         System.out.println("----------------------end---------------------------");13     }

1.第三行,实例化一个Tesseract对象。

2.第四行,我们要实现这一功能,得需要光学字符识别工具,就像硬件设备一样(但不是真的设备,就是模型设置数据),我们要提供路径。

 

 我下载了两个文件,eng前缀的代表英文的,chi_sim代表简体中文的。每一种语言对应一个。这些模型数据的下载地址

是:https://github.com/tesseract-ocr/tesseract/wiki/Data-Files

里面什么语言都有,也有这项技术的简介。

3.第七号,我准备的图片2.png

 

 执行这个main方法,控制台就会输入我们想要的内容

 

 4.第五号我注掉了,这个工具的默认语言是英文。

 

 如果我们想转其他语言的图片,就需要像第五行这样指定。语言不匹配,会出现乱码。

相关推荐

  • AI创业:不思考趋势,就会被GPT5折叠
  • 什么样的后端开发,会被公司抢着要?
  • 注解方式优雅的实现 Redisson 分布式锁
  • Java 17 与 Java 11:探索最新功能,为什么我强烈建议你升级到 Java 17?
  • 如何让你的Node.js应用程序处理数百万的API请求
  • Spring Boot整合阿里云OSS文件上传
  • 面试居然碰到了前女友,真的人都麻了
  • hippo - 提升我们团队工程效率的工具
  • 2024年,Rust 与 JavaScript 的较量!谁将成为编程领域的新王者?
  • 阿里家属:程序员老公10年薪资变化,从12年月薪三千到现在年入百万以上
  • 纯CSS实现跑马灯效果,CSS动画知识是该补一补了~
  • 开源 2 年、打磨 13 年、300 万行代码的开源项目
  • 分享一位27岁的前端,从二本到澳洲🦘的故事
  • 分享7个有用的Node.js库,让你事半功倍
  • 卧槽,又来一个 Java 神器!!
  • 计算,为了无法计算的价值
  • 拜登政府发布AI行政命令;国内超一半大模型公司跑在阿里云上;ChatGPT被曝参数规模为200亿丨AIGC大事日报
  • 苹果亮出全球首个3nm PC芯片!920亿晶体管,功耗直接砍半?MBP换芯不换面
  • 通义千问2.0来了!实测编程打败8成Python用户,阿里云大模型「全家桶」炸场
  • [开源]一款终端仿真软件,支持多种后端协议,无依赖跨平台使用