Di atas tentang pertukaran stack TeX, kami telah mendiskusikan bagaimana mendeteksi "sungai" dalam paragraf dalam pertanyaan ini .
Dalam konteks ini, sungai adalah pita ruang putih yang dihasilkan dari penyelarasan tak sengaja dari ruang kata dalam teks. Karena ini bisa sangat mengganggu pembaca, sungai yang buruk dianggap sebagai gejala tipografi yang buruk. Contoh teks dengan sungai adalah yang ini, di mana ada dua sungai yang mengalir secara diagonal.
Ada minat dalam mendeteksi sungai-sungai ini secara otomatis, sehingga mereka dapat dihindari (mungkin dengan mengedit teks secara manual). Raphink membuat beberapa kemajuan pada level TeX (yang hanya tahu posisi mesin terbang dan kotak pembatas), tapi saya merasa yakin bahwa cara terbaik untuk mendeteksi sungai adalah dengan beberapa pemrosesan gambar (karena bentuk mesin terbang sangat penting dan tidak tersedia untuk TeX) . Saya telah mencoba berbagai cara untuk mengekstrak sungai dari gambar di atas, tetapi ide sederhana saya untuk menerapkan sedikit ellipsoidal blurring tampaknya tidak cukup baik. Saya juga mencoba beberapa RadonHough mengubah pemfilteran berdasarkan, tapi saya juga tidak berhasil. Sungai-sungai sangat terlihat oleh sirkuit pendeteksian fitur mata / retina / otak manusia dan entah bagaimana saya akan berpikir ini dapat diterjemahkan ke beberapa jenis operasi penyaringan, tetapi saya tidak dapat membuatnya berfungsi. Ada ide?
Untuk lebih spesifik, saya mencari beberapa operasi yang akan mendeteksi 2 sungai pada gambar di atas, tetapi tidak memiliki terlalu banyak deteksi positif palsu lainnya.
EDIT: endolith bertanya mengapa saya mengejar pendekatan berbasis pemrosesan gambar mengingat bahwa di TeX kita memiliki akses ke posisi mesin terbang, jarak, dll, dan mungkin akan jauh lebih cepat dan lebih dapat diandalkan untuk menggunakan algoritma yang memeriksa teks yang sebenarnya. Alasan saya melakukan sesuatu dengan cara lain adalah karena bentuknyadari mesin terbang dapat mempengaruhi seberapa terlihat sungai, dan pada tingkat teks sangat sulit untuk mempertimbangkan bentuk ini (yang tergantung pada font, ligaturing, dll). Untuk contoh bagaimana bentuk mesin terbang dapat menjadi penting, pertimbangkan dua contoh berikut, di mana perbedaan di antara mereka adalah bahwa saya telah mengganti beberapa mesin terbang dengan yang hampir sama lebarnya, sehingga analisis berbasis teks akan mempertimbangkan mereka sama-sama baik / buruk. Perhatikan, bagaimanapun, bahwa sungai-sungai dalam contoh pertama jauh lebih buruk daripada yang kedua.
ImageLines[]
dari Mathematica, dengan dan tanpa beberapa preprocessing. Saya kira ini secara teknis menggunakan transformasi Hough daripada Radon. Saya tidak akan terkejut jika preprocessing yang tepat (saya tidak mencoba filter dilasi yang disarankan datageist) dan / atau pengaturan parameter dapat membuat ini berfungsi.