Issue installing ImagePy via pip on Windows10

Hello, I created a fresh anaconda environment (Python 3.7.2).
Then I tried installing ImagePy from pip, as found on PyPi
I ran into the following error:

EDIT : Any suggestion of how to fix the pip installation @yxdragon ?

1 Like

it is shapely’s error, try conda to install shapely? or use whl here, then pip install imagepy again?

It works indeed thanks !
I also had to install matplotlib and scipy in the environment to be able to successfully call ImagePy.
I filed a pull request updating the dependencies.

However I could not find the ROI manager window when doing Selection>Add to Manager

1 Like

how do you install scikit-image? It seems that matplotlib, scipy, networkx … and so on will be installed when solve scikit-image’s dependencies. So I did not list them all.

About the ROI manager, ImagePy is not a python version ImageJ. Currently, ImagePy puts developer friendliness before user friendliness. I spend most time to make the framework easy to be extended. So many interactive feature is not perfect. But if you try to write plugin, you may find, ImagePy chooses the right data structure to do the right things, Numpy for image, pandas for table, shapely for vector, and in the plugin, we can operate them directly.

Some function about ROI below.

  1. Many geometry operations such as convex hull, buffer, clip… under Selection
  2. Save ROI, Open ROI to save current ROI to file, or read from file.
  3. Add to Manager and Load ROI can add to manager or load from manager. You can use Load ROI, and select the name. (It is not hard to add a ROI Window if it is needed)
  4. Relation can Union or Clip the current ROI and the one you select from manager.
  5. File > Import > Roi From IJ can import ImageJ’s ROI file as a label image.

ImagePy’s ROI is a [Shapely Geometry Object], (, It supports WKT/WKB/JSON IO, and supports many geometry operation

Thanks for the answer !

As you can see in the attached log file, scikit image is installed when ImagePy is installed but its dependencies are apparently not resolved (scikit image is downloaded from the ImagePy repo).
(I had to rename from .txt to .m to be able to upload the text file.)
ImagePy-Log.m (8.0 KB)

Thanks for noticing. I now added txt to the file extensions allowed for upload.

@jni I had add skimage in requirements.txt, need i add all skimage’s dependencies in?

What makes you say that dependencies are not transitively resolved? From your log file:

Requirement already satisfied: numpy>=1.12.0 in c:\anaconda\envs\imagepy2\lib\site-packages (from pandas->imagepy) (1.15.4)
Collecting dask[array]>=1.0.0 (from scikit-image->imagepy)
  Using cached
Collecting pillow>=4.3.0 (from scikit-image->imagepy)
  Using cached
Collecting PyWavelets>=0.4.0 (from scikit-image->imagepy)
  Using cached
Collecting networkx>=1.8 (from scikit-image->imagepy)
Collecting six>=1.10.0 (from scikit-image->imagepy)
  Using cached
Collecting cloudpickle>=0.2.1 (from scikit-image->imagepy)
  Using cached

Hmmmmmmm… Although I do notice SciPy isn’t in that list…! @stefanv might have some ideas? I’m going to check what happens with pip install scikit-image in a new environment…

Well, it seems to work fine in a brand new environment (on macOS at least):

 $ pip install scikit-image
Collecting scikit-image
  Downloading (28.8MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 28.8MB 379kB/s
Collecting dask[array]>=1.0.0 (from scikit-image)
  Downloading (701kB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 706kB 2.3MB/s
Collecting pillow>=4.3.0 (from scikit-image)
  Downloading (3.7MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 3.7MB 2.1MB/s
Collecting cloudpickle>=0.2.1 (from scikit-image)
Requirement already satisfied: six>=1.10.0 in ./conda/envs/37/lib/python3.7/site-packages (from scikit-image) (1.12.0)
Collecting networkx>=1.8 (from scikit-image)
  Downloading (1.7MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 1.7MB 2.8MB/s
Collecting matplotlib>=2.0.0 (from scikit-image)
  Downloading (14.1MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 14.1MB 597kB/s
Collecting scipy>=0.17.0 (from scikit-image)
  Downloading (27.3MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 27.3MB 257kB/s
Collecting PyWavelets>=0.4.0 (from scikit-image)
  Downloading (4.9MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 4.9MB 1.4MB/s
Collecting numpy>=1.11.0; extra == "array" (from dask[array]>=1.0.0->scikit-image)
  Downloading (13.9MB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 13.9MB 452kB/s
Collecting toolz>=0.7.3; extra == "array" (from dask[array]>=1.0.0->scikit-image)
  Downloading (45kB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 51kB 6.1MB/s
Requirement already satisfied: decorator>=4.3.0 in ./conda/envs/37/lib/python3.7/site-packages (from networkx>=1.8->scikit-image) (4.3.2)
Collecting kiwisolver>=1.0.1 (from matplotlib>=2.0.0->scikit-image)
  Downloading (107kB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 112kB 2.1MB/s
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib>=2.0.0->scikit-image)
  Downloading (61kB)
    100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 71kB 3.6MB/s
Collecting cycler>=0.10 (from matplotlib>=2.0.0->scikit-image)
Requirement already satisfied: python-dateutil>=2.1 in ./conda/envs/37/lib/python3.7/site-packages (from matplotlib>=2.0.0->scikit-image) (2.8.0)
Requirement already satisfied: setuptools in ./conda/envs/37/lib/python3.7/site-packages (from kiwisolver>=1.0.1->matplotlib>=2.0.0->scikit-image) (40.8.0)
Building wheels for collected packages: networkx, toolz
  Building wheel for networkx ( ... done
  Stored in directory: /Users/jni/Library/Caches/pip/wheels/68/f8/29/b53346a112a07d30a5a84d53f19aeadaa1a474897c0423af91
  Building wheel for toolz ( ... done
  Stored in directory: /Users/jni/Library/Caches/pip/wheels/f4/0c/f6/ce6b2d1aa459ee97cc3c0f82236302bd62d89c86c700219463
Successfully built networkx toolz
Installing collected packages: numpy, toolz, dask, pillow, cloudpickle, networkx, kiwisolver, pyparsing, cycler, matplotlib, scipy, PyWavelets, scikit-image

Defining a dependency is really like calling pip install on the package ?

Could you reproduce the issue by first installing shapely with conda or the wheel package and then doing a pip install imagepy in a fresh environment ?

By the way about shapely failing to be installed by pip,

There is indeed an issue on Shapely GitHub repo.

  1. It should be equivalent. I think pip simply recurses through packages’ stated dependencies, pip installs them, then pip installs their dependencies.

  2. I still got the same behaviour: SciPy is picked up when I pip install imagepy in an environment that only contains Python and Shapely:

jni@jni-x1c6 Thu Feb 28 19:31 
 $ conda activate /home/jni/miniconda3/envs/imagepy-test
jni@jni-x1c6 Thu Feb 28 19:31 
 $ conda list --revisions
2019-02-27 12:55:18  (rev 0)

jni@jni-x1c6 Thu Feb 28 19:32
$ pip install imagepy
Collecting imagepy
Downloading (191kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 194kB 5.9MB/s
Collecting scikit-image (from imagepy)
Downloading (25.3MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 25.3MB 1.7MB/s
Requirement already satisfied: shapely in ./miniconda3/envs/imagepy-test/lib/python3.7/site-packages (from imagepy) (1.6.4.post1)
Collecting wxpython-installer (from imagepy)
Collecting read_roi (from imagepy)
Collecting numpy-stl (from imagepy)
Downloading (484kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 491kB 9.3MB/s
Collecting pydicom (from imagepy)
Downloading (7.0MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 7.0MB 3.7MB/s
Collecting pandas (from imagepy)
Downloading (10.1MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 10.1MB 2.9MB/s
Collecting xlrd (from imagepy)
Downloading (103kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 112kB 8.0MB/s
Collecting xlwt (from imagepy)
Downloading (99kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 102kB 7.9MB/s
Collecting openpyxl (from imagepy)
Downloading (172kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 174kB 9.5MB/s
Collecting markdown (from imagepy)
Downloading (89kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 92kB 12.1MB/s
Collecting numba (from imagepy)
Downloading (3.2MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 3.2MB 5.7MB/s
Collecting matplotlib>=2.0.0 (from scikit-image->imagepy)
Downloading (12.9MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 12.9MB 2.9MB/s
Collecting dask[array]>=1.0.0 (from scikit-image->imagepy)
Downloading (704kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 706kB 9.5MB/s
Collecting PyWavelets>=0.4.0 (from scikit-image->imagepy)
Downloading (4.4MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 4.4MB 5.2MB/s
Collecting six>=1.10.0 (from scikit-image->imagepy)
Using cached
Collecting pillow>=4.3.0 (from scikit-image->imagepy)
Downloading (2.0MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 2.0MB 8.3MB/s
Collecting networkx>=1.8 (from scikit-image->imagepy)
Collecting cloudpickle>=0.2.1 (from scikit-image->imagepy)
Collecting scipy>=0.17.0 (from scikit-image->imagepy)
Downloading (24.8MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 24.8MB 1.6MB/s
Requirement already satisfied: numpy in ./miniconda3/envs/imagepy-test/lib/python3.7/site-packages (from numpy-stl->imagepy) (1.15.4)
Collecting python-utils>=1.6.2 (from numpy-stl->imagepy)
Collecting pytz>=2011k (from pandas->imagepy)
Downloading (510kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 512kB 7.3MB/s
Collecting python-dateutil>=2.5.0 (from pandas->imagepy)
Downloading (226kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 235kB 13.3MB/s
Collecting jdcal (from openpyxl->imagepy)
Collecting et_xmlfile (from openpyxl->imagepy)
Collecting llvmlite>=0.27.0dev0 (from numba->imagepy)
Downloading (17.1MB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 17.1MB 2.1MB/s
Collecting kiwisolver>=1.0.1 (from matplotlib>=2.0.0->scikit-image->imagepy)
Downloading (89kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 92kB 12.1MB/s
Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib>=2.0.0->scikit-image->imagepy)
Downloading (61kB)
100% |β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ| 71kB 17.6MB/s
Collecting cycler>=0.10 (from matplotlib>=2.0.0->scikit-image->imagepy)
Collecting toolz>=0.7.3; extra == β€œarray” (from dask[array]>=1.0.0->scikit-image->imagepy)
Using cached
Collecting decorator>=4.3.0 (from networkx>=1.8->scikit-image->imagepy)
Requirement already satisfied: setuptools in ./miniconda3/envs/imagepy-test/lib/python3.7/site-packages (from kiwisolver>=1.0.1->matplotlib>=2.0.0->scikit-image->imagepy) (40.8.0)
Building wheels for collected packages: imagepy, wxpython-installer, read-roi, numpy-stl, openpyxl, et-xmlfile, toolz
Building wheel for imagepy ( … done
Stored in directory: /home/jni/.cache/pip/wheels/8d/d4/f5/8e860bc642bd8964f23d14cb7df83845605177d08077527972

There may be a Windows vs Linux issue, but I can’t easily test that. @yxdragon?

I tested in a Linux environnement, with same procedure : create a fresh python3 environement, install shapely with conda and then pip install imagepy and indeed matplotlib and scipy got properly installed !
Weird :sweat:

It seems that on linux and mac, β€œpip install shapely” is ok. I try β€œpip install scikit-image” on win10 with pure python, numpy can be install but not with mkl, but scipy and matplotlib is lost indeed! It is the same when upgrade.