subtracting two asymmetric 3D point clouds

조회 수: 3 (최근 30일)
Snehalatha
Snehalatha 2015년 7월 20일
편집: Snehalatha 2015년 7월 22일
I have 3D point cloud and I want to subtract one from other. But these point cloud locations are assymetric. I want to subtract the z- coordinate of the corresponding points from both the point clouds. When I mean corresponding points I mean the XYpoints which match each other on the point cloud. The variables are attached below. I want to subtract beforeDelam.Location from alignedafterdelam.Location but i get the error that matrix is unsymmetric. How can I proceed? I thought that I can create meshes of these two point clouds and subtract it from each other. But is there any other easier way. Looking forward to your help.
  댓글 수: 2
Image Analyst
Image Analyst 2015년 7월 21일
What XYPoints? And what Z coordinates? After reading in the mat file we just get 3 sets of 1-D arrays of 6 elements each.
s=load('pc var.mat')
beforeDelam: [6x1 uint32]
afterDelam: [6x1 uint32]
tform: [1x1 affine3d]
alignedafterDelam: [6x1 uint32]
rmserror: 0.304021418094635
I can do the subtraction
output = double(s.beforeDelam) - double(s.afterDelam)
and get an output
output =
0
0
0
0
-1
0
with no error at all. Please clarify.
Snehalatha
Snehalatha 2015년 7월 21일
편집: Snehalatha 2015년 7월 21일
Hi Image analyst, if you go inside the point cloud variable you'll notice the property column. There you find something called location which is array i want to subtract. beforeDelam has dimensions 203851x3 and alighnedafterDelam has 203675x3. I want to subtract the 3rd column of alignedafterDelam.Location(:,:,1) from 3rd column of beforeDelam.Location(:,:,1). I have attached thescreenshot of the error i received.

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 Point Cloud Processing에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by