Comments (8)
I've actually been moving away from adding the plotting directly inside the LightningModule and using a custom Callback instead. There are methods like on_validation_batch_end
which have access to the current batch
, module
, batch_idx
, etc. which can essentially replicate what the current figure logging was doing.
from torchgeo.
Probably better to have in a tutorial or just reference the Lightning docs so we don't have to maintain them.
from torchgeo.
Another option would be to remove any figure logging from TorchGeo entirely. If users want it, they can subclass the trainer and add it. This feature has historically been a nightmare to maintain/test and has been riddled with bugs. The proposal here is to make it even more complicated.
More positively, can you start a discussion with the Lightning folks to see if there is an easier way to do this automatically? Or a way that can unify the interface somehow? This just seems like too much work to support out of the box.
from torchgeo.
RE lightning I see a lot of work was done in Lightning-AI/pytorch-lightning#6227 but ultimately they decided this was too complex to maintain, and closed the PR.
Perhaps as you say, logging figures should be left to users to subclass the trainers. I think basic logging of samples on the dataset is a necessity however
from torchgeo.
I agree that using the callbacks will be the most intuitive approach. Do we think it's best to utilise them or just have a 'best practice' guide perhaps?
from torchgeo.
Been reading on Rastervision, perhaps we can utilise its plotting functionality with lightning callbacks - a simple tutorial could suffice https://docs.rastervision.io/en/stable/usage/tutorials/visualize_data_samples.html
from torchgeo.
Is there something wrong with TorchGeo's plotting functionality (i.e., dataset.plot(sample)
)? It's certainly not perfect, but I don't know if Raster Vision's is any better.
from torchgeo.
Nothing wrong - I thought at some point there was a comment or issue about externalising the plotting
from torchgeo.
Related Issues (20)
- Check if bbox of intersection is valid HOT 4
- Git clone and pip install results in 'Successfully installed UNKNOWN-0.0.0' HOT 10
- class_weights cannot be passed via config file as a tensor is expected HOT 5
- README.md benchmark dataset code HOT 18
- AgriFieldNet missing filename glob HOT 3
- CLI script for test HOT 2
- PatternNet download link is broken HOT 2
- VHR10 plot fails for negative split HOT 1
- VHR10 uses 'masks' as data_key, not 'mask' HOT 2
- Support classwise metrics HOT 3
- Figure plotting with Eurosat & classification trainer gives blank images HOT 3
- What values are being "clipped to the interval [0, 98]" HOT 4
- Adding custom dataset for multiclassification HOT 10
- VectorDataset has always the same time range from 0 to sys.maxsize and how to deal with multiple image and mask pairs for training. HOT 7
- BigEarthNet download links are broken HOT 3
- Normalization in Datamodules does not use correct statistics HOT 1
- RasterDataset: res does not change when crs changes HOT 12
- Multiclass Classification: assert num_classes >=2 HOT 4
- GridGeoSampler resamples same image repeatedly with separate_files and multiple dates HOT 5
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 torchgeo.