Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature]: Feret height profiles missing distances #959

Open
7 tasks done
MaxGamill-Sheffield opened this issue Oct 16, 2024 · 1 comment
Open
7 tasks done

[Feature]: Feret height profiles missing distances #959

MaxGamill-Sheffield opened this issue Oct 16, 2024 · 1 comment
Labels
enhancement New feature or request

Comments

@MaxGamill-Sheffield
Copy link
Collaborator

Checklist

  • Re-run analysis with topostats process --core 1.
  • Describe the bug.
  • Include the configuration file.
  • Copy of the output.
  • The exact command that failed. This is what you typed at the command line, including any options.
  • TopoStats version, this is reported by topostats --version
  • Operating System and Python Version

Describe the bug

Ideally the feret height profiles are used for "blob" analysis and look for spatial heterogeneity (i.e. ndp52's coiled-coil making it flexible), so one can get an idea of this heterogeneity by plotting the height profiles to see the spread of the data across all identified objects.

However, of the outputs to plot, there is currently only the heights and not the distances to match so plotting these objects at different imaging scales would be difficult.

Copy of the output

N/A

Include the configuration file

No -c used

To Reproduce

Run TopoStats on the default config and the tests/resources/minicircle.spm file.

height_profiles.json keys are img_name -> grain_no, then just the heights array.

TopoStats Version

Git main branch

Python Version

3.11

Operating System

MacOS M1/M2 (post-2021)

Python Packages

absl-py==2.1.0
accessible-pygments==0.0.5
AFMReader==0.0.1
alabaster==0.7.16
appnope==0.1.4
astroid==3.1.0
asttokens==2.4.1
astunparse==1.6.3
babel==2.16.0
backcall==0.2.0
beautifulsoup4==4.12.3
biopython==1.84
black==24.4.2
certifi==2024.7.4
cfgv==3.4.0
charset-normalizer==3.3.2
cheap-repr==0.5.1
click==8.1.7
cloudpickle==3.0.0
comm==0.2.2
contourpy==1.2.1
coverage==7.5.1
cycler==0.12.1
debugpy==1.8.1
decorator==5.1.1
dill==0.3.8
distlib==0.3.8
docutils==0.20.1
entrypoints==0.4
et-xmlfile==1.1.0
exceptiongroup==1.2.1
execnet==2.1.1
executing==2.0.1
filelock==3.14.0
filetype==1.2.0
flatbuffers==24.3.25
fonttools==4.51.0
gast==0.6.0
google-pasta==0.2.0
grpcio==1.66.2
h5py==3.11.0
identify==2.5.36
idna==3.8
igor2==0.5.6
imageio==2.34.1
imagesize==1.4.1
iniconfig==2.0.0
ipykernel==6.29.4
ipython==8.24.0
isort==5.13.2
jedi==0.19.1
Jinja2==3.1.4
joblib==1.4.2
jupyter_client==7.4.9
jupyter_core==5.7.2
keras==3.5.0
kiwisolver==1.4.5
lazy_loader==0.4
libclang==18.1.1
llvmlite==0.43.0
loguru==0.7.2
Markdown==3.7
markdown-it-py==3.0.0
MarkupSafe==2.1.5
matplotlib==3.8.4
matplotlib-inline==0.1.7
mccabe==0.7.0
mdit-py-plugins==0.4.1
mdurl==0.1.2
ml-dtypes==0.4.1
mypy-extensions==1.0.0
myst-parser==4.0.0
namex==0.0.8
nest-asyncio==1.6.0
networkx==3.3
nodeenv==1.8.0
numba==0.60.0
numpy==1.26.4
numpydoc==1.8.0
numpyencoder==0.3.0
openpyxl==3.1.5
opt_einsum==3.4.0
optree==0.12.1
packaging==24.0
pandas==2.2.2
parso==0.8.4
pathspec==0.12.1
pexpect==4.9.0
pickleshare==0.7.5
pillow==10.3.0
platformdirs==4.2.1
pluggy==1.5.0
pockets==0.9.1
pre-commit==3.7.0
prompt-toolkit==3.0.43
protobuf==4.25.5
psutil==5.9.8
ptyprocess==0.7.0
pure-eval==0.2.2
pydata-sphinx-theme==0.15.4
pyfiglet==1.0.2
Pygments==2.18.0
pylint==3.1.0
pyparsing==3.1.2
pyspm==0.6.1
pytest==7.4.4
pytest-cov==5.0.0
pytest-durations==1.2.0
pytest-github-actions-annotate-failures==0.2.0
pytest-lazy-fixture==0.6.3
pytest-mpl==0.17.0
pytest-regtest==2.1.1
pytest-testmon==2.1.1
pytest-xdist==3.6.1
python-dateutil==2.9.0.post0
pytz==2024.1
pyupgrade==3.15.2
PyYAML==6.0.1
pyzmq==26.0.3
requests==2.32.3
rich==13.9.1
ruamel.yaml==0.18.6
ruamel.yaml.clib==0.2.8
schema==0.7.7
scikit-image==0.23.2
scikit-learn==1.4.2
scipy==1.13.0
seaborn==0.13.2
six==1.16.0
skan==0.11.1
snakeviz==2.2.0
snoop==0.4.3
snowballstemmer==2.2.0
soupsieve==2.6
Sphinx==7.4.7
sphinx-autoapi==3.2.1
sphinx-autodoc-typehints==2.2.3
sphinx-markdown-tables==0.0.17
sphinx-multiversion==0.2.4
sphinx-rtd-theme==2.0.0
sphinxcontrib-applehelp==2.0.0
sphinxcontrib-devhelp==2.0.0
sphinxcontrib-htmlhelp==2.1.0
sphinxcontrib-jquery==4.1
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-mermaid==0.9.2
sphinxcontrib-napoleon==0.7
sphinxcontrib-qthelp==2.0.0
sphinxcontrib-serializinghtml==2.0.0
spyder-kernels==2.3.3
stack-data==0.6.3
tabulate==0.9.0
tensorboard==2.17.1
tensorboard-data-server==0.7.2
tensorflow==2.17.0
tensorflow-io-gcs-filesystem==0.37.1
termcolor==2.4.0
threadpoolctl==3.5.0
tifffile==2024.5.3
tokenize-rt==5.2.0
tomli==2.0.1
tomlkit==0.12.5
toolz==0.12.1
topofileformats==0.1.0
topoly==1.0.2
-e git+https://github.com/AFM-SPM/TopoStats.git@8429156aaf8f6ea63beccb8941d1ee8c31624f27#egg=topostats
tornado==6.4
tqdm==4.66.4
traitlets==5.14.3
typing_extensions==4.11.0
tzdata==2024.1
urllib3==2.2.2
virtualenv==20.26.1
wcwidth==0.2.13
Werkzeug==3.0.4
wrapt==1.16.0
wurlitzer==3.1.0

@MaxGamill-Sheffield MaxGamill-Sheffield added the bug Something isn't working label Oct 16, 2024
@ns-rse
Copy link
Collaborator

ns-rse commented Oct 16, 2024

This is something I was vaguely aware of when returning the height profiles. One of the problems is that the length of the height profiles are often different, so if you just plot the profile they wouldn't align. My solution at the time was to aligning them on the mid-points and pad shorter arrays to match those of the longest.

But at the time no plots were automatically generated and more pressing work meant I couldn't spend time on it.

There is some discussion in #871 on plotting the heights but it doesn't align the profiles on the mid-points and pad them.

I wouldn't describe this as a bug though #748 was specified, refined and implemented, rather a lack of feature in terms of padding the height arrays to be the same length and automatically generating plots and a further iterative refinement in the requirements to have distances.

@ns-rse ns-rse added enhancement New feature or request and removed bug Something isn't working labels Oct 16, 2024
@ns-rse ns-rse changed the title [Bug]: Feret height profiles missing distances [Feature]: Feret height profiles missing distances Oct 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants