Skip to main content

Point Cloud Alignment with PCA

Project description

PCA2

Point Cloud Alignment with PCA

Install

Create conda environment (Recommended)

git pull https://github.com/lukemshepherd/PCA_2.git

conda env create -f environment.yml

conda activate PCA2

With pip

pip install PCA2

Editable install

git pull https://github.com/lukemshepherd/PCA_2.git

pip install -e .

How to use

from PCA2.core import *
from mayavi import mlab # for calling the plots

Set custom filter level (optional)

bone.filter_level = 0.2

Load the data that you want to use

tibia_f2 = bone.from_matlab_path(matlab_file='data/tibia_f2.mat')
tibia_f1 = bone.from_matlab_path(matlab_file='data/phantom_tibia_f1.mat')

Set custom colour for bone (optional)

tibia_f1.default_color = (0.8, 0.3, 0)

Rotate the bone

rotate(tibia_f1, tibia_f2)
0.17458532149354633 no invert
0.5815521223920518 no invert
1.9141791241147516e-16 no invert

Plotting the rotation

Plotting with mayavi is very similar to matplotplib where you build a scene and call it with show()

You can plot bones by calling the .plot() method and then mlab.show()

# tibia_f1.plot()
# tibia_f2.plot()
# mlab.show()

Table of angles

df_angles(tibia_f1, tibia_f2, name='tibia')
1.6184142622847344e-16 no invert
1.2412670766236368e-16 no invert
1.9141791241147516e-16 no invert
<style scoped> .dataframe tbody tr th:only-of-type { vertical-align: middle; }
.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}
</style>
tibia f2: pc1 tibia f2: pc2 tibia f2: pc3
tibia f1: pc1 1.618414e-16 NaN NaN
tibia f1: pc2 NaN 1.241267e-16 NaN
tibia f1: pc3 NaN NaN 1.914179e-16

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PCA2-0.0.3.tar.gz (11.8 kB view hashes)

Uploaded Source

Built Distribution

PCA2-0.0.3-py3-none-any.whl (10.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page