දෘශ්‍ය අක්ෂර හඳුනාගැනීම (optical character recognition) (OCR)

March 18, 2022 | Hirushi Nisansala

දෘශ්‍ය අක්ෂර හඳුනාගැනීම (optical character recognition) (OCR)

දෘශ්‍ය අක්ෂර හඳුනාගැනීම හෝ OCR යන කෙටි යෙදුමෙන් හඳුන්වන මෙය, රූප සටහනක ඇති වචන (images of text ) යන්ත්‍ර කේතනය කළ පාඨ (machine encoded text ) බවට පරිවර්තනය කිරීම සඳහා ඇල්ගොරිතම සහ ශිල්පීය ක්‍රම (ඉලෙක්ට්‍රෝනික සහ යාන්ත්‍රික යන දෙකම) භාවිතා කරයි. අපි සාමාන්‍යයෙන් OCR ගැන සිතන්නේ මෘදුකාංග ලෙසටයි. එනම් මේවා රූප සටහනක (input image) (ස්කෑන් කරන ලද , ඡායාරූපගත කරන ලද , හෝ පරිගණකයෙන් ජනනය කරන ලද) , පාඨය ස්වයංක්‍රීයව හඳුනාගෙන එය මිනිසෙකු මෙන් කියවීම OCR ලෙස සරලව හදුනා ගත හැක.

Optical character recognition (OCR) යනු කුමක්ද ?

කෙසේ වෙතත්, OCR පද්ධති යාන්ත්‍රික සහ භෞතික විය හැක. උදාහරණයක් ලෙස, ඇතැම්විට , ලියන විට ඔබේ අත් අකුරු scan කරන smart pens සමඟ ඔබ හුරුපුරුදු විය හැක. ඔබ ලිවීම අවසන් වූ පසු, ඔබ ඔබේ පෑන Universal Serial Bus (USB), Bluetooth හෝ වෙනත් ආකාරයකින් පරිගණකයට සම්බන්ධ කරගනී. OCR මෘදුකාංගය ඔබගේ smart pen මගින් පටිගත කරන ලද චලනයන් සහ රූප විශ්ලේෂණය කරයි. එහි ප්‍රතිඵලයක් ලෙස කියවිය හැකි ලෙස වචන නිර්මාණය වේ..

ඔබ කිසියම් OCR පද්ධතියක් භාවිත කර ඇත්නම්, එය Tesseract වැනි මෘදුකාංග හෝ භෞතික OCR උපාංගයක් වුවද OCR systems බොහෝදුරට නිරවද්‍ය නොවේ.. නමුත් ඒ ඇයි? මතුපිටින් බලන විට OCR යනු තරමක් සරල අදහසක් වුවද මෘදුකාංගයට ක්‍රියා කිරීම සඳහා රූපයක් input කර එය යන්ත්‍රයෙන් කියවිය හැකි වචන බවට පරිවර්තනය කිරීම අසීරු ක්‍රියාවලියකි.


මිනිසුන් ලිවීම හරහා සන්නිවේදනය කරන ආකාරයෙහි බොහෝ විෂමතා තිබේ. අපට ස්වභාවික භාෂා සැකසීමේ (NLP) දී ගැටලු මතුවේ, එනම් පරිගණක දර්ශන පද්ධති කිසි විටෙකත් රූපයකින් ලබාගන්නා වචන කියවීමේදී 100% නිරවද්‍යතාවයක් ලබා නොගනී. ශබ්දය, ලිවීමේ විලාසය, රූපයේ ගුණාත්මකභාවය යනාදී වශයෙන් බොහෝ විචල්‍යයන් තිබීම එයට හේතුවයි.

OCR හි ඉතිහාසය කෙටියෙන්

මුල් කාලයේදි OCR තාක්‍ෂණයන් සම්පූර්ණයෙන්ම යාන්ත්‍රික වූ අතර, 1914 දී පමණ Emanuel Goldberg විසින් අක්ෂර කියවිය හැකි යන්ත්‍රයක් නිපදවා ඒවා සම්මත ටෙලිග්‍රාෆ් කේතය බවට පරිවර්තනය කරන ලදි. ගෝල්ඩ්බර්ග් 1920 -1930 දී පමණ ඔහුගේ පර්යේෂණ දිගටම කරගෙන යමින් අකුරු (characters) සඳහා මයික්‍රෝ ෆිල්ම් (පරිමාණය පහළ කරන ලද ලේඛන, සාමාන්‍යයෙන් චිත්‍රපට, පුවත්පත්, සඟරා, ආදිය) සෙවීමේ පද්ධතියක් සංවර්ධනය කරන ලදී.


1974 දී, Ray Kurzweil සහ Kurzweil Computer Products, Inc. OCR පද්ධති සංවර්ධනය කිරීම දිගටම කරගෙන ගිය අතර, ප්‍රධාන වශයෙන් අවධානය යොමු කළේ “ඇස් නොපෙනෙන පුද්ගලයින් සඳහා කියවීමේ යන්ත්‍රයක්” නිර්මාණය කිරීම කෙරෙහිය. Kurzweil ගේ කාර්යය පිලිබදව industryහි ප්‍රමුකයෙකු වූ Xerox ගේ අවධානයට ලක් වූ අතර, ඔහු මෘදුකාංගය තවදුරටත් වාණිජකරණය කිරීමට සහ software සංවර්ධනයට එකඟ විය.


Hewlett-Packard (HP) Labs 1980දි පමණ Tesseract යෙදවුම නිර්මාණය කලේය. 2005 දී HP open source බවට පත් වූ අතර, එය ඉක්මනින් ලොව ජනප්‍රියම OCR Engine එක බවට පත් විය. ඔබ දැන් මෙම ලිපිය කියවීමට හේතුව Tesseract library එක විය හැකිය.


Deep learning 2010 පමණ Computer vision field (මෙන්ම පරිගණක විද්‍යාවේ අනෙකුත් සෑම ක්ෂේත්‍රයක්ම පාහේ) විප්ලවීය වෙනසක් සිදු කළ බැවින්, OCR නිරවද්‍යතාවයට LSTM ජාල ලෙස හැඳින්වෙන special architecture එක දැවැන්ත පරිචයක් ලබා දෙන ලදී.


වර්තමානයේදි Google, Microsoft, සහ Amazon වැනි තාක්ෂණික දැවැන්තයින් විසින් OCR වඩ වඩාත් වාණිජකරණය කර ඇති ආකාරය අපි දකිමු. පරිගණක විද්‍යා ක්ෂේත්‍රයේ අප සිටින්නේ අපූරු කාලයකයි. මීට පෙර කිසි දිනෙක අපට මෙතරම් නිවැරදි OCR පද්ධති නොතිබුණි.

OCR හි යෙදුම්

OCR හි බොහෝ යෙදුම් තිබේ, එහි මුල්ම අවධිය වූයේ ඇස් නොපෙනෙන පුද්ගලයින් සඳහා කියවීමේ යන්ත්‍ර නිර්මාණය කිරීමයි (Schantz, 1982). එතැන් සිට OCR යෙදුම් සැලකිය යුතු ලෙස පරිණාමය වී ඇත, (නමුත් ඒවාට සීමා නොමැත):


Automatic Number plate recognition (ALPR/ANPR), රථවාහන සංඥා හඳුනාගැනීම, CAPTCHAs විශ්ලේෂණය සහ ව්‍යාපාරික කාඩ්පත් වලින් තොරතුරු උපුටා ගැනීම සහ විදේශ ගමන් බලපත්‍රයේ අනෙකුත් අදාළ කොටස් ස්වයංක්‍රීයව කියවීම, බැංකු චෙක්පතකින් මාර්ගගත අංකය, ගිණුම් අංකය සහ මුදල් ප්‍රමාණය විග්‍රහ කිරීම හා ඔබගේ ස්මාර්ට් ජංගම දුරකතනයෙන් ලබාගත් ඡායාරූප වැනි ස්වභාවික දර්ශනවල පෙළ අවබෝධ කර ගැනීම වැනි අවස්ථා වල OCR යොදා ගනී.

Input image එකක වචන සහිත වේ නම්, අපට බොහෝ විට එයට OCR යෙදිය හැක. නමුත් අපි භාවිතා කළ යුතු තාක්ෂණික ක්‍රම දැනගත යුතුයි!

Orientation සහ Script හඳුනාගැනීම (OSD)

OCR යනු ආදාන රූපයක් ලබා ගැනීම සහ මිනිසුන්ට කියවිය හැකි සහ යන්ත්‍රයෙන් කියවිය හැකි ආකෘති දෙකෙන්ම outputs ආපසු ලබා දීමේ ක්‍රියාවලිය නම්,එවිට OSD හෙවත් Orientation සහ Script හඳුනාගැනීම (orientation and script detection) යනු විශේෂයෙන් දිශානතිය සහ තිර රචනය/ලිවීමේ විලාසය සඳහා රූප විශ්ලේෂණය කිරීමේ ක්‍රියාවලියයි,

Pre-Processing වල වැදගත්කම

ඔබට Data clean කරගැනීමට Computer vision සහ Image processing methods යෙදිය හැකි නම් බොහෝ OCR engines (Tesseract හෝ cloud-based APIs වේවා) වඩාත් නිවැරදි වනු ඇත.


Computer Vision සහ Deep learning experts විසින් කරන වඩාත් පොදු වැරදි වලින් එකක් නම්, ඔවුන් භාවිතා කරන OCR Engine එක ඔවුන්ගේ රූප ස්වයංක්‍රීයව පිරිසිදු කිරීමට හැකියාව ඇති සාමාන්‍යකරණය කළ රූප සකසනයක් ලෙස උපකල්පනය කිරීමයි.

OCR tools කිහිපයක් පහත දැක්වේ

Tesseract

OpenCV

සටහන - හිරුෂි නිසංසලා