класс cylinderModel

Объект для хранения параметрической цилиндрической модели

Синтаксис

model = cylinderModel(params)

Описание

Объект для хранения параметрической цилиндрической модели.

Конструкция

model = cylinderModel(params) создает параметрическую цилиндрическую модель из 1 7 входной вектор params, который описывает цилиндр.

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

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

Цилиндрические параметры, заданные как 1 7 скалярный вектор, содержащий семь параметров [x1, y1, z1, x2, y2, z2, r] это desribe цилиндр.

  • [x1, y1, z1] и [x2, y2, z2] являются центрами каждой поверхности заглушки цилиндра.

  • r является радиусом цилиндра.

Свойства

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

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

Цилиндрические параметры модели, сохраненные как 1 7 скалярный вектор, который описывает цилиндр [x1, y1, z1, x2, y2, z2, r], которые описывают цилиндр.

  • [x1, y1, z1] и [x2, y2, z2] являются центрами каждой поверхности заглушки цилиндра.

  • r является радиусом цилиндра.

Центр цилиндра, сохраненного как 1 3 вектор.

Высота цилиндра, сохраненного как скаляр.

Радиус цилиндра, сохраненного как скаляр.

Методы

графикПостройте цилиндр в окне рисунка

Примеры

свернуть все

Загрузите облако точек.

load('object3d.mat');

Отобразите облако точек.

figure
pcshow(ptCloud)
xlabel('X(m)')
ylabel('Y(m)')
zlabel('Z(m)')
title('Detect a Cylinder in a Point Cloud')

Установите максимальное расстояние точки к цилиндру (5 мм) для цилиндрического подбора кривой.

maxDistance = 0.005;

Установите видимую область ограничивать поиск.

roi = [0.4,0.6;-inf,0.2;0.1,inf];
sampleIndices = findPointsInROI(ptCloud,roi);

Установите ограничение ориентации.

referenceVector = [0,0,1];

Обнаружьте цилиндр в облаке точек и извлеките его.

model = pcfitcylinder(ptCloud,maxDistance,referenceVector,...
        'SampleIndices',sampleIndices);

Постройте цилиндр.

hold on
plot(model)

Введенный в R2015b