图片内容一般无法编辑,如果想要读取图片中的文本,我们需要用到OCR工具。本文将介绍如何在Java中实现OCR识别读取图片中的文字。
所需工具:
- IDEA
- Spire.OCR for Java – Java OCR组件,支持识别多种语言、字体,可读取JPG、PNG、GIF、BMP 和 TIFF 等常用图片中的文本信息。
产品包下载链接:https:服务器托管//www.e-iceblue.cn/Downloads/Spire-OCR-JAVA.html
或从Maven仓库导入:
repositories>
repository>
id>com.e-iceblueid>
name>e-icebluename>
url>https://repo.e-iceblue.cn/repository/maven-public/url>
repository>
repositories>
dependencies>
dependency>
groupId>e-icebluegroupId>
artifactId>spire.ocrartifactId>
version>1.9.0version>
dependency>
dependencies>
- 其余依赖文件。按操作系统下载对应文件后,解压缩至指定的文件路径。
Linux
Windows x64
Java OCR识别图片文本的实现步骤
1. 在IDEA中新建一个项目并导入Spire.OCR.jar。
2. 将刚才下载解压缩后的“dependencies”文件夹复制到IDEA项目目录下。
3.确保导入以上所需依赖后,运行以下代码实现扫描读取图片中的文本。
import com.spire.ocr.OcrScanner; import java.io.*; public class ReadImage { public static void main(String[] args) throws Exception { //指定依赖文服务器托管件的路径 String dependencies = "F:dependencies"; //指定要需要扫描的图片的路径 String imageFile = "图片.png"; //指定输出文件的路径 String outputFile = "读取图片.txt"; //创建OcrScanner对象,并设置其依赖文件路径 OcrScanner scanner = new OcrScanner(); scanner.setDependencies(dependencies); //扫描指定的图像文件 scanner.scan(imageFile); //获取扫描的文本内容 String scannedText = scanner.getText().toString(); //创建输出文件对象 File output = new File(outputFile); //如果输出文件已经存在,则将其删除 if (output.exists()) { output.delete(); } //创建BufferedWriter对象来将扫描的文本内容写入输出文件 BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile)); writer.write(scannedText); writer.close(); } }
示例图片:
OCR图片扫描结果:
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
题目描述: 我们对八皇后问题进行扩展。 国际象棋中的皇后非常神勇,一个皇后可以控制横、竖、斜线等4个方向(或者说是8个方向),只要有棋子落入她的势力范围,则必死无疑,所以对方的每个棋子都要小心地躲开皇后的势力范围,选择一个合适的位置放置。如果在棋盘上有两个皇后…