我正在开发一个需要从笔记本电脑网络摄像头扫描二维码的 UWP 应用程序。我为此使用了 Windows.Media.Capture.MediaCapture 类。一切正常,除了在智能手机上使用二维码时,它的亮度设置得太高,无法满足内置网络摄像头有限的动态范围。网络摄像头的自动曝光处于活动状态,但与环境相比,屏幕仍然太亮。
我正在寻找一种手动或使用某种曝光补偿模式来控制或覆盖亮度或曝光的方法。
在我的常规内置网络摄像头上启用/工作的唯一与亮度/曝光有关的属性是亮度和对比度,它们会相应地更改图像,但看起来它们是后处理效果。它们不会改变相机本身的曝光,因此无法解决问题。
mediaCapture.VideoDeviceController.ExposureCompensationControl.Supported;
mediaCapture.VideoDeviceController.ExposureControl.Supported;
mediaCapture.VideoDeviceController.ExposurePriorityVideoControl.Supported;
mediaCapture.VideoDeviceController.Exposure.Capabilities.Supported;
全部返回假
mediaCapture.VideoDeviceController.Brightness.TrySetValue(10);
改变图像,但高光仍然被洗掉,没有细节可供扫描仪拾取