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:
- Utwórz instancję klasy
AsposeOcr. - Utwórz obiekt
OcrInputdla pojedynczego obrazu i dodaj plik obrazu. - Utwórz obiekt
RecognitionSettingsi ustawdetect_areas_modenaDOCUMENT_LAYOUT. - Wywołaj metodę
recognize(), aby przetworzyć obraz. - Zapisz wyniki przy użyciu
save()iSaveFormat.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.