我最近安装了opencv
并执行了npm install
。opencv - TypeError:无法读取未定义的属性“长度”
之后,我给了一些示例代码,看看它是否有效,但它不起作用,我不知道为什么。也许我错误地安装了它,我是这个新手。下面是代码:
cv.readImage("./examples/files/mona.png", function(err, im){
im.detectObject(cv.FACE_CASCADE, {}, function(err, faces){
for (var i=0;i<faces.length; i++){
var x = faces[i]
im.ellipse(x.x + x.width/2, x.y + x.height/2, x.width/2, x.height/2);
}
im.save('./out.jpg');
});
})
我相信你的'faces'对象是未定义的(#noSh!t),因为你可能在回调中的'err'对象中有错误。试着在控制台上打印'err',看看它给了你什么。 console.error(ERR); – Philippe
我假设你的文件路径是不正确的'。/ examples/files/mona.png',它是一个带有代码的例子路径,根据你的目录结构来修复它。尝试'console.log(err);'第一行后 –
使用'length'的唯一地方是在循环中,所以'faces'显然不是你想象的那样。 – adeneo