Pomocí optického rozpoznávání znaků (OCR) můžete převést text z obrázku do upravitelného formátu. Obrázky jako JPG, PNG, TIFF, BMP, GIF atd. se používají všude na internetu a možná budete muset rozpoznat text z online obrázku. Místo ukládání nebo stahování souboru můžete snadno použít odkaz URL na tento obrázek a provést na něm OCR. Následující nadpisy pojednávají o podrobnostech:
- Java OCR API – Instalace
- Rozpoznejte text pomocí OCR na obrázku z adresy URL pomocí Java
- Rozpoznejte text ze zkoseného nebo nakloněného obrazu pomocí OCR pomocí Java
Java OCR API – Instalace
Aspose.OCR for Java API lze použít k provádění operací optického rozpoznávání znaků na obrázcích. Dokáže rozpoznat text a převést obrázek na upravitelný text. Stáhněte si prosím soubor JAR API ze sekce Stahování nebo zadejte následující konfigurace Maven v souboru pom.xml vašeho projektu:
úložiště:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
Závislost:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-ocr</artifactId>
<version>20.5</version>
</dependency>
Rozpoznejte text pomocí OCR na obrázku z adresy URL pomocí Java
Optické rozpoznávání znaků na obrázku z adresy URL můžete provést pomocí následujících kroků:
- Vytvořte instanci API s třídou AsposeOCR.
- Zadejte URI obrázku.
- Nastavte možnosti rozpoznávání pomocí třídy RecognitionSettings.
- Získejte výsledný objekt.
- Vytisknout výsledek.
Následující kód vysvětluje, jak rozpoznat text provedením OCR na obrázku z adresy URL programově pomocí Java:
//Vytvořte instanci API
AsposeOCR api = new AsposeOCR();
// Zadejte URI obrázku
String uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
// Nastavte možnosti rozpoznávání
RecognitionSettings settings = new RecognitionSettings();
settings.setAutoSkew(false);
ArrayList<Rectangle> rectangles = new ArrayList<Rectangle>();
rectangles.add(new Rectangle(90,186,775,95));
settings.setRecognitionAreas(rectangles);
// Získejte výsledný objekt
RecognitionResult result = null;
try {
result = api.RecognizePageFromUri(uri, settings);
} catch (IOException e) {
e.printStackTrace();
}
// Vytisknout výsledek
System.out.println("Result: \n" + result.recognitionText+"\n\n");
System.out.println("RecognitionAreasText: \n");
for(String text: result.recognitionAreasText) {
System.out.println(text);
}
Rozpoznejte text ze zkoseného nebo nakloněného obrazu pomocí OCR pomocí Java
Někdy může být obrázek z nějakého důvodu nakloněný nebo zkosený. Například obrázek vytvořený fotoaparátem nebo skenerem může být trochu zkosený, pak můžete získat úhel zkosení vstupního obrázku. Přesnost rozpoznávání textu můžete zlepšit znalostmi a opravou úhlu zkosení. Musíte postupovat podle následujících kroků:
- Vytvořte instanci API pomocí objektu AsposeOCR.
- Nastavte možnosti rozpoznávání.
- Vypočítejte a nastavte úhel zkosení.
- Získejte výsledek pomocí objektu RecognitionResult a vytiskněte jej.
Níže uvedený kód ukazuje, jak rozpoznat text ze zkoseného obrázku pomocí OCR programově v Javě:
//Vytvořte instanci API
AsposeOCR api = new AsposeOCR();
String uri = "https://www.castlegateit.co.uk/wp-content/uploads/2016/09/justified_text.png";
BufferedImage image = null;
try{
java.net.URL url =new java.net.URL(uri);
// přečtěte si url
image = ImageIO.read(url);
}catch(IOException e){
e.printStackTrace();
}
// nastavit možnosti rozpoznávání
RecognitionSettings settings = new RecognitionSettings();
double angle = 0;
// Získejte úhel zkosení
try {
angle = api.CalcSkewImage(image);
System.out.println("Skew text is:" + angle + " degrees.");
} catch (IOException e1) {
e1.printStackTrace();
}
settings.setSkew(angle);
ArrayList<Rectangle> rectangles = new ArrayList<Rectangle>();
rectangles.add(new Rectangle(90,186,775,95));
settings.setRecognitionAreas(rectangles);
// získat výsledný objekt
RecognitionResult result = null;
try {
result = api.RecognizePageFromUri(uri, settings);
} catch (IOException e) {
e.printStackTrace();
}
// výsledek tisku
System.out.println("Result: \n" + result.recognitionText+"\n\n");
System.out.println("RecognitionAreasText: \n");
for(String text: result.recognitionAreasText) {
System.out.println(text);
}
Získejte bezplatnou licenci API
Můžete požádat o bezplatnou dočasnou licenci k vyhodnocení plné kapacity API.
Závěr
Na závěr jste se naučili, jak rozpoznat text prováděním operací OCR na obrázku z libovolné adresy URL. Kromě toho jste prozkoumali, jak opravit úhel zkosení obrázku, abyste zlepšili přesnost a efektivitu API. Na několik dalších funkcí API se můžete podívat na Dokumentaci, nebo nás v případě jakýchkoliv dotazů neváhejte kontaktovat prostřednictvím Free Support Forum.