Orientacja dokumentu zrobionego telefonem komórkowym jest nieprawidłowa. Najpierw przetwórz EXIF, a następnie wyślij go do OCR.

Zdjęcie kontraktowe na moim telefonie wyglądało na pionowe, jednak po wgraniu obróciło się poziomo. Powodem może być to, że same piksele nie są obracane, przeglądarka po prostu dostosowuje wyświetlanie w oparciu o znaczniki orientacji EXIF. Jeśli wejście OCR zignoruje ten znak, przeczyta stronę w innym kierunku.

Zdjęcia kontraktowe wykonane telefonami komórkowymi są w albumie ustawione pionowo, ale po przesłaniu stają się poziome. Wiele osób pomyśli, że zdjęcie jest przekrzywione lub plik jest nieprawidłowy. Ten artykuł został napisany dla osób, które chcą przesłać zdjęcia z telefonu komórkowego do procesu OCR lub tłumaczenia, aby pomóc Ci rozróżnić „kierunek wyświetlania"od „kierunku pikseli".

Po przeczytaniu tego dowiesz się, czym jest flaga orientacji EXIF, jakiej funkcji używa Pillow do jej obsługi i jakich problemów nie rozwiązuje. W przykładach wykorzystano próbki syntetyczne, a kod został sprawdzony w izolowanym środowisku, ale nie stanowi to gwarancji działania wszystkich rzeczywistych plików lub produktu. Przed przystąpieniem do przetwarzania ważnych dokumentów prosimy o zachowanie oryginałów i zapoznanie się z nimi zgodnie z granicami i pozycjami akceptacji w tekście.

Co powinienem zrobić, jeśli dokument zapisany telefonem komórkowym jest w złym kierunku? Wniosek w jednym zdaniu

Najpierw użyjImageOps.exif_transpose, aby zastosować znak kierunku EXIF, a następnie wyślij dostosowany obraz do OCR; Kwestie pochylenia i perspektywy należy rozpatrywać osobno.

twoja sytuacjaZalecane praktykipowód
Przeglądarka wyświetla się normalnie, ale wyniki analizy są wyświetlane na bokiNajpierw użyj ImageOps.exif_transpose, aby zastosować kierunek EXIFPiksele nie są obracane, dostosowywana jest jedynie warstwa wyświetlania
Całe zdjęcie jest lekko przechyloneOceń korektę pochylenia indywidualnieexif_transpose nie obsługuje kątów fotografowania
Papier jest trapezowyWykrywaj granice papieru i przeprowadzaj korekcję perspektywyZniekształcenie perspektywy nie jest problemem orientacji EXIF
Należy zapisać pudełko zwrócone przez OCRRejestruj jednocześnie rozmiar wejściowy, transformację orientacji i rozmiar wyjściowySkorygowane współrzędne obrazu różnią się od oryginalnego obrazu

Kierunek wyświetlania i kierunek pikseli należy rozpatrywać osobno.

Piksele zdjęcia mobilnego nie mogą same zostać obrócone, a znaczniki orientacji EXIF w pliku informują widza, jak je wyświetlić. Przeglądarka odpowiednio dostosuje obraz, a jeśli silnik OCR zignoruje ten znak, odczyta stronę w przeciwnym kierunku.

Funkcja ImageOps.exif_transpose poduszki dostosowuje piksele w oparciu o informacje o orientacji i usuwa zastosowane znaczniki orientacji, aby uniknąć kolejnych rotacji. Zajmuje się orientacją EXIF, a nie dowolnym przechyleniem strzału lub zniekształceniem perspektywy. Prostowanie papieru zrobionego krzywo telefonem komórkowym nadal wymaga kolejnego zestawu obróbki geometrycznej.

Przetestuj granice rotacji za pomocą syntetyzowanych pikseli

Poniższy kod wykorzystuje obraz złożony do sprawdzenia, czy znaczniki orientacji zostały zastosowane prawidłowo:

from PIL import Image, ImageOps

source = Image.new("RGB", (40, 20), "white")
source.putpixel((0, 0), (255, 0, 0))
source.getexif()[274] = 6
fixed = ImageOps.exif_transpose(source)
assert fixed.size == (20, 40)
assert fixed.getpixel((19, 0)) == (255, 0, 0)
assert fixed.getexif().get(274) is None
assert source.size == (40, 20)
again = ImageOps.exif_transpose(fixed)
assert again.size == fixed.size
assert again.tobytes() == fixed.tobytes()

Czerwone piksele w rogach służą tutaj do sprawdzania zależności geometrycznych bez wywoływania silnika OCR lub symulowania prawdziwego tekstu. Dlatego też test może jedynie potwierdzić wniosek, że „znaczniki kierunku zostały prawidłowo zastosowane", ale nie może wykazać, „w jakim stopniu poprawił się współczynnik rozpoznawania tekstu". Przykłady zależą od Pillow i powinny być uruchamiane w zablokowanych wersjach.

Anomalie kierunku zmiany kierunku

W przypadku napotkania problemu z kierunkiem należy najpierw przyjrzeć się zjawisku, a następnie określić przyczynę. Poniższa tabela może pomóc Ci w podjęciu decyzji o kolejnych krokach:

przestrzegaćMożliwe przyczynyNastępny krok
Przeglądarka normalna, parser poziomyEXIF nie został zastosowanySprawdź etykiety orientacji i piksele
Cała strona jest lekko pochylonakąt strzałuNiezależna ocena korekcji pochylenia
Strona ma kształt trapezuzniekształcenie perspektywyKorekta po wykryciu granic papieru
Tekst do góry nogami, ale bez znacznikówBrakujące metadaneOceniaj po treści strony, nie zgaduj w ciemno

Zapis współrzędnych powinien rozpocząć się po obrocie

Jeśli OCR zwróci pole tekstowe na dostosowanym obrazie, współrzędne pola odpowiadają dostosowanemu obrazowi, a nie oryginalnie przechwyconemu obrazowi. Dlatego należy zachować trzy informacje: rozmiar wejściowy, transformację orientacji i rozmiar wyjściowy. Podczas wyświetlania podświetlenia zastosuj odwrotną transformację współrzędnych i wróć do pierwotnej pozycji obrazu.

Tylko zapisanie grupy pól bez zapisywania, do którego obrazu należy, pozycja podświetlenia będzie odbiegać od tekstu.

Zorientuj obraz przed tłumaczeniem

Podczas przetwarzania zeskanowanych materiałów za pośrednictwem portalu OCR i tłumaczeń OmniDoc (portal produktowy) można najpierw potwierdzić orientację względem oryginału. Orientacja, perspektywa i przejrzystość to trzy różne elementy kontroli, które należy potwierdzić osobno.

Po jasnym ustaleniu warunków wejściowych wyniki dwujęzyczne służą do oceny jakości tłumaczenia. Jeśli przypiszesz brakujące słowa do modelu tłumaczenia za każdym razem, gdy je napotkasz, często przeoczysz prawdziwy problem z wprowadzaniem danych.

Źródła: Pillow ImageOps.

📊 Porównanie rdzeni

Obiekt przetwarzaniaMetoda przetwarzaniaCzy ukończone przezexif_transpose
Flaga kierunku EXIFDostosuj piksele za pomocą znacznikówTak
Cała strona jest lekko pochylonaKorekcja kąta strzałuNie, wymagana jest niezależna ocena
Strona ma kształt trapezukorekta perspektywyNie, należy wykryć granice papieru

🎯 Która metoda jest dla Ciebie odpowiednia?

jeśli…

  • Przeglądarka OK, wyniki OCR na boki: Najpierw zastosuj orientację EXIF, a następnie ponownie wprowadź OCR.
  • Ogólne przekrzywienie zdjęcia: Potraktuj korekcję pochylenia jako niezależny krok i nie oczekuj, że przetwarzanie orientacji rozwiąże problem.
  • Krawędź papieru jest trapezowa: Najpierw wykryj krawędź papieru, a następnie przeprowadź korektę perspektywy.
  • Trzeba zaznaczyć oryginalną pozycję obrazu: Zapisz rozmiar wejściowy i informacje o transformacji, a następnie wykonaj odwrotną transformację podczas wyświetlania.

❓ Często zadawane pytania (FAQ)

1. Czy exif_transpose może wyprostować krzywy papier?

nie mogę. Dopasowuje jedynie piksele w oparciu o znaczniki orientacji EXIF i nie obsługuje kątów fotografowania ani zniekształceń perspektywy, które wymagają dodatkowego przetwarzania geometrycznego.

2. Dlaczego przeglądarka wyświetla normalnie, ale wynik OCR jest poziomy?

Przeglądarka stosuje znaczniki orientacji EXIF, ale same piksele nie mogą zostać obrócone. Jeśli OCR zignoruje ten znak, przeczyta stronę w innym kierunku.

3. Czy przykładowy kod może pokazać, jak bardzo poprawił się współczynnik rozpoznawalności?

nie mogę. W przykładzie zastosowano piksele syntetyczne, aby sprawdzić, czy znaczniki orientacji zostały zastosowane prawidłowo, bez wywoływania silnika OCR i bez symulowania prawdziwego tekstu.

4. Dlaczego ramka zwrócona przez OCR nie odpowiada położeniu oryginalnego obrazu?

Jeśli OCR jest uruchamiany na dostosowanej mapie, współrzędne skrzynki odpowiadają dostosowanej mapie. Konieczne jest zarejestrowanie rozmiaru wejściowego, transformacji i rozmiaru wyjściowego, a następnie wykonanie odwrotnej transformacji podczas wyświetlania.

📝 Podsumowanie

Jeśli chodzi o orientację zdjęć z telefonu komórkowego, najpierw sprawdź, czy jest to kierunek wyświetlania, czy kierunek pikseli, a następnie zajmij się odpowiednio kierunkiem, nachyleniem i perspektywą. Prosimy o zachowanie oryginałów i dokonanie przeglądu przed przetwarzaniem ważnych dokumentów.

Wypróbuj teraz: prześlij dokument, aby rozpocząć tłumaczenie, zachowując oryginalny układ

Zaktualizowano 2026-11-11