Pengenalan Karakter Optik (OCR) mengubah gambar teks—pindaian, foto ponsel cerdas, PDF—menjadi string yang dapat dibaca mesin dan, semakin, data terstruktur. OCR modern adalah alur kerja yang membersihkan gambar, menemukan teks, membacanya, dan mengekspor metadata yang kaya sehingga sistem hilir dapat mencari, mengindeks, atau mengekstrak bidang. Dua standar output yang banyak digunakan adalah hOCR, sebuah format mikro HTML untuk teks dan tata letak, dan ALTO XML, sebuah skema berorientasi perpustakaan/arsip; keduanya mempertahankan posisi, urutan baca, dan isyarat tata letak lainnya dan didukung oleh mesin populer seperti Tesseract.
Pra-pemrosesan. Kualitas OCR dimulai dengan pembersihan gambar: konversi skala abu-abu, penghilangan noise, thresholding (binerisasi), dan deskewing. Tutorial OpenCV kanonik mencakup global, adaptif dan Otsu thresholding—pokok untuk dokumen dengan pencahayaan tidak seragam atau histogram bimodal. Ketika iluminasi bervariasi dalam satu halaman (pikirkan jepretan telepon), metode adaptif seringkali mengungguli ambang batas global tunggal; Otsu secara otomatis memilih ambang batas dengan menganalisis histogram. Koreksi kemiringan sama pentingnya: deskewing berbasis Hough (Transformasi Garis Hough) yang dipasangkan dengan binerisasi Otsu adalah resep umum dan efektif dalam alur kerja pra-pemrosesan produksi.
Deteksi vs. pengenalan. OCR biasanya dibagi menjadi deteksi teks (di mana teksnya ?) dan pengenalan teks (apa isinya?). Dalam pemandangan alam dan banyak pindaian, detektor konvolusional sepenuhnya seperti EAST secara efisien memprediksi kuadrilateral tingkat kata atau baris tanpa tahap proposal yang berat dan diimplementasikan dalam toolkit umum (misalnya, tutorial deteksi teks OpenCV). Pada halaman yang kompleks (koran, formulir, buku), segmentasi baris/wilayah dan inferensi urutan baca penting:Kraken mengimplementasikan segmentasi zona/garis tradisional dan segmentasi baseline saraf, dengan dukungan eksplisit untuk berbagai skrip dan arah (LTR/RTL/vertikal).
Model pengenalan. Kuda beban open-source klasik Tesseract (sumber terbuka oleh Google, dengan akar di HP) berevolusi dari pengklasifikasi karakter menjadi pengenal urutan berbasis LSTM dan dapat menghasilkan PDF yang dapat dicari, output ramah hOCR/ALTO, dan lainnya dari CLI. Pengenal modern mengandalkan pemodelan urutan tanpa karakter yang telah disegmentasi sebelumnya. Klasifikasi Temporal Connectionist (CTC) tetap menjadi dasar, mempelajari penyelarasan antara urutan fitur input dan string label output; ini banyak digunakan dalam alur kerja tulisan tangan dan teks pemandangan.
Dalam beberapa tahun terakhir, Transformer telah membentuk kembali OCR. TrOCR menggunakan encoder Vision Transformer plus decoder Text Transformer, dilatih pada korpora sintetis besar kemudian disesuaikan dengan data nyata, dengan kinerja yang kuat di seluruh tolok ukur cetak, tulisan tangan, dan teks pemandangan (lihat juga Dokumentasi Hugging Face). Secara paralel, beberapa sistem menghindari OCR untuk pemahaman hilir: Donut (Document Understanding Transformer) adalah encoder-decoder bebas OCR yang secara langsung menghasilkan jawaban terstruktur (seperti JSON kunci-nilai) dari dokumen gambar (repo, kartu model), menghindari akumulasi kesalahan saat langkah OCR terpisah memberi makan sistem IE.
Jika Anda ingin membaca teks yang disertakan dengan baterai di banyak skrip, EasyOCR menawarkan API sederhana dengan 80+ model bahasa, mengembalikan kotak, teks, dan kepercayaan—berguna untuk prototipe dan skrip non-Latin. Untuk dokumen bersejarah, Kraken bersinar dengan segmentasi baseline dan urutan baca yang sadar skrip; untuk pelatihan tingkat baris yang fleksibel, Calamari membangun di atas garis keturunan Ocropy (Ocropy) dengan pengenal (multi-)LSTM+CTC dan CLI untuk menyempurnakan model kustom.
Generalisasi bergantung pada data. Untuk tulisan tangan, Database Tulisan Tangan IAM menyediakan kalimat bahasa Inggris yang beragam penulis untuk pelatihan dan evaluasi; ini adalah set referensi yang sudah lama ada untuk pengenalan baris dan kata. Untuk teks pemandangan, COCO-Text melapisi anotasi ekstensif di atas MS-COCO, dengan label untuk cetak/tulisan tangan, terbaca/tidak terbaca, skrip, dan transkripsi penuh (lihat juga halaman proyek asli). Bidang ini juga sangat bergantung pada pra-pelatihan sintetis: SynthText in the Wild merender teks ke dalam foto dengan geometri dan pencahayaan yang realistis, menyediakan volume data yang sangat besar untuk pra-pelatihan detektor dan pengenal (referensi kode & data).
Kompetisi di bawah payung Robust Reading ICDAR menjaga evaluasi tetap membumi. Tugas-tugas terbaru menekankan deteksi/pembacaan ujung-ke-ujung dan mencakup menghubungkan kata-kata menjadi frasa, dengan pelaporan kode resmi presisi/perolehan kembali/F-score, persimpangan-atas-gabungan (IoU), dan metrik jarak edit tingkat karakter—mencerminkan apa yang harus dilacak oleh para praktisi.
OCR jarang berakhir pada teks biasa. Arsip dan perpustakaan digital lebih suka ALTO XML karena mengkodekan tata letak fisik (blok/baris/kata dengan koordinat) di samping konten, dan itu berpasangan dengan baik dengan kemasan METS. hOCR mikroformat, sebaliknya, menyematkan ide yang sama ke dalam HTML/CSS menggunakan kelas seperti ocr_line dan ocrx_word, membuatnya mudah untuk ditampilkan, diedit, dan diubah dengan perkakas web. Tesseract mengekspos keduanya—misalnya, menghasilkan hOCR atau PDF yang dapat dicari langsung dari CLI (panduan output PDF); Pembungkus Python seperti pytesseract menambahkan kenyamanan. Konverter ada untuk menerjemahkan antara hOCR dan ALTO ketika repositori memiliki standar penyerapan tetap —lihat daftar yang dikurasi ini dari alat format file OCR.
Tren terkuat adalah konvergensi: deteksi, pengenalan, pemodelan bahasa, dan bahkan decoding khusus tugas sedang bergabung menjadi tumpukan Transformer terpadu. Pra-pelatihan pada korpora sintetis besar tetap menjadi pengganda kekuatan. Model bebas OCR akan bersaing secara agresif di mana pun targetnya adalah output terstruktur daripada transkrip verbatim. Harapkan juga penerapan hibrida: detektor ringan plus pengenal gaya TrOCR untuk teks bentuk panjang, dan model gaya Donat untuk formulir dan tanda terima.
Tesseract (GitHub) · Dokumentasi Tesseract · Spesifikasi hOCR · Latar belakang ALTO · Detektor EAST · Deteksi Teks OpenCV · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · Tulisan Tangan IAM · Alat format file OCR · EasyOCR
Optical Character Recognition (OCR) adalah teknologi yang digunakan untuk mengubah berbagai jenis dokumen, seperti dokumen kertas yang telah dipindai, file PDF, atau gambar yang ditangkap oleh kamera digital, menjadi data yang dapat diedit dan dicari.
OCR bekerja dengan memindai gambar atau dokumen input, membagi gambar menjadi karakter individu, dan membandingkan setiap karakter dengan database bentuk karakter menggunakan pengenalan pola atau pengenalan fitur.
OCR digunakan dalam berbagai sektor dan aplikasi, termasuk mendigitalkan dokumen yang dicetak, mengaktifkan layanan teks-ke-suara, mengotomatisasi proses entri data, dan membantu pengguna dengan gangguan penglihatan untuk berinteraksi lebih baik dengan teks.
Meskipun telah ada kemajuan besar dalam teknologi OCR, tetapi itu tidak sempurna. Akurasi dapat bervariasi tergantung pada kualitas dokumen asli dan spesifik dari software OCR yang digunakan.
Meskipun OCR sebagian besar dirancang untuk teks cetak, beberapa sistem OCR lanjutan juga mampu mengenali tulisan tangan yang jelas dan konsisten. Namun, biasanya pengenalan tulisan tangan kurang akurat karena variasi besar dalam gaya tulisan individu.
Ya, banyak sistem software OCR dapat mengenali beberapa bahasa. Namun, penting untuk memastikan bahwa bahasa spesifik tersebut didukung oleh software yang Anda gunakan.
OCR berarti Optical Character Recognition dan digunakan untuk mengenali teks cetak, sedangkan ICR, atau Intelligent Character Recognition, lebih canggih dan digunakan untuk mengenali teks tulisan tangan.
OCR bekerja terbaik dengan font yang jelas, mudah dibaca dan ukuran teks standar. Meski bisa bekerja dengan berbagai font dan ukuran, akurasi cenderung menurun ketika berhadapan dengan font yang tidak biasa atau ukuran teks sangat kecil.
OCR bisa kesulitan dengan dokumen beresolusi rendah, font yang rumit, teks yang dicetak buruk, tulisan tangan, dan dokumen dengan latar belakang yang mengganggu teks. Juga, meskipun dapat bekerja dengan banyak bahasa, mungkin tidak mencakup setiap bahasa secara sempurna.
Ya, OCR dapat memindai teks berwarna dan latar belakang berwarna, meskipun umumnya lebih efektif dengan kombinasi warna kontras tinggi, seperti teks hitam pada latar belakang putih. Akurasi mungkin berkurang ketika warna teks dan latar belakang tidak memiliki kontras yang cukup.
Format gambar J2C, yang juga dikenal sebagai JPEG 2000 Code Stream, adalah bagian dari rangkaian standar JPEG 2000. JPEG 2000 sendiri adalah standar kompresi gambar dan sistem pengodean yang dibuat oleh komite Joint Photographic Experts Group dengan tujuan menggantikan standar JPEG asli. Standar JPEG 2000 ditetapkan dengan tujuan menyediakan sistem pengodean gambar baru dengan fleksibilitas tinggi dan kinerja yang lebih baik dari JPEG. Standar ini dirancang untuk mengatasi beberapa keterbatasan format JPEG, seperti kinerja yang buruk pada bitrate rendah dan kurangnya skalabilitas.
JPEG 2000 menggunakan transformasi wavelet yang bertentangan dengan transformasi kosinus diskrit (DCT) yang digunakan dalam standar JPEG asli. Transformasi wavelet memungkinkan tingkat skalabilitas yang lebih tinggi dan kemampuan untuk melakukan kompresi lossless, yang berarti bahwa gambar asli dapat direkonstruksi dengan sempurna dari data terkompresi. Ini adalah keuntungan yang signifikan dibandingkan kompresi lossy dari JPEG asli, yang secara permanen kehilangan beberapa informasi gambar selama proses kompresi.
Format file J2C secara khusus merujuk pada aliran kode JPEG 2000. Aliran kode ini adalah data gambar yang dikodekan sebenarnya, yang dapat disematkan dalam berbagai format wadah seperti JP2 (format file JPEG 2000 Bagian 1), JPX (JPEG 2000 Bagian 2, format file yang diperluas), dan MJ2 (format file Motion JPEG 2000 untuk video). Format J2C pada dasarnya adalah data gambar mentah yang dikodekan tanpa metadata atau struktur tambahan yang mungkin disediakan oleh format wadah.
Salah satu fitur utama dari format J2C adalah dukungannya untuk kompresi lossless dan lossy dalam file yang sama. Hal ini dicapai melalui penggunaan transformasi wavelet reversibel untuk kompresi lossless dan transformasi wavelet ireversibel untuk kompresi lossy. Pilihan antara kompresi lossless dan lossy dapat dibuat berdasarkan per-tile dalam gambar, yang memungkinkan campuran wilayah berkualitas tinggi dan berkualitas rendah tergantung pada pentingnya konten.
Format J2C juga sangat skalabel, mendukung fitur yang dikenal sebagai 'pengodean progresif'. Ini berarti bahwa versi gambar beresolusi rendah dapat didekode dan ditampilkan terlebih dahulu, diikuti oleh lapisan resolusi yang lebih tinggi secara berurutan saat lebih banyak data gambar diterima atau diproses. Ini sangat berguna untuk aplikasi jaringan di mana bandwidth mungkin terbatas, karena memungkinkan pratinjau gambar yang cepat sementara gambar beresolusi tinggi yang lengkap masih diunduh.
Aspek penting lainnya dari format J2C adalah dukungannya untuk wilayah yang diminati (ROI). Dengan pengodean ROI, bagian gambar tertentu dapat dikodekan dengan kualitas yang lebih tinggi daripada bagian gambar lainnya. Ini berguna ketika area gambar tertentu lebih penting dan perlu dipertahankan dengan fidelitas yang lebih tinggi, seperti wajah dalam potret atau teks dalam dokumen.
Format J2C juga menyertakan fitur ketahanan kesalahan yang canggih, yang membuatnya lebih kuat terhadap kehilangan data selama transmisi. Hal ini dicapai melalui penggunaan kode koreksi kesalahan dan penataan aliran kode dengan cara yang memungkinkan pemulihan paket yang hilang. Ini menjadikan J2C pilihan yang baik untuk mengirimkan gambar melalui jaringan yang tidak dapat diandalkan atau menyimpan gambar dengan cara yang meminimalkan dampak potensi kerusakan data.
Penanganan ruang warna dalam J2C juga lebih maju daripada di JPEG asli. Format ini mendukung berbagai ruang warna, termasuk skala abu-abu, RGB, YCbCr, dan lainnya. Format ini juga memungkinkan ruang warna yang berbeda untuk digunakan dalam tile yang berbeda dari gambar yang sama, memberikan fleksibilitas tambahan dalam cara gambar dikodekan dan direpresentasikan.
Efisiensi kompresi format J2C adalah salah satu kekuatannya. Dengan menggunakan transformasi wavelet dan teknik pengodean entropi tingkat lanjut seperti pengodean aritmatika, J2C dapat mencapai rasio kompresi yang lebih tinggi daripada JPEG asli, terutama pada bitrate yang lebih rendah. Ini menjadikannya pilihan yang menarik untuk aplikasi di mana ruang penyimpanan atau bandwidth sangat penting, seperti di perangkat seluler atau aplikasi web.
Meskipun memiliki banyak keunggulan, format J2C belum banyak diadopsi dibandingkan dengan format JPEG asli. Hal ini sebagian disebabkan oleh kompleksitas standar JPEG 2000 yang lebih besar, yang membutuhkan lebih banyak sumber daya komputasi untuk mengodekan dan mendekode gambar. Selain itu, format JPEG asli sangat mengakar di banyak sistem dan memiliki ekosistem dukungan perangkat lunak dan perangkat keras yang luas, sehingga sulit bagi standar baru untuk mendapatkan pijakan.
Namun, di bidang khusus tertentu, format J2C telah menjadi pilihan yang disukai karena fitur-fiturnya yang spesifik. Misalnya, dalam pencitraan medis, kemampuan untuk melakukan kompresi lossless dan dukungan untuk rentang dinamis tinggi dan gambar bit-depth tinggi menjadikan J2C format yang ideal. Demikian pula, dalam arsip sinema dan video digital, format ini sangat dihargai karena kualitasnya yang tinggi pada rasio kompresi yang tinggi dan fitur skalabilitasnya.
Proses pengodean gambar J2C melibatkan beberapa langkah. Pertama, gambar dibagi menjadi tile, yang dapat diproses secara independen. Pembagian ini memungkinkan pemrosesan paralel dan dapat meningkatkan efisiensi proses pengodean dan dekode. Setiap tile kemudian ditransformasikan menggunakan transformasi wavelet reversibel atau ireversibel, tergantung pada apakah kompresi lossless atau lossy yang diinginkan.
Setelah transformasi wavelet, koefisien dikuantisasi, yang melibatkan pengurangan presisi koefisien wavelet. Dalam kompresi lossless, langkah ini dilewati, karena kuantisasi akan menimbulkan kesalahan. Koefisien yang dikuantisasi kemudian dikodekan entropi menggunakan pengodean aritmatika, yang mengurangi ukuran data dengan memanfaatkan sifat statistik dari konten gambar.
Langkah terakhir dalam proses pengodean adalah perakitan aliran kode. Data yang dikodekan entropi untuk setiap tile digabungkan dengan informasi header yang menjelaskan gambar dan bagaimana gambar itu dikodekan. Ini termasuk informasi tentang ukuran gambar, jumlah tile, transformasi wavelet yang digunakan, parameter kuantisasi, dan data relevan lainnya. Aliran kode yang dihasilkan kemudian dapat disimpan dalam file J2C atau disematkan dalam format wadah.
Mendekode gambar J2C pada dasarnya melibatkan pembalikan proses pengodean. Aliran kode diurai untuk mengekstrak informasi header dan data yang dikodekan entropi untuk setiap tile. Data yang dikodekan entropi kemudian didekode untuk memulihkan koefisien wavelet yang dikuantisasi. Jika gambar dikompresi menggunakan kompresi lossy, koefisien kemudian dikuantisasi untuk mendekati nilai aslinya. Transformasi wavelet invers diterapkan untuk merekonstruksi gambar dari koefisien wavelet, dan tile disatukan untuk membentuk gambar akhir.
Sebagai kesimpulan, format gambar J2C adalah sistem pengodean gambar yang kuat dan fleksibel yang menawarkan beberapa keunggulan dibandingkan format JPEG asli, termasuk efisiensi kompresi yang lebih baik, skalabilitas, dan kemampuan untuk melakukan kompresi lossless. Meskipun belum mencapai tingkat penggunaan yang sama dengan JPEG, format ini sangat cocok untuk aplikasi yang memerlukan gambar berkualitas tinggi atau memiliki persyaratan teknis khusus. Seiring kemajuan teknologi dan kebutuhan akan sistem pengodean gambar yang lebih canggih, format J2C dapat melihat peningkatan adopsi di berbagai bidang.
Konverter ini berjalan sepenuhnya di browser Anda. Saat Anda memilih file, file tersebut dibaca ke dalam memori dan dikonversi ke format yang dipilih. Anda kemudian dapat mengunduh file yang telah dikonversi.
Konversi dimulai secara instan, dan sebagian besar file dikonversi dalam waktu kurang dari satu detik. File yang lebih besar mungkin membutuhkan waktu lebih lama.
File Anda tidak pernah diunggah ke server kami. File tersebut dikonversi di browser Anda, dan file yang telah dikonversi kemudian diunduh. Kami tidak pernah melihat file Anda.
Kami mendukung konversi antara semua format gambar, termasuk JPEG, PNG, GIF, WebP, SVG, BMP, TIFF, dan banyak lagi.
Konverter ini sepenuhnya gratis, dan akan selalu gratis. Karena berjalan di browser Anda, kami tidak perlu membayar server, jadi kami tidak perlu menagih Anda.
Ya! Anda dapat mengonversi file sebanyak yang Anda inginkan sekaligus. Cukup pilih beberapa file saat Anda menambahkannya.