Разберёмся с кадрами в секунду

На втором курсе университета на лекции по информационным технологиям Валерий Евгеньевич рассказывал о методах передачи информации. Вот отрывок из конспекта:

Динамический видеоряд включает три группы:
1) Обычное видео — просто пролистывающиеся фото и картинки, 24 FPS
2) Квази-видео, от 6 до 16 FPS
3) Анимация

Квази-видео? 16 кадров в секунду? Нам начали рассказывать о том, что 25 кадр воздействует на мозг и эффективно используется в рекламе. На все возражения о том, что количество кадров в секунду никак не может влиять на человека был один ответ — мол, я преподаватель и я даже спорить с вами не буду. Я знаю, что прав и всё.

Плохо, когда такое преподают в университетах, ещё хуже, если кто-то считает это правдой. В этой заметке я постараюсь рассказать всё, что стоит знать о кадрах в секунду. Думаю, это такие же основы, как знания о битрейтах или графиках.

Первая кадровая частота и немые фильмы

Для начала уточню, чтобы не запутаться.

ФПС = фрейм рейт = частота кадров в секунду = кадры в секунду = кадровая частота

Это всё одно и то же.

Любая анимация существует благодаря инертности зрения. Если изображения сменяются достаточно быстро, то мозг не видит их по отдельности, а создаёт иллюзию непрерывного движения. Скорость смены изображений должна быть выше 10-12 в секунду, иначе мозг успевает разглядеть каждую картинку и никакого движения не получается. Казалось бы, вот и подходящая для человека кадровая частота — 12 FPS и больше. Но не всё так просто.

Представьте себе ленту немого фильма, в которой 1 500 отдельных изображений. Если мы покажем фильм со скоростью 12 кадров в секунду, то увидим что-то такое. Гифку сделал по ссылке, чтобы не раздражала мерцанием.

Движение есть, но мерцание в кадре всё портит. Оно появилось из-за того, что мы должны закрыть проектор, чтобы прокрутить ленту дальше и показать новое изображение. По словам Томаса Эдисона, наше зрение не заметит мерцание, если мы прокрутим ленту со скоростью 46 кадров в секунду. Но это не лучший вариант, и вот почему.

Сейчас у нас фильм состоит из 1 500 изображений и мы его проигрываем со скоростью 12 кадров в секунду.
1 500 кадров / 12 кадров в секунду = 125 секунд
Значит, нам достаточно 1 500 кадров, что создать двухминутный фильм.

Со скоростью 46 кадров в секунду наш фильм будет идти примерно 32 секунды. То есть, чтобы восстановить хронометраж мы должны создать не 1 500 кадров, а 5 750 = 125 секунд * 46 кадров в секунду. Лента будет длиннее в четыре раза, количество кадров больше, а значит отснять, смонтировать и показать фильм выйдет намного дороже.

Легче изменить конструкцию проектора. Поэтому вместо обычного обтюратора поставили трёхлезвийный.

Теперь один кадр показывают три раза и только потом сменяют на новый. Получается частота кадров (хоть и одинаковых) увеличилась. Количество мерцания увеличилось по количеству, но в три раза сократилось по времени. Таким образом инертность зрения стала «съедать» мерцание в кадре.

Мы сменяем кадры со скоростью 16 FPS, но зрителям показываем один и тот же кадр три раза. И получаем 48 спроецированных кадра в секунду = 16 кадров * 3 повторения. Прямо как и хотел Эдисон, даже лучше.

Мы взяли 16 FPS, а не 12 или 14, так как 16 — минимальное целое число, которое умножается на 3 и в результате даёт число больше 46.

Вот мы и получили первую кадровую частоту — 16 FPS для немых фильмов. Плюс немых фильмов в том, что мы можем легко увеличить или уменьшить количество кадров в секунду, это повлияет только на скорость воспроизведения. Ручку проектора крутил человек и мог варьировать скорость кадров от 14 до 26 FPS.

Звук всё стандартизировал

Всё сложнее стало со звуком. Теперь нельзя крутить фильм быстрее или медленнее. Нужно соблюдать постоянную кадровую частоту, чтобы скорость, а значит и тембр голоса не изменялся на протяжении фильма. С 16 FPS была проблема, звук не звучал точно, как задумывалось. Нужно было выбрать новую частоту, чтобы она была больше 16 и в итоге давала 48 проецируемых FPS. В итоге, вместо трёхлезвийного обтюратора стали использовать двулезвийный. И утвердили новый фрейм рейт — 24 FPS.

24 кадра * 2 повторения = 48 проецируемых кадров в секунду. Всё просто. И удобно, 24 нацело делится на 2, 3 и 4. То есть мы знаем, что половина секунды — 12 FPS, треть — 8, а четверть — 6.

Тут вроде становится понятно — мы и сейчас используем 24 FPS. Тогда зачем нам 25, 30 и тем более 29,97?

Появляется телевидение

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

interlaced video

Люди в чёрном 3
В телевизоре происходит то же самое, только намного быстрее.

По-умному, это называется чересстрочная развёртка и обозначается буквой «i», от слова «interlaced». Ролик с чересстрочной развёрткой и разрешением 1920 × 1080 будет называтся 1080i. А такой же ролик с прогрессивной развёрткой — 1080p. Это означает «progressive» или то, что кадры передаются целиком.

Чтобы не было лишних шумов и конструкция телевизора была проще, полукадры решили обновлять с частотой электросети. Для Европы это 50 Гц. Получилось 50 полукадров в секунду или 25 целых кадров в секунду. В США частота электросетей 60 Гц, значит полукадров будет 60, а кадров соответственно 30.

И вот вроде как всё хорошо, но тут появляется цвет.

Цвет всё усложнил

Теперь через тот же канал нужно донести больше информации. Мы должны передать чёрно-белое изображение для старых телевизоров, цветное изображение и звук. И сделать это было довольно сложно. Потому что как только мы добавляем в электромагнитный спектр информацию о цвете его частота пересекается со звуком и создаёт помехи. Чтобы чётко разделить цвет и звук решили снизить частоту полукадров на 0,1%.

60 полукадров — 0,1% = 59,94 полукадров в секунду
59,94 полукадров в секунду/2 = 29,97 кадров в секунду

Система вещания с такой странной кадровой частотой называется NTSC и использовалась в США и ещё парочке стран.

В Европе таких сложностей не было, в качестве стандарта сразу взяли PAL, который был создан, чтобы решить проблемы с цветом. Поэтому как было 25 кадров в секунду, так и осталось.

Зачем 60 FPS, если и так всё хорошо

Камера размывает любое резкое движение в сторону направления объекта. Величина размытия зависит от расстояния, которое объект прошёл за 1 кадр. И чем больше количество кадров в секунду, тем меньше размытие.

1 секунда / 25 фпс = 0,04
1 секунда / 60 фпс = 0,016

Это называется моушн-блюр.

Разница между фильмами с 25 FPS и 60 FPS только в плавности движения. Резкие движения в фильме выглядят менее размытыми. За счёт этого картинка кажется более реалистичной. Вот и вся разница.

25 кадра не существует

Количество кадров это просто насыщенность изображения информацией. Как будто кадр, это чистый лист. На котором может быть написано 15 слов, а может и 60. Естественно, что каждое 25 слово не может влиять на работу вашего мозга.

Вот мы и разобрались с основными понятиями о кадрах в секунду. Теперь факультатив.

Слоумоушн

Слоумоушн это, когда мы снимаем видео с большей частотой кадров, а смотрим с меньшей. Снимаем в 120, смотрим в 25.

Снимем на айфон 6 секунд в 120 FPS. Это значит, что за секунду он создаст 120 изображений. За 6 секунд — 720. А смотреть мы их будем в 25 FPS. Это значит, что 720 изображений / 25 FPS мы будем смотреть почти 29 секунд. За это время мы и рассмотрим все детали.

А если мы возьмём высокоскоростную камеру, снимем 1 секунду с фреймрейтом 5 000 FPS и посмотрим в 25 FPS.

27 000 * 1 / 25 = 1 080 секунд или 18 минут

Одну секунду реального времени мы рассматриваем целых 18 минут. Можно в деталях рассмотреть выстрел пистолета под водой.

После таких расчётов становится понятно почему Slow Mo Guys не выкладывают свои ролики в 60 FPS. Мы просто увидим меньше деталей.

27 000 * 1 / 60 = 450 секунд или 7 минут 30 секунд

Также, есть противоположность для слоумоушна — timelapse. Снимаем видео с меньшей частотой, а проигрываем с большей. Ставим штатив на балкон и делаем одну фотографию в день на протяжении года. Получается, что у нас получилось видео с частотой кадров — 1 кадр в день. За год у нас получилось 365 кадров. Теперь мы включаем скорость 25 FPS. В итоге, получаем 365 / 25 = 14,6 секунд в которые уместился целый год.

FPS в играх

Почему играм недостаточно 25 FPS? А нужно намного больше — 60 FPS или даже 100.

Как написано в абзаце про фильмы с 60 FPS — камера всегда снимает с небольшим размытием в движении. А компьютер создаёт абсолютно чёткие изображения. Из-за этого мозгу сложнее складывать их в непрерывную картинку. И чем больше движения в игре, тем больше чётких кадров нам нужно для корректного восприятия.

Для сапёра нам хватит и 2 FPS. Два раза в секунду компьютер будет обновлять изображение на мониторе и показывать попали мы в бомбу или нет. А для Counter-Strike не хватит и 30. Просто потому, что движения там слишком динамичные.


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

На восприятие также влияет то, что фильмы мы смотрим с постоянной кадровой частотой. В играх же в зависимости от происходящего FPS меняется. Как только FPS резко падает, мозг сразу же замечает это. То же самое было бы и с фильмами, если бы кадров в секунду было то 25, то 60.

FPS для игр важен не только для комфортного восприятия игры. Частота кадров равна частоте обновления физической модели. Это значит, чем больше FPS, тем чаще компьютер проверяет сделали вы выстрел или нет. Иногда эти доли секунды становятся решающими. Любители H’n’S модов знают.

Итоги

1) Первый фрейм рейт — 16 FPS
2) Звук увеличил кадровую частоту и сделал её постоянной — 24 FPS
3) Частота электросети определила новую кадровую частоту для телевизоров — 25 FPS и 30 FPS
4) Цвет превратил 30 FPS в 29,97 FPS из-за того, что не дружил со звуком.
5) Фильмы в 60 FPS плавнее.
6) Слоумоушн — снимаем с большим FPS, смотрим с меньшим. В таймлапсе наоборот.
7) Игры генерируют абсолютно чёткие кадры, нужно больше FPS, чтобы создать плавное движение.
8) В фильмах кадры в секунду постоянные, в играх зависят от ситуации.

Вот и все основы о кадрах в секунду. В следующей статье расскажу о методах сжатия видео.

Источники

FIlmMakerIQ.com
standupmaths
FPS в играх
The Slow Mo Guys

13 июля  
Ваш комментарий
адрес не будет опубликован

ХТМЛ не работает

Ctrl + Enter