QNA > C > Come Rilevare Un'immagine Ruotata E Rimetterla Nella Posizione Corretta Usando Python/Opencv

Come rilevare un'immagine ruotata e rimetterla nella posizione corretta usando Python/OpenCV

Tags Exif - La maggior parte delle immagini scattate con fotocamere moderne (anche quelle dei cellulari) contengono il tag exif Orientation per indicare in che modo l'immagine è orientata.

In Python, fai il checkout di PIL - Python Imaging Library e in particolare del pacchetto PIL.ExifTags. Usalo per leggere il tag Orientation e ruotare l'immagine.

Se usi la riga di comando di Linux, puoi usare exiftool per leggere e modificare i tag exif e convertire (ImageMagick) per ruotare l'immagine.

Dai tag di questa domanda, credo che questa potrebbe non essere la risposta che vuoi. Ma spero che questa sia la risposta di cui hai bisogno/merito. Potrebbe farti risparmiare un sacco di tempo e di energia :P

Alcuni precedenti: Ho avuto un requisito un po' simile. Avevo delle foto di candidati che contestavano le elezioni del Lok Sabha da tutti i distretti del Tamil Nadu. Le foto sono state prese dalla loro domanda alla Commissione elettorale - quindi sono accessibili ai cittadini. Molte delle immagini erano ruotate. Ho dovuto ri-orientare quelle sbagliate.

Ho usato exiftool per stampare il nome del file e il valore del tag Orientation, ho usato grep per filtrare tutti gli orientamenti non standard. Ho usato convert per ruotare e salvare come nuova immagine e ho usato di nuovo exiftool per togliere il tag Orientation dalla nuova immagine. Sfortunatamente, non mi sembra di avere quello script al momento. Se lo trovo lo incollo qui. Credo che si possano fare le stesse operazioni usando PIL anche in Python.

Spero che questo aiuti.

Di Dawna Langhorne

Quanto è '750 ore al mese di utilizzo di istanze Linux, RHEL o SLES t2.micro' per istanze EC2 Amazon gratuite? :: Quale smartphone da gioco preferisci, il Lenovo Legion Duet o l'Asus ROG 3?
Link utili