gpt4 book ai didi

java - Tess4J 可以处理旋转文本吗?

转载 作者:行者123 更新时间:2023-12-01 18:58:04 26 4
gpt4 key购买 nike

我开始使用 Tess4J 来看看它能做什么。根据我迄今为止所做的测试,如果我像现在在图像文件中以结构化水平方式键入文本一样,我可以拾取文本。然而,如果我开始旋转文本,我将无法使用 Tess4J 拾取文本。 Tess4J 是否能够处理不同角度的文本,例如垂直、45 度等?

最佳答案

使用 Tess4j 进行倾斜校正

查看源代码 Tess4j (Java JNA wrapper for Tesseract)

我最近发布了这个答案 (Java image library to deskew and crop images)

答案:

您可以将 ImageDeskew.getSkewAngle()ImageHelper.rotate(BufferedImage image, double angle) 结合使用。

tess4j项目Tesseract1Test.java的test文件夹中有一个如何使用它的示例

public void testDoOCR_SkewedImage() throws Exception {
logger.info("doOCR on a skewed PNG image");
File imageFile = new File(this.testResourcesDataPath, "eurotext_deskew.png");
BufferedImage bi = ImageIO.read(imageFile);
ImageDeskew id = new ImageDeskew(bi);
double imageSkewAngle = id.getSkewAngle(); // determine skew angle
if ((imageSkewAngle > MINIMUM_DESKEW_THRESHOLD || imageSkewAngle < -(MINIMUM_DESKEW_THRESHOLD))) {
bi = ImageHelper.rotateImage(bi, -imageSkewAngle); // deskew image
}

String expResult = "The (quick) [brown] {fox} jumps!\nOver the $43,456.78 <lazy> #90 dog";
String result = instance.doOCR(bi);
logger.info(result);
assertEquals(expResult, result.substring(0, expResult.length()));
}

eurotext_deskew.png

关于java - Tess4J 可以处理旋转文本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13298742/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com