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 file Bitmap (BMP), andalan di ranah pencitraan digital, berfungsi sebagai metode yang mudah namun serbaguna untuk menyimpan gambar digital dua dimensi, baik monokrom maupun berwarna. Sejak awal bersama Windows 3.0 di akhir tahun 1980-an, format BMP telah dikenal luas karena kesederhanaan dan kompatibilitasnya yang luas, didukung oleh hampir semua lingkungan Windows dan banyak aplikasi non-Windows. Format gambar ini khususnya dikenal karena tidak adanya kompresi dalam bentuknya yang paling dasar, yang meskipun menghasilkan ukuran file yang lebih besar dibandingkan dengan format lain seperti JPEG atau PNG, memfasilitasi akses dan manipulasi data gambar dengan cepat.
File BMP terdiri dari header, tabel warna (untuk gambar warna terindeks), dan data bitmap itu sendiri. Header, komponen utama format BMP, berisi metadata tentang gambar bitmap, seperti lebar, tinggi, kedalaman warna, dan jenis kompresi yang digunakan, jika ada. Tabel warna, hanya ada pada gambar dengan kedalaman warna 8 bit per piksel (bpp) atau kurang, berisi palet warna yang digunakan dalam gambar. Data bitmap mewakili nilai piksel aktual yang menyusun gambar, di mana setiap piksel dapat didefinisikan secara langsung oleh nilai warnanya atau merujuk ke warna dalam tabel.
Header file BMP dibagi menjadi tiga bagian utama: Header File Bitmap, Header Informasi Bitmap (atau header DIB), dan, dalam kasus tertentu, bagian bit mask opsional untuk menentukan format piksel. Header File Bitmap dimulai dengan pengenal 2 byte ('BM'), yang diikuti oleh ukuran file, bidang yang dicadangkan (biasanya disetel ke nol), dan offset ke awal data piksel. Ini memastikan sistem yang membaca file tahu cara mengakses data gambar aktual secara langsung, terlepas dari ukuran header.
Setelah Header File Bitmap adalah Header Informasi Bitmap, yang memberikan informasi terperinci tentang gambar. Bagian ini mencakup ukuran header, lebar dan tinggi gambar dalam piksel, jumlah bidang (selalu disetel ke 1 dalam file BMP), bit per piksel (yang menunjukkan kedalaman warna gambar), metode kompresi yang digunakan, ukuran data mentah gambar, dan resolusi horizontal dan vertikal dalam piksel per meter. Banyaknya data ini memastikan bahwa gambar dapat direproduksi secara akurat pada perangkat atau perangkat lunak apa pun yang mampu membaca file BMP.
Kompresi dalam file BMP dapat mengambil beberapa bentuk, meskipun format ini paling sering dikaitkan dengan gambar yang tidak dikompresi. Untuk gambar 16 dan 32-bit, metode kompresi seperti BI_RGB (tidak dikompresi), BI_BITFIELDS (yang menggunakan bit mask untuk menentukan format warna), dan BI_ALPHABITFIELDS (yang menambahkan dukungan untuk saluran transparansi alfa) tersedia. Metode ini memungkinkan penyimpanan gambar kedalaman warna tinggi yang efisien tanpa kehilangan kualitas yang signifikan, meskipun metode ini lebih jarang digunakan dibandingkan format tidak terkompresi yang lebih umum.
Tabel warna dalam file BMP memainkan peran penting saat menangani gambar 8 bpp atau kurang. Ini memungkinkan gambar-gambar ini menampilkan berbagai warna sekaligus mempertahankan ukuran file yang kecil dengan menggunakan warna terindeks. Setiap entri dalam tabel warna mendefinisikan satu warna, dan data bitmap untuk gambar hanya merujuk ke entri ini daripada menyimpan seluruh nilai warna untuk setiap piksel. Metode ini sangat efisien untuk gambar yang tidak memerlukan spektrum warna penuh, seperti ikon atau grafik sederhana.
Namun, sementara file BMP dihargai karena kesederhanaan dan kualitas gambar yang mereka pertahankan, mereka juga datang dengan kelemahan yang mencolok. Kurangnya kompresi yang efektif untuk banyak variannya berarti bahwa file BMP dapat dengan cepat menjadi tidak praktis dalam ukuran, terutama ketika berhadapan dengan gambar resolusi tinggi atau kedalaman warna. Hal ini dapat membuat mereka tidak praktis untuk penggunaan web atau aplikasi apa pun di mana penyimpanan atau bandwidth menjadi perhatian. Selain itu, format BMP tidak secara asli mendukung transparansi (dengan pengecualian kompresi BI_ALPHABITFIELDS yang lebih jarang digunakan) atau lapisan, yang membatasi kegunaannya dalam proyek desain grafis yang lebih kompleks.
Selain fitur standar format BMP, ada beberapa varian dan ekstensi yang telah dikembangkan selama bertahun-tahun untuk meningkatkan kemampuannya. Salah satu ekstensi penting adalah kompresi 4-bit per piksel (4bpp) dan 8bpp, yang memungkinkan kompresi dasar tabel warna untuk mengurangi ukuran file gambar warna terindeks. Ekstensi penting lainnya adalah kemampuan untuk menyimpan metadata dalam file BMP, menggunakan Blok Spesifik Aplikasi (ASB) dari header file. Fitur ini memungkinkan penyertaan informasi tambahan arbitrer seperti kepengarangan, hak cipta, dan data pembuatan gambar, yang memberikan fleksibilitas yang lebih besar dalam penggunaan file BMP untuk tujuan manajemen dan pengarsipan digital.
Pertimbangan teknis untuk pengembang perangkat lunak yang bekerja dengan file BMP melibatkan pemahaman nuansa struktur format file dan penanganan berbagai kedalaman bit dan jenis kompresi dengan tepat. Misalnya, membaca dan menulis file BMP memerlukan penguraian header dengan benar untuk menentukan dimensi gambar, kedalaman warna, dan metode kompresi. Pengembang juga harus mengelola tabel warna secara efektif saat menangani gambar warna terindeks untuk memastikan bahwa warna direpresentasikan secara akurat. Selain itu, pertimbangan harus diberikan pada endianness sistem, karena format BMP menentukan urutan byte little-endian, yang mungkin memerlukan konversi pada sistem big-endian.
Mengoptimalkan file BMP untuk aplikasi tertentu dapat melibatkan pemilihan kedalaman warna dan metode kompresi yang sesuai untuk penggunaan gambar yang dimaksudkan. Untuk grafik cetak berkualitas tinggi, menggunakan kedalaman warna yang lebih tinggi tanpa kompresi mungkin lebih disukai untuk mempertahankan kualitas gambar maksimum. Sebaliknya, untuk ikon atau grafik di mana ukuran file menjadi perhatian yang lebih penting, menggunakan warna terindeks dan kedalaman warna yang lebih rendah dapat secara drastis mengurangi ukuran file sekaligus tetap mempertahankan kualitas gambar yang dapat diterima. Selain itu, pengembang perangkat lunak dapat mengimplementasikan algoritme kompresi khusus atau menggunakan pustaka eksternal untuk lebih mengurangi ukuran file gambar BMP untuk aplikasi tertentu.
Meskipun munculnya format file yang lebih canggih seperti JPEG, PNG, dan GIF, yang menawarkan kompresi superior dan fitur tambahan seperti transparansi dan animasi, format BMP tetap relevan karena kesederhanaannya dan kemudahan yang dapat dimanipulasi secara terprogram. Dukungannya yang luas di berbagai platform dan perangkat lunak juga memastikan bahwa file BMP tetap menjadi pilihan umum untuk tugas pencitraan sederhana dan untuk aplikasi di mana reproduksi gambar dengan fidelitas tertinggi diperlukan.
Sebagai kesimpulan, format file BMP, dengan sejarahnya yang kaya dan utilitas yang berkelanjutan, mewakili landasan pencitraan digital. Strukturnya, yang mengakomodasi data warna terkompresi yang tidak terkompresi dan sederhana, memastikan kompatibilitas dan kemudahan akses. Meskipun format yang lebih baru telah membayangi BMP dalam hal kompresi dan fitur canggih, kesederhanaan format BMP, universalitas, dan kurangnya batasan paten membuatnya tetap relevan dalam berbagai konteks. Bagi siapa pun yang terlibat dalam pencitraan digital, baik pengembang perangkat lunak, desainer grafis, atau penggemar, memahami format BMP sangat penting untuk menavigasi kompleksitas manajemen dan manipulasi gambar digital.
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.