kevinjohncutler / omnipose

Omnipose: a high-precision solution for morphology-independent cell segmentation
https://omnipose.readthedocs.io
Other
101 stars 30 forks source link

peakdetect 1.2 causes dependency conflict #102

Open antonkulaga opened 4 months ago

antonkulaga commented 4 months ago

Looks like peakdetect that you use depends on super-outdated scipy, for this reason I get:

  from scipy import fft, ifft
ImportError: cannot import name 'ifft' from 'scipy' (/home/antonkulaga/.local/lib/python3.10/site-packages/scipy/__init__.py)

The proper way to import is:

from scipy.fft import ifft
kevinjohncutler commented 3 months ago

@antonkulaga what version of Omnipose are you using? Peakdetect was removed from the dependencies a while ago. I do see that I have it in a conda env file for linux installs, which has not been updated in a while.

folterj commented 3 months ago

I've got the same issue, pip installed the latest version (1.0.6) of Omnipose today on Windows. As scipy does not appear to have the version pinned, it installs the latest version of scipy: version 1.14.0.

folterj commented 3 months ago

So the problem is that peakdetect is ancient, doesn't have scipy version pinned - which would require an equally ancient version of scipy (<1.3.0?). The change you mention @antonkulaga does not appear to be in the latest release of Omnipose on pypi yet: https://github.com/kevinjohncutler/omnipose/commit/e349761b6eff16af0b4b07d404035a3ad7393775