www.gusucode.com > vision 源码程序 matlab案例代码 > vision/DetectCylinderInPointCloudExample.m
%% Detect Cylinder in Point Cloud % %% % Load the point cloud. load('object3d.mat'); %% % Display point cloud. figure pcshow(ptCloud) xlabel('X(m)') ylabel('Y(m)') zlabel('Z(m)') title('Detect a Cylinder in a Point Cloud') %% % Set the maximum point-to-cylinder distance (5 mm) for the cylinder % fitting. maxDistance = 0.005; %% % Set the region of interest to constrain the search. roi = [0.4,0.6;-inf,0.2;0.1,inf]; sampleIndices = findPointsInROI(ptCloud,roi); %% % Set the orientation constraint. referenceVector = [0,0,1]; %% % Detect the cylinder in the point cloud and extract it. model = pcfitcylinder(ptCloud,maxDistance,referenceVector,... 'SampleIndices',sampleIndices); %% % Plot the cylinder. hold on plot(model)