Tesseract (ಟೆಸೆರಾಕ್ಟ್) ಮತ್ತು ಕನ್ನಡ ಓ.ಸಿ.‌ಆರ್

‍‍‍‍‍ಕಳೆದ ತಿಂಗಳಿನಿಂದ ಕನ್ನಡ ಓ.ಸಿ.‌ಆರ್ (ಆಪ್ಟಿಕಲ್ ಕ್ಯಾರೆಕ್ಟರ್ ರೆಕಗ್ನಿಷನ್) ಗಾಗಿ ಮುಕ್ತ ಮತ್ತು ಸ್ವತಂತ್ರ ತಂತ್ರಾಂಶವಾದ ಟೆಸೆ‍ರಾಕ್ಟ್‍ (https://github.com/tesseract-ocr/tesseract & https://en.wikipedia.org/wiki/Tesseract_(software)) ಬಳಸಿದ್ದು ಮತ್ತು ಅದು ಕನ್ನಡದ ಮಟ್ಟಿಗೆ ಅದ್ಭುತವಾಗಿ ಕೆಲಸ ಮಾಡುವುದನ್ನು ನನ್ನ ಫೇಸ್‌ಬುಕ್ ಮತ್ತು ಟ್ವಿಟರ್ ಖಾತೆಗಳ ಮೂಲಕ ಬರೆದಿದ್ದು ಅದಕ್ಕೆ ಸಂಬಂಧಿಸಿದಂತೆ ಒಂದಷ್ಟು ಸ್ಕ್ರೀನ್‌ಶಾಟ್‌ಗಳನ್ನು ಬಿಟ್ಟರೆ ಮತ್ತೆ ಇನ್ನೇನನ್ನೂ ಹಂಚಿಕೊಳ್ಳಲು ಸಾಧ್ಯವಾಗಿರಲಿಲ್ಲ. ಈಗ ಅದರ ಬಗ್ಗೆ ಒಂದಷ್ಟು ಬ್ಲಾಗ್ ಬರಹಗಳನ್ನು ಸೇರಿಸುವ ಕೆಲಸಕ್ಕೆ ಈ ಲೇಖನ ಮುನ್ನುಡಿ.

ಟೆಸೆರಾಕ್ಟ್ ಆವೃತ್ತಿ ೩‍ ‍&‍ ‍೪‍ ‍ರ ಫಲಿತಾಂ‍ಶಗಳ ಹೋಲಿಕೆ ‍

T‍‍‍esseract ಬಗ್ಗೆ ಹೆಚ್ಚಿಗೆ ಓದಿ ತಿಳಿಯಲು ಈ ಗಿಟ್‌ಹಬ್ ಕೊಂಡಿಗೆ ಒಮ್ಮೆ ಭೇಟಿ ಕೊಡಿ: https://github.com/tesseract-ocr/tesseract . ಇದರ ಮೂಲ ನಿರ್ಮಾತೃ ರೇ ಸ್ಮಿ‍‍ತ್‍‍ ಆಗಿದ್ದು, ಸಧ್ಯ ಗೂಗಲ್ ಸಂಸ್ಥೆಯ ‍ಮೂಲಕ ಇದರ ಅಭಿವೃದ್ಧಿಯ ಕೆಲಸ ಇವರ ಮೂಲಕವೇ ನೆಡೆದಿದೆ.  

‍ಮುಂದಿನ ಹಂತದಲ್ಲಿ, ಇದರ ಬಗ್ಗೆ ಹೆಚ್ಚಿನ ಮಾಹಿತಿಯ ಜೊತೆಗೆ ಇದನ್ನು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರಿನಲ್ಲಿ ಸ್ಥಾಪಿಸಿಕೊಂಡು ಕೆಲಸ ಮಾಡಲು ಈ ಯೋಜನೆಯ ವಿಕಿ ಪುಟಕ್ಕೆ ಹೋಗಬಹುದು: https://github.com/tesseract-ocr/tesseract/wiki

‍ಲಿನಕ್ಸ್, ವಿಂಡೋಸ್, ಮ್ಯಾಕ್ ಹೀಗೆ ಎಲ್ಲ ರೀತಿಯ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಂಗಳಲ್ಲಿ ಟೆಸೆರಾಕ್ಟ್ ಅನುಸ್ಥಾಪಿಸಿಕೊಳ್ಳಲು ಬೇಕಿರುವ ಮಾಹಿತಿ ಇದರಲ್ಲೇ ಲಭ್ಯವಿದೆ. 

‍ಸಾಮಾನ್ಯವಾಗಿ ಇಂಗ್ಲೀಷ್ ಭಾಷೆಯ ಸವಲತ್ತನ್ನು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ನೀಡುವ ಟೆಸೆರಾಕ್ಟ್‌, ಇತರೆ ಭಾಷೆಗಳ ಬೆಂಬಲವನ್ನು ಪಡೆಯಲು ಆಯಾ ಭಾಷೆಗೆ ಸಂಭಂದಿಸಿದ ‍ಟೆಸ್‌ಡೇಟಾ ಪ್ಯಾಕೇಜಿಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. : https://‍github.com/tesseract-ocr/tesseract/blob/master/doc/tesseract.1.asc#languages

‍‍‍‍ಟೆಸೆರಾಕ್ಟ್‌ ನ ೪ನೇ ಆವೃತ್ತಿ (Tesseract version 4) ಕನ್ನಡದ ಮಟ್ಟಿಗೆ ಒಂದು ಅತಿ ಮುಖ್ಯ ಬಿಡುಗಡೆ. ಶೇಕಡಾ ೯೯ ರಷ್ಟು ಉತ್ತಮ ಫಲಿತಾಂಶವನ್ನು ಇದುವರೆಗೆ ಪರೀಕ್ಷಿಸಿದ ಅನೇಕ ಗುಣಮಟ್ಟದ ಕನ್ನಡ ಪುಸ್ತಕ ಪುಟಗಳ ಸ್ಕ್ಯಾನ್‌ನಲ್ಲಿ ಪಡೆದಿದ್ದೇನೆ. ‍

‍ಹೊಸ ಆವೃತ್ತಿಯಲ್ಲಿ (ಟೆಸರಾಕ್ಟ್ ೪) LSTM neural networks (https://github.com/tesseract-ocr/tesseract/wiki/4.0-with-LSTM‍‍‍) ಬಳಕೆ, ಜೊತೆಗೆ ಕನ್ನಡದ ಟೆಸ್‌ಡೇಟಾ‌ ಅಭಿವೃದ್ಧಿಗೆ ೧೫ ಫಾಂಟುಗಳನ್ನು ಮೂಲವಾಗಿ ಬಳಸಿರುವುದನ್ನು ಆವೃತ್ತಿಯ ಬಿಡುಗಡೆ ಟಿಪ್ಪಣಿಗಳಲ್ಲಿ ಕಂಡು ಬರುತ್ತದೆ. ಟೆಸೆರಾಕ್ಟ್ ಕನ್ನಡ ಓ.ಸಿ.‌ಆರ್ ಈ ಹಿಂದೆ ನೀಡುತ್ತಿದ್ದ ಫಲಿತಾಂಶಕ್ಕೆ ಹೋಲಿಸಿದಲ್ಲಿ ಇದು ಭಾಷೆಯ ಮಟ್ಟಿ ಅಮೂಲಾಗ್ರ ಬೆಳವಣಿಗೆ. ‍‍‍

‍‍ಕನ್ನಡವೂ ಒಳಗೊಂಡಂತೆ ಟೆಸೆರಾಕ್ಟ್ ಬೆಂಬಲಿಸುವ ಭಾಷೆಗಳ ಪಟ್ಟಿ ಇಂತಿದೆ:

afr (Afrikaans), amh (Amharic), ara (Arabic), asm (Assamese), aze (Azerbaijani), aze_cyrl (Azerbaijani – Cyrilic), bel(Belarusian), ben (Bengali), bod (Tibetan), bos (Bosnian), bre (Breton), bul (Bulgarian), cat (Catalan; Valencian), ceb(Cebuano), ces (Czech), chi_sim (Chinese – Simplified), chi_tra (Chinese – Traditional), chr (Cherokee), cym (Welsh),dan (Danish), deu (German), dzo (Dzongkha), ell (Greek, Modern (1453-)), eng (English), enm (English, Middle (1100-1500)), epo (Esperanto), equ (Math / equation detection module), est (Estonian), eus (Basque), fas (Persian), fin(Finnish), fra (French), frk (Frankish), frm (French, Middle (ca.1400-1600)), gle (Irish), glg (Galician), grc (Greek, Ancient (to 1453)), guj (Gujarati), hat (Haitian; Haitian Creole), heb (Hebrew), hin (Hindi), hrv (Croatian), hun (Hungarian), iku(Inuktitut), ind (Indonesian), isl (Icelandic), ita (Italian), ita_old (Italian – Old), jav (Javanese), jpn (Japanese), kan(Kannada), kat (Georgian), kat_old (Georgian – Old), kaz (Kazakh), khm (Central Khmer), kir (Kirghiz; Kyrgyz), kor(Korean), kor_vert (Korean (vertical)), kur (Kurdish), kur_ara (Kurdish (Arabic)), lao (Lao), lat (Latin), lav (Latvian), lit(Lithuanian), ltz (Luxembourgish), mal (Malayalam), mar (Marathi), mkd (Macedonian), mlt (Maltese), mon (Mongolian),mri (Maori), msa (Malay), mya (Burmese), nep (Nepali), nld (Dutch; Flemish), nor (Norwegian), oci (Oc‍citan (post 1500)),ori (Oriya), osd (Orientation and script detection module), pan (Panjabi; Punjabi), pol (Polish), por (Portuguese), pus(Pushto; Pashto), que (Quechua), ron (Romanian; Moldavian; Moldovan), rus (Russian), san (Sanskrit), sin (Sinhala; Sinhalese), slk (Slovak), slv (Slovenian), snd (Sindhi), spa (Spanish; Castilian), spa_old (Spanish; Castilian – Old), sqi(Albanian), srp (Serbian), srp_latn (Serbian – Latin), sun (Sundanese), swa (Swahili), swe (Swedish), syr (Syriac), tam(Tamil), tat (Tatar), tel (Telugu), tgk (Tajik), tgl (Tagalog), tha (Thai), tir (Tigrinya), ton (Tonga), tur (Turkish), uig (Uighur; Uyghur), ukr (Ukrainian), urd (Urdu), uzb (Uzbek), uzb_cyrl (Uzbek – Cyrilic), vie (Vietnamese), yid (Yiddish), yor(Yoruba)‍

‍‍‍‍

‍‍‍

‍‍‍ಟೆಸೆರಾಕ್ಟ್ ಅಥವಾ ಇನ್ಯಾವುದೇ ಮುಕ್ತ ಮತ್ತು ಸ್ವತಂತ್ರ ತಂತ್ರಾಂಶಗಳನ್ನು ಬಳಸಲು ಹೇಳುವುದಕ್ಕೆ ಮುನ್ನ, ಸಾಮಾನ್ಯರು ಅದನ್ನು ಬಳಸುವುದು ಹೇಗೆ? ಅದರಲ್ಲೂ ಮುಖ್ಯವಾಗಿ ಲಿನಕ್ಸ್ ಹೊರಗೆ ಕೆಲಸ ಮಾಡುವ ವಿಂಡೋಸ್ ಬಳಕೆದಾರರಿಗೆ ಬಳಕೆಯ ಸಾಧ್ಯತೆಯ ಬಗ್ಗೆ ಅರಿವು ಮೂಡಿಸುವುದು ಒಂದು ಬಾರೀ ಪ್ರಶ್ನೆಯೇ ಸರಿ. ‍‍‍‍‍‍ ‍ಇದಕ್ಕೆ ಉತ್ತರ ಎಂಬಂತೆ‍,‍ ‍ಟೆಸೆರಾಕ್ಟ್ ಅನ್ನು ಸುಲಭವಾಗಿ ಬಳಸಲು ಎಣೆಮಾಡುವ ಅನೇಕ ಖಾಸಗೀ ‍ತಂತ್ರಾಂ‍ಶಗಳನ್ನು ಇಲ್ಲಿ ಪಟ್ಟಿ ಮಾಡಲಾಗಿದೆ‍:‍ ‍https://github.com/tesseract-ocr/tesseract/wiki/User-Projects-%E2%80%93-3rdParty‍.

‍‍‍‍ ಇದರಲ್ಲಿ ತುಂಬಾ ‍ಸುಲಭ ಅನಿಸಿದ್ದು, ‍ಪಿಡಿಎಫ್ ಓ‍ಸಿಆರ್ ‍ಎಕ್ಸ್ ಎಂಬ ವಿಂಡೋಸ್ ಮತ್ತು ಮ್ಯಾಕ್‌ನ ಆವೃತ್ತಿ. ಇದನ್ನು https://solutions.weblite.ca/pdfocrx/index.php‍ ‍ಮೂಲಕ ಪಡೆಯ ಬಹುದು.

ಪಿಡಿಎಫ್ ಓ‍ಸಿಆರ್ ಎಕ್ಸ್ ಬಳಕೆ ಮತ್ತು ಫಲಿತಾಂ‍ಶದ ಉದಾಹರಣೆ

‍‍‍‍‍‍‍ಲಿನಕ್ಸ್ ಬಳಕೆದಾರರಿಗೆ ಮೇಲೆ ಹೇಳಿದಂತೆ ಸುಲಭ ಇನ್ಸ್ಟಾಲೇಕ್ಷನ್ ಮಾಹಿತಿ ಯೋಜ‍ನಾ ‍ಪುಟದಲ್ಲಿ ಲಭ್ಯವಿದೆ. ಉಬುಂಟುವಿನಲ್ಲಿ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಲು ಈ ಆಜ್ಞೆಗಳನ್ನು ಬಳಸಬಹುದು. ‍

sudo apt install tesseract-ocr
sudo apt install libtesseract-dev
sudo apt install tesseract-ocr-kan

‍ನಂತರ, ನೀವು ಸ್ಕ್ಯಾನ್ ಮಾಡಿದ ಪುಟಗಳ ಸ್ಕ್ಯಾನ್ ಇಮೇಜನ್ನು tif, jpeg, png ಮಾದರಿಗಳಲ್ಲಿ ನೇರವಾಗಿ ಟೆಸರಾಕ್ಟ್ ಗೆ ಉಣಿಸಿ, ಕನ್ನಡದ ಅಥವಾ ಕನ್ನಡ + ಇನ್ಯಾವುದಾದರೂ ಭಾಷೆ ಉದಾ: ಕನ್ನಡ + ಇಂಗ್ಲೀಷ್ ಫಲಿರಾಂಶಗಳನ್ನು ಪಡೆದುಕೊಳ್ಳಬಹುದು. 

ಉಬುಂಟುವಿನಲ್ಲಿ ನಾನು ಬಳಸುವ ಆಜ್ಞೆ ಹೀಗಿದೆ: (example_input.png ಮೂಲ ಚಿತ್ರ, example_out.txt ಫಲಿತಾಂಶದ ಕಡತ, -l ಮೂರು ಅಕ್ಷರದ ಭಾಷೆಯ )

t‍esseract example_input.png example_output.txt -l kan

ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಭಾಷೆಯ ಮಾಹಿತಿ ಕಡತದಲ್ಲಿದ್ದರೆ, ಅದನ್ನು ಈ ಕೆಳಕಂಡಂತೆ ಓಸಿಆರ್ ಮಾಡಬಹುದು. 

t‍esseract example_input.png example_output.txt -l kan+eng

‍‍ಟೆಸರಾಕ್ಟ್ ಬಳಕೆಯ ಸಾಧ್ಯತೆಗಳು, ಇದನ್ನು ಇನ್ನಷ್ತು ಉತ್ತಮಗೊಳಿಸುವ ಬಗೆ ಇತ್ಯಾದಿಗಳ ಬಗ್ಗೆ ಮುಂದಿನ ಲೇಖನದಲ್ಲಿ ತಿಳಿದುಕೊಳ್ಳೋಣ.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Powered by HostRobust | © 2006 - 2014 Linuxaayana
Share This