С тех пор, как Google добавила ночный режим на Pixel 3, фотографирование в условиях слабого освещения стало популярно среди пользователей. В недавно вышедшем Pixel 4 Google внедрила в ночной режим функцию астрофотографии. Команда, стоящая за работой этого обновления, объяснила в своем блоге в деталях, как алгоритм действует.
Для того, чтобы принять как можно больше света без использования длинных выдержек, требующих штатива или в ином случае приводящих к смазыванию изображения движущегося объекта, в ночном режиме камера делает несколько последовательных снимков с разной экспозицией для компенсации тряски и движения внутри кадра. Следующим шагом становится объединение фреймов в один для уменьшения шумов и увеличения детализации.
Астрофотографический режим использует примерно тот же принцип, только работает на более длинных выдержках, поэтому в нем необходимо использовать штатив или другой поддерживающий предмет.
Команда решила, что время выдержки каждого кадра не может быть больше 16 секунд, поскольку звезды должны выглядеть как точки, а не как светящиеся полосы. Инженеры Google также определили, что пользователи не готовы терпеть дольше 4 минут в ожидании одного кадра. Поэтому в крайнем случае используется 15 кадров с максимальной выдержкой в 16 секунд каждый.
В этом режиме светлые пиксели могут стать проблемой. Система их определяет путем сравнения с соседями как в том же фрейме, так и в других фреймах. Если значение превосходит норму, то данная точка меняется на усредненную.
Плюс к этому применяется алгоритм ИИ, который определяет небо на фотографии и выборочно его затеняет, чтобы итоговый результат был больше похож на реальность, а не на снимок с большой экспозицией.
Впрочем, ночной режим - это не только про захват изображения. Он также включает специальный видоискатель, который оптимизирован для съемки при слабом освещении. После нажатия на кнопку затвора каждый снимаемый фрейм отображается, как только становится готов. Можно проанализировать результат, отменить съемку и скорректировать параметры для нового снимка.