Ho un'applicazione Android che esegue l'OCR sui documenti. Voglio poter fare un test sull'immagine prima di inviarlo al server. quindi la mia domanda è se c'è qualche strumento/codice disponibile per misurare l'immagine prima di inviarlo al server. Voglio essere in grado di sapere se l'immagine non è a fuoco (non abbastanza nitida), per salvare il tempo di elaborazione dal lato server e non per inviarlo. Grazie DavidControllare la qualità dell'immagine prima dell'OCR
risposta
David, questa è una buona domanda. Per favore condividi le tue scoperte per tutti noi mentre raccogli più feedback.
Ho utilizzato e ho visto diverse tecniche per questo importante passaggio nell'elaborazione. La realtà è che è MOLTO più facile avere l'utente a scattare una buona foto, che a rilevare o correggere un'immagine del letto, che in molti casi non è nemmeno possibile. Quindi il rilevamento è bello da avere, ma non dovrebbe essere la prima azione. Ci sono così tante opzioni che possono essere attivate prima del controllo dell'immagine, e ne elencherò alcune sotto.
tecniche (tecnici e non tecnici) che ha lavorato per me in passato, o hanno lavorato per le persone con cui ho lavorato o sentito parlare di: rilevazione
Shake. Utilizzando l'accelerazione del dispositivo per controllare l'agitazione al momento di scattare la foto. Buon approccio, ma funziona principalmente in condizioni di illuminazione intensa. In un ambiente buio, anche con scuotimenti minimi, l'immagine può essere facilmente macchiata. Questo metodo deve essere usato in combinazione con altri metodi.
Binarizzazione sul dispositivo. Non solo ti permette di comprimere e preparare l'immagine per una trasmissione efficiente, ma ti permette di vedere chiaramente la qualità del testo. Guardare l'immagine a colori con sfondi scuri non è così ovvio in merito alla nitidezza dei singoli caratteri come se guardassero i bordi in bianco e nero di quei personaggi.
Schermata di anteprima. Permetti all'utente di vedere l'immagine che hanno scattato e stanno per inviare. Spesso visualizzo app che consentono di visualizzare l'anteprima dell'immagine, ma sono disabilitate quando tocchi due volte su di esso. Qualsiasi testo (anche se è cattivo) apparirà bene su un piccolo schermo, perché non è possibile visualizzare il testo.
Io lo chiamo 'anteprima forzata'. Dopo aver scattato l'immagine, e preferibilmente dopo la binarizzazione, zoomare automaticamente 10 volte e chiedere all'utente di confermare se vedono il testo nitido o meno. Sembra invasivo, quindi un buon design è importante qui, ma questo metodo è affidabile perché può essere fatto come un passaggio obbligato.
Semplici istruzioni guidate su ... Come scattare buone foto! Alcune app mostrano ti una volta a firstrun. Alcune app ti danno la possibilità di disabilitare. Nelle mie app, ho visto un notevole aumento della qualità dopo aver fornito queste istruzioni dopo l'aggiornamento della mia app FotoNote su iOS.
- 1. Come controllare la qualità degli screenshot di selenio
- 2. conserva la qualità dell'immagine
- 3. Cambia la qualità webRTC
- 4. Asp.Net Controllare la dimensione del file prima del caricamento
- 5. Controllare se la funzione esiste prima di chiamare?
- 6. controllare la versione dei pacchetti pip disponibili prima di installare
- 7. Controllare le condizioni prima del metodo chiamare
- 8. Migliorare la qualità della conversione di Wand
- 9. Controllare l'URL prima di reindirizzare symfony2
- 10. Come migliorare la qualità dell'immagine prima dell'inizio dell'elaborazione dell'immagine in javacv o opencv?
- 11. drawInRect: perdere la qualità della risoluzione dell'immagine
- 12. Come viene calcolata la qualità xgboost?
- 13. Come ridimensionare l'immagine senza perdere la qualità
- 14. La qualità PNG sembra orribile su iPhone
- 15. Java come impostare la qualità jpg
- 16. Migliora la qualità di rilevamento Tesseract
- 17. C++ 0x ottimizzando la qualità del compilatore
- 18. Qualità ridimensionamento immagine (Java)
- 19. come controllare se la pagina viene caricata per la prima volta usando javascript
- 20. Controllare la modalità visuale
- 21. Devo controllare se ProgressBar isShowing prima di chiuderlo?
- 22. Cosa devo controllare prima di rilasciare un'applicazione Web?
- 23. IOS: Ridurre le dimensioni dell'immagine senza ridurre la qualità dell'immagine
- 24. Image.GetThumbnailimage metodo e qualità
- 25. Dashboard metrica qualità TeamCity
- 26. Python PIL jpeg qualità
- 27. Qualità font WPF
- 28. Canvas DrawImage() scarsa qualità
- 29. jquery - Controllare l'estensione del file prima di caricare
- 30. Controllare se un DateTime è prima di DateTime.Ora
I telefoni sono veloci in questi giorni .. perché non eseguire un OCR sul client e inviare i * risultati * al server per la convalida? – bdares
https://github.com/rmtheis/tess-two/blob/master/eyes-two/jni/imageutils/blur.cpp – rmtheis