gpt4 book ai didi

node.js - 在OpenCV calibrateCamera cameraMatrix和distCoeffs参数中用作输入的内容是什么?

转载 作者:行者123 更新时间:2023-12-02 17:36:41 26 4
gpt4 key购买 nike

我正在尝试让calibrateCamera在我的Node.js后端上工作。该库运行正常,但是如果输入错误,我会遇到OpenCV函数无法给出任何错误消息的麻烦。我有点在黑暗中飞翔。

但这不是重点。我已经拍摄了17张棋盘校准图案的图像,并获得了在所有图像中检测该图案的代码。在我调用cv.calibrateCamera()之前,一切工作都很好,这可能是由于我不知道应该使用什么作为cameraMatrix和distCoeff(第4个和第5个输入参数)的必需输入。但是,我不能100%遇到这个问题,因为没有收到来自cv ...函数错误的任何错误消息。

我尝试按照https://docs.opencv.org/3.1.0/dc/dbb/tutorial_py_calibration.html的示例进行操作,但是在本教程的python上,您可以将None用作cameraMatrix和distCoeff的输入。我尝试使用null,但这也不起作用。

任何帮助,将不胜感激。

const size = new cv.Size(9,6);
let mat = null;

let objpt = [];
for(let i=0;i<9;i++) {
for(let j=0;j<6;j++) {
objpt.push(cv.Point(2.5*i,2.5*j,0))
}
}

let objectPoints = [];
let imagePoints =[];

for (let i=0; i < 17;i++) {
mat = cv.imread('./calib/calib'+(i+1)+'.jpg');
let smallmat = mat.resize(756,1008);
const corners = smallmat.findChessboardCorners(size);
if (corners.returnValue) {
objectPoints = objectPoints.concat(objpt);
imagePoints = imagePoints.concat(corners.corners);
}
}

// THIS IS WHERE EXECUTION JUST STOPS WITH NO ERROR MESSAGE

cv.calibrateCamera(
objectPoints,
imagePoints,
new cv.Size(756,1008),
new cv.Mat(3, 3, cv.CV_32FC1,0),
[0,0,0,0,0]
);

最佳答案

根据test参数应该这样传递:

 [_objectPoints, _objectPoints],
[imagePoints, imagePoints],
imageSize,
_cameraMatrix,
distCoefficients


哪里

const _cameraMatrix = new cv.Mat([ [800, 0, 100], [0, 800, 100], [0, 0, 1] ], cv.CV_64F);





const distCoefficients = [0, 0.5, 1.0, 1.0];

关于node.js - 在OpenCV calibrateCamera cameraMatrix和distCoeffs参数中用作输入的内容是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50391075/

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