Skanowany raport może zawierać tekst, który chcesz edytować lub dodać do swojej dokumentacji. Możesz użyć OCR, aby rozpoznać tekst i zapisać go jako Markdown, co ułatwi przeglądanie i ponowne wykorzystanie w aplikacji Python.

W tym artykule dowiesz się, jak przekonwertować obraz PNG lub JPG na Markdown w Pythonie przy użyciu Aspose.OCR for Python via .NET. Zobaczysz także, jak przeglądać wygenerowaną treść oraz sprawdzić tabele i ilustracje w dokumencie.

Biblioteka OCR w Pythonie do konwersji obrazu na Markdown

Aspose.OCR for Python via .NET pozwala rozpoznawać tekst na obrazach i zapisywać wyniki OCR jako Markdown. Tryb wykrywania układu dokumentu może identyfikować elementy takie jak bloki tekstu, tabele i obrazy.

Zainstaluj wersję 26.10.0 pakietu przy użyciu pip:

python -m pip install aspose-ocr-python-net

Będziesz potrzebować obsługiwanej instalacji Pythona, czytelnego obrazu PNG lub JPG oraz uprawnień do zapisu pliku wyjściowego. Aby podążać za przykładem, umieść obraz o nazwie report.png w katalogu, w którym uruchomisz skrypt. Oddzielna instalacja środowiska uruchomieniowego .NET nie jest wymagana; zobacz wymagania systemowe dla obsługiwanych platform.

Wersja próbna ogranicza ilość rozpoznawanego tekstu. Aby usunąć to ograniczenie podczas oceny, możesz poprosić o tymczasową licencję i zastosować ją przed rozpoznawaniem. Zobacz dokumentację licencjonowania po szczegóły.

Konwertuj obraz na Markdown w Pythonie

Postępuj zgodnie z poniższymi krokami, aby rozpoznać obraz i zapisać wynik jako Markdown:

  1. Utwórz instancję klasy AsposeOcr.
  2. Utwórz obiekt OcrInput dla pojedynczego obrazu i dodaj plik obrazu.
  3. Utwórz obiekt RecognitionSettings i ustaw detect_areas_mode na DOCUMENT_LAYOUT.
  4. Wywołaj metodę recognize(), aby przetworzyć obraz.
  5. Zapisz wyniki przy użyciu save() i SaveFormat.MD.

W tym przykładzie użyj obrazu raportu zawierającego nagłówek, tekst, tabelę i ilustrację. Zapisz poniższy kod w pliku o nazwie image_to_markdown.py:

import aspose.ocr as ocr

# Create the OCR engine.
api = ocr.AsposeOcr()

# Add the image to the input.
ocr_input = ocr.OcrInput(ocr.InputType.SINGLE_IMAGE)
ocr_input.add("report.png")

# Enable document layout detection.
settings = ocr.RecognitionSettings()
settings.detect_areas_mode = ocr.DetectAreasMode.DOCUMENT_LAYOUT

# Recognize the image.
results = api.recognize(ocr_input, settings)

# Save the recognition result as Markdown.
results.save("report.md", ocr.SaveFormat.MD)

Uruchom skrypt z katalogu zawierającego report.png:

python image_to_markdown.py

Skrypt odczytuje report.png i zapisuje wynik rozpoznawania jako report.md. Obie ścieżki są względne względem bieżącego katalogu roboczego. Aby przekonwertować obraz JPG, zmień ścieżkę wejściową na swój plik .jpg; kroki rozpoznawania i eksportu pozostają takie same.

Tryb DOCUMENT_LAYOUT jest przeznaczony dla dokumentów, których struktura ma znaczenie w wyniku. Wykrywanie zależy od obrazu źródłowego, dlatego należy sprawdzić wygenerowany Markdown w stosunku do oryginalnego raportu.

Przejrzyj wygenerowany Markdown

Otwórz report.md w edytorze tekstu lub przeglądarce Markdown. Sprawdź rozpoznany tekst, kolejność czytania oraz zawartość tabel w stosunku do obrazu źródłowego. Następnie możesz edytować Markdown przed dodaniem go do swojej dokumentacji.

Na przykład tabela w Markdown może wyglądać następująco. To jest ilustrująca składnia, a nie rzeczywisty wynik OCR:

| Product | Units Sold | Revenue (USD) |
| --- | --- | --- |
| Product A | 120 | $18,000 |

Jeśli wygenerowany Markdown zawiera odwołania do wyodrębnionych obrazów, sprawdź, czy odwoływane pliki istnieją i wyświetlają się w przeglądarce Markdown. Zachowaj ich ścieżki niezmienione przy przenoszeniu pliku Markdown.

Markdown opisuje treść i strukturę; niekoniecznie odtwarza dokładny wygląd oryginalnego raportu.

Wskazówki, jak uzyskać lepsze wyniki OCR

  • Użyj wyraźnego obrazu źródłowego. Tekst i obramowania tabel powinny być czytelne na oryginalnym obrazie.
  • Wybierz odpowiedni język rozpoznawania. Ustaw RecognitionSettings.language, gdy jest to potrzebne. Zobacz dokumentację języków po dostępne opcje.
  • Sprawdź ważne szczegóły. Porównaj nazwy, liczby, komórki tabel i kolejność odczytu ze źródłem.
  • Zweryfikuj odwołania do obrazów. Jeśli wynik odwołuje się do wyodrębnionych obrazów, otwórz Markdown w przeglądarce i sprawdź, czy się wyświetlają.
  • Przetestuj reprezentatywne dokumenty. Złożone tabele i układy mogą wymagać ręcznych poprawek, więc przejrzyj przykłady przed użyciem wyniku w zautomatyzowanym przepływie pracy.

Najczęściej zadawane pytania

Czy mogę konwertować zarówno obrazy PNG, jak i JPG do Markdown w Pythonie?

Tak. Dodaj plik PNG lub JPG do OcrInput, rozpoznaj go i zapisz wynik przy użyciu SaveFormat.MD.

Czy OCR w Pythonie może wykrywać tabele na obrazie?

Tak. Tryb DOCUMENT_LAYOUT jest zaprojektowany do wykrywania elementów dokumentu, w tym tabel. Przejrzyj wygenerowany Markdown, aby sprawdzić, jak tabela i jej komórki są reprezentowane.

Jak obsłużyć obrazy odwoływane w pliku Markdown?

Jeśli wynik zawiera linki do obrazów, zlokalizuj odwołane pliki i zachowaj ich ścieżki niezmienione przy przenoszeniu pliku Markdown. Otwórz plik w przeglądarce Markdown, aby potwierdzić, że obrazy są wyświetlane.

Czy plik Markdown zachowuje dokładnie oryginalny układ strony?

Nie. Markdown przedstawia treść i strukturę inaczej niż obraz strony. Przejrzyj wygenerowany plik i w razie potrzeby dostosuj jego strukturę.

Podsumowanie

Użyj tego przepływu pracy jako punktu wyjścia do konwertowania własnych obrazów raportów na Markdown w Pythonie. Przed dodaniem wyników do dokumentacji, porównaj rozpoznany tekst, tabele i wszelkie odwołania do obrazów z oryginałem.

Aby uzyskać więcej informacji, zobacz dokumentację rozpoznawania. Jeśli potrzebujesz pomocy, odwiedź forum wsparcia Aspose.OCR.

Zobacz także