首页 > 解决方案 > 使在 Android 中的 ARCore 上播放的视频变暗

问题描述

我目前正在开发一个 AR 项目,该项目需要在扫描图像时播放视频。

我能够合并存储库中的AugmentedImagechromakeyvideo样本sceneform-android-sdk以成功渲染视频,但是我注意到正在播放的视频具有明显的高对比度。

我在这里.mat使用另一个问题提供的自定义文件。

演示:

原始视频截图 设备截图

我尝试从文件中减去,alpha.mat它没有用。

我应该弄乱RGB部分吗?

请帮忙!

标签: androidaugmented-realityarcoresceneform

解决方案


图像变暗有两个问题:ColourSpaceKeying Quality

  1. 正如我在下图中看到的那样,视频对比度不高——它位于错误的ColourSpace中。

尝试将其转换为 sRGB 或 HDR10 或 DCI-P3,具体取决于您的 Android 操作系统版本和您的hardware/ software.

阅读这两篇有用的文章:Android 颜色管理Android Oreo 色域

在此处输入图像描述

在此处输入图像描述

  1. 此外,低质量键控(alpha 通道提取)可能会改变 RGB 的颜色和对比度。下图显示了 Alpha 通道中可能有多少孔(在 RGB 中产生孔的原因,因为它是预乘图像 - RGB * A)。

在此处输入图像描述

您可以提取使图像看起来很糟糕的低质量 alpha。下图显示了高质量(干净)提取的 Alpha 通道(在 上LEFT)与低质量(脏)提取的 Alpha 通道(在 上RIGHT)。

在此处输入图像描述


推荐阅读