انتشار سیستم تشخیص متن Tesseract 5.0

انتشار سیستم تشخیص متن نوری Tesseract 4.1 منتشر شده است که از تشخیص کاراکترها و متون UTF-8 به بیش از 100 زبان از جمله روسی، قزاقستانی، بلاروسی و اوکراینی پشتیبانی می کند. نتیجه را می توان در متن ساده یا در فرمت های HTML (hOCR)، ALTO (XML)، PDF و TSV ذخیره کرد. این سیستم در ابتدا در سال های 1985-1995 در آزمایشگاه هیولت پاکارد ایجاد شد؛ در سال 2005، کد تحت مجوز آپاچی باز شد و با مشارکت کارمندان گوگل بیشتر توسعه یافت. کد منبع پروژه تحت مجوز آپاچی 2.0 توزیع شده است.

Tesseract شامل یک ابزار کنسول و کتابخانه libtesseract برای تعبیه عملکرد OCR در سایر برنامه ها است. رابط های رابط کاربری گرافیکی شخص ثالث که از Tesseract پشتیبانی می کنند عبارتند از gImageReader، VietOCR و YAGF. دو موتور تشخیص ارائه شده است: موتور کلاسیک که متن را در سطح الگوهای کاراکترهای فردی تشخیص می‌دهد، و موتور جدید مبتنی بر استفاده از یک سیستم یادگیری ماشینی مبتنی بر یک شبکه عصبی تکراری LSTM، بهینه‌سازی شده برای تشخیص کل رشته‌ها و اجازه دادن به افزایش قابل توجه در دقت مدل های آماده آموزش دیده برای 123 زبان منتشر شده است. برای بهینه سازی عملکرد، ماژول هایی با استفاده از دستورالعمل های OpenMP و SIMD AVX2، AVX، NEON یا SSE4.1 ارائه می شوند.

پیشرفت های عمده در Tesseract 5.0:

  • تغییر قابل توجه در شماره نسخه به دلیل تغییرات ایجاد شده در API است که سازگاری را از بین می برد. به طور خاص، API libtesseract در دسترس عموم دیگر به انواع داده های اختصاصی GenericVector و STRING، به نفع std::string و std::vector متصل نیست.
  • درخت متن مبدأ دوباره سازماندهی شده است. فایل های هدر عمومی به دایرکتوری include/tesseract منتقل شده اند.
  • مدیریت حافظه مجدداً طراحی شده است، همه تماس‌های malloc و رایگان با کد C++ جایگزین شده‌اند. نوسازی کلی کد انجام شده است.
  • بهینه سازی های اضافه شده برای معماری های ARM و ARM64؛ دستورالعمل های ARM NEON برای سرعت بخشیدن به محاسبات استفاده می شود. بهینه سازی عملکرد مشترک برای همه معماری ها انجام شده است.
  • حالت های جدید برای مدل های آموزشی و تشخیص متن بر اساس استفاده از محاسبات ممیز شناور پیاده سازی شده است. حالت های جدید عملکرد بالاتر و مصرف حافظه کمتری را ارائه می دهند. در موتور LSTM، حالت سریع float32 به طور پیش فرض فعال است.
  • انتقال به استفاده از نرمال سازی یونیکد با استفاده از فرم NFC (Normalization Form Canonical) انجام شده است.
  • گزینه ای برای پیکربندی جزئیات گزارش اضافه شده است (--loglevel).
  • سیستم ساخت مبتنی بر Autotools دوباره طراحی شده و به ساخت در حالت غیر بازگشتی تغییر یافته است.
  • شاخه "مستر" در گیت به "اصلی" تغییر نام داده است.
  • پشتیبانی از نسخه‌های جدید سیستم‌های macOS و Apple مبتنی بر تراشه M1 اضافه شده است.

    منبع: opennet.ru

اضافه کردن نظر