Tôi muốn hỏi một câu hỏi khác liên quan đến How to remove convexity defects in a Sudoku square?Phát hiện Sudoku Square ở một hình ảnh
Tôi thực hiện một Sudoku Solver trong OpenCV-Python và nó hoạt động khá tốt. Nhưng tại thời điểm này, tôi đã đưa ra một giả định sẽ đơn giản hóa vấn đề của tôi.
Assumption là: Sudoku boundary(square) is the biggest blob in the input image
Ví dụ:
Khối màu đỏ là hình vuông phát hiện. Bạn có thể thấy nó bao gồm phần chính của hình ảnh.
Vấn đề:
Vấn đề là gì, nhưng giả định. If sudoku square has another square around it, method fails. Or if the image has another bigger blob than the sudoku square, again method fails.
Ví dụ: hãy lấy số image này. (Tôi không muốn tải lên hình ảnh ban đầu ở đây, nó là khá lớn, còn tôi muốn tải lên kết quả anyway)
Tôi đã thử nhiều phương pháp sau đây để tìm vuông sudoku trong hình ảnh này:
1) Find the biggest blob
Sau đó, tôi có vùng màu đỏ. Method Failed
.
(ảnh thay đổi kích cỡ từ ảnh gốc để giảm kích thước)
2) Find only square regions
Bạn có thể thấy rất nhiều ứng cử viên đang có, đặc biệt là KING CROSSWORD
đó là tất cả các cách tương tự như Sudoku . Method again fails
In short, this image has everything, to fail me.
Câu hỏi:
How to detect a sudoku square in an image, especially in the test image i gave? Is there any better algorithm for this?
UPDATE: Sau khi đọc một số câu trả lời và ý kiến, tôi nghĩ rằng tôi nên đưa ra một bản cập nhật. Nhìn vào hình ảnh dưới đây:
Hình ảnh này có một sudoku câu hỏi và câu trả lời sudoku trước. Cả hai đều giống nhau. Tôi nghĩ rằng việc tìm kiếm các khối phụ hoặc kiểm tra OCR sẽ không hoạt động ở đây.
Một phương pháp hoàn toàn khác và có thể vô dụng, nhưng bạn không thể đẩy nó qua hệ thống OCR, và tìm kiếm gợi ý văn bản ở đâu trước tiên, sau đó đi từ đó? – Nanne
Tôi không nghĩ vậy.Kiểm tra cập nhật trong câu hỏi. –
Vâng, tôi đã cung cấp cho nó như là một bình luận bởi vì tôi đã không chắc chắn :) .. Tuy nhiên, tôi nghĩ rằng bạn cần phải sử dụng nhiều phương pháp. Người ta có thể tìm thấy khu vực chung của sudoku bởi OCR (vì vậy bạn không nhận được các phim hoạt hình), và sau đó tìm blob/square lớn nhất? một cái gì đó như thế. Chỉ cần suy nghĩ to;) – Nanne