Задача про шум и ресайз

Шум и размер изображения

Шум и размер изображения

Задача очень простая: уменьшить количество шума с помощью даунсайза (downsize, т.е. уменьшения размеров изображения).

Смежные вопросы:

  1. Можно ли фотографию на 100 мегапикселей уменьшить до 10 мегапикселей (в 10 раз) и при этом получить в 10 раз более чистую, избавленную от шумов картинку?
  2. Можно ли оставить только полезные пиксели-информацию на снимке при даунсайзе?
  3. Существует ли специализированное ПО для подобных манипуляций?
  4. Как правильно сделать уменьшения шума при даунсайзе с сохранением приемлемого количества деталей с помощью классических инструментов в Adobe Photoshop и других распространенных редакторах?
  5. Можно ли снять на высоком значении ISO, уменьшить снимок вдвое и получить уровень шума, соответствующий ISO/2?

Возможно кто-то в комментариях поделиться своим методом или раскроет свои тайны и хитрости, связанные с шумом и даунсайзом.

Материал подготовил Аркадий Шаповал. Обучение/консультации | Youtube | Facebook | Instagram | Twitter | Telegram

Добавить комментарий: Искандер

 

 

Комментарии: 53, на тему: Задача про шум и ресайз

  • Денис

    1. если бы чистоту картинки можно было измерить количественно, то можно было бы сказать, во сколько раз картинка стала более чистой
    2. все пиксели полезные, поэтому при уменьшении размера количество полезных пикселей уменьшится :)
    5. Нет. Вообще это не связано, только косвенно

    • Михаил

      Количественно измерить можно даже средствами фотошопа

      • Роман

        Как? Что является сигналом, а что шумом, мы можем определить только эмпирически. После оцифровки все — сигнал. Возьмем предельный случай, мы фотографируем собственный шум матрицы, чтобы разместить фото на сайте — так шум становится сигналом.

        • Михаил

          Съемка миры с равномерными плашками цветов и яркостей. Далее в фотошопе переводим гистограмму в режим яркости и считаем mean/std.dev – это и будет количественное измерение яркостного шума. Никаких проблем

          • Роман

            Для конкретной картинки.

            • Михаил

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

              • Онотоле

                Согласен с Михаилом, но есть одно НО: при ресайзе алгоритмы ресайза будут по разному отрабатывать однотонную поверхность и реальные фотографии.

    • Макс

      А в чем проблема измерить? Снимаем равномерно освещенный белый лист бумаги и получаем эталон шума.

      • Роман

        Получаем эталон шума при равномерном освещении белого однотонного листа бумаги. Реальные объекты освещенны неравномерно. Шум более заметен в тенях, чем при освещении. На мелкой детализации-текстуре-фактуре шум сложнее отделить от полезного сигнала, чем на равномерно окрашенных объектах.

      • Роман

        Вообще у шума три составляющих.

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

        Условно переменная составляющая, погрешность каждого последующего измерения.

        Ну и отдельно случайная величина, зависящая от общего уровня освещенности. Фотоны, регистрируются как частицы. Их число конечно. Света мало, количество отраженных и зарегистрированных фотонов будет различаться, причем тем больше, чем слабее уровень освещения. Появится характерная зернистость, принципиально неустранимая причем и наиболее заметная. Просто потому, что от одной точки изображения пришло 10 фотонов, а от другой 15. И, учитывая фильтры, в тенях она и проявляется как цветной шум. Или же попытки поднять экспозицию слабо освещенной сцены. Этот тип шума можно устранить либо увеличением выдержки (больше количество регистрируемых фотонов, пока шум от неоднородности матрицы не превысит шум от недостатка фотонов), либо стекированием и усреднением.

        • Макс

          Есть некий максимальный уровень шума, для примера возьмем 10%. Какая-то ячейка показала цветовые составляющие абсолютно точно, какая-то ошиблась на 5%, какая-то на 10%. Величина абсолютно случайная от кадра к кадру даже на одной ячейке (если она не битая). Получить что-то точное из чего-то случайного невозможно, разве что усреднить из многих выборок, что обычно и делают – 10 одинаковых кадров и из них среднее значение – вот тогда, допуская что уровень шума все же меньше максимума, получается “убирание” шума.
          Белый лист позволяет узнать этот максимальный уровень, только и всего.

      • ARIES

        Серый лист бумаги…точнее

      • Alexx

        Таким образом вы можете только эталон пыли на матрице получить, а не шума.

  • Михаил

    Попробую ответить, что сам искал)
    1. Нет. Шум уменьшается не пропорционально разрешению. Во многом это зависит от используемых алгоритмов downsize.
    5. У меня на тестовых снимках (для заправки в шумодав) эксперимент показал уменьшение шума ISO/0,1 (грубо). Так что не получится.
    Для примера был взял снимок Nikon D300 на ISO 3200 и уменьшен размер в 4 раза по линейному разрешению (т.е. в 16 раз) С помощью Perfect Resize и стандартным алгоритмом Фотошопа с бикубической интерполяцией. По двум из плашек (света-тени) вычислил SNR и потом загнал уменьшенные копии в Neat Image для оценки уровня шума по частотам. В итоге получился уровень шума соответствующий примерно ISO 2000.
    График тут: https://yadi.sk/d/X5VM9FO-zTChF
    Результаты SNR:
    ISO 3200 2.98
    ISO 3200 downsize 6.13 (Perfect) и 5.01 (Photoshop)
    ISO 2000 6.19
    ISO 1600 7.25
    Как-то так

    • Аркадий Шаповал

      Очень интересно

      • Михаил

        Не согласуется с Вашими наблюдениями?))

        • Арчи

          Аркадий же сказал: задача простая. Вы не справились. Нужно экспериментировать ещё.

        • Аркадий Шаповал

          да нет, действительно интересные наблюдения. Согласуется

    • Евгений

      5)
      Так-то разделить на 0,1 это умножить на 10

  • Eugene O

    a) Уменьшение размера вдвое предполагает, что количество пикселов по каждой из сторон уменьшится чуть менее, чем на треть. Если уменьшать размеры на 50% по каждой из сторон, это равносильно уменьшению кадра вчетверо.
    Т.е. для кадра размером 3600х2400 (8.6 МПикс) вполовину (4.3 МПикс) это будет где-то 2550*1700. В данном случае, алгорим не будет просто схлопывать четыре пиксела до одного, а будет проводить именно пересчёт.
    б) Одним из факторов повышения ISO является линейное снижение ДД. При даунсамплинге ДД, утерянный в процессе съемки, дополнительно будет съеден алгоримтом, потому что шумящие пикселы будут разбавляться нормальными (в базовом сценарии). Тут, очевидно, нужно разбираться в тонкостях алгоритмов конкретного редактора.

  • Олег

    У меня примерно по этой теме вопрос. К примеру берем полный кадр Никона разрешением 24 мегапикселя и ИСО 1600 ну и фокусным 28мм , делаем снимок. После этого переводим камеру в кроп режим и делаем снимок на 18мм и те же ИСО 1600. Вопрос как уменьшиться разрешение снимка на кропе и будет ли ИСО 1600 по прежнему чистым как и на полном кадре?

    • Роман

      В кроп-режиме камера выкусит центральную часть изображения, совпадающую с аналогичным размером кроп-матрицы. Разрешение уменьшится в 1.5 раза по каждой из сторон, вместо 6000×4000 будет 4000х2667 или сколько там. По шумам разница будет незначительной, матрица та же, условия съемки те же. По качеству изображения разница будет зависеть от качества объектива (ну или качества разных фокусных расстояний для зума).

      • Онотоле

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

      • Аноним

        Ничего не выйдет, деталей и шума будет в 1.5*1.5 раза больше, dxo гляньте

        • Аркадий Шаповал

          деталей меньше

  • Аноним

    1. Нет. В десять раз не получится. Получится в три раза.
    2. Все пиксели полезны. При даунсайзе работает алгоритм проявщика и чем более прогрессивный редактор, тем больше информации он сохранит.
    3. Топаз. Только он имеет целый набор инструментов для каждой из манпуляций. Для каждой отдельно. Может работать из под Photoshop. Сам фотошоп на высокое качество не способен- это универсальный инструмент.
    4. Никак. Классические инструменты сделают это не совсем качественно по современным меркам. Если не нужен эталол, то можно сделать как обычно.
    5.Нельзя. Это так не работает. Этим вопросом уже задавались специалисты и пришли к выводу, что до определенных разрешений работает одна формула по уменьшению шума на высоких значениях ISO, а начиная с многопиксельных камер, абсолютно другая. И в данном случае, плотность пикселей и размер матрицы (4/3 1.5 FF MF) играет первостепенную роль.

    • Аркадий Шаповал

      У топаза одна беда – он сильно прожорлив на компьютерные ресурсы, им 1000 фото не так уж и просто прогнать, в то же время ресайзеры работают в тысячи раз быстрей.

      • Аноним

        Да, не торопливый редактор. Однако со временем доработают алгоритм, все к этому идет. Да и не всегда шумодав необходим для потокового фото.
        А как великолепно работает sharpen-ai. Аккурат после de-noise и даунсайза его использовать. Главное понимать что и как “накрутить” для хорошего результата.

    • Макс

      1. Это невозможно в принципе.

      • NEO

        Жизнь показывает, что возможно все. Тот же ИИ может просто перерисовать bkb дорисовать картинку, нарисовать один пиксель вместо десяти.

        • Макс

          Ну разве что с помощью ИИ…

  • ARIES

    убрвть шум матрицы = на 50% бОЛЕЕ те 12мП делаем на 18мП размер с записью в тифф 48бит ..шум уйдет практически………………..

    • Аркадий Шаповал

      что?

      • Андрей

        Предположу, что имелось ввиду следующее:
        Сказать камере, способной снимать в 18мп, снимать в 12 мп. И количество “шумных” пикселей уйдет само.

        В принципе это решение: так как камера оптически увидит больше и меньше обработает через цифровую обработку. Не будет “высасывать” из недостаточного освещения лишние пиксили (шум).

        А по поводу все-таки цифрового решения – как описано в задаче: технически это реализуемо только через ИИ, но не уверен, что ИИ соверменный достиг того уровня, чтобы адекватно определить “сигнал” от “шума”.

        Еще один способ технически решить проблему – сделать так, как делается “внутри” камер телефонов: взять несколько кадров до и после и как-то их скомпоновать – шум будет отличим, т.к. на каждом кадре может быть немного разным. Но опять же – не подскажу ПО, которое решало бы данную проблему таким способом…

        • Аноним

          Это уже делается а смартфонах.
          64мп сони матрица в итоге выдает 12мп кадр.

          • Искандер

            И обьединяет соседние пиксели в один, тем самым увеличивая площадь/светочувствительность пикселя? Если да, то это круто, но скорее всего, просто кропает матрицу или считывает пиксели в шахматном порядке.

  • Искандер

    Если фотографии не требуется звенящая резкость, я в Фотошопе иду в: Фильтры – Шум – Ретушь (от одного до трех раз) и только потом делаю ресайз с бикубической интерполяцией (четче или глаже – особой разницы не заметил).

    • Аркадий Шаповал

      Я пользуюсь сторонними плагинами для фотошопа, но ни один из них не умеет уменьшать фото с целевой задачей в первую очередь уменьшить шум.

      • Аноним

        Их нет потому что даунсайз не убирает шум сам по себе. См ниже пояснение на английском.
        Поэтому логично что шум убирают проги для этого созданные, а даунсайз проги делают именно даунсайз.

  • Аноним

    Этот вопрос давно уже обсуждался и есть вывод включая статистические выкладки, примеры и анализ.
    Ответ простой
    Downsampling does not reduce noise. It’s provable experimentally because it’s proven mathematically.
    The noise is reduced at exactly the same rate as the detail. That’s what a statistical analysis says must happen.
    It’s not a way to reduce noise because you’ve also reduced detail. When you move away from a noisy image, you see less apparent noise (even though all the noise is obviously still there) and you also see less detail. The signal to noise ratio is still the same.
    Then you haven’t reduced noise because you haven’t increased the signal to noise ratio.
    Коротко – соотношение сигнал/шум не меняется при даунсайзе, шум убирается вместе с деталями.
    Надо уменьшить шум – надо использовать софт а не даунсайз.

    • Аноним

      Бред. Даунсайз визуально уменьшает шум, пользуюсь им 10 лет. Может математически сигнал шум и одинаковые, но гляньте 1 к 1 полный размер с шумного снимка и уменьшенный размер 1 к 1 и все станет понятно

      • Аноним

        Прежде чем утверждать что что то бред, потрудитесь внимательно прочитать что в указано.
        Подсказка – если уменьшить кадр с 24мп до 0.5мп например, шумов очевидно будет меньше как и полезной информации, но сигнал/шум останется без изменения.
        А если уменьшить до точки, шума не будет как и полезной информации.)
        Потому как даунсайз удаляет все информацию а не уменьшает шумы.

      • Аноним

        Ваш пример уже давно обсужден миллион раз.
        Нет информации – нет пиксела – нет шума.
        И давно есть другой пример где используется программа шумодав и сравнивается с кадром после даунсайза. И видна разница, когда кадр без даунсайза но после спец шумодава визуально намного чище и с деталями в сравнении с кадром после даунсайза.
        Потому как отрезание/уменьшение кадра даунсайзом не является шумодавом в принципе.

  • Пётр Ш.

    Я подозреваю, что всё зависит от типа шума. Ну, шум шуму рознь. Так же, разные редакторы по-разному шум давят.
    Из всех редакторов лучше всех давит шум Rawtherapy. Но там нужно уметь плясать с бубном.

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

  • Алекс

    Интересно можно ли в PS для “чистки” шумов по использовать принцип накамерного шумодава от Ккнона на длинных выдержках?
    Делается снимок с открытым затвором, следом же снимок с закрытым затвором при той же выдеркей, а потом вычитает с первого полученый шум во втором.

    • Михаил

      В лоб не получится. Можно сделать стекинг нескольких дублей

  • Алексей

    Из личного опыта. Возможно, это имеет отношение к теме.
    У “дюймовочки” Sony Cyber-shot DSC-RX100M4, которая шумит уже на ISO 400, есть сценарный режим анти-тряс (Anti Motion Blur), который позволяет снимать на коротких выдержках (1/100 и короче), но задирает ISO до 6400. И вот какая с ним фишка. Уменьшаю в меню размер фото с 20 Мегапикселей до 5, делаю фото, происходит секундная задержка на обработку, и на выходе – чистая и резкая картинка. Как это делается – ума не приложу. Данный режим стал одним из любимых.

    • Искандер

      А ведь действительно, мне тоже это интересно! Многие рекомендуют снимать на максимальном разрешении, хоть оно и не требуется, а потом колдовать в редакторах. Отсюда вопрос профессионалам – если в меню выставить среднее или низкое разрешение, каким образом камера уменьшает его? Обьединяя соседние пиксели в один (с бОльшей площадью) или “выдергивает” информацию в шахматном порядке? Или конкретнее – увеличивается ли площадь пикселя при переходе с качества L к качеству S ?

  • Евгений

    Из личного опыта-я печатаю 10×15, очень редко А4, смотрю(показываю) на планшете 10′-шумов не вижу, резкозть запредельная.(canon 60d, iso<3200)😆

    • Искандер

      Верно, это тот же даунсайз, но при печати. Во многих случаях шум можно разглядеть только при попиксельном рассматривании на мониторе или при печати плакатов. Если же он виден даже на 10х15 – тогда бяда(. Тут спасет лишь перевод в Ч/Б и добавление фильтра ” зернистость фотопленки” аля ретро, типа так задумано).

  • Андрей

    “Можно ли фотографию на 100 мегапикселей уменьшить до 10 мегапикселей (в 10 раз) и при этом получить в 10 раз более чистую, избавленную от шумов картинку?”
    Нет, нельзя, я об этом напишу в конце сообщения. Но, как вы знаете, есть шумы — последствия дебайеризации. Вот таких шумов будет меньше по сравнению со съёмкой на 10-мп матрицу.

    “Можно ли оставить только полезные пиксели-информацию на снимке при даунсайзе?”
    Можно перенести в уменьшенную версию чуть больше деталей если перед уменьшением добавить резкости (я добавляю резкость только в яркостном канале, чтобы не усилять цветные шумы). Но всех деталей при уменьшении не сохранить. Добавка резкости после уменьшения это уже просто спец-эффект и новых деталей не привнесет.

    “Существует ли специализированное ПО для подобных манипуляций?”
    Я использую GIMP, полезными оказались режимы каналов LCh Color, LCh Lightness, фильтры Unsharp Mask, Selective Blur, это мои основные “инструменты” для шумоподавления. Увы, в фотошопе таких режимов каналов нет, но зато там есть Lab и можно достичь подобных результатов.
    Обязательно переключаюсь в 32-битный цвет (или хотя бы 16-битный) чтобы после уменьшения получить большую битность цвета и меньше артефактов при последующем редактировании. Кстати, вот что реально можно получить от уменьшения так это повышение битности (глубины) цвета.

    “Как правильно сделать уменьшения шума при даунсайзе с сохранением приемлемого количества деталей с помощью классических инструментов в Adobe Photoshop и других распространенных редакторах?”
    Я не заметил разницы между: “подавить шум, а потом уменьшать размер” и “уменьшить размер, а потом подавлять шум”. Разве что на увеличенной версии радиус шумоподавления должен быть больше и это занимает чуть больше процессорного времени. Но я подавляю только цветной шум алгоритмом типа Selective Blur (threshold делаю чуть меньше, радиус – в зависимости от зашумлённости и размера изображения), изредка могу наложить 50% слой с подавленным шумом и в яркостном канале если яркостный шум слишком уж бросается в глаза. Иногда можно выделить не критичные области (размытые фоны) волшебной палочкой и поработать с ними отдельно.
    Но в целом я не считаю необходимостью удалять яркостный шум и его в принципе невозможно удалить так, чтобы это осталось незаметным. Тот же Топаз не “убирает” шум, он дорисовывает детали поглощённые шумом и местами делает это весьма грубо и ненатурально, то утончая то утолщая линии, оставляя узоры, характерные для нейросетей. С яркостным шумом лучше смириться как и с зерном на плёнке.

    “Можно ли снять на высоком значении ISO, уменьшить снимок вдвое и получить уровень шума, соответствующий ISO/2?”
    Исходя из своего опыта: нет, шумы будут заметны и на уменьшенной копии, и вот почему:
    природа матричного шума такова, что шумные пиксели вовсе не нейтрализуют друг друга как вы предположили судя по вашим вопросам, а попросту объединяются в более крупные сгустки шума. Так что придётся с ним разбираться и сделать это довольно просто (но бесцветное зерно всё равно останется и в этом нет ничего плохого).

  • kotofei

    А задача ведь имеет прикладное значение для Аркадия… так.. июль 2019, а в сентябре вышла sony a7r-4. Перефразирую задачу: “стоит ли переходить на А7-4 и делать последующие ресайзы поголовно, в т.ч. в целях снижения шума” =)

    Предлагаю взглянуть на это с другой точки зрения. Вы снимаете кадр что бы в итоге получить какой продукт? Отпечаток А4 или просмотр на 4к мониторе/телевизоре? Ну, в большинстве случаев наверно так. Печатаем мы редко. 8к телевизоры массовыми еще не скоро станут, так что предположение о 4к ТВ вполне уместно, да? 4к ТВ это 3840х2160, но это 16:9 а снимаем мы в 3:2, т.е. НА МОЙ ВЗГЛЯД после проявки и ретуши надо продукт ресайзить до 3240х2160, а это всего лишь чуть меньше 7 Мп.
    К слову, это косвенно подтверждает ненужность многомегапиксельных сенсоров.

    PS topaz gigapixel умеет использовать ресурсы видеокарты – считает в разы быстрее, чем процессор. Но все равно 1000 кадров – это надолго. Да и какая разница, главное- что бы успело все обсчитать до следующей фотосессии, верно? =)

Добавить комментарий

Copyright © Radojuva.com. Автор блога - Фотограф в Киеве Аркадий Шаповал. 2009-2023

English-version of this article https://radojuva.com/en/2019/07/how-to-make-plumbus/?replytocom=283307

Versión en español de este artículo https://radojuva.com/es/2019/07/how-to-make-plumbus/?replytocom=283307