Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment

arXivGreetingsLicensepages-build-deploymentDocumentationStatusLast CommitPythonCondaPyTorchCUDAFlorence-SAMBuild

News

📢 November 2025 — CORE Released as Open-Source The first public release of CORE, a unified coarse-to-fine multi-stain image registration engine, is now available. This release includes prompt-guided mask generation, accelerated features based coarse alignment, nuclei-level refinement, and real-time deformation visualization.

📝 November 2025 — Updated Preprint Available on arXiv. The team has released an updated version of the CORE preprint, expanding on the architecture, benchmarks, and qualitative results. Check out the newest version here: arXiv:2403.05780.

🎥 New TIAViz Integration Demo - Added a full registration workflow demo showing real-time deformation fields and alignment quality inside TIAViz, enabling seamless analysis for whole-slide images.

🧪 Sample Notebooks Added - End-to-end Jupyter notebooks for coarse and fine alignment have been added, making it easier for users to experiment with CORE immediately.

Introduction

CORE is a fast and accurate coarse-to-fine image registration engine designed for aligning multi-stain whole-slide images. It combines prompt-based tissue masking, rapid coarse alignment, and nuclei-level fine registration to deliver precise cell-level correspondence across stains. With real-time deformation visualization and easy integration, CORE enables reliable multi-stain analysis for digital pathology workflows.

Features

  • Prompt-based Tissue Mask Extraction.
  • Fast coarse level multi-stain image registration.
  • Fine-grained Nuclei-level precise alignment on re-stained sections and tissue alignment on consecutive sections.
  • Real time deformation estimation and Registration visualisation.

CORE Architecture

CORE VISUALIZATION

Registration Visualization on TIAViz

Installation

  1. Clone the repo.
  2. change directory to project directory
  3. Create conda enivornment for installing the required dependencies using the following command
    conda env create -f environment.yml
    conda activate core
    

Set API Keys as Environment Variables

  1. For our prompt-based tissue mask generation. You must set the VisionAgent API key as environment variables. Each operating system offers different ways to do this. Here is the code for setting the variables:
export VISION_AGENT_API_KEY="your-api-key"
  1. For UNet based tissue mask extraction we have made the weights publicly available on hugging face. CORE

Configuration

Edit config.py to set your file paths and resolution parameters:

# Update these paths to match your dataSOURCE_WSI_PATH="/path/to/your/source_wsi.tiff"TARGET_WSI_PATH="/path/to/your/target_wsi.tiff"

Usage

Example of both coarse and fine registration have been placed under the notebooks folder.

How to Cite

@misc{nasir2025corecelllevelcoarsetofine,
title={CORE - A Cell-Level Coarse-to-Fine Image Registration Engine for Multi-stain Image Alignment}, author={Esha Sadia Nasir and Behnaz Elhaminia and Mark Eastwood and Catherine King and Owen Cain and Lorraine Harper and Paul Moss and Dimitrios Chanouzas and David Snead and Nasir Rajpoot and Adam Shephard and Shan E Ahmed Raza},
year={2025},
eprint={2511.03826},
archivePrefix={arXiv},
primaryClass={q-bio.QM},
url={https://arxiv.org/abs/2511.03826}, }

CORE Registration DEMO

demo.mov

About

CORE is a coarse-to-fine framework for nuclei-level registration of multimodal whole-slide images. It integrates tissue mask extraction, global alignment, and fine-grained nuclei registration, followed by cellular-level non-rigid alignment. This demonstration highlights CORE’s ability to achieve precise and robust alignment across diverse stains.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages