Я искал высоко и низко для этого безрезультатно. Я хотел бы иметь возможность извлечь смещение байта, при котором происходит каждый прогрессивный уровень/сканирование JPEG.Прогрессивный слой JPEG/сканирование смещения (imagemagick?)
Например, изображение 100 КБ имеет 5 слоев, используемых для рендеринга конечного изображения; слой 1 заканчивается на kB 5, слой 2 в kB 20, слой 3 на kB 60 и т. д. (например).
Можно ли использовать Imagemagick для этого? Инструмент identify
, похоже, не поддерживает это. Если да, то как? В противном случае какой инструмент (ы) мог бы выполнить это? Я бы предпочел не писать собственный парсер JPEG. Благодарю.
Я решил, что мне, возможно, придется сделать что-то подобное. Каков наилучший способ сканирования двоичного файла для байтового маркера? Я никогда этого не делал раньше. – Eric
Вам необходимо получить копию стандарта JPEG. Все маркеры JPEG начинаются с FF. Некоторые маркеры имеют поля длины, которые вы должны использовать для пропуска данных, которые могут включать значения FF. В остальном вы сканируете FF и просто пропустите маркеры, которые вам не интересны (включая FF00, что означает сжатое значение FF). – user3344003
Это действительно полезно. Спасибо, сэр! – Eric