класс viewSet

Объект для данных об управлении для структуры от движения и визуальной одометрии

Синтаксис

vSet = viewSet

Описание

vSet = viewSet возвращает пустой объект viewSet, который хранит представления и связи между представлениями. Представление включает характерные точки и абсолютное положение камеры. Связь между двумя представлениями включает соответствия точки и относительное положение камеры между ними. Если вы заполняете  объект viewSet, можно использовать его, чтобы найти дорожки точки через несколько представлений и получить положения камеры, которые будут использоваться    функциями bundleAdjustment и triangulateMultiview.

Поддержка генерации кода:
Генерация кода поддержек: нет
Блок MATLAB function поддержек: Нет
Поддержка генерации кода, указания по применению и ограничения

Свойства

развернуть все

Эти свойства только для чтения.

Количество представлений, сохраненных как целое число.

Просмотрите атрибуты, сохраненные как таблица с четырьмя столбцами. Таблица содержит столбцы для ViewID, Points, Orientation и Location. Используйте метод poses, чтобы получить идентификаторы, ориентацию и местоположение для точек.

Попарные связи между представлениями, сохраненными как таблица с пятью столбцами. Столбцами является ViewID1, ViewID2, Matches, RelativeOrientation и RelativeLocation. Количество записей в таблице представляет количество связей. Каждый индекс в столбце Matches представляет связь между двумя представлениями, обозначенными представлением IDs.

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

развернуть все

Объект viewSet раньше хранил представления и связи между представлениями.

Методы

addConnectionДобавьте связь между двумя представлениями
addViewДобавьте новое представление, чтобы просмотреть объект набора
deleteConnectionУдалите связь между двумя представлениями от объекта набора представления
deleteViewУдалите существующее представление из объекта набора представления
findTracksНайдите соответствующие точки через несколько представлений
hasConnectionПроверяйте, существует ли связь между двумя представлениями
hasViewПроверяйте, существует ли представление
положенияВозвращает положения камеры, сопоставленные в представления
updateConnectionИзмените связь между двумя представлениями в объекте набора представления
updateViewИзмените существующее представление в объекте набора представления

Примеры

свернуть все

Загрузите изображения.

imageDir = fullfile(toolboxdir('vision'),'visiondata','structureFromMotion');
images = imageSet(imageDir);

Вычислите функции первого изображения.

I = rgb2gray(read(images, 1));
pointsPrev = detectSURFFeatures(I);
[featuresPrev,pointsPrev] = extractFeatures(I,pointsPrev);

Создайте объект viewSet.

vSet = viewSet;
vSet = addView(vSet,1,'Points',pointsPrev);

Вычислите функции и соответствия для остальной части изображений.

for i = 2:images.Count
 I = rgb2gray(read(images,i));
 points = detectSURFFeatures(I);
 [features, points] = extractFeatures(I,points);
 vSet = addView(vSet,i,'Points',points);
 pairsIdx = matchFeatures(featuresPrev,features);
 vSet = addConnection(vSet,i-1,i,'Matches',pairsIdx);
 featuresPrev = features;
end

Найдите дорожки точки.

tracks = findTracks(vSet);

Введенный в R2016a