|
--- |
|
tags: |
|
- image-classification |
|
- feature-extraction |
|
- timm |
|
- biology |
|
- cancer |
|
- histology |
|
- TIA |
|
- tiatoolbox |
|
library_name: timm |
|
pipeline_tag: image-classification |
|
license: cc0-1.0 |
|
datasets: |
|
- 1aurent/PatchCamelyon |
|
--- |
|
|
|
# Model card for densenet161.tiatoolbox-pcam |
|
|
|
A DenseNet image classification model. \ |
|
Trained by [Tissue Image Analytics (TIA) Centre](https://warwick.ac.uk/fac/cross_fac/tia/) on "pcam" histology patches. |
|
|
|
![](https://raw.githubusercontent.com/TissueImageAnalytics/tiatoolbox/develop/docs/tiatoolbox-logo.png) |
|
|
|
## Model Details |
|
|
|
- **Model Type:** Image classification / Feature backbone |
|
- **Model Stats:** |
|
- Params (M): 26.7 |
|
- Image size: 96 x 96 x 3 |
|
- **Dataset**: [Patch Camelyon (PCam)](https://github.com/basveeling/pcam/) |
|
- **Original:** https://github.com/TissueImageAnalytics/tiatoolbox |
|
- **License**: [Creative Commons Zero v1.0 Universal](https://creativecommons.org/publicdomain/zero/1.0/legalcode) |
|
|
|
## Model Usage |
|
|
|
### Image Classification |
|
|
|
```python |
|
from urllib.request import urlopen |
|
from PIL import Image |
|
import torch.nn as nn |
|
import timm |
|
|
|
# get example histology image |
|
img = Image.open( |
|
urlopen( |
|
"https://github.com/owkin/HistoSSLscaling/raw/main/assets/example.tif" |
|
) |
|
) |
|
|
|
# load model from the hub |
|
model = timm.create_model( |
|
model_name="hf-hub:1aurent/densenet161.tiatoolbox-pcam", |
|
pretrained=True, |
|
).eval() |
|
|
|
# get model specific transforms (normalization, resize) |
|
data_config = timm.data.resolve_model_data_config(model) |
|
transforms = timm.data.create_transform(**data_config, is_training=False) |
|
|
|
data = transforms(img).unsqueeze(0) # input is a (batch_size, num_channels, img_size, img_size) shaped tensor |
|
output = model(data) # output is a (batch_size, num_features) shaped tensor |
|
``` |
|
|
|
### Image Embeddings |
|
|
|
```python |
|
from urllib.request import urlopen |
|
from PIL import Image |
|
import torch.nn as nn |
|
import timm |
|
|
|
# get example histology image |
|
img = Image.open( |
|
urlopen( |
|
"https://github.com/owkin/HistoSSLscaling/raw/main/assets/example.tif" |
|
) |
|
) |
|
|
|
# load model from the hub |
|
model = timm.create_model( |
|
model_name="hf-hub:1aurent/densenet161.tiatoolbox-pcam", |
|
pretrained=True, |
|
num_classes=0, |
|
).eval() |
|
|
|
# get model specific transforms (normalization, resize) |
|
data_config = timm.data.resolve_model_data_config(model) |
|
transforms = timm.data.create_transform(**data_config, is_training=False) |
|
|
|
data = transforms(img).unsqueeze(0) # input is a (batch_size, num_channels, img_size, img_size) shaped tensor |
|
output = model(data) # output is a (batch_size, num_features) shaped tensor |
|
``` |
|
|
|
## Citation |
|
|
|
```bibtex |
|
@article{Pocock2022, |
|
author = {Pocock, Johnathan and Graham, Simon and Vu, Quoc Dang and Jahanifar, Mostafa and Deshpande, Srijay and Hadjigeorghiou, Giorgos and Shephard, Adam and Bashir, Raja Muhammad Saad and Bilal, Mohsin and Lu, Wenqi and Epstein, David and Minhas, Fayyaz and Rajpoot, Nasir M and Raza, Shan E Ahmed}, |
|
doi = {10.1038/s43856-022-00186-5}, |
|
issn = {2730-664X}, |
|
journal = {Communications Medicine}, |
|
month = {sep}, |
|
number = {1}, |
|
pages = {120}, |
|
publisher = {Springer US}, |
|
title = {{TIAToolbox as an end-to-end library for advanced tissue image analytics}}, |
|
url = {https://www.nature.com/articles/s43856-022-00186-5}, |
|
volume = {2}, |
|
year = {2022} |
|
} |
|
``` |