UVC摄像头怎么控制亮度、对比度、饱和度?

USB中文网 2021-07-07 23:34:05 编辑

我们在购买UVC摄像头时,发现有的UVC摄像头有亮度、对比度、饱和度控制,有的没有。如下图所示,我们通过amcap打开摄像头,可以查看摄像头是否支持亮度、对比度、饱和度控制的控制。

UVC亮度对比度控制

当然,以上是通过微软提供的DirectShow示例demo amcap来查看摄像头是否支持亮度、对比度、饱和度的,那么做为一个专业的UVC摄像头开发者,我们从UVC规范的角度来详细的分析和解释一下UVC摄像头对亮度、对比度、饱和度的控制。

UVC 处理单元描述符

在UVC规范中,有一个描述符叫做 UVC 处理单元描述符,这个描述符是专门描述摄像头关于图像处理功能的。其字段bmVideoStandards通过各位的方式指明了摄像头对图像处理相关功能的描述支持情况。这其中就包括我们标题中的亮度、对比度、饱和度。

UVC 处理单元描述符 http://www.usbzh.com/article/detail-84.html

UVC 处理单元控制请求

当然,当UVC摄像头通过处理单元描述符上报给主机它支持相关的图像处理时,主机是需要通过相关的命令通读来控制如亮度、对比度、饱和度功能的。这就涉及到UVC处理单元控制的请求,处理单元的特定类请求。UVC规范定义了很多关于处理单元的控制请求选择子(命令),不同的选择子(命令)有不同的参数。这些命令参数都是UVC规范定义好的,是不变的,每个支持这些功能的都应按UVC规范的这个要求来。

UVC 处理单元控制请求 http://www.usbzh.com/article/detail-70.html

UVC摄像头怎么控制亮度、对比度、饱和度的上层控制

AMCAP使用的是directshow来进行UVC摄像头怎么控制亮度、对比度、饱和度的控制,这适用于windows的所有平台。
其DirectShow上层的相关代码可详见:http://www.usbzh.com/article/detail-160.html