gpt4 book ai didi

javascript - 围绕对象opencv.js的边界矩形在控制台中抛出错误

转载 作者:行者123 更新时间:2023-12-02 16:37:20 33 4
gpt4 key购买 nike

我正在使用 opencv.js 库从图像中查找对象。无法在资助对象周围绘制矩形

我已经尝试过以下代码块

        var canvas = document.getElementById('canvasInput');
canvas.renderImage(e.target.files[0]);
let src = cv.imread("canvasInput");
let dst = cv.Mat.zeros(src.rows, src.cols, cv.CV_8UC3);
cv.cvtColor(src, src, cv.COLOR_RGBA2GRAY, 0);
cv.threshold(src, src, 177, 200, cv.THRESH_BINARY);
let contours = new cv.MatVector();
let hierarchy = new cv.Mat();
cv.findContours(src, contours, hierarchy, cv.RETR_CCOMP, cv.CHAIN_APPROX_SIMPLE);
let cnt = contours.get(0);
let rect = cv.boundingRect(cnt);
let contoursColor = new cv.Scalar(255, 255, 255);
let rectangleColor = new cv.Scalar(255, 0, 0);
cv.drawContours(dst, contours, 0, contoursColor, 1, 8, hierarchy, 100);
let point1 = new cv.Point(rect.x, rect.y);
let point2 = new cv.Point(rect.x + rect.width, rect.y + rect.height);
cv.rectangle(dst, point1, point2, rectangleColor, 2, cv.LINE_AA, 0);
cv.imshow('canvasOutput', dst);
src.delete(); dst.delete(); contours.delete(); hierarchy.delete();
cnt.delete();

但发现

opcv.js:21 未捕获类型错误:无法读取未定义的属性“$$”
在 RegisteredPointer.nonConstNoSmartPtrRawPointerToWireType [as toWireType] (opcv.js:21)
在 Object.boundingRect (eval at new_ (opcv.js:21), :7:26)
在 HTMLInputElement.inputElement.addEventListener (openCv.php:52)
nonConstNoSmartPtrRawPointerToWireType @ opcv.js:21
boundingRect@VM24025:7

inputElement.addEventListener@openCv.php:52

控制台中的错误。

最佳答案

findContours 时将引发此错误。产值contours有 0 个元素,因此取消引用空指针。

关于javascript - 围绕对象opencv.js的边界矩形在控制台中抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55360775/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com