Main Content

La traduzione di questa pagina non è aggiornata. Fai clic qui per vedere l'ultima versione in inglese.

Elaborazione a nuvola di punti

Pre-elaborare, visualizzare, registrare, adattare forme geometriche, costruire mappe, implementare algoritmi SLAM e utilizzare il Deep Learning con nuvole di punti tridimensionali

Una nuvola di punti è un insieme di punti di dati nello spazio tridimensionale. L'insieme dei punti rappresenta una forma o un oggetto tridimensionale. Ogni punto dell'insieme di dati è rappresentato da una coordinata geometrica x, y e z. Le nuvole di punti forniscono un mezzo per assemblare un gran numero di singole misurazioni spaziali in un set di dati che può essere rappresentato come un oggetto descrivibile. L'elaborazione a nuvola di punti è utilizzata nella navigazione e nella percezione dei robot, nella stima della profondità, nella visione stereo, nella registrazione visiva e nei sistemi avanzati di assistenza alla guida (ADAS). Gli algoritmi Computer Vision Toolbox™ forniscono funzionalità di elaborazione della nuvola di punti per il sottocampionamento, la riduzione del rumore e la trasformazione delle nuvole di punti. La toolbox offre inoltre la registrazione delle nuvole di punti, l'adattamento della forma geometrica alle nuvole di punti tridimensionali e la possibilità di leggere, scrivere, archiviare, visualizzare e confrontare le nuvole di punti. È possibile combinare più nuvole di punti per ricostruire una scena tridimensionale o costruire una mappa con nuvole di punti registrate, rilevare le chiusure di loop, ottimizzare la mappa per correggere lo scostamento ed eseguire la localizzazione nella mappa precostituita. Per ulteriori dettagli, vedere Implement Point Cloud SLAM in MATLAB.

Per eseguire la registrazione delle nuvole di punti, ossia il processo di allineamento di due o più nuvole di punti su un unico sistema di coordinate, si parte solitamente da una nuvola di punti di riferimento o una nuvola di punti fissa, e poi si allineano ad essa altre nuvole di punti o altre nuvole di punti in movimento. La posa assoluta di una nuvola di punti si riferisce alla sua posizione e orientamento globali rispetto a un quadro di riferimento, spesso noto come quadro di coordinate mondiali. Computer Vision Toolbox fornisce varie tecniche di registrazione per registrare una nuvola di punti in movimento su una nuvola di punti fissa. Queste tecniche comprendono il punto più vicino iterativo (ICP), la trasformata delle distribuzioni normali (NDT), la correlazione di fase e la deriva coerente dei punti (CPD). È inoltre possibile utilizzare l'applicazione Lidar Registration Analyzer (Lidar Toolbox) per registrare in modo interattivo e confrontare i risultati relativi all'utilizzo di diverse tecniche di registrazione, parametri di sincronizzazione e fasi di pre-elaborazione.

Funzioni

espandi tutto

pcreadRead 3-D point cloud from PLY or PCD file
pcwriteWrite 3-D point cloud to PLY or PCD file
pcfromdepthConvert depth image to point cloud (Da R2022b)
pcfromkinectPoint cloud from Kinect for Windows
velodyneFileReaderRead point cloud data from Velodyne PCAP file
pcviewsetManage data for point cloud based visual odometry and SLAM (Da R2020a)
pointCloudObject for storing 3-D point cloud
pcviewerVisualize and inspect large 3-D point cloud (Da R2023a)
pcshowPlot 3-D point cloud
pcshowpairVisualize difference between two point clouds
pcplayerVisualize streaming 3-D point cloud data
showShapeDisplay shapes on image, video, or point cloud (Da R2020b)

Pre-elaborazione

pcbinSpatially bin point cloud points (Da R2020a)
pcdenoiseRemove noise from 3-D point cloud
pcdownsampleDownsample a 3-D point cloud
pcnormalsEstimate normals for point cloud

Individuazione e rimozione di punti

findPointsInCylinderFind points within a cylindrical region in a point cloud (Da R2023a)
findPointsInROIFind points within a region of interest in the point cloud
findNearestNeighborsFind nearest neighbors of a point in point cloud
findNeighborsInRadiusFind neighbors within a radius of a point in the point cloud
removeInvalidPointsRemove invalid points from point cloud
pcsegdistSegment point cloud into clusters based on Euclidean distance
segmentGroundFromLidarDataSegment ground points from organized lidar data
segmentLidarDataSegment organized 3-D range data into clusters
pcbinSpatially bin point cloud points (Da R2020a)

Registrazione di nuvole di punti

pcregistercorrRegister two point clouds using phase correlation (Da R2020b)
pcregistericpRegister two point clouds using ICP algorithm
pcregistercpdRegister two point clouds using CPD algorithm
pcregisterndtRegister two point clouds using NDT algorithm

Trasformazione di nuvole di punti

rigidtform3d3-D rigid geometric transformation (Da R2022b)
pctransformTransform 3-D point cloud

Allineamento o abbinamento di nuvole di punti

pcalignAlign array of point clouds (Da R2020b)
pccatConcatenate 3-D point cloud array (Da R2020b)
pcmergeMerge two 3-D point clouds

Determinazione dei candidati alla chiusura del loop

findPoseLocalize point cloud within map using normal distributions transform (NDT) algorithm (Da R2021a)
scanContextDistanceDistance between scan context descriptors (Da R2020b)
scanContextDescriptorExtract scan context descriptor from point cloud (Da R2020b)
scanContextLoopDetectorDetect loop closures using scan context descriptors (Da R2021b)

Ottimizzazione delle pose

createPoseGraphCreate pose graph (Da R2020a)
optimizePosesOptimize absolute poses using relative pose constraints (Da R2020a)

Creazione della mappa di localizzazione

pcmapndtLocalization map based on normal distributions transform (NDT) (Da R2021a)
pcfitcylinderFit cylinder to 3-D point cloud
pcfitplaneFit plane to 3-D point cloud
pcfitsphereFit sphere to 3-D point cloud
pcnormalsEstimate normals for point cloud
fitPolynomialRANSACFit polynomial to points using RANSAC
ransacFit model to noisy data
cylinderModelParametric cylinder model
planeModelObject for storing parametric plane model
sphereModelObject for storing a parametric sphere model

Blocchi

espandi tutto

Point Cloud ViewerVisualize streaming point cloud data sequence (Da R2023a)

Argomenti

Esempi in primo piano