Mam aplikację Android, która wykonuje OCR na dokumentach. Chcę móc wykonać test na obrazie przed wysłaniem go na serwer. , więc moje pytanie brzmi, czy istnieje jakieś narzędzie/kod dostępny do pomiaru ostrości obrazu przed wysłaniem go na serwer. Chcę wiedzieć, czy obraz nie jest ostry (nie wystarczająco ostry), aby zaoszczędzić czas przetwarzania od strony serwera, a nie wysłać go. Dziękuję DavidSprawdź jakość obrazu przed OCR
Odpowiedz
David, to dobre pytanie. Podziel się swoimi odkryciami dla nas wszystkich, gdy zbierzesz więcej opinii.
Użyłem i widziałem kilka technik dla tego ważnego kroku w przetwarzaniu. Rzeczywistość jest taka, że DUŻO łatwiej jest zrobić dobre zdjęcie, niż wykryć lub poprawić obraz łóżka, co w wielu przypadkach nie jest możliwe. Dlatego dobrze jest mieć wykrywanie, ale to nie powinno być pierwsze działanie. Jest tak wiele opcji, które można uruchomić przed sprawdzeniem obrazu, a ja wymienię kilka poniżej.
Techniki (technicznych i nietechnicznych), który pracował dla mnie w przeszłości, lub pracowały dla ludzi, z którymi pracowałem lub słyszał: wykrywanie
Shake. Za pomocą przyspieszenia urządzenia sprawdzić drgania w momencie robienia zdjęcia. Dobre podejście, ale działa głównie w jasnym oświetleniu. W ciemnym otoczeniu, nawet przy minimalnym drganiu, obraz może być łatwo rozmazany. Ta metoda musi być stosowana w połączeniu z innymi metodami.
Binaryzacja na urządzeniu. Pozwala nie tylko skompresować i przygotować obraz do wydajnej transmisji, ale także wyraźnie zobaczyć jakość tekstu. Patrzenie na kolorowy obraz z ciemnym tłem nie jest tak oczywiste, jeśli chodzi o ostrość pojedynczych postaci, patrząc na czarno-białe krawędzie tych znaków.
Okno podglądu. Pozwól użytkownikowi zobaczyć zdjęcie, które zrobili i zamierzają przesłać. Często widzę aplikacje, które umożliwiają podgląd obrazu, ale po dwukrotnym dotknięciu go funkcja zoomu jest niedostępna. Dowolny tekst (nawet jeśli jest zły) będzie dobrze wyglądać na małym ekranie, ponieważ nie można go zobaczyć.
Nazywam to "wymuszonym podglądem". Po zrobieniu zdjęcia, a najlepiej po binaryzacji, powiększ automatycznie 10x i poproś użytkownika o potwierdzenie, czy widzą ostry tekst, czy nie. Wydaje się być inwazyjny, dlatego ważny jest tutaj dobry projekt, ale ta metoda jest niezawodna, ponieważ może być wykonana jako wymagany krok.
Proste instrukcje na temat ... Jak robić dobre zdjęcia! Niektóre aplikacje wyświetlają się raz w firstrun. Niektóre aplikacje dają szansę na wyłączenie. W moich aplikacjach zaobserwowałem znaczny wzrost jakości po przekazaniu tych instrukcji po aktualizacji mojej aplikacji FotoNote na iOS.
- 1. Howto: Popraw jakość pliku PDF przed OCR za pomocą C#
- 2. Zachowaj jakość obrazu
- 3. Jak poprawić jakość obrazu matplotlib?
- 4. Lepsza jakość obrazu z UIGraphicsGetImageFromCurrentImageContext()
- 5. Jakość skalowania obrazu Adobe Flex
- 6. Zagnieżdżanie widoków pogarsza jakość obrazu
- 7. Przygotowanie złożonego obrazu do OCR
- 8. OCR (tesseract), inteligentna rotacja obrazu
- 9. Słaba jakość obrazu Aparat z Androidem takePicture()
- 10. Niska jakość obrazu/obrazu podczas przechwytywania z kamery
- 11. Sprawdź wymiary obrazu (wysokość i szerokość) przed przesłaniem obrazu za pomocą PHP
- 12. Python PIL Jakość JPEG
- 13. Sprawdź warunek przed wywołaniem metody
- 14. Rendering i jakość obrazu w programie MATLAB dane
- 15. Podczas tworzenia od zera obrazu bitmapowego w VB.Net, jakość cuchnie?
- 16. Kadrowanie obrazu obniża jakość, a obramowanie wygląda źle
- 17. Obracanie obrazu PHP traci jakość po każdym obrocie
- 18. Zła jakość obrazu po zmianie rozmiaru/skalowaniu bitmapy
- 19. Jak utrzymać jakość obrazu za pomocą FPDF i PHP?
- 20. Dlaczego Android traci jakość obrazu podczas wyświetlania pliku PNG?
- 21. Przetwarzanie obrazu dla OCR z leptonicą (odwrotny kolorowy tekst)
- 22. Algorytmy przetwarzania/ulepszania obrazu dla dokumentu OCR/czytelność?
- 23. Metody Open Source do przetwarzania obrazu OCR w czasie rzeczywistym?
- 24. Android Niestandardowe Kamera Jakość
- 25. Zmiana rozmiaru obrazu przed przesłaniem
- 26. Android CustomWebChromeClient openFileChooser Zmień rozmiar obrazu przed przesłaniem
- 27. Sprawdź sygnaturę obiektu współużytkowanego Linux przed ładowaniem.
- 28. C# wyliczenia - Sprawdź Flagi przed maską
- 29. sprawdź wersję pakietów pip dostępnych przed instalacją
- 30. Sprawdź, czy istnieje szablon przed renderowaniem
Telefony są szybkie w dzisiejszych czasach. Dlaczego nie wykonać OCR na kliencie i wysłać * wyniki * do serwera w celu sprawdzenia poprawności? – bdares
https://github.com/rmtheis/tess-two/blob/master/eyes-two/jni/imageutils/blur.cpp – rmtheis