Подогнать цилиндр к облаку точек 3-D
подгоняет цилиндр к облаку точек с максимально допустимым расстоянием от внутренней точки до цилиндра. Эта функция использует алгоритм SAmple Consensus (MSAC) M-оценщика для поиска цилиндра.model = pcfitcylinder(ptCloudIn,maxDistance)
подгоняет цилиндр к облаку точек с дополнительными ограничениями ориентации, заданными входным вектором ориентации привязки 1 на 3.model = pcfitcylinder(ptCloudIn,maxDistance,referenceVector)
дополнительно задает максимально допустимое абсолютное угловое расстояние.model = pcfitcylinder(ptCloudIn,maxDistance,referenceVector,maxAngularDistance)
[ дополнительно возвращает линейные индексы во входную и исходящую точки на входе облака точек.model,inlierIndices,outlierIndices] = pcfitcylinder(ptCloudIn,maxDistance)
[___, дополнительно возвращает среднюю ошибку расстояния между внутренними точками и моделью.meanError] = pcfitcylinder(ptCloudIn,maxDistance)
[___] = pcfitcylinder(___, использует дополнительные параметры, указанные одним или несколькими Name,Value)Name,Value аргументы пары.
Функция возвращает геометрическую модель, описывающую цилиндр. Эта функция использует алгоритм SAmple Consensus (MSAC) M-оценщика для поиска цилиндра. Алгоритм MSAC является вариантом алгоритма RANdom SAmple Consolude (RANSAC).
Алгоритм подгонки для pcfitcylinder для функции требуются нормали облака точек. Следовательно, если Normal свойство для облака входных точек пустое, функция заполняет его. Когда функция заполняет Normal свойство использует шесть точек для размещения локального цилиндра. Если шесть точек не работают и фитинг не работает, попробуйте вызвать pcnormals функция, позволяющая выбрать количество используемых точек.
[1] Торр, П. Х. С. и А. Зиссерман. «MLESAC: новый надежный оценщик с приложением к оценке геометрии изображения». Компьютерное зрение и понимание изображений. Том 78, выпуск 1, апрель 2000 г., стр. 138-156.
affine3d | cylinderModel | pcdenoise | pcfitplane | pcfitsphere | pcmerge | pcplayer | pcread | pcregistericp | pcshow | pctransform | pcwrite | planeModel | pointCloud