Безкоштовний PHP OMR API для розбору сканованих форм та зображень онлайн
Бібліотека PHP Optical Mark Recognition з відкритим кодом, призначена для розбору сканованих форм та виявлення позначених відповідей у заздалегідь визначених зонах всередині PHP‑застосунку.
Що таке FormRead?
У сучасному цифровому світі автоматизація вилучення даних з форм є критично важливою для бізнесу, освітніх закладів та дослідницьких організацій. У сфері збору даних оптичне розпізнавання позначок (OMR) залишається надійним методом сканування та інтерпретації позначених даних у формах, опитуваннях, тестах і бюлетенях. FormRead, відкритий PHP‑API для OMR (Optical Mark Recognition), пропонує потужне рішення для швидкого читання та обробки позначених форм. Це PHP‑базований OMR‑API, розроблений для виявлення та інтерпретації позначених ділянок на відсканованих формах, опитуваннях або листах відповідей. Він особливо корисний для автоматизації збору даних з паперових форм, зменшення помилок ручного введення та підвищення ефективності.
FormRead — це бібліотека з відкритим кодом для оптичного розпізнавання позначок (Optical Mark Recognition), написана на PHP. Вона підтримує різноманітні типи полів, які зазвичай зустрічаються у OMR‑формах, такі як прапорці, текст, вибір та групи. Бібліотека спеціально розроблена для аналізу відсканованих форм і виявлення позначених відповідей у попередньо визначених зонах — ідеальна для випадків використання, таких як тестові іспити з варіантами відповідей, форми зворотного зв’язку, виборчі бюлетені або будь‑яке збирання даних за допомогою форм. Бібліотека дозволяє розробникам визначати зони (або «сітки») на зображенні форми та потім виявляти, які з цих зон позначені (заповнені) користувачами. У бібліотеці є кілька важливих функцій, таких як гнучке визначення форми, завантаження та обробка зображення, налаштування чутливості порогу, підтримка різних форматів зображень, налаштовувані шаблони, підтримка штрих‑коду та QR‑коду та багато іншого. FormRead — це універсальний PHP OMR API, який спрощує автоматизовану обробку форм. Незалежно від того, чи ви оцінюєте іспити, обробляєте опитування чи оцифровуєте записи, він пропонує гнучке та ефективне рішення.
Початок роботи з 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), ширини та висоти. Це важливо, оскільки кожен макет форми різний. Наведений нижче приклад показує, як визначити кастомну форму з точними розташуваннями за допомогою PHP API.
Як визначити користувацькі поля форми з точними розташуваннями за допомогою PHP API?
$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...
];
Обробка масових форм через PHP API?
Завдяки простому дизайну та використанню ефективних методів обробки зображень, бібліотека з відкритим кодом 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";
}