Chuyển tới nội dung chính

Nhận diện hình ảnh/văn bản

Việc sử dụng nhận diện hình ảnh và nhận diện văn bản là điều cần thiết trong một số trò chơi hoặc tác vụ mà vị trí tọa độ trên màn hình luôn thay đổi. Đối với nhận diện hình ảnh, chúng ta sử dụng cái gọi là mẫu, tức là một phần của hình ảnh cần được tìm thấy trên màn hình của bạn. Còn đối với nhận diện văn bản, bất kỳ văn bản nào xuất hiện trên màn hình đều có thể được nhận diện.

Nhận diện hình ảnh

Trước khi bạn có thể sử dụng nhận diện hình ảnh, bạn cần chụp lại một mẫu trên màn hình thiết bị, để chụp mẫu bạn có thể làm theo các bước sau:

1. Nhấn Chụp mẫu

Home Page

2. Chụp vùng màn hình để dùng cho nhận diện

Home Page

3. Lưu mẫu hình ảnh của bạn

Home Page

Sau khi chúng ta đã lưu mẫu hình ảnh, chúng ta có thể dùng mẫu để thực hiện nhận diện hình ảnh. Để nhận diện hình ảnh bạn có thể dùng Screen:click(). Ví dụ

Mã tương đương

# click 'stop-button.jpg'
Screen:click('stop-button.jpg');

Trình dựng khối tương đương

Nhận diện văn bản

Để nhận diện văn bản bạn có thể dùng phương thức Screen:click() nhưng bạn cần truyền ClickParams():setDetectionType('TEXT') ở tham số thứ hai để thay đổi hành vi chạm. setDetectionType chỉ chấp nhận 2 giá trị là TEXTIMAGE, mặc định loại nhận diện là IMAGE. Vì vậy, để bạn có thể thực hiện nhận diện văn bản, hãy đổi giá trị của setDetectionType thành TEXT. Ví dụ

Mã tương đương

Screen:click('your text', ClickParams():setDetectionType('TEXT'):setDetectionMethod(1))

Trình dựng khối tương đương

Nếu bạn quan sát kỹ hơn, có 2 loại phương pháp nhận diện văn bản:

  1. Theo từng từ (Word By Word - mặc định) Nếu bạn dùng phương pháp này, việc nhận diện văn bản sẽ chia việc so khớp thành nhiều mảnh từ; trong trường hợp này, kịch bản tốt nhất là khi bạn chỉ muốn nhận diện 1 từ duy nhất
  2. Theo từng dòng (Line By Line) Nếu bạn dùng phương pháp này, việc nhận diện văn bản sẽ chia việc so khớp thành nhiều mảnh dòng; trong trường hợp này, kịch bản tốt nhất là khi bạn muốn nhận diện 2 hay nhiều từ cùng lúc

Để thay đổi phương pháp nhận diện bạn có thể thay đổi giá trị của setDetectionMethod(). Các tham số của hàm này là:

  • 1 cho Theo từng từ
  • 2 cho Theo từng dòng

Bước tiếp theo

Sau khi bạn đã quen với việc nhận diện cơ bản, hãy đọc Các chiến lược nhận diện để biết khi nào nên dùng Screen, Region, nhận diện hình ảnh, nhận diện văn bản, tỷ lệ động, thang độ xám và tinh chỉnh điểm trong các macro nâng cao hơn.