Skip to content

Conversation

@Jiaqi-Lv
Copy link
Collaborator

@Jiaqi-Lv Jiaqi-Lv commented Oct 25, 2025

This PR adds GrandQC tissue detection (Unet++) model to TIAToolBox models. GrandQC Original Github.

Tasks

  • Re-host GrandQC model weights on TIA Hugging Face
  • Update pretrained_model.yaml
  • Update requirements.txt
  • Define GrandQC model architecture
  • Add tests
  • Add example usage

I added segmentation-models-pytorch to the requirements, this is necessary because otherwise we would have to re-define the UNet++ architecture. (My cell detection model (KongNet) and tissue segmentation model (from PUMA Challenge) also uses some modules from this library). I think this is a very useful library.

@Jiaqi-Lv Jiaqi-Lv self-assigned this Oct 25, 2025
@Jiaqi-Lv Jiaqi-Lv added the enhancement New feature or request label Oct 25, 2025
@codecov
Copy link

codecov bot commented Oct 25, 2025

Codecov Report

❌ Patch coverage is 79.06977% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 94.65%. Comparing base (b542c9a) to head (5c5bfc4).

Files with missing lines Patch % Lines
tiatoolbox/models/architecture/grandqc.py 79.06% 8 Missing and 1 partial ⚠️
Additional details and impacted files
@@                    Coverage Diff                     @@
##           dev-define-engines-abc     #965      +/-   ##
==========================================================
- Coverage                   94.72%   94.65%   -0.08%     
==========================================================
  Files                          73       74       +1     
  Lines                        9235     9278      +43     
  Branches                     1208     1209       +1     
==========================================================
+ Hits                         8748     8782      +34     
- Misses                        452      460       +8     
- Partials                       35       36       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Jiaqi-Lv Jiaqi-Lv requested a review from Copilot October 25, 2025 20:22
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR integrates the GrandQC tissue detection model into TIAToolBox, adding a UNet++ based tissue segmentation capability trained at 10 microns per pixel resolution. The implementation leverages the segmentation-models-pytorch library to avoid reimplementing the UNet++ architecture.

  • Adds GrandQC tissue detection model architecture and pretrained weights
  • Integrates model with existing tissue masking functionality
  • Adds comprehensive test coverage and example usage

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
tiatoolbox/models/architecture/grandqc.py Defines the TissueDetectionModel class with UNet++ architecture and custom preprocessing/postprocessing
tiatoolbox/data/pretrained_model.yaml Adds GrandQC model configuration and fixes IOConfig class references across multiple models
tests/models/test_arch_grandqc.py Implements unit tests for model creation, weight loading, and inference
requirements/requirements.txt Adds segmentation-models-pytorch dependency
tiatoolbox/wsicore/wsireader.py Integrates GrandQC masker into tissue_mask method with 10mpp resolution handling

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Jiaqi-Lv Jiaqi-Lv requested a review from Copilot October 25, 2025 20:53
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

2 participants