Ana Brainiall

استخرج النص من الصور باستخدام Vision AI

iniciante · 8 min · Por Ana Brainiall

تغيّر OCR كلياً بين 2024 و2026

يعمل OCR التقليدي (Tesseract، منذ 1985) بخطوتين:

1. الكشف: يحدد المناطق في الصورة التي تحتوي على نص
2. التعرف: يصنّف كل حرف على حدة

يؤدي أداءً جيداً مع المستندات المطبوعة النظيفة، بالخطوط الشائعة، وباللغة الإنجليزية. أما في أي سيناريو آخر (خط اليد، اللافتات المنحنية، النص في الصور، اللغات النادرة، التخطيطات المعقدة) فتنخفض الدقة إلى 60-70%.

أحدثت نماذج اللغة البصرية الحديثة (Claude Sonnet، GPT-5، Gemini 3 Pro) ثورة في مجال OCR. فبدلاً من تصنيف الحروف واحداً تلو الآخر، تقوم بـتفسير الصورة ككل — تدرك السياق، وتصحح الأخطاء بناءً على المعنى، وتتعامل مع أي تخطيط مهما كان.

comparação lado a lado — à esquerda uma receita manuscrita com Tesseract gerando

متى تستخدم كل أداة

Tesseract (مفتوح المصدر، يعمل محلياً على CPU):
- المستندات المطبوعة الموحدة (الفواتير، ملفات PDF الممسوحة ضوئياً)
- الحجم الكبير (10 آلاف صفحة يومياً أو أكثر) حيث تُعدّ سرعة الاستجابة أمراً بالغ الأهمية
- الحالات التي تحول فيها متطلبات الخصوصية دون الإرسال إلى السحابة
- التكلفة: لا شيء تقريباً

Vision-LLM (عبر API):
- النص المكتوب بخط اليد
- اللافتات والملصقات وصور الشوارع
- النصوص على الأجسام ثلاثية الأبعاد (العلب، الملصقات المنحنية)
- المستندات ذات التخطيط المعقد (الجداول، الأعمدة المتعددة، الحواشي)
- اللغات ذات الموارد المحدودة (العربية، الصينية، العبرية)
- التكلفة: من 0.005 إلى 0.05 دولار لكل صورة

Whisper-OCR (نموذج متخصص):
- المستندات التي تحتوي على جداول كثيرة
- المعادلات الرياضية
- التخطيطات العلمية (الأوراق البحثية)

كيف تصيغ طلباً فعّالاً

لتحقيق أفضل النتائج مع vision-LLM، نظّم الـ prompt على النحو التالي:

سيء:
> "OCR this"

جيد:
> "استخرج كل النص المرئي في هذه الصورة، مع الحفاظ على البنية الهرمية (العنوان، العناوين الفرعية، الفقرات). إذا كان هناك جدول، نسّقه بصيغة markdown. إذا كان النص غير مقروء في منطقة ما، أشر إلى [غير مقروء]. إذا كان هناك نص بلغات متعددة، افصل بينها."

الفرق في الجودة كبير جداً. يستخدم LLM "فهمه" للبنية لتنظيم المخرجات.

حالات استخدام عملية

المزالق التقنية

التكامل عبر API

`python
import httpx, base64

with open("foto.jpg", "rb") as f:
img_b64 = base64.b64encode(f.read()).decode()

r = httpx.post(
"https://api.brainiall.com/v1/chat/completions",
json={
"model": "claude-sonnet-4-6",
"messages": [{
"role": "user",
"content": [
{"type": "text", "text": "استخرج النص من هذه الصورة بصيغة markdown مع الحفاظ على البنية."},
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img_b64}"}}
]
}]
},
headers={"Authorization": "Bearer brnl-xxx"}
)
print(r.json()["choices"][0]["message"]["content"])
`

جرّبه الآن

في محادثة Brainiall، انقر على أيقونة إرفاق الملف، أرسل صورة تحتوي على نص واطلب "استخرج النص من هذه الصورة". النتيجة في 2-5 ثوانٍ. خطة Pro تشمل 100 تحليل شهرياً؛ وخطة Business تفتح إمكانية المعالجة الدفعية (batch).

أعجبك المحتوى؟

افتح 17 دورة Pro + 40+ نموذج AI في الدردشة + إنشاء فيديو وموسيقى والاستوديو الكامل.

اشترك في Pro · $5.99/شهر

ألغِ في أي وقت · بدون التزام