主要内容

showExtrinsics

可视化外部相机参数

描述

例子

showExtrinsics (cameraParams呈现单个校准相机或校准立体对的外部参数的三维可视化。该函数绘制相对于摄像机的校准模式的3-D视图。的cameraParams输入包含cameraParametersfisheyeParameters,或stereoParameters对象,其中estimateCameraParametersestimateFisheyeParameters函数返回。

showExtrinsics函数将校准模式的三维视图显示为一个包含原始校准图像中所有检测到的模式关键点的凸多边形。

例子

showExtrinsics (cameraParams视图属性指定的样式显示相机外部参数的可视化视图输入。

例子

showExtrinsics (___名称,值使用一个或多个指定的其他选项名称,值对参数,使用前面的任何语法。

例子

斧头= showExtrinsics (___使用前面任何一种语法返回绘图轴。

例子

全部折叠

创建一组校准图像。

图片= imageDatastore(fullfile(toolboxdir(“愿景”),“visiondata”...“校准”“摄像头”));imageFileNames = images.Files(1:5);

检测校准模式。

[imagePoints,boardSize] = detectCheckerboardPoints(imageFileNames);

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

squareSide = 25;worldPoints = generateCheckerboardPoints(boardSize,squareSide);

校准相机。

I = readimage(images,1);imageSize = [size(I, 1), size(I, 2)];cameraParams = estimatecamerparameters (imagePoints,worldPoints,...“图象尺寸”、图象尺寸);

可视化模式位置。

图showExtrinsics (cameraParams);

图中包含一个轴对象。标题为Extrinsic Parameters Visualization的axes对象包含patch、text、line等类型的15个对象。

可视化相机位置。

图showExtrinsics (cameraParams,“patternCentric”);

图中包含一个轴对象。标题为Extrinsic Parameters Visualization的axes对象包含27个类型为patch、text、line的对象。

指定校准图像。

imageDir = fullfile(toolboxdir(“愿景”),“visiondata”...“校准”“circleGrid”“立体”);leftImages = imageDatastore(fullfile(imageDir,“左”));右timages = imageDatastore(fullfile(imageDir,“对”));leftImageFileNames = leftImages.Files(2:2:10);righttimagefilenames = righttimages . files (2:2:10);

定义圆网格图案尺寸,检测图像中的图案。

patternDims = [4 11];imagePoints = detectCircleGridPoints(leftImageFileNames,...rightImageFileNames patternDims);

为圆形网格关键点指定世界坐标。中心距离单位为毫米。

centerDistance = 36.5;worldPoints = generateCircleGridPoints(patternDims,centerDistance);

校准立体摄像系统。两台相机的分辨率相同。

I = readimage(leftImages,1);imageSize = [size(I,1),size(I,2)];cameraParams = estimatecamerparameters (imagePoints,worldPoints,...“图象尺寸”、图象尺寸);

可视化模式位置。

图showExtrinsics (cameraParams)

图中包含一个轴对象。标题为Extrinsic Parameters Visualization的axes对象包含patch、text、line等类型的18个对象。

可视化相机位置。

图showExtrinsics (cameraParams,“patternCentric”

图中包含一个轴对象。标题为“外部参数可视化”的axis对象包含patch、text、line类型的62个对象。

输入参数

全部折叠

对象,其中包含单个相机或立体声对的参数,指定为cameraParametersfisheyeParameters,或stereoParameters对象。属性可以创建单个相机或立体声对输入对象estimateCameraParameters函数。鱼眼参数输入对象是使用estimateFisheyeParameters

你也可以使用相机校准器应用程序来创建cameraParameters输入对象,或使用立体摄像机校准器应用程序来创建stereoParameters输入对象。看到使用单相机校准器应用程序而且使用立体相机校准器应用程序

以相机或模式为中心的视图,指定为“CameraCentric”“PatternCentric”.的视图输入设置相机外部参数的可视化。如果您在移动校准模式时保持相机静止,请设置视图“CameraCentric”.如果模式是静止的,当你移动你的相机,设置为“PatternCentric”

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:“HighlightIndex”(1、4)设置“HighlightIndex”到模式1和模式4。

突出显示选择索引,指定为整数的标量或向量。例如,如果您想突出显示模式1和4,请使用(1、4).与其他模式相比,这样做增加了模式1和模式4的不透明度。

输出轴,指定为逗号分隔的对,由'还有一把斧头。你可以通过将函数返回给输出变量来获得当前的轴句柄:

斧头showExtrinsicscameraParams

你也可以使用gca函数获取当前轴句柄。

例子:showExtrinsics (cameraParams,‘父’,ax)

输出参数

全部折叠

当前轴句柄,作为标量值返回。该函数将句柄返回到当前图形的当前轴。

例子:ax = showExtrinsics(cameraParams)

版本历史

在R2014a中引入