Tag: node opencv

OpenCV声明失败types不匹配

我正在使用节点opencv,我想获得两个PNG图像的标准,但我有这个: OpenCV错误:声明失败(src1.size == src2.size && src1.type()== src2.type())在标准,文件/build/opencv-RI6cfE/opencv-2.4.9.1+dfsg1/modules/core /src/stat.cpp,第1978行 大小是相等的,types是不同的。 第一个Mat返回16和3以及第二个24和4的type()和channels()方法。 我试图做convertGrayscale与两个图像,并得到“错误:图像是没有3通道”(好,第二有4个通道,但首先?) 我也试图做second.convertTo(第二,16),但得到了 libpng警告:iCCP:已知错误的sRGBconfiguration文件 并没有效果,second.type()仍然返回24 有什么方法可以将任何types的Mat转换为某种灰度? 我打算处理很多不同types的图像,我需要把它们与灰度作比较。 这是我的脚本: var Promise = require("bluebird") , fs = Promise.promisifyAll(require('fs')) , cv = require('./opencv-build/node-opencv/lib/opencv'); var readImage = Promise.promisify(cv.readImage); var ImageSimilarity = Promise.promisify(cv.ImageSimilarity);; var imgdir = __dirname+'/img/'; var img_o = imgdir + 'src/walken.png'; var img_d = imgdir + 'dst/walken.png'; readImage(img_o). then(function(first){ […]