PaddleOCR: OCR Tahap Industri untuk Pengekstrakan Teks Pelbagai Bahasa
Kesan dan kenali teks dari imej dan dokumen dengan ketepatan dan kelajuan tinggi
Apa itu PaddleOCR API?
PaddleOCR Python API ialah toolkit berkuasa dan mudah digunakan untuk tugas pengiktirafan aksara optik (OCR), direka untuk membantu pembangun mengekstrak dan menganalisis teks dari imej dengan ketepatan tinggi. Dibina atas rangka kerja pembelajaran mendalam PaddlePaddle, PaddleOCR menyokong pelbagai bahasa dan menampilkan model pra-latihan untuk pengesanan teks, pengiktirafan, dan analisis susun atur. Dengan antara muka Python yang intuitif, pengguna boleh mengintegrasikan keupayaan OCR ke dalam aplikasi mereka dengan pantas, sama ada untuk pendigitalan dokumen, pengekstrakan teks dari foto, atau pemprosesan data automatik. PaddleOCR Python API sesuai untuk sesiapa yang ingin melaksanakan penyelesaian OCR teguh dengan penyediaan minimum dan fleksibiliti maksimum.
Kelebihan utama PaddleOCR:
- Sokongan pelbagai bahasa: Model pra-latihan untuk 100+ bahasa (termasuk Cina, Inggeris, Arab dll.)
- Ketepatan tinggi: Model siri PP-OCR mencapai penanda aras terbaik pada set data ICDAR
- Proses lengkap: Dari pengesanan teks hingga pengiktirafan dan analisis susun atur
- Model ringan: Dioptimumkan untuk peranti mudah alih dan edge (cth. PP-OCRv3)
Dari dokumen yang discan hingga papan tanda jalan, PaddleOCR mengekstrak teks dengan ketepatan terkemuka industri.
Mengapa Pilih PaddleOCR?
- Kecemerlangan sumber terbuka: 30,000+ bintang GitHub dan sumbangan komuniti aktif
- Pelaksanaan serbaguna: Menyokong Python, C++ dan platform mudah alih (Android/iOS)
- Analisis susun atur: Mengenal pasti kawasan teks, jadual dan gambar dalam dokumen kompleks
- Kemas kini berterusan: Keluaran model berkala (cth. PP-OCRv4)
- Mesra komersial: Lesen Apache 2.0 untuk penggunaan perusahaan
Pemasangan
PaddleOCR memerlukan Python 3.7+ dan boleh dipasang melalui pip. Sokongan GPU memerlukan CUDA/cuDNN.
Pemasangan Asas
pip install paddleocr paddlepaddle #Versi CPU
Untuk pecutan GPU:
Sokongan GPU
pip install paddleocr paddlepaddle-gpu #Memerlukan CUDA 10.2+
Nota: Model pra-latihan akan dimuat turun secara automatik pada penggunaan pertama atau manual melalui paddleocr --lang en
.
Contoh Kod
Terokai keupayaan PaddleOCR dengan contoh-contoh ini. Semua menganggap anda telah memasang model bahasa Inggeris.
Contoh 1: OCR Asas
Untuk mengekstrak teks dari imej menggunakan PaddleOCR dengan model lalai, anda hanya perlu memulakan enjin OCR dengan konfigurasi standard, yang termasuk sokongan untuk bahasa Inggeris dan klasifikasi sudut untuk meningkatkan ketepatan. PaddleOCR menggunakan model pengesanan, pengiktirafan dan klasifikasi pra-latihan untuk mengenal pasti dan mentafsir teks dari imej input. Setelah imej diproses, enjin OCR mengembalikan teks yang dikesan bersama kedudukannya dan skor keyakinan untuk setiap hasil. Persediaan ini menyediakan cara pantas dan cekap untuk mengekstrak kandungan teks dari imej tanpa memerlukan latihan model tersuai atau konfigurasi kompleks.
OCR Imej
from paddleocr import PaddleOCR
ocr = PaddleOCR(use_angle_cls=True, lang='en') # Permulaan
result = ocr.ocr('image.jpg', cls=True) # Proses imej
# Cetak teks yang dikenali
for line in result:
print(line[-1][0]) # Kandungan teks
Output termasuk:
- Kandungan teks dan skor keyakinan
- Koordinat kotak sempadan
Contoh 2: Pemprosesan Batch
Untuk memproses berbilang imej dengan cekap menggunakan PaddleOCR, anda boleh memanfaatkan teknik pemprosesan batch yang meminimumkan permulaan berlebihan dan mengoptimumkan prestasi. Daripada memulakan enjin OCR untuk setiap imej, adalah disyorkan untuk mencipta satu contoh model OCR dan menggunakannya semula untuk semua input imej. Pendekatan ini mengurangkan masa pemprosesan dan penggunaan sumber dengan ketara. Dengan menyediakan senarai laluan imej ke enjin OCR dalam gelung atau menggunakan pemprosesan selari (apabila sesuai), anda boleh mengekstrak teks dengan pantas dan berkesan dari set imej yang besar, menjadikannya ideal untuk aliran kerja yang melibatkan batch dokumen, arkib yang discan atau analisis imej pukal.
OCR Batch
image_paths = ['doc1.jpg', 'doc2.png']
results = ocr.ocr(image_paths, batch_size=4) # Pemprosesan selari
Contoh 3: Analisis Susun Atur
PaddleOCR boleh digunakan bukan sahaja untuk mengenali teks tetapi juga untuk mengenal pasti kawasan teks tertentu dan mengesan elemen berstruktur seperti jadual dalam imej. Sistem ini terlebih dahulu mencari kawasan teks melalui model pengesanannya, yang menggariskan setiap kawasan teks dengan kotak sempadan, membolehkan pengguna memahami kedudukan teks dalam imej. Untuk susun atur yang lebih kompleks seperti borang atau dokumen yang mengandungi jadual, PaddleOCR menyokong analisis susun atur dan pengiktirafan struktur jadual. Ini membolehkan pengesanan baris, lajur dan sempadan sel, menjadikannya mungkin untuk mengekstrak data jadual dalam format teratur. Keupayaan sedemikian amat berguna untuk pendigitalan dokumen yang discan, invois atau hamparan di mana teks bentuk bebas dan data jadual wujud bersama.
Pengesanan Susun Atur
from paddleocr import PPStructure
structure_engine = PPStructure(table=False, ocr=False)
layout_result = structure_engine('document.pdf')
Ciri Lanjutan
PaddleOCR menyokong aliran kerja kompleks:
- Latihan tersuai: Halusi model pada data anda:
Latihan Model
python tools/train.py -c configs/det/det_mv3_db.yml
- Pencampuran pelbagai bahasa: Proses dokumen berbilang bahasa:
OCR Pelbagai Bahasa
ocr = PaddleOCR(lang='chinese+english')
- Sokongan PDF: Pengekstrakan teks terus dari PDF:
Pemprosesan PDF
result = ocr.ocr('document.pdf', type='pdf')
Kesimpulan
PaddleOCR menyediakan OCR siap pengeluaran dengan sokongan pelbagai bahasa dan kebolehskalaan yang tiada tandingan. Sesuai untuk:
- Pendigitalan dokumen: PDF discan, invois, resit
- Aplikasi pelbagai bahasa: Pengiktirafan pasport, buku pelbagai bahasa
- Pelaksanaan edge: Apl mudah alih dengan OCR pada peranti
Disokong oleh ekosistem pembelajaran mendalam PaddlePaddle, PaddleOCR terus menetapkan piawaian dalam ketepatan dan kecekapan OCR.