Mam następujący scenariusz:Obracanie obrazu o orientacji określonej w EXIF przy użyciu Python bez PIL tym miniatury
- przesyłam zdjęcie z iPhone wraz z informacjami EXIF do mojego serwera gniazda Pyhon.
- Potrzebuję, aby obraz był odpowiednio zorientowany na podstawie rzeczywistej orientacji, kiedy zdjęcie zostało zrobione. Wiem, że IOS zawsze zapisuje obraz jako Landscape Left i dodaje rzeczywistą orientację jako pole EXIF (EXIF.Image.Orientation).
- Czytam pole EXIF, aby zobaczyć rzeczywistą orientację. Następnie obracam obraz za pomocą wxpython do właściwej orientacji.
Używam pyexiv2 do manipulacji EXIF.
Problem: Informacje EXIF zawierające miniatury utracone podczas obracania obrazu za pomocą wxpython.
Co zrobiłem: Czytam EXIF przed obróceniem obrazu. Zresetowałem pole orientacji w EXIF. Potem odkładam to z powrotem po rotacji.
Problem:
Miniatura wewnątrz EXIF nie jest obracany. Obraz i miniatura mają różne orientacje.
Pytania?
Czy istnieje moduł inny niż PIL, aby obrócić obraz zachowując informacje EXIF?
Czy istnieje osobne pole EXIF dla orientacji miniatury?
Czy istnieje sposób, w jaki mogę samodzielnie obrócić tylko miniaturę?
Dzięki za pomoc ...
Jeśli spojrzeć na stronie 56 [Exif 2.2 specyfikacji] (http://www.exif.org/Exif2-2.PDF), użytkownik Zobaczysz, że Orientacja jest opcjonalnym znacznikiem, który można dołączyć do miniatury w pierwszym IFD pliku. Nie mam żadnego doświadczenia z pyexiv2, ale jeśli umieścisz tagi na miniaturce w bibliotece, założę się, że możesz po prostu ustawić tę. – BenTrofatter
@BenTrofatter Dzięki mate ... Próbowałem tego, ale większość widzów nawet nie spojrzy na EXIF przed wyświetleniem obrazu/miniatury. Właśnie z tego powodu obróciłem obraz i zresetowałem EXIF. – ATOzTOA