Sunday, January 1, 2017

Google's Bengali OCR & search

Google's Bengali OCR support & AI enabled search


Recently while googling I came across a cached webpage with following Bengali content  in garbled unicode (mixed with some hindi & Chinese characters) :-
গীতাতত্ত্ব ও ভারতে শক্তিপূজা
স্বামী সারদানন্দ
প্রথম প্রকাশ : নভেম্বর ১৯৫৯
প্ৰকাশক : ভোলানাথ দাস, সপ্তর্ষি, ১৩ বঙ্কিম চ্যাটার্জী স্ট্রীট, কলিকাতা-৭০০০৭৩
মুদ্রক : প্রিন্টার্স কর্নার,  ৪৫/এ রাজা দীনেন্দ্ৰ স্ট্রীট, কলিকাতা-৭০০০০৯
[ পাঠক সাধারণের সুবিধার জন্য স্বামী সারদানন্দের দুইখানা অমূল্য গ্ৰন্থকে এক মলাটের ভেতরে প্রকাশের ব্যবস্থা করা হোল ]

"Gitatattwa O Bharote Shaktipuja by Swami Saradananda, November 1959. Published by Bholanath Das, Saptarshi, 13 Bankim Chatterjee Street, Kolkata-700073. Printed by Printer’s Corner, 45/A Raja Deenendra Street, Kolkata-700009."

After some difficulty I could download the original pdf file which was in image form i.e. the texts are not searchable. Then how could google find this file and index it in Unicode Bengali ? What I understood is that Google ran Optical Character Recognition (OCR) on part of this file to index it and make it searchable. OCR efficiency is very good (compared to manual typing). Below I offer my humble & brief analysis.

Scanned Image of one page from that pdf file



Unicode content after running Google Doc OCR


গীতাৰ্ড
পরিচয়
গীতার প্রথম ও দ্বিতীয় অধ্যায়ে যা আছে, আজ সেই বিষয়ে বলব। আমরা সকলেই জানি, আমাদের দেশে গীতার কত আদর, কারণ হিন্দুধর্মের সার কথা গীতায় আছে। গীতামাহাষ্ম্যে এই বিষয়ে একটি সুন্দর শ্লোক আছে
“সর্বোপনিষদো গাবো দোগ্ধা গোপালনন্দনঃ { পার্থে বৎসঃ সুধীর্ভোক্তা"দুগ্ধং গীতামৃতং মহৎ ৷”
-উপনিষদসকল যেন গাভীস্বরূপ। শ্ৰীকৃষ্ণ তার দুধ দুইছেন, অজুন সেই গাভীর বাছুরের মত হয়েছেন। বাছুর যেমন গাভীর কাছে না গেলে গাভী দুধ দেয় না, সেই রকম অজুনের প্রশ্নেই শ্ৰীকৃষ্ণের শাস্ত্রোপদেশ এবং গীতারূপ দুধের উৎপত্তি । এই দুধ পান করবে কে ? সুধী অর্থাৎ পণ্ডিত লোক । পণ্ডিত মানে বিবেকী লোক । আমাদের দেশে আজকাল যারা দু’চারখানা বই পড়েছেন, দু’চারটি কথা গুছিয়ে বলতে পারেন, তঁদেরই পণ্ডিত বলা হয়। কিন্তু গীতা বলেন, ধারা মুখে কেবল লম্বা-চওড়া বলেন, তঁরা পণ্ডিত নন। ধারা সত্য জীবনে প্ৰত্যক্ষ করেছেন, যাদের অপরোক্ষানুভূতি অর্থাৎ ইন্দ্ৰিয়ের অতীত পদার্থের জ্ঞান উপলব্ধি হয়েছে, অসৎ হতে সৎ ধারা বুঝে নিতে পারেন, তঁরাই পণ্ডিত। শুনা যায়, এক শ্রেণীর হাঁস আছে, যারা দুধে জলে মিশে থাকলে শুধু দুধ টুকু খেতে পারে। তেমনি এই সত্য-মিথ্যা-মিশ্রিত সংসারে যিনি অসৎ বাদ দিয়ে সৎ নিতে পারেন, তিনিই পণ্ডিত । তিনিই গীতা বুঝতে ও বোঝাতে পারেন।
গীতার টীকা অনেকে অনেক রকম করেছেন । আমাদের দেশে তিন শ্রেণীর আচাৰ্য আপনাপন পক্ষ-সমর্থন করে গীতার অর্থ করেছেন। অদ্বৈতবাদী আচাৰ্য শঙ্কর অদ্বৈত মত সমর্থন করে গীতার টীকা করেছেন। বিশিষ্টাদ্বৈতবাদী রামানুজ এবং দ্বৈতবাদী মধবাচাৰ্যও সেইরূপ আপনাপন্ন মতানুযায়ী টীকা করে গিয়েছেন । তোমাদের আত টীকা দেখবার দরকার নেই । তোমাদের মন এখনও কোন বিশেষ মতের দিকে না চলে এক ভাবেই আছে। আপনাপন সহজ জ্ঞানে যে অর্থ উপলব্ধি করবে, তা-ই যথেষ্ট। আর ঐ উপায়ে যে যে স্থলে অর্থবোধ না হবে, সেই সেই স্থল বুঝবার জন্যে আর একটি উপায় আছে। ধারা মহাভারত পড়েছেন, তারা বুঝতে পারবেন যে, ভগবান শ্ৰীকৃষ্ণের জীবনই এই গীতাশান্ত্রের প্রধান টীকাস্বরূপ । আপনি এবং অপর সকলে শরীরবান হলেও জন্মমৃত্যুবিৱহিত অবিনাশী আত্মা ভিন্ন অন্য কিছু নয়, এই


Corrections 22/310 words = 7% only

Manually edited Unicode output


গীতাতত্ত্ব
স্বামী সারদানন্দ

পরিচয়

গীতার প্রথম ও দ্বিতীয় অধ্যায়ে যা আছে, আজ সেই বিষয়ে বলব । আমরা সকলেই জানি, আমাদের দেশে গীতার কত আদর, কারণ হিন্দুধর্মের সার কথা গীতায় আছে । গীতামাহাত্ম্যে এই বিষয়ে একটি সুন্দর শ্লোক আছে -
“সর্বোপনিষদো গাবো দোগ্ধা গোপালনন্দনঃ । পার্থো বৎসঃ সুধীর্ভোক্তা"দুগ্ধং গীতামৃতং মহৎ ৷।”
উপনিষদসকল যেন গাভীস্বরূপা । শ্ৰীকৃষ্ণ তার দুধ দুইছেন, অর্জুন সেই গাভীর বাছুরের মত হয়েছেন । বাছুর যেমন গাভীর কাছে না গেলে গাভী দুধ দেয় না, সেই রকম অর্জুনের প্রশ্নেই শ্ৰীকৃষ্ণের শাস্ত্রোপদেশ এবং গীতারূপ দুধের উৎপত্তি । এই দুধ পান করবে কে ? সুধী অর্থাৎ পণ্ডিত লোক । পণ্ডিত মানে বিবেকী লোক । আমাদের দেশে আজকাল যারা দু’চারখানা বই পড়েছেন, দু’চারটি কথা গুছিয়ে বলতে পারেন, তাঁদেরই পণ্ডিত বলা হয় । কিন্তু গীতা বলেন, যাঁরা মুখে কেবল লম্বা-চওড়া বলেন, তাঁরা পণ্ডিত নন । যাঁরা সত্য জীবনে প্ৰত্যক্ষ করেছেন, যাঁদের অপরোক্ষানুভূতি অর্থাৎ ইন্দ্ৰিয়ের অতীত পদার্থের জ্ঞান উপলব্ধি হয়েছে, অসৎ হতে সৎ যাঁরা বুঝে নিতে পারেন, তাঁরাই পণ্ডিত । শুনা যায়, এক শ্রেণীর হাঁস আছে, যারা দুধে জলে মিশে থাকলে শুধু দুধ টুকু খেতে পারে । তেমনি এই সত্য-মিথ্যা-মিশ্রিত সংসারে যিনি অসৎ বাদ দিয়ে সৎ নিতে পারেন, তিনিই পণ্ডিত । তিনিই গীতা বুঝতে ও বোঝাতে পারেন ।


গীতার টীকা অনেকে অনেক রকম করেছেন । আমাদের দেশে তিন শ্রেণীর আচাৰ্য আপনাপন পক্ষ-সমর্থন করে গীতার অর্থ করেছেন । অদ্বৈতবাদী আচাৰ্য শঙ্কর অদ্বৈত মত সমর্থন করে গীতার টীকা করেছেন । বিশিষ্টাদ্বৈতবাদী রামানুজ এবং দ্বৈতবাদী মধ্বাচাৰ্যও সেইরূপ আপনাপন মতানুযায়ী টীকা করে গিয়েছেন । তোমাদের অত টীকা দেখবার দরকার নেই । তোমাদের মন এখনও কোন বিশেষ মতের দিকে না চলে এক ভাবেই আছে । আপনাপন সহজ জ্ঞানে যে অর্থ উপলব্ধি করবে, তা-ই যথেষ্ট । আর ঐ উপায়ে যে যে স্থলে অর্থবোধ না হবে, সেই সেই স্থল বুঝবার জন্যে আর একটি উপায় আছে । যাঁরা মহাভারত পড়েছেন, তাঁরা বুঝতে পারবেন যে, ভগবান শ্ৰীকৃষ্ণের জীবনই এই গীতাশাস্ত্রের প্রধান টীকাস্বরূপ । আপনি এবং অপর সকলে শরীরবান হলেও জন্মমৃত্যুবিরহিত অবিনাশী আত্মা ভিন্ন অন্য কিছু নয়, এই

Conclusion


Kudos to Google team for developing this Artificial Intelligence enabled search which introduced me to the power of Google Doc and its capability to reliably unlock the jewels of Bengali literature still hidden in image/hard forms and spread them in the unicoded digital world.

REFERENCE:

https://support.google.com/drive/answer/176692?hl=en


Convert PDF and photo files to text

You can convert image files to text with Google Drive. Before you start, here are some things to keep in mind.

File types that can be converted:

  • JPEG
  • PNG
  • GIF
  • PDF (multipage documents)

Convert an image file

  1. Go to drive.google.com.
  2. Right-click on the desired file.
  3. Click Open with > Google Docs.
The image file will be converted to a Google Doc.

For best results

These tips will give you the best results:
  • Resolution: Text should be at least 10 pixels in height.
  • Orientation: Documents must be right-side up. If your image is facing the wrong way, rotate it before uploading it to Google Drive.
  • Languages, fonts, and character sets: Google Drive will detect the language of the document. You'll get better results if your image includes common fonts such as Arial or Times New Roman.
  • Image quality: Sharp images with even lighting and clear contrasts work best. Blurry photos will decrease the quality of the text.
  • File size: The maximum size for images and PDF files is 2 MB.

Formatting

Some formatting might not transfer to a text document:
  • Bold, italics, font size, font type, and line breaks are most likely to be retained.
  • Lists, tables, columns, footnotes, and endnotes are likely not be detected.
Acehnese, Acholi, Adangme, Afrikaans, Akan, Albanian, Algonquian, Amharic, Ancient Greek, Arabic (Modern Standard), Araucanian/Mapuche, Armenian, Assamese, Asturian, Athabaskan, Aymara, Azerbaijani, Azerbaijani (Cyrillic; old orthography), Balinese, Bambara, Bantu, Bashkir, Basque, Batak, Belarusian, Bemba, Bengali, Bikol, Bislama, Bosnian, Breton, Bulgarian, Burmese, Catalan, Cebuano, Chechen, Cherokee, Chinese (Mandarin; Hong Kong), Chinese (Simplified; Mandarin), Chinese (Traditional; Mandarin), Choctaw, Chuvash, Cree, Creek, Crimean Tatar, Croatian, Czech, Dakota, Danish, Dhivehi, Duala, Dutch, Dzongkha, Efik, English (American), English (British), Esperanto, Estonian, Ewe, Faroese, Fijian, Filipino, Finnish, Fon, French (Canadian), French (European), Fulah, Ga, Galician, Ganda, Gayo, Georgian, German, Gilbertese, Gothic, Greek, Guarani, Gujarati, Haitian Creole, Hausa, Hawaiian, Hebrew, Herero, Hiligaynon, Hindi, Hungarian, Iban, Icelandic, Igbo, Ilocano, Indonesian, Irish, Italian, Japanese, Javanese, Kabyle, Kachin, Kalaallisut, Kamba, Kannada, Kanuri, Kara-Kalpak, Kazakh, Khasi, Khmer, Kikuyu, Kinyarwanda, Kirghiz, Komi, Kongo, Korean, Kosraean, Kuanyama, Lao, Latin, Latvian, Lingala, Lithuanian, Low German, Lozi, Luba-Katanga, Luo, Macedonian, Madurese, Malagasy, Malay, Malayalam, Maltese, Mandingo, Manx, Maori, Marathi, Marshallese, Mende, Middle English, Middle High German, Minangkabau, Mohawk, Mongo, Mongolian, Nahuatl, Navajo, Ndonga, Nepali, Niuean, North Ndebele, Northern Sotho, Norwegian (Bokmål), Nyanja, Nyankole, Nyasa Tonga, Nzima, Occitan, Ojibwa, Old English, Old French, Old High German, Old Norse, Old Provencal, Oriya, Ossetic, Pampanga, Pangasinan, Papiamento, Pashto, Persian, Polish, Portuguese (Brazilian), Portuguese (European), Punjabi (Gurmukhi), Quechua, Romanian, Romansh, Romany, Rundi, Russian, Russian (Old Orthography), Sakha, Samoan, Sango, Sanskrit, Scots, Scottish Gaelic, Serbian (Cyrillic), Serbian (Latin), Shona, Sinhala, Slovak, Slovenian, Songhai, Southern Sotho, Spanish (European), Spanish (Latin American), Sundanese, Swahili, Swati, Swedish, Tahitian, Tajik, Tamil, Tatar, Telugu, Temne, Thai, Tibetan, Tigrinya, Tongan, Tsonga, Tswana, Turkish, Turkmen, Udmurt Ukrainian, Urdu, Uzbek, Uzbek (Cyrillic; old orthography), Venda, Vietnamese, Votic, Welsh, Western Frisian, Wolof, Xhosa, Yiddish, Yoruba, Zapotec, and Zulu.