我想获取匹配结果,其格式为image。下面是我用来从图像中读取文本的代码。我用过python代码,它也给出了相同的结果。我该如何提高产量,或者有其他更好的方法来解决我的问题。
public String getImgText(String imageLocation) {
ITesseract instance = new Tesseract();
try
{
instance.setDatapath("/tessdata");
instance.setLanguage("eng");
String imgText = instance.doOCR(new File(imageLocation));
return imgText;
}
catch (TesseractException e)
{
e.getMessage();
return "Error while reading image";
}
}
输出与输入完全不同
unnl lE
mam-m m,
mun-m, 1 ms "mm M
W urn-mm my A mm“ m
mus-1mm 1 m- m m
mfinlln um: ”mu“ m
ilk-M m.
mwnm mu 5 mm nu-
..mn. n w. tvhrzmr- m
2 rm.“- 0 w, mama: m.
mum-mp 5 mu mum n.
a bulb-h» m
tum-3mm nun mm,” M
3 mmn m; mum“ M
Ema W 7 a“. m
mzsm 5m mm»... m
Continue
输入的图像是
您应该在运行Tesseract(带有opencv库的python代码)之前对图像进行预处理:
import cv2
img = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
result = cv2.bitwise_not(img)
result[result >= 190] = 255
# To show the image
cv2.imshow("Threshold", result)
cv2.waitKey()
另外,英语的柄数据似乎不能很好地处理PUBG字体,因此您可能需要对其进行微调:训练eng.traineddata以获取PUBG字体
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句