使用 16 位 RGB | 您所在的位置:网站首页 › rgb位数8位 › 使用 16 位 RGB |
使用 16 位 RGB
项目07/28/2023
[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayer、 IMFMediaEngine 和 媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。] 为 16 位未压缩 RGB 定义了两种格式: MEDIASUBTYPE_555对像素中的红色、绿色和蓝色分量分别使用 5 位。 将忽略 WORD 中的最有效位。 MEDIASUBTYPE_565对红色和蓝色分量使用 5 位,绿色分量使用 6 位。 此格式反映了这样一个事实,即人类视觉对可见光谱的绿色部分最敏感。RGB 565 若要从 RGB 565 图像中提取颜色分量,请将每个像素视为 WORD 类型并使用以下位掩码: WORD red_mask = 0xF800; WORD green_mask = 0x7E0; WORD blue_mask = 0x1F;从像素获取颜色分量,如下所示: BYTE red_value = (pixel & red_mask) >> 11; BYTE green_value = (pixel & green_mask) >> 5; BYTE blue_value = (pixel & blue_mask);请记住,红色和蓝色通道为 5 位,绿色通道为 6 位。 若要将这些值转换为 8 位组件, (24 位或 32 位 RGB) ,必须向左移动适当的位数: // Expand to 8-bit values. BYTE red = red_value |
CopyRight 2018-2019 实验室设备网 版权所有 |