Extracts carrier points from a brightness level containing matrix iM. thr sets a threshold to binarize iM. i1, i2 and i3 output the Y, X and Z values respectively. See algorithms described by Palagyi and Kuba. Very nice piece of code, hopefully correctly interpreted from their papers. It involves numerous permutation of indices and logical operators on a 26-neighbourhood.

Example:
skeletonize first matrix in stack

>> [X Y Z] = skel_stack (stack.M{1}, 100);

>> hold on; show_stack (stack); plot3 (Y, X, Z, 'r.');

TREES

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License