在matchTemplate之后的opencv黑色图像

时间:2016-03-01 09:46:31

标签: javascript node.js opencv

结果我看到了一张黑色图像。我试图使用像out.convertTo(out,6)这样的差异参数转换,但没有成功。

export function testAction(req, res) {
      req.file('image').upload((error, file) => {
        openCV.readImage(file[0].fd, function (err, im1) {
          let out = im1.matchTemplate(file[1].fd, 0);
          out.save('result.png');
        });
      });
      res.ok();
}

2 个答案:

答案 0 :(得分:1)

匹配模板为您提供Mat中的浮点元素,范围为[0; 1]。 保存图像时,它会转换为CV_8UC3图像,但无法正确缩放。 您可以尝试将结果乘以255并查看,或使用cv :: normalize方法。

答案 1 :(得分:0)

我实际上认为还有另一个答案。

matchTemplate()是同步的,因此您的代码应为:

openCV.readImage(file[0].fd, function (err, im1) {
     im1.matchTemplate(file[1].fd, 0, function(out){
         out.save('result.png');
     })
})