Resimden Metne Java

İster taranmış belgelerden metin tanımak, ister görüntülerden veri çıkarmak olsun, görüntüleri metne dönüştürme yeteneği yeni olanakların kapısını açmıştır. Bu blog yazısında, bir görüntüyü Java’da metne dönüştürmeyi öğreneceğiz ve görüntülerden metni tanımak ve çıkarmak için Optik Karakter Tanıma’nın (OCR) kullanımını keşfedeceğiz.

OCR nedir?

Optik Karakter Tanıma (OCR), taranmış kağıt belgeler, PDF’ler veya resimler gibi farklı türdeki belgeleri düzenlenebilir ve aranabilir verilere dönüştüren bir teknolojidir. Bizim durumumuzda, Java’daki resimlerdeki metinleri tanımak için OCR kullanmaya odaklanacağız.

Neden Görüntüden Metne Dönüştürme?

Görüntüleri metne dönüştürmek, veri girişi süreçlerini kolaylaştırabilir, görüntülerde metin tabanlı aramaları etkinleştirebilir ve görüntü verilerinin çeşitli uygulamalara entegrasyonunu kolaylaştırabilir. Taranmış belgeler, fotoğraflar veya ekran görüntüleri ile ilgileniyor olsanız da, resimlerden metin okuma yeteneği oyunun kurallarını değiştirebilir.

Java’da OCR ile Görüntüyü Metne Dönüştürme

Java’da bir görüntüyü OCR ile metne dönüştürmek için aşağıdaki adımları uygulamanız gerekir:

  • Sisteminize Conholdate.Total for Java yükleyin.
  • AsposeOCR sınıfıyla bir OCR API örneği oluşturun.
  • RecognitionSettings sınıfıyla ayarları belirtin.
  • PreprocessingFilter sınıf nesnesini kullanarak işleme filtrelerini ayarlayın.
  • Görüntüyü OcrInput sınıfı örneğiyle hazırlayın.
  • Görüntüleri Tanıma yöntemiyle tanıyın.

Aşağıdaki kod parçacığı, Java’da görüntünün metne nasıl dönüştürüleceğini gösterir:

// OCR API'sinin örneğini oluşturun
com.aspose.ocr.AsposeOCR api = new com.aspose.ocr.AsposeOCR();

// Tanıma ayarlarını belirtin
com.aspose.ocr.RecognitionSettings settings = new com.aspose.ocr.RecognitionSettings();
settings.setDetectAreasMode(com.aspose.ocr.DetectAreasMode.PHOTO);
settings.setUpscaleSmallFont(true);

// İşleme filtrelerini ayarlayın
com.aspose.ocr.PreprocessingFilter filters = new com.aspose.ocr.PreprocessingFilter();
filters.add(com.aspose.ocr.PreprocessingFilter.AutoDenoising());

// Resmi hazırla
com.aspose.ocr.OcrInput images = new com.aspose.ocr.OcrInput(com.aspose.ocr.InputType.SingleImage, filters);
images.add("source.png");

// Görüntüleri tanıma
ArrayList<com.aspose.ocr.RecognitionResult> results = api.Recognize(images, settings);
results.forEach((result) ->{
	System.out.println(result.recognitionText);
});

Java kullanarak Belirli Bölgeyi İşleyerek Görüntüyü Metne Dönüştürme

Bazı durumlarda görüntünün belirli bir bölgesindeki metni tanımanız gerekir. Buna göre, Java’daki OCR’yi kullanarak metni tanımak için bir veya daha fazla dikdörtgen koordinat ayarlayabilirsiniz. Aşağıdaki adımlar, Java kullanarak JPG veya PNG görüntüsünü metne dönüştürme sürecini ayrıntılı olarak açıklamaktadır:

  • Kendi tarafınızda Conholdate.Total for Java kurulumunu yapın.
  • ArrayList sınıfını kullanarak metin içeren dikdörtgenlerin listesini hazırlayın.
  • Giriş görüntüsünü OcrInput sınıfıyla hazırlayın.
  • AsposeOCR sınıfıyla API örneği oluşturun.
  • RecognitionResult sınıfıyla metni tanıyın ve çıktıyı alın.

Aşağıdaki örnek kod, Java kullanarak belirli bölgeleri tanırken bir görselin nasıl metne dönüştürüleceğini açıklamaktadır:

// metinlerle dikdörtgenler hazırlayın
ArrayList rectArray = new ArrayList();
rectArray.add(new java.awt.Rectangle(138, 352, 2033, 537));
rectArray.add(new java.awt.Rectangle(147, 890, 2033, 1157));

// Tanıma ayarlarını belirleme
com.aspose.ocr.RecognitionSettings recognitionSettings = new com.aspose.ocr.RecognitionSettings();
recognitionSettings.setRecognitionAreas(rectArray);

// Resmi hazırla
com.aspose.ocr.OcrInput oi = new com.aspose.ocr.OcrInput(com.aspose.ocr.InputType.SingleImage);
oi.add("source.png");

// API örneği oluştur
com.aspose.ocr.AsposeOCR api = new com.aspose.ocr.AsposeOCR();

// Görüntüleri tanıma
ArrayList<com.aspose.ocr.RecognitionResult> results = api.Recognize(oi, recognitionSettings);
results.forEach((result) ->{
	System.out.println(result.recognitionText);
});

Ücretsiz Değerlendirme Lisansı

Herhangi bir değerlendirme kısıtlaması olmaksızın Java kullanarak görüntüleri OCR ile metne dönüştürmek için ücretsiz geçici lisans alabilirsiniz.

Kapanış

Bu blog yazısında, OCR kullanarak Java’da görüntüleri metne dönüştürmeyi araştırdık. Görüntüden metne dönüştürmeyi uygulamalarınıza sorunsuz bir şekilde entegre edebilirsiniz. İster JPG, PNG veya diğer görüntü formatlarıyla çalışıyor olun, görüntülerden metin okuma yeteneği, veri işleme ve analiz için bir dünya olasılıklar dünyasının kapılarını açar. Ancak kodu gereksinimlerinizi karşılayacak şekilde uyarlamak veya sorularınızı tartışmak istiyorsanız forum adresinden bize yazmaktan çekinmeyin.

Ayrıca bakınız