我正在尝试使用opencv进行行检测。在这里,我有用于检测对象和线条的用户opencv4nodejs模块。我尝试了一些代码来检测图像中的线
这是我尝试的代码:
exports.lineDetect=(request, response)=>{
cv.imread('./public/images/section-1.jpg', function (err, im) {
if (err) {
throw err;
}
const width = im.width();
const height = im.height();
if (width < 1 || height < 1) {
throw new Error('Image has no size');
}
im.convertGrayscale();
var outImage = new cv.Matrix(height, width);
var lines = im.houghLinesP();
for (var i=0; i < lines.size(); i++) {
var line = lines[i];
var pt1 = [line[0], line[1]];
var pt2 = [line[2], line[3]];
outImage.line(pt1, pt2, RED);
}
console.log(outImage.line(pt1, pt2, RED));
outImage.imwrite('./public/images/section-1New.jpg');
});
}//lineDetect
它成功运行,没有错误,但未创建新图像用于输出。