large-image 1.30.7.dev18__tar.gz → 1.30.7.dev22__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {large_image-1.30.7.dev18/large_image.egg-info → large_image-1.30.7.dev22}/PKG-INFO +75 -75
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/notebooks/large_image_examples.ipynb +5 -10
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/base.py +12 -12
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/jupyter.py +33 -23
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/stylefuncs.py +2 -2
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/tiledict.py +2 -2
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/utilities.py +26 -23
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22/large_image.egg-info}/PKG-INFO +75 -75
- large_image-1.30.7.dev22/large_image.egg-info/requires.txt +151 -0
- large_image-1.30.7.dev18/large_image.egg-info/requires.txt +0 -151
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/LICENSE +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/NOTICE +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/README.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/annotations.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/api_index.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/caching.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/conf.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/config_options.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/development.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/dicomweb_assetstore.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/format_examples_datastore.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/formats.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/generate_format_table.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/getting_started.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/girder_annotation_config_options.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/girder_caching.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/girder_config_options.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/girder_index.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/image_conversion.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/index.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/make_docs.sh +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/multi_source_specification.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/notebooks/zarr_sink_example.ipynb +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/notebooks.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/plottable.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/static/K.png +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/static/custom.css +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/tilesource_options.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/upgrade.rst +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/__init__.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/__init__.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/base.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/cache.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/cachefactory.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/memcache.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/rediscache.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/config.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/constants.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/exceptions.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/__init__.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/geo.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/resample.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/tileiterator.py +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image.egg-info/SOURCES.txt +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image.egg-info/dependency_links.txt +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image.egg-info/not-zip-safe +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image.egg-info/top_level.txt +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/setup.cfg +0 -0
- {large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: large-image
|
|
3
|
-
Version: 1.30.7.
|
|
3
|
+
Version: 1.30.7.dev22
|
|
4
4
|
Summary: Python modules to work with large, multiresolution images.
|
|
5
5
|
Home-page: https://github.com/girder/large_image
|
|
6
6
|
Author: Kitware, Inc.
|
|
@@ -30,7 +30,7 @@ Requires-Dist: pylibmc>=1.5.1; platform_system != "Windows" and extra == "memcac
|
|
|
30
30
|
Provides-Extra: redis
|
|
31
31
|
Requires-Dist: redis>=4.5.5; extra == "redis"
|
|
32
32
|
Provides-Extra: converter
|
|
33
|
-
Requires-Dist: large-image-converter>=1.30.7.
|
|
33
|
+
Requires-Dist: large-image-converter>=1.30.7.dev22; extra == "converter"
|
|
34
34
|
Provides-Extra: colormaps
|
|
35
35
|
Requires-Dist: matplotlib; extra == "colormaps"
|
|
36
36
|
Requires-Dist: tol_colors; extra == "colormaps"
|
|
@@ -40,105 +40,105 @@ Provides-Extra: performance
|
|
|
40
40
|
Requires-Dist: psutil>=4.2.0; extra == "performance"
|
|
41
41
|
Requires-Dist: simplejpeg; extra == "performance"
|
|
42
42
|
Provides-Extra: bioformats
|
|
43
|
-
Requires-Dist: large-image-source-bioformats>=1.30.7.
|
|
43
|
+
Requires-Dist: large-image-source-bioformats>=1.30.7.dev22; extra == "bioformats"
|
|
44
44
|
Provides-Extra: deepzoom
|
|
45
|
-
Requires-Dist: large-image-source-deepzoom>=1.30.7.
|
|
45
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "deepzoom"
|
|
46
46
|
Provides-Extra: dicom
|
|
47
|
-
Requires-Dist: large-image-source-dicom>=1.30.7.
|
|
47
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "dicom"
|
|
48
48
|
Provides-Extra: dummy
|
|
49
|
-
Requires-Dist: large-image-source-dummy>=1.30.7.
|
|
49
|
+
Requires-Dist: large-image-source-dummy>=1.30.7.dev22; extra == "dummy"
|
|
50
50
|
Provides-Extra: gdal
|
|
51
|
-
Requires-Dist: large-image-source-gdal>=1.30.7.
|
|
51
|
+
Requires-Dist: large-image-source-gdal>=1.30.7.dev22; extra == "gdal"
|
|
52
52
|
Provides-Extra: mapnik
|
|
53
|
-
Requires-Dist: large-image-source-mapnik>=1.30.7.
|
|
53
|
+
Requires-Dist: large-image-source-mapnik>=1.30.7.dev22; extra == "mapnik"
|
|
54
54
|
Provides-Extra: multi
|
|
55
|
-
Requires-Dist: large-image-source-multi>=1.30.7.
|
|
55
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "multi"
|
|
56
56
|
Provides-Extra: nd2
|
|
57
|
-
Requires-Dist: large-image-source-nd2>=1.30.7.
|
|
57
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "nd2"
|
|
58
58
|
Provides-Extra: ometiff
|
|
59
|
-
Requires-Dist: large-image-source-ometiff>=1.30.7.
|
|
59
|
+
Requires-Dist: large-image-source-ometiff>=1.30.7.dev22; extra == "ometiff"
|
|
60
60
|
Provides-Extra: openjpeg
|
|
61
|
-
Requires-Dist: large-image-source-openjpeg>=1.30.7.
|
|
61
|
+
Requires-Dist: large-image-source-openjpeg>=1.30.7.dev22; extra == "openjpeg"
|
|
62
62
|
Provides-Extra: openslide
|
|
63
|
-
Requires-Dist: large-image-source-openslide>=1.30.7.
|
|
63
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "openslide"
|
|
64
64
|
Provides-Extra: pil
|
|
65
|
-
Requires-Dist: large-image-source-pil>=1.30.7.
|
|
65
|
+
Requires-Dist: large-image-source-pil>=1.30.7.dev22; extra == "pil"
|
|
66
66
|
Provides-Extra: rasterio
|
|
67
|
-
Requires-Dist: large-image-source-rasterio>=1.30.7.
|
|
67
|
+
Requires-Dist: large-image-source-rasterio>=1.30.7.dev22; extra == "rasterio"
|
|
68
68
|
Provides-Extra: test
|
|
69
|
-
Requires-Dist: large-image-source-test>=1.30.7.
|
|
69
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "test"
|
|
70
70
|
Provides-Extra: tiff
|
|
71
|
-
Requires-Dist: large-image-source-tiff>=1.30.7.
|
|
71
|
+
Requires-Dist: large-image-source-tiff>=1.30.7.dev22; extra == "tiff"
|
|
72
72
|
Provides-Extra: tifffile
|
|
73
|
-
Requires-Dist: large-image-source-tifffile>=1.30.7.
|
|
73
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "tifffile"
|
|
74
74
|
Provides-Extra: vips
|
|
75
|
-
Requires-Dist: large-image-source-vips>=1.30.7.
|
|
75
|
+
Requires-Dist: large-image-source-vips>=1.30.7.dev22; extra == "vips"
|
|
76
76
|
Provides-Extra: zarr
|
|
77
|
-
Requires-Dist: large-image-source-zarr>=1.30.7.
|
|
77
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "zarr"
|
|
78
78
|
Provides-Extra: sources
|
|
79
|
-
Requires-Dist: large-image-source-
|
|
80
|
-
Requires-Dist: large-image-source-
|
|
81
|
-
Requires-Dist: large-image-source-
|
|
82
|
-
Requires-Dist: large-image-source-
|
|
83
|
-
Requires-Dist: large-image-source-
|
|
84
|
-
Requires-Dist: large-image-source-
|
|
85
|
-
Requires-Dist: large-image-source-
|
|
86
|
-
Requires-Dist: large-image-source-
|
|
87
|
-
Requires-Dist: large-image-source-
|
|
88
|
-
Requires-Dist: large-image-source-
|
|
89
|
-
Requires-Dist: large-image-source-
|
|
90
|
-
Requires-Dist: large-image-source-
|
|
91
|
-
Requires-Dist: large-image-source-
|
|
92
|
-
Requires-Dist: large-image-source-
|
|
93
|
-
Requires-Dist: large-image-source-
|
|
94
|
-
Requires-Dist: large-image-source-
|
|
95
|
-
Requires-Dist: large-image-source-
|
|
96
|
-
Requires-Dist: large-image-source-
|
|
79
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "sources"
|
|
80
|
+
Requires-Dist: large-image-source-pil>=1.30.7.dev22; extra == "sources"
|
|
81
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "sources"
|
|
82
|
+
Requires-Dist: large-image-source-bioformats>=1.30.7.dev22; extra == "sources"
|
|
83
|
+
Requires-Dist: large-image-source-rasterio>=1.30.7.dev22; extra == "sources"
|
|
84
|
+
Requires-Dist: large-image-source-openjpeg>=1.30.7.dev22; extra == "sources"
|
|
85
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "sources"
|
|
86
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "sources"
|
|
87
|
+
Requires-Dist: large-image-source-mapnik>=1.30.7.dev22; extra == "sources"
|
|
88
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "sources"
|
|
89
|
+
Requires-Dist: large-image-source-vips>=1.30.7.dev22; extra == "sources"
|
|
90
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "sources"
|
|
91
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "sources"
|
|
92
|
+
Requires-Dist: large-image-source-gdal>=1.30.7.dev22; extra == "sources"
|
|
93
|
+
Requires-Dist: large-image-source-dummy>=1.30.7.dev22; extra == "sources"
|
|
94
|
+
Requires-Dist: large-image-source-tiff>=1.30.7.dev22; extra == "sources"
|
|
95
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "sources"
|
|
96
|
+
Requires-Dist: large-image-source-ometiff>=1.30.7.dev22; extra == "sources"
|
|
97
97
|
Provides-Extra: all
|
|
98
|
-
Requires-Dist: large-image-source-
|
|
99
|
-
Requires-Dist: large-image-source-
|
|
100
|
-
Requires-Dist: large-image-source-
|
|
101
|
-
Requires-Dist:
|
|
102
|
-
Requires-Dist: large-image-source-
|
|
103
|
-
Requires-Dist: large-image-source-
|
|
104
|
-
Requires-Dist: large-image-source-tifffile>=1.30.7.dev18; extra == "all"
|
|
105
|
-
Requires-Dist: large-image-source-rasterio>=1.30.7.dev18; extra == "all"
|
|
106
|
-
Requires-Dist: large-image-source-tiff>=1.30.7.dev18; extra == "all"
|
|
107
|
-
Requires-Dist: large-image-source-dicom>=1.30.7.dev18; extra == "all"
|
|
98
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "all"
|
|
99
|
+
Requires-Dist: large-image-source-bioformats>=1.30.7.dev22; extra == "all"
|
|
100
|
+
Requires-Dist: large-image-source-openjpeg>=1.30.7.dev22; extra == "all"
|
|
101
|
+
Requires-Dist: large-image-source-tiff[all]>=1.30.7.dev22; extra == "all"
|
|
102
|
+
Requires-Dist: large-image-source-mapnik>=1.30.7.dev22; extra == "all"
|
|
103
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "all"
|
|
108
104
|
Requires-Dist: redis>=4.5.5; extra == "all"
|
|
109
|
-
Requires-Dist: large-image-source-
|
|
110
|
-
Requires-Dist: large-image-
|
|
111
|
-
Requires-Dist: large-image-source-
|
|
112
|
-
Requires-Dist: large-image-source-
|
|
113
|
-
Requires-Dist: large-image-source-
|
|
114
|
-
Requires-Dist:
|
|
115
|
-
Requires-Dist:
|
|
116
|
-
Requires-Dist: large-image-source-
|
|
117
|
-
Requires-Dist: large-image-
|
|
118
|
-
Requires-Dist: large-image-source-
|
|
105
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "all"
|
|
106
|
+
Requires-Dist: large-image-converter>=1.30.7.dev22; extra == "all"
|
|
107
|
+
Requires-Dist: large-image-source-dummy>=1.30.7.dev22; extra == "all"
|
|
108
|
+
Requires-Dist: large-image-source-tiff>=1.30.7.dev22; extra == "all"
|
|
109
|
+
Requires-Dist: large-image-source-pil>=1.30.7.dev22; extra == "all"
|
|
110
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "all"
|
|
111
|
+
Requires-Dist: large-image-source-ometiff>=1.30.7.dev22; extra == "all"
|
|
112
|
+
Requires-Dist: large-image-source-vips>=1.30.7.dev22; extra == "all"
|
|
113
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "all"
|
|
114
|
+
Requires-Dist: large-image-source-rasterio>=1.30.7.dev22; extra == "all"
|
|
119
115
|
Requires-Dist: tol_colors; extra == "all"
|
|
116
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "all"
|
|
117
|
+
Requires-Dist: pyvips; extra == "all"
|
|
118
|
+
Requires-Dist: matplotlib; extra == "all"
|
|
120
119
|
Requires-Dist: psutil>=4.2.0; extra == "all"
|
|
121
|
-
Requires-Dist: large-image-source-
|
|
122
|
-
Requires-Dist: large-image-source-
|
|
123
|
-
Requires-Dist: large-image-source-
|
|
124
|
-
Requires-Dist: large-image-source-
|
|
125
|
-
Requires-Dist:
|
|
126
|
-
Requires-Dist: large-image-source-
|
|
120
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "all"
|
|
121
|
+
Requires-Dist: large-image-source-multi[all]>=1.30.7.dev22; extra == "all"
|
|
122
|
+
Requires-Dist: large-image-source-pil[all]>=1.30.7.dev22; extra == "all"
|
|
123
|
+
Requires-Dist: large-image-source-rasterio[all]>=1.30.7.dev22; extra == "all"
|
|
124
|
+
Requires-Dist: pylibmc>=1.5.1; platform_system != "Windows" and extra == "all"
|
|
125
|
+
Requires-Dist: large-image-source-gdal>=1.30.7.dev22; extra == "all"
|
|
126
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "all"
|
|
127
127
|
Requires-Dist: simplejpeg; extra == "all"
|
|
128
128
|
Provides-Extra: common
|
|
129
|
-
Requires-Dist: large-image-source-
|
|
130
|
-
Requires-Dist: large-image-source-
|
|
129
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "common"
|
|
130
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "common"
|
|
131
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "common"
|
|
132
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "common"
|
|
133
|
+
Requires-Dist: psutil>=4.2.0; extra == "common"
|
|
131
134
|
Requires-Dist: matplotlib; extra == "common"
|
|
132
|
-
Requires-Dist: large-image-source-
|
|
133
|
-
Requires-Dist: large-image-source-
|
|
135
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "common"
|
|
136
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "common"
|
|
137
|
+
Requires-Dist: large-image-source-pil[all]>=1.30.7.dev22; extra == "common"
|
|
138
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "common"
|
|
139
|
+
Requires-Dist: large-image-source-rasterio[all]>=1.30.7.dev22; extra == "common"
|
|
140
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "common"
|
|
134
141
|
Requires-Dist: tol_colors; extra == "common"
|
|
135
|
-
Requires-Dist: large-image-source-multi>=1.30.7.dev18; extra == "common"
|
|
136
|
-
Requires-Dist: large-image-source-rasterio[all]>=1.30.7.dev18; extra == "common"
|
|
137
|
-
Requires-Dist: large-image-source-tifffile>=1.30.7.dev18; extra == "common"
|
|
138
|
-
Requires-Dist: large-image-source-openslide>=1.30.7.dev18; extra == "common"
|
|
139
|
-
Requires-Dist: psutil>=4.2.0; extra == "common"
|
|
140
|
-
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev18; extra == "common"
|
|
141
|
-
Requires-Dist: large-image-source-nd2>=1.30.7.dev18; extra == "common"
|
|
142
142
|
Requires-Dist: simplejpeg; extra == "common"
|
|
143
143
|
|
|
144
144
|
Large Image
|
{large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/notebooks/large_image_examples.ipynb
RENAMED
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"\n",
|
|
47
47
|
"# For maximum capabilities in Jupyter, also install ipyleaflet so you can\n",
|
|
48
48
|
"# view zoomable images in the notebook\n",
|
|
49
|
-
"!pip install ipyleaflet\n",
|
|
49
|
+
"!pip install 'ipyleaflet>=0.19'\n",
|
|
50
50
|
"\n",
|
|
51
51
|
"# If you are accessing files on a Girder server, it is useful to install girder_client\n",
|
|
52
52
|
"!pip install girder_client"
|
|
@@ -182,6 +182,10 @@
|
|
|
182
182
|
"to an internal tile server that allows you to view the image in a zoomable viewer. There are more options\n",
|
|
183
183
|
"depending on your Jupyter configuration and whether it is running locally or remotely. \n",
|
|
184
184
|
"Some environments need different proxy options, like Google CoLab.\n",
|
|
185
|
+
"The system will attempt to determine the correct proxy values by default.\n",
|
|
186
|
+
"If you needed to, you could ask JupyterLab to locally proxy an internal tile server. As an example:\n",
|
|
187
|
+
"\n",
|
|
188
|
+
"`large_image.tilesource.jupyter.IPyLeafletMixin.JUPYTER_PROXY = True`\n",
|
|
185
189
|
"\n",
|
|
186
190
|
"If ipyleaflet isn't installed, inspecting a tile source will just show the thumbnail."
|
|
187
191
|
]
|
|
@@ -208,15 +212,6 @@
|
|
|
208
212
|
}
|
|
209
213
|
],
|
|
210
214
|
"source": [
|
|
211
|
-
"# Ask JupyterLab to locally proxy an internal tile server\n",
|
|
212
|
-
"import importlib.util\n",
|
|
213
|
-
"\n",
|
|
214
|
-
"if importlib.util.find_spec('google') and importlib.util.find_spec('google.colab'):\n",
|
|
215
|
-
" # colab intercepts localhost\n",
|
|
216
|
-
" large_image.tilesource.jupyter.IPyLeafletMixin.JUPYTER_PROXY = 'https://localhost'\n",
|
|
217
|
-
"else:\n",
|
|
218
|
-
" large_image.tilesource.jupyter.IPyLeafletMixin.JUPYTER_PROXY = True\n",
|
|
219
|
-
"\n",
|
|
220
215
|
"# Look at our tile source\n",
|
|
221
216
|
"ts"
|
|
222
217
|
]
|
|
@@ -1006,7 +1006,7 @@ class TileSource(IPyLeafletMixin):
|
|
|
1006
1006
|
elif sc.mainImage.dtype.kind == 'f':
|
|
1007
1007
|
sc.dtype = 'float'
|
|
1008
1008
|
sc.axis = sc.axis if sc.axis is not None else entry.get('axis')
|
|
1009
|
-
sc.bandidx = 0 if image.shape[2] <= 2 else 1
|
|
1009
|
+
sc.bandidx = 0 if image.shape[2] <= 2 else 1
|
|
1010
1010
|
sc.band = None
|
|
1011
1011
|
if ((entry.get('frame') is None and not entry.get('framedelta')) or
|
|
1012
1012
|
entry.get('frame') == sc.mainFrame):
|
|
@@ -1021,29 +1021,29 @@ class TileSource(IPyLeafletMixin):
|
|
|
1021
1021
|
:sc.mainImage.shape[1],
|
|
1022
1022
|
:sc.mainImage.shape[2]]
|
|
1023
1023
|
if (isinstance(entry.get('band'), int) and
|
|
1024
|
-
entry['band'] >= 1 and entry['band'] <= image.shape[2]):
|
|
1024
|
+
entry['band'] >= 1 and entry['band'] <= image.shape[2]):
|
|
1025
1025
|
sc.bandidx = entry['band'] - 1
|
|
1026
1026
|
sc.composite = entry.get('composite', 'lighten')
|
|
1027
1027
|
if (hasattr(self, '_bandnames') and entry.get('band') and
|
|
1028
1028
|
str(entry['band']).lower() in self._bandnames and
|
|
1029
|
-
image.shape[2] > self._bandnames[
|
|
1029
|
+
image.shape[2] > self._bandnames[
|
|
1030
1030
|
str(entry['band']).lower()]):
|
|
1031
1031
|
sc.bandidx = self._bandnames[str(entry['band']).lower()]
|
|
1032
|
-
if entry.get('band') == 'red' and image.shape[2] > 2:
|
|
1032
|
+
if entry.get('band') == 'red' and image.shape[2] > 2:
|
|
1033
1033
|
sc.bandidx = 0
|
|
1034
|
-
elif entry.get('band') == 'blue' and image.shape[2] > 2:
|
|
1034
|
+
elif entry.get('band') == 'blue' and image.shape[2] > 2:
|
|
1035
1035
|
sc.bandidx = 2
|
|
1036
1036
|
sc.band = image[:, :, 2]
|
|
1037
1037
|
elif entry.get('band') == 'alpha':
|
|
1038
|
-
sc.bandidx = (image.shape[2] - 1 if image.shape[2] in (2, 4)
|
|
1038
|
+
sc.bandidx = (image.shape[2] - 1 if image.shape[2] in (2, 4)
|
|
1039
1039
|
else None)
|
|
1040
|
-
sc.band = (image[:, :, -1] if image.shape[2] in (2, 4) else
|
|
1040
|
+
sc.band = (image[:, :, -1] if image.shape[2] in (2, 4) else
|
|
1041
1041
|
np.full(image.shape[:2], 255, np.uint8))
|
|
1042
1042
|
sc.composite = entry.get('composite', 'multiply')
|
|
1043
1043
|
if sc.band is None:
|
|
1044
1044
|
sc.band = image[
|
|
1045
|
-
:, :, sc.bandidx
|
|
1046
|
-
if sc.bandidx is not None and sc.bandidx < image.shape[2]
|
|
1045
|
+
:, :, sc.bandidx
|
|
1046
|
+
if sc.bandidx is not None and sc.bandidx < image.shape[2]
|
|
1047
1047
|
else 0]
|
|
1048
1048
|
sc.band = self._applyStyleFunction(sc.band, sc, 'preband')
|
|
1049
1049
|
sc.palette = getPaletteColors(entry.get(
|
|
@@ -1076,7 +1076,7 @@ class TileSource(IPyLeafletMixin):
|
|
|
1076
1076
|
# divide.
|
|
1077
1077
|
# See https://docs.gimp.org/en/gimp-concepts-layer-modes.html for
|
|
1078
1078
|
# some details.
|
|
1079
|
-
for channel in range(sc.output.shape[2]):
|
|
1079
|
+
for channel in range(sc.output.shape[2]):
|
|
1080
1080
|
if np.all(sc.palette[:, channel] == sc.palette[0, channel]):
|
|
1081
1081
|
if ((sc.palette[0, channel] == 0 and sc.composite != 'multiply') or
|
|
1082
1082
|
(sc.palette[0, channel] == 255 and sc.composite == 'multiply')):
|
|
@@ -1117,7 +1117,7 @@ class TileSource(IPyLeafletMixin):
|
|
|
1117
1117
|
sc.output = (sc.output * 65535 / 255).astype(np.uint16)
|
|
1118
1118
|
elif sc.dtype == 'float':
|
|
1119
1119
|
sc.output /= 255
|
|
1120
|
-
if sc.axis is not None and 0 <= int(sc.axis) < sc.output.shape[2]:
|
|
1120
|
+
if sc.axis is not None and 0 <= int(sc.axis) < sc.output.shape[2]:
|
|
1121
1121
|
sc.output = sc.output[:, :, sc.axis:sc.axis + 1]
|
|
1122
1122
|
sc.output = self._applyStyleFunction(sc.output, sc, 'post')
|
|
1123
1123
|
return sc.output
|
|
@@ -1145,7 +1145,7 @@ class TileSource(IPyLeafletMixin):
|
|
|
1145
1145
|
tile = self._applyStyle(tile, getattr(self, 'style', None), x, y, z, frame)
|
|
1146
1146
|
if tile.shape[0] != self.tileHeight or tile.shape[1] != self.tileWidth:
|
|
1147
1147
|
extend = np.zeros(
|
|
1148
|
-
(self.tileHeight, self.tileWidth, tile.shape[2]),
|
|
1148
|
+
(self.tileHeight, self.tileWidth, tile.shape[2]),
|
|
1149
1149
|
dtype=tile.dtype)
|
|
1150
1150
|
extend[:min(self.tileHeight, tile.shape[0]),
|
|
1151
1151
|
:min(self.tileWidth, tile.shape[1])] = tile
|
|
@@ -30,33 +30,30 @@ ipyleafletPresent = importlib.util.find_spec('ipyleaflet') is not None
|
|
|
30
30
|
class IPyLeafletMixin:
|
|
31
31
|
"""Mixin class to support interactive visualization in JupyterLab.
|
|
32
32
|
|
|
33
|
-
This class implements ``_ipython_display_`` with ``ipyleaflet``
|
|
34
|
-
|
|
35
|
-
in JupyterLab.
|
|
33
|
+
This class implements ``_ipython_display_`` with ``ipyleaflet`` to display
|
|
34
|
+
an interactive image visualizer for the tile source in JupyterLab.
|
|
36
35
|
|
|
37
|
-
Install `ipyleaflet <https://github.com/jupyter-widgets/ipyleaflet>`_
|
|
38
|
-
|
|
36
|
+
Install `ipyleaflet <https://github.com/jupyter-widgets/ipyleaflet>`_ to
|
|
37
|
+
interactively visualize tile sources in JupyterLab.
|
|
39
38
|
|
|
40
|
-
For remote JupyterHub environments, you may need to configure
|
|
41
|
-
|
|
39
|
+
For remote JupyterHub environments, you may need to configure the class
|
|
40
|
+
variables ``JUPYTER_HOST`` or ``JUPYTER_PROXY``.
|
|
42
41
|
|
|
43
42
|
If ``JUPYTER_PROXY`` is set, it overrides ``JUPYTER_HOST``.
|
|
44
43
|
|
|
45
|
-
Use ``JUPYTER_HOST`` to set the host name of the machine such
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
``
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
``JUPYTERHUB_SERVICE_PREFIX`` may need to prefix the
|
|
59
|
-
``'/proxy/'``.
|
|
44
|
+
Use ``JUPYTER_HOST`` to set the host name of the machine such that the tile
|
|
45
|
+
URL can be accessed at ``'http://{JUPYTER_HOST}:{port}'``.
|
|
46
|
+
|
|
47
|
+
Use ``JUPYTER_PROXY`` to leverage ``jupyter-server-proxy`` to proxy the
|
|
48
|
+
tile serving port through Jupyter's authenticated web interface. This is
|
|
49
|
+
useful in Docker and cloud JupyterHub environments. You can set the
|
|
50
|
+
environment variable ``LARGE_IMAGE_JUPYTER_PROXY`` to control the default
|
|
51
|
+
value of ``JUPYTER_PROXY``. If ``JUPYTER_PROXY`` is set to ``True``, the
|
|
52
|
+
default will be ``'/proxy/`` which will work for most Docker Jupyter
|
|
53
|
+
configurations. If in a cloud JupyterHub environment, this will get a bit
|
|
54
|
+
more nuanced as the ``JUPYTERHUB_SERVICE_PREFIX`` may need to prefix the
|
|
55
|
+
``'/proxy/'``. If set to ``'auto'``, an automatic value will be chosen
|
|
56
|
+
through some effort to detect the environment.
|
|
60
57
|
|
|
61
58
|
To programmatically set these values:
|
|
62
59
|
|
|
@@ -80,7 +77,7 @@ class IPyLeafletMixin:
|
|
|
80
77
|
"""
|
|
81
78
|
|
|
82
79
|
JUPYTER_HOST = '127.0.0.1'
|
|
83
|
-
JUPYTER_PROXY = os.environ.get('LARGE_IMAGE_JUPYTER_PROXY',
|
|
80
|
+
JUPYTER_PROXY: Union[str, bool] = os.environ.get('LARGE_IMAGE_JUPYTER_PROXY', 'auto')
|
|
84
81
|
|
|
85
82
|
_jupyter_server_manager: Any
|
|
86
83
|
|
|
@@ -103,6 +100,10 @@ class IPyLeafletMixin:
|
|
|
103
100
|
|
|
104
101
|
port = self._jupyter_server_manager.port
|
|
105
102
|
|
|
103
|
+
if self.JUPYTER_PROXY == 'auto':
|
|
104
|
+
self._autoJupyterProxy()
|
|
105
|
+
if self.JUPYTER_PROXY and str(self.JUPYTER_PROXY).lower() in {'true', 'false'}:
|
|
106
|
+
self.JUPYTER_PROXY = str(self.JUPYTER_PROXY).lower() == 'true'
|
|
106
107
|
if self.JUPYTER_PROXY:
|
|
107
108
|
if isinstance(self.JUPYTER_PROXY, str):
|
|
108
109
|
base_url = f'{self.JUPYTER_PROXY.rstrip("/")}/{port}'
|
|
@@ -117,6 +118,15 @@ class IPyLeafletMixin:
|
|
|
117
118
|
self.metadata, # type: ignore[attr-defined]
|
|
118
119
|
f'{base_url}/{endpoint}')
|
|
119
120
|
|
|
121
|
+
def _autoJupyterProxy(self):
|
|
122
|
+
if importlib.util.find_spec('google') and importlib.util.find_spec('google.colab'):
|
|
123
|
+
# colab intercepts localhost
|
|
124
|
+
self.JUPYTER_PROXY = 'https://localhost'
|
|
125
|
+
elif importlib.util.find_spec('jupyter_server_proxy'):
|
|
126
|
+
self.JUPYTER_PROXY = True
|
|
127
|
+
else:
|
|
128
|
+
self.JUPYTER_PROXY = False
|
|
129
|
+
|
|
120
130
|
# Only make _ipython_display_ available if ipyleaflet is installed
|
|
121
131
|
if ipyleafletPresent:
|
|
122
132
|
|
|
@@ -93,9 +93,9 @@ def medianFilter(
|
|
|
93
93
|
pimg: np.ndarray = image.astype(float)
|
|
94
94
|
if len(pimg.shape) == 2:
|
|
95
95
|
pimg = np.resize(pimg, (pimg.shape[0], pimg.shape[1], 1))
|
|
96
|
-
pimg = pimg[:, :, :fimg.shape[2]]
|
|
96
|
+
pimg = pimg[:, :, :fimg.shape[2]]
|
|
97
97
|
dimg = (pimg - fimg.astype(float) * mul) * weight
|
|
98
|
-
pimg = pimg[:, :, :fimg.shape[2]] + dimg
|
|
98
|
+
pimg = pimg[:, :, :fimg.shape[2]] + dimg
|
|
99
99
|
if clip:
|
|
100
100
|
pimg = pimg.clip(0, clip)
|
|
101
101
|
if len(image.shape) != 3:
|
|
@@ -156,7 +156,7 @@ class LazyTileDict(dict):
|
|
|
156
156
|
elif tileData.shape[2] < retile.shape[2]:
|
|
157
157
|
retile = retile[:, :, :tileData.shape[2]]
|
|
158
158
|
retile[y0:y0 + th, x0:x0 + tw] = tileData[
|
|
159
|
-
:th, :tw, :retile.shape[2]]
|
|
159
|
+
:th, :tw, :retile.shape[2]]
|
|
160
160
|
return cast(np.ndarray, retile)
|
|
161
161
|
|
|
162
162
|
def _resample(self, tileData: Union[ImageBytes, PIL.Image.Image, bytes, np.ndarray]) -> Tuple[
|
|
@@ -197,7 +197,7 @@ class LazyTileDict(dict):
|
|
|
197
197
|
tileData = skimage.transform.resize(
|
|
198
198
|
cast(np.ndarray, tileData),
|
|
199
199
|
(self['width'], self['height'],
|
|
200
|
-
cast(np.ndarray, tileData).shape[2]),
|
|
200
|
+
cast(np.ndarray, tileData).shape[2]),
|
|
201
201
|
order=3 if self.resample is True else self.resample)
|
|
202
202
|
return tileData, pilData
|
|
203
203
|
|
|
@@ -213,28 +213,30 @@ def _imageToPIL(
|
|
|
213
213
|
mode = modesBySize[image.shape[2] - 1]
|
|
214
214
|
if len(image.shape) == 3 and image.shape[2] == 1:
|
|
215
215
|
image = np.resize(image, image.shape[:2])
|
|
216
|
-
if image.dtype == np.uint32:
|
|
216
|
+
if cast(np.ndarray, image).dtype == np.uint32:
|
|
217
217
|
image = np.floor_divide(image, 2 ** 24).astype(np.uint8)
|
|
218
|
-
elif image.dtype == np.uint16:
|
|
218
|
+
elif cast(np.ndarray, image).dtype == np.uint16:
|
|
219
219
|
image = np.floor_divide(image, 256).astype(np.uint8)
|
|
220
|
-
elif image.dtype == np.int8:
|
|
221
|
-
image = (image.astype(float) + 128).astype(np.uint8)
|
|
222
|
-
elif image.dtype == np.int16:
|
|
223
|
-
image = np.floor_divide(
|
|
224
|
-
|
|
225
|
-
|
|
220
|
+
elif cast(np.ndarray, image).dtype == np.int8:
|
|
221
|
+
image = (cast(np.ndarray, image).astype(float) + 128).astype(np.uint8)
|
|
222
|
+
elif cast(np.ndarray, image).dtype == np.int16:
|
|
223
|
+
image = np.floor_divide(
|
|
224
|
+
cast(np.ndarray, image).astype(float) + 2 ** 15, 256).astype(np.uint8)
|
|
225
|
+
elif cast(np.ndarray, image).dtype == np.int32:
|
|
226
|
+
image = np.floor_divide(
|
|
227
|
+
cast(np.ndarray, image).astype(float) + 2 ** 31, 2 ** 24).astype(np.uint8)
|
|
226
228
|
# TODO: The scaling of float data needs to be identical across all
|
|
227
229
|
# tiles of an image. This means that we need a reference to the parent
|
|
228
230
|
# tile source or some other way of regulating it.
|
|
229
|
-
# elif image.dtype.kind == 'f':
|
|
231
|
+
# elif cast(np.ndarray, image).dtype.kind == 'f':
|
|
230
232
|
# if numpy.max(image) > 1:
|
|
231
233
|
# maxl2 = math.ceil(math.log(numpy.max(image) + 1) / math.log(2))
|
|
232
234
|
# image = image / ((2 ** maxl2) - 1)
|
|
233
235
|
# image = (image * 255).astype(numpy.uint8)
|
|
234
|
-
elif image.dtype != np.uint8:
|
|
236
|
+
elif cast(np.ndarray, image).dtype != np.uint8:
|
|
235
237
|
image = np.clip(np.nan_to_num(np.where(
|
|
236
238
|
image is None, np.nan, image), nan=0), 0, 255).astype(np.uint8)
|
|
237
|
-
image = PIL.Image.fromarray(image, mode)
|
|
239
|
+
image = PIL.Image.fromarray(cast(np.ndarray, image), mode)
|
|
238
240
|
elif not isinstance(image, PIL.Image.Image):
|
|
239
241
|
image = PIL.Image.open(io.BytesIO(image))
|
|
240
242
|
if setMode is not None and image.mode != setMode:
|
|
@@ -277,9 +279,10 @@ def _imageToNumpy(
|
|
|
277
279
|
mode = modesBySize[(image.shape[2] - 1) if image.shape[2] <= 4 else 3]
|
|
278
280
|
return image, mode
|
|
279
281
|
mode = 'L'
|
|
280
|
-
if len(image.shape) == 2:
|
|
281
|
-
image = np.resize(
|
|
282
|
-
|
|
282
|
+
if len(cast(np.ndarray, image).shape) == 2:
|
|
283
|
+
image = np.resize(cast(np.ndarray, image),
|
|
284
|
+
(cast(np.ndarray, image).shape[0], cast(np.ndarray, image).shape[1], 1))
|
|
285
|
+
return cast(np.ndarray, image), mode
|
|
283
286
|
|
|
284
287
|
|
|
285
288
|
def _letterboxImage(image: PIL.Image.Image, width: int, height: int, fill: str) -> PIL.Image.Image:
|
|
@@ -811,7 +814,7 @@ def fullAlphaValue(arr: Union[np.ndarray, npt.DTypeLike]) -> int:
|
|
|
811
814
|
if cast(np.dtype, dtype).kind == 'u':
|
|
812
815
|
return np.iinfo(dtype).max
|
|
813
816
|
if isinstance(arr, np.ndarray) and cast(np.dtype, dtype).kind == 'f':
|
|
814
|
-
amax = np.amax(arr)
|
|
817
|
+
amax = cast(float, np.amax(arr))
|
|
815
818
|
if amax > 1 and amax < 256:
|
|
816
819
|
return 255
|
|
817
820
|
if amax > 1 and amax < 65536:
|
|
@@ -844,24 +847,24 @@ def _makeSameChannelDepth(arr1: np.ndarray, arr2: np.ndarray) -> Tuple[np.ndarra
|
|
|
844
847
|
# If any array is RGB, make sure all arrays are RGB.
|
|
845
848
|
for key, arr in arrays.items():
|
|
846
849
|
other = arrays['arr1' if key == 'arr2' else 'arr2']
|
|
847
|
-
if arr.shape[2] < 3 and other.shape[2] >= 3:
|
|
850
|
+
if arr.shape[2] < 3 and other.shape[2] >= 3:
|
|
848
851
|
newarr = np.ones(
|
|
849
|
-
(arr.shape[0], arr.shape[1], arr.shape[2] + 2),
|
|
852
|
+
(arr.shape[0], arr.shape[1], arr.shape[2] + 2),
|
|
850
853
|
dtype=arr.dtype)
|
|
851
854
|
newarr[:, :, 0:1] = arr[:, :, 0:1]
|
|
852
855
|
newarr[:, :, 1:2] = arr[:, :, 0:1]
|
|
853
856
|
newarr[:, :, 2:3] = arr[:, :, 0:1]
|
|
854
|
-
if arr.shape[2] == 2:
|
|
857
|
+
if arr.shape[2] == 2:
|
|
855
858
|
newarr[:, :, 3:4] = arr[:, :, 1:2]
|
|
856
859
|
arrays[key] = newarr
|
|
857
860
|
# If only one array has an A channel, make sure all arrays have an A
|
|
858
861
|
# channel
|
|
859
862
|
for key, arr in arrays.items():
|
|
860
863
|
other = arrays['arr1' if key == 'arr2' else 'arr2']
|
|
861
|
-
if arr.shape[2] < other.shape[2]:
|
|
864
|
+
if arr.shape[2] < other.shape[2]:
|
|
862
865
|
arrays[key] = np.pad(
|
|
863
866
|
arr,
|
|
864
|
-
((0, 0), (0, 0), (0, other.shape[2] - arr.shape[2])),
|
|
867
|
+
((0, 0), (0, 0), (0, other.shape[2] - arr.shape[2])),
|
|
865
868
|
constant_values=fullAlphaValue(arr))
|
|
866
869
|
return arrays['arr1'], arrays['arr2']
|
|
867
870
|
|
|
@@ -886,7 +889,7 @@ def _addSubimageToImage(
|
|
|
886
889
|
if (x, y, width, height) == (0, 0, subimage.shape[1], subimage.shape[0]):
|
|
887
890
|
return subimage
|
|
888
891
|
image = np.zeros(
|
|
889
|
-
(height, width, subimage.shape[2]),
|
|
892
|
+
(height, width, subimage.shape[2]),
|
|
890
893
|
dtype=subimage.dtype)
|
|
891
894
|
elif len(image.shape) != len(subimage.shape) or image.shape[-1] != subimage.shape[-1]:
|
|
892
895
|
image, subimage = _makeSameChannelDepth(image, subimage)
|
|
@@ -944,7 +947,7 @@ def _addRegionTileToTiled(
|
|
|
944
947
|
subimage = subimage.astype('d')
|
|
945
948
|
vimgMem = pyvips.Image.new_from_memory(
|
|
946
949
|
np.ascontiguousarray(subimage).data,
|
|
947
|
-
subimage.shape[1], subimage.shape[0], subimage.shape[2],
|
|
950
|
+
subimage.shape[1], subimage.shape[0], subimage.shape[2],
|
|
948
951
|
dtypeToGValue[subimage.dtype.char])
|
|
949
952
|
vimg = pyvips.Image.new_temp_file('%s.v')
|
|
950
953
|
vimgMem.write(vimg)
|
|
@@ -955,7 +958,7 @@ def _addRegionTileToTiled(
|
|
|
955
958
|
'mm_x': tile.get('mm_x') if tile else None,
|
|
956
959
|
'mm_y': tile.get('mm_y') if tile else None,
|
|
957
960
|
'magnification': tile.get('magnification') if tile else None,
|
|
958
|
-
'channels': subimage.shape[2],
|
|
961
|
+
'channels': subimage.shape[2],
|
|
959
962
|
'strips': {},
|
|
960
963
|
}
|
|
961
964
|
if y not in image['strips']:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: large-image
|
|
3
|
-
Version: 1.30.7.
|
|
3
|
+
Version: 1.30.7.dev22
|
|
4
4
|
Summary: Python modules to work with large, multiresolution images.
|
|
5
5
|
Home-page: https://github.com/girder/large_image
|
|
6
6
|
Author: Kitware, Inc.
|
|
@@ -30,7 +30,7 @@ Requires-Dist: pylibmc>=1.5.1; platform_system != "Windows" and extra == "memcac
|
|
|
30
30
|
Provides-Extra: redis
|
|
31
31
|
Requires-Dist: redis>=4.5.5; extra == "redis"
|
|
32
32
|
Provides-Extra: converter
|
|
33
|
-
Requires-Dist: large-image-converter>=1.30.7.
|
|
33
|
+
Requires-Dist: large-image-converter>=1.30.7.dev22; extra == "converter"
|
|
34
34
|
Provides-Extra: colormaps
|
|
35
35
|
Requires-Dist: matplotlib; extra == "colormaps"
|
|
36
36
|
Requires-Dist: tol_colors; extra == "colormaps"
|
|
@@ -40,105 +40,105 @@ Provides-Extra: performance
|
|
|
40
40
|
Requires-Dist: psutil>=4.2.0; extra == "performance"
|
|
41
41
|
Requires-Dist: simplejpeg; extra == "performance"
|
|
42
42
|
Provides-Extra: bioformats
|
|
43
|
-
Requires-Dist: large-image-source-bioformats>=1.30.7.
|
|
43
|
+
Requires-Dist: large-image-source-bioformats>=1.30.7.dev22; extra == "bioformats"
|
|
44
44
|
Provides-Extra: deepzoom
|
|
45
|
-
Requires-Dist: large-image-source-deepzoom>=1.30.7.
|
|
45
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "deepzoom"
|
|
46
46
|
Provides-Extra: dicom
|
|
47
|
-
Requires-Dist: large-image-source-dicom>=1.30.7.
|
|
47
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "dicom"
|
|
48
48
|
Provides-Extra: dummy
|
|
49
|
-
Requires-Dist: large-image-source-dummy>=1.30.7.
|
|
49
|
+
Requires-Dist: large-image-source-dummy>=1.30.7.dev22; extra == "dummy"
|
|
50
50
|
Provides-Extra: gdal
|
|
51
|
-
Requires-Dist: large-image-source-gdal>=1.30.7.
|
|
51
|
+
Requires-Dist: large-image-source-gdal>=1.30.7.dev22; extra == "gdal"
|
|
52
52
|
Provides-Extra: mapnik
|
|
53
|
-
Requires-Dist: large-image-source-mapnik>=1.30.7.
|
|
53
|
+
Requires-Dist: large-image-source-mapnik>=1.30.7.dev22; extra == "mapnik"
|
|
54
54
|
Provides-Extra: multi
|
|
55
|
-
Requires-Dist: large-image-source-multi>=1.30.7.
|
|
55
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "multi"
|
|
56
56
|
Provides-Extra: nd2
|
|
57
|
-
Requires-Dist: large-image-source-nd2>=1.30.7.
|
|
57
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "nd2"
|
|
58
58
|
Provides-Extra: ometiff
|
|
59
|
-
Requires-Dist: large-image-source-ometiff>=1.30.7.
|
|
59
|
+
Requires-Dist: large-image-source-ometiff>=1.30.7.dev22; extra == "ometiff"
|
|
60
60
|
Provides-Extra: openjpeg
|
|
61
|
-
Requires-Dist: large-image-source-openjpeg>=1.30.7.
|
|
61
|
+
Requires-Dist: large-image-source-openjpeg>=1.30.7.dev22; extra == "openjpeg"
|
|
62
62
|
Provides-Extra: openslide
|
|
63
|
-
Requires-Dist: large-image-source-openslide>=1.30.7.
|
|
63
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "openslide"
|
|
64
64
|
Provides-Extra: pil
|
|
65
|
-
Requires-Dist: large-image-source-pil>=1.30.7.
|
|
65
|
+
Requires-Dist: large-image-source-pil>=1.30.7.dev22; extra == "pil"
|
|
66
66
|
Provides-Extra: rasterio
|
|
67
|
-
Requires-Dist: large-image-source-rasterio>=1.30.7.
|
|
67
|
+
Requires-Dist: large-image-source-rasterio>=1.30.7.dev22; extra == "rasterio"
|
|
68
68
|
Provides-Extra: test
|
|
69
|
-
Requires-Dist: large-image-source-test>=1.30.7.
|
|
69
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "test"
|
|
70
70
|
Provides-Extra: tiff
|
|
71
|
-
Requires-Dist: large-image-source-tiff>=1.30.7.
|
|
71
|
+
Requires-Dist: large-image-source-tiff>=1.30.7.dev22; extra == "tiff"
|
|
72
72
|
Provides-Extra: tifffile
|
|
73
|
-
Requires-Dist: large-image-source-tifffile>=1.30.7.
|
|
73
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "tifffile"
|
|
74
74
|
Provides-Extra: vips
|
|
75
|
-
Requires-Dist: large-image-source-vips>=1.30.7.
|
|
75
|
+
Requires-Dist: large-image-source-vips>=1.30.7.dev22; extra == "vips"
|
|
76
76
|
Provides-Extra: zarr
|
|
77
|
-
Requires-Dist: large-image-source-zarr>=1.30.7.
|
|
77
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "zarr"
|
|
78
78
|
Provides-Extra: sources
|
|
79
|
-
Requires-Dist: large-image-source-
|
|
80
|
-
Requires-Dist: large-image-source-
|
|
81
|
-
Requires-Dist: large-image-source-
|
|
82
|
-
Requires-Dist: large-image-source-
|
|
83
|
-
Requires-Dist: large-image-source-
|
|
84
|
-
Requires-Dist: large-image-source-
|
|
85
|
-
Requires-Dist: large-image-source-
|
|
86
|
-
Requires-Dist: large-image-source-
|
|
87
|
-
Requires-Dist: large-image-source-
|
|
88
|
-
Requires-Dist: large-image-source-
|
|
89
|
-
Requires-Dist: large-image-source-
|
|
90
|
-
Requires-Dist: large-image-source-
|
|
91
|
-
Requires-Dist: large-image-source-
|
|
92
|
-
Requires-Dist: large-image-source-
|
|
93
|
-
Requires-Dist: large-image-source-
|
|
94
|
-
Requires-Dist: large-image-source-
|
|
95
|
-
Requires-Dist: large-image-source-
|
|
96
|
-
Requires-Dist: large-image-source-
|
|
79
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "sources"
|
|
80
|
+
Requires-Dist: large-image-source-pil>=1.30.7.dev22; extra == "sources"
|
|
81
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "sources"
|
|
82
|
+
Requires-Dist: large-image-source-bioformats>=1.30.7.dev22; extra == "sources"
|
|
83
|
+
Requires-Dist: large-image-source-rasterio>=1.30.7.dev22; extra == "sources"
|
|
84
|
+
Requires-Dist: large-image-source-openjpeg>=1.30.7.dev22; extra == "sources"
|
|
85
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "sources"
|
|
86
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "sources"
|
|
87
|
+
Requires-Dist: large-image-source-mapnik>=1.30.7.dev22; extra == "sources"
|
|
88
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "sources"
|
|
89
|
+
Requires-Dist: large-image-source-vips>=1.30.7.dev22; extra == "sources"
|
|
90
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "sources"
|
|
91
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "sources"
|
|
92
|
+
Requires-Dist: large-image-source-gdal>=1.30.7.dev22; extra == "sources"
|
|
93
|
+
Requires-Dist: large-image-source-dummy>=1.30.7.dev22; extra == "sources"
|
|
94
|
+
Requires-Dist: large-image-source-tiff>=1.30.7.dev22; extra == "sources"
|
|
95
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "sources"
|
|
96
|
+
Requires-Dist: large-image-source-ometiff>=1.30.7.dev22; extra == "sources"
|
|
97
97
|
Provides-Extra: all
|
|
98
|
-
Requires-Dist: large-image-source-
|
|
99
|
-
Requires-Dist: large-image-source-
|
|
100
|
-
Requires-Dist: large-image-source-
|
|
101
|
-
Requires-Dist:
|
|
102
|
-
Requires-Dist: large-image-source-
|
|
103
|
-
Requires-Dist: large-image-source-
|
|
104
|
-
Requires-Dist: large-image-source-tifffile>=1.30.7.dev18; extra == "all"
|
|
105
|
-
Requires-Dist: large-image-source-rasterio>=1.30.7.dev18; extra == "all"
|
|
106
|
-
Requires-Dist: large-image-source-tiff>=1.30.7.dev18; extra == "all"
|
|
107
|
-
Requires-Dist: large-image-source-dicom>=1.30.7.dev18; extra == "all"
|
|
98
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "all"
|
|
99
|
+
Requires-Dist: large-image-source-bioformats>=1.30.7.dev22; extra == "all"
|
|
100
|
+
Requires-Dist: large-image-source-openjpeg>=1.30.7.dev22; extra == "all"
|
|
101
|
+
Requires-Dist: large-image-source-tiff[all]>=1.30.7.dev22; extra == "all"
|
|
102
|
+
Requires-Dist: large-image-source-mapnik>=1.30.7.dev22; extra == "all"
|
|
103
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "all"
|
|
108
104
|
Requires-Dist: redis>=4.5.5; extra == "all"
|
|
109
|
-
Requires-Dist: large-image-source-
|
|
110
|
-
Requires-Dist: large-image-
|
|
111
|
-
Requires-Dist: large-image-source-
|
|
112
|
-
Requires-Dist: large-image-source-
|
|
113
|
-
Requires-Dist: large-image-source-
|
|
114
|
-
Requires-Dist:
|
|
115
|
-
Requires-Dist:
|
|
116
|
-
Requires-Dist: large-image-source-
|
|
117
|
-
Requires-Dist: large-image-
|
|
118
|
-
Requires-Dist: large-image-source-
|
|
105
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "all"
|
|
106
|
+
Requires-Dist: large-image-converter>=1.30.7.dev22; extra == "all"
|
|
107
|
+
Requires-Dist: large-image-source-dummy>=1.30.7.dev22; extra == "all"
|
|
108
|
+
Requires-Dist: large-image-source-tiff>=1.30.7.dev22; extra == "all"
|
|
109
|
+
Requires-Dist: large-image-source-pil>=1.30.7.dev22; extra == "all"
|
|
110
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "all"
|
|
111
|
+
Requires-Dist: large-image-source-ometiff>=1.30.7.dev22; extra == "all"
|
|
112
|
+
Requires-Dist: large-image-source-vips>=1.30.7.dev22; extra == "all"
|
|
113
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "all"
|
|
114
|
+
Requires-Dist: large-image-source-rasterio>=1.30.7.dev22; extra == "all"
|
|
119
115
|
Requires-Dist: tol_colors; extra == "all"
|
|
116
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "all"
|
|
117
|
+
Requires-Dist: pyvips; extra == "all"
|
|
118
|
+
Requires-Dist: matplotlib; extra == "all"
|
|
120
119
|
Requires-Dist: psutil>=4.2.0; extra == "all"
|
|
121
|
-
Requires-Dist: large-image-source-
|
|
122
|
-
Requires-Dist: large-image-source-
|
|
123
|
-
Requires-Dist: large-image-source-
|
|
124
|
-
Requires-Dist: large-image-source-
|
|
125
|
-
Requires-Dist:
|
|
126
|
-
Requires-Dist: large-image-source-
|
|
120
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "all"
|
|
121
|
+
Requires-Dist: large-image-source-multi[all]>=1.30.7.dev22; extra == "all"
|
|
122
|
+
Requires-Dist: large-image-source-pil[all]>=1.30.7.dev22; extra == "all"
|
|
123
|
+
Requires-Dist: large-image-source-rasterio[all]>=1.30.7.dev22; extra == "all"
|
|
124
|
+
Requires-Dist: pylibmc>=1.5.1; platform_system != "Windows" and extra == "all"
|
|
125
|
+
Requires-Dist: large-image-source-gdal>=1.30.7.dev22; extra == "all"
|
|
126
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "all"
|
|
127
127
|
Requires-Dist: simplejpeg; extra == "all"
|
|
128
128
|
Provides-Extra: common
|
|
129
|
-
Requires-Dist: large-image-source-
|
|
130
|
-
Requires-Dist: large-image-source-
|
|
129
|
+
Requires-Dist: large-image-source-dicom>=1.30.7.dev22; extra == "common"
|
|
130
|
+
Requires-Dist: large-image-source-test>=1.30.7.dev22; extra == "common"
|
|
131
|
+
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev22; extra == "common"
|
|
132
|
+
Requires-Dist: large-image-source-multi>=1.30.7.dev22; extra == "common"
|
|
133
|
+
Requires-Dist: psutil>=4.2.0; extra == "common"
|
|
131
134
|
Requires-Dist: matplotlib; extra == "common"
|
|
132
|
-
Requires-Dist: large-image-source-
|
|
133
|
-
Requires-Dist: large-image-source-
|
|
135
|
+
Requires-Dist: large-image-source-nd2>=1.30.7.dev22; extra == "common"
|
|
136
|
+
Requires-Dist: large-image-source-tifffile>=1.30.7.dev22; extra == "common"
|
|
137
|
+
Requires-Dist: large-image-source-pil[all]>=1.30.7.dev22; extra == "common"
|
|
138
|
+
Requires-Dist: large-image-source-openslide>=1.30.7.dev22; extra == "common"
|
|
139
|
+
Requires-Dist: large-image-source-rasterio[all]>=1.30.7.dev22; extra == "common"
|
|
140
|
+
Requires-Dist: large-image-source-zarr>=1.30.7.dev22; extra == "common"
|
|
134
141
|
Requires-Dist: tol_colors; extra == "common"
|
|
135
|
-
Requires-Dist: large-image-source-multi>=1.30.7.dev18; extra == "common"
|
|
136
|
-
Requires-Dist: large-image-source-rasterio[all]>=1.30.7.dev18; extra == "common"
|
|
137
|
-
Requires-Dist: large-image-source-tifffile>=1.30.7.dev18; extra == "common"
|
|
138
|
-
Requires-Dist: large-image-source-openslide>=1.30.7.dev18; extra == "common"
|
|
139
|
-
Requires-Dist: psutil>=4.2.0; extra == "common"
|
|
140
|
-
Requires-Dist: large-image-source-deepzoom>=1.30.7.dev18; extra == "common"
|
|
141
|
-
Requires-Dist: large-image-source-nd2>=1.30.7.dev18; extra == "common"
|
|
142
142
|
Requires-Dist: simplejpeg; extra == "common"
|
|
143
143
|
|
|
144
144
|
Large Image
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
cachetools
|
|
2
|
+
palettable
|
|
3
|
+
Pillow
|
|
4
|
+
numpy
|
|
5
|
+
typing-extensions
|
|
6
|
+
|
|
7
|
+
[all]
|
|
8
|
+
large-image-source-test>=1.30.7.dev22
|
|
9
|
+
large-image-source-bioformats>=1.30.7.dev22
|
|
10
|
+
large-image-source-openjpeg>=1.30.7.dev22
|
|
11
|
+
large-image-source-tiff[all]>=1.30.7.dev22
|
|
12
|
+
large-image-source-mapnik>=1.30.7.dev22
|
|
13
|
+
large-image-source-tifffile>=1.30.7.dev22
|
|
14
|
+
redis>=4.5.5
|
|
15
|
+
large-image-source-openslide>=1.30.7.dev22
|
|
16
|
+
large-image-converter>=1.30.7.dev22
|
|
17
|
+
large-image-source-dummy>=1.30.7.dev22
|
|
18
|
+
large-image-source-tiff>=1.30.7.dev22
|
|
19
|
+
large-image-source-pil>=1.30.7.dev22
|
|
20
|
+
large-image-source-zarr>=1.30.7.dev22
|
|
21
|
+
large-image-source-ometiff>=1.30.7.dev22
|
|
22
|
+
large-image-source-vips>=1.30.7.dev22
|
|
23
|
+
large-image-source-dicom>=1.30.7.dev22
|
|
24
|
+
large-image-source-rasterio>=1.30.7.dev22
|
|
25
|
+
tol_colors
|
|
26
|
+
large-image-source-deepzoom>=1.30.7.dev22
|
|
27
|
+
pyvips
|
|
28
|
+
matplotlib
|
|
29
|
+
psutil>=4.2.0
|
|
30
|
+
large-image-source-nd2>=1.30.7.dev22
|
|
31
|
+
large-image-source-multi[all]>=1.30.7.dev22
|
|
32
|
+
large-image-source-pil[all]>=1.30.7.dev22
|
|
33
|
+
large-image-source-rasterio[all]>=1.30.7.dev22
|
|
34
|
+
large-image-source-gdal>=1.30.7.dev22
|
|
35
|
+
large-image-source-multi>=1.30.7.dev22
|
|
36
|
+
simplejpeg
|
|
37
|
+
|
|
38
|
+
[all:platform_system != "Windows"]
|
|
39
|
+
pylibmc>=1.5.1
|
|
40
|
+
|
|
41
|
+
[bioformats]
|
|
42
|
+
large-image-source-bioformats>=1.30.7.dev22
|
|
43
|
+
|
|
44
|
+
[colormaps]
|
|
45
|
+
matplotlib
|
|
46
|
+
tol_colors
|
|
47
|
+
|
|
48
|
+
[common]
|
|
49
|
+
large-image-source-dicom>=1.30.7.dev22
|
|
50
|
+
large-image-source-test>=1.30.7.dev22
|
|
51
|
+
large-image-source-deepzoom>=1.30.7.dev22
|
|
52
|
+
large-image-source-multi>=1.30.7.dev22
|
|
53
|
+
psutil>=4.2.0
|
|
54
|
+
matplotlib
|
|
55
|
+
large-image-source-nd2>=1.30.7.dev22
|
|
56
|
+
large-image-source-tifffile>=1.30.7.dev22
|
|
57
|
+
large-image-source-pil[all]>=1.30.7.dev22
|
|
58
|
+
large-image-source-openslide>=1.30.7.dev22
|
|
59
|
+
large-image-source-rasterio[all]>=1.30.7.dev22
|
|
60
|
+
large-image-source-zarr>=1.30.7.dev22
|
|
61
|
+
tol_colors
|
|
62
|
+
simplejpeg
|
|
63
|
+
|
|
64
|
+
[converter]
|
|
65
|
+
large-image-converter>=1.30.7.dev22
|
|
66
|
+
|
|
67
|
+
[deepzoom]
|
|
68
|
+
large-image-source-deepzoom>=1.30.7.dev22
|
|
69
|
+
|
|
70
|
+
[dicom]
|
|
71
|
+
large-image-source-dicom>=1.30.7.dev22
|
|
72
|
+
|
|
73
|
+
[dummy]
|
|
74
|
+
large-image-source-dummy>=1.30.7.dev22
|
|
75
|
+
|
|
76
|
+
[gdal]
|
|
77
|
+
large-image-source-gdal>=1.30.7.dev22
|
|
78
|
+
|
|
79
|
+
[mapnik]
|
|
80
|
+
large-image-source-mapnik>=1.30.7.dev22
|
|
81
|
+
|
|
82
|
+
[memcached]
|
|
83
|
+
|
|
84
|
+
[memcached:platform_system != "Windows"]
|
|
85
|
+
pylibmc>=1.5.1
|
|
86
|
+
|
|
87
|
+
[multi]
|
|
88
|
+
large-image-source-multi>=1.30.7.dev22
|
|
89
|
+
|
|
90
|
+
[nd2]
|
|
91
|
+
large-image-source-nd2>=1.30.7.dev22
|
|
92
|
+
|
|
93
|
+
[ometiff]
|
|
94
|
+
large-image-source-ometiff>=1.30.7.dev22
|
|
95
|
+
|
|
96
|
+
[openjpeg]
|
|
97
|
+
large-image-source-openjpeg>=1.30.7.dev22
|
|
98
|
+
|
|
99
|
+
[openslide]
|
|
100
|
+
large-image-source-openslide>=1.30.7.dev22
|
|
101
|
+
|
|
102
|
+
[performance]
|
|
103
|
+
psutil>=4.2.0
|
|
104
|
+
simplejpeg
|
|
105
|
+
|
|
106
|
+
[pil]
|
|
107
|
+
large-image-source-pil>=1.30.7.dev22
|
|
108
|
+
|
|
109
|
+
[rasterio]
|
|
110
|
+
large-image-source-rasterio>=1.30.7.dev22
|
|
111
|
+
|
|
112
|
+
[redis]
|
|
113
|
+
redis>=4.5.5
|
|
114
|
+
|
|
115
|
+
[sources]
|
|
116
|
+
large-image-source-dicom>=1.30.7.dev22
|
|
117
|
+
large-image-source-pil>=1.30.7.dev22
|
|
118
|
+
large-image-source-test>=1.30.7.dev22
|
|
119
|
+
large-image-source-bioformats>=1.30.7.dev22
|
|
120
|
+
large-image-source-rasterio>=1.30.7.dev22
|
|
121
|
+
large-image-source-openjpeg>=1.30.7.dev22
|
|
122
|
+
large-image-source-deepzoom>=1.30.7.dev22
|
|
123
|
+
large-image-source-nd2>=1.30.7.dev22
|
|
124
|
+
large-image-source-mapnik>=1.30.7.dev22
|
|
125
|
+
large-image-source-tifffile>=1.30.7.dev22
|
|
126
|
+
large-image-source-vips>=1.30.7.dev22
|
|
127
|
+
large-image-source-openslide>=1.30.7.dev22
|
|
128
|
+
large-image-source-zarr>=1.30.7.dev22
|
|
129
|
+
large-image-source-gdal>=1.30.7.dev22
|
|
130
|
+
large-image-source-dummy>=1.30.7.dev22
|
|
131
|
+
large-image-source-tiff>=1.30.7.dev22
|
|
132
|
+
large-image-source-multi>=1.30.7.dev22
|
|
133
|
+
large-image-source-ometiff>=1.30.7.dev22
|
|
134
|
+
|
|
135
|
+
[test]
|
|
136
|
+
large-image-source-test>=1.30.7.dev22
|
|
137
|
+
|
|
138
|
+
[tiff]
|
|
139
|
+
large-image-source-tiff>=1.30.7.dev22
|
|
140
|
+
|
|
141
|
+
[tifffile]
|
|
142
|
+
large-image-source-tifffile>=1.30.7.dev22
|
|
143
|
+
|
|
144
|
+
[tiledoutput]
|
|
145
|
+
pyvips
|
|
146
|
+
|
|
147
|
+
[vips]
|
|
148
|
+
large-image-source-vips>=1.30.7.dev22
|
|
149
|
+
|
|
150
|
+
[zarr]
|
|
151
|
+
large-image-source-zarr>=1.30.7.dev22
|
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
cachetools
|
|
2
|
-
palettable
|
|
3
|
-
Pillow
|
|
4
|
-
numpy
|
|
5
|
-
typing-extensions
|
|
6
|
-
|
|
7
|
-
[all]
|
|
8
|
-
large-image-source-zarr>=1.30.7.dev18
|
|
9
|
-
large-image-source-pil[all]>=1.30.7.dev18
|
|
10
|
-
large-image-source-multi[all]>=1.30.7.dev18
|
|
11
|
-
pyvips
|
|
12
|
-
large-image-source-multi>=1.30.7.dev18
|
|
13
|
-
large-image-source-gdal>=1.30.7.dev18
|
|
14
|
-
large-image-source-tifffile>=1.30.7.dev18
|
|
15
|
-
large-image-source-rasterio>=1.30.7.dev18
|
|
16
|
-
large-image-source-tiff>=1.30.7.dev18
|
|
17
|
-
large-image-source-dicom>=1.30.7.dev18
|
|
18
|
-
redis>=4.5.5
|
|
19
|
-
large-image-source-bioformats>=1.30.7.dev18
|
|
20
|
-
large-image-source-dummy>=1.30.7.dev18
|
|
21
|
-
large-image-source-vips>=1.30.7.dev18
|
|
22
|
-
large-image-source-nd2>=1.30.7.dev18
|
|
23
|
-
large-image-source-rasterio[all]>=1.30.7.dev18
|
|
24
|
-
matplotlib
|
|
25
|
-
large-image-source-mapnik>=1.30.7.dev18
|
|
26
|
-
large-image-converter>=1.30.7.dev18
|
|
27
|
-
large-image-source-test>=1.30.7.dev18
|
|
28
|
-
tol_colors
|
|
29
|
-
psutil>=4.2.0
|
|
30
|
-
large-image-source-openslide>=1.30.7.dev18
|
|
31
|
-
large-image-source-tiff[all]>=1.30.7.dev18
|
|
32
|
-
large-image-source-deepzoom>=1.30.7.dev18
|
|
33
|
-
large-image-source-ometiff>=1.30.7.dev18
|
|
34
|
-
large-image-source-openjpeg>=1.30.7.dev18
|
|
35
|
-
large-image-source-pil>=1.30.7.dev18
|
|
36
|
-
simplejpeg
|
|
37
|
-
|
|
38
|
-
[all:platform_system != "Windows"]
|
|
39
|
-
pylibmc>=1.5.1
|
|
40
|
-
|
|
41
|
-
[bioformats]
|
|
42
|
-
large-image-source-bioformats>=1.30.7.dev18
|
|
43
|
-
|
|
44
|
-
[colormaps]
|
|
45
|
-
matplotlib
|
|
46
|
-
tol_colors
|
|
47
|
-
|
|
48
|
-
[common]
|
|
49
|
-
large-image-source-zarr>=1.30.7.dev18
|
|
50
|
-
large-image-source-pil[all]>=1.30.7.dev18
|
|
51
|
-
matplotlib
|
|
52
|
-
large-image-source-dicom>=1.30.7.dev18
|
|
53
|
-
large-image-source-test>=1.30.7.dev18
|
|
54
|
-
tol_colors
|
|
55
|
-
large-image-source-multi>=1.30.7.dev18
|
|
56
|
-
large-image-source-rasterio[all]>=1.30.7.dev18
|
|
57
|
-
large-image-source-tifffile>=1.30.7.dev18
|
|
58
|
-
large-image-source-openslide>=1.30.7.dev18
|
|
59
|
-
psutil>=4.2.0
|
|
60
|
-
large-image-source-deepzoom>=1.30.7.dev18
|
|
61
|
-
large-image-source-nd2>=1.30.7.dev18
|
|
62
|
-
simplejpeg
|
|
63
|
-
|
|
64
|
-
[converter]
|
|
65
|
-
large-image-converter>=1.30.7.dev18
|
|
66
|
-
|
|
67
|
-
[deepzoom]
|
|
68
|
-
large-image-source-deepzoom>=1.30.7.dev18
|
|
69
|
-
|
|
70
|
-
[dicom]
|
|
71
|
-
large-image-source-dicom>=1.30.7.dev18
|
|
72
|
-
|
|
73
|
-
[dummy]
|
|
74
|
-
large-image-source-dummy>=1.30.7.dev18
|
|
75
|
-
|
|
76
|
-
[gdal]
|
|
77
|
-
large-image-source-gdal>=1.30.7.dev18
|
|
78
|
-
|
|
79
|
-
[mapnik]
|
|
80
|
-
large-image-source-mapnik>=1.30.7.dev18
|
|
81
|
-
|
|
82
|
-
[memcached]
|
|
83
|
-
|
|
84
|
-
[memcached:platform_system != "Windows"]
|
|
85
|
-
pylibmc>=1.5.1
|
|
86
|
-
|
|
87
|
-
[multi]
|
|
88
|
-
large-image-source-multi>=1.30.7.dev18
|
|
89
|
-
|
|
90
|
-
[nd2]
|
|
91
|
-
large-image-source-nd2>=1.30.7.dev18
|
|
92
|
-
|
|
93
|
-
[ometiff]
|
|
94
|
-
large-image-source-ometiff>=1.30.7.dev18
|
|
95
|
-
|
|
96
|
-
[openjpeg]
|
|
97
|
-
large-image-source-openjpeg>=1.30.7.dev18
|
|
98
|
-
|
|
99
|
-
[openslide]
|
|
100
|
-
large-image-source-openslide>=1.30.7.dev18
|
|
101
|
-
|
|
102
|
-
[performance]
|
|
103
|
-
psutil>=4.2.0
|
|
104
|
-
simplejpeg
|
|
105
|
-
|
|
106
|
-
[pil]
|
|
107
|
-
large-image-source-pil>=1.30.7.dev18
|
|
108
|
-
|
|
109
|
-
[rasterio]
|
|
110
|
-
large-image-source-rasterio>=1.30.7.dev18
|
|
111
|
-
|
|
112
|
-
[redis]
|
|
113
|
-
redis>=4.5.5
|
|
114
|
-
|
|
115
|
-
[sources]
|
|
116
|
-
large-image-source-zarr>=1.30.7.dev18
|
|
117
|
-
large-image-source-deepzoom>=1.30.7.dev18
|
|
118
|
-
large-image-source-mapnik>=1.30.7.dev18
|
|
119
|
-
large-image-source-test>=1.30.7.dev18
|
|
120
|
-
large-image-source-multi>=1.30.7.dev18
|
|
121
|
-
large-image-source-gdal>=1.30.7.dev18
|
|
122
|
-
large-image-source-nd2>=1.30.7.dev18
|
|
123
|
-
large-image-source-openslide>=1.30.7.dev18
|
|
124
|
-
large-image-source-tifffile>=1.30.7.dev18
|
|
125
|
-
large-image-source-rasterio>=1.30.7.dev18
|
|
126
|
-
large-image-source-tiff>=1.30.7.dev18
|
|
127
|
-
large-image-source-dicom>=1.30.7.dev18
|
|
128
|
-
large-image-source-ometiff>=1.30.7.dev18
|
|
129
|
-
large-image-source-bioformats>=1.30.7.dev18
|
|
130
|
-
large-image-source-openjpeg>=1.30.7.dev18
|
|
131
|
-
large-image-source-dummy>=1.30.7.dev18
|
|
132
|
-
large-image-source-pil>=1.30.7.dev18
|
|
133
|
-
large-image-source-vips>=1.30.7.dev18
|
|
134
|
-
|
|
135
|
-
[test]
|
|
136
|
-
large-image-source-test>=1.30.7.dev18
|
|
137
|
-
|
|
138
|
-
[tiff]
|
|
139
|
-
large-image-source-tiff>=1.30.7.dev18
|
|
140
|
-
|
|
141
|
-
[tifffile]
|
|
142
|
-
large-image-source-tifffile>=1.30.7.dev18
|
|
143
|
-
|
|
144
|
-
[tiledoutput]
|
|
145
|
-
pyvips
|
|
146
|
-
|
|
147
|
-
[vips]
|
|
148
|
-
large-image-source-vips>=1.30.7.dev18
|
|
149
|
-
|
|
150
|
-
[zarr]
|
|
151
|
-
large-image-source-zarr>=1.30.7.dev18
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/girder_annotation_config_options.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/docs/notebooks/zarr_sink_example.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/cache_util/cachefactory.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image/tilesource/tileiterator.py
RENAMED
|
File without changes
|
|
File without changes
|
{large_image-1.30.7.dev18 → large_image-1.30.7.dev22}/large_image.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|