Como o Image Viewer sabe como autorotizar a imagem?

2

Eu tenho dois arquivos, que já foram idênticos, mas um foi rotacionado usando o Windows Photo Viewer no Windows. Vamos chamá-los de imagem bruta e imagem girada. A representação lógica desta imagem é retrato.

A imagem bruta tem uma largura de 5184 e uma altura de 3456 (conforme relatado pela guia Imagem nas propriedades do arquivo), por isso é uma imagem de paisagem.

A imagem girada tem, obviamente, uma largura de 3456 e uma altura de 5184, então é uma imagem de retrato.

No entanto, quando eu abro qualquer um desses dois arquivos no Ubuntu, eles são exibidos no modo retrato no Image Viewer e não consigo entender por que isso está acontecendo. Como o visualizador de imagens sabe qual é a maneira lógica de observar essa imagem?

EDIT: Ubuntu também parece saber onde está o topo da imagem, uma vez que as miniaturas são corretamente representadas também, contra os valores de largura e altura.

    
por Andrei 05.12.2015 / 04:44

3 respostas

1

Agradeço a ambos por suas respostas, embora sejam úteis. Encontrei a maneira mais fácil de determinar por que isso está acontecendo.

Usando o Image Viewer padrão, cliquei com o botão direito do mouse na imagem - > Propriedades - > Guia Detalhes - > Expandir o grupo Dados da imagem > Orientação . Este meta-dados diz ao visualizador e ao Ubuntu como visualizar a imagem.

Isso só é possível porque a câmera tem um acelerômetro que pode descobrir qual é o caminho e salva isso como meta-dados no arquivo. O Visualizador de Fotos do Windows não sabe como lidar com esses metadados e o ignora, exigindo, portanto, rotação, que modifica os dados originais, para uma visualização adequada.

    
por Andrei 05.12.2015 / 12:20
3

Pode haver meta-informação incorporada no arquivo de imagem que fornece pistas sobre a orientação da imagem.

O visualizador de imagens do Ubuntu irá rodá-las automaticamente, dependendo dos metadados. O Windows Photo Viewer ignorou tradicionalmente essas informações .

Isso pode levar a resultados inesperados. Um programa pode obedecer à orientação e girar para visualização, enquanto outros não podem.

Existe um atributo Orientação Exif que pode ter 1 de 8 valores. Pode haver outros esquemas / representações de metadados para orientação da imagem. As câmeras podem incorporar essas informações no momento da filmagem.

Para ler esses metadados, achei o Imagemagick útil. Existem outros visualizadores de metadados disponíveis. Você pode exibir esses atributos incorporados de dentro do seu programa de visualização de fotos / imagens (procure por propriedades de imagem).

Para visualizar com o Imagemagick:

$ sudo apt-get install imagemagick
$ identify -verbose /path/to/image.file
    
por Progrock 05.12.2015 / 08:50
2

Existem alguns metadados associados a uma imagem específica, que informa ao Image Viewer em qual orientação sua imagem deve ser exibida. Para ver mais, vá para o terminal e digite

less /path/to/your/image.jpg
    
por riashatrafat 05.12.2015 / 05:56