Как убрать шумы с фото: Шумопонижение, удалить шум на фото онлайн
Удаление шума с фотографии на примере Noise Ninja
Вас когда-нибудь смущал цифровой шум на фотографии? Казалось бы, отличный кадр с хорошим светом. Но, стоит только чуть ошибиться с настройками или попасть в сложные условия, где без высокого ISO не обойтись, сразу возникает проблема.
В чем проблема?
Пейзажные фотографии зачастую снимаются в сложных световых условиях. Например на рассвете или закате при съемке в сторону солнца сцена получается очень контрастной с большим перепадом яркости между тенями и светами. При съемке в сумерках контраст снижается, однако и количество света при этом тоже значительно уменьшается, поэтому снимать приходится на длительных выдержках, при этом чем гуще становятся сумерки, тем меньше деталей остается в теневых зонах. При последующем “проявлении” фотографий в RAW-конверторе возникает потребность часть деталей из теней все-таки достать, и в этот момент на снимке появляются шумы.
Ряд примеров можно продолжать. Например, шумы обязательно появятся на ночных фотографиях, снятых на высоком значении ISO. Они же будут рядом, если вы, вдруг, грубо ошибетесь в экспозиции на 1-2 ступени и затем компенсируете ошибку при обработке. В общем шумы в пейзажной фотографии – не такое уж и редкое явление, и умение с ними бороться – важный навык фотографа.
Что делать?
Функция удаления шума сейчас есть во многих программах и плагинах для “Фотошопа”. Более гибкие настройки обычно имеют специализированные плагины для шумоподавления. Один из них я использую в своей работе, и называется он Noise Ninja (не входит в “Фотошоп”, нужно устанавливать дополнительно). Перед тем как начинать разбор примера оговорюсь, что описанный ниже метод – универсальный, и может использоваться с любым другим плагином для удаления шумов.
Фотография, с которой мы будем работать, снята на ISO400 с рук со значительной недодержкой, поэтому после приведения экспозиции к норме, снимок получился заметно шумным. Быстро изучив кадр, я выявил два типа шумов, избавляться от которых нужно будет разными способами.
Первый – шумы в небе. Такой тип шума удаляется очень просто, так как в облаках нет объектов с резкими границами, мелкими деталями, и даже при сильном шумоподавлении облака будут выглядеть естественно и натурально.
Второй – шумы в воде и на теневых участках снега. В этих зонах много мелких деталей, и добиться естественного вида после шумоподавления будет немного сложнее.
Начнем с простой задачи и избавимся от шумов в зоне неба. Для этого откроем фото в “Фотошопе”, создадим копию исходного слоя и назовем ее “nonoise-sky”.
Удобство работы на отдельном слое очевидно, так как после применения шумоподавления ко всему изображению мы сможем использовать маски для уменьшения влияния эффекта на отдельные части фотографии, либо снижать эффект в целом, регулируя прозрачность (“Opacity”) слоя. Следующий шаг – запустить плагин Noise Ninja. Он находится в меню Filters -> PictureCode -> Noise Ninja. При запуске плагин автоматически выстраивает профиль фотографии:
Интерфейс Noise Ninja очень прост. Здесь есть большая зона с исходным изображением, справа в небольшом окошке виден кусочек фотографии увеличенный до 100%, а под ним находятся основные настройки.
Посмотрим на панель с настройками:
Здесь все очень просто. Основных ползунка всего два: Strength и Smoothness. Первый задает силу шумоподавления: чем больше значение, тем меньше шумов останется в нашей фотографии. Второй задет степень сглаживания: чем больше значение Smoothness, тем меньше деталей останется в итоговом изображении. Именно этими двумя настройками мы и будем добиваться натурально выглядящей картинки. С одной стороны – без шумов, с другой стороны – с сохранением при этом максимально возможного количества деталей. Ползунок Contrast регулирует контраст итогового изображения, однако его работа не очень предсказуема, поэтому я всегда оставляю его в положении по умолчанию – 10.
Также на панели есть группа из двух настроек со словом USM. Ими можно повышать резкость фотографии после применения шумоподавления. Включение сюда этих ползунков логично, так как уменьшение шумов всегда приводит к размытию изображения и потере деталей. Повышение резкости в этом случае способно немного компенсировать этот эффект, но, в свою очередь, может снова проявить шумы или добавить к изображению еще и другую проблему – видимые артефакты. Поэтому я пользуюсь USM-группой не всегда, только в простых случаях, где глобальное повышение резкости для всего изображения не приводит к другим сложностям.
Еще одна группа ползунков под названием Colors позволяет отдельно работать с цветным шумом, однако в моей практике не было еще ни одного случая, где мне захотелось бы ими воспользоваться. Все три ползунка всегда стоят у меня в среднем положении – 10. А вот галочки Turbo и Coarse Noise я, напротив, всегда включаю. Turbo – ускоряет работу плагина без видимых проблем с качеством, а Coarse Noise эффективно убирает низкочастотный шум в виде множества мелких точек, сгруппированных в пятна.
Основная проблема при шумоподавлении – найти баланс, когда количество шумов уменьшается до нормального уровня и фотография становится чистой, при этом мы должны потерять минимальное количество деталей и добиться естественного внешнего вида фотографии. Если просто бездумно выкрутить ползунки на максимум, то в результате получится “пластиковое” изображение: да, без шумов, но и без деталей. Разберем этот процесс на нашем примере.
Первое, что я делаю, это отключаю повышение резкости (USM amount = 0). Затем, нахожу на изображении место, где шум достигает максимума. Обычно это самый темный участок, нередко в месте перехода его к более светлой зоне. Сейчас мы работаем только с небом, и такой участок находится около горизонта в левой части фотографии. Первым шагом является увеличение значения Strength до максимума (20), а Smoothness – до минимума (0). После чего, постепенно сдвигая ползунок Smoothness вправо, нужно остановиться в тот момент, когда на 100% кропе полностью не исчезнут видимые точки шума. Для нашего примера это произошло при значении Smoothness = 8.
На данном этапе мы отыскали пограничное положение параметра сглаживания, то есть по сути выяснили порог размера детали, после которого она считается шумом. Теперь нужно ослабить влияние шумоподавления, чтобы изображение не выглядело пластиковым. Небольшое зерно при этом все же появится, однако выглядеть это будет натурально и естественно.
Для подавления шумов в небе значение Strength осталось довольно большим (14), однако для облаков без мелких деталей это нормально. При подавлении шумов в более детализированых частях фото сила эффекта обычно гораздо ниже. Обратите внимание также на то, что галочки Turbo и Coarse Noise включены. Применяем настройки кнопкой OK.
Теперь, если посмотреть на фотографию на 100% увеличении, мы видим, что небо теперь выглядит намного чище, а вот детали на льду и снегу безнадежно замылены. Давайте это исправим, ограничив влияние шумоподавления только на область неба. Для этого добавим к слою ‘nonoise-sky’ маску и нарисуем по ней линейный градиент от белого к черному, делая нижнюю часть слоя прозрачной.
Еще раз смотрим на фотографию на 100% увеличении:
Теперь все в порядке. Небо – без шумов, а на снег и лед вернулись детали от исходного изображения.
Теперь займемся шумами в детализированной части фотографии. Здесь подход будет иным, так как нам нельзя терять много деталей и сильно задрать значение Strength не выйдет. Выходит, что сила воздействия должна быть минимальной по определению, но в этом случае избавиться от всех шумов не получится. Хорошая же новость в том, что шумы в изображении распределяются не равномерно. В светлых зонах шумов меньше, а в темных – больше. Поэтому, основная идея борьбы с шумами в областях с высокой детализацией заключается в том, чтобы немного “смягчить” изображение, сделать его не таким резким и микроконтрастным, после чего ограничить действие шумодава только на темные участки. Давайте попробуем реализовать это в Noise Ninja.
Создаем еще одну копию исходного слоя и называем ее “nonoise-water”.
Открываем Noise Ninja, выставляем значение Smoothness на максимум (20), после чего подбираем ползунком Strength желаемую степень смягчения деталей в районе воды и снега. Изображение при этом станет чуть менее детализированным, однако все еще с достаточным количеством деталей, чтобы не потерять натуральность внешнего вида.
Применяем настройки кнопкой OK. После чего добавляем слою “nonoise-water” черную маску, берем мягкую белую кисть с прозрачностью около 20% и аккуратно прорисовываем по маске проблемные зоны. В результате маска может выглядеть вот так:
На этом борьбу с шумами можно считать законченной.
Зачем все это?
Главной целью борьбы с шумами является не полное их подавление, а снижение их влияния на изображение до приемлемого уровня, с сохранением естественного вида итоговой фотографии. Некоторое количество шумов вполне допустимо. А сама эта степень допуска диктуется целями, для которых вы готовите изображение. Например, в стоковой фотографии к шумам весьма нетерпимое отношение, особенно трепетно к ним относятся микростоки. Поэтому, если вы готовите фотографию на сток, вы, скорее, предпочтете потерять в детализации, но избавиться от шумов практически полностью. Если же речь идет о подготовке фотографии к печати, то здесь, наоборот, лучше не увлекаться шумодавом, сохранив большее количество деталей. Для публикации в интернете борьба с шумами практически лишена смысла, так как при уменьшении изображения до 900-1200 точек все мелкие детали, включая шумы, потеряются сами собой. Поэтому даже очень шумные фотографии, снятые на ISO1600 и выше, будут выглядеть на странице блога или сайта очень достойно и качественно.
Надеюсь, теперь у вас с шумными фотографиями будет полный порядок. Расскажите о моем методе своим друзьям в соцсетях. Пусть у них тоже все будет хорошо. 🙂
Об авторе
Как снять классный пейзажный кадр?
Скачайте бесплатную email-книгу о том, как создавать впечатляющие фотографии в любых условиях на ту технику, которая у вас уже есть.
3 лучших эффективных способа удаления видеошума и повышения качества
Как убрать видеошум? Если вы — насекомое-насекомое, это должно вызвать головную боль. После того, как вы сделали несколько отличных снимков, вы должны знать способы оптимизации видео, особенно если вы хотите поделиться ими с друзьями. Как лучше всего удалить фоновый шум из видео? В статье рассказывается о 3 наиболее часто используемых методах уменьшения шума и зернистости видео.
- Часть 1. Что такое шум видео?
- Часть 2: Лучший метод удаления видеошума
- Часть 3: Как удалить видео шум в Интернете
- Часть 4: Как бесплатно удалить видео шум
- Часть 5: Часто задаваемые вопросы о том, как удалить видеошум
Часть 1. Что такое шум видео?
Когда вы снимаете видео в ситуации, когда освещение не оптимально, вы должны обнаружить видео шум. Цифровая камера должна взломать ваш ISO, чтобы компенсировать ситуацию.
Однако ISO повысит чувствительность датчика камеры к свету, когда он работает, что затем увеличит шум, который захватывает ваш датчик. После этого вы можете увидеть много зернистости в ваших кадрах.
Чтобы удалить голосовой шум и повысить качество видео, вам следует не только масштабировать разрешение видео, но и настраивать яркость, насыщенность и другие параметры видео.
Часть 2: Лучший метод удаления видеошума
Как лучше всего удалить видео шум и улучшить качество видео? Aiseesoft Video Converter Ultimate является подходящим решением для удаления видеошума и очистки видео. Помимо функций по уменьшению грязного видеошума и оптимизации яркости / контрастности, вы также можете масштабировать видео до файлов с кодировкой HEVC.
Скачать
Aiseesoft Video Converter Ultimate
- Удалите грязный видеошум одним щелчком мыши.
- Оптимизируйте яркость и контраст видеофайла.
- Увеличьте разрешение, чтобы получить превосходное качество видео.
- Конвертируйте видео в другой высококачественный видеоформат.
Шаг 1.
После того, как вы установили Aiseesoft Video Converter Ultimate, вы можете запустить программу на своем компьютере. Перейти к Ящик для инструментов меню и выберите Видеоусилитель опцию.
Шаг 2.
Импортируйте видео, которые вы хотите удалить с видеошумом. Вы можете выбрать как Оптимизировать яркость и контрастность вариант и Удалить видео шум возможность улучшить видео.
Шаг 3.
Это также позволяет вам выбрать желаемый формат видео и настроить разрешение. Если вы хотите удалить видеошум из-за низкого разрешения, вы также можете конвертировать видео в файлы HD.
Шаг 4.
После того, как вы настроили желаемые параметры для выходного видео. Затем вы можете щелкнуть Усилить значок в правом нижнем углу. Это удалит видео шум и улучшит качество видео.
Часть 3: Как удалить видео шум в Интернете
Animoto — это онлайн-средство для удаления шума с видео, которое позволяет улучшить качество видео с помощью различных фильтров. У него есть несколько простых предустановок, чтобы превратить видео с зернистостью шума в чистое. Просто зайдите в онлайн-редактор видео и следуйте инструкциям по удалению видеошума онлайн.
Шаг 1.
Перейдите в онлайн-редактор видео Animoto. Щелкните значок НАЧАТЬ БЕСПЛАТНО кнопку для настройки видео. Затем вы можете загрузить зашумленное видео в онлайн-редактор видео соответственно.
Шаг 2.
Выберите Настройки дизайна вариант, вы можете уменьшить шум видео с помощьюЦвет видео
вариант. Это позволяет вам регулировать насыщенность и яркость видео.Шаг 3.
Кроме того, вы также можете перейти на Видео стиль вариант и выберите Oчистка возможность убрать видеошум. Он применит предустановленные переходы и визуальные эффекты для ваших изображений и видеоклипов.
Примечание: Он предоставляет только базовые функции удаления шумов с видео. Когда вам нужно повысить разрешение видео или удалить шум для некоторых видео с низким разрешением, вам нужно вместо этого обратиться к профессиональному устройству для удаления видеошума.
Часть 4: Как бесплатно удалить видео шум
VLC Media Player это больше, чем видеоплеер. Это также позволяет вам исправить пиксельные видео и восстановить поврежденные файлы в процессе воспроизведения. Если вы не хотите улучшать качество видео и изображения, VLC Media Player — лучший способ удалить видеошум.
Шаг 1.
Запустите VLC Media Player и перейдите в Tools вариант и выберите Настройки из раскрывающегося меню. После того, как откроется окно, нажмите на Входы / Кодеки опцию.
Шаг 2.
Прокрутите вниз до местоположения поврежденного или неполного файла AVI и выберите Всегда исправить вариант из списка. Вы можете сохранить настройки, чтобы применить процесс шумоподавления видео.
Шаг 3.
После этого вы можете воспроизводить видео в виде зернистости VLC. Это только обеспечивает безупречное впечатление от просмотра. Когда вам нужно поделиться видео с другими, вам все равно нужно улучшить видео.
Примечание: Помимо формата AVI, функция удаления видеошума также работает с различными другими видеоформатами, такими как MP4, MOV, AVI и QTRM. У него есть отличная возможность исправить ваши видео, если они пиксельные или имеют другие типы проблем.
Часть 5: Часто задаваемые вопросы о том, как удалить видеошум
Как удалить зернистость видео с помощью Adobe Premiere Pro?
Если вы профессионально хотите удалить видео шум и зернистость, вы можете открыть Premiere Pro на своем компьютере и выбрать клип, который нужно оптимизировать. Затем щелкните клип правой кнопкой мыши и выберите Замените вариант с After Effects Composition. Затем отправляйтесь в Эффекты и пресеты панель и выберите Удалить зерно возможность удалить зернистость из вашего видео.
Можно ли удалить видеошум с Android?
Да. Если у вас есть видео с низким разрешением на вашем Android, вы можете просто загрузить некоторые приложения для удаления видеошума на Android, такие как Video Noise Cleaner, чтобы оптимизировать видео. Поскольку весь процесс шумоподавления видео требует больших ресурсов, вы должны убедиться, что достаточно оперативной памяти и места.
Как избежать шума при съемке видео?
Просто снимайте видео в оптимальных условиях освещения и убедитесь, что вы правильно настроили настройки камеры. Всегда рекомендуется использовать более низкую конфигурацию ISO и широкую диафрагму, чтобы уменьшить любые возможные искажения или шум в вашем видео. Если у вас все еще есть пиксельные видеоклипы, вы можете выбрать указанные выше способы удаления видеошума.
Заключение
В этой статье представлены 3 подробных метода удаления видеошума. Вы можете убрать зернистость видео с шумовой связью с помощью некоторых видеофильтров. Но это не улучшит качество видео. VLC также предоставляет способ исправить поврежденные видео в процессе воспроизведения. Но если вы хотите уменьшить шум и улучшить видео в несколько кликов, Aiseesoft Video Converter Ultimate — отличный выбор, который может вам помочь. Если у вас есть какие-либо вопросы, вы можете оставить комментарий.
Что вы думаете об этом посте.
- 1
- 2
- 3
- 4
- 5
Прекрасно
Рейтинг: 4.8 / 5 (на основе голосов 233)Подпишитесь на нас в
Оставьте свой комментарий и присоединяйтесь к нашему обсуждениюОтличный способ удалить/уменьшить шум с ваших изображений
Знаешь, что сексуально? Не Photoshop, но, как занудный парень с более чем средним, кхм, IQ, то, что он может сделать, все равно впечатляет. Сочетание современных сенсоров камеры и их возможностей с мощью Photoshop делает невероятно мощный инструмент.
Медианное наложение — одна из тех вещей, которые заставляют вас расслабиться и восхищаться, и многие из вас, возможно, знают, что это процесс, наиболее часто связанный с удалением туристов с пейзажных изображений. Концепция проста, но то, что Photoshop делает ее настолько простой в исполнении, поразительно. Если вы мало путешествуете и не снимаете пейзажи, вам никогда не понадобится этот процесс для описанной выше цели. Однако его можно с большим успехом использовать для лечения известного всем фотографического недуга — шума.
Если вы снимали цифровыми зеркальными фотокамерами начала 2000-х и даже 3-4 года назад, то факт, что ISO можно поднять до какого-то астрономического числа, не имел для вас чертовски большого значения, потому что вы знали, что 400 должен был давать шумные, ненасыщенные изображения. Я слышу, как некоторые из вас говорят, что при 800 ISO или даже 1600 у вас может быть все в порядке, но даже сегодня съемка на D610 или D750 была далека от того, что я хотел бы использовать для изображений, пригодных для публикации, если не для какого-то творческого результата.
В инструментах для уменьшения шума недостатка нет, и даже ползунки Lightroom неплохо с этим справляются, но медианное наложение дает лучшие результаты. Да, тот же метод, который используется для удаления туристов с туристических объектов, можно использовать для значительного снижения уровня шума, и Энди Эстбери показывает, как это делается. Конечно, это мало что вам даст, если вы не снимаете фотографии, но достаточно эффективно, чтобы знать, как это сделать в соответствующее время.
Как это делается? Просто сделайте несколько снимков одной и той же сцены и загрузите их в Photoshop, убедившись, что они максимально похожи и выровнены. Разобравшись с основами, объедините все слои изображения в один смарт-слой и используйте режим медианного стека (
* Пока мы делимся его уроком, мы не разделяем настроения, выраженного r в отношении людей в начале видео. Это примерно от 1:10 до 1:15, так что вы можете его пропустить.
Кишор Сох
Фотограф и писатель из Майами, его часто можно встретить в собачьих парках и аэропортах Лондона и Торонто. Он также большой поклонник чистки зубной нитью и самый счастливый парень в округе, когда в компании все хорошо.
Как удалить шум с ваших фотографий с помощью 14 строк Python
Как фотограф, вы столкнетесь с разочарованием из-за шума на своих фотографиях при слабом освещении, и в какой-то момент вам придется его удалить. Это такая же гарантия, как налоги и смерть. Независимо от того, что вы делаете при постобработке, кажется, что каждая корректировка, которую вы делаете, только усиливает шум на ваших фотографиях. В результате вы только больше разочаровываетесь.
К счастью, мы можем обратиться к нашему секретному оружию Python, чтобы удалить шум с наших фотографий. Хотя Python не очень хорошо документирован, у него есть несколько невероятно мощных библиотек для обработки изображений. При правильном понимании алгоритмов мы можем использовать Python для удаления почти всего шума даже из самых зернистых фотографий. И чтобы вложить свои деньги в то, что мы говорим, мы собираемся сравнить наш скрипт Python с Adobe Lightroom, чтобы увидеть, какой из них может лучше удалить шум с фотографий.
Проблема с шумом на фотографиях при слабом освещении
Независимо от вашего уровня мастерства, когда бы вы ни отправились фотографировать при слабом освещении, вы, вероятно, мечтаете вернуться домой с такой фотографией.
Свет после захода солнца в Национальном парке Арчес в ЮтеВместо этого вы возвращаетесь домой с таким чудовищем.
Зернистый свет после захода солнца в Национальном парке Арчес в штате ЮтаНесмотря на то, что эти два снимка были сделаны одной и той же камерой менее чем через 20 минут друг от друга, почему первый получился намного лучше, чем первый? Да, постобработка играет в этом небольшую роль, но главный виновник — настройки камеры и композиция фото. Никакая постобработка не может вернуть потерянные данные на неправильно скомпонованной фотографии. Поскольку вторая фотография неправильно скомпонована или экспонирована, большая часть данных в нижней половине кадра теряется.
Давайте сравним две фотографии.
Параметр | Первая фотография | Вторая фотография |
---|---|---|
Время заката (MST) | 4:57 PM | 16:57 |
Временная метка фото (MST) | 5 :13 PM | 17:29 |
Угол солнца | Солнце за камерой | Взгляд на солнце |
Выдержка | 9005 9 1/20 сек1/10 с | |
Диафрагма | f/4,0 | f/5,3 |
Уровень ISO | 800 | 9 0059 800|
Фокусное расстояние | 55 мм | 160 мм |
Плохая композиция приводит к шуму на фотографиях
Из метаданных фотографии мы можем легко сделать вывод, что разница между двумя снимками действительно заключается в композиции. Точнее, это угол наклона солнца. Когда вы делаете снимок, глядя на солнце, он будет более контрастным, чем снимок, сделанный с солнцем позади вас. В крайних случаях вы можете потерять данные как на темном, так и на светлом концах спектра.
И это именно тот результат, когда вы делаете фото через полчаса против 15 минут после захода солнца. Поскольку вторая фотография смотрит на закат, то, что она находится дальше заката, усиливает контрастность. В результате вам нужно выбрать, хотите ли вы правильно экспонировать темную землю или красочное небо. У вас не может быть обоих. С другой стороны, первая фотография способна захватить весь доступный спектр света, что приводит к эффектным цветам сумерек.
Что вызывает шум: ускоренный курс по ISO
Уровень ISO определяет, насколько чувствительна ваша камера к свету. Большинство камер автоматически устанавливают уровни ISO по умолчанию. Чем более чувствительна ваша камера к свету, тем ярче будут ваши фотографии. Более низкие уровни ISO приводят к более четким изображениям, а высокие уровни ISO приводят к зернистости ваших фотографий.
Точное количество зернистости на ваших фотографиях зависит от размера сенсора вашей камеры. Профессиональные камеры с большими сенсорами часто не имеют особых проблем с зернистостью. С другой стороны, небольшие камеры или камеры начального уровня гораздо более чувствительны к зернистости, потому что их датчики намного меньше. Крошечные датчики — вот почему камеры мобильных телефонов так плохо снимают при слабом освещении. Технология, безусловно, стала лучше за последние пять лет, но она все еще далека от совершенства.
В яркий солнечный день используйте низкий уровень ISO, чтобы фотографии были четкими и не были переэкспонированы. В качестве альтернативы используйте высокие уровни ISO для съемки при слабом освещении или ночью. В нормальных условиях ваши уровни ISO должны быть между 200 и 1600. Однако уровни ISO на некоторых камерах очень высокого класса могут достигать 2 миллионов.
Даже профессиональные процессоры обработки изображений, такие как Adobe Lightroom, могут сделать очень мало для удаления шума с ваших фотографий
Каким бы мощным ни был Adobe Lightroom, у него есть свои пределы. Вы не можете просто слепо делать фотографии при слабом освещении и ожидать, что вы превратите их в шедевры с помощью какой-либо комбинации Lightroom и Photoshop. Как мы упоминали ранее, никакая постобработка не может восстановить потерянные данные на ваших фотографиях. Вам решать, как правильно скомпоновать фотографии и использовать правильные настройки камеры.
Тем не менее, даже при правильной композиции профессиональные процессоры обработки изображений, такие как Adobe Lightroom, могут избавиться от очень большого количества шума. Adobe Lightroom отлично справляется с устранением большого количества шума на ваших фотографиях, но в конечном итоге вы окажетесь в ситуации, когда шума слишком много, чтобы с ним справиться.
Однако там, где Adobe Lightroom прекращает работу, в дело вступает наше секретное оружие.
Python обладает мощными возможностями обработки изображений
Это не очень хорошо рекламируется, но Python имеет невероятно мощные библиотеки обработки изображений, которые вы, как фотограф, можете использовать для повышения своей производительности и дохода. Тем не менее, я хочу предупредить, что вы должны использовать Python как инструмент, дополняющий Adobe Lightroom, а не заменяющий его. Возможность писать собственные скрипты, функции и алгоритмы на Python для добавления к функциональности Lightroom невероятно мощна и выделит вас практически из любого другого фотографа.
Действительно, я выполняю постобработку в Adobe Lightroom. После этого я использую Python для форматирования, масштабирования и нанесения водяных знаков на изображения, которые публикую в этом блоге и на веб-сайте Matt Gove Photo. Когда я писал сообщения в блогах с большим количеством изображений (и до того, как у меня появился Adobe), мне часто требовалось более часа или больше, чтобы вручную масштабировать и наносить водяные знаки на каждое изображение. Затем я должен был убедиться, что ничего конфиденциального не было размещено в Интернете в метаданных. Теперь все это можно сделать всего за несколько секунд, независимо от того, сколько у меня фотографий. Кроме того, мой скрипт Python автоматически удалит конфиденциальные метаданные, которые я не хочу публиковать в Интернете.
Возможно, вы помните, что в некоторых из наших предыдущих руководств по Python мы использовали Python Imaging Library или Pillow для обработки фотографий. Сегодня мы будем использовать библиотеку OpenCV для удаления шума с наших фотографий.
Как алгоритмы Python удаляют шум с фотографий
Всякий раз, когда вы пишете код Python, вы должны попытаться понять, что делают встроенные функции. Это не только даст вам лучшее понимание того, что делает ваш скрипт, но вы также напишете код, который будет быстрее и эффективнее. Это особенно важно при обработке больших изображений, требующих больших вычислительных мощностей.
Пример: удаление шума из данных о COVID-19
Прежде чем углубиться в наши фотографии, давайте рассмотрим очень простой пример удаления шума из набора данных. Перейдите на нашу панель инструментов COVID-19 и посмотрите на графики временных рядов либо новых ежедневных случаев, либо новых ежедневных смертей. Без какого-либо удаления шума графики необработанных данных будут, мягко говоря, беспорядочными.
Необработанные кривые новых ежедневных случаев заболевания COVID-19 в нескольких странахЧтобы сгладить кривые данных и удалить шум, мы будем использовать скользящее среднее. Для каждой точки данных на кривой мы рассчитаем среднее количество новых ежедневных случаев за предыдущие семь дней. На самом деле вы можете усреднить столько дней, сколько хотите, но отраслевой стандарт для COVID-19данные семь дней. Мы построим эту 7-дневную скользящую среднюю вместо необработанных данных. Полученные кривые намного чище и презентабельнее.
Новые ежедневные кривые случаев COVID-19 с использованием 7-дневной скользящей средней для устранения шумаЛюди используют скользящие средние гораздо чаще, чем просто данные о COVID-19. Его часто используют для сглаживания временных рядов на фондовом рынке, в научных исследованиях, профессиональном спорте и многом другом. И мы будем использовать ту же самую концепцию для удаления шума на наших фотографиях.
Как усреднить значения с помощью Python для удаления шума на фотографиях
Есть несколько способов сделать это. Самый простой способ — взять несколько версий одного и того же снимка, наложить их друг на друга и усреднить соответствующие пиксели в каждом снимке. Чем больше снимков вы сделаете, тем больше шума будет удалено. Чтобы ваша сцена не смещалась в кадре во время съемки, используйте штатив.
Математически шум является случайным, поэтому усреднение шумовых пикселей эффективно удаляет шум. Сцена, которая на самом деле находится в вашем снимке, не меняется, поэтому при вычислении среднего значения нешумовых пикселей должно быть намного больше, чем шумовых пикселей. В результате вычисление среднего значения устраняет шум.
Рассмотрим следующие уравнения. Ради этого аргумента предположим, что вы смотрите только на один пиксель. Фактическое значение пикселя в сцене равно 10. Однако в четырех ваших снимках присутствует шум, и камера записывает значения 4, 15, 9 и 18. Помните, что среднее значение представляет собой сумму значений, разделенных на по количеству значений.
В первой попытке вы делаете 10 снимков сцены. Как бы вы поступили в удалении шума?
среднее = ((6*10) + 4 + 15 + 9+ 18) / 10 = 106 / 10 = 10,6
Неплохо, учитывая, что фактическое значение пикселя должно быть 10. Но мы можем сделать лучше. Вместо того, чтобы делать 10 кадров сцены, давайте сделаем 100.
среднее = ((96*10) + 4 + 15 + 9 + 18) / 100 = 10,06
Это намного лучше. Это может показаться не таким уж большим, но даже небольшое изменение значения может иметь большое значение для удаления шума.
Как выглядит этот метод удаления шума с фотографий в Python
Хотите верьте, хотите нет, но мы можем написать алгоритм «суммирования среднего» для удаления шума с фотографий всего в 12 строках Python. мы будем использовать numpy
для вычислений, потому что он может изначально хранить, вычислять и манипулировать сетками или матрицами данных с помощью всего одной или двух строк кода. В результате все фотоданные останутся в знакомой нам сетке или матрице пикселей. Нам не нужно разбивать его на строки, столбцы или что-то еще.
Сначала убедитесь, что вы установили numpy и OpenCV. Если у вас его нет, вы можете легко установить их с помощью pip
. Откройте терминал или командную строку и выполните следующие команды.
pip3 установить numpy pip3 install opencv-python
Теперь пришло время написать наш скрипт Python. Начнем с импорта всего, что нам нужно. Библиотека cv2
, которую мы импортируем, является частью OpenCV.
импорт ОС импортировать numpy как np import cv2
Во-вторых, сообщите Python, в какой папке хранится изображение, которое вы будете усреднять. Затем перечислите их имена файлов, пропустив все скрытые файлы, которые находятся в каталоге изображения.
папка = "шум-imgs" image_files = [f вместо f в os.listdir(папке), если не f.startswith('.')]
В-третьих, откройте и прочитайте первое изображение в среднюю переменную
, используя OpenCV. Храните данные пикселей в виде числа с плавающей запятой. Вы будете использовать эту переменную для хранения данных изображения и вычисления среднего значения пикселей изображения.
путь = "{}/{}".формат (папка, файлы [0]) среднее = cv2.imread(path).astype(np.float)
В-четвертых, добавьте все оставшиеся изображения в каталог к переменной medium
. Не забудьте пропустить первое изображение, потому что мы уже добавили его на предыдущем шаге.
для f в файлах[1:]: путь = "{}/{}".формат (папка, f) изображение = cv2.imread (путь) среднее += изображение
В-пятых, разделите переменную Average
на количество изображений, чтобы вычислить среднее значение.
среднее /= len(image_files)
Наконец, нормализуйте усредненное изображение и выведите его в файл jpeg. Функция cv2.normalize()
повышает качество, повышает резкость изображения и гарантирует, что цвета не будут темными, блеклыми или размытыми.
вывод = cv2.normalize (среднее, нет, 0, 255, cv2.NORM_MINMAX) cv2.imwrite("output.jpg", output)
Вот и все. Всего 14 строк кода. Это один из самых простых сценариев, которые вы когда-либо писали.
Пример: Сумерки в Орегонских соснах
Для начала мы усложним наш алгоритм Python. Давайте воспользуемся фотографией соснового бора в Орегоне, сделанной в сумерках пасмурной зимней ночью. Вот оригинал.
Исходная фотография при слабом освещении содержит много шумаФотография определенно зернистая, и ей действительно не хватает резкости и детализации. Не знаю, как у вас, а у меня возникло бы искушение просто выбросить его с первого взгляда. Однако что произойдет, если мы позволим нашему алгоритму Python убрать шум с фотографии?
Фотография после удаления шума с помощью нашего алгоритма PythonВыглядит намного лучше! Признаюсь, когда я впервые запустил алгоритм, я был совершенно поражен тем, насколько хорошо он работает. Детали были удивительно резкими и четкими. К сожалению, мне пришлось уменьшить финальное изображение выше, чтобы оптимизировать его для Интернета, поэтому детали выглядят не так хорошо, как в оригинале. Для окончательного теста мы вскоре сравним наш алгоритм Python с удалением шума Adobe Lightroom.
Проблема фотографа-путешественника: что произойдет, если у вас есть только один снимок и невозможно воссоздать сцену, чтобы сделать несколько снимков?
Хороший вопрос. Это распространенная проблема с фотографией в путешествиях, и поэтому я всегда рекомендую вам делать несколько снимков во время путешествия. Никогда не знаешь, когда они могут понадобиться. К сожалению, описанный выше метод действительно не очень хорошо работает в этом случае. Однако есть и другие способы убрать шум.
Мы будем использовать ту же стратегию для устранения шума, что и для COVID-19.данные. Но вместо усреднения за предыдущие семь дней мы усредним каждый пиксель или кластер пикселей с окружающими его пикселями. Однако здесь есть загвоздка. Чем больше слоев пикселей вы включите в среднее значение, тем менее резким будет ваше изображение. Вам нужно будет поиграться, чтобы увидеть точный баланс для вашей конкретной фотографии, но документация OpenCV рекомендует 21 пиксель.
К счастью, в библиотеку OpenCV встроен этот алгоритм, поэтому нам не нужно его писать.
cv2.fastNlMeansDenoisingColored(источник, место назначения, templateWindowSize, searchWindowSize, h, hColor)
-
источник
Исходное изображение -
место назначения
Выходное изображение. Должен иметь те же размеры, что и исходное изображение. -
templateWindowSize
Размер в пикселях патча шаблона, используемого для вычисления весов. Должно быть нечетным. По умолчанию и рекомендуется 7 пикселей. -
searchWindowSize
Размер в пикселях окна, используемого для вычисления средневзвешенного значения для данного пикселя. Его значение должно быть нечетным. По умолчанию рекомендуется 21 пиксель -
h
Компонент фильтра яркости. Большее значение h идеально удаляет шум, но также и детали изображения, меньшее значение h сохраняет детали, но также и некоторые шумы. 10 должно быть достаточно, чтобы удалить цветной шум и не искажать цвета на большинстве изображений.
Когда мы запускаем изображение через алгоритм OpenCV, оно выводит следующее.
Закат в Национальном парке Арки после того, как OpenCV удалил шумШум конечно убрали, но изображение все равно очень темное и по краям видна нечеткость. Чтобы повысить резкость изображения, вернитесь в Lightroom и найдите исходное изображение. Удалите как можно больше шума из исходного изображения в Lightroom, а затем экспортируйте его. Затем усредните изображение OpenCV и изображение Lightroom, используя метод наложения из предыдущего раздела. Это сделает изображение более четким и сделает цвета ярче.
Закат в национальном парке Арки после окончательной обработки с помощью алгоритма PythonВыглядит намного лучше, чем исходное фото. Если не считать небольшой постобработки в Lightroom, это все, чем мы можем помочь этой фотографии.
Как наш скрипт на Python справляется с шумоподавлением Adobe Lightroom?
Итак, пришло время окончательного испытания. Пришло время посмотреть, как наш алгоритм Python справляется с возможностями шумоподавления Lightroom. Если вы прочтете название этого поста, то, вероятно, догадаетесь, как это было. Оказалось, что и близко не было. Наш Python-скрипт выбивает Lightroom из воды.
Слева: шум, удаленный с фотографии с помощью Adobe LightroomСправа: шум, удаленный с фотографии с помощью нашего алгоритма Python
Несмотря на результаты, я хочу предупредить вас, что это сравнение немного похоже на сравнение яблок с апельсинами. Придерживаясь ссылки на сосну, это было бы все равно, что спилить дерево бензопилой, а не ручной пилой. Поскольку Lightroom имеет доступ только к одной фотографии, он должен использовать алгоритм, который берет кластер пикселей и усредняет окружающие его пиксели, чтобы удалить шум. Вы заметили, насколько четче изображение Python по сравнению с изображением Lightroom? Это потому, что наш алгоритм Python имеет гораздо больше ресурсов для удаления шума с фотографии. В 63 раза больше ресурсов, если быть точным. Вот почему это не совсем корректное сравнение.
Сравнение Lightroom и Python на равных условиях
Чтобы уравнять правила игры, забудьте об усреднении нескольких фотографий для устранения шума. Допустим, мы сделали только одну фотографию соснового леса в Орегоне. В результате мы можем использовать только одно исходное изображение. Мы обработаем его, используя тот же метод, который мы использовали для заката в Национальном парке Арки в предыдущем разделе. Когда мы на этот раз сравнили его с Lightroom, это было гораздо более серьезное соперничество. Тем не менее, я все же отдаю предпочтение алгоритму Python, потому что итоговое изображение заметно четче.
Слева: Удаление шума с помощью Adobe LightroomСправа: Удаление шума с помощью Python, без усреднения по нескольким снимкам
Хотите попробовать скрипт Python самостоятельно?
Если вы хотите опробовать любой из алгоритмов Python, которые мы рассмотрели в этом посте, загрузите скрипты для них из репозитория Bitbucket.
Заключение
Удаление шума с фотографий — бесконечная проблема для фотографов любого уровня квалификации. Чтобы усугубить ситуацию, высококлассные процессоры обработки изображений, такие как Adobe Lightroom, могут сделать очень мало для удаления шума. Однако, обладая математическими знаниями о том, как работает шум, мы можем написать алгоритм, который работает даже лучше, чем Lightroom. И самое главное, это всего 14 строк кода на Python. На самом деле вы можете применить эти алгоритмы и к видео, но это обсуждение в другой раз.
Однако, несмотря на то, что мы сравнили наш алгоритм с Lightroom, мы не должны забывать, что как фотографы и обработчики изображений Python должен использоваться как инструмент, дополняющий Lightroom, а не заменяющий его. Потому что, когда мы противопоставляем их друг другу, только мы страдаем от снижения производительности и менее эффективного рабочего процесса. Если вы хотите повысить свою производительность, добавив Python в рабочий процесс фотографии, но не знаете, с чего начать, свяжитесь со мной напрямую или запланируйте бесплатную информационную сессию сегодня.