Vorrei fare un'altra domanda relativa a How to remove convexity defects in a Sudoku square?Rilevamento Sudoku quadrato in un'immagine
ho implementato un Sudoku Solver in OpenCV-Python e funzionare abbastanza bene. Ma in questo momento, ho fatto un'ipotesi che semplificherà il mio problema.
Assunzione è: Sudoku boundary(square) is the biggest blob in the input image
Es:
Il blocco rosso è il quadrato rilevato. Puoi vedere che copre la maggior parte dell'immagine.
Il problema:
problema non è altro che il presupposto. 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.
Ad esempio, prendere questo image. (Non voglio caricare immagine originale qui, è abbastanza grande, anche io voglio caricare il risultato in ogni caso)
Ho provato diversi seguenti metodi per trovare quadrato sudoku in questa immagine:
1) Find the biggest blob
Poi ho ottenuto la regione di colore rosso. Method Failed
.
(immagine viene ridimensionata da immagine originale per ridurre le dimensioni)
2) Find only square regions
si può vedere un sacco di candidati ci sono, soprattutto KING CROSSWORD
che è tutto modo simile al Sudoku . Method again fails
In short, this image has everything, to fail me.
Domanda:
How to detect a sudoku square in an image, especially in the test image i gave? Is there any better algorithm for this?
UPDATE: Dopo aver letto alcune risposte e commenti, penso che dovrei dare un aggiornamento. Guardate l'immagine qui sotto:
Questa immagine ha un sudoku domanda e risposta precedente di sudoku. Entrambi sono uguali. Penso che la ricerca di sottoblocchi o test OCR non funzionerà qui.
Un metodo completamente diverso e forse inutile, ma non si potrebbe spingerlo attraverso un sistema OCR, e cercare un suggerimento testuale dove guardare prima, e poi andare da lì? – Nanne
Io non la penso così.Controlla l'aggiornamento nella domanda. –
Beh, l'ho dato come commento perché non ero sicuro :) .. Tuttavia, penso che sia necessario utilizzare più metodi. Uno potrebbe essere quello di trovare l'area generale del sudoku con l'OCR (in modo da non ottenere i cartoni animati), e quindi trovare il più grande blob/quadrato? qualcosa del genere. Basta pensare ad alta voce;) – Nanne