Почему Darktable экспортирует огромные JPEG? - Фотопедия
6 голосов
/ 29 июля 2013

У меня есть Nikon D3200, и я только начал снимать в Raw.

Размер необработанных файлов составляет 18-24 МБ, и если я преобразую их в JPEG с использованием Nikon ViewNX 2, я получу 8-12 МБ файлов с высочайшим качеством и разрешением с использованием sRGB; того же размера, что и в JPG для съемки вне камеры с максимальным качеством.

Вместо того, чтобы использовать Darktable с теми же параметрами (качество 100 и sRGB при максимальном разрешении), я получаю файлы размером 25-30 Мб, что намного больше, чем оригинал Raw.

Есть ли причина для этого? Как я могу это изменить? Если это невозможно изменить, какую настройку вы бы посоветовали мне использовать в Darktable для получения файлов меньшего размера без потери качества?

Ответы [ 4 ]

13 голосов
/ 29 июля 2013

Несжатые RGB-файлы (3 значения на пиксель) будут больше, чем ваши исходные тексты, так как исходные файлы содержат монохромное растровое изображение (1 значение на пиксель) и обычно уменьшенный, агрессивно сжатый предварительный просмотр, который занимает часть размера, 400 КБ для камер Canon 10MP и 1M для Nikon D5100 (я знаю эти цифры, потому что раньше я считывал их из необработанных файлов и сохранял их во временном файле). NEF Nikon хранит предварительные изображения с полным разрешением, в то время как Canon использует половину разрешения, следовательно, большую долю.

Таким образом, можно ожидать, что несжатая 16-битная RGB-карта будет приближаться в 3 раза больше, чем необработанная, и временами 3, деленными на 2, для 8-битной несжатой. 16-мегапиксельное 8-битное изображение размером 48 МБ без сжатия.

Теперь к сути, так как мы говорим здесь о JPEG. Это размер несжатого растрового изображения, который является базовым размером сжатия, а не исходный размер. Это означает, что если вы установите сжатие очень мягким, оно все равно может быть больше, чем необработанное.

Числа качества в формате JPEG являются произвольными - все, что вы точно знаете, это то, что качество 100 больше 90, а 90 больше 80 в той же программе. С JPEGLIB, который я использую для своей jpeg-обработки, 16-мегапиксельное изображение становится 4 Мб, и оно быстро уменьшается до 1,7 Мб при 95, без ощутимого ухудшения качества. Я обычно держу его на 80, что составляет 950k. И, переключаясь между 4Mb и 950k файлом при 100% увеличении, я не вижу никакой разницы. Так что кажется чрезмерным, что ваши 100% практически не сжимаются.

Таким образом, вы должны сделать снимок с большим количеством деталей и чистым небом и сохранить затем в 100, 90,80,70,60,50, пока не увидите качественный удар. Для ваших 24-мегапиксельных изображений вы, вероятно, достигнете этого предела на уровне около 1,5 Мб, в зависимости от того, какой показатель качества JPEG указан в вашей программе.

4 голосов
/ 30 июля 2013

Несоответствие по размеру между JPEG, закодированными с "100% качеством" в разных кодировщиках, вероятно, является результатом одного из следующих действий:

  • Различные настройки подвыборки цветности. Подвыборка цветности в JPEG уменьшает пространственное разрешение каналов цветности, в свою очередь, уменьшая размер файла с незначительными различиями по качеству, по крайней мере, для большинства фотографических материалов.

    Разные кодеры JPEG могут по-разному регулировать подвыборку цветности: некоторые могут регулировать ее вместе с настройкой качества, поэтому более высокое качество также будет использовать меньше подвыборки. Некоторые могут использовать другой, отдельный элемент управления для настройки качества. А некоторые могут вообще не разрешать какую-либо настройку этого параметра.

  • Различия между тем, как датчики интерпретируют настройку качества. Различные кодеры JPEG будут применять разные значения к настройке качества, поэтому вы не можете сравнивать настройки качества между различными кодерами.

    Например, качество 80% в одном кодере может выбирать аналогичные средние значения квантователя с качеством 92% в другом кодере. Настройки качества только косвенно влияют на алгоритм, используемый кодером для выбора значений квантователя для каждого блока в изображении. Под капотом именно эти значения квантователя действительно влияют на качество, и вы обычно не можете настроить их напрямую.

    Даже настройка качества "100%" может означать разные вещи между кодировщиками. В некоторых случаях это означает использование наименьших доступных квантователей (при сохранении большей детализации). В других случаях это не обязательно может зайти так далеко, или это может (как упомянуто выше) повлиять на другие аспекты кодирования, такие как подвыборка цветности.

Обратите внимание, что изображение JPEG никогда не будет размером больше, чем несжатое растровое изображение, для любого нормального изображения. Однако сравнение его с файлом RAW может вводить в заблуждение, поскольку для файла RAW потребуется несколько шагов (включая шаг, называемый demosaicing , который увеличит размер из-за интерполяции) для расширения к правильному несжатому растровому изображению.

3 голосов
/ 29 июля 2013

Различные кодеры используют разные значения для максимального качества. Хотя JPEG отлично справляется с уменьшением размера файла, позволяя упрощать изображения тонкими способами, это один из пони, который не ищет шаблоны по всему изображению, которые позволят уменьшить размер без потерь.

Файл RAW, с другой стороны, вероятно, использует сжатие без потерь общего назначения, которое ищет шаблоны, которые не находит кодер JPEG. Это, плюс накладные расходы формата файла JPEG, может привести к большему общему файлу, чем потенциально оригинальный RAW.

Что касается разных размеров для максимального качества между кодировщиками, это просто результат разницы между значениями, используемыми при кодировании "100%". Это все еще не без потерь, и упрощение все еще происходит, но уровень упрощения может очень варьироваться от одной программы к другой. В частности, при более высоких качествах относительно небольшое количество прироста качества может привести к значительному увеличению объема необходимых данных, поскольку вы добавляете младшие значащие биты из уже большого числа значений.

3 голосов
/ 29 июля 2013

Похоже, что для выбранных вами настроек ожидается большой размер файла.

Когда я беру NEF-изображение с Nikon D5100 и конвертирую его в JPEG с использованием цветового пространства sRGB и качеством 100, размер составляет около 18 МБ. Выполнение того же с dcraw и преобразованием ImageMagick также приводит к 18 МБ файлу.

Качество JPEG 100, вероятно, никогда не понадобится. Если вы хотите файлы без потерь, используйте TIFF. Для отображения JPEG 100 не требуется, вы можете спокойно использовать что-то вроде 95 и не сможете отличить.

Какое сжатие JPEG выбрать, можно исследовать дальше, и здесь есть вопросы по этому поводу, но выбор значения в 90-х годах значительно уменьшит размер и будет соответствовать цели для большинства приложений.

Добро пожаловать на сайт Фотопедия, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...