1. محصولات
  2.   OMR
  3.   PHP
  4.   FormRead
 
  

API رایگان OMR PHP برای تجزیه فرم‌ها و تصاویر اسکن‌شده به‌صورت آنلاین

کتابخانه منبع باز PHP برای تشخیص علامت نوری (Optical Mark Recognition) که برای تجزیه فرم‌های اسکن‌شده و تشخیص پاسخ‌های علامت‌دار از نواحی از پیش تعریف‌شده در برنامه PHP طراحی شده است.

FormRead چیست؟

در دنیای دیجیتال امروز، خودکارسازی استخراج داده‌ها از فرم‌ها برای کسب‌وکارها، مؤسسات آموزشی و سازمان‌های پژوهشی حیاتی است. در حوزه جمع‌آوری داده‌ها، تشخیص علامت نوری (OMR) همچنان روشی قابل اعتماد برای اسکن و تفسیر داده‌های علامت‌دار در فرم‌ها، نظرسنجی‌ها، آزمون‌ها و برگه‌های رأی‌گیری است. FormRead، یک API OMR (تشخیص علامت نوری) متن‌باز مبتنی بر PHP، راه‌حل قدرتمندی برای خواندن و پردازش کارآمد فرم‌های علامت‌دار ارائه می‌دهد. این یک API OMR مبتنی بر PHP است که برای شناسایی و تفسیر نواحی علامت‌دار در فرم‌های اسکن‌شده، نظرسنجی‌ها یا برگه‌های پاسخ طراحی شده است. این ابزار به‌ویژه برای خودکارسازی جمع‌آوری داده‌ها از فرم‌های کاغذی، کاهش خطاهای ورود دستی و بهبود کارایی مفید است.

FormRead یک کتابخانه منبع باز برای تشخیص نمره نوری (Optical Mark Recognition) نوشته شده به زبان PHP است. این کتابخانه انواع مختلفی از انواع فیلدهای معمول در فرم‌های OMR را پشتیبانی می‌کند، مانند چک‌باکس‌ها، متن، گزینه و گروه. این کتابخانه به‌طور خاص برای تجزیه و تحلیل فرم‌های اسکن‌شده و تشخیص پاسخ‌های علامت‌گذاری‌شده از نواحی پیش‌تعریف‌شده طراحی شده است—ایده‌آل برای مواردی مانند آزمون‌های چندگزینه‌ای، فرم‌های بازخورد، برگه‌های رأی‌گیری یا هر جمع‌آوری داده مبتنی بر فرم. این کتابخانه به توسعه‌دهندگان امکان تعریف نواحی (یا "شبکه‌ها") بر روی تصویر فرم را می‌دهد و سپس تشخیص می‌دهد کدام یک از این نواحی توسط کاربران علامت‌گذاری (پر) شده‌اند. ویژگی‌های مهمی در این کتابخانه وجود دارد، مانند تعریف انعطاف‌پذیر فرم، بارگذاری و پردازش تصویر، مدیریت حساسیت آستانه، پشتیبانی از فرمت‌های مختلف تصویر، قالب‌های قابل تنظیم، پشتیبانی از بارکد و کد QR، و موارد دیگر. FormRead یک API OMR قدرتمند در PHP است که پردازش خودکار فرم‌ها را ساده می‌کند. چه در حال نمره‌گذاری آزمون‌ها باشید، نظرسنجی‌ها را پردازش کنید یا سوابق را دیجیتالی کنید، این کتابخانه راه‌حل انعطاف‌پذیر و کارآمدی ارائه می‌دهد.

Previous Next

شروع کار با FormRead

روش پیشنهادی برای نصب کتابخانه PHP FormRead استفاده از Composer است. لطفاً برای نصب روان از فرمان زیر استفاده کنید.

نصب OFormReadMR از طریق Composer

 composer require mojv/formread
 

FormRead را از طریق GitHub نصب کنید

git clone https://github.com/mojv/FormRead.git
cd FormRead 

پردازش فرم اسکن‌شده با PHP

کتابخانه منبع باز FormRead کار را برای توسعه‌دهندگان نرم‌افزار آسان می‌کند تا فرم‌ها و تصاویر اسکن‌شده را در برنامه‌های PHP بارگذاری و پردازش کنند. ابتدا، یک تصویر اسکن‌شده از فرم تکمیل‌شده دارید؛ بگذارید آن را filled_form.jpg بنامیم. اسکریپت PHP زیر از FormRead برای پردازش این تصویر با فراخوانی متد processImage() و ارائه مسیر فرم اسکن‌شده استفاده می‌کند. سپس نتایج به‌صورت JSON به‌صورت زیبا قالب‌بندی شده رمزگذاری و چاپ می‌شوند.

چگونه یک فرم اسکن‌شده را در برنامه‌های PHP پردازش کنیم؟

require 'vendor/autoload.php';

use FormRead\FormRead;

// Path to the form definition and the scanned image
$formJsonPath = 'path/to/your/form.json';
$imagePath = 'path/to/your/filled_form.jpg';

try {
    // Create a new FormRead instance
    $formRead = new FormRead($formJsonPath);

    // Process the image
    $results = $formRead->processImage($imagePath);

    // Output the results as JSON
    header('Content-Type: application/json');
    echo json_encode($results, JSON_PRETTY_PRINT);

} catch (Exception $e) {
    // Handle any errors
    echo 'Error: ' . $e->getMessage();
}

نقشه‌برداری مختصات فیلد سفارشی

کتابخانه FormRead پشتیبانی کامل از نگاشت مختصات فیلدهای سفارشی فرم را در برنامه‌های PHP فراهم کرده است. توسعه‌دهندگان نرم‌افزار می‌توانند مکان دقیق هر چک‌باکس یا حباب را با استفاده از مختصات پیکسل (x, y)، عرض و ارتفاع تعریف کنند. این امر ضروری است زیرا هر طرح فرم متفاوت است. مثال زیر نشان می‌دهد چگونه می‌توان فرم سفارشی را با مکان‌های دقیق از طریق API PHP تعریف کرد.

چگونه فیلدهای سفارشی فرم را با مکان‌های دقیق از طریق API PHP تعریف کنیم؟

$fields = [
    ['x' => 100, 'y' => 200, 'width' => 20, 'height' => 20],  // Question 1 - Option A
    ['x' => 130, 'y' => 200, 'width' => 20, 'height' => 20],  // Question 1 - Option B
    ['x' => 160, 'y' => 200, 'width' => 20, 'height' => 20],  // Question 1 - Option C
    // Add more fields as needed...
];

پردازش دسته‌جمعی فرم‌ها از طریق API PHP؟

به‌دلیل طراحی ساده و استفاده از تکنیک‌های کارآمد پردازش تصویر، کتابخانه منبع باز FormRead می‌تواند فرم‌ها را به‌راحتی به‌صورت دسته‌ای پردازش کند. این پردازش قدرتمند فرم، آن را برای سیستم‌های ارزیابی امتحانات یا واردات انبوه نظرسنجی‌ها مناسب می‌سازد. مثال زیر نشان می‌دهد که توسعه‌دهندگان نرم‌افزار چگونه می‌توانند پردازش دسته‌ای فرم‌ها را با استفاده از دستورات PHP انجام دهند.

چگونه پردازش دسته‌ای فرم‌ها را با استفاده از کتابخانه PHP انجام دهیم؟

$scans = ['form1.jpg', 'form2.jpg', 'form3.jpg'];

foreach ($scans as $form) {
    $results = FormRead::read($form, $fields);
    // Save to DB or evaluate result
    echo "Form $form: " . implode(',', $results) . "\n";
}
 فارسی