【发布时间】:2013-08-05 00:52:51
【问题描述】:
我正在使用 DirectShow.Net 将网络摄像头流式传输到我的 C# (4.0) 应用程序以读取 QR 码。它每 0.5 秒拍摄一次快照,以查看是否可以找到任何 QR 码并对其进行解码。这在我的开发计算机上以任何分辨率都可以很好地使用我的网络摄像头,但是当我在目标机器(Panasonic CF-U1 Toughbook - Intel Atom 处理器)上尝试它时,当我转到更高的分辨率时它真的开始陷入困境在网络摄像头上超过 800x600。
我正在使用 DirectShow.Net DxSnap 示例(命名空间快照)中的 Capture 类。我正在向它传递一个 Picturebox 来绘制预览。我很确定这是使系统陷入困境的原因(猜测视频卡无法胜任这项任务)。我需要绘制预览(以便用户可以看到他们正在尝试扫描的内容),但它不必与为查找 QR 码而拍摄的图片具有相同的分辨率。因为这个程序是为低屏幕分辨率的设备而设计的,所以预览框最大为 320 x 240(我确实根据相机上选择的分辨率调整了纵横比)。
所以我想我正在寻找的是以下任何一个:
一种让两个流来自同一个网络摄像头的方法,一个是低分辨率的 用于预览和高分辨率用于捕获
-
与此相同,可能会在将分辨率写入图片框之前降低分辨率(再次使用 DirectShow.Net 项目的 DxSnap 示例中的 Capture 类)
李> 防止图片框刷新太多的方法
使用 DirectShow.Net 以外的东西来做这类事情(它必须与桌面空间中从 Windows XP 到 Windows 8 的所有东西一起使用)。
感谢您的帮助。
【问题讨论】:
-
你有想过这个吗?
标签: .net c#-4.0 webcam qr-code directshow.net