Undistortion图像的给了一个错误

50个视图(30天)
你好,
我试图消除图像的失真但我得到一个错误。我用还装有英雄7相机。是每当我使用棋盘图像相同的相机,只用棋盘图像删除其中一个图像的畸变消除了畸变,但每当我使用实际的实验图像消除失真从我得到如下所示的错误
错误:
错误使用vision.internal.inputValidation.checkImageSize(14)行
图像尺寸不符合相机intrinsic。很可能不是生成的图像
指定的相机。
错误undistortImage(第94行)
vision.internal.inputValidation.checkImageSize(我intrinsics.ImageSize);
错误calibration3(46行)
[im, newOrigin] = undistortImage (imOrig cameraParams,“OutputView”,“全”);
代码使用: (这是一个我使用matlab示例代码)
%的文件名创建一个单元阵列校准图片。
numImages = 12;
文件=细胞(1、numImages);
因为我= 1:numImages
文件{我}= fullfile (matlabroot,“工具箱”,“愿景”、“visiondata”,…
“校准”,由变频控制,sprintf(图像% d.jpg, i));
结束
%显示标定的图像
I = imread(文件{1});
%图;imshow(我);
%的标题(一个校准图片);
%估计摄像机参数
%检测图像中的棋盘的角落。
[imagePoints, boardSize] = detectCheckerboardPoints(文件);
%生成的棋盘的角落的世界坐标
% pattern-centric坐标系,在左上角(0,0)。
squareSize = 22;%在毫米
worldPoints = generateCheckerboardPoints (boardSize squareSize);
%校准相机。
图象尺寸=[(我,1),大小(我,2)];
cameraParams = estimateCameraParameters (imagePoints, worldPoints,…
“图象尺寸”,图象尺寸);
%评估校准精度。
图;showReprojectionErrors (cameraParams);
标题(“Reprojection错误”);
%阅读对象的形象被测量
imOrig = imread (fullfile (matlabroot“工具箱”,“愿景”、“visiondata”,…
“校准”、“由变频控制”、“image25.jpg”));
图;imshow (imOrig);
标题(“输入图像”);
% Undistort图像
%因为镜头介绍小变形,使用完整的输出视图来说明
% undistored形象。如果我们使用默认的“相同”选项,这将是困难的
%注意到任何原始图像相比的区别。注意到小黑的边界。
[im, newOrigin] = undistortImage (imOrig cameraParams,“OutputView”,“全”);
图;imshow (im);
标题(“无畸变的图像”);

接受的答案

Nitin Kapgate
Nitin Kapgate 2020年10月7日
大小的图片你想undistort不同大小的图像用于估计摄像机标定参数。内置的摄像头参数被估计MATLAB校准图片。
为了使用 undistortImage 函数来消除畸变的图像捕捉到你还装有摄像头,您将需要估计相机intrinsic,外在和镜头畸变参数 使用校准由相机拍摄的图像。
您可以使用 工作流来调整你的相机使用 相机校准器的应用
1评论
Ashwani gulati
Ashwani gulati 2021年10月6日
你好,
我用立体相机校准器,但仍给我的这个错误。
错误使用vision.internal.inputValidation.checkImageSize(14)行
图像尺寸不符合相机intrinsic。很可能生成的图像不是指定的相机。
错误rectifyStereoImages(第126行)
vision.internal.inputValidation.checkImageSize (I1, stereoParams.CameraParameters1.ImageSize);
错误Depthestimationfromstereovideolenovocameratest5(54行)
rectifyStereoImages (frameLeft frameRight stereoParams);
你能帮我做这个吗?

登录置评。

更多的答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!