showExtrinsics

Визуализируйте внешние параметры камеры

Описание

пример

showExtrinsics(cameraParams) представляет 3-D визуализацию внешних параметров одной калиброванной камеры или калиброванной стереопары. Графики функций 3-D представление калибровочных шаблонов относительно камеры. cameraParams введите содержит любого cameraParameters, fisheyeParameters, или stereoParameters объект, который estimateCameraParameters или estimateFisheyeParameters функция возвращается.

showExtrinsics функция показывает 3-D представление калибровочного шаблона как выпуклый многоугольник, содержащий весь обнаруженный keypoints шаблона в исходном калибровочном изображении.

пример

showExtrinsics(cameraParams,view) визуализация отображений параметров значения внешних параметров камеры с помощью стиля задана view входной параметр.

пример

showExtrinsics(___,Name,Value) дополнительные опции использования заданы одним или несколькими Name,Value парные аргументы, с помощью любого из предыдущих синтаксисов.

пример

ax = showExtrinsics(___) возвращает ось графика, с помощью любого из предыдущих синтаксисов.

Примеры

свернуть все

Создайте набор калибровочных изображений.

images = imageDatastore(fullfile(toolboxdir('vision'),'visiondata', ...
  'calibration','webcam'));
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 = estimateCameraParameters(imagePoints,worldPoints, ...
                                  'ImageSize',imageSize);

Визуализируйте местоположения шаблона.

figure
showExtrinsics(cameraParams);

Figure contains an axes object. The axes object with title Extrinsic Parameters Visualization contains 15 objects of type patch, text, line.

Визуализируйте местоположения камеры.

figure
showExtrinsics(cameraParams,'patternCentric');

Figure contains an axes object. The axes object with title Extrinsic Parameters Visualization contains 27 objects of type patch, text, line.

Задайте калибровочные изображения.

imageDir = fullfile(toolboxdir('vision'),'visiondata',...
        'calibration','circleGrid','stereo');
leftImages = imageDatastore(fullfile(imageDir,'left'));
rightImages = imageDatastore(fullfile(imageDir,'right'));
leftImageFileNames = leftImages.Files(2:2:10);
rightImageFileNames = rightImages.Files(2:2:10);

Задайте круговые размерности шаблона сетки и обнаружьте шаблон в изображениях.

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

Задайте мировые координаты для круговой сетки keypoints. Расстояние между центрами находится в миллиметрах.

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

Калибруйте систему стереофотоаппарата. Обе камеры имеют то же разрешение.

I = readimage(leftImages,1); 
imageSize = [size(I,1),size(I,2)];
cameraParams = estimateCameraParameters(imagePoints,worldPoints,...
    'ImageSize',imageSize);

Визуализируйте местоположения шаблона.

figure
showExtrinsics(cameraParams)

Визуализируйте местоположения камеры.

figure
showExtrinsics(cameraParams,'patternCentric')

Входные параметры

свернуть все

Объект, содержащий параметры одной камеры или стереопары в виде любого cameraParameters, fisheyeParameters, или stereoParameters объект. Можно создать одну камеру или входной объект стереопары с помощью estimateCameraParameters функция. Входной объект параметров подозрительного взгляда создается с помощью estimateFisheyeParameters.

Можно также использовать приложение Camera Calibrator, чтобы создать cameraParameters входной объект или использование приложение Stereo Camera Calibrator, чтобы создать stereoParameters входной объект. Смотрите Используя Одно Приложение Camera Calibrator и Используя Приложение Stereo Camera Calibrator.

Камера или центральное шаблоном представление в виде 'CameraCentric' или 'PatternCentric'. view введите устанавливает визуализацию для параметров значения внешних параметров камеры. Если вы сохраняете свою камеру стационарной при перемещении калибровочного шаблона, устанавливаете view к 'CameraCentric'. Если шаблон является стационарным, в то время как вы перемещаете свою камеру, устанавливаете ее на 'PatternCentric'.

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'HighlightIndex', [1, 4] устанавливает 'HighlightIndex' к шаблонам 1 и 4.

Подсветите индекс выбора в виде скаляра или вектора из целых чисел. Например, если вы хотите подсветить шаблоны 1 и 4, используйте [1, 4]. Выполнение так увеличивает непрозрачность шаблонов 1 и 4 в отличие от остальной части шаблонов.

Выведите оси в виде разделенной запятой пары, состоящей из 'Parent'и оси. Можно получить указатель текущей системы координат путем возврата функции выходной переменной:

ax = showExtrinsics(cameraParams)

Можно также использовать gca функция, чтобы получить указатель текущей системы координат.

Пример: showExtrinsics(cameraParams,'Parent',ax)

Выходные аргументы

свернуть все

Указатель текущей системы координат, возвращенный как скалярное значение. Функция возвращает указатель на текущую систему координат для текущей фигуры.

Пример: ax = showExtrinsics(cameraParams)

Введенный в R2014a