matlab绘制三维点云和点云凸包
效果展示
文章来源:https://www.toymoban.com/news/detail-462792.html
1.在matlab命令窗口输入guide打开matlab的ui开发界面,按照下图的样式绘制界面。
文章来源地址https://www.toymoban.com/news/detail-462792.html
2. 在GUIDE中鼠标右键点击选择素材文件夹按键,选择查看回调=>callback编辑回调函数。
function pushbutton1_Callback(hObject, eventdata, handles)
binPath = uigetdir();
fileName = dir(fullfile(binPath,'*.ply'));
set(handles.edit1,'String',binPath);
[m,~] = size(fileName);
for i = 1:m
listbox(i) = string(fileName(i).name);
end
set(handles.listbox1,'string',listbox);
3. 在GUIDE中鼠标右键点击绘制点云按键,选择查看回调->callback编辑回调函数。
function pushbutton2_Callback(hObject, eventdata, handles)
Path = get(handles.edit1,'string');
num = get(handles.listbox1,'value');
filename = get(handles.listbox1,'string');
f = fullfile(Path,filename(num));
fid = pcread(string(f));
axes(handles.axes);
cla reset;
pcshow(fid);
hold on;grid on;
pause(1);
4. 在GUIDE中鼠标右键点击绘制凸包,编辑回调函数
function pushbutton3_Callback(hObject, eventdata, handles)
Path = get(handles.edit1,'string');
num = get(handles.listbox1,'value');
filename = get(handles.listbox1,'string');
f = fullfile(Path,filename(num));
fid = pcread(string(f));
a = double(fid.Location);
k = convhull(a,'simplify', true);
axes(handles.axes);
trimesh(k,a(:,1),a(:,2),a(:,3),'FaceAlpha',0.5);
5. 操作流程
- 点击选择素材文件夹按键,选择素材所在的文件夹。
- 在第一个文本框里会显示出所选择的文件夹路径。
- 在下面的列表框中会显示所选择文件夹下的所有后缀为ply的文件。
- 点击需要绘图的点云数据。
- 点击绘制点云,将绘制点云图像。
- 点击绘制凸包,将绘制所选择的文件凸包。
6.点击下载免费
到了这里,关于matlab绘制三维点云和点云凸包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!