Perpustakaan OCR Swift Percuma untuk Melakukan OCR pada Imej Diimbas & PDF
Perpustakaan Pengenalan Aksara Optik (OCR) Swift Sumber Terbuka membolehkan mengimbas, mengenali, dan mengekstrak teks dari Foto Kamera, Imej Diimbas & PDF secara percuma dalam iOS dan macOS
Apakah SwiftyTesseract?
SwiftyTesseract ialah perpustakaan OCR sumber terbuka terkemuka yang direka khusus untuk ekosistem Swift, memberi kuasa kepada pembangun perisian untuk mengintegrasikan pengenalan aksara optik yang canggih ke dalam aplikasi iOS dan macOS mereka dengan lancar. Dengan memanfaatkan enjin OCR Tesseract yang kuat dan terbukti dalam industri, ia menyediakan antara muka Swift yang intuitif dan teratur untuk mengekstrak teks dengan tepat daripada imej, dokumen diimbas, dan pelbagai media digital. Ini menjadikannya asas yang ideal bagi pembangun yang membina segala-galanya dari utiliti bacaan teks ringkas hingga alat pemprosesan data kompleks yang memerlukan kemampuan mengimbas dan mengenali teks yang boleh dipercayai dalam persekitaran Apple.
Perpustakaan ini mempermudah integrasi OCR dengan membungkus fungsi Tesseract ke dalam API yang mudah dan mesra pembangun. Ia menawarkan kebolehsuaian yang meluas terus dari permulaan, termasuk sokongan kukuh untuk pelbagai bahasa—ciri penting untuk mencipta aplikasi antarabangsa. Untuk memastikan ketepatan tinggi, SwiftyTesseract menggabungkan keupayaan pra-pemprosesan imej yang penting yang meningkatkan kejelasan teks sebelum pengenalan. Selain itu, pembangun mengekalkan kawalan terperinci dengan menyesuaikan pilihan konfigurasi Tesseract utama, seperti mod enjin OCR dan mod segmentasi halaman. Gabungan kemudahan penggunaan, sokongan berbilang bahasa, dan kebolehsuaian mendalam menjadikan SwiftyTesseract alat yang unik, serba boleh, dan berkuasa bagi pembangun perisian yang menangani pelbagai projek pengenalan teks.
Mula Menggunakan SwiftyTesseract
Cara yang disarankan untuk memasang SwiftyTesseract ialah menggunakan CocoaPods. Sila gunakan perintah berikut untuk pemasangan yang lancar.
Pasang SwiftyTesseract melalui CocoaPods
pod 'SwiftyTesseract' Anda juga boleh memasangnya secara manual; muat turun fail pelepasan terkini secara langsung dari GitHub repositori.
Lakukan OCR pada Imej melalui Perpustakaan Swift
Perpustakaan SwiftyTesseract sumber terbuka memudahkan pembangun perisian memuatkan pelbagai jenis imej dan melakukan operasi OCR mengikut keperluan mereka dalam aplikasi Swift. Anda boleh menggunakan imej daripada aset aplikasi anda atau mana-mana sumber lain. Perpustakaan ini boleh mengenali teks dalam pelbagai fon, termasuk Serif, Arial, Sans-serif, dan fon skrip. Berikut ialah contoh kod yang menunjukkan bagaimana pembangun perisian dapat mengenali teks daripada imej dalam aplikasi Swift.
Bagaimana untuk Mengenali Teks daripada Imej dalam Aplikasi Swift?
import SwiftyTesseract
// Load the image
let image = UIImage(named: "image.jpg")!
// Create a Tesseract instance
let tesseract = Tesseract()
// Set the language to English
tesseract.language = "eng"
// Set the image
tesseract.image = image
// Recognize the text
tesseract.recognize() { result in
if let text = result.text {
print("Recognized text: \(text)")
} else {
print("Error recognizing text")
}
}
Sokongan Pra-pemprosesan Imej
Perpustakaan SwiftyTesseract menyediakan sokongan lengkap untuk pra-pemprosesan imej sebelum melakukan operasi OCR dalam aplikasi Swift. Sebagai contoh, anda boleh menukar imej kepada skala kelabu, mengubah saiz, atau menyesuaikan kontras, meluruskan imej, binarisasi dan sebagainya. Berikut ialah contoh yang menunjukkan bagaimana pembangun boleh mengubah saiz imej sebelum melakukan OCR. Dalam contoh kod ini, resizeImage mengubah saiz imej sebelum diproses, yang boleh membantu apabila bekerja dengan imej beresolusi tinggi.
Bagaimana untuk Pra-pemprosesan Imej sebelum Operasi OCR dalam Aplikasi Swift?
func resizeImage(_ image: UIImage, newSize: CGSize) -> UIImage? {
UIGraphicsBeginImageContextWithOptions(newSize, false, 0.0)
image.draw(in: CGRect(origin: .zero, size: newSize))
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage
}
if let resizedImage = resizeImage(image, newSize: CGSize(width: 300, height: 300)) {
tesseract.performOCR(on: resizedImage) { recognizedText in
print("Resized Image OCR result: \(recognizedText ?? "No text found")")
}
}
Operasi OCR Berbilang Bahasa melalui Perpustakaan Swift
Perpustakaan SwiftyTesseract sumber terbuka menyokong pengenalan teks dalam lebih 100 bahasa, termasuk Bahasa Inggeris, Sepanyol, Perancis, Jerman, Cina, dan banyak lagi. Anda boleh menetapkan bahasa pilihan anda semasa memulakan perpustakaan. Ciri ini meluaskan skop aplikasi untuk pengguna antarabangsa dan keperluan pemprosesan berbilang bahasa. Selain itu, pembangun boleh membuat kamus tersuai untuk meningkatkan ketepatan proses OCR. Berikut ialah contoh mengkonfigurasi perpustakaan untuk Bahasa Inggeris dan Sepanyol. Kod ini membolehkan OCR dalam kedua-dua Bahasa Inggeris dan Sepanyol, yang berguna ketika memproses dokumen dengan kandungan berbilang bahasa.
Bagaimana untuk Memilih Bahasa bagi Operasi OCR Berbilang Bahasa dalam Aplikasi Swift?
let tesseract = SwiftyTesseract(language: [.english, .spanish])
Parameter OCR Boleh Disuaikan
Dengan menggunakan perpustakaan SwiftyTesseract sumber terbuka, pembangun perisian mempunyai keupayaan untuk menyesuaikan tetapan OCR bagi meningkatkan ketepatan untuk jenis dokumen atau bahasa tertentu. Ia membolehkan pembangun menala proses OCR, menjadikan perpustakaan boleh disesuaikan untuk senario OCR yang unik atau kompleks. Ini termasuk keupayaan untuk menentukan bahasa dan pembolehubah OCR berdasarkan keperluan dokumen. Di bawah ialah contoh yang menunjukkan bagaimana pembangun boleh menyesuaikan mod enjin OCR dan mod segmentasi halaman.
Bagaimana untuk Menyesuaikan Mod Enjin OCR dan Mod Segmentasi Halaman melalui API Swift?
let tesseract = SwiftyTesseract(language: .english, engineMode: .lstmOnly)
tesseract.performOCR(on: image, configuration: [.psm(.auto)]) { recognizedString in
if let recognizedString = recognizedString {
print("Recognized text with custom PSM: \(recognizedString)")
}
}