estimateCameraParameters
调整一个或立体相机
语法
描述
(
返回cameraParams
,imagesUsed
,estimationErrors
)= estimateCameraParameters (imagePoints
,worldPoints
)cameraParams
,一个cameraParameters
对象包含内在和外在的参数估计和一个相机的畸变系数。函数返回图片你用来估计相机参数和标准单一相机校正估计错误。的estimateCameraParameters
函数估计这些外在和特性参数。
(
返回stereoParams
,pairsUsed
,estimationErrors
)= estimateCameraParameters (imagePoints
,worldPoints
)stereoParams
,一个stereoParameters
对象包含立体相机的参数。函数返回图片你用来估计立体声参数和立体相机标定的标准估计错误。
配置cameraParams
= estimateCameraParameters (___,名称,值
)cameraParams
由一个或多个对象属性指定名称,值
对参数,使用任何前面的语法。未指定的属性的默认值。
例子
单摄像机标定
创建一套校准图片。
图像= imageSet (fullfile (toolboxdir (“愿景”),“visiondata”,…“校准”,“莫诺”));imageFileNames = images.ImageLocation;
检测校准模式。
[imagePoints, boardSize] = detectCheckerboardPoints (imageFileNames);
生成的角落的世界坐标方格。
squareSizeInMM = 29;worldPoints = generateCheckerboardPoints (boardSize squareSizeInMM);
校准相机。
I = readimage(图片1);图象尺寸=[(我,1),大小(我,2)];params = estimateCameraParameters (imagePoints worldPoints,…“图象尺寸”、图象尺寸);
可视化校准精度。
showReprojectionErrors (params);
可视化相机外在。
图;showExtrinsics (params);
drawnow;
情节发现和reprojected点。
图;imshow (imageFileNames {1});持有在;情节(imagePoints (:, 1, 1), imagePoints (:, 2, 1),“去”);情节(params.ReprojectedPoints (:, 1, 1), params.ReprojectedPoints (:, 2, 1),' r + ');传奇(“发现点”,“ReprojectedPoints”);持有从;
立体相机标定
指定图像校准。
leftImages = imageDatastore (fullfile (toolboxdir (“愿景”),“visiondata”,…“校准”,“立体”,“左”));rightImages = imageDatastore (fullfile (toolboxdir (“愿景”),“visiondata”,…“校准”,“立体”,“对”));
检测棋盘格。
[imagePoints, boardSize] =…detectCheckerboardPoints (leftImages.Files rightImages.Files);
指定棋盘要点的世界坐标。广场在毫米大小。
squareSize = 108;worldPoints = generateCheckerboardPoints (boardSize squareSize);
校准立体相机系统。两款相机都有相同的分辨率。
I = readimage (leftImages, 1);图象尺寸=[(我,1),大小(我,2)];params = estimateCameraParameters (imagePoints worldPoints,…“图象尺寸”、图象尺寸);
可视化校准精度。
showReprojectionErrors (params);
可视化相机外在。
图;showExtrinsics (params);
相机参数估计使用圆网格
创建一套校准图片。
imd = imageDatastore (fullfile (toolboxdir (“愿景”),“visiondata”,…“校准”,“circleGrid”,“莫诺”));calibrationImages = readall (imd);calibrationImages =猫(4,calibrationImages {:});
定义圆网格图形尺寸。
patternDims = 11 [8];
检测校准图像中的模式。
imagePoints = detectCircleGridPoints (calibrationImages patternDims,…“PatternType”,“对称”);
指定圆的世界坐标网格要点。中心距是毫米。
centerDistance = 18;worldPoints = generateCircleGridPoints (patternDims centerDistance,…“PatternType”,“对称”);
使用校准图像校准相机。
图象尺寸=大小(calibrationImages 1:2);params = estimateCameraParameters (imagePoints worldPoints,…“图象尺寸”、图象尺寸);
检测模式网格和reprojected点的阴谋。
图imshow (calibrationImages (:,:,: 1))在情节(imagePoints (:, 1, 1), imagePoints (:, 2, 1),“gx”,“MarkerSize”8)情节(params.ReprojectedPoints (:, 1, 1), params.ReprojectedPoints (:, 2, 1),' r + ',“MarkerSize”8)传说(“发现点”,“ReprojectedPoints”)举行从
输入参数
imagePoints
- - - - - -校准模式的关键点
米2 -numImages|米2 -numPairs2数组
校准模式的要点,指定为数组(x,y]内在图像坐标。
校准 | 输入数组的x,y)要点 |
---|---|
单相机 | 米2 -numImages数组的x,y)点。
部分检测模式只支持单摄像机标定。金宝app包括部分发现的模式估计,使用[ |
立体相机 | 米2 -numPairs2组(x,y)点。
|
数据类型:单
|双
worldPoints
- - - - - -在世界坐标校准模式的关键点
米2数组
校准模式的关键点在世界坐标,作为指定米2组米的数量(x,y世界坐标。该模式必须平面;因此,z坐标为零。
数据类型:单
|双
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:“WorldUnits”
,“毫米”
集世界点单位毫米。
WorldUnits
- - - - - -世界点单位
“毫米”
(默认)|特征向量|字符串标量
世界分单位,指定为逗号分隔组成的“WorldUnits”
和一个字符向量或字符串标量。
EstimateSkew
- - - - - -估计斜
假
(默认)|逻辑标量
估计倾斜,指定为逗号分隔组成的“EstimateSkew”
和一个逻辑标量。当你设定这个属性真正的
,函数估计图像轴倾斜。当设置为假
轴是垂直的形象和功能设置偏差为零。
NumRadialDistortionCoefficients
- - - - - -径向畸变系数
2
(默认)|3
径向畸变系数的估计,指定为逗号分隔组成的“NumRadialDistortionCoefficients”
和价值2
或3
。
径向畸变图像的位移点沿径向线扩展的主要点。
形象点远离主点(积极的径向位移),图像放大减少和pincushion-shaped变形发生在形象上。
形象点朝着主点(负径向位移),图像放大增加和筒状的变形发生在图像。
这种类型的失真的径向畸变系数模型。扭曲的点表示为(x扭曲的,y扭曲的):
x扭曲的=x(1 +k1*r2+k2*r4+k3*r6)
y扭曲的=y(1 +k1*r2+k2*r4+k3*r6)
x,y——无畸变的像素位置。x和y在归一化图像坐标。归一化图像像素坐标的坐标计算翻译焦距的光学中心和除以像素。因此,x和y是无量纲。
k1,k2,k3- - - - - -镜头的径向畸变系数。
r2=x2+y2
通常,两个系数满足校准。等严重的失真,在广角镜头,你可以选择三个系数包括k3。
EstimateTangentialDistortion
- - - - - -切向畸变国旗
假
(默认)|逻辑标量
切向畸变国旗,指定为逗号分隔两人组成的,“EstimateTangentialDistortion”
和一个逻辑标量。当你设定这个属性真正的
,函数估计,切向畸变。当你设置它假
切向畸变是微不足道的。
切向畸变发生在镜头和图像平面不平行。这种类型的失真的切向畸变系数模型。
扭曲的点表示为(x扭曲的,y扭曲的):
x扭曲的=x+ (2 *p1*x*y+p2* (r2+ 2 *x2)]
y扭曲的=y+ (p1* (r2+ 2 *y2)+ 2 *p2*x*y]
x,y——无畸变的像素位置。x和y在归一化图像坐标。归一化图像像素坐标的坐标计算翻译焦距的光学中心和除以像素。因此,x和y是无量纲。
p1和p2-切向畸变系数的镜头。
r2=x2+y2
InitialIntrinsicMatrix
- - - - - -初始猜测相机intrinsic
[]
(默认)|3×3矩阵
初始猜测相机intrinsic,指定为逗号分隔组成的“InitialIntrinsicMatrix”
和一个3×3的矩阵。如果你不提供一个初始值,函数使用线性最小二乘法计算初始内在矩阵。
InitialRadialDistortion
- - - - - -初始猜测径向畸变系数
[]
(默认)|2-element向量|转换向量
初始猜测径向畸变系数,指定为逗号分隔组成的“InitialRadialDistortion”
和2 -或转换向量。如果你不提供一个初始值,函数使用0
所有的初始值系数。
图象尺寸
- - - - - -图像大小由相机
1×2 (mrows,ncols)向量|[]
图像大小由相机,指定为逗号分隔两人组成的“图象尺寸
当1×2 (mrows,ncols)向量。
输出参数
cameraParams
-相机参数
cameraParameters
对象
相机参数,作为一个返回cameraParameters
对象。
imagesUsed
——图片用来估计相机参数
P1逻辑阵列
图像使用估计相机参数,作为一个返回P1逻辑数组。P对应于图像的数量。数组表示图像用来估计摄像机的参数。一个逻辑真正的
数组中的值显示图像用来估计摄像机的参数。
函数计算世界点和点之间的单应性检测在每个图像。如果图像的单应性计算失败,一个警告的功能问题。图像的点不是用于估计摄像机的参数。函数还设置相应的元素imagesUsed
来假
。
estimationErrors
——标准的错误估计参数
cameraCalibrationErrors
对象|stereoCalibrationErrors
对象
标准错误的估计参数,作为一个返回cameraCalibrationErrors
对象或一个stereoCalibrationErrors
对象。
stereoParams
-相机参数立体声系统
stereoParameters
对象
相机参数立体声系统,作为一个返回stereoParameters
对象。对象包含内在、外在和镜头畸变参数的立体相机系统。
pairsUsed
——图像对用来估计相机参数
P1逻辑阵列
图像对用来估计相机参数,作为一个返回P1逻辑数组。P对应于图像对的数量。一个逻辑真正的
数组中的值显示图片对你用来估计摄像机的参数。
算法
校准算法
您可以使用相机校准器应用与相机的的视野(FOV) 95度。
校准算法假定一个针孔摄像机模型:
(X,Y,Z):点的世界坐标 |
(x,y):对应的像点的坐标 |
w:任意比例因子 |
K:相机内在矩阵 |
R:代表相机的三维旋转矩阵 |
t:翻译的相机相对于世界坐标系统 |
相机校正估计固有参数的值,非本征参数,畸变系数。有两个相机校正所涉及的步骤:
引用
[1],z“灵活的摄像机标定新技术”。IEEE模式分析与机器智能.Vol。22日,11号,2000年,页1330 - 1334。
[2]么,J, o . Silven。“四步相机校正过程隐含的图像校正”,IEEE国际会议在计算机视觉和模式识别,1997年。
[3]Bouguet J.Y.“相机校正为Matlab工具箱”,在加州理工学院的计算机视觉技术。
[4]Bradski G。,A. Kaehler.学习OpenCV: OpenCV的计算机视觉库。塞瓦斯托波尔,CA: O ' reilly, 2008年。
版本历史
另请参阅
应用程序
对象
功能
Apri esempio
如果dispone di una versione modificata di questo esempio。Desideri aprire questo esempio con le modifiche星期二吗?
第一MATLAB
海脂肪clic苏联合国collegamento切corrisponde questo第一MATLAB:
Esegui il第一inserendolo所以nella隙缝di第一MATLAB。我浏览器web非supportano金宝app comandi MATLAB。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。