upscale видеопотока
От: sergey2b ЮАР  
Дата: 26.01.22 20:31
Оценка:
мне надо upscale видеопоток снятый в одном и том же помещении, при одинаковом освещении

как вы считаете насколько хороший вариант
считать vmaf and PSNR для входного и выходного потоков и по их значениям примать решение какой поток показывать оригинальный или upscale
Re: upscale видеопотока
От: Videoman Россия https://hts.tv/
Дата: 27.01.22 11:39
Оценка: 6 (1)
Здравствуйте, sergey2b, Вы писали:

S>как вы считаете насколько хороший вариант

S>считать vmaf and PSNR для входного и выходного потоков и по их значениям примать решение какой поток показывать оригинальный или upscale

Попробуй, потом расскажешь . Мне кажется PSNR это лишнее. PSNR, грубо говоря, оценивает сколько информации пропало в результате сжатия, но то как это влияет на восприятия картинки он не отражает.
Re[2]: upscale видеопотока
От: sergey2b ЮАР  
Дата: 27.01.22 16:25
Оценка:
Здравствуйте, Videoman, Вы писали:


V>Попробуй, потом расскажешь . Мне кажется PSNR это лишнее. PSNR, грубо говоря, оценивает сколько информации пропало в результате сжатия, но то как это влияет на восприятия картинки он не отражает.


я взял HD видео, передал его используя NDI и записал в файл

после этого используя оригинальное видео как референсное посчитал vmaf и в результате получилось примерно 0.3 (1 это максимум если посчитать vmaf для оригинального видео то получаеться 0.98-0.99 что логично)

в качестве енкодера и декодеоа что бы считать видеофайл и передать в NDI, и что бы записать принятый фрейм, я использую ffmpeg встроенный в opencv
настройки NDI я делаю такие же как в оригинальном видео

помоему vmaf должен быть лучше, как вы считаете
Re[3]: upscale видеопотока
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 28.01.22 09:41
Оценка:
Здравствуйте, sergey2b, Вы писали:

S>помоему vmaf должен быть лучше, как вы считаете


Его никогда не использовал, интересно. В качестве оценки качества можно и другие метрики использовать, но это при желании, ни одной абсолютно хорошей нет.
А что вообще ты хочешь проверить? Декодировать — закодировать и посмотреть результат? upscale — что подразумевается под этим?
Re[4]: upscale видеопотока
От: sergey2b ЮАР  
Дата: 28.01.22 16:09
Оценка:
Здравствуйте, Nuzhny, Вы писали:


N>Его никогда не использовал, интересно. В качестве оценки качества можно и другие метрики использовать, но это при желании, ни одной абсолютно хорошей нет.

N>А что вообще ты хочешь проверить? Декодировать — закодировать и посмотреть результат? upscale — что подразумевается под этим?

upscale это увеленечение размера фрейма

у меня есть N каммер (например 100), и мне надо записывать видео со всех них на диск
и по запросу проигрывать нужное видео

камеры дают изображение в качестве HD
люди использую 4k мониторы и для них важны все мелкие детали на видео


камеры NDI и я использую NDI SDK написал сервис который получает видеопотоки и сохраняет их на диск
тк когда я писал пришлось проводить эксперементы и сделать эмулятор NDI камеры то у меня сложилоcь впечатление что качество видео заметно ухудшилось и многие мелкие детали исчезли
поэтому я стал читать статьи на тему оценок качества видео



подскажите пожалуйста что можно почитать как работает енкодер
я пока читал видеокодирование h264 MPEG-4 стандарты нового поколения
Re[5]: upscale видеопотока
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 28.01.22 20:20
Оценка: 6 (1)
Здравствуйте, sergey2b, Вы писали:

S>upscale это увеленечение размера фрейма


Понятно.

S>камеры дают изображение в качестве HD

S>люди использую 4k мониторы и для них важны все мелкие детали на видео

Но если просто растянуть кадр, то число деталей не увеличится. Если хочется увеличить число деталей, то производится не upscale, а superresolution. Вот он уже может увеличить число деталей, но работает не быстро: классические вообще очень медленно, нейросетевые по видео средне, а one frame уже быстро (но детали они не восстанавливают, а додумывают).

S>камеры NDI и я использую NDI SDK написал сервис который получает видеопотоки и сохраняет их на диск


Никогда про это не слышал. Но что там по сути происходит? Ты получаешь сырой видеопоток, сжимаешь его каким-то кодеком и сохраняешь? Тогда надо смотреть на параметры энкодера. Если ты получаешь сжатый видеопоток, то его в таком же виде и надо сохранять без перекодирования — потери качества не будет.

S>тк когда я писал пришлось проводить эксперементы и сделать эмулятор NDI камеры то у меня сложилоcь впечатление что качество видео заметно ухудшилось и многие мелкие детали исчезли

S>поэтому я стал читать статьи на тему оценок качества видео

Я бы сначала разобрался в причине ухудшения качества, а потом стал измерять. И ещё я совсем не понял, где в описанной цепочке upscale.
— Если ты просто хочешь растянуть маленький кадр на большой монитор, то просто выбирай метод при воспроизведении — к кодекам это не имеет никакого отношения. Видео надо хранить в исходном виде.
— Если же ты хочешь сделать superresolution, то это отдельная очень большая и современная проблема, алгоритмы есть, надо проверять их на твоём контенте, подбирать параметры или переобучать нейросети. Но это тоже к кодекам не относится, сперва надо научиться superres делать, а потом уже смотреть, как его лучше сохранить.
Re[5]: upscale видеопотока
От: DiPaolo Россия  
Дата: 30.01.22 03:11
Оценка:
Какая-то каша... Сложно понять, какая именно задача, и что вы делали.


S>у меня есть N каммер (например 100), и мне надо записывать видео со всех них на диск

S>и по запросу проигрывать нужное видео

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

S>камеры дают изображение в качестве HD

S>люди использую 4k мониторы и для них важны все мелкие детали на видео

Сейчас есть методы из ML, которые как раз позволяют апскейлить. Конечно, мелкие детали могут потеряться или намылиться. Если у вас видеонаблюдение или какие-то критичные к оригинальным записям области, то такое не подойдет, потому что картинка может поменяться.

S>камеры NDI и я использую NDI SDK написал сервис который получает видеопотоки и сохраняет их на диск

S>тк когда я писал пришлось проводить эксперементы и сделать эмулятор NDI камеры то у меня сложилоcь впечатление что качество видео заметно ухудшилось и многие мелкие детали исчезли
S>поэтому я стал читать статьи на тему оценок качества видео

Вот тут ничего не понятно. Что за эмулятор камеры NDI?

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

При измерении метрик важно брать потоки с одинаковым разрешением (и хрома сабсамплингом — это типа 4:2:0).

VMAF будет лучше, потому как учитывает особенности восприятия именно человеком на основе обучения моделей с помощью оценок качества людьми. Тогда как PSNR — чисто объективная метрика. Также важно отметить, что для разных разрешения в VMAF используются разные модели. Если используете FFmpeg для оценки качества, то он сам должен взять нужную, если что-то другое — обратите внимание.

Еще момент, который нужно учесть — количество фреймов должно быть одинаковое. Для FFmpeg есть параметр shortest (писать так psnr=shortest=1) — он будет использовать количество фреймов из самого короткого из двух потоков.

Можно взять утилиты для субъективного сравнения качества (то есть сравнить конкретно своими глазами). Например, https://vicuesoft.com/vq-probe или https://www.elecard.com/products/video-analysis/video-quality-estimator. Они также считают и объективные метрики.

В последнее время также стали появляться методы оценки двух изображений без референса на основе ML/AI. Но о конкретных рабочих решениях не знаю.
Патриот здравого смысла
Re[6]: upscale видеопотока
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 30.01.22 03:25
Оценка: 1 (1)
Здравствуйте, DiPaolo, Вы писали:

DP>В последнее время также стали появляться методы оценки двух изображений без референса на основе ML/AI. Но о конкретных рабочих решениях не знаю.


BRISQUE, например. Тоже не идеал, но для некоторых методов, когда референса нет, вообще нет другого выбора.
Re[3]: upscale видеопотока
От: Videoman Россия https://hts.tv/
Дата: 30.01.22 20:19
Оценка:
S>Здравствуйте, Videoman, Вы писали:

S>помоему vmaf должен быть лучше, как вы считаете


Не думаю что должно быть лучше. Насколько я правильно понимаю, NDI тоже выполняет компрессию/декомпрессию и вы еще раз это тоже самое делаете. Почему должно быть лучше.
Вообще хотелось бы больше конкретики: какой изначальный сигнал, формат, разрешение? В какой битрейт вы жмете?
Re[5]: upscale видеопотока
От: Videoman Россия https://hts.tv/
Дата: 30.01.22 20:22
Оценка:
Здравствуйте, sergey2b, Вы писали:

S>камеры дают изображение в качестве HD

S>люди использую 4k мониторы и для них важны все мелкие детали на видео

Да, но upscale не может дать никаких деталей. Какой-нибудть интеллектуальный алгоритм может лишь попытаться сделать изображение более резким для человеческого восприятия. Метрики оценки качества при это конечно же сильно поплывут.
Отредактировано 30.01.2022 20:41 Videoman . Предыдущая версия .
Re[4]: upscale видеопотока
От: sergey2b ЮАР  
Дата: 31.01.22 16:20
Оценка:
Здравствуйте, Videoman, Вы писали:

это пример подсчета VMAF
я отвечу на остальные вопросы чуть позже

Re[5]: upscale видеопотока
От: Videoman Россия https://hts.tv/
Дата: 31.01.22 17:40
Оценка:
Ну давайте так средний уровень качества оценим: у вас исходник: 3840х1650, после capture: 1920х1080. (1920х1080)/(3840х1650)=0,3272727272727273. Если пренебречь битрейтом и сжатием, то точек становится меньше в 3 раза.
Re[5]: upscale видеопотока
От: DiPaolo Россия  
Дата: 31.01.22 18:12
Оценка: 6 (1) +1
S>это пример подсчета VMAF
S>я отвечу на остальные вопросы чуть позже

5 в ВМАФе означает, что у вас разные потоки Скорее всего отдаете не тот кусок данных. Иными словами, в референте у вас фреймы с 0 по 1000, а в капчуре — с 1000 по 2000. Как вы получаете выходной файл? Также нужно привести оба потока к одному резолюшену. После выполнения этих первых базовых пунктов можно переходить дальше. Пока то, что на графике — это вообще что-то левое.
Патриот здравого смысла
Re[6]: upscale видеопотока
От: sergey2b ЮАР  
Дата: 01.02.22 18:33
Оценка:
Здравствуйте, DiPaolo, Вы писали:



DP>5 в ВМАФе означает, что у вас разные потоки Скорее всего отдаете не тот кусок данных. Иными словами, в референте у вас фреймы с 0 по 1000, а в капчуре — с 1000 по 2000. Как вы получаете выходной файл? Также нужно привести оба потока к одному резолюшену. После выполнения этих первых базовых пунктов можно переходить дальше. Пока то, что на графике — это вообще что-то левое.


вторая попытка


я могу выложить сами видео, но не знаю какой хостинг можно использовать для этого
Re[7]: upscale видеопотока
От: DiPaolo Россия  
Дата: 02.02.22 02:48
Оценка: 6 (1)
S>вторая попытка

Уже гораздо лучше! Осталось понять, что происходит в начале — почему такой провал. Могу предположить, что там ничего не записывается (может идет инициализация капчурки/камеры или что вы там используете на выходе).

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

S>я могу выложить сами видео, но не знаю какой хостинг можно использовать для этого


Да хоть тут на рсдне, хоть Яндекс диск, что угодно еще...
Патриот здравого смысла
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.