代码之家  ›  专栏  ›  技术社区  ›  David

数组中的Opencv(JavaScript)Mat不工作

  •  0
  • David  · 技术社区  · 5 年前

    我正在尝试使用 cv.matFromArray(rows, cols, type, array);

    它适用于非常小的阵列,如:

      let mat = cv.matFromArray(2, 2, cv.CV_8UC1, [255, 255, 128, 128]);
      return mat; // works
    

    但是当我对我的图像数组(1024x1024px,值从20到230)基本上做同样的事情时,它只是将每个Mat值填充到0

    const mat = cv.matFromArray(img_array.length, img_array[0].length, cv.CV_8UC1, img_array);
    return mat; // every value is 0
    

    为什么?

    0 回复  |  直到 5 年前
        1
  •  1
  •   David    5 年前

    [].concat(...img_array);
    

    现在开始工作了:

    img_array; // 1024x1024px 2d array
    
    const mat = cv.matFromArray(img_array.length, img_array[0].length, cv.CV_8UC1, [].concat(...img_array));
    return mat;