matlab绘制三维点云和点云凸包

这篇具有很好参考价值的文章主要介绍了matlab绘制三维点云和点云凸包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

matlab绘制三维点云和点云凸包

效果展示

matlab绘制三维点云和点云凸包

1.在matlab命令窗口输入guide打开matlab的ui开发界面,按照下图的样式绘制界面。

matlab绘制三维点云和点云凸包文章来源地址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. 操作流程

  1. 点击选择素材文件夹按键,选择素材所在的文件夹。
  2. 在第一个文本框里会显示出所选择的文件夹路径。
  3. 在下面的列表框中会显示所选择文件夹下的所有后缀为ply的文件。
  4. 点击需要绘图的点云数据。
  5. 点击绘制点云,将绘制点云图像。
  6. 点击绘制凸包,将绘制所选择的文件凸包。

6.点击下载免费

到了这里,关于matlab绘制三维点云和点云凸包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • MATLAB 之 绘制三维图形的基本函数、三维曲面和其他三维图形

    三维图形具有更强的数据表现能力,为此 MATLAB 提供了丰富的函数来绘制三维图形。绘制三维图形与绘制二维图形的方法十分类似,很多都是在二维绘图的基础上扩展而来。 基本的三维图形函数为 plot3 ,它是将二维绘图函数 plot 的有关功能扩展到三维空间,用来绘制三维曲线

    2024年02月06日
    浏览(44)
  • matlab奇技淫巧——绘制三维地图

      在数据处理工作中,常常会用到地图的绘制,最常用的自然是绘制平面的区域/全球地图,通过 即可绘制,效果如下,其中经度为 − 180 ∼ 180 -180sim180 − 180 ∼ 180 ,负为西经,正为东经,纬度为 − 90 ∼ 90 -90sim90 − 90 ∼ 90 ,北纬为正,南纬为负。   不过本博文题目

    2024年02月07日
    浏览(56)
  • matlab使用教程(8)—绘制三维曲面图

            MATLAB 在 x-y 平面中的网格上方使用点的 z 坐标来定义曲面图,并使用直线连接相邻的点。 mesh 和 surf 函数以三维形式显示曲面图。         • mesh 生成仅使用颜色来标记连接定义点的线条的线框曲面图。         • surf 使用颜色显示曲面图的连接线和面。

    2024年02月14日
    浏览(48)
  • Matlab三维折线图绘制–surf 函数的使用

      最近在写毕业论文,整理数据需要绘制一个简单的三维图,简单做个分享! 先上结果图: 最后附上代码: clc,clear,close all; % filename = \\\'outFFE\\\'; % namelist = dir(filename+\\\'*.mat\\\'); % len = length(namelist); x = 5:2:25;% x轴 y = 2:2:12;% y轴 %xy坐标平面对应的z值 z = zeros(length(y),length(x)); z(1,1)=3.

    2024年02月15日
    浏览(42)
  • Matlab论文插图绘制模板第124期—三维气泡图

    在之前的文章中,分享了很多Matlab 气泡图 的绘制模板: 进一步,再来分享一下 三维气泡 图 。 先来看一下成品效果: 特别提示:本期内容『数据+代码』已上传资源群中,加群的朋友请自行下载。有需要的朋友可以关注同名公号【阿昆的科研日常】,后台回复【绘图

    2024年02月05日
    浏览(53)
  • Matlab报错pcolor矩阵维度不一致(三维图像绘制)

    首先来说 pcolor 是可以很好的实现三维图像的: 简单来说,原来我们的数据是这样的: 我们需要把数据换成矩阵的形式,像下面这样: 你看,x=1,y=10,对应的z就是1,我们就是要换成这样的矩阵形式。下面说怎么换,以我的例子来说,我的x是50031✖1的矩阵,y是50031✖1的矩阵

    2024年02月05日
    浏览(44)
  • Open3D 计算点云凸包的体积和表面积

    点云的凸包是包含所有点的最小凸集。open3d实现了计算凸包的方法: compute_convex_hull .这个接口的实现基于Qhull。更多详细内容见:Open3D 计算点云凸包。 构建出的凸包也是mesh三角网模型,因此使用Open3D中计算模型体积和表面积的函数即可计算,更多详细内容见:Open3D 计算点云

    2024年02月15日
    浏览(44)
  • 16- OpenCV:轮廓的发现和轮廓绘制、凸包

    目录 一、轮廓发现 1、轮廓发现(find contour in your image) 的含义 2、相关的API 以及代码演示 二、凸包 1、凸包(Convex Hull)的含义 2、Graham扫描算法- 概念介绍 3、cv::convexHull 以及代码演示 三、轮廓周围绘制矩形和圆形框 一、轮廓发现 1、轮廓发现(find contour in your image) 的含义 轮

    2024年02月21日
    浏览(39)
  • 十九.在ROS系统基于点云和视觉图像数据融合构建3D点云场景

    一. 背景介绍         现在很多智能导航场景都涉及到激光(毫米波,固态等)雷达和相机视觉信息融合,这里激光雷达一般都是指多线激光雷达,16线,64线,甚至更多线数. 但多线激光雷达动不动数万的价格,让很多技术人员无法尝试.我前面写过一篇使用单线激光雷达和相机视觉融合

    2023年04月08日
    浏览(52)
  • 点云从入门到精通技术详解100篇-基于点云和图像融合的智能驾驶目标检测(中)

    目录 2.1.2 数据源选型分析 2.2 环境感知系统分析 2.2.1 传感器布置方案分析

    2024年01月21日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包