Dalam tantangan 2014 , Michael Stern menyarankan menggunakan OCR untuk menguraikan hingga 2014. Saya ingin mengambil tantangan ini ke arah yang berbeda. Dengan menggunakan OCR bawaan dari perpustakaan bahasa / standar pilihan Anda, rancang gambar terkecil (dalam byte) yang diuraikan ke dalam string ASCII "2014".
Gambar asli Stern adalah 7357 byte, tetapi dengan sedikit usaha itu dapat dikompresi hingga 980 byte. Tidak diragukan lagi versi hitam-putih (181 byte) juga berfungsi dengan kode yang sama.
Aturan: Setiap jawaban harus memberikan gambar, ukurannya dalam byte, dan kode yang diperlukan untuk memprosesnya. Tidak diizinkan OCR khusus, untuk alasan yang jelas ...! Semua bahasa dan format gambar yang masuk akal diizinkan.
Sunting: Sebagai tanggapan terhadap komentar, saya akan memperluas ini untuk menyertakan pustaka yang sudah ada sebelumnya, atau bahkan http://www.free-ocr.com/ untuk bahasa-bahasa di mana OCR tidak tersedia.
sumber
Jawaban:
Shell (ImageMagick, Tesseract), 18 byte
Gambar adalah 18 byte dan dapat direproduksi seperti ini:
Sepertinya ini (ini adalah salinan PNG, bukan yang asli):
Setelah diproses dengan ImageMagick, tampilannya seperti ini:
Menggunakan ImageMagick versi 6.6.9-7, Tesseract versi 3.02. Gambar PBM dibuat di Gimp dan diedit dengan hex editor.
Versi ini membutuhkan
jp2a
.Ini menghasilkan sesuatu seperti ini:
sumber
Java + Tesseract, 53 byte
Karena saya tidak memiliki Mathematica, saya memutuskan untuk sedikit
membengkokkan aturan danmenggunakan Tesseract untuk melakukan OCR. Saya menulis sebuah program yang menerjemahkan "2014" menjadi sebuah gambar, menggunakan berbagai font, ukuran, dan gaya, dan menemukan gambar terkecil yang diakui sebagai "2014". Hasil tergantung pada font yang tersedia.Inilah pemenangnya di komputer saya - 53 byte, menggunakan font "URW Gothic L":
Kode:
sumber
Mathematica
753100Kasus terbaik saya sejauh ini:
sumber
Mathematica, 78 byte
Trik untuk memenangkan ini di Mathematica mungkin akan menggunakan fungsi ImageResize [] seperti di bawah ini.
Pertama, saya membuat teks "2014" dan menyimpannya ke file GIF, untuk perbandingan yang adil dengan solusi David Carraher. Teksnya seperti . Ini tidak dioptimalkan dengan cara apa pun; hanya Jenewa dalam ukuran font kecil; font lain dan ukuran yang lebih kecil dimungkinkan. Straight TextRecognize [] akan gagal, tetapi TextRecognize [ImageResize []]] tidak memiliki masalah
Meributkan dengan jenis huruf, ukuran font, tingkat penskalaan, dll., Mungkin akan menghasilkan file yang lebih kecil yang berfungsi.
sumber