2009-08-10 39 views
2

为了测试目的,我使用的是以4:3分辨率(640x480,320x240等)记录的Logitech Quickcam 9000。我正在使用自定义的Flash应用程序从网络摄像头转接到Wowza媒体服务器(然后转发给我们的用户)。网络摄像头长宽比

当我在应用程序中录制并以240x180播放时,一切看起来都很棒。当我在应用程序中录制并以480x360(x2尺寸)播放时,一切看起来都很棒。当我在应用程序中录制并以360x270播放时,它看起来很糟糕(像素化/伪像)。

为什么它可以在240x80和480x360下正常工作,但不在两者之间?这是由于我的凸轮广播一定的分辨率,闪光灯没有正确地将其分辨率提高到1.5倍,或者是什么?对于任何反馈,我们都表示感谢。

回答

1

整数缩放因子很好地放大,因为源中的1个像素=结果中的一组像素数。例如,2倍变焦的2×2像素网格很简单,就像这样:

12 becomes  1122 
34    1122 
        3344 
        3344 

非整数的缩放因子需要玩家进行插值的像素应该是什么样的,因为(在你的例子)2个像素长度在源代码中,结果会变成3个像素长度 - 那么您如何确定中间像素的值应该是多少?这是一项不完善的任务,取决于所使用的算法,通常可能导致结果不尽如人意。

+0

你的意思是“1122 \ N1122 \ n3344 \ n3344”?即在两个维度上2倍变焦? (原谅格式化;最好我可以在评论中想到!) – DaveR 2009-08-10 22:09:13

+0

哎呀,是的,让我编辑它。 – Amber 2009-08-10 22:32:08

1

听起来像240x180和480 x 360是摄像头的“原生”分辨率。当您尝试以其他分辨率播放时,播放软件必须执行转换。显然,转换过程并不理想。

0

它取决于采样方法,例如线性与BiCubic等,加上事实上,实际的像素并不总是真正的sqaures(有时)他们稍宽于高。

从我的经验上取样最好的办法是上采样beyound目标分辨率,然后使用双三次方法中每个阶段下采样到目标分辨率: