Обработка бесконечного значения PSNR при расчете значения PSNR для видео
Я пытаюсь вычислить значение PSNR для видео, которое я генерирую, удаляя некоторые кадры из исходного видео. Кроме того, я предполагаю, что видео покажет предыдущий кадр, если кадр будет удален. В этом смысле я хочу измерить QoE сгенерированного видео.
Во-первых, я думаю, что PSNR может быть полезным. Однако, когда я пытаюсь вычислить значение PSNR, оно показывает бесконечное значение, так как два кадра идентичны. В таком случае, как я могу обработать бесконечное значение? Есть ли общее правило, которое обрабатывает идентичные кадры? (Например, игнорируйте бесконечное значение и усредняйте только бесконечное значение).
Вышеупомянутая проблема может быть похожа на сравнение двух видео с разной частотой кадров. Как я могу сравнить PSNR с двумя видео с разной частотой кадров?
Кроме того, что мне следует делать при использовании SSIM в вышеуказанном случае?
Спасибо
1 ответ
Согласно документации фильтра psnr FFmpeg :
Фильтр сохраняет накопленную MSE (среднеквадратичную ошибку) каждого кадра, а в конце обработки она усредняется по всем кадрам одинаково, и для получения PSNR применяется следующая формула:
PSNR = 10*log10(MAX^2/MSE)
Где MAX — это среднее максимальных значений каждого компонента изображения.
Это может быть одним из решений.