API رایگان Node.js برای افزودن قابلیتهای OCR به پروژههای JS.
کتابخانه OCR منبع باز Node.js که به برنامهنویسان امکان شناسایی و استخراج متن از انواع فرمتهای فایل، از جمله تصاویر (JPEG، PNG)، PDFها و اسناد را به صورت رایگان و به چندین زبان میدهد.
Node-Tesseract-OCR چیست؟
در عصر دیجیتال امروز، استخراج متن از تصاویر و اسناد به یک وظیفه حیاتی در صنایع مختلف از جمله مدیریت اسناد، پردازش دادهها و هوش مصنوعی تبدیل شده است. فناوری تشخیص نوری کاراکتر (OCR) امکان تبدیل اسناد اسکنشده، تصاویر و PDFها به فرمتهای متنی قابل ویرایش را فراهم کرده است. Node-Tesseract-OCR یک API منبع باز است که قدرت موتور OCR تسرکت را ترکیب میکند تا روشی یکپارچه و کارآمد برای انجام وظایف OCR در برنامههای Node.js ارائه دهد.
Node-Tesseract-OCR یک wrapper برای Node.js برای موتور OCR تسرکت است که به توسعهدهندگان نرمافزار امکان استفاده از ویژگیهای قدرتمند تشخیص متن تسرکت را در محیط Node.js میدهد. این API در این مخزن GitHub نگهداری میشود و مجموعهای از عملکردها را ارائه میدهد که آن را برای موارد استفاده مختلف، از استخراج متن ساده تا وظایف پردازش اسناد پیچیده، مناسب میسازد. توسعهدهندگان میتوانند متن را از تصاویر و اسناد به چندین زبان استخراج کنند، که این ابزار را برای برنامههای مختلف چندمنظوره میسازد.
API Node-Tesseract-OCR قابلیتهای پیشرفته پردازش تصویر را فراهم میکند، از جمله فیلتر کردن تصویر، تغییر اندازه و برش، تا اطمینان حاصل شود که متن استخراجشده دقیق و قابل اعتماد باشد. این API از بیش از ۱۰۰ زبان پشتیبانی میکند و بهعنوان یک راهحل چندمنظوره برای وظایف OCR در محیطهای متنوع عمل میگیرد. توسعهدهندگان میتوانند متن را از تصاویر، PDFها و اسناد استخراج کرده و متن استخراجشده را در قالبهای مختلفی مانند JSON، XML و متن ساده بازگردانند. این کتابخانه بهگونهای طراحی شده است که سبک، انعطافپذیر و استفاده از آن آسان باشد، بنابراین انتخاب ایدهآلی برای توسعهدهندگانی است که میخواهند قابلیتهای OCR را به پروژههای خود اضافه کنند. با قابلیتهای پیشرفته پردازش تصویر، پشتیبانی از زبانها و سازوکارهای مدیریت خطا، این گزینهای مناسب برای توسعهدهندگانی است که میخواهند OCR را به پروژههای خود اضافه کنند.
شروع کار با Node-Tesseract-OCR
روش پیشنهادی برای نصب Node-Tesseract-OCR استفاده از npm است. لطفاً برای نصب بدون مشکل از دستور زیر استفاده کنید
نصب Node-Tesseract-OCR از طریق npm
npm install node-tesseract-ocr همچنین میتوانید بهصورت دستی نصب کنید؛ فایلهای آخرین نسخه را مستقیماً از مخزن GitHub دانلود کنید.
استخراج متن از تصاویر در API Node.js
کتابخانه منبع باز Node-Tesseract-OCR به توسعهدهندگان نرمافزار امکان میدهد برنامههایی بسازند که بهصورت خودکار متن را از تصاویر داخل برنامههای Node.js استخراج کنند. این کتابخانه از استخراج متن از اسناد اسکنشده، PDFها، عکسهای دوربین یا فاکتورهای تصویری پشتیبانی میکند. این میتواند برای ایجاد آرشیوهای قابل جستجو، خودکارسازی ورود دادهها یا پردازش حجم بالای اسناد در بخشهایی مانند مالی و بهداشت مفید باشد. در ادامه یک مثال ساده نشان میدهد که چگونه بهصورت برنامهنویسی متن را از تصاویر داخل برنامههای Node.js استخراج کنیم.
چگونه متن را از تصاویر داخل محیط Node.js استخراج کنیم؟
const tesseract = require("node-tesseract-ocr");
tesseract.recognize("path/to/image.jpg")
.then(text => {
console.log("Recognized Text:", text);
})
.catch(error => {
console.error("Error:", error.message);
});
پیشپردازش بهتر تصویر در Node.js
پیشپردازش تصاویر قبل از اعمال OCR میتواند دقت تشخیص متن را بهطور قابل توجهی بهبود بخشد. کتابخانه منبع باز Node-Tesseract-OCR امکان استفاده از تکنیکهای پایه پیشپردازش مانند تغییر اندازه، باینریسازی و اصلاح چرخش را فراهم میکند. این مراحل پیشپردازش میتوانند با استفاده از کتابخانههای اضافی Node.js مانند sharp یا jimp همراه با Node-Tesseract-OCR پیادهسازی شوند. مثال زیر نشان میدهد که توسعهدهندگان نرمافزار چگونه از مراحل پیشپردازش برای بهبود تشخیص، بهویژه در تصاویر با کیفیت پایین، استفاده میکنند.
چگونه مراحل پیشپردازش را برای بهبود تشخیص از طریق API Node.js اعمال کنیم؟
const sharp = require("sharp");
const tesseract = require("node-tesseract-ocr");
sharp("path/to/input.jpg")
.resize(800, 600) // Resize the image
.greyscale() // Convert to greyscale
.toBuffer()
.then(data => {
return tesseract.recognize(data, { lang: "eng" });
})
.then(text => {
console.log("Preprocessed Image Text:", text);
})
.catch(error => {
console.error("Error:", error.message);
});
متن شناساییشده در چندین زبان
یکی از ویژگیهای برجسته Node-Tesseract-OCR پشتیبانی گسترده از چندین زبان است. کتابخانه OCR تسرکت از بیش از ۱۰۰ زبان پشتیبانی میکند و این آن را به گزینهای ایدهآل برای برنامههایی که نیاز به پردازش اسناد به زبانهای مختلف دارند، تبدیل میکند. توسعهدهندگان میتوانند زبان(های) مورد نظر خود را برای استفاده توسط تسرکت مشخص کنند و دقت تشخیص متون غیر انگلیسی را بهبود بخشند. در ادامه مثالی نشان میدهد که چگونه توسعهدهندگان میتوانند متن را به زبان فرانسوی داخل برنامههای Node.js شناسایی کنند؟
چگونه متن را از تصویر به زبان فرانسوی از طریق API جاوااسکریپت شناسایی کنیم؟
const config = {
lang: "fra", // French language support
oem: 1,
psm: 3
};
tesseract.recognize("path/to/french-text-image.jpg", config)
.then(text => {
console.log("Recognized Text in French:", text);
})
.catch(error => {
console.error("Error:", error.message);
});