1. Các sản phẩm
  2.   OMR
  3.   PHP
  4.   FormRead
 
  

API OMR PHP miễn phí để phân tích biểu mẫu và hình ảnh đã quét trực tuyến

Thư viện PHP Nhận dạng Dấu Đánh dấu Quang học (Optical Mark Recognition) mã nguồn mở được thiết kế để phân tích biểu mẫu đã quét và phát hiện câu trả lời đã đánh dấu từ các vùng đã định trước trong ứng dụng PHP.

FormRead là gì?

Trong thế giới kỹ thuật số ngày nay, việc tự động trích xuất dữ liệu từ các mẫu là vô cùng quan trọng đối với doanh nghiệp, các tổ chức giáo dục và các tổ chức nghiên cứu. Trong lĩnh vực thu thập dữ liệu, Nhận dạng Dấu hiệu Quang học (OMR) vẫn là phương pháp đáng tin cậy để quét và diễn giải dữ liệu được đánh dấu trên các mẫu, khảo sát, bài kiểm tra và phiếu bầu. FormRead, một API OMR (Optical Mark Recognition) mã nguồn mở cho PHP, cung cấp giải pháp mạnh mẽ để đọc và xử lý các mẫu đã đánh dấu một cách hiệu quả. Đây là một API OMR dựa trên PHP được thiết kế để phát hiện và diễn giải các khu vực được đánh dấu trên các mẫu, khảo sát hoặc phiếu trả lời đã quét. Nó đặc biệt hữu ích cho việc tự động thu thập dữ liệu từ các mẫu giấy, giảm lỗi nhập liệu thủ công và nâng cao hiệu suất.

FormRead là một thư viện Nhận dạng Dấu hiệu Quang học (Optical Mark Recognition) mã nguồn mở được viết bằng PHP. Nó hỗ trợ nhiều loại trường thường gặp trong các biểu mẫu OMR, như hộp kiểm, văn bản, lựa chọn và nhóm. Thư viện được thiết kế đặc biệt để phân tích các biểu mẫu đã quét và phát hiện các câu trả lời đã đánh dấu từ các vùng đã định trước — lý tưởng cho các trường hợp như kỳ thi trắc nghiệm, biểu mẫu phản hồi, phiếu bầu, hoặc bất kỳ việc thu thập dữ liệu dựa trên biểu mẫu nào. Thư viện cho phép các nhà phát triển định nghĩa các vùng (hoặc “lưới”) trên hình ảnh biểu mẫu và sau đó phát hiện những vùng nào đã được người dùng đánh dấu (điền). Có một số tính năng quan trọng của thư viện, như định nghĩa biểu mẫu linh hoạt, tải và xử lý hình ảnh, xử lý độ nhạy ngưỡng, hỗ trợ nhiều định dạng hình ảnh, mẫu tùy chỉnh, hỗ trợ Mã vạch & QR Code, và nhiều hơn nữa. FormRead là một API OMR PHP đa năng giúp đơn giản hoá việc xử lý biểu mẫu tự động. Dù bạn đang chấm điểm kỳ thi, xử lý khảo sát, hay số hoá hồ sơ, nó cung cấp một giải pháp linh hoạt và hiệu quả.

Previous Next

Bắt đầu với FormRead

Cách khuyến nghị để cài đặt Thư viện PHP FormRead là sử dụng Composer. Vui lòng sử dụng lệnh sau để cài đặt một cách suôn sẻ.

Cài đặt OFormReadMR qua Composer

 composer require mojv/formread
 

Cài đặt FormRead qua GitHub

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

Xử lý mẫu quét bằng PHP

Thư viện FormRead mã nguồn mở giúp các nhà phát triển phần mềm dễ dàng tải và xử lý các mẫu và hình ảnh đã quét trong các ứng dụng PHP. Đầu tiên, bạn sẽ có một hình ảnh đã quét của mẫu đã hoàn thành, chúng ta sẽ gọi nó là filled_form.jpg. Đoạn script PHP sau sử dụng FormRead để xử lý hình ảnh này bằng cách gọi phương thức processImage() với đường dẫn tới mẫu đã quét. Kết quả sau đó được mã hoá thành JSON được định dạng đẹp mắt và được in ra.

Làm thế nào để xử lý mẫu quét trong các ứng dụng 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();
}

Ánh xạ tọa độ trường tùy chỉnh

Thư viện FormRead đã cung cấp hỗ trợ đầy đủ cho việc ánh xạ tọa độ các trường mẫu tùy chỉnh trong các ứng dụng PHP. Các nhà phát triển phần mềm có thể xác định vị trí chính xác của mỗi ô kiểm hoặc ô tròn bằng cách sử dụng tọa độ pixel (x, y), chiều rộng và chiều cao. Điều này rất quan trọng vì mỗi bố cục mẫu đều khác nhau. Ví dụ sau đây cho thấy cách định nghĩa mẫu tùy chỉnh với các vị trí chính xác thông qua API PHP.

Làm thế nào để định nghĩa các trường mẫu tùy chỉnh với vị trí chính xác thông qua 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...
];

Xử lý hàng loạt mẫu qua API PHP?

Nhờ thiết kế đơn giản và việc sử dụng các kỹ thuật xử lý hình ảnh hiệu quả, thư viện mã nguồn mở FormRead có thể xử lý các mẫu đơn hàng loạt một cách dễ dàng. Nhờ khả năng xử lý mẫu mạnh mẽ này, nó phù hợp cho hệ thống chấm điểm kỳ thi hoặc nhập khẩu khảo sát quy mô lớn. Ví dụ sau đây minh họa cách các nhà phát triển phần mềm có thể thực hiện xử lý mẫu hàng loạt bằng các lệnh PHP.

Làm thế nào để thực hiện xử lý hàng loạt mẫu bằng thư viện 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";
}
 Tiếng Việt