Skip to content

Repository files navigation

GradCAM

Tensorflow 2.0 implementation of GradCAM

This is a GradCAM implementation of pretrained models and also custom trained model

output.jpg

Instructions

Select any image and run:

 $ pythonpretrained_gradcam.py--imageimages/rugby.jpeg

Pretrained Models

All pretrained models listed below -

 - VGG16 - VGG19
- ResNet50
- InceptionV3 - InceptionResNetV2
- Xception
- MobileNet
- MobileNetV2
- DenseNet
- NASNet
- EfficientNet | Link - https://github.com/qubvel/efficientnet
> NOTE - You need to install `EfficientNet` seperately from the given link because it's not included in keras application.

You can choose any of the above models, default VGG16:

 $ pythonpretrained_gradcam.py--imageimages/rugby.jpeg--modelVGG16

For specific layer GradCAM run below command:

>model.summary()
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 224, 224, 3)] 0 _________________________________________________________________
block1_conv1 (Conv2D) (None, 224, 224, 64) 1792 _________________________________________________________________
block1_conv2 (Conv2D) (None, 224, 224, 64) 36928 _________________________________________________________________
block1_pool (MaxPooling2D) (None, 112, 112, 64) 0 _________________________________________________________________
block2_conv1 (Conv2D) (None, 112, 112, 128) 73856 _________________________________________________________________
block2_conv2 (Conv2D) (None, 112, 112, 128) 147584 _________________________________________________________________
block2_pool (MaxPooling2D) (None, 56, 56, 128) 0 ....
....

Selected the first conv layer of VGG16:

 $ pythonpretrained_gradcam.py--imageimages/rugby.jpeg--modelVGG16--layerblock1_conv1

Custom Model

Run this command to work with your own trained model:

 $ pythoncustom_gradcam.py--image [image] --model [model] --width [w] --height [h] --layer [layer]

Reference

Grad-CAM: Visualize class activation maps with Keras, TensorFlow, and Deep Learning @pyimagesearch

Thanks ❤️ @jrosebr1


Releases

Packages

Contributors

Languages