主要内容

undistortImage

纠正图像的镜头失真

描述

例子

JnewOrigin) = undistortImage (cameraParams返回一个图像,J,包含输入图像,,镜片失真消除。该函数还返回[xy输出图像原点的位置。位置根据中指定的输入固有坐标来设置cameraParams

JnewOrigin) = undistortImage (cameraParams插值函数指定函数要在输入图像上使用的插值方法。

JnewOrigin) = undistortImage (___名称,值指定一个或多个名称,值使用前面的任何语法对参数进行配对。未指定的属性有其默认值。

例子

全部折叠

创建一组校准图像。

图像= imageDatastore (fullfile (toolboxdir (“愿景”),“visiondata”...“校准”“莫诺”));

检测校准模式。

[imagePoints, boardSize] = detectCheckerboardPoints (images.Files);

生成方块角落的世界坐标。正方形的大小以毫米为单位。

squareSize = 29;worldPoints = generateCheckerboardPoints (boardSize squareSize);

校准相机。

I = readimage(图片1);图象尺寸=[(我,1),大小(我,2)];cameraParams = estimateCameraParameters (imagePoints worldPoints,...“图象尺寸”、图象尺寸);

消除镜头失真和显示结果。

我= images.readimage (1);j - 1 = undistortImage(我cameraParams);
图;imshowpair (I, j - 1,“蒙太奇”);标题(“原始图像(左)vs.校正图像(右)”);

图中包含一个坐标轴。标题为“原始图像(左)与校正图像(右)”的轴包含一个类型为图像的对象。

J2 = undistortImage (cameraParams,我“OutputView”“全部”);图;imshow (J2);标题(“全输出视图”);

图中包含一个坐标轴。标题为Full Output View的轴包含一个类型为image的对象。

输入参数

全部折叠

输入图像,在两者中指定——- - - - - -N3真彩或——- - - - - -N二维灰度。输入图像必须是实数和非稀疏的。

数据类型:||int16|uint8|uint16|逻辑

摄像机参数,指定为cameraParameterscameraIntrinsics对象。你可以退回cameraParameters对象使用estimateCameraParameters函数。的cameraParameters对象包含相机的内在、外在和镜头畸变参数。

在输入图像上使用的插值方法,指定为“线性”“最近的”,或“立方”

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“FillValues”0设置输出像素填充值的集合0

输出像素填充值,指定为逗号分隔对,由'FillValues'和包含一个或多个填充值的数组。当输入图像中相应的反变换位置完全位于输入图像边界之外时,输出像素使用填充值。当您使用二维灰度输入图像时,必须设置FillValues标量。当你使用真色时,FillValues可以是标量或RGB值的3元素向量。

输出图像的大小,指定为逗号分隔对,由'OutputView”,“相同”“全部”,或“有效”.当您将属性设置为“相同”,该函数设置输出图像以匹配输入图像的大小。当您将属性设置为“全部”,输出包括输入图像的所有像素。当您将属性设置为“有效”,函数将输出图像裁剪为只包含有效像素。

对于输入图像:

OutputView 输出图像
“相同”

匹配输入图像的大小。

“全部”

输入图像的所有像素。

“有效”

仅来自输入图像的有效像素。

输出参数

全部折叠

未失真的图像,返回在任何——- - - - - -N3真彩或——- - - - - -N二维灰度。

数据类型:||int16|uint8|uint16|逻辑

输出图像原点,返回为2元素[xy)向量。该函数根据输入的内在坐标设置输出原点的位置。当您设置OutputView“相同”,这意味着输出图像与输入图像大小相同,函数设置newOrigin(0,0)

newOrigin输出表示从输出图像的固有坐标进行的平移J转化为输入图像的固有坐标

让P表示输入图像I的内坐标中的一个点。
让PJ表示输出图像J的本征坐标中的同一点。

P= PJ+newOrigin

扩展功能

介绍了R2014a