Как exif информация кодируется?

Также рассмотрите [Практический Python] ( http://www.cs.luc.edu/~anh/python/hands - на/). Это используется в качестве основного текста для Информатики 150 в Университете Лойола. Это - краткое введение к Python при подчеркивании хорошего стиля программирования и дизайна.

8
задан Steve 30 November 2009 в 18:28
поделиться

4 ответа

Если вы ищете строку "Exif", вы найдете начало данных Exif - это довольно сложно, и я бы рекомендовал использовать библиотеку - (например, моя компания DotImage , если вы использовали .NET).

Вот описание высокого уровня:

Сам Exif находится внутри AppMarker - три байта до него будут E1 (AppMarker 1), а размер данные маркера в порядке байтов файла. Через два байта после Exif вы увидите маркер порядка байтов (например, 49 49 означает II , что означает Intel, прямой порядок байтов - это означает, что в двухбайтовых числах младший байт находится первым в файл).

В остальных данных широко используются смещения, смещение отсчитывается от местоположения первого байта порядка байтов (49 в приведенном выше случае)

8 байтов от этого смещения - это 2-байтовое число, которое представляет собой количество тегов exif. Если вы находитесь в порядке байтов II , переверните байты, чтобы прочитать длину.

Тогда будет это количество 12-байтовых записей. Каждый из них:

2 bytes: Tag ID
2 bytes: Tag Type
4 bytes: Length
4 bytes: data if the data is 4 bytes or less, or an offset to the data

После N 12-байтовых записей у вас будут данные, на которые указывает каждое смещение, используемое в вышеуказанных N записях. Вам нужно найти идентификаторы и типы, чтобы увидеть, что они означают и как представлены.

7
ответ дан 5 December 2019 в 06:53
поделиться

В Википедии есть несколько указателей на то, как и где именно данные EXIF ​​хранятся в файле. Конечно, всегда есть сам стандарт , который нужно прочитать.

3
ответ дан 5 December 2019 в 06:53
поделиться

Это одна из хороших библиотек для Java и EXIF: http://www.drewnoakes.com/code/exif/

1
ответ дан 5 December 2019 в 06:53
поделиться

Анализировать данные EXIF ​​довольно утомительно, но вы можете найти множество библиотек для их анализа. Мой любимый вариант для Java -

http://www.java2s.com/Open-Source/Java-Document/Web-Server/Jigsaw/org/w3c/tools/jpeg/Exif.java.htm

http://jigsaw.w3.org/

1
ответ дан 5 December 2019 в 06:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: