Tôi sẽ chụp hai hình ảnh và chia tỷ lệ chúng thành độ phân giải thấp hơn nhiều ... như lưới 16 x 16 hoặc hơn. Đánh dấu từng điểm trong lưới như bật hoặc tắt (được vẽ hoặc không được vẽ).
Sau đó phủ lên nhau và xem có bao nhiêu điểm được đặt trong một và không được đặt trong điểm khác. Nếu điều đó vượt quá ngưỡng, hãy gắn cờ nó là không khớp.
Bạn có thể cải thiện thuật toán bằng cách chia tỷ lệ hình ảnh được vẽ. Tìm các pixel được vẽ ở trên cùng và dưới cùng nhiều nhất trong cả hai và chia tỷ lệ hình ảnh được vẽ để khớp với hình ảnh đầu tiên. Bạn có thể làm tương tự với chiều rộng. Bằng cách này, một người chơi sẽ không bị phạt vì vẽ một hình ảnh đẹp, nhưng nhỏ hơn.
Cải thiện khác sẽ là thực hiện nhiều so sánh, dịch chuyển hình ảnh được vẽ sang trái sang phải, lên và xuống, lấy kết quả 'tốt nhất'. Bằng cách đó bạn sẽ không bị phạt vì vẽ một thứ gì đó được bù đắp từ trung tâm.
Đó là tất cả một chút hacky, nhưng tôi nghĩ rằng nó có thể hữu ích hơn để đi tuyến đường này hơn là cố gắng kết hợp logic để phân tích cú pháp và các thuật toán dựa trên cử chỉ hoặc cử chỉ khác.
Xem lý thuyết nhận dạng mẫu đầu tiên tại http://en.wikipedia.org/wiki/Pattern_recognition – Lunik