Tesseract -ocr - java - 报错JFIF APP0 must be first marker after SOI 解决
JAVA 解决 报错 be must First After OCR
2023-09-14 09:06:39 时间
1.原因
出现这个报错,是因为图片格式有残缺或者图片格式在接口获取后存储的格式与内部的编码有冲突导致
2.解决
将其转为png后再调用 Tesseract 即可
我封装了个工具
//转换图片为png格式 public static String convertPng(String url) { String tarFilePath = url.substring(0, url.lastIndexOf(".")) + ".png"; try { BufferedImage bufferedImage = ImageIO.read(new File(url)); BufferedImage newBufferedImage = new BufferedImage(bufferedImage.getWidth(), bufferedImage.getHeight(), BufferedImage.TYPE_INT_RGB); newBufferedImage.createGraphics().drawImage(bufferedImage, 0, 0, Color.white, null); ImageIO.write(newBufferedImage, "png", new File(tarFilePath)); } catch (IOException e) { return ""; } return tarFilePath; }
不可直接改后缀,需要使用 ImageIO 来转才可以, 切记
相关文章
- [大数据量]java移位运算与位运算与数据类型的存储
- 解决:使用java连接Fastdfs,上传文件时报:SocketTimeOutException的问题
- sh(Spring+Spring mvc+hibernate)——IEmpDao.java
- Java邮件开发(三):解决附件名为乱码及显示友好名称
- Java实现 LeetCode 754 到达终点数字(暴力+反向)
- Java实现 LeetCode 386 字典序排数
- Java实现 基础算法 求100以内的质数
- Java实现 LeetCode 240 搜索二维矩阵 II
- Java实现 洛谷 P1055 ISBN号码
- Java ,单实例 多线程 ,web容器,servlet与struts1-2.x系列,线程安全的解决
- JAVA转换器模式 耳机口转Type-C
- paip. 解决java程序不能自动退出
- paip.java swt 乱码问题解决
- 华为OD机试 - 递增字符串(Java & JS & Python)
- 华为OD机试 - 信道分配(Java & JS & Python)
- Java 远程控制全实现:高效解决远程控制场景,附代码示例
- Java中new Date插入mysql数据库,数据库时间多一秒问题
- Tesseract - Java 调用其识别ocr 报错Not a JPEG file: starts with 0x89 0x50 解决
- Caused by: java.lang.IllegalStateException: 由于StackOverflower错误,无法完成对web应用程序[/lib]的批注的扫描。可能的根本原因包......
- 全网详细解决java.lang.ClassCastException: xxx类型 cannot be cast to xxx类型
- “java.lang.IllegalArgumentException: Failed to evaluate expression ‘ROLE_USER’”报错的解决
- java应用 cpu占用过高问题分析及解决方法