网络摄像头因运动而像素化

Posted

技术标签:

【中文标题】网络摄像头因运动而像素化【英文标题】:Webcam pixelated with movement 【发布时间】:2012-02-23 12:38:43 【问题描述】:

我正在使用AS3 直播视频,但只要网络摄像头捕捉到运动,图片就会像素化。有谁知道我怎样才能拍出更好的照片?

这是我的相机设置:

var bandwidth:int = 50000;
var quality:int = 0;

camera = Camera.getCamera();
camera.setQuality(bandwidth/8, quality);
camera.setMode(232,174,15); 
ns.attachCamera(camera);
addChild(video);

【问题讨论】:

【参考方案1】:

这很可能是由于您的 SetQuality 设置造成的。根据Adobe Documentation 的说法,Flash 将根据需要降低质量以满足您的带宽要求。由于您的带宽设置低于默认值(即 16384;50000/8 = 6250),Flash 可能会自动降低流的质量以适应您的带宽限制。

尝试提高带宽设置,看看是否对您没有帮助。或者,您可以设置最低质量,但确保不会通过将两者都设置为非常严格的值来限制您的提要。

祝你好运。

【讨论】:

也许我的计算是错误的,但不是50000/8 = 500Kbps?我认为这将有足够的带宽来流式传输实时视频。 我怎样才能告诉我的相机最多只能发送 500Kbps? @zLan - bandwidth 以每秒字节数为单位,而不是千字节。因此,您的吞吐量仅为每秒 6k。尝试使用默认值 - 16384 字节或 16 KB - 看看您的质量是否会提高。 @zLan 编辑:(您可以随时尝试将其设置为非常高的值 - 例如 16777216,或每秒 16 兆。) 我将等式更改为bandwidth*1024/8,将带宽设置为100 (100kbps),从而解决了问题。谢谢!【参考方案2】:

将您的质量从零更改为接近 100 的值。

【讨论】:

真的很不稳定。我认为那是因为它没有发送所有帧。 我认为弄乱你的camera.setQuality() 并找到合适的平衡点是关键。我自己从未见过真正优质的网络摄像头,如果您觉得它看起来很棒,请告诉我们。

以上是关于网络摄像头因运动而像素化的主要内容,如果未能解决你的问题,请参考以下文章

树莓派运动网络摄像头“数据过早结束”[关闭]

使用 Python 进行网络摄像头运动跟踪

从网络摄像头进行运动检测以使用 .NET 控制鼠标指针

Matlab 运动检测使用 IP 网络摄像头给出奇怪的颜色

如何在 OpenCV 中使用网络摄像头捕获 Mat 图像的像素值

来自前景提取的物体运动检测(grabcut)