我想使用selenium和asprise jar阅读图片内容,并在我的项目中添加了jar文件:
aocr.jar
AspriseOCR
以下是我的代码:
BufferedImage image = ImageIO.read(new File("C:\\Users\\siddhesh.kalgaonkar\\Desktop\\love.jpg"));
String imageText = new OCR().recognizeCharacters((RenderedImage)image);
System.out.println("Text From Image : \n"+ imageText);
System.out.println("Length of total text : \n"+ imageText.length());
但它给出了以下错误:
java.lang.UnsatisfiedLinkError: no AspriseOCR in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.asprise.util.ocr.OCR.loadLibrary(OCR.java:247)
at com.asprise.util.ocr.OCR.<init>(OCR.java:56)
at com.image.selenium.ImageVerification.start(ImageVerification.java:52)
我也尝试使用this链接设置java.library.path但没有用。请帮助任何人。
答案 0 :(得分:3)
我得到了自己问题的答案。我们现在可以借助以下信息来实现:
将最新的aocr.jar
添加到您的项目中。从中下载
Indent Style链接。
在项目中包含 pom.xml 文件以获取maven依赖项并添加此依赖项:
<dependency>
<groupId>com.asprise.ocr</groupId>
<artifactId>java-ocr-api</artifactId>
<version>[15,)</version>
</dependency>
在java文件中写下以下代码:
public class ImageVerification
{
WebDriver driver;
@Test
public void start() throws IOException {
Ocr ocr = new Ocr(); // create a new OCR engine
ocr.startEngine("eng", Ocr.SPEED_FASTEST); // English
String s = ocr.recognize(new File[] { new File("C:\\Users\\siddhesh.kalgaonkar\\Desktop\\love.jpg") },
Ocr.RECOGNIZE_TYPE_TEXT, Ocr.OUTPUT_FORMAT_PLAINTEXT);
System.out.println(s);
ocr.stopEngine();
}
有关详细信息,请参阅this链接
享受:)
注意:仅适用于纯文字图片。doesn't
适用于包含图表格式或饼图数据的图片或趋势图