File size: 3,968 Bytes
21ac63b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | # راهنمای استفاده از dots.ocr Space
## نصب و راهاندازی
### 1. آپلود به Hugging Face Space
1. فایلهای پروژه را به یک Hugging Face Space جدید آپلود کنید
2. مطمئن شوید که Space از نوع Gradio است
3. GPU را در تنظیمات Space فعال کنید (توصیه میشود: T4 یا بالاتر)
### 2. استفاده از رابط کاربری
بعد از راهاندازی Space:
1. تصویر سند خود را آپلود کنید
2. نوع پرامپت را انتخاب کنید:
- **Full Layout + OCR**: تحلیل کامل با bounding box، دستهبندی و متن
- **OCR Only**: استخراج ساده متن
- **Layout Detection Only**: فقط تشخیص چیدمان
- **Custom**: پرامپت سفارشی
3. دکمه "Process Document" را بزنید
4. نتیجه را در قالب JSON دریافت کنید
### 3. استفاده از API
#### روش Python:
```python
from gradio_client import Client
# آدرس Space خود را وارد کنید
client = Client("YOUR_USERNAME/YOUR_SPACE_NAME")
# پردازش تصویر
result = client.predict(
image="path/to/your/image.jpg",
prompt_type="Full Layout + OCR (English)",
custom_prompt="",
api_name="/predict"
)
print(result)
```
#### استفاده از اسکریپت آماده:
```bash
# نصب کتابخانه
pip install gradio_client
# اجرای اسکریپت
python api_example.py \
--image your_document.jpg \
--space-url YOUR_SPACE_URL \
--prompt-type "Full Layout + OCR (English)"
```
### 4. استفاده از cURL:
```bash
curl -X POST "YOUR_SPACE_URL/api/predict" \
-H "Content-Type: application/json" \
-d '{
"data": [
{"path": "base64_encoded_image_or_url"},
"Full Layout + OCR (English)",
""
]
}'
```
## فرمت خروجی
### Full Layout + OCR:
```json
[
{
"bbox": [x1, y1, x2, y2],
"category": "Text",
"text": "محتوای متن..."
},
{
"bbox": [x1, y1, x2, y2],
"category": "Table",
"text": "<table>...</table>"
},
{
"bbox": [x1, y1, x2, y2],
"category": "Formula",
"text": "\\LaTeX{formula}"
}
]
```
## نکات مهم
1. **کیفیت تصویر**: برای نتایج بهتر از تصاویر با کیفیت بالا استفاده کنید
2. **رزولوشن**: حداکثر 11,289,600 پیکسل توصیه میشود
3. **زبان**: مدل از زبانهای متعدد پشتیبانی میکند
4. **PDF**: فایلهای PDF با DPI=200 بهترین نتیجه را میدهند
## عیبیابی
### خطای Out of Memory:
- سایز تصویر را کاهش دهید
- از GPU بزرگتری استفاده کنید
### خروجی نادرست:
- پرامپت دیگری امتحان کنید
- کیفیت تصویر را بهبود دهید
### مدل لود نمیشود:
- مطمئن شوید GPU فعال است
- صبر کنید تا مدل دانلود شود (اولین بار کمی طول میکشد)
## پشتیبانی
- GitHub: https://github.com/rednote-hilab/dots.ocr
- Hugging Face Model: https://huggingface.co/rednote-hilab/DotsOCR
## مثالهای کاربردی
### 1. استخراج متن از فاکتور:
```python
result = client.predict(
image="invoice.jpg",
prompt_type="Full Layout + OCR (English)",
custom_prompt=""
)
```
### 2. تشخیص فرمولهای ریاضی:
```python
result = client.predict(
image="math_document.png",
prompt_type="Full Layout + OCR (English)",
custom_prompt=""
)
# فرمولها به فرمت LaTeX استخراج میشوند
```
### 3. استخراج جداول:
```python
result = client.predict(
image="table_document.jpg",
prompt_type="Full Layout + OCR (English)",
custom_prompt=""
)
# جداول به فرمت HTML استخراج میشوند
```
|