Công cụ đánh nhãn Paddle text detection – Paddle Polygon

Mục lục

  1. Giới thiệu
  2. Tab đánh nhãn Detection
  3. Tab đánh nhãn Recognition
  4. Download

1. Giới thiệu

1.1 Giới thiệu về Paddle OCR

Paddle OCR là bộ toolkit cung cấp các chức năng về nhận diện ký tự OCR của cty PaddlePaddle (Trung Quốc). Trong Paddle OCR có PP-OCR là thư viện phát hiện vị trí text và nhận diện cho kết quả rất tốt.

PP-OCR có 2 thuật toán chính là Detection (Det) và Recognition (Rec):

  • Detection: huấn luyện mô hình phát hiện vị trí text trong ảnh, kết quả trả về là polygon (đa giác)
  • Recognition: huấn luyện mô hình nhận diện text đã crop, kết quả trả về ký tự

Link tham khảo:

Hướng dẫn training Detection

Hướng dẫn training Recognition

1.2 Giới thiệu về tool Paddle Polygon

Paddle Polygon là công cụ đánh nhãn (labeling) do công ty VisCom Solution phát triển cho việc tạo dữ liệu huấn luyện Paddle OCR. Chương trình viết dạng Windows application (exe), dễ dàng chạy trên hệ điều hành Windows.

Chương trình có 2 tab để tạo label cho cả 2 loại model det rec.

Ưu điểm

  • Đơn giản – dễ sử dụng: dạng portable, không cần cài đặt thư viện khác
  • Nhẹ – không yêu cầu cấu hình mạnh

2. Tab đánh nhãn Detection

2.1 Format của file label Detection

PP-OCR sử dụng file label cho mỗi ảnh theo định dạng JSON, mỗi file chứa một array, trong đó mỗi object là một vùng text:

  • points: thườnglà tứ giác, mỗi điểm là giá trị x,y (số nguyên)
  • transcription nội dung text, có thể set null nếu chỉ training detection
  • ignore: đánh dấu bỏ qua khi training (optional)

2.2 Chức năng của tab Detection

Tab Detection hỗ trợ người dùng vẽ các tứ giác và xuất dữ liệu đúng chuẩn format của Paddle.

Chức năng tab Detection

  • Load ảnh từ folder, ảnh chưa đánh nhãn vẽ màu đỏ
  • Vẽ tứ giác và di chuyển các điểm cho phù hợp với text
  • Đánh nhãn cho text và save, nếu không đánh nhãn mặc định là ### theo format của PPOCR
  • Nút Combine dùng để tạo file train.txt và val.txt huấn luyện model detect
  • Nút Crop để tạo label Recognition (tab recognition)

Theo chuẩn của Paddle OCR thì input chấp nhận đa giác (polygon), tuy nhiên trong thực tế các trường hợp đó ít xảy ra và xử lý khá khó khăn. Vì vậy chúng tôi quy ước là tứ giác (quad) để thuận tiện làm việc.

Nguyên lý hoạt động của tab Detection

  • Với mỗi ảnh tạo 1 file label .json
  • Khi đánh nhãn xong ấn nút Combine để tạo ra 2 file train.txtval.txt. File train.txt chứa 80% số lượng ảnh, file val.txt chứa 20% số lượng ảnh sắp xếp ngẫu nhiên

3. Tab đánh nhãn Recognition

3.1 Format của file label Recognition

PPOCR training recognition với dataset là ảnh đã crop, mỗi ảnh có 1 file label đuôi .txt chứa text của ảnh đó.

3.2 Chức năng của tab Recognition

Tab Recognition hỗ trợ người dùng đánh nhãn trực quan, ít thao tác nhất. Chương trình có phân trang vì load nhiều ảnh cùng lúc có thể gây lag.

Chức năng tab Detect

  • Người dùng click vào text để edit, ấn Enter để save thành label
  • Có nút Find no label để tìm ảnh chưa gán nhãn vì chương trình có phân trang để load cho nhanh
  • Sau khi đánh nhãn xong sẽ tạo 2 file train.txt và val.txt để training recognition. File train.txt chứa 80% ảnh, val.txt chứa 20% ảnh sắp xếp ngẫu nhiên

Download

Leave a Reply