Python'da Görüntüleri Çarpıtmak | Python'da Görüntü Eğrilik Düzeltmesi

Görüntülerdeki eğik içeriği doğru şekilde hizalamanın bir yolunu arıyorsanız doğru yere geldiniz. Bu yazımızda Python kullanarak görüntü işlemede çarpıklık düzeltme işleminin nasıl yapılacağını öğreneceğiz. Python’da çarpıklık düzeltmenin temelleri konusunda size yol göstereceğiz. Bir görüntüdeki çarpıklığın nasıl tespit edileceğini, çarpıklık açısının nasıl hesaplanacağını ve Python kullanarak görsellerinizi programlı olarak nasıl çarpıtacağınızı ele alacağız.

Bu makale aşağıdaki konuları kapsamaktadır:

  1. Görüntü Eğrilik Düzeltmesi
  2. Python Eğrilik Düzeltme API’si
  3. Python’da Eğrilik Tespiti
  4. Otomatik Eğrilik Düzeltme
  5. Görüntüleri Manuel Olarak Çarpıklık Giderme
  6. Eğrilik Düzeltme - Ücretsiz Kaynaklar

Görüntü Eğim Düzeltmesi

Görüntü işlemede çarpıklık düzeltme, aynı zamanda çarpıklık olarak da bilinir, eğik veya çarpık bir görüntüyü görsel olarak daha çekici ve üzerinde çalışılması daha kolay hale getirmek için hizalama işlemidir. Aşağıdaki resimde gösterildiği gibi, hatalı tarama, perspektif bozulması veya kameranın yanlış hizalanması gibi çeşitli nedenlerden dolayı eğrilik meydana gelebilir:

Çarpık Görüntü

Kaynak görsel.

Görsellerin Çarpıklığını Düzeltmek için Python API’si

Aspose.OCR, Python dahil çeşitli programlama dillerindeki taranmış görüntüler, akıllı telefon fotoğrafları, ekran görüntüleri, görüntünün alanları ve taranmış PDF’ler üzerinde OCR gerçekleştirilmesine olanak tanıyan, yaygın olarak kullanılan bir OCR kitaplığıdır. Eğrilik düzeltmeleri için Aspose.OCR for Python via .NET API’sini kullanacağız.

Lütfen konsolda aşağıdaki pip komutunu kullanarak paketi indirin veya PyPI’den API’yi yükleyin:

pip install aspose-ocr-python-net

Python’da Eğim Açısını Algılama

Aşağıdaki adımları izleyerek bir görseldeki metnin çarpıklık açısını kolaylıkla tespit edebiliriz:

  1. AsposeOCR sınıfının bir örneğini oluşturun.
  2. OcrInput sınıfının bir nesnesini başlatın.
  3. Görüntüyü OcrInput tanıma grubuna ekleyin.
  4. Accountskew() yöntemini çağırın. Görüntü yolunu argüman olarak alır.
  5. Hesaplanan eğim açısını gösterin.

Aşağıdaki örnek kod Python’da bir görüntünün eğrilik açısının nasıl tespit edileceğini gösterir.

import aspose.ocr as ocr

# Aspose.OCR API'sini örneklendirin
api = ocr.AsposeOcr()

# Tanıma grubuna resim ekle
img = ocr.OcrInput(ocr.InputType.SINGLE_IMAGE)
img.add("D:\\Files\\source.png")

# Eğim açısını tespit et
angles = api.calculate_skew(img);
for angle in angles:
    print("File: " + angle.source)
    print(f"Skew angle: {angle.angle:.1f}\xb0")
File: D:\Files\source.png
Skew angle: 5.8°

Python’da Otomatik Eğiklik Düzeltme

Aşağıdaki adımları izleyerek otomatik eğrilik düzeltmeyi etkinleştirebilir ve düzeltilen görüntüyü kaydedebiliriz:

  1. AsposeOCR sınıfının bir örneğini oluşturun.
  2. PreprocessingFilter sınıfının bir nesnesini başlatın.
  3. autoskew() filtresini ekleyin.
  4. Bundan sonra görüntüyü tanıma grubuna ekleyin ve OcrInput sınıfını kullanarak bir işleme filtresi uygulayın.
  5. Son olarak, işlenen görüntüyü belirtilen yol klasörüne kaydetmek için ImageProcessing.save() yöntemini çağırın.

Aşağıdaki örnek kod, Python’da bir ön işleme filtresiyle otomatik eğrilik düzeltmesinin nasıl uygulanacağını gösterir.

import aspose.ocr as ocr

# Aspose.OCR API'sini örneklendirin
api = ocr.AsposeOcr()

# Görüntü işlemeyi başlat
filters = ocr.models.preprocessingfilters.PreprocessingFilter()
filters.add(filters.auto_skew())

# Tanıma grubuna resim ekleyin ve işleme filtresini uygulayın
img = ocr.OcrInput(ocr.InputType.SINGLE_IMAGE, filters)
img.add("D:\\Files\\source.png")

# İşlenen görüntüyü "sonuç" klasörüne kaydedin
ocr.ImageProcessing.save(img, "D:\\Files\\Output\\")
Python'da Filtre ile Otomatik Eğrilik Düzeltme

Python’da Filtre ile Otomatik Eğrilik Düzeltme.

Python’da Görüntülerin Eğriliğini Manuel Olarak Düzeltme

Manuel eğim düzeltmesi için aşağıdaki adımları takip ederek eğim açısını manuel olarak tanımlayabiliriz:

  1. AsposeOCR sınıfının bir örneğini oluşturun.
  2. PreprocessingFilter sınıfının bir nesnesini başlatın.
  3. Rotate() filtresini ekleyin.
  4. Bundan sonra görüntüyü tanıma grubuna ekleyin ve OcrInput sınıfını kullanarak bir işleme filtresi uygulayın.
  5. Son olarak, işlenen görüntüyü belirtilen yol klasörüne kaydetmek için ImageProcessing.save() yöntemini çağırın.

Aşağıdaki örnek kod, Python’da görüntülerin manuel olarak nasıl düzeltileceğini gösterir.

import aspose.ocr as ocr

# Aspose.OCR API'sini örneklendirin
api = ocr.AsposeOcr()

# Görüntü işlemeyi başlat
filters = ocr.models.preprocessingfilters.PreprocessingFilter()
filters.add(ocr.models.preprocessingfilters.PreprocessingFilter.rotate(5.8))

# Tanıma grubuna resim ekleyin ve işleme filtresini uygulayın
img = ocr.OcrInput(ocr.InputType.SINGLE_IMAGE, filters)
img.add("D:\\Files\\source.png")

# İşlenen görüntüyü "sonuç" klasörüne kaydedin
ocr.ImageProcessing.save(img, "D:\\Files\\Output\\")

Ücretsiz Lisans Alın

Aspose.OCR for Python’u değerlendirme sınırlaması olmadan .NET aracılığıyla denemek için ücretsiz bir geçici lisans alabilirsiniz.

Eğrilik Düzeltme - Ücretsiz Kaynaklar

Python’da görüntü eğriliği düzeltmesini uygulamanın yanı sıra, aşağıdaki kaynakları kullanarak Python OCR API’sini daha fazla keşfedebilirsiniz:

Çözüm

Bu yazıda Python’daki görüntü eğriliği düzeltmeyi kullanarak eğimli görüntülerin nasıl doğru şekilde hizalanacağını öğrendik. Otomatik yöntemi kullanarak ve döndürme açısını manuel olarak ayarlayarak görüntülerin çarpıklığının nasıl düzeltileceğini gördük. .NET aracılığıyla Aspose.OCR for Python’dan yararlanarak böyle bir özelliği Python uygulamalarınıza kolayca dahil edebilirsiniz. Herhangi bir belirsizlik durumunda lütfen ücretsiz destek forumumuz üzerinden bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız