Skip to content

NEW: Add NuClick architecture#449

Merged
shaneahmed merged 69 commits into
developfrom
feature-nuclick-architecture
Nov 14, 2022
Merged

NEW: Add NuClick architecture#449
shaneahmed merged 69 commits into
developfrom
feature-nuclick-architecture

Conversation

@mostafajahanifar

Copy link
Copy Markdown
Collaborator

This PR adds NuClick architecture, as described in the paper below, to the toolbox.

Koohbanani, Navid Alemi, et al. "NuClick: a deep learning framework for interactive segmentation of microscopic images." Medical Image Analysis 65 (2020): 101771.

Comment thread tiatoolbox/models/architecture/nuclick.py
Comment thread tiatoolbox/models/architecture/nuclick.py Outdated
Comment thread tiatoolbox/models/architecture/nuclick.py
Comment thread tiatoolbox/models/architecture/nuclick.py Outdated
Comment thread tiatoolbox/models/architecture/nuclick.py Outdated
Comment thread tiatoolbox/models/architecture/nuclick.py Outdated
Comment thread tiatoolbox/models/architecture/nuclick.py
Comment thread tiatoolbox/models/architecture/nuclick.py
Comment thread tiatoolbox/models/architecture/nuclick.py Outdated
@codecov

codecov Bot commented Aug 26, 2022

Copy link
Copy Markdown

Codecov Report

Merging #449 (1c678e9) into develop (a90b330) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##           develop     #449    +/-   ##
=========================================
  Coverage    99.63%   99.63%            
=========================================
  Files           61       62     +1     
  Lines         6240     6379   +139     
  Branches      1035     1043     +8     
=========================================
+ Hits          6217     6356   +139     
  Misses          10       10            
  Partials        13       13            
Impacted Files Coverage Δ
tiatoolbox/models/architecture/idars.py 100.00% <100.00%> (ø)
tiatoolbox/models/architecture/mapde.py 100.00% <100.00%> (ø)
tiatoolbox/models/architecture/micronet.py 100.00% <100.00%> (ø)
tiatoolbox/models/architecture/nuclick.py 100.00% <100.00%> (ø)
tiatoolbox/models/architecture/sccnn.py 100.00% <100.00%> (ø)
tiatoolbox/models/architecture/unet.py 100.00% <100.00%> (ø)

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@shaneahmed shaneahmed added the enhancement New feature or request label Sep 1, 2022
shaneahmed and others added 15 commits September 2, 2022 11:38
Co-authored-by: Shan E Ahmed Raza <13048456+shaneahmed@users.noreply.github.com>
Co-authored-by: Shan E Ahmed Raza <13048456+shaneahmed@users.noreply.github.com>
Co-authored-by: Shan E Ahmed Raza <13048456+shaneahmed@users.noreply.github.com>
Co-authored-by: Shan E Ahmed Raza <13048456+shaneahmed@users.noreply.github.com>
Co-authored-by: Shan E Ahmed Raza <13048456+shaneahmed@users.noreply.github.com>
Comment thread tiatoolbox/models/architecture/nuclick.py Outdated

@shaneahmed shaneahmed left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @mostafajahanifar and @kesixu. Please can you address some minor comments. We should be ready to merge it then.

@mostafajahanifar mostafajahanifar deleted the feature-nuclick-architecture branch November 9, 2022 17:24
@mostafajahanifar

Copy link
Copy Markdown
Collaborator Author

Dear @shaneahmed

I revised the code to make the input to all models consistent with num_output_channels argument. In particular, I changed MicroNet argument to num_output_channels but for MapDe changed it to num_classes because argument is actually referring to number of cell classes based on which number of output channels is generated ( num_output_channels=2*num_classes ).

I have also refactor all the models to use predefined (base class) preproc method instead of _tranform method. And made some other changes to avoid [PYL-W0221] pylint error.

@shaneahmed

Copy link
Copy Markdown
Member

Dear @shaneahmed

I revised the code to make the input to all models consistent with num_output_channels argument. In particular, I changed MicroNet argument to num_output_channels but for MapDe changed it to num_classes because argument is actually referring to number of cell classes based on which number of output channels is generated ( num_output_channels=2*num_classes ).

I have also refactor all the models to use predefined (base class) preproc method instead of _tranform method. And made some other changes to avoid [PYL-W0221] pylint error.

Thanks @mostafajahanifar Please can you check the errors?

@shaneahmed shaneahmed merged commit 1f0c8ea into develop Nov 14, 2022
shaneahmed added a commit that referenced this pull request Dec 20, 2022
# 1.3.1 (2022-12-20)

### Major Updates and Feature Improvements

- Adds [NuClick](https://arxiv.org/abs/2005.14511) architecture #449
- Adds Annotation Store Reader #476
- Adds [DFBR](https://arxiv.org/abs/2202.09971) method for registering pair of images #510

### Changes to API

- Adds a sample SVS loading function `tiatoolbox.data.small_svs()` to the data module #517

### Bug Fixes and Other Changes

- Simplifies example notebook for image reading for better readability
- Restricts Shapely version to \<2.0.0 for compatibility

### Development related changes

- Adds GitHub workflow for automatic generation of docker image
- Updates dependencies
- Updates bump2version config
- Enables flake8 E800 checks for commented codes.
- Fixes several errors generated by DeepSource.
- Prevent test dumping file to root
- Removes duplicate functions to generate parameterized test scenarios

Co-authored-by: John Pocock <John-P@users.noreply.github.com>
Co-authored-by: Mark Eastwood <20169086+measty@users.noreply.github.com>
Co-authored-by: Ruqayya Awan <18444369+ruqayya@users.noreply.github.com>
Co-authored-by: Mostafa Jahanifar <74412979+mostafajahanifar@users.noreply.github.com>
Co-authored-by: kesixu <98600542+kesixu@users.noreply.github.com>
Co-authored-by: David Epstein <22086916+DavidBAEpstein@users.noreply.github.com>
Co-authored-by: adamshephard <39619155+adamshephard@users.noreply.github.com>
Co-authored-by: Simon Graham <20071401+simongraham@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Roger Trullo <rogertrullo@hotmail.com>
shaneahmed added a commit that referenced this pull request Dec 20, 2022
- Adds [NuClick](https://arxiv.org/abs/2005.14511) architecture #449
- Adds Annotation Store Reader #476
- Adds [DFBR](https://arxiv.org/abs/2202.09971) method for registering pair of images #510

- Adds a sample SVS loading function `tiatoolbox.data.small_svs()` to the data module #517

- Simplifies example notebook for image reading for better readability
- Restricts Shapely version to \<2.0.0 for compatibility

- Adds GitHub workflow for automatic generation of docker image
- Updates dependencies
- Updates bump2version config
- Enables flake8 E800 checks for commented codes.
- Fixes several errors generated by DeepSource.
- Prevent test dumping file to root
- Removes duplicate functions to generate parameterized test scenarios

Co-authored-by: John Pocock <John-P@users.noreply.github.com>
Co-authored-by: Mark Eastwood <20169086+measty@users.noreply.github.com>
Co-authored-by: Ruqayya Awan <18444369+ruqayya@users.noreply.github.com>
Co-authored-by: Mostafa Jahanifar <74412979+mostafajahanifar@users.noreply.github.com>
Co-authored-by: kesixu <98600542+kesixu@users.noreply.github.com>
Co-authored-by: David Epstein <22086916+DavidBAEpstein@users.noreply.github.com>
Co-authored-by: adamshephard <39619155+adamshephard@users.noreply.github.com>
Co-authored-by: Simon Graham <20071401+simongraham@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Roger Trullo <rogertrullo@hotmail.com>
shaneahmed added a commit that referenced this pull request Dec 20, 2022
# 1.3.1 (2022-12-20)

### Major Updates and Feature Improvements

- Adds [NuClick](https://arxiv.org/abs/2005.14511) architecture #449
- Adds Annotation Store Reader #476
- Adds [DFBR](https://arxiv.org/abs/2202.09971) method for registering pair of images #510

### Changes to API

- Adds a sample SVS loading function `tiatoolbox.data.small_svs()` to the data module #517

### Bug Fixes and Other Changes

- Simplifies example notebook for image reading for better readability
- Restricts Shapely version to \<2.0.0 for compatibility

### Development related changes

- Adds GitHub workflow for automatic generation of docker image
- Updates dependencies
- Updates bump2version config
- Enables flake8 E800 checks for commented codes.
- Fixes several errors generated by DeepSource.
- Prevent test dumping file to root
- Removes duplicate functions to generate parameterized test scenarios

Co-authored-by: John Pocock <John-P@users.noreply.github.com>
Co-authored-by: Mostafa Jahanifar <74412979+mostafajahanifar@users.noreply.github.com>
Co-authored-by: Adam Shephard <39619155+adamshephard@users.noreply.github.com>
Co-authored-by: David Epstein <22086916+DavidBAEpstein@users.noreply.github.com>
Co-authored-by: Simon Graham <20071401+simongraham@users.noreply.github.com>
Co-authored-by: Mark Eastwood <20169086+measty@users.noreply.github.com>
Co-authored-by: Ruqayya Awan <18444369+ruqayya@users.noreply.github.com>
Co-authored-by: Kesi Xu<98600542+kesixu@users.noreply.github.com>
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

Successfully merging this pull request may close these issues.

4 participants