Skip to content

add feature extractor TICON and bug fixes#142

Merged
s1787956 merged 20 commits intomainfrom
dev/multitask
Feb 10, 2026
Merged

add feature extractor TICON and bug fixes#142
s1787956 merged 20 commits intomainfrom
dev/multitask

Conversation

@mducducd
Copy link
Collaborator

@mducducd mducducd commented Jan 12, 2026

  • Add new h_optimus1+ticon extractor. In the mean time, this TICON checkpoint achived best benchmark with H-Optimus-1 as the tile encoder whether it's from individual or omni pretraining; a separate feature-level TICON stage can be considered later as more state-of-the-art foundation extractors become available. Also they will public tangle model for slide-level later.
  • Fix: TITAN operates on patch grid geometry, not microns, so patch spacing must be inferred from coordinate stride rather than assumed from physical size.
  • Fix: Correcting StratifiedKFold by event/status (survival analysis)

…itask

# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
@mducducd mducducd changed the title add feature extractor TICON add feature extractor TICON and bug fixes Jan 28, 2026
@FWao
Copy link
Member

FWao commented Jan 28, 2026

@mducducd Please add tests.

We should also do some end-to-end tests to validate TICON works.

@mducducd
Copy link
Collaborator Author

mducducd commented Jan 28, 2026

feature_extractor test takes all extractors in ExtractorName collection.

class ExtractorName(StrEnum):

I rerun extractor test and all 17 extractors was tested including Ticon (h_optimus_1 integrated). I am not sure the run checks showed on github, virchow family are also missing.

"""Align vir2 features to ctp features based on coordinates."""
ref = np.round(np.asarray(ref_coords_um, dtype=np.float64), decimals)
oth = np.round(np.asarray(other_coords_um, dtype=np.float64), decimals)

Copy link
Contributor

Choose a reason for hiding this comment

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

please add some more comments on what is happening here

@@ -0,0 +1,730 @@
import math
Copy link
Contributor

Choose a reason for hiding this comment

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

please reference the preprint and github repo where we adapted this from

Copy link
Contributor

Choose a reason for hiding this comment

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

We maybe should / need to do this for all encoders / models that we use / adapt from.. they usually also come with licenses.. but I think a proper reference should do it for now. Would be best at beginning of the specific file (additionally summarized at end of readme or getting started guide)

@s1787956 s1787956 merged commit 5dd0031 into main Feb 10, 2026
28 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants