Code Monkey home page Code Monkey logo

shapevariationanalyzer's People

Contributors

clementmirabel avatar jamesfishbaugh avatar jamesobutler avatar jcfr avatar juanprietob avatar lassoan avatar lbumbolo avatar lopezmt avatar pdedumast avatar sjh26 avatar vicory avatar yehan0223 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shapevariationanalyzer's Issues

PCA creation error in Population analysis module

Dear SVA Team,

My name is Shoaib Attar and I am a new user of the software SlicerSALT (4.0.1). I have been trying to input a set of groomed femurs (n=4) to create a PCA chart. But I keep getting an error. I am attaching a screenshot of the error. I am confused about what could be the mistake in this case. Can you please help me solve this problem?

Screenshot 2024-01-03 141654
?

Please do let me know if I should send you the vtk files of the groomed femurs. I am trying to make a comparison between the PCA results of SlicerSALT and Shapeworks software. This particular dataset did work with shapeworks software but it keeps giving me an error in slicerSALT.

I am looking forward to hearing back from you soon.

with regards,
Shoaib Attar

Suggested changes in layout behavior for PCA tab

When the button "process and export csv" is pressed in the PCA tab, the layout of slicer automatically changes to "four-up quantitative" and it should be "standard quantitative" so the 3D view can be seen.

Improve reading of CSV file to be independent of the current working directory

The reading logic should be improved so that successful loading of a csv file does not depend on the current working directory.

Instead the function pcaExplorer.readCSVFile( should be updated to resolve relative path based on the location of the csv file.

Once this is implement, use of the following context manager should not be needed:

with slicer.util.chdir(input_dir):
logic.pca_exploration.loadCSVFile(filepath_in)
logic.pca_exploration.process()

Python requirements need to be updated for latest Slicer python version

Similar to what is needed at DCBIA-OrthoLab/MFSDA_Python#26

Slicer recently upgraded from Python 3.6.7 to Python 3.9.10 in Slicer/Slicer@34e48e8. There are now observed build errors of the ShapeVariationAnalyzer Slicer extension as seen at https://slicer.cdash.org/viewBuildError.php?buildid=2618477. This is because the python requirements file in the repo is including hashes that are only for Python 3.6 wheels. These need to be updated for Python 3.9 wheels which also means the actual version of packages here will need to be updated as some older versions simply don't have Python 3.9 wheels because that version was released before Python 3.9 was even released. For example scikit-learn==0.23.1 does not have Python 3.9 wheels available from PyPI (see here).

set(requirements_file ${CMAKE_BINARY_DIR}/${proj}-requirements.txt)
file(WRITE ${requirements_file} [===[
joblib==0.16.0 --hash=sha256:d348c5d4ae31496b2aa060d6d9b787864dd204f9480baaa52d18850cb43e9f49
threadpoolctl==2.1.0 --hash=sha256:38b74ca20ff3bb42caca8b00055111d74159ee95c4370882bbff2b93d24da725
# Hashes correspond to the following packages:
# - scikit_learn-0.23.1-cp36-cp36m-win_amd64.whl
# - scikit_learn-0.23.1-cp36-cp36m-macosx_10_9_x86_64.whl
# - scikit_learn-0.23.1-cp36-cp36m-manylinux1_x86_64.whl
scikit-learn==0.23.1 --hash=sha256:e585682e37f2faa81ad6cd4472fff646bf2fd0542147bec93697a905db8e6bd2 \
--hash=sha256:058d213092de4384710137af1300ed0ff030b8c40459a6c6f73c31ccd274cc39 \
--hash=sha256:e9879ba9e64ec3add41bf201e06034162f853652ef4849b361d73b0deb3153ad
]===])

Extension has problems with python dependencies

Hi @lopezmt @juanprietob

I installed manually sklearn and scipy for the SVA extension downloaded from the extension manager in Ubuntu 16.04. The extension fails to install some python libraries.

Here is the message:
Traceback (most recent call last):
File "", line 1, in
File "/home/bpaniagua/.config/NA-MIC/Extensions-27534/ShapeVariationAnalyzer/lib/Slicer-4.11/qt-scripted-modules/ShapeVariationAnalyzer.py", line 24, in
import shapepcalib as shapca

Could you please look into that?
Thanks,
Bea

Error with PCA sliders

The PCA sliders seem to be doing something weird with an example dataset. I am using intercranial shapes from the CONTE dataset for which I have already QC'ed for a different experiment (regression).
PC1 correctly captures the size change in the dataset, but when exploring that principal direction, the shape deforms in an impossible way.

See animation below.
pcaerror

Missing hippo.csv file referenced in test_ShapeVariationAnalyzer

Following the integration of commit 976e22c (ENH: Add Export tab) adding test_ShapeVariationAnalyzer, the file hippo.csv. is referenced as input but missing.

def test_ShapeVariationAnalyzer(self):
self.logic = ShapeVariationAnalyzerLogic()
filepath_in = "./hippo.csv"
# Test of all the groups
keygroup = "All"

@juanprietob Do you happen to know how to generate or look up that specific file ? Or hints on how to update the test using a different input. ๐Ÿ™

cc: @jamesfishbaugh

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.