YAML Metadata
Warning:
empty or missing yaml metadata in repo card
(https://huggingface.co/docs/hub/model-cards#model-card-metadata)
🧮 Pix2Text‑MFR: Nhận dạng Công Thức Toán Học Viết Tay
Mô hình breezedeus/pix2text-mfr sử dụng kiến trúc TrOCR (vision-encoder-decoder) và đã được huấn luyện lại chuyên biệt trên ảnh công thức toán học để chuyển đổi ảnh thành biểu diễn LaTeX.
📌 Mục Đích
Chuyển đổi hình ảnh chứa công thức toán học (in hoặc viết tay) thành chuỗi LaTeX.
✅ Tính năng
- Nhận dạng công thức in và viết tay (handwritten).
- Ra kết quả dưới dạng chuỗi LaTeX có thể biên dịch.
- Sử dụng kiến trúc TrOCR nhỏ gọn, có thể chạy trên CPU hoặc GPU.
- Kết quả đạt Character Error Rate thấp (CER ≈ 2.1%) trên tập thử nghiệm 485 ảnh thật :contentReference[oaicite:1]{index=1}.
⚠️ Hạn chế
- Chỉ hiệu quả với ảnh công thức toán học, không áp dụng cho ảnh khác.
- Độ chính xác phụ thuộc vào chất lượng ảnh (nhiễu, mờ).
- Không hiệu quả nếu ảnh chứa chữ thường, ký tự lẫn trong văn bản phức tạp.
🛠 Cài đặt
pip install transformers pillow optimum[onnxruntime]
Ngoài ra nếu cần xử lý văn bản và hình đa dạng, có thể cài thêm Pix2Text toolkit để hỗ trợ xử lý layout và văn bản chung:
pip install pix2text>=1.1
🧪 Cách sử dụng
⭐ Phương pháp 1: Sử dụng mô hình trực tiếp (chỉ công thức)
from PIL import Image
from transformers import TrOCRProcessor
from optimum.onnxruntime import ORTModelForVision2Seq
processor = TrOCRProcessor.from_pretrained("breezedeus/pix2text-mfr")
model = ORTModelForVision2Seq.from_pretrained("breezedeus/pix2text-mfr", use_cache=False)
images = [Image.open(fp).convert("RGB") for fp in ['formula1.png', 'formula2.jpg']]
pixel_values = processor(images=images, return_tensors="pt").pixel_values
generated_ids = model.generate(pixel_values)
latex_texts = processor.batch_decode(generated_ids, skip_special_tokens=True)
print(latex_texts)
🛠 Phương pháp 2: Sử dụng cùng với Pix2Text
Dùng Pix2Text để nhận diện vùng công thức và văn bản hỗn hợp:
from pix2text import Pix2Text
p2t = Pix2Text.from_config()
# Avatar images containing mixed text + formula
outs = p2t.recognize("mixed_sample.png", file_type='text_formula', return_text=True)
print(outs)
📈 Hiệu Năng
Tập thử nghiệm: 485 ảnh lấy từ người dùng Pix2Text Online
CER (Character Error Rate):
Pix2Text-MFR (open-source): 2.1%
Texify: 5.5%, Latex-OCR: 6.2%
- Downloads last month
- -
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
🙋
Ask for provider support