normalRotation

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

Описание

пример

tform = normalRotation(model,referenceVector) возвращает rigid3d объект tform, это задает преобразование для вектора нормали плоскости к referenceVector. model planeModel. referenceVector 1 3 вектор.

Примеры

свернуть все

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

veloReader = velodyneFileReader('lidarData_ConstructionRoad.pcap','HDL32E');

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

frameNumber = 1;
ptCloud  = readFrame(veloReader,frameNumber);

Найдите наземную плоскость.

maxDistance = 0.4;
referenceVector = [0 0 1];

groundPlane = pcfitplane(ptCloud,maxDistance,referenceVector);

Преобразуйте наземную плоскость, таким образом, что это параллельно плоскости X-Y.

tform = normalRotation(groundPlane,referenceVector);

Преобразуйте облако точек.

ptCloudOut = pctransform(ptCloud,tform);

Отобразите исходное и преобразованное облако точек.

planeParams = groundPlane.Parameters * pinv(tform.T);
transformedPlane = planeModel(planeParams);
figure;
pcshowpair(ptCloudOut,ptCloud);
hold on;
plot(groundPlane, 'Color', 'magenta');
plot(transformedPlane, 'Color', 'green');

Figure contains an axes. The axes contains 4 objects of type scatter, patch.

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

свернуть все

Параметрическая плоская модель возвращена planeModel.

Ссылочный вектор в виде 1 3 вектора.

Смотрите также

Функции

Объекты

Введенный в R2020b