opencv4nodejs保存图像的描述符并加载备份

时间:2018-08-01 10:12:56

标签: javascript opencv

我正在使用opencv4nodejs包,无法解决如何保存创建的读取图像描述符信息的问题。

我要检查成千上万张图像,而不是加载每张图像,转换为灰度图像,获取关键点并从关键点创建描述符。我想将描述符信息存储在数据库中,然后即时比较描述符。

我已经将描述符保存为json对象,然后将json重新加载回并尝试从中创建一个新的cv.Mat,但我不认为输出的json包含有关图像/描述符的所有信息

任何帮助都很好,谢谢

1 个答案:

答案 0 :(得分:0)

我终于想出了答案。

因此,看起来JSON描述符未保存保存和加载后重建所需的全部信息(如果我错了,请纠正我)。相反,我遍历了描述符的每一行和每一列。将结果存储为JSON,读取并解析回结果,然后使用提供的示例重新创建描述符。

// from array (3x3 Matrix, 3 channels)
const matData = [
  [[255, 0, 0], [255, 0, 0], [255, 0, 0]],
  [[0, 0, 0], [0, 0, 0], [0, 0, 0]],
  [[255, 0, 0], [255, 0, 0], [255, 0, 0]]
];
const matFromArray = new cv.Mat(matData, cv.CV_8UC3);

如果有人希望我进一步介绍细节,那么我将很乐意提供帮助