我正在使用VirtualDub使用这些设置进行编码。
但是,我以1920x1080录制我的内容,并将其大小调整为1280x720。现在的问题是:在决定质量与文件大小的平衡时,应该选择哪种算法?
我总是和Lanczos一起去,因为那是预先配置的。这些描述对我的问题没有任何帮助。
我正在使用VirtualDub使用这些设置进行编码。
但是,我以1920x1080录制我的内容,并将其大小调整为1280x720。现在的问题是:在决定质量与文件大小的平衡时,应该选择哪种算法?
我总是和Lanczos一起去,因为那是预先配置的。这些描述对我的问题没有任何帮助。
Answers:
向下采样时:使用Lanczos或样条线过滤。
采样时:使用Bicubic或Lanczos过滤。
这些是基于我多年来阅读的材料以及我在行业中使用的材料。根据内容类型和应用领域,建议可能会有所不同。
可以说,缩小视频的大小时调整大小滤镜没有太大关系。更重要的是,它们在升迁时会对质量产生影响,因为您需要首先生成没有数据的数据。
这些过滤器都仅对文件大小产生很小的影响。因此,您不必担心那里的巨大差异。
事实是,与对视频进行编码时一样,结果在很大程度上取决于源素材。您不能总是预测结果,而只是看到最适合您的结果。
看到三次三次插值可以使边缘更平滑吗?这是一个非常笼统的陈述……但是您可以在此处找到图像缩放算法的概述。
双线性插值使用像素的2x2环境,然后获取这些像素的平均值以插值新值。它不是最佳算法,但速度很快。
双三次插值使用像素的4x4环境,将最里面的像素权重更高,然后取平均值以插值新值。就我而言,它是最受欢迎的。
区域平均使用源像素和目标像素的映射,根据覆盖的目标像素的比例对源像素进行平均。根据此页面,在下采样时应该会产生更好的结果。
Lanczos重采样还涉及一个Sinc滤波器。它在计算上更加昂贵,但通常被描述为非常高质量,并且可以用于上采样和下采样。
hqx以及 2xSaI过滤器用于像素缩放(例如游戏模拟器)。我认为没有充分的理由在视频中使用它们。
事实证明Jeff Atwood 对图像插值算法进行了比较。他的经验法则是使用双三次插值进行下采样,而使用双线性插值进行上采样。也就是说,这不是视频编码通常不建议的内容-一些评论者对Atwood在该领域的专业知识提出了疑问。
但是,他还提到...
缩小图像是完全安全和合理的操作。您只是通过丢弃信息来降低精度和分辨率。使图像尽可能小,并具有完全的保真度-在允许的像素数范围内。无论选择哪种算法,您都将获得良好的结果。(好吧,除非您选择简单的像素调整大小或最近邻算法。)
这是图像插值算法的更多示例,包括我上面提到的算法。
我还从视频编码场景中找到了文档(场景规则),这些文档明确禁止双三次过滤以进行下采样。相反,他们支持Lanczos,Spline或“ Blackman”重采样。