日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > 循环神经网络 >内容正文

循环神经网络

利用matlab处理点云

發布時間:2025/3/21 循环神经网络 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用matlab处理点云 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文主要分享利用matlab點云工具的相關模塊來處理點云,并通過點云輪廓對點云體積進行簡單的估計測量。

目錄

?

  • 利用matlab處理點云
      • 目錄
    • 主要的操作流程圖
    • 2具體流程
      • 1 點云的讀入和顯示
      • 2 點云的處理

?


1.主要的操作流程圖

.ply點云文件讀入點云數據顯示點云數據獲取點云輪廓求得點云所占體積結束處理

2、具體流程

2.1 點云的讀入和顯示

假設有一個名為pointcloud.ply的點云文件。——ply格式簡介

pc = pcread('path\pointcloud.ply'); %讀入點云文件 pcshow(pc) %顯示點云

這里需要注意.ply文件中頭文件類似這樣的格式:

element vertex 12 property float x property float y property float z property uchar blue property uchar green property uchar red

其中x,y,x是三維點云的空間坐標,后面的b,g,r代表每個點的顏色,后一項目對于紋理映射和顯示很重要,可以分別提取出來,隨后用pcshow來顯示;

pcread讀入的文件后生成

Location: [850554×3 single]Color: [850554×3 uint8]Normal: [850554×3 single]Count: 850554XLimits: [6.5701 15.5542]YLimits: [-1.5363 4.2114]ZLimits: [-15.7035 0.2691]

我們可以提取出其中的位置和顏色來進行紋理映射并畫圖

figure(1) pc_tmp(:,1) = pc.Location(:,3); %調整點云的方位的和xyz軸 pc_tmp(:,2) = pc.Location(:,1); pc_tmp(:,3) = pc.Location(:,2); pc_col = pc.Color pcshow(pc_tmp,pc.Color)

這里利用CMVS/PMVS方法生成的點云數據作為例子:

?


2.2 點云的處理

為了求得這一建筑物的體積,通過獲得這一建筑物的輪廓包絡來得到其體積。主要利用matlab中的alphaShape函數和volum

alphaShape
此函數主要用于從離散的三維空間點云中提取邊緣并建立對應的包絡:
shp = alphaShape(x,y,z)

主要控制參數有alpha值,用于控制生產輪廓的精細程度(越小越細膩)
‘RegionThreshold’ 忽略生成包絡中的小物體,壓制小物體的閾值體積
‘HoleThreshold’ 填充包絡中的空洞,生成完整的體積形態
- *alphaShape(x,y,z,alpha,’HoleThreshold ‘,xx,’RegionThreshold’,xx)

需要注意的是需要將點云的位置坐標轉換為雙精度的類型。

x=pc.Location(:,3);y=pc.Location(:,1);z=pc.Location(:,2);%get point out x = double(x); y=double(y); z= double(z);%獲取點云坐標 alp = 5;region = 0.75;%hole = 1; region = 0.75; shp = alphaShape(x,y,z,alp);%生產點云的包絡數據 %ref:http://cn.mathworks.com/help/matlab/ref/alphashape.html plot(shp)%顯示點云包絡 v= volume(shp); title(['v= 'num2str(v) ,'m3'])?%計算體積并顯示

上圖為生成的點云包絡(需要仔細條件參數以生成符合需求精度的包絡),通過volum可計算此包絡所占粗略的體積。

總結

以上是生活随笔為你收集整理的利用matlab处理点云的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。