Comments (6)
Hi,
I believe OP is correct. My code crashes on that line with rectangular input images. Regardless of what PIL uses behind the scenes, the Image.Resize function takes shape as (W,H):
Implementing OP's fix stops the crash and results in the correct CAM (I verified it against CAMs from other packages).
from pytorch-cnn-visualizations.
Indeed a problem, the solution of @zhaoxin111 helped. In addition there is another bug when using grad cam with larger image sizes. The adaptivepooling before the classification is not loaded for both alexnet and vgg. I solved it by adding following line before flattening line43:
x = self.pool.avgpool(x)
from pytorch-cnn-visualizations.
Hey,
Thanks for the notification! I will check/fix it by tonight.
from pytorch-cnn-visualizations.
Hello again,
Sorry for (very) late reply. I think it is correct as it is. PIL uses HWC and torch uses BCHW so HW channels are always one after another.
You can convince yourself that PIL uses HWC with
from PIL import Image
import numpy as np
im = Image.open('image.png')
im_arr = np.asarray(im)
print(im_arr.shape)
I will check the output with a model that accepts input with different H and W size and see if it is actually correct though. Thanks for the heads up.
from pytorch-cnn-visualizations.
Thanks for the heads up! I will have a look at it again!
from pytorch-cnn-visualizations.
hi
from pytorch-cnn-visualizations.
Related Issues (20)
- Why this cam-zoo don't have grad-cam++?May you add grad-cam++ in this project? HOT 1
- Support for LayerCAM HOT 4
- a question on "cam = np.ones(target.shape[1:], dtype=np.float32)" in gradcam.py HOT 2
- How to get the sampling points with deformable conv? HOT 1
- A question about the method to get output from specific layer HOT 4
- Support for non-VGG models. HOT 1
- question on image generation
- Image Reconstruction size is same as conv1 layer HOT 1
- Visualizations for CNN trained on timeseries classification HOT 1
- Could you please provide the feature importance included dataset that has been generated? HOT 1
- AttributeError: 'MyCNN' object has no attribute 'features' HOT 1
- Extract gradient without model_output HOT 3
- GradCAM
- GradCAM HOT 1
- Why take np.maximum(cam, 0) in GradCam? HOT 1
- attention HOT 1
- Help with understanding layer backpropagation. HOT 1
- Can this tool be used on non-classification tasks HOT 1
- Code application related issues HOT 1
- RUN
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pytorch-cnn-visualizations.