DenseNet-Keras with ImageNet Pretrained Models
This is an Keras implementation of DenseNet with ImageNet pretrained weights. The weights are converted from Caffe Models. The implementation supports both Theano and TensorFlow backends.
To know more about how DenseNet works, please refer to the original paper
Densely Connected Convolutional Networks
Gao Huang, Zhuang Liu, Kilian Q. Weinberger, Laurens van der Maaten
arXiv:1608.06993
Pretrained DenseNet Models on ImageNet
The top-1/5 accuracy rates by using single center crop (crop size: 224x224, image size: 256xN)
Network | Top-1 | Top-5 | Theano | Tensorflow |
---|---|---|---|---|
DenseNet 121 (k=32) | 74.91 | 92.19 | model (32 MB) | model (32 MB) |
DenseNet 169 (k=32) | 76.09 | 93.14 | model (56 MB) | model (56 MB) |
DenseNet 161 (k=48) | 77.64 | 93.79 | model (112 MB) | model (112 MB) |
Usage
First, download the above pretrained weights to the imagenet_models
folder.
Run test_inference.py
for an example of how to use the pretrained model to make inference.
python test_inference.py
Fine-tuning
Check this out to see example of fine-tuning DenseNet with your own dataset.
Requirements
- Keras
1.2.22.0.5 - Theano 0.8.2 or TensorFlow
0.12.01.2.1
Updates
- Keras 2.0.5 and TensorFlow 1.2.1 are supported