“TextSnatcher” untuk Menyalin Teks dari Gambar di Desktop Linux
(github.com/RajSolai)- TextSnatcher adalah aplikasi OCR untuk menyalin teks di dalam gambar dengan cepat di Linux; pengguna dapat menyeret area gambar untuk melakukan pengenalan karakter lalu menempelkan hasilnya
- Fitur utamanya mencakup dukungan multibahasa, menyalin teks dari gambar, menyeret di atas gambar apa pun lalu menempelkan hasilnya, serta penggunaan yang cepat dan mudah
- Untuk pengenalan karakter, aplikasi ini menggunakan Tesseract OCR 4.x, dan menyediakan tautan ke dokumentasi Tesseract serta proyek Tesseract
- Distribusi tersedia melalui Flathub dan AppCenter elementary OS; untuk membangun sendiri, digunakan prosedur instalasi berbasis Meson dan Ninja
- Untuk menjalankan aplikasi diperlukan scrot, tesseract-ocr, dan data bahasa Tesseract; proyek saat ini menyatakan akan kembali bulan depan dengan pembaruan dan perbaikan
Apa yang Dilakukan TextSnatcher
- TextSnatcher adalah aplikasi Linux untuk menyalin teks dari gambar dan melakukan pekerjaan OCR dalam hitungan detik
- Pengguna dapat menyeret area di atas gambar untuk menyalin teks lalu menempelkannya
- Fitur yang disediakan:
-
Dukungan multibahasa
- Menyalin teks dari gambar dengan menyeret area
- Menyeret di atas gambar apa pun lalu menempelkan hasilnya
- Penggunaan yang cepat dan mudah
-
Mesin OCR dan Proyek Terkait
- TextSnatcher menggunakan Tesseract OCR 4.x untuk pengenalan karakter
- Sebagai referensi terkait, disediakan dokumentasi Tesseract dan Tesseract-Project
Instalasi dan Jalur Distribusi
Dependensi dan Build
- Dependensi runtime yang diperlukan saat menjalankan aplikasi:
- scrot
- tesseract-ocr
- Data bahasa Tesseract
- Menyediakan tautan ke repositori Arch dan repositori Debian
- Dependensi build-time yang diperlukan saat build:
- granite
- gtk+-3.0
- gobject-2.0
- gdk-pixbuf-2.0
- libhandy-1
- libportal-0.5
- Untuk build dan menjalankannya sendiri, alurnya adalah meng-clone repositori, membuat direktori build Meson, menginstal dengan Ninja, lalu menjalankan
com.github.rajsolai.textsnatcher
Status Pengembangan dan Sumber
- Proyek ini menyertakan badge yang menyatakan bahwa proyek dibuat dengan Vala
- README menyebutkan bahwa saat ini pengembang sedang mengumpulkan dana untuk membeli PC Linux, dan proyek akan segera kembali bulan depan dengan pembaruan dan perbaikan
- Hal-hal yang disebut sebagai inspirasi adalah README Planner, struktur aplikasi Develop, dan aplikasi macOS TextSniper
1 komentar
Komentar Hacker News
Menggunakan skrip seperti Dibby053; setelah mengambilnya dari Stack Overflow, sedikit dimodifikasi agar berjalan di KDE/GNOME dan Wayland/X11, serta menampilkan status saat ini lewat notifikasi
Deteksi X11/Wayland belum saya uji sendiri, tetapi silakan mencobanya dan beri tahu hasilnya
spectacledalam mode latar belakang supaya jendela tidak muncul setelah tangkapan layarCaranya merangkai
grim,slurp,mogrify,tesseract,wl-copy, lalu memilih bahasa OCR denganfuzzelMemilih bahasa dengan
dmenudan memprosesnya sepertimaim -us | tesseract --dpi 145 -l eng+${lang} - - | xsel -bihttps://news.ycombinator.com/item?id=33704483#33705272
trap "cleanup '$SCR_IMG'" EXIT, tetapi dalam kasus ini komentarnya tidak sepenuhnya salahPerintah yang diberikan ke
trapumumnya dievaluasi sehingga ekspansi variabel terjadi, dantrap 'cleanup "$SCR_IMG"' EXITbekerja lebih amanJika memakai Bash terbaru,
trap "cleanup ${SCR_IMG@Q}" EXITjuga bisa menjadi pilihanbash -c 'flameshot gui -s -r | tesseract - - | gxmessage -title "Decoded Data" -fn "Consolas 12" -wrap -geometry 640x480 -file -'Tekan Super+O lalu seret area yang ingin di-OCR, dan teks yang ditangkap langsung muncul sebagai dialog pop-up
Skrip yang dulu saya salin dari suatu tempat melakukan pekerjaan ini dengan cukup baik
Caranya menangkap area dengan
scrot, melakukan praproses hitam-putih dan pembesaran denganmogrify, lalu mengekstrak teks dengantesseract, memasukkannya ke clipboard denganxsel, dan menampilkan notifikasiscrotBerkat opsi
--nodrag, saat memilih area dengan trackpad cukup klik sekali, pindahkan kursor, lalu klik lagi, jadi lebih nyamanPada
maim -s --nodrag --quality=10 $IMG.png,10setara dengan100padascrotPraproses pembesaran juga tidak terasa banyak bedanya, dan saya tidak yakin praproses seperti apa yang akan membuatnya lebih baik
Saya penasaran apakah TextSnatcher punya peningkatan dibanding ini, tetapi halaman GitHub-nya tidak jelas
Maaf untuk rekan-rekan yang hidup di antara Unix dan Windows
trap "rm $IMG*" EXIT, sebaiknya lihat https://www.shellcheck.net/wiki/SC2064Lebih baik memakai
mktemp -ddan menghapus direktori secara rekursifMengikat skrip ke pintasan keyboard jauh lebih baik daripada harus menekan jendela yang punya tombol
Untuk sesama orang biasa yang memakai Windows, fitur ini juga ada di add-on resmi Microsoft PowerToys
Ini juga sudah masuk ke alat tangkapan layar bawaan, tetapi menurut saya satu pintasan keyboard dari PowerToys lebih enak dipakai
https://github.com/microsoft/PowerToys
Tekan WIN+SHIFT+S, dan jika tidak ada ikon “Text actions”, perbarui ke versi terbaru lewat Windows Store
Saya sudah lama penasaran, tetapi tidak tahu apakah Tesseract benar-benar solusi paling mutakhir dan terbaik di bidang ini
Secara pengalaman terasa cukup kurang, dan sekitar 2019 saya merasa pengenalan teks semestinya sudah menjadi masalah yang pada dasarnya terselesaikan jika melihat kemajuan computer vision
Rasanya harus bisa lebih baik daripada manusia, tetapi bahkan pindaian struk beresolusi rendah pun tidak bisa dikonversi dengan akurat, terutama jika bukan bahasa Inggris
Mungkin saya saja yang tidak menggunakannya dengan benar
Saya penasaran tepatnya Anda menggunakannya dengan cara seperti apa
Saya melihat Tesseract makin sering disebut
Saat mencobanya pada makalah ilmiah yang dipindai 10–15 tahun lalu, hasilnya mengecewakan, dan pascaproses manualnya tidak jauh lebih sedikit daripada mengetik sendiri
Jadi bagi saya Tesseract menjadi sinonim dari “tidak layak dicoba”, tetapi mungkin sudah membaik seiring waktu, jadi sepertinya layak dicoba lagi
Untuk pengenalan umum yang mencakup font aneh atau kualitas gambar buruk, EasyOCR memberi hasil yang jauh lebih baik
Di dalamnya memakai Tesseract, dan hasilnya benar-benar bagus
15 tahun lalu perlu cukup banyak praproses agar mendapat hasil yang setidaknya tidak terlalu buruk, tetapi sekarang saya mendapat hasil bagus bahkan tanpa praproses
Saya sudah mencobanya langsung dan bekerja cukup baik
Karena ini aplikasi Flatpak, ia membutuhkan desktop portal agar berfungsi sepenuhnya, tetapi pada konfigurasi
xdg-desktop-portal-wlryang sudah ada, semuanya berjalan lancar tanpa pengaturan tambahanSepertinya akan berjalan tanpa masalah di lingkungan X11 atau Wayland yang memiliki pengaturan
xdg-desktop-portaldengan dukungan Screenshot APIHasilnya memang tidak konsisten, tetapi tidak buruk; untuk teks yang terbaca bersih, masalahnya hanya seputar spasi atau sesekali kesalahan, jadi bisa berguna saat menyalin teks dari tempat seperti dialog error
Namun di Linux, teks pada dialog error sering kali sejak awal memang bisa dipilih, dan MessageBox standar di Windows merespons Ctrl+C
Saya memakai Frog sebagai aplikasi serupa, dan sejauh ini sangat berhasil
https://getfrog.app
.deb, dan tidak ada brewDi macOS ada utilitas yang melakukan lebih dari sekadar membuka dokumen di Preview lalu mencoba memilih teks
https://github.com/schappim/macOCR
Saya suka pembuatnya
Setelah itu gambar bisa dihapus lewat ikon tempat sampah di kanan atas, dan Cmd-A juga berfungsi
Contoh yang saya coba untuk komentar ini ada di sini: https://imgur.com/a/q0NvcS6
Di iOS, saya membuat solusi serupa dengan Shortcut yang dihubungkan ke Action Button
Di sebagian aplikasi, menyalin teks tidak mudah atau teksnya berbahasa asing; jadi Shortcut ini mengambil screenshot, mengekstrak teks, lalu otomatis mendeteksi bahasa aslinya dan menerjemahkannya ke bahasa Inggris, kemudian menampilkan teks asli dan terjemahan di Quick View agar bisa dipilih dan disalin
Contoh implementasinya bisa dicoba di sini: https://www.icloud.com/shortcuts/f420d24e4960415da1a43f230abfce39
Sebagai catatan, di iOS terbaru Anda juga bisa membuka foto di aplikasi Photos, lalu memilih dan menyalin teks di dalam foto dengan jari
Saya mencobanya dengan menekan tombol share pada gambar lalu memakai share sheet, dan berfungsi; tetapi jika situasinya memang sudah mengirimkan gambar, langkah screenshot menjadi redundan
Meski disebut “untuk Linux Desktop”, ini adalah Flatpak, dan tidak semua distro Linux menyediakan Flatpak secara bawaan
Saya berencana mencobanya sekali di VM Fedora; saya sudah melihat banyak alat seperti ini, dan kebanyakan memanfaatkan Tesseract
Pada gambar yang kasar atau banyak noise, atau saat hurufnya melengkung atau miring, hasilnya gagal cukup parah, dan tidak bisa memecahkan CAPTCHA
https://tesseract-ocr.github.io/tessdoc/Home.html
Lebih tepatnya, artinya pembuatnya tidak membuat paket untuk distro Anda, dan belum ada orang lain yang meluangkan waktu serta motivasi untuk memaketkannya
Maintainer yang sedang dicari itu bisa saja Anda
Kalau yang tersedia hanya
.deb, orang bisa bilang ini tidak bisa dipakai di luar Ubuntu/Debian, dan itu kekurangan yang jauh lebih besar