Szukam narzędzia skryptowego offline, które umożliwia przeszukiwanie istniejącego pliku PDF, uruchamiając na nim OCR, zastępując oryginalny plik, którego nie można przeszukiwać, wersją z możliwością przeszukiwania, i może działać bez nadzoru.
Np. Www.pdfscannerapp.com - robi dokładnie to, czego potrzebuję, ale jest to tylko GUI - bez skryptów.
Wiem, że Evernote umożliwia wyszukiwanie plików PDF, ale można je wyszukiwać tylko w Evernote.
Nie szukam idealnego OCR, nawet umiarkowanie akceptowalny OCR jest w porządku, ale wolałbym raczej małe narzędzie niż obszerny pakiet oprogramowania.
(Zdaję sobie sprawę z podobnego, ale innego pytania na temat usługi AD: Szukam oprogramowania do skanowania lub konwertowania na pliki PDF z możliwością wyszukiwania i znakowania - nie muszę jednak podpisywać ani wypełniać plików PDF, a moim wymaganiem jest, aby rozwiązanie można było skryptować)
EDYTOWAĆ:
1) Kilka narzędzi pozwala na ekstrakcję tekstu strukturalnego, jednak w celu wyodrębnienia tekst musi tam być; Mam na myśli głównie pliki PDF, które są owinięte bitmapami, podobnie jak zwykłe pliki PDF generowane przez skanery.
2) Niekoniecznie szukam darmowego rozwiązania i chętnie zapłacę za dobre narzędzie, które robi to, czego potrzebuję, ale nie szukam dużych aplikacji z milionem funkcji, które zawierają funkcję OCR, ale których koszt nie uzasadnia zakupu ich tylko dla funkcji OCR.
3) Jak wspomniano powyżej, nie szukam idealnego OCR, tylko umiarkowanie akceptowalnego OCR. Niestety z mojego doświadczenia wynika, że tesseract jest naprawdę poniżej tego progu. Definiuję „umiarkowanie akceptowalny” OCR, który może, powiedzmy, OCR rachunek za media, dzięki czemu przynajmniej numer konta (numer klienta) zostanie poprawnie rozpoznany.
EDYCJA: „skryptowalny” lub „automatyczny”, to znaczy może być uruchamiany automatycznie i uruchamiany bez nadzoru bez udziału człowieka.
Odpowiedzi:
Nie jest dla mnie do końca jasne, jakie są twoje wymagania, aby móc „skryptować” to z „wiersza poleceń”.
Jeśli mówisz o automatyzacji, jest to możliwe przy dowolnej liczbie narzędzi.
ABBYY FineReader Express + Keyboard Maestro + Hazel
Używam ABBYY FineReader Express + Keyboard Maestro + Hazel w następujący sposób:
Hazel monitoruje dany folder pod kątem wszelkich nowych plików PDF
znaleziony plik PDF jest otwierany w „ABBYY FineReader Express”
Keyboard Maestro automatyzuje następnie proces przekształcania pliku PDF w plik PDF z możliwością wyszukiwania (OCR) i zapisuje plik w innym katalogu.
Teraz, jeśli nie posiadasz już Hazel i Keyboard Maestro, twoje początkowe koszty będą rosły dość szybko (chociaż zależę od obu tak bardzo, uważam je za okazję).
PDFPen + AppleScript + Akcje folderów
Możesz zrobić coś podobnego z PDFPen (lub PDFPenPro) i akcjami folderów oraz AppleScript. Zobacz przykład na https://gist.github.com/prenagha/1355037 .
Marco Arment przeprowadził ankietę aplikacji OCR dla komputerów Mac i stwierdził, że PDFPen ma świetne wyniki i jest łatwy do zautomatyzowania.
Wyszukiwarka Google dla „PDFpen OCR Applecript” odkryje szereg alternatyw.
źródło
To, czego chcesz, to Tesseract OCR. Jest to OCR typu open source obsługiwany przez Google i obsługujący różne platformy. Ma także natywny interfejs wiersza poleceń. To jest dokładnie to, czego szukasz i dostępne z projektu portów Mac, a także homebrew .
Strona główna projektu: https://github.com/tesseract-ocr
Jak zainstalować w systemie OS X: http://blog.matt-swain.com/post/26419042500/installing-tesseract-ocr-on-mac-os-x-lion
Przykład użycia:
tesseract -l eng input.pdf output
źródło
Oświadczenie: NIE ROZWIĄZANIE OCR (ale ta odpowiedź jest nadal przydatna do wyodrębnienia tekstu z pdf)
Istnieje projekt Apache Software Foundation o nazwie Apache Tika :
Obsługują ekstrakcję tekstu PDF za pomocą PDFBox :
Ostatnio dodali także obsługę OCR (przez Tesserac)
W przypadku rozwiązania tekstowego PDFBox bardzo łatwo wyodrębnia tekst z pliku PDF:
pdfbox-app
pakiet ze strony https://pdfbox.apache.org/downloads.htmluruchom na nim
ExtractText
polecenie:java -jar pdfbox-app-xyzjar ExtractText myNiceBook.pdf myNiceBook.txt
Ma także kilka innych ciekawych opcji, które można zobaczyć w dokumentach ExtractText .
źródło
Polecam DEVONThink Pro Urzędu . Jest to doskonała aplikacja i ma bardzo dobrą obsługę AppleScript. Niestety tylko wersja „Pro Office” ma funkcję OCR - więc musisz wydać 100 GBP (150 USD).
Byłoby przesadą, jeśli używasz go tylko do skryptu OCR - ale jest to bardzo dobra aplikacja.
[edytuj] - ah, po prostu ponownie przeczytaj swój post - to zdecydowanie byłoby przesada!
Jeśli chcesz tylko OCR z powłoki, możesz spróbować porozmawiać z ABBY, którego silnik DEVON udziela licencji:
http://www.abbyy-developers.com/en:tech:samples:commandline_ocr
źródło
Możesz sprawić, że istniejący plik PDF będzie można przeszukiwać, konwertując go do pliku tekstowego. Potrzebujesz do tego przynajmniej Imagemagick , Ghostscript (do konwersji PDF) i narzędzia OCR Tesseract .
Przykład z wiersza poleceń:
Można to rozszerzyć na Twoje potrzeby.
Aby zainstalować wymagane narzędzia, w OSX możesz zainstalować je za pomocą Homebrew :
W systemie Linux użyj
apt-get
lubyum
zamiastbrew
.Aby uzyskać więcej narzędzi OCR, zaznacz: OCR w systemach Linux
Związane z:
źródło
Rozwiązaniem, które można łatwo wdrożyć i zapewnia wyjściowy plik PDF o tej samej jakości pliku wejściowego i rozsądnej wielkości, to OCRmyPDF:
https://github.com/jbarlow83/OCRmyPDF
źródło
Stackoverflow ma podobne pytania w ramach analizy plików PDF, obejmujące takie rzeczy, jak PDFBox i TIKA Apache, z których korzysta PDFBox. Poniższy kod ruby wypakowuje zapis z pliku PDF. Musisz mieć wystarczająco dobrą rozdzielczość, aby tego typu kody działały poprawnie. Zdobądź wystarczająco dobry skaner o dużej rozdzielczości, a następnie sprawdź, czy niektóre oprogramowanie działa.
Przykłady
Wątki SO
/programming/5217783/pdf-parse-to-text-in-java
/programming/8149179/alternative-to-tika-pdfbox-for-parsing-pdf-in-solr-any-version-later-than-1-4
/programming/320621/ruby-pdf-parsing-gem-library
/programming/15186740/haskell-parsing-reading-content-of-pdf-files
[Edytować]
Nie jestem pewien, czy zrozumiałem teraz twój problem. Chcesz dodać warstwę OCR do różnego rodzaju materiałów, takich jak losowe zdjęcia, zrzuty ekranu, pliki PDF bez warstwy OCR i tak dalej? Nie znam rozwiązania, ale jestem pewien, że ktoś wie, więc zadał konkretne pytanie, jak to zrobić za pomocą Automatora i oprogramowania OCR:
Skrypt automatyzatora z oprogramowaniem OCR do automatycznego dodawania OCR do materiału?
źródło
W przypadku tego rodzaju samodzielnej aplikacji jestem wielkim fanem Hazel.
Ułatwia to wykonywanie skryptów bez konieczności uczenia się bardziej zorientowanego na wiersze poleceń narzędzia, takiego jak Perl lub Python, w połączeniu z wybranym silnikiem OCR (moim obecnie jest PDF Pen Pro), nie powinieneś mieć problemów z przetwarzaniem plików przy minimalnym zamieszanie.
Oba są płatnym oprogramowaniem, ale użyteczność obu daleko sięga poza ten jeden przypadek. W mojej sytuacji, przy pracy związanej z digitalizacją moich zeskanowanych dokumentów (i bieżącej pracy), ich cena znacznie przewyższa czas, który spędziłbym na programowaniu tego gdzie indziej, a teraz, gdy jestem właścicielem obu narzędzi, mogę wykonywać wiele innych zadań z im.
źródło
PDFScannerApp ma nieoficjalną obsługę skryptów. Skontaktuj się z autorem w sprawie akcji Automator.
źródło
Korzystam z Adobe Acrobat do OCR wsadowo. Mój skaner dwustronny może skanować OCR po skanowaniu, ale moim zdaniem technologia OCR w programie Acrobat jest dokładniejsza. Po prostu wskazuję folder, w którym nie ma OCR, a następnie program acrobat ponownie zapisuje plik PDF jako plik PDF z możliwością wyszukiwania, zawierający teraz warstwę tekstową. Gdybym chciał OCR za pomocą wiersza poleceń, nie znam sposobu, ale mogę zautomatyzować interfejs GUI za pomocą Autohotkey. Nie jest tak niezawodny ani szybki jak wiersz poleceń, ale wykonuje zadanie po skonfigurowaniu akcji przepływu pracy w celu zminimalizowania interakcji GUI.
W przypadku komputerów Mac skrypt Apple wykonuje to samo, co Autohotkey na komputerze PC, chociaż nie próbowałem jeszcze na komputerze Mac.
Automatyczny klawisz skrótu jest wyposażony w rejestrator, więc większość pisania skryptów jest dla ciebie obiadem z mniejszą ilością edycji do udoskonalenia i być może zapętleniem, jeśli chcesz.
Eksperymentowałem z OCRingiem obrazów, ale nie w pełni zautomatyzowałem ten proces za pomocą programu Acrobat. Wiersz poleceń jest idealny, ale nie znalazłem wysokiej jakości silnika OCR, który przewyższa program acrobat, więc na razie pozostaję przy nim.
źródło
Natknąłem się na to niedawno: http://ocrkit.com/faq.html
Musisz jednak zapłacić po 14 dniach
źródło
Mam wysokiej jakości konwersję Drag & Drop działającą za pomocą Dockera.
Jeśli ty:
"as arguments"
/bin/bash
tekst skryptu:Powinieneś wtedy przeciągać i upuszczać na nim pliki PDF, a otrzymasz plik PDF o podobnej nazwie z „-ocr” dołączonym do nazwy pliku.
Wyobrażam sobie, że można go łatwo zmodyfikować, aby zwrócić plik do Automatora i również gdzieś skopiować. Więcej informacji o dobrym pakiecie dokera OCRmyPDF. i główne narzędzie (wspomniane również w innej odpowiedzi).
Możesz to przetestować w samym Automatorze za pomocą akcji „Pobierz określone elementy Findera” jako danych wejściowych.
Przy pierwszym uruchomieniu zajmuje więcej czasu, ponieważ będzie musiał pobrać obrazy Dockera dla OCRmyPDF (niewidocznie). W Terminalu możesz alternatywnie biegać,
docker pull jbarlow83/ocrmypdf
aby przyspieszyć pierwszy bieg. Typowy przebieg zajmuje około 10 sekund na stronę o wysokiej DPI, ale automatycznie powoduje wyświetlenie tekstu na mowę, nawet jeśli istnieją tabele lub diagramy. Przed OCR, ja przyciąć używając Sejda tak nonsensowne marginesów słowa z innych stron są usuwane.--force-ocr
Argumentem opowiada narzędzie do ignorowania i zastąpić wszystkie wcześniejsze próby OCR, które w moim przypadku są zazwyczaj tylko częściowy i bezużyteczne.źródło
OCRKit obsługuje zarówno AppleScript, jak i CLI. Z ich strony pomocy :
źródło