Как преобразовать изображение JPEG в изображение RAW с помощью команды Linux?

Как преобразовать изображение JPEG в изображение RAW с помощью команды Linux?

У меня есть серия изображений JPEG, сделанных с помощьюCanon Powershotв JPEG. Как мне конвертировать/преобразовать их в RAW-изображения?

Не с помощью графического инструмента, а из командной строки!

Примечание: использование необработанных изображений для их объединения в приложении Siril Astrophoto (https://siril.org/fr/)

решение1

Исходные изображения RAW не подлежат восстановлению.

Выбор JPEG вместо RAW экономит место, жертвуя качеством.
Эта операция необратима и приводит к потерям.
Проще говоря, это означает, что вы не сможете вернуться назад.

К сожалению, перед следующей съемкой вы сможете выбрать только формат RAW вместо JPEG.

Примечание:Технически вы можете найти способ преобразовать текущее изображение JPG в формат RAW, но это будет не то же самое изображение RAW, которое вы могли бы получить, если бы вы сделали снимок и сохранили его непосредственно в формате RAW.


Поиск вПоддержка Canonвы можете прочитать

Камера может снимать изображения в форматах JPEG и RAW.

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

RAW "Сырые" (необработанные) данные, записанные практически без потери качества изображения из-за обработки изображения камерой. Данные в этом состоянии не могут быть использованы для просмотра на компьютере или печати. ​​Сначала необходимо обработать изображения на камере или использовать программное обеспечение (Digital Photo Professional) для преобразования изображений в файлы JPEG или TIFF. Изображения можно корректировать с минимальной потерей качества.

решение2

«Raw» — это не совсем определенный формат. Формат изображения Wikipedia RawЯ насчитал 43 формата RAW, каждый из которых зависит от модели камеры.

Один из лучших пакетов изображений — это ImageMagick, доступный как пакет на Linux или как загрузка, который поддерживает несколько форматов RAW. Используйте его команды magickили convert.

Однако качество результата будет очень плохим. JPEG — это обработанные данные изображения, а RAW — нет. Обычно RAW-файлы имеют 12–14 бит на пиксель, что означает до 16384 значений. JPEG может иметь только 256 значений яркости на канал RGB. Это означает, что JPEG содержит гораздо меньше данных, чем соответствующий RAW-файл. Поэтому нет хорошего способа конвертировать JPEG в RAW.

решение3

Трудности и возможности конвертации JPEG в формат RAW.

Не всегда возможно преобразовать файл JPEG в исходный файл RAW.
Примечание: Я говорю об оригинальном или конкретном формате RAW, поскольку он не является стандартом: форматы RAW — это служебные форматы, отличные друг от друга, используемые производителем для быстрого сохранения содержимого ПЗС-матрицы в буфере и, в случае необходимости, на устройстве хранения данных.

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

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

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

Существующие программы.Программа convertотImagemagickпакет под Linux (или другие ОС) не может напрямую конвертировать какие-либо форматы в формат Canon RAW,он способен только читать(р) их... Так что он может сделать противоположное тому, что ищет ОП: преобразовать RAW во что угодно.

convert -list format | grep Canon
      CR2  DNG       r--   Canon Digital Camera Raw Image Format
      CRW  DNG       r--   Canon Digital Camera Raw Image Format

Но Imagemagick — это даженаписание сценариев/язык программирования. Получив доступ к значениям отдельных пикселей, вы можете сохранить их так, как захотите... программируя их. Но вам нужно знать спецификации нужного формата.

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

О необратимости преобразования RAW в JPEG.

Это происходит по многим причинам. Среди них:

  • Некоторые форматы являются форматами с потерями, JPEG обычно один из них. Вы экономите место за счет артефактов и общей модификации исходных значений для отдельных пикселей.

  • В классическом формате JPEG для цвета отводится всего 8 бит (это означает 256 оттенков). В ПЗС-датчике счетчики обычно имеют разрядность 12 или 14 бит (это означает 4096 и 16384 оттенка).
    Если представить изображение как гистограмму, то вы будете усреднять в одном бине (столбце) изображения JPEG значения, которые содержатся в 16 и 64 бинах в 12- и 14-битных счетчиках соответственно. Как можно восстановить отдельные значения бинов из среднего?

  • Даже если ваш JPEG имеет современный формат 12-14-16 бит (JPEG_XT), вы не знаете алгоритм, используемый для этого преобразования внутри камеры.
    (Проще говоря, сенсор может иметь нелинейную кривую эффективности. Производитель может учесть это, преобразуя число из формата RAW в линейныйоттенокуровень в формате JPEG, TIFF, ...,).

  • Геометрия ПЗС отличается от геометрии изображения. Грубо говоря, на изображениях мы имеем пиксель с 3 или 4 значениями относительно точно такого же геометрического квадрата. Все квадраты смежные.

    Вместо этого в ПЗС мы имеем геометрически разделенные датчики, чувствительные к разным длинам волн, опять же грубо говоря, для значений R, G, B. Эти датчики могут иметь или не иметь одинаковую поверхность и, безусловно, иметь разную эффективность, которая, помимо прочего, меняется в зависимости от количества отсчетов в секунду.

    То, как эти последовательности датчиков RGB выровнены и расположены друг от друга, зависит от конструкции ПЗС. Вы можете увидеть несколько примеровЦветовой фильтр массивав интернете.

    введите описание изображения здесь Изображение изВикипедия

    введите описание изображения здесь Изображение изЭфотозин

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

    Все эти вещи вряд ли обратимы.

решение4

Как отметили другие, при конвертации из JPG невозможно получить обычные преимущества формата RAW.

Однако с Canon Powershot можно использовать кастомную прошивку от ЧДКпроект, который позволяет делать снимки в формате RAW. Конечно, это не поможет с существующими изображениями.

Связанный контент