Repository files navigation

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}
, '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

DepthClassNet

License: CC BY-NC 4.0PythonPyTorch

Official implementation ofDepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging (Abdallah & Raza, MIUA 2025).
Springer • DOI: 10.1007/978-3-031-98691-8_17

DepthClassNet is a novel multitask framework for monocular depth estimation and texture classification in endoscopic (colonoscopy) imaging. It predicts per-pixel depth from a single RGB frame while classifying tissue texture, improving spatial understanding and scene interpretation for downstream clinical research.

DepthClassNet predictions on the UCL dataset
DepthClassNet predictions on the UCL dataset

DepthClassNet predictions on the C3VD dataset
DepthClassNet predictions on the UCL dataset

Keywords: monocular depth estimation, depth prediction, endoscopy, colonoscopy, medical imaging, PyTorch, multitask learning, texture classification, Swin Transformer, CLIP

DepthClassNet Environment

  • Python 3.11.10 (recommended)
  • PyTorch ≥ 2.2
  • See requirements.txt for full dependencies

Create & activate virtual environment

python3 -m venv myenv source myenv/bin/activate

DepthClassNet Installation dependencies

pip install -r requirements.txt

Datasets

Dataset tree

  • Once downloaded, organise the datasets exactly as shown below; the dataloader relies on this layout.

Data/
├── c3vd/
│ ├── cecum_t1_a/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ ├── …
│ │ ├── 0275_color.png
│ │ └── 0275_depth.tiff
│ ├── cecum_t1_b/
│ │ ├── 0000_color.png
│ │ ├── 0000_depth.tiff
│ │ └── …
│ ├── cecum_t2_b/
│ └── trans_t4_a/
├── ucl/
│ ├── C_T3_L2_3_resized_FrameBuffer_0315.png
│ ├── C_T3_L2_3_resized_Depth_0315.png
│ ├── …
│ ├── C_T3_L2_3_resized_FrameBuffer_4515.png
│ └── C_T3_L2_3_resized_Depth_4515.png
└── splits/
├── ucl_train.txt
├── ucl_val.txt
└── ucl_test.txt

DepthClassNet Checkpoints:

Official pretrained weights can be downloaded here: DepthClassNet Checkpoints (OneDrive)

License

This repository is licensed under the Creative Commons Attribution-NonCommercial 4.0 International License.

✔ Free for research and educational use.
❌ Commercial use is not permitted.

Citation

If you use this code for your research, please cite our paper:

@InProceedings{10.1007/978-3-031-98691-8_17,
author="Abdallah, Bashayerand Raza, Shan E. Ahmed",
editor="Ali, Shariband Hogg, David C.and Peckham, Michelle",
title="DepthClassNet: A Multitask Framework for Monocular Depth Estimation and Texture Classification in Endoscopic Imaging",
booktitle="Medical Image Understanding and Analysis",
year="2026",
publisher="Springer Nature Switzerland",
address="Cham",
pages="230--246",
abstract="Monocular depth estimation can play a critical role in medical imaging, providing spatial information that enhances diagnostic accuracy and supports precise surgical interventions. The texture classification in the endoscopic images significantly contributes to the differentiation of tissue types and the identification of pathological changes. Building on this knowledge, we introduce DepthClassNet, an innovative multitask framework designed to simultaneously perform monocular depth estimation and texture classification in endoscopic imaging. Our approach employs a tri-encoder model to integrate RGB images, edge maps, and textual descriptions. The architecture comprises a SWIN transformer as an image encoder, a convolutional neural network (CNN) as an edge encoder, and a modified CLIP text encoder for embedding class textual descriptions. Features from the image and edge encoders are effectively combined via a Feature Fusion Module (FFM), and high-resolution depth outputs are reconstructed through a decoder and depth projection block. We introduce an image embedding block that converts visual data from the SWIN encoder into embeddings that align with CLIP text embeddings. The classification head then computes similarity scores, scales them by a learnable temperature {\$}{\$}t{\$}{\$}t, and converts them into probabilities. By designing a loss function that combines depth, edge and classification losses with specific weights, our multitask architecture achieves state-of-the-art results on the Colonoscopy Depth - UCL dataset for depth estimation and texture classification.",
isbn="978-3-031-98691-8"
}