Video: Bài 7: OCR đọc text và Tìm chữ OCR
Mở trên YouTube ↗🔎 Tìm chữ OCR (ocr_find)
Nhóm palette: Hình ảnh · type: ocr_find · cổng: 1 vào · 2 ra (Thấy / Không thấy)
Mục đích
OCR một vùng (hoặc cả cửa sổ), tìm chuỗi chữ, rồi click tâm chữ hoặc chỉ kiểm tra. Engine lọc icon/HUD rồi OCR từng dòng — khung rộng (thanh Liên Minh / Thư / Kho) vẫn đọc được nhãn, không đọc map thành ký tự rác.
Cần Tesseract. Capture behind-safe, không focus trừ khi action = click và đã thấy. So khớp bỏ dấu tiếng Việt (Trụ Sở ≈ Trự Sở).
Capture vs chuộtCùng hệ tọa độ client / Preview. Đợi hình / OCR / Preview dùng
WGC hoặc PrintWindow (behind_safe) — vẫn lấy được buffer cửa sổ khi app bị cửa sổ khác che (tùy app/GPU; một số game/DX có thể đen → tool focus rồi chụp lại). Vào node nhận diện không cướp focus (chỉ restore + nâng z-order). Click sau khi thấy ảnh vẫn dùng chuột hệ thống (SendInput). Cửa sổ đổi size: engine thử tỉ lệ ~0.50–2.20 rồi map tọa độ về client.Cách dùng
- Dùng khi nút/label đổi chữ theo ngôn ngữ hoặc theo acc, không cắt được template ổn định; hoặc click dòng trong list theo chữ.
- Không dùng khi nút có icon cố định — Click hình ảnh chắc và nhanh hơn.
- Nút Thử tìm chữ ngay: hiện chữ OCR trên vùng, tô chỗ trùng chuỗi tìm (không crash). View lớn: gợi ý cắt vùng nằm thanh công cụ, không đè lên ảnh capture.
Từng setting
| Ô trên Properties | Key | Mặc định | Ý nghĩa / cách dùng |
|---|---|---|---|
| Delay sau (ms) | delay_after_ms | 130 | Sau nhánh Thấy hoặc Không thấy. |
| Cách dùng | action | click | click = Tìm rồi click; check = Chỉ kiểm tra (không click). |
| Chữ cần tìm | text | "" | Hỗ trợ {biến}. Bắt buộc. |
| So sánh | op | contains | contains / equals. |
| Không phân biệt hoa thường | ignore_case | true | Bật mặc định. |
| Vùng tìm | x / y / w / h | 0 | w/h = 0 → cả cửa sổ. Cắt vùng từ view lớn; nút Gỡ vùng. |
| Ngôn ngữ | lang | vie | vie / eng / tha — một ngôn ngữ. |
| Timeout (ms) | timeout_ms | 0 | 0 = quét một lần. >0 = poll (retry ~400 ms). |
| (click) Lần gặp | which | first | first / last / index. |
| (click + index) Thứ N | index | 1 | 1-based. |
| (click) Lệch / nút / số click | click_offset_x / y, button, clicks, gap | như Click ảnh | Offset tâm hộp chữ, left/right/middle, số click, gap. |
Ví dụ thực tế
- A. Click nút “Nhận” — action=click, text=
Nhận, contains, timeout 5000, vùng sát hàng nút. - B. Chỉ hỏi có chữ “Banned” — action=check → cổng Thấy → Telegram + End.
- C. Chữ từ biến — text=
{nut_claim}khai trên Start. - D. List / Thứ N —
which=lasthoặcindexThứ N=2. - E. HUD — text=
Trụ Sở/Thư/Kho/3/3— nới khung dính icon vẫn được; so khớp bỏ dấu.
Lưu ý
Biến sau khi thấy
match_found, match_score (confidence), ocr_hit (chữ khớp), match_x match_y.Cắt sát cụm chữCắt sát cho nhanh. Nới khung dính icon HUD vẫn đọc nhãn.
Trụ Sở vẫn khớp nếu OCR ra Trự Sở (bỏ dấu). Click dùng tâm hộp chữ + offset. Ẩn UI: psm 6, min_conf 50, retry_ms 400.Xem thêm: OCR đọc text · Click hình ảnh · If OCR / biến