如何使用 TensorflowJS 将网络摄像头图像转换为灰度?

Yur*_*ros 3 tensorflow.js

我正在尝试使用模型对灰度图像进行分类。

我使用了一些 TensorflowJS 示例中提供的网络摄像头类来使用网络摄像头获取图像。它运行良好,但它返回一个 RGB 图像。

将此图像转换为灰度的最佳方法是什么?我是否需要计算这个从张量中获取每个元素并计算一个表示灰度图像的新矩阵,还是有更简单或更方便的方法?

小智 5

如果您需要以 [width, height, 1] 的形式使用它:

tf.browser.fromPixels(image)
    .mean(2)
    .toFloat()
    .expandDims(-1)
Run Code Online (Sandbox Code Playgroud)

如果您需要 [1, width, height, 1] 形式:

tf.browser.fromPixels(image)
    .mean(2)
    .toFloat()
    .expandDims(0)
    .expandDims(-1)
Run Code Online (Sandbox Code Playgroud)