1. Produkty
  2.   Parser
  3.   Python
  4.   PaddleOCR
 
  

PaddleOCR: Przemysłowe OCR do ekstrakcji wielojęzycznego tekstu

Wykrywaj i rozpoznawaj tekst z obrazów i dokumentów z wysoką precyzją i szybkością

Czym jest PaddleOCR API?

PaddleOCR Python API to potężne i przyjazne dla użytkownika narzędzie do zadań optycznego rozpoznawania znaków (OCR), zaprojektowane, aby pomóc programistom w wydobywaniu i analizowaniu tekstu z obrazów z wysoką dokładnością. Zbudowany na frameworku głębokiego uczenia PaddlePaddle, PaddleOCR obsługuje szeroki zakres języków i oferuje wstępnie wytrenowane modele do wykrywania tekstu, rozpoznawania i analizy układu. Dzięki intuicyjnemu interfejsowi Python użytkownicy mogą szybko zintegrować funkcje OCR ze swoimi aplikacjami, czy to do digitalizacji dokumentów, ekstrakcji tekstu ze zdjęć czy automatycznego przetwarzania danych. PaddleOCR Python API jest idealny dla każdego, kto chce wdrożyć solidne rozwiązania OCR z minimalną konfiguracją i maksymalną elastycznością.

Kluczowe zalety PaddleOCR:

  • Obsługa wielu języków: Wstępnie wytrenowane modele dla 100+ języków (w tym chiński, angielski, arabski itp.)
  • Wysoka dokładność: Modele z serii PP-OCR osiągają najlepsze wyniki w zestawach danych ICDAR
  • Kompletny proces: Od wykrywania tekstu przez rozpoznawanie po analizę układu
  • Lekkie modele: Zoptymalizowane dla urządzeń mobilnych i brzegowych (np. PP-OCRv3)

Od zeskanowanych dokumentów po znaki drogowe - PaddleOCR wydobywa tekst z wiodącą w branży dokładnością.

GitHub

Statystyki GitHuba

Nazwa:
Język:
Gwiazdy:
Widły:
Licencja:
Repozytorium zostało ostatnio zaktualizowane o godzinie

Dlaczego wybrać PaddleOCR?

  • Doskonałość open source: 30,000+ gwiazdek na GitHubie i aktywny wkład społeczności
  • Wszechstronne wdrożenie: Obsługa Pythona, C++ i platform mobilnych (Android/iOS)
  • Analiza układu: Identyfikuje obszary tekstu, tabele i rysunki w złożonych dokumentach
  • Ciągłe aktualizacje: Regularne wydania modeli (np. PP-OCRv4)
  • Przyjazny dla biznesu: Licencja Apache 2.0 do użytku komercyjnego

Instalacja

PaddleOCR wymaga Pythona 3.7+ i może być zainstalowany przez pip. Obsługa GPU wymaga CUDA/cuDNN.

Instalacja podstawowa


pip install paddleocr paddlepaddle  #Wersja CPU

Dla akceleracji GPU:

Obsługa GPU


pip install paddleocr paddlepaddle-gpu  #Wymaga CUDA 10.2+

Uwaga: Wstępnie wytrenowane modele są automatycznie pobierane przy pierwszym użyciu lub ręcznie przez paddleocr --lang en.

Przykłady kodu

Poznaj możliwości PaddleOCR z tymi przykładami. Wszystkie zakładają, że masz zainstalowany model angielski.

PaddleOCR Python

Przykład 1: Podstawowe OCR

Aby wydobyć tekst z obrazu przy użyciu PaddleOCR z domyślnymi modelami, wystarczy zainicjować silnik OCR standardową konfiguracją, która obejmuje obsługę języka angielskiego i klasyfikację kąta dla lepszej dokładności. PaddleOCR używa wstępnie wytrenowanych modeli wykrywania, rozpoznawania i klasyfikacji do identyfikacji i interpretacji tekstu z obrazu wejściowego. Po przetworzeniu obrazu silnik OCR zwraca wykryty tekst wraz z jego pozycją i wynikiem pewności dla każdego wyniku. Ta konfiguracja zapewnia szybki i wydajny sposób wydobywania treści tekstowych z obrazów bez konieczności dostosowanego trenowania modeli czy złożonej konfiguracji.

OCR obrazu


from paddleocr import PaddleOCR

ocr = PaddleOCR(use_angle_cls=True, lang='en')  # Inicjalizacja
result = ocr.ocr('image.jpg', cls=True)  # Przetwarzanie obrazu

# Wyświetl rozpoznany tekst
for line in result:
    print(line[-1][0])  # Treść tekstu

Dane wyjściowe obejmują:

  • Treść tekstu i wyniki pewności
  • Współrzędne ramki ograniczającej

Przykład 2: Przetwarzanie wsadowe

Aby efektywnie przetwarzać wiele obrazów przy użyciu PaddleOCR, możesz wykorzystać techniki przetwarzania wsadowego, które minimalizują zbędną inicjalizację i optymalizują wydajność. Zamiast inicjować silnik OCR dla każdego obrazu osobno, zaleca się utworzenie jednej instancji modelu OCR i ponowne jej użycie dla wszystkich obrazów wejściowych. To podejście znacznie zmniejsza czas przetwarzania i zużycie zasobów. Przekazując listę ścieżek obrazów do silnika OCR w pętli lub używając przetwarzania równoległego (gdzie stosowne), możesz szybko i skutecznie wydobywać tekst z dużych zestawów obrazów, co jest idealne dla przepływów pracy obejmujących partie dokumentów, zeskanowane archiwa lub analizę zbiorczą obrazów.

OCR wsadowy


image_paths = ['doc1.jpg', 'doc2.png']
results = ocr.ocr(image_paths, batch_size=4)  # Przetwarzanie równoległe

Przykład 3: Analiza układu

PaddleOCR może być używany nie tylko do rozpoznawania tekstu, ale także do identyfikacji określonych obszarów tekstu i wykrywania elementów strukturalnych, takich jak tabele na obrazie. System najpierw lokalizuje obszary tekstu za pomocą modelu wykrywania, który obrysowuje każdy obszar tekstu ramką ograniczającą, pozwalając użytkownikom zrozumieć położenie tekstu na obrazie. Dla bardziej złożonych układów, takich jak formularze lub dokumenty zawierające tabele, PaddleOCR obsługuje analizę układu i rozpoznawanie struktury tabel. Umożliwia to wykrywanie wierszy, kolumn i granic komórek, co pozwala na wydobywanie danych tabelarycznych w uporządkowanym formacie. Takie możliwości są szczególnie przydatne do digitalizacji zeskanowanych dokumentów, faktur lub arkuszy kalkulacyjnych, gdzie tekst swobodny i dane tabelaryczne współistnieją.

Wykrywanie układu


from paddleocr import PPStructure

structure_engine = PPStructure(table=False, ocr=False)
layout_result = structure_engine('document.pdf')

Zaawansowane funkcje

PaddleOCR obsługuje złożone przepływy pracy:

  • Niestandardowe trenowanie: Dostosuj modele do swoich danych:

    Trenowanie modelu

    
        python tools/train.py -c configs/det/det_mv3_db.yml
        
    
  • Mieszanie języków: Przetwarzaj dokumenty wielojęzyczne:

    Wielojęzyczne OCR

    
        ocr = PaddleOCR(lang='chinese+english')
        
    
  • Obsługa PDF: Bezpośrednie wydobywanie tekstu z PDF:

    Przetwarzanie PDF

    
        result = ocr.ocr('document.pdf', type='pdf')
        
    

Podsumowanie

PaddleOCR oferuje gotowe do produkcji OCR z niezrównanym wsparciem wielojęzycznym i skalowalnością. Idealny dla:

  • Digitalizacji dokumentów: Zeskanowane PDF-y, faktury, paragony
  • Aplikacji wielojęzycznych: Rozpoznawanie paszportów, książki wielojęzyczne
  • Wdrożeń brzegowych: Aplikacje mobilne z OCR na urządzeniu

Wspierany przez ekosystem głębokiego uczenia PaddlePaddle, PaddleOCR nadal wyznacza standardy w dokładności i wydajności OCR.

Podobne Produkty

 Polish