Optyczne rozpoznawanie znaków (OCR) zamienia obrazy tekstu — skany, zdjęcia ze smartfonów, pliki PDF — na ciągi znaków czytelne dla maszyn, a coraz częściej na dane strukturalne. Nowoczesne OCR to potok, który czyści obraz, znajduje tekst, odczytuje go i eksportuje bogate metadane, dzięki czemu systemy podrzędne mogą wyszukiwać, indeksować lub wyodrębniać pola. Dwa szeroko stosowane standardy wyjściowe to hOCR, mikroformat HTML dla tekstu i układu, oraz ALTO XML, schemat zorientowany na biblioteki/archiwa; oba zachowują pozycje, kolejność czytania i inne wskazówki dotyczące układu i są obsługiwane przez popularne silniki, takie jak Tesseract.
Przetwarzanie wstępne. Jakość OCR zaczyna się od czyszczenia obrazu: konwersji do skali szarości, odszumiania, progowania (binaryzacji) i prostowania. Kanoniczne samouczki OpenCV obejmują globalne, adaptacyjne i Otsu progowanie — podstawowe elementy dla dokumentów o nierównomiernym oświetleniu lub bimodalnych histogramach. Gdy oświetlenie zmienia się na stronie (pomyśl o zdjęciach z telefonu), metody adaptacyjne często przewyższają pojedynczy globalny próg; Otsu automatycznie wybiera próg, analizując histogram. Równie ważna jest korekcja nachylenia: prostowanie oparte na transformacji Hougha (Transformacja Hougha) w połączeniu z binaryzacją Otsu to powszechny i skuteczny przepis w produkcyjnych potokach przetwarzania wstępnego.
Wykrywanie a rozpoznawanie. OCR jest zazwyczaj podzielone na wykrywanie tekstu (gdzie jest tekst?) i rozpoznawanie tekstu (co on mówi?). W scenach naturalnych i wielu skanach w pełni konwolucyjne detektory, takie jak EAST skutecznie przewidują czworokąty na poziomie słów lub linii bez ciężkich etapów propozycji i są zaimplementowane w popularnych zestawach narzędzi (np. samouczek wykrywania tekstu OpenCV). Na złożonych stronach (gazety, formularze, książki) ważna jest segmentacja linii/regionów i wnioskowanie o kolejności czytania:Kraken implementuje tradycyjną segmentację stref/linii i neuronową segmentację linii bazowej, z wyraźnym wsparciem dla różnych pism i kierunków (LTR/RTL/pionowo).
Modele rozpoznawania. Klasyczny koń roboczy open-source Tesseract (udostępniony jako open-source przez Google, z korzeniami w HP) ewoluował z klasyfikatora znaków w sekwencyjny rozpoznawacz oparty na LSTM i może emitować przeszukiwalne pliki PDF, wyjścia przyjazne dla hOCR/ALTOi więcej z CLI. Nowoczesne rozpoznawacze opierają się na modelowaniu sekwencji bez wstępnie posegmentowanych znaków. Connectionist Temporal Classification (CTC) pozostaje fundamentalne, ucząc się dopasowań między sekwencjami cech wejściowych a sekwencjami etykiet wyjściowych; jest szeroko stosowane w potokach rozpoznawania pisma ręcznego i tekstu w scenach.
W ostatnich latach Transformery przekształciły OCR. TrOCR używa kodera Vision Transformer oraz dekodera Text Transformer, trenowanego na dużych korpusach syntetycznych, a następnie dostrajanego na rzeczywistych danych, z dużą wydajnością w testach porównawczych tekstu drukowanego, pisanego odręcznie i w scenach (zobacz także dokumentację Hugging Face). Równolegle niektóre systemy omijają OCR na rzecz zrozumienia na dalszym etapie: Donut (Document Understanding Transformer) to koder-dekoder bez OCR, który bezpośrednio generuje ustrukturyzowane odpowiedzi (takie jak JSON klucz-wartość) z obrazów dokumentów (repo, karta modelu), unikając kumulacji błędów, gdy oddzielny krok OCR zasila system IE.
Jeśli chcesz gotowe do użycia rozwiązanie do odczytu tekstu w wielu pismach, EasyOCR oferuje proste API z ponad 80 modelami językowymi, zwracając ramki, tekst i pewność — przydatne do prototypów i pism nielacińskich. W przypadku dokumentów historycznych Kraken wyróżnia się segmentacją linii bazowej i świadomą pisma kolejnością czytania; do elastycznego trenowania na poziomie linii, Calamari opiera się na dziedzictwie Ocropy (Ocropy) z rozpoznawaczami (multi-)LSTM+CTC i CLI do dostrajania niestandardowych modeli.
Generalizacja zależy od danych. W przypadku pisma ręcznego Baza danych pisma ręcznego IAM dostarcza zróżnicowane pod względem pisarzy zdania w języku angielskim do trenowania i oceny; jest to długoletni zestaw referencyjny do rozpoznawania linii i słów. W przypadku tekstu w scenach COCO-Text nałożył obszerne adnotacje na MS-COCO, z etykietami dla tekstu drukowanego/pisanego odręcznie, czytelnego/nieczytelnego, pisma i pełnych transkrypcji (zobacz także oryginalną stronę projektu). Dziedzina ta w dużym stopniu opiera się również na syntetycznym wstępnym trenowaniu: SynthText in the Wild renderuje tekst na fotografiach z realistyczną geometrią i oświetleniem, dostarczając ogromne ilości danych do wstępnego trenowania detektorów i rozpoznawaczy (odniesienie kod i dane).
Konkursy pod parasolem Robust Reading ICDAR utrzymują ocenę w ryzach. Ostatnie zadania kładą nacisk na wykrywanie/odczyt od końca do końca i obejmują łączenie słów w frazy, z oficjalnym kodem raportującym precyzję/odwołanie/F-score, przecięcie nad sumą (IoU) i metryki odległości edycji na poziomie znaków — odzwierciedlając to, co praktycy powinni śledzić.
OCR rzadko kończy się na czystym tekście. Archiwa i biblioteki cyfrowe preferują ALTO XML , ponieważ koduje on fizyczny układ (bloki/linie/słowa ze współrzędnymi) obok treści i dobrze współgra z opakowaniem METS. hOCR mikroformat, w przeciwieństwie do tego, osadza ten sam pomysł w HTML/CSS, używając klas takich jak ocr_line i ocrx_word, co ułatwia wyświetlanie, edycję i transformację za pomocą narzędzi internetowych. Tesseract udostępnia oba — np. generowanie hOCR lub przeszukiwalnych plików PDF bezpośrednio z CLI (przewodnik po wyjściu PDF); opakowania Pythona, takie jak pytesseract dodają wygody. Istnieją konwertery do tłumaczenia między hOCR a ALTO, gdy repozytoria mają stałe standardy przyjmowania — zobacz tę wyselekcjonowaną listę narzędzi formatu plików OCR.
Najsilniejszym trendem jest konwergencja: wykrywanie, rozpoznawanie, modelowanie języka, a nawet dekodowanie specyficzne dla zadania łączą się w zunifikowane stosy Transformerów. Wstępne trenowanie na dużych korpusach syntetycznych pozostaje mnożnikiem siły. Modele bez OCR będą agresywnie konkurować wszędzie tam, gdzie celem są ustrukturyzowane wyniki, a nie dosłowne transkrypcje. Spodziewaj się również wdrożeń hybrydowych: lekkiego detektora plus rozpoznawacza w stylu TrOCR dla długiego tekstu i modelu w stylu Donut dla formularzy i paragonów.
Tesseract (GitHub) · Dokumentacja Tesseract · Specyfikacja hOCR · Tło ALTO · Detektor EAST · Wykrywanie tekstu OpenCV · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · Pismo ręczne IAM · Narzędzia formatu plików OCR · EasyOCR
Optical Character Recognition (OCR) to technologia używana do konwersji różnych rodzajów dokumentów, takich jak zeskanowane dokumenty papierowe, pliki PDF lub obrazy zrobione cyfrowym aparatem fotograficznym, na edytowalne i przeszukiwalne dane.
OCR działa poprzez skanowanie obrazu wejściowego lub dokumentu, segmentację obrazu na indywidualne znaki, a następnie porównanie każdego znaku z bazą danych kształtów znaków za pomocą rozpoznawania wzorców lub rozpoznawania cech.
OCR jest używany w różnych sektorach i aplikacjach, w tym do digitalizacji wydrukowanych dokumentów, włączania usług tekst-na-mowę, automatyzacji procesów wprowadzania danych i pomocy osobom niewidomym w lepszej interakcji z tekstem.
Pomimo wielkiego postępu w technologii OCR, nie jest ona nieomylna. Dokładność może różnić się w zależności od jakości oryginalnego dokumentu i specyfiki używanego oprogramowania OCR.
Chociaż OCR jest głównie przeznaczony dla tekstu drukowanego, niektóre zaawansowane systemy OCR są także w stanie rozpoznać jasne, konsekwentne pismo odręczne. Jednak zazwyczaj rozpoznawanie pisma odręcznego jest mniej dokładne ze względu na dużą różnorodność indywidualnych stylów pisania.
Tak, wiele systemów oprogramowania OCR potrafi rozpoznawać wiele języków. Ważne jest jednak, aby upewnić się, że konkretny język jest obsługiwany przez oprogramowanie, którego używasz.
OCR to skrót od Optical Character Recognition i służy do rozpoznawania tekstu drukowanego, natomiast ICR, czyli Intelligent Character Recognition, jest bardziej zaawansowany i służy do rozpoznawania tekstu pisanego odręcznie.
OCR najlepiej radzi sobie z czytelnymi, łatwymi do odczytania fontami i standardowymi rozmiarami tekstu. Chociaż może pracować z różnymi fontami i rozmiarami, dokładność zwykle maleje przy niecodziennych fontach lub bardzo małych rozmiarach tekstu.
OCR może mieć problemy z dokumentami o niskiej rozdzielczości, złożonymi czcionkami, źle wydrukowanymi tekstami, pismem odręcznym oraz dokumentami z tłem, które przeszkadza w tekście. Ponadto, mimo że może obsługiwać wiele języków, nie jest w stanie idealnie pokryć wszystkich języków.
Tak, OCR potrafi skanować kolorowy tekst i tło, choć zazwyczaj jest skuteczniejszy w przypadku wysokokontrastowych kombinacji kolorów, takich jak czarny tekst na białym tle. Dokładność może spadać, gdy kolor tekstu i tła nie tworzą wystarczającego kontrastu.
Format obrazu ICO, powszechnie znany jako ICO, to format pliku, który jest zwykle używany do ikon w systemie Microsoft Windows. Pliki ICO zawierają jeden lub więcej małych obrazów w wielu rozmiarach i głębokościach kolorów, dzięki czemu można je odpowiednio skalować. W systemie Windows ikony są używane do reprezentowania aplikacji, pliku lub folderu i są integralną częścią interfejsu użytkownika. Format ICO jest wszechstronny, umożliwiając wyświetlanie obrazów o rozmiarach od 16x16 pikseli do 256x256 pikseli, a nawet większych przy użyciu pewnych obejść. Format obsługuje 24-bitowe obrazy kolorowe i 8-bitową przezroczystość, która jest często określana jako przezroczystość alfa.
Format ICO jest wyjątkowy, ponieważ może zawierać wiele obrazów w jednym pliku. Jest to szczególnie przydatne w przypadku ikon, które muszą być wyświetlane w różnych rozmiarach i rozdzielczościach. Na przykład typowy plik ICO może zawierać tę samą ikonę renderowaną w rozmiarach 16x16, 32x32, 48x48 i 256x256 pikseli. Pozwala to systemowi operacyjnemu wybrać najlepszy rozmiar dla danego kontekstu, takiego jak mała ikona na liście plików lub większa ikona, gdy użytkownik zmienia opcje widoku, aby wyświetlać duże ikony.
Struktura pliku ICO jest stosunkowo prosta. Zaczyna się od nagłówka, po którym następuje katalog, a następnie same dane obrazu. Nagłówek zawiera zarezerwowane 2-bajtowe pole, które jest zawsze ustawione na zero, 2-bajtowe pole typu, które określa typ zasobu (1 dla ikon) i 2-bajtowe pole liczby, które wskazuje, ile obrazów znajduje się w pliku. Po nagłówku następuje katalog, który jest tablicą wpisów, po jednym dla każdego obrazu w pliku. Każdy wpis katalogu zawiera kilka pól, w tym szerokość, wysokość, liczbę kolorów i rozmiar danych obrazu.
Pola szerokości i wysokości we wpisie katalogu są jednobajtowe, o maksymalnej wartości 255. Jednak w praktyce maksymalne wymiary obrazu ICO wynoszą 256x256 pikseli. Gdy obraz ma szerokość lub wysokość 256 pikseli, odpowiednie pole jest ustawione na 0. Pole liczby kolorów określa liczbę kolorów w palecie obrazu, przy czym wartość 0 oznacza, że obraz nie używa palety (tj. jest to obraz 24-bitowy lub 32-bitowy). Pole rozmiaru to 4-bajtowa wartość, która podaje rozmiar danych obrazu w bajtach, a pole przesunięcia to 4-bajtowa wartość, która określa lokalizację danych obrazu w pliku.
Dane obrazu w pliku ICO mogą być przechowywane w jednym z kilku formatów. W przypadku mniejszych ikon o wymiarach mniejszych niż 64x64 pikseli dane obrazu są zwykle przechowywane w formacie mapy bitowej niezależnej od urządzenia (DIB), który jest również używany w plikach BMP. Ten format zawiera strukturę BITMAPINFOHEADER, po której następuje paleta kolorów (jeśli obraz jej używa), a następnie dane pikseli. W przypadku większych ikon dane obrazu są często przechowywane w formacie PNG, który umożliwia lepszą kompresję i obsługuje przezroczystość alfa.
Struktura BITMAPINFOHEADER zawiera informacje o mapie bitowej, w tym jej rozmiar, szerokość, wysokość, płaszczyzny, liczbę bitów, kompresję, rozmiar obrazu, rozdzielczość poziomą i pionową, liczbę kolorów i ważną liczbę kolorów. Pole liczby bitów wskazuje liczbę bitów na piksel, która może wynosić 1, 4, 8, 24 lub 32. Liczba bitów 32 oznacza, że obraz zawiera kanał alfa dla przezroczystości. Pole kompresji jest zwykle ustawione na 0, co oznacza brak kompresji dla obrazów w formacie BMP w pliku ICO.
Przezroczystość w plikach ICO jest obsługiwana na dwa sposoby. W przypadku obrazów bez kanału alfa używana jest mapa bitowa maski. Jest to obraz 1-bitowy na piksel, który określa, które piksele są przezroczyste, a które nieprzezroczyste. Mapa bitowa maski jest przechowywana bezpośrednio po mapie bitowej kolorów w pliku. W przypadku obrazów z kanałem alfa informacje o przezroczystości są przechowywane w samym kanale alfa, który jest częścią 32-bitowej głębi kolorów. Pozwala to na różne poziomy przezroczystości, od całkowicie nieprzezroczystego do całkowicie przezroczystego, i jest szczególnie przydatne do tworzenia gładkich krawędzi i cieni.
Format ICO ewoluował z czasem. Początkowo, w starszych wersjach systemu Windows, ikony były ograniczone do małej palety kolorów i nie obsługiwały przezroczystości alfa. W miarę jak graficzne interfejsy użytkownika stawały się bardziej wyrafinowane, stała się oczywista potrzeba ikon wyższej jakości z gładkimi krawędziami i możliwością wtapiania się w różne tła. Wraz z wprowadzeniem systemu Windows XP firma Microsoft zaktualizowała format ICO, aby obsługiwał obrazy 32-bitowe z 8-bitową przezroczystością alfa, umożliwiając tworzenie znacznie bardziej szczegółowych i atrakcyjnych wizualnie ikon.
Pomimo swojej nazwy format ICO nie jest ograniczony do systemu Microsoft Windows. Jest rozpoznawany przez różne inne systemy operacyjne i może być używany w przeglądarkach internetowych jako favicona, czyli mała ikona wyświetlana obok tytułu witryny w karcie przeglądarki. Favicony mają zwykle rozmiar 16x16 lub 32x32 pikseli i są przechowywane w formacie ICO, aby zapewnić kompatybilność między różnymi przeglądarkami i platformami. Jednak w nowoczesnym rozwoju stron internetowych do faviconów używane są również inne formaty, takie jak PNG i GIF.
Tworzenie plików ICO wymaga specjalistycznego oprogramowania, które może obsługiwać zawiłości formatu, takie jak wiele rozmiarów obrazów i głębokości kolorów w jednym pliku. Dostępnych jest wiele edytorów i konwerterów ikon, które mogą tworzyć pliki ICO od podstaw lub konwertować istniejące obrazy do formatu ICO. Niektóre oprogramowanie do edycji obrazów, takie jak Adobe Photoshop, może również zapisywać obrazy w formacie ICO za pomocą dodatkowych wtyczek.
Projektując ikony w formacie ICO, ważne jest, aby wziąć pod uwagę kontekst, w którym będą używane. Ikony powinny być czytelne i rozpoznawalne w małych rozmiarach oraz powinny być zgodne ze spójnym stylem, który pasuje do aplikacji lub marki, którą reprezentują. Ważne jest również testowanie ikon na różnych tłach i w różnych rozmiarach, aby upewnić się, że zachowują swoją przejrzystość i efekt wizualny.
Pod względem rozmiaru pliku pliki ICO mogą się znacznie różnić w zależności od liczby i rozmiaru zawartych w nich obrazów. Ponieważ mogą zawierać wiele rozmiarów i głębokości kolorów, pliki ICO mogą stać się dość duże, zwłaszcza gdy zawierają obrazy o wysokiej rozdzielczości. Jednak użycie kompresji PNG dla większych obrazów pomaga złagodzić ten problem, zmniejszając rozmiar pliku bez poświęcania jakości obrazu.
Możliwość formatu ICO do przechowywania wielu obrazów w różnych rozmiarach i głębokościach kolorów w jednym pliku sprawia, że jest to solidny i elastyczny format dla ikon. Pozwala na wydajne wykorzystanie zasobów, ponieważ system operacyjny może załadować odpowiedni rozmiar obrazu i głębokość kolorów dla danego kontekstu wyświetlania bez potrzeby używania wielu oddzielnych plików. Ta wydajność jest szczególnie ważna w środowiskach, w których pamięć i przestrzeń dyskowa są na wagę złota.
Podsumowując, format obrazu ICO to specjalistyczny format pliku przeznaczony do przechowywania ikon używanych w systemie Microsoft Windows. Jego zdolność do przechowywania wielu obrazów w różnych rozmiarach i głębokościach kolorów sprawia, że jest idealny dla ikon, które muszą być wyświetlane w różnych kontekstach. Format obsługuje przezroczystość za pomocą map bitowych maski lub kanałów alfa, umożliwiając tworzenie ikon z gładkimi krawędziami i złożonymi efektami wizualnymi. Chociaż format był w dużej mierze kojarzony z systemem Windows, znalazł również swoje miejsce w sieci jako standard dla faviconów. W miarę rozwoju interfejsów użytkownika format ICO pozostaje kluczowym elementem w tworzeniu wizualnie spójnego i przyjaznego dla użytkownika środowiska.
Ten konwerter działa w całości w Twojej przeglądarce. Po wybraniu pliku jest on wczytywany do pamięci i konwertowany do wybranego formatu. Następnie możesz pobrać przekonwertowany plik.
Konwersje rozpoczynają się natychmiast, a większość plików jest konwertowana w mniej niż sekundę. Większe pliki mogą zająć więcej czasu.
Twoje pliki nigdy nie są przesyłane na nasze serwery. Są one konwertowane w Twojej przeglądarce, a następnie pobierany jest przekonwertowany plik. Nigdy nie widzimy Twoich plików.
Obsługujemy konwersję między wszystkimi formatami obrazów, w tym JPEG, PNG, GIF, WebP, SVG, BMP, TIFF i innymi.
Ten konwerter jest całkowicie darmowy i zawsze będzie darmowy. Ponieważ działa w Twojej przeglądarce, nie musimy płacić za serwery, więc nie musimy pobierać od Ciebie opłat.
Tak! Możesz konwertować dowolną liczbę plików jednocześnie. Wystarczy wybrać wiele plików podczas ich dodawania.