android - 使在 Android 中的 ARCore 上播放的视频变暗
问题描述
我目前正在开发一个 AR 项目,该项目需要在扫描图像时播放视频。
我能够合并存储库中的AugmentedImage
和chromakeyvideo
样本sceneform-android-sdk
以成功渲染视频,但是我注意到正在播放的视频具有明显的高对比度。
我在这里.mat
使用另一个问题提供的自定义文件。
演示:
我尝试从文件中减去,alpha
但.mat
它没有用。
我应该弄乱RGB部分吗?
请帮忙!
解决方案
图像变暗有两个问题:ColourSpace和Keying Quality。
- 正如我在下图中看到的那样,视频对比度不高——它位于错误的ColourSpace中。
尝试将其转换为 sRGB 或 HDR10 或 DCI-P3,具体取决于您的 Android 操作系统版本和您的hardware
/ software
.
阅读这两篇有用的文章:Android 颜色管理和Android Oreo 色域。
- 此外,低质量键控(alpha 通道提取)可能会改变 RGB 的颜色和对比度。下图显示了 Alpha 通道中可能有多少孔(在 RGB 中产生孔的原因,因为它是预乘图像 - RGB * A)。
您可以提取使图像看起来很糟糕的低质量 alpha。下图显示了高质量(干净)提取的 Alpha 通道(在 上LEFT
)与低质量(脏)提取的 Alpha 通道(在 上RIGHT
)。
推荐阅读
- sql - 如何根据日期字段查找客户第一个订单和后续订单的平均成本差异?
- javascript - 部署站点时,我无权访问 navigator.mediaDevices。我该如何解决?
- c# - LINQ、INNER JOIN(加入或 GroupJoin)?
- python - '\' '.\' 和 '\.' 是什么意思 在 SQL Alchemy 的上下文中是什么意思?
- javascript - 从 React 到 .NET Core Web API 进行 POST 时如何修复 CORS 错误?
- node.js - 使用护照从节点中的 jsonwebtoken 获取用户 ID
- r - upload_file(x) 中的错误:is.character(path) 在循环中不是 TRUE
- android - 我怎样才能收到我检查的数据
- postgresql - 使用 VARIADIC 数组作为参数的 PL/Python3
- python - 逻辑回归是创建评分模型的更好方法吗?