Skip to content

Commit 9a79cb0

Browse files
authored
REL: Pre-release 0.4.0 (#48)
### Major and Feature Improvements - Adds `OpenSlideWSIReader` to read Openslide image formats - Adds support to read Omnyx jp2 images using `OmnyxJP2WSIReader`. - New feature added to perform stain normalisation using `Ruifork`, `Reinhard`, `Vahadane`, `Macenko` methods and using custom stain matrices. - Adds example notebook to read whole slide images via the toolbox. - Adds `WSIMeta` class to save meta data for whole slide images. `WSIMeta` casts properties to python types. Properties from OpenSlide are returned as string. raw values can always be accessed via `slide.raw`. Adds data validation e.g., checking that level_count matches up with the length of the `level_dimensions` and `level_downsamples`. Adds type hints to `WSIMeta`. - Adds exceptions `FileNotSupported` and `MethodNotSupported` ### Changes to API - Restructures `WSIReader` as parent class to allow support to read whole slide images in other formats. - Adds `slide_info` as a property of `WSIReader` - Updates `slide_info` type to `WSIMeta` from `dict` - Depericiates support for multiprocessing from within the toolbox. The toolbox is focussed on processing single whole slide and standard images. External libraries can be used to run using multi processing on multiple files. ### Bug Fixes and Other Changes - Adds `scikit-learn`, `glymur` as a dependency - Adds licence information - Removes `pathos` as a dependency - Updates `openslide-python` requirement to 1.1.2 Co-authored-by: Shan E Ahmed @shaneahmed, John Pocock @John-P, Simon Graham @simongraham, Dang Vu @vqdang, Srijay Deshpande @Srijay-lab, Saad Bashir @rajasaad
1 parent d9d9251 commit 9a79cb0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+3214
-583
lines changed

.deepsource.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ version = 1
22

33
test_patterns = ["tests/test_*.py"]
44

5+
exclude_patterns = ["docs/*.py"]
6+
57
[[analyzers]]
68
name = "python"
79
enabled = true

.gitignore

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ __pycache__/
66
# C extensions
77
*.so
88

9+
tmp
10+
911
# Distribution / packaging
1012
.Python
1113
env/
@@ -102,4 +104,8 @@ ENV/
102104
.mypy_cache/
103105

104106
# IDE settings
105-
.vscode/
107+
.vscode/
108+
109+
examples/*.py
110+
# Mac generated
111+
.DS_Store

.travis.yml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,22 @@ python:
77
- 3.6
88

99
before_install:
10+
- sudo apt-get -y update
1011
- sudo apt-get -y install openslide-tools
12+
- sudo apt-get -y install libopenjpeg5 libopenjpeg-dev
1113

1214
# Command to install dependencies, e.g. pip install -r requirements.txt --use-mirrors
13-
install: pip install -U tox-travis
15+
install:
16+
- wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
17+
- bash miniconda.sh -b -p $HOME/miniconda
18+
- source "$HOME/miniconda/etc/profile.d/conda.sh"
19+
- pip install -U tox-travis
20+
1421

1522
# Command to run tests, e.g. python setup.py test
16-
script: tox
23+
script:
24+
- tox -e $(echo py$TRAVIS_PYTHON_VERSION | tr -d .)
25+
- tox -e flake8
1726

1827
# Upload test coverage reports (codecov and deepsource)
1928
after_success:

AUTHORS.md

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,15 @@ Credits
44
Development Lead
55
----------------
66

7-
- TIA Lab <tialab@dcs.warwick.ac.uk>
8-
- Shan E Ahmed Raza <shaneahmed>
9-
- John Pocock <John-P>
10-
- Simon Graham <simongraham>
7+
- TIA Lab <tialab@dcs.warwick.ac.uk>
8+
- Shan E Ahmed Raza <shaneahmed>
9+
- John Pocock <John-P>
10+
- Simon Graham <simongraham>
11+
- Dang Vu <vqdang>
1112

1213
Contributors
1314
------------
1415

15-
- Jev Gamper &lt;jgamper&gt;
16-
- Dang Vu &lt;vqdang&gt;
17-
- Srijay Deshpande &lt;Srijay-lab&gt;
16+
- Jev Gamper <jgamper>
17+
- Srijay Deshpande <Srijay-lab>
18+
- Saad Bashir <rajasaad>

CONTRIBUTING.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Types of Contributions
1515
Report Bugs
1616
~~~~~~~~~~~
1717

18-
Report bugs at https://github.com/tialab/tiatoolbox/issues.
18+
Report bugs at https://github.com/TIA-Lab/tiatoolbox/issues.
1919

2020
If you are reporting a bug, please include:
2121

@@ -45,7 +45,7 @@ articles, and such.
4545
Submit Feedback
4646
~~~~~~~~~~~~~~~
4747

48-
The best way to send feedback is to file an issue at https://github.com/tialab/tiatoolbox/issues.
48+
The best way to send feedback is to file an issue at https://github.com/TIA-Lab/tiatoolbox/issues.
4949

5050
If you are proposing a feature:
5151

HISTORY.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,33 @@
11
History
22
=======
33

4+
0.4.0 (2020-10-25)
5+
------------------
6+
7+
### Major and Feature Improvements
8+
9+
- Adds `OpenSlideWSIReader` to read Openslide image formats
10+
- Adds support to read Omnyx jp2 images using `OmnyxJP2WSIReader`.
11+
- New feature added to perform stain normalisation using `Ruifork`, `Reinhard`, `Vahadane`, `Macenko` methods and using custom stain matrices.
12+
- Adds example notebook to read whole slide images via the toolbox.
13+
- Adds `WSIMeta` class to save meta data for whole slide images. `WSIMeta` casts properties to python types. Properties from OpenSlide are returned as string. raw values can always be accessed via `slide.raw`. Adds data validation e.g., checking that level_count matches up with the length of the `level_dimensions` and `level_downsamples`. Adds type hints to `WSIMeta`.
14+
- Adds exceptions `FileNotSupported` and `MethodNotSupported`
15+
16+
17+
### Changes to API
18+
19+
- Restructures `WSIReader` as parent class to allow support to read whole slide images in other formats.
20+
- Adds `slide_info` as a property of `WSIReader`
21+
- Updates `slide_info` type to `WSIMeta` from `dict`
22+
- Depericiates support for multiprocessing from within the toolbox. The toolbox is focussed on processing single whole slide and standard images. External libraries can be used to run using multi processing on multiple files.
23+
24+
### Bug Fixes and Other Changes
25+
26+
- Adds `scikit-learn`, `glymur` as a dependency
27+
- Adds licence information
28+
- Removes `pathos` as a dependency
29+
- Updates `openslide-python` requirement to 1.1.2
30+
431
0.3.0 (2020-07-19)
532
------------------
633

0 commit comments

Comments
 (0)