OCR sudah di zoom dan di crop, caranya memetakan frame pengenalan kembali ke teks aslinya
Bingkai yang dikembalikan oleh OCR akurat pada gambar lokal, namun keseluruhan bingkai tidak aktif saat ditarik kembali ke PDF. Jangan ragukan mesin pengenalannya terlebih dahulu, periksa urutan preprocessingnya: apakah dipotong terlebih dahulu, kemudian diperbesar, lalu diisi dengan batas putih? Setiap langkah mengubah koordinatnya, dan pemetaan terbalik harus dibatalkan dalam urutan terbalik.
Bingkai pengenalan yang dikembalikan oleh OCR mungkin akurat pada gambar lokal, namun keseluruhan gambar mungkin salah saat ditarik kembali ke PDF. Masalah seperti ini sangat umum terjadi. Saat memecahkan masalah, Anda tidak perlu meragukan mesin pengenalannya terlebih dahulu. Anda juga harus memeriksa tautan prapemrosesan. Artikel ini ditulis untuk pengembang dan peninjau yang perlu memetakan hasil pengenalan kembali ke dokumen sumber.
Banyak gambar yang dipotong, diskalakan, dan diisi dengan tepi putih sebelum dikenali. Setiap langkah mengubah koordinatnya, sehingga pemetaan terbalik harus dibatalkan dalam urutan terbalik. Setelah membaca artikel ini, Anda dapat menggunakan serangkaian ide transformasi koordinat yang jelas untuk menemukan penyebab ketidaksejajaran, dan menggunakan pengujian bolak-balik dan titik jangkar buatan untuk memverifikasi hasilnya.
Kode contoh telah diperiksa di lingkungan yang terisolasi, namun ini bukan jaminan atas semua file atau kinerja produk yang sebenarnya. Harap simpan dokumen asli sebelum menangani dokumen penting.
Apa yang harus saya lakukan jika kotak OCR tidak cocok dengan dokumen sumber? Kesimpulan satu kalimat
Pertama periksa urutan prapemrosesan, catat transformasi koordinat setiap langkah, lalu lakukan pemetaan terbalik dalam urutan terbalik.
| situasi Anda | Praktik yang direkomendasikan | alasan |
|---|---|---|
| Bingkai pengenalan akurat pada peta lokal dan diimbangi setelah digambar kembali ke PDF. | Periksa apakah akan memotong terlebih dahulu, lalu menskalakan, lalu mengisi tepinya | Setiap langkah akan mengubah koordinat |
| Rasio skala gambar horizontal dan vertikal berbeda | Simpan proporsi horizontal dan vertikal secara terpisah | Meregangkan sesuka hati akan mengubah bentuk teks |
| Gambar diputar atau perspektif dikoreksi | Petakan empat titik sudut dan pertahankan segi empatnya, atau simpan transformasi homografinya | Persegi panjang dua titik tidak dapat menyatakan hasilnya |
| Lokasi sumber perlu ditampilkan pada antarmuka | Terima rekaman transformasi koordinat bersama dengan kontennya | Menyorot baris yang salah akan membuat terjemahan yang benar terlihat tidak dapat diandalkan |
Gunakan transformasi eksplisit daripada menebak offset
Dengan asumsi sebuah titik pada grafik, pertama-tama kurangi titik asal kliping, lalu kalikan dengan rasio skala, lalu tambahkan sisi tambahannya. Proses sebaliknya adalah dengan mengurangi tepi tambahan terlebih dahulu, kemudian membaginya dengan proporsinya, dan terakhir menambahkannya kembali ke titik asal pemotongan.
- Maju: Kurangi asal pemangkasan → kalikan dengan rasio skala → tambahkan tepi tambahan
- Terbalik: Kurangi tepi tambahan → Hapus penskalaan → Tambahkan kembali asal pemotongan
Jika rasio horizontal dan vertikal berbeda, maka harus disimpan secara terpisah. Hal ini juga mengingatkan kita bahwa meregangkan gambar sesuka hati akan mengubah bentuk teks.
Biarkan tes perjalanan pulang pergi mencakup koordinat non-integer
from math import isclose
origin = (100.0, 40.0)
scale = (2.0, 1.5)
padding = (8.0, 12.0)
def forward(point):
return tuple((point[i] - origin[i]) * scale[i] + padding[i]
for i in range(2))
def inverse(point):
if any(s <= 0 for s in scale):
raise ValueError("positive scale required")
return tuple((point[i] - padding[i]) / scale[i] + origin[i]
for i in range(2))
for point in [(100, 40), (125.5, 62.25), (200, 90)]:
restored = inverse(forward(point))
assert all(isclose(a, b) for a, b in zip(point, restored))
assert forward((100, 40)) == padding
assert inverse((58, 42)) == (125.0, 60.0)
Contoh ini hanya memverifikasi perhitungan geometris dan tidak melakukan OCR. Pengambilan sampel ulang gambar melibatkan pusat piksel dan konvensi pembulatan, dan pemetaan batas nyata memerlukan koordinat kontinu terpadu atau semantik batas piksel.
Jangan membulatkan koordinat floating point sebelum waktunya, dan menanganinya sesuai aturan yang jelas saat menggambar.
Kotak tidak selalu hanya memiliki dua titik
Transformasi yang berbeda perlu menyimpan informasi yang berbeda, dan tindakan pencegahan saat memetakan juga berbeda:
| mengubah | perlu menyimpan | Memetakan perhatian |
|---|---|---|
| Tanaman | Pengimbangan asal | Versi mana dari gambar asli yang sedang dipulihkan? |
| Zoom | Proporsi horizontal dan vertikal | Mencegah pembagian bilangan bulat kehilangan presisi |
| Putar | Pusat rotasi dan matriks | Setelah memetakan keempat sudut, pertahankan segi empat |
| Koreksi perspektif | Transformasi monoton | Dua persegi panjang tidak cukup untuk mengekspresikan hasilnya |
Verifikasi dan Tampilan Tautan Menggunakan Anchor Manual
Tandai titik sudut yang diketahui pada beberapa sampel yang sudah didesensitisasi dan periksa apakah gambar asli cocok setelah pra-pemrosesan. Jika Anda lulus tes satuan matematika, hanya beberapa kesalahan perhitungan yang dapat dihilangkan; Rotasi halaman, zoom tampilan, dan sistem koordinat PDF masih dapat memperkenalkan bias baru.
Penyorotan Bilingual Membutuhkan Lokasi yang Terpercaya
Saat membuat alat proofreading di sekitar terjemahan OmniDoc (Entri Produk), jika lokasi sumber akan ditampilkan, tautan koordinat harus diterima bersama dengan tautan konten. Menyorot baris yang salah membuat terjemahan yang benar terasa tidak dapat diandalkan. Menyimpan catatan transformasi lebih mudah dikelola daripada kompensasi sementara di bagian depan.
Untuk detail tentang antarmuka pemetaan piksel, lihat Ukuran gambar bantal dan antarmuka transformasi.
📊 Perbandingan Inti
Perbandingan metode verifikasi:
| Metode verifikasi | Apa yang bisa ditemukan? | Keterbatasan |
|---|---|---|
| Tes satuan matematika | Beberapa perhitungan salah | Tidak dapat menimpa rotasi halaman, zoom tampilan, dan sistem koordinat PDF |
| Verifikasi titik jangkar secara manual | Setelah pra-pemrosesan, periksa apakah gambar asli telah dipulihkan | Sampel yang sudah didesensitisasi dan anotasi manual diperlukan |
Perbandingan metode pemrosesan koordinat:
| Metode penanganan | Keunggulan | Penjelasan |
|---|---|---|
| Pertahankan catatan transformasi | Lebih mudah dirawat | Tautan koordinat dapat dilacak |
| Kompensasi sementara di bagian depan | Perubahannya tampak sederhana | Biaya pemeliharaan lebih tinggi |
🎯 Metode mana yang cocok untukmu?
Jika kamu ......
- Kenali kotak untuk penyelarasan lokal atau offset halaman penuh: pertama periksa urutan pemotongan, skala, dan pemangkasan, lalu membalik peta dengan urutan terbalik.
- Menangani koordinat non-bilangan bulat: pertama-tama verifikasi rumus dengan pengujian pulang-pergi, sementara tidak membulatkan naik, lalu satukan aturan saat mengunci.
- Lakukan penyorotan dwibahasa atau lokasi sumber: Periksa tautan koordinat dan tautan konten secara bersamaan, serta simpan catatan transformasi.
- Melibatkan koreksi rotasi atau perspektif: Jangan hanya menyimpan persegi panjang dua titik; beralih ke pemetaan empat sudut atau menyimpan transformasi suku kata.
❓ Pertanyaan yang Sering Diajukan (FAQ)
1. Apakah Anda perlu mengganti mesin pengenalan terlebih dahulu?
Tidak perlu meragukan mesin dulu. Anda harus terlebih dahulu memeriksa urutan pra-pemrosesan, karena pemangkasan, skala, dan pemutihan akan mengubah koordinat.
2. Apakah lulus tes satuan matematika menjamin pemetaan itu benar?
Tidak. Hanya dapat menyingkirkan beberapa kesalahan perhitungan; rotasi halaman, skala tampilan, dan sistem koordinat PDF masih dapat memperkenalkan bias baru.
3. Mengapa tidak disarankan untuk membulatkan koordinat terlalu awal?
Resampling gambar melibatkan pusat piksel dan konvensi pembulatan. Koordinat floating-point harus dipertahankan terlebih dahulu, lalu ditangani sesuai aturan yang jelas saat penggambaran.
4. Apa yang terjadi ketika sebuah gambar diregangkan?
Jika rasio aspek berbeda, sebaiknya disimpan secara terpisah. Peregangan sembarang mengubah bentuk teks dan memengaruhi korespondensi antara kotak pengenalan dan isi dokumen.
📝 Ringkasan
Ketidakselarasan kotak OCR biasanya berasal dari tautan prapemrosesan, bukan hasil pengenalan itu sendiri. Setiap langkah transformasi harus dicatat dengan jelas, dan baik pengujian pulang-pergi maupun titik jangkar manual dapat digunakan untuk penerimaan bersama guna memastikan posisi yang disorot dapat dipercaya.
Rasakan sekarang: Unggah dokumen Anda untuk mulai menerjemahkan, mempertahankan format asli


