1. পণ্য
  2.   OCR
  3.   JavaScript
  4.   Tesseract.js
 
  

ওয়েব অ্যাপে OCR যোগ ও পরিচালনা করতে ওপেন সোর্স JavaScript API

JS ওয়েব অ্যাপে অপটিক্যাল ক্যারেক্টার রিকগনিশন (OCR) কার্যকারিতা যোগ করার জন্য একটি অগ্রণী বিনামূল্যের জাভাস্ক্রিপ্ট লাইব্রেরি এবং বিনামূল্যের জন্য মেশিন-পাঠযোগ্য পাঠ্যে মুদ্রিত বা হাতে লেখা পাঠ্যের চিত্রগুলিকে রূপান্তরিত করুন।

Tesseract.js হল একটি অত্যন্ত দরকারী ওপেন-সোর্স জাভাস্ক্রিপ্ট লাইব্রেরি যা সফ্টওয়্যার বিকাশকারীদের তাদের ওয়েব অ্যাপ্লিকেশনগুলির মধ্যে ন্যূনতম প্রচেষ্টা এবং খরচ সহ অপটিক্যাল ক্যারেক্টার রিকগনিশন (OCR) কার্যকারিতা একীভূত করতে সক্ষম করে৷ OCR হল মুদ্রিত বা হাতে লেখা টেক্সটের ছবিকে মেশিন রিডেবল টেক্সটে রূপান্তর করার প্রক্রিয়া। Tesseract.js হল জনপ্রিয় Tesseract OCR ইঞ্জিনের একটি পোর্ট, যা মূলত 1980-এর দশকে Hewlett-Packard দ্বারা তৈরি করা হয়েছিল এবং পরে Google দ্বারা রক্ষণাবেক্ষণ করা হয়েছিল। Tesseract.js 100 টিরও বেশি ভাষাকে চিনতে পারে, এটি ডেভেলপারদের জন্য তাদের ওয়েব অ্যাপ্লিকেশনগুলিতে OCR কার্যকারিতা যুক্ত করার জন্য এটি একটি শক্তিশালী হাতিয়ার করে তোলে৷

Tesseract.js হ্যান্ডেল করা খুব সহজ এবং বিভিন্ন কাজের জন্য ব্যবহার করা যেতে পারে, যেমন স্ক্যান করা নথি, রসিদ এবং ব্যবসায়িক কার্ড থেকে পাঠ্য বের করা, ডেটা এন্ট্রি কাজগুলি স্বয়ংক্রিয় করা এবং সেইসাথে ওয়েব অ্যাপ্লিকেশনগুলির মধ্যে অনুসন্ধান কার্যকারিতা বাড়ানো। Tesseract.js-এর অন্যতম প্রধান সুবিধা হল ইনপুট ইমেজ খারাপ মানের বা রেজোলিউশন হলেও পাঠ্য শনাক্ত করার ক্ষমতা। OCR ফলাফলের নির্ভুলতা উন্নত করতে লাইব্রেরি মেশিন লার্নিং অ্যালগরিদম ব্যবহার করে। এটি পৃষ্ঠা বিন্যাস বিশ্লেষণ করতে পারে এবং একটি চিত্রের মধ্যে আগ্রহের অঞ্চলগুলি সনাক্ত করতে পারে।

Tesseract.js এর ব্যবহার সহজ হওয়ার পাশাপাশি শক্তিশালী OCR ক্ষমতার কারণে জনপ্রিয় হয়ে উঠছে এবং এটি ব্রাউজারে বা NodeJS সহ সার্ভারে সহজে চালানো যেতে পারে। এটি একটি সাধারণ API প্রদান করে যা সফ্টওয়্যার বিকাশকারীদের ভাষা, পৃষ্ঠা বিভাজন মোড এবং হোয়াইটলিস্ট অক্ষরের মতো OCR বিকল্পগুলি কনফিগার করতে দেয়। দুর্বল মানের ছবি থেকে পাঠ্য শনাক্ত করার ক্ষমতা এবং একাধিক ভাষার জন্য সমর্থন এটিকে বিস্তৃত অ্যাপ্লিকেশনের জন্য একটি মূল্যবান হাতিয়ার এবং ডেভেলপারদের জন্য তাদের ওয়েব অ্যাপ্লিকেশনগুলিতে OCR যোগ করতে চাওয়া একটি চমৎকার পছন্দ করে তোলে৷

Previous Next

Tesseract.js দিয়ে শুরু করা

Tesseract.js ইনস্টল করার সুপারিশ করার উপায় হল npm ব্যবহার করা। একটি মসৃণ ইনস্টলেশনের জন্য অনুগ্রহ করে নিম্নলিখিত কমান্ডটি ব্যবহার করুন

Tesseract.jsvia npm

ইনস্টল করুন
 npm install tesseract.js

আপনি নিজেও এটি ইনস্টল করতে পারেন; সরাসরি GitHub রিপোজিটরি থেকে সর্বশেষ রিলিজ ফাইল ডাউনলোড করুন।

JavaScript API এর মাধ্যমে ছবিকে টেক্সটে রূপান্তর করুন

ওপেন সোর্স জাভাস্ক্রিপ্ট লাইব্রেরি Tesseract.js সফ্টওয়্যার ডেভেলপারদের জন্য বিভিন্ন ধরনের ছবি যেমন BMP, JPG, PNG, PBM, WebP এবং আরও অনেক কিছুর সাথে কাজ করা সহজ করে তোলে। লাইব্রেরি ছবি, পিডিএফ এবং স্ক্যান করা নথিতে পাঠ্যের প্রক্রিয়াকরণ স্বয়ংক্রিয় করতে চিত্রগুলি থেকে পাঠ্য আহরণ সমর্থন করে। নিচের উদাহরণে দেখানো হয়েছে কিভাবে একটি ইমেজ লোড করতে হয় এবং মাত্র কয়েক লাইন কোড দিয়ে সেখান থেকে টেক্সট বের করা হয়। ভাষার যুক্তি চিত্রের প্রক্রিয়াকরণে ব্যবহৃত প্রশিক্ষিত ভাষা ডেটা নির্ধারণ করতে ব্যবহৃত হয়। সফ্টওয়্যার বিকাশকারীরা এখানে একাধিক ভাষা ব্যবহার করতে পারেন।

কিভাবে JavaScript API ব্যবহার করে ছবিকে টেক্সটে রূপান্তর করবেন?

Tesseract.recognize(
  image,language,
  { 
    logger: m => console.log(m) 
  }
)
.catch (err => {
  console.error(err);
})
.then(result => {
 console.log(result);
})
}

একটি চিত্র অঞ্চল পড়ুন এবং JS API এর মাধ্যমে পাঠ্য বের করুন

ওপেন সোর্স জাভাস্ক্রিপ্ট লাইব্রেরিতে একটি ইমেজের মধ্যে একটি নির্দিষ্ট এলাকা পড়ার জন্য এবং জাভাস্ক্রিপ্ট অ্যাপ্লিকেশনের মধ্যে তার ডেটা ক্যাপচার করার জন্য একটি খুব দরকারী বৈশিষ্ট্য অন্তর্ভুক্ত করা হয়েছে। এপিআই ইমেজ এরিয়া ক্যাপচার করতে সহায়তা করে এবং অভ্যন্তরীণ শক্তিশালী ওসিআর ইঞ্জিন ব্যবহার করে এই অঞ্চলের অভ্যন্তরে পাঠ্য সনাক্ত করার চেষ্টা করে। নিম্নলিখিত উদাহরণগুলি দেখায় যে কীভাবে সফ্টওয়্যার বিকাশকারীরা চিত্রটির URL প্রদান করতে পারে এবং API সহজেই নির্বাচিত এলাকায় পাঠ্য সনাক্ত করতে এবং সনাক্ত করতে পারে।

JS API এর মাধ্যমে একটি চিত্রের একটি নির্বাচিত অঞ্চলে পাঠ্য পড়ুন এবং চিনুন

const { createWorker } = require('tesseract.js');

const worker = await createWorker();
const rectangle = { left: 0, top: 0, width: 500, height: 250 };

(async () => {
  await worker.loadLanguage('eng');
  await worker.initialize('eng');
  const { data: { text } } = await worker.recognize('https://tesseract.projectnaptha.com/img/eng_bw.png', { rectangle });
  console.log(text);
  await worker.terminate();
})();
 বাংলা