ARCore应用中的黑白视频流背景

时间:2018-10-18 07:23:54

标签: java android background-color augmented-reality arcore

我正在使用AR Android应用,当我接近可渲染对象时,我想将AR视频流的颜色设为黑白,当然,除了可渲染对象之外。我搜索了文档,但发现无法像Exploring AR interaction (Google I/O '18)所示那样访问视频流。

有人知道如何做到这一点吗?

1 个答案:

答案 0 :(得分:2)

要从ARCore获取视频流,需要将纹理绘制到 OpenGL 3.1上下文中。您可以找到here的操作方法。

捕获视频流后,将颜色video / image转换为灰度级(红色,绿色和蓝色的平均值)的最简单方法是使用饱和度为零的Colour Matrix

以下是Java代码的部分摘录,该内容以编程方式进行:

ColorMatrix BW_matrix = new ColorMatrix();
BW_matrix.setSaturation(0);

ColorMatrixColorFilter BW_filter = new ColorMatrixColorFilter(BW_matrix);
imageview.setColorFilter(BW_filter);

您只需要将其应用于手机摄像头的视频流,而不是将Sceneform的3D模型添加到场景后再应用于渲染结果。

希望这会有所帮助。