Iterative Closest Point and 3D matrices
Show older comments
Hi,
I intend to use an ICP plugin to match 2 volumes : http://www.mathworks.com/matlabcentral/fileexchange/27804-iterative-closest-point
Unfortunately, my matrices created form a stack of dicom files dont work with ICP . My matrices are 500*500*80 of vertices while the demo provided works with vectors 3*6400. Do you know how to pass from vertices to vectors or more generally how I could reach my goal namely re-positioning a 3d volume ?
Regards.
2 Comments
Answers (1)
That's a surface segmentation problem. Maybe use BWPERIM in conjunction with FIND/IND2SUB.
6 Comments
I can't be much more specific, because I don't know anything specific about your data or what surfaces on it you would like to match.
Usually ICP is meant for matching two surfaces, given a list of coordinates lying on those surfaces. If you have a binary map of the object, BWPERIM would return a binary map of its surfaces, so that might be a possible direction to go. You would have to pre-process that map in some way to get rid of surfaces you don't want to include. You can then use FIND and IND2SUB to convert the binary map to 3D coordinates.
Don't know why you think BWPERIM is only for 2D arrays. See "doc BWPERIM".
ocelote
on 26 Nov 2012
ocelote
on 27 Nov 2012
Matt J
on 27 Nov 2012
Have you verified that the isosurface() output identifies the surface that you want?
Categories
Find more on Scalar Volume Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!