
Niezależnie od tego, czy chodzi o rozpoznawanie tekstu ze zeskanowanych dokumentów, czy wyodrębnianie danych z obrazów, możliwość konwertowania obrazów na tekst otwiera nowe możliwości. W tym poście na blogu nauczymy się konwertować obraz na tekst w języku Java, badając wykorzystanie optycznego rozpoznawania znaków (OCR) do rozpoznawania i wyodrębniania tekstu z obrazów.
Co to jest OCR?
Optyczne rozpoznawanie znaków (OCR) to technologia przekształcająca różne typy dokumentów, takie jak zeskanowane dokumenty papierowe, pliki PDF lub obrazy, w dane, które można edytować i przeszukiwać. W naszym przypadku skupimy się na wykorzystaniu OCR do rozpoznawania tekstu z obrazów w Javie.
Dlaczego konwersja obrazu na tekst?
Konwersja obrazów na tekst może usprawnić procesy wprowadzania danych, umożliwić wyszukiwanie tekstowe w obrazach i ułatwić integrację danych obrazów z różnymi aplikacjami. Niezależnie od tego, czy masz do czynienia ze zeskanowanymi dokumentami, zdjęciami czy zrzutami ekranu, możliwość odczytania tekstu z obrazów może zmienić zasady gry.
Konwertuj obraz na tekst za pomocą OCR w Javie
Aby przekonwertować obraz na tekst za pomocą OCR w Javie, wykonaj poniższe czynności:
- Zainstaluj Conholdate.Total for Java w swoim systemie.
- Utwórz instancję API OCR z klasą AsposeOCR.
- Określ ustawienia za pomocą klasy RecognitionSettings.
- Ustaw filtry przetwarzania za pomocą obiektu klasy PreprocessingFilter.
- Przygotuj obraz z instancją klasy OcrInput.
- Rozpoznawaj obrazy za pomocą metody Recognize.
Poniższy fragment kodu pokazuje, jak przekonwertować obraz na tekst w Javie:
// Utwórz instancję API OCR
com.aspose.ocr.AsposeOCR api = new com.aspose.ocr.AsposeOCR();
// Określ ustawienia rozpoznawania
com.aspose.ocr.RecognitionSettings settings = new com.aspose.ocr.RecognitionSettings();
settings.setDetectAreasMode(com.aspose.ocr.DetectAreasMode.PHOTO);
settings.setUpscaleSmallFont(true);
// Ustaw filtry przetwarzania
com.aspose.ocr.PreprocessingFilter filters = new com.aspose.ocr.PreprocessingFilter();
filters.add(com.aspose.ocr.PreprocessingFilter.AutoDenoising());
// Przygotuj obraz
com.aspose.ocr.OcrInput images = new com.aspose.ocr.OcrInput(com.aspose.ocr.InputType.SingleImage, filters);
images.add("source.png");
// Rozpoznawanie obrazów
ArrayList<com.aspose.ocr.RecognitionResult> results = api.Recognize(images, settings);
results.forEach((result) ->{
System.out.println(result.recognitionText);
});
Konwertuj obraz na tekst, przetwarzając określony region za pomocą języka Java
W niektórych przypadkach konieczne jest rozpoznanie tekstu z określonego obszaru obrazu. W związku z tym można ustawić jedną lub wiele współrzędnych prostokątnych w celu rozpoznawania tekstu za pomocą OCR w Javie. Poniższe kroki opisują proces konwersji obrazu JPG lub PNG na tekst przy użyciu języka Java:
- Skonfiguruj Conholdate.Total for Java po swojej stronie.
- Przygotuj listę prostokątów zawierających teksty, korzystając z klasy ArrayList.
- Przygotuj obraz wejściowy za pomocą klasy OcrInput.
- Utwórz instancję API z klasą AsposeOCR.
- Rozpoznaj tekst i uzyskaj wynik za pomocą klasy RecognitionResult.
Poniższy przykładowy kod wyjaśnia, jak przekonwertować obraz na tekst z rozpoznaniem określonych regionów przy użyciu języka Java:
// przygotuj prostokąty z tekstami
ArrayList rectArray = new ArrayList();
rectArray.add(new java.awt.Rectangle(138, 352, 2033, 537));
rectArray.add(new java.awt.Rectangle(147, 890, 2033, 1157));
// Skonfiguruj ustawienia rozpoznawania
com.aspose.ocr.RecognitionSettings recognitionSettings = new com.aspose.ocr.RecognitionSettings();
recognitionSettings.setRecognitionAreas(rectArray);
// Przygotuj obraz
com.aspose.ocr.OcrInput oi = new com.aspose.ocr.OcrInput(com.aspose.ocr.InputType.SingleImage);
oi.add("source.png");
// utwórz instancję API
com.aspose.ocr.AsposeOCR api = new com.aspose.ocr.AsposeOCR();
// Rozpoznawanie obrazów
ArrayList<com.aspose.ocr.RecognitionResult> results = api.Recognize(oi, recognitionSettings);
results.forEach((result) ->{
System.out.println(result.recognitionText);
});
Bezpłatna licencja ewaluacyjna
Możesz otrzymać bezpłatną licencję tymczasową na konwersję obrazów na tekst za pomocą OCR przy użyciu języka Java bez żadnych ograniczeń dotyczących oceny.
Podsumowanie
W tym poście na blogu omawialiśmy konwersję obrazów na tekst w Javie za pomocą OCR. Możesz bezproblemowo zintegrować konwersję obrazu na tekst ze swoimi aplikacjami. Niezależnie od tego, czy pracujesz z obrazami w formacie JPG, PNG czy innymi, możliwość odczytania tekstu z obrazów otwiera świat możliwości przetwarzania i analizy danych. Jeżeli jednak chcesz dostosować kod do swoich wymagań lub omówić swoje pytania to śmiało pisz do nas na forum.