Cara menggunakan Python untuk mengenal pasti fon dalam gambar

王林
Lepaskan: 2023-08-26 09:39:31
asal
4123 orang telah melayarinya

Cara menggunakan Python untuk mengenal pasti fon dalam gambar

Cara menggunakan Python untuk melaksanakan pengecaman fon pada gambar

Pengecaman fon ialah teknologi yang menukar teks dalam gambar kepada teks yang boleh diedit. Ia mempunyai kepraktisan yang hebat dalam banyak senario aplikasi, seperti pemprosesan dokumen automatik, pengekstrakan teks, OCR, dsb. Artikel ini akan memperkenalkan cara menggunakan Python untuk mengenal pasti fon pada imej dan memberikan contoh kod yang sepadan.

  1. Persediaan
    Pertama, kita perlu memasang beberapa perpustakaan Python yang diperlukan. Masukkan arahan berikut pada baris arahan untuk memasang:

    pip install pytesseract
    pip install pillow
    Salin selepas log masuk

    Antaranya, pytesseract ialah perpustakaan Python berdasarkan enjin Tesseract-OCR, digunakan untuk mengenal pasti teks dalam imej Bantal adalah perpustakaan pemprosesan imej yang biasa digunakan dalam Python, digunakan untuk memproses imej.

  2. Prapemprosesan imej
    Sebelum pengecaman fon, kita perlu melakukan beberapa prapemprosesan pada imej untuk meningkatkan ketepatan pengecaman fon.

Pertama, baca imej dan lakukan pemprosesan skala kelabu:

from PIL import Image

image = Image.open('image.jpg')
gray_image = image.convert('L')
Salin selepas log masuk

Tukar imej kepada skala kelabu kerana dalam imej skala kelabu, kontras antara teks dan latar belakang lebih jelas, yang membantu meningkatkan ketepatan pengecaman.

Kemudian, kita boleh binarize imej, iaitu memproses teks dalam imej menjadi hitam dan latar belakang menjadi putih.

threshold = 150
binary_image = gray_image.point(lambda p: p > threshold and 255)
Salin selepas log masuk

Ambang di sini ialah ambang, yang dilaraskan mengikut kecerahan gambar.

Seterusnya, kita boleh melakukan beberapa pemprosesan pengurangan hingar pada imej untuk mengeluarkan bunyi yang mengganggu.

from PIL import ImageFilter

denoised_image = binary_image.filter(ImageFilter.MinFilter)
Salin selepas log masuk

MinFilter adalah penapis nilai minima yang boleh melicinkan bunyi dalam gambar.

Akhir sekali, kami boleh menyimpan imej yang telah diproses dan memaparkannya:

denoised_image.save('processed_image.jpg')
denoised_image.show()
Salin selepas log masuk

Di atas adalah langkah-langkah prapemprosesan imej Kami boleh menghantar imej yang telah diproses ke enjin pengecaman fon untuk pengekstrakan teks.

  1. Pengecaman Fon
    Pengecaman fon sangat mudah menggunakan perpustakaan pytesseract. Kami hanya perlu menggunakan imej yang diproses sebagai input dan memanggil fungsi yang sepadan.

    import pytesseract
    
    text = pytesseract.image_to_string(denoised_image, lang='eng')
    print(text)
    Salin selepas log masuk

    Antaranya, denoised_image ialah imej yang diproses dalam langkah sebelumnya, dan parameter lang mewakili bahasa teks yang diiktiraf, yang lalai kepada bahasa Inggeris.

  2. Contoh kod penuh
    Berikut ialah contoh kod Python lengkap untuk pengecaman fon pada gambar:

    from PIL import Image, ImageFilter
    import pytesseract
    
    # 图片预处理
    image = Image.open('image.jpg')
    gray_image = image.convert('L')
    threshold = 150
    binary_image = gray_image.point(lambda p: p > threshold and 255)
    denoised_image = binary_image.filter(ImageFilter.MinFilter)
    denoised_image.save('processed_image.jpg')
    denoised_image.show()
    
    # 字体识别
    text = pytesseract.image_to_string(denoised_image, lang='eng')
    print(text)
    Salin selepas log masuk

Ringkasan
Artikel ini memperkenalkan cara menggunakan Python untuk pengecaman fon pada gambar dan menyediakan contoh kod yang sepadan. Dengan prapemprosesan dan memanggil perpustakaan pytesseract, kami boleh mengekstrak teks dengan mudah dan cepat daripada imej dan melaksanakan pemprosesan teks seterusnya. Pengecaman fon mempunyai prospek aplikasi yang luas dalam aplikasi praktikal Saya harap pengenalan dalam artikel ini akan membantu pembaca.

Atas ialah kandungan terperinci Cara menggunakan Python untuk mengenal pasti fon dalam gambar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan