planeModel

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

Описание

Создайте и сохраните параметрическую плоскость, основанную на модели на параметрах, которые описывают плоскость.

Создание

Описание

пример

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

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

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

Плоские параметры в виде вектора 1 на 4. Этот вход задает Parameters свойство. Эти четыре параметра [a, b, c, d] описывают уравнение для плоскости:

ax+by+cz+d=0

Свойства

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

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

Плоские параметры модели, сохраненные как вектор 1 на 4. Эти параметры заданы Parameters входной параметр.

Вектор нормали плоскости, сохраненной как 1 3 вектор. [a, b, c] вектор задает ненормированный вектор нормали плоскости.

Функции объекта

plotПостройте плоскость в окне рисунка
normalRotationВычислите преобразовывают для вращения нормального к плоскости

Примеры

свернуть все

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

load('object3d.mat')

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

figure
pcshow(ptCloud)
xlabel('X(m)')
ylabel('Y(m)')
zlabel('Z(m)')
title('Original Point Cloud')

Figure contains an axes object. The axes object with title Original Point Cloud contains an object of type scatter.

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

maxDistance = 0.02;

Установите вектор нормали плоскости.

referenceVector = [0,0,1];

Установите максимальное угловое расстояние до 5 градусов.

maxAngularDistance = 5;

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

[model1,inlierIndices,outlierIndices] = pcfitplane(ptCloud,...
            maxDistance,referenceVector,maxAngularDistance);
plane1 = select(ptCloud,inlierIndices);
remainPtCloud = select(ptCloud,outlierIndices);

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

roi = [-inf,inf;0.4,inf;-inf,inf];
sampleIndices = findPointsInROI(remainPtCloud,roi);

Обнаружьте левую стену и извлеките ее из остающегося облака точек.

[model2,inlierIndices,outlierIndices] = pcfitplane(remainPtCloud,...
            maxDistance,'SampleIndices',sampleIndices);
plane2 = select(remainPtCloud,inlierIndices);
remainPtCloud = select(remainPtCloud,outlierIndices);

Постройте эти две плоскости и остающиеся точки.

figure
pcshow(plane1)
title('First Plane')

Figure contains an axes object. The axes object with title First Plane contains an object of type scatter.

figure
pcshow(plane2)
title('Second Plane')

Figure contains an axes object. The axes object with title Second Plane contains an object of type scatter.

figure
pcshow(remainPtCloud)
title('Remaining Point Cloud')

Figure contains an axes object. The axes object with title Remaining Point Cloud contains an object of type scatter.

Введенный в R2015b