当前位置: 首页 > news >正文

化妆品可做的团购网站有哪些有个能写文章做任务的网站

化妆品可做的团购网站有哪些,有个能写文章做任务的网站,怎样用代码制作网站,建设银行网站密码忘记了咋办本次分享的是使用matlab 2020a(因为只安装了这个,有条件的可以安装最新版本)进行点云的读取、原始显示、自定义显示和保存。 MATLAB 在点云处理方面提供了完整的工作流:从读取、可视化、自定义增强到最终保存。以下围绕这四个环节,结合典型代…

        本次分享的是使用matlab 2020a(因为只安装了这个,有条件的可以安装最新版本)进行点云的读取、原始显示、自定义显示和保存。

        MATLAB 在点云处理方面提供了完整的工作流:从读取、可视化、自定义增强到最终保存。以下围绕这四个环节,结合典型代码与应用场景做系统梳理,方便快速上手并扩展至实际项目。

一、点云读取:格式覆盖与最佳实践
        1. 主流格式  
        • PLY / PCD / LAS:工业、测绘、SLAM 最常见  
        • TXT / CSV:科研或自采数据,字段灵活  
        • BAG(ROS):机器人/自动驾驶时间序列数据  

        2. 核心函数  
        MATLAB 原生函数即可“一键”完成:  

% PLY / PCD
ptCloud = pcread('scene.ply');          % 返回 pointCloud 对象% LAS(机载 LiDAR)
[ptCloud, info] = lasread('tile.las');  % 自带地理坐标、强度、回波次数% TXT(无文件头,仅 XYZ)
xyz  = load('scan.txt');                % 或 readmatrix / readtable
pc   = pointCloud(xyz);                 % 手工封装成对象% ROS Bag(需 Robotics System Toolbox)
bag  = rosbag('lidar.bag');
msgs = select(bag,'MessageType','sensor_msgs/PointCloud2');
pc   = readMessages(msgs(1));           % 单元数组,再取点云

        3. 大文件技巧  
        • 范围裁剪:lasread(…,'Range',[xmin xmax ymin ymax zmin zmax])  
        • 分块循环:先 lasinfo 查点数,再按 RecordID 分段读取,避免一次性爆内存  
二、原始显示:快速验证数据完整性
        1. 标准可视化  

pcshow(ptCloud);          % 自动渲染颜色/反射率
xlabel('X'); ylabel('Y'); zlabel('Z');
axis equal; grid on;

2. 多帧/多视角  

figure;
pcshow(ptCloud1); hold on;
pcshow(ptCloud2,'MarkerSize',20,'Color','r');  % 差异对比
view(45,20);

三、自定义显示:让“数据”变“信息”
        1. 颜色映射  
        • 按高度(Z)上色:  

z   = ptCloud.Location(:,3);
c   = jet(length(z));       % 伪彩
col = z / max(z);           % 0-1 归一化
pcshow(ptCloud.Location,'Color',c);
colorbar; colormap(jet);

        • 按强度/回波:替换 z 为 ptCloud.Intensity 即可。

        2. 法向量、曲率叠加  

pcnormals(ptCloud);         % 在 pcshow 上绘制法矢

        3. 交互式裁剪与感兴趣区域 (ROI)  

[~,roiBox] = pcshow(ptCloud);
% 鼠标拉框后返回 roiBox,可立即 select:
inIdx = findPointsInROI(ptCloud,roiBox);
pcRoi = select(ptCloud,inIdx);
figure; pcshow(pcRoi);

        4. 动画/时序播放(车载/移动扫描)  

for k = 1:length(pcCell)pcshow(pcCell{k});drawnow; pause(0.1);
end

四、点云保存:格式转换与下游对接
        1. 导出函数  

% PLY / PCD
pcwrite(ptCloud,'filtered.ply','PLYFormat','binary'); % 体积小
pcwrite(ptCloud,'down.pcd');% LAS(保留地理信息)
laswrite(ptCloud,'out.las','Version','1.4');% TXT(供 Python / PCL 读)
xyz = ptCloud.Location;
writematrix(xyz,'out.xyz','Delimiter','tab');

        2. 自动批量流水线示例  

inDir  = 'raw_LAS/';  outDir = 'proc_LAS/';
files  = dir(fullfile(inDir,'*.las'));
parfor i = 1:length(files)[pc,info] = lasread(fullfile(inDir,files(i).name));pcDown    = pcdownsample(pc,'gridAverage',0.05); % 5 cm 格网laswrite(pcDown,fullfile(outDir,files(i).name));
end

五、典型应用领域与扩展
        1. 测绘 / 城市信息模型 (BIM/CIM)  
        机载 LiDAR 读取 LAS → 去噪、滤波 → 生成 DEM/DSM → 保存 GeoTIFF 或矢量轮廓。

        2. 自动驾驶 / 机器人  
        实时 ROS Bag → 分段读取 → 地面分割 (segmentGroundFromLidarData) → 障碍物聚类 → 保存为 PCD 供 SLAM 后端。

        3. 工业检测与逆向工程  
        PLY 读入 → 配准 (pcregrigid) → 表面重建 (alphaShape / triangulation) → STL 输出,用于 3D 打印或 CFD 网格。

        4. 建筑 / 文化遗产  
        高分辨率扫描 → 自定义颜色高度图 → 生成正射影像 → 报告展示;交互式 ROI 裁剪用于局部修复分析。
六、小结:一分钟记住“点云四步曲”
        1) 读:pcread / lasread / load → pointCloud 对象  
        2) 看:pcshow (+pcnormals/pcshowpair)  
        3) 改:颜色、ROI、滤波、配准、重建…(全部基于对象句柄)  
        4) 存:pcwrite / laswrite / writematrix,格式随心转  

        掌握以上流程,即可在 MATLAB 中完成“端到端”点云处理任务,为测绘、自动驾驶、工业检测等应用提供快速原型与算法验证平台。

        本次使用的数据是兔砸,就是兔砸,还是兔砸!

一、点云读取、显示和保存程序

function pointCloudGUI
% PointCloudGUI  简易点云浏览器(Matlab R2020a)
%  支持 pcd/ply/txt 读取、染色、保存%% 主窗口
fig = figure('Name','PointCloud GUI  (R2020a)','NumberTitle','off',...'Units','pixels','Position',[200 100 900 700],...'MenuBar','none','ToolBar','none');%% 左侧按钮面板
uicontrol('Style','text','Units','pixels','Position',[20 640 120 20],...'String','文件操作','BackgroundColor',fig.Color,'FontWeight','bold');uicontrol('Style','push','Units','pixels','Position',[20 600 120 30],...'String','读取点云','Callback',@cbRead);uicontrol('Style','push','Units','pixels','Position',[20 560 120 30],...'String','保存当前点云','Callback',@cbSave);uicontrol('Style','text','Units','pixels','Position',[20 510 120 20],...'String','颜色显示','BackgroundColor',fig.Color,'FontWeight','bold');uicontrol('Style','push','Units','pixels','Position',[20 470 120 30],...'String','原始颜色','Callback',@(s,e) cbColor('orig'));uicontrol('Style','push','Units','pixels','Position',[20 430 120 30],...'String','自定义单色','Callback',@(s,e) cbColor('mono'));uicontrol('Style','push','Units','pixels','Position',[20 390 120 30],...'String','随机染色','Callback',@(s,e) cbColor('rand'));%% 右侧坐标轴用于显示
ax = axes('Units','pixels','Position',[170 50 700 600],...'Color',[0.2 0.2 0.2],'Box','on');%% 全局变量
global gCloud gAxes gFile
gCloud  = [];      % 当前点云
gAxes   = ax;      % 显示轴
gFile   = '';      % 文件名%% 回调函数function cbRead(~,~)[fn,pn] = uigetfile({'*.pcd;*.ply;*.txt','点云文件 (*.pcd,*.ply,*.txt)'},...'选择点云');if isequal(fn,0), return, endgFile = fullfile(pn,fn);ext = lower(fn(max(0,end-2):end));switch extcase 'pcd'gCloud = pcread(gFile);case 'ply'% matlab 的 pcread 支持 plygCloud = pcread(gFile);otherwise  % txtM = dlmread(gFile);if size(M,2)<3errordlg('TXT 至少需要 xyz 三列','格式错误');returnendxyz = M(:,1:3);if size(M,2)>=6   % 有 rgbrgb = M(:,4:6);if max(rgb(:))>1rgb = rgb/255;   % 0-1 之间endgCloud = pointCloud(xyz,'Color',rgb);elsegCloud = pointCloud(xyz);endendupdateView();endfunction cbSave(~,~)if isempty(gCloud)errordlg('先读取点云','提示');returnend[fn,pn] = uiputfile('*.ply','保存为 PLY', ...[datestr(now,'yyyymmdd_HHMMSS') '.ply']);if isequal(fn,0), return, endpcwrite(gCloud,fullfile(pn,fn),'PLYFormat','binary');endfunction cbColor(mode)if isempty(gCloud)errordlg('先读取点云','提示');returnendxyz = gCloud.Location;switch modecase 'orig'   % 原始if ~isempty(gCloud.Color)clr = gCloud.Color;elseclr = [];endcase 'mono'   % 自定义单色c = uisetcolor([0.5 0.5 0.5],'选择单色');if isnan(c(1)), return, endclr = repmat(c,size(xyz,1),1);case 'rand'   % 随机clr = rand(size(xyz,1),3);endgCloud = pointCloud(xyz,'Color',clr);updateView();endfunction updateView()cla(gAxes);if isempty(gCloud), return, endpcshow(gCloud,'Parent',gAxes);title(gAxes, sprintf('点数 = %d',size(gCloud.Location,1)));axis(gAxes,'tight'); view(3); grid onend
end

一、点云读取、显示和保存结果

        可以看出,点云读取的那是相当快,而且处理的也不慢,界面非常友好。还有插一嘴,不得不说呀兄弟们,matlab的发展是真的快,有些功能比python好用太多了。详细的大家可以对比下和以前python的区别。

就酱,下次见^-^

http://www.dtcms.com/a/516783.html

相关文章:

  • 【JVM】详解 类加载器与类加载过程
  • 织梦移动网站模板免费下载佛山国内快速建站
  • 九九乘法表(C语言)
  • AI赋能:下一代海外社媒推广的智能化路径
  • i2c 时序解析
  • 基于线程池的配电房图像检测
  • 天河网站+建设信科网络龙口网页设计
  • 企业官网网站建设咨询手机网站模板下载免费
  • 线性代数直觉(三):特征值(eigenvalue)与特征向量(eigenvector)为何物?
  • 学生个人网站建设模板郑州开发软件公司
  • [Agent可视化] 智能体核心(Rust) | WASI沙箱 | `grpc_server.rs`
  • 东莞网站建设方案托管桂林做网站的公司有哪些
  • 所有搜索引擎蜘蛛不来网站了最新军事报道
  • Java | Lombok @Builder.Default 排障指南:为什么 build 时默认值丢失?
  • 东莞网站快速优化排名中国品牌网站建设
  • 计算机网络 网站代理公司注册新公司的费用
  • Linux下的TCP滑动窗口
  • 从CCLKIE到EtherCAT:汇川PLC在大型选矿厂的伺服通讯升级之路
  • wordpress 建站 知乎app开发app制作公司
  • wordpress代码创建子站点建设谷歌公司网站费用
  • 多资产回测实战 | 用 DolphinDB 搭建股票期货对冲与期权套利策略
  • 企业营销管理软件网站优化查询
  • 数字孪生大屏实战:山海鲸可视化如何让制造业‘透明化
  • Linux 内存 --- get_user_pages/pin_user_pages函数
  • 《探索 Docker+Neko+cpolar 实现跨网共享浏览器的无限可能》
  • 调用百度云语音识别服务——实现c++接口识别语音
  • 浅谈常见的八类数据库加密技术
  • Beyond Compare 5 for Mac 好用的文件对比工具
  • 济南专业做网站公司哪家好做爰全过程免费的视频凤凰网站
  • 顶俏模式分析:低价洗衣液与三级分销机制的市场争议