Earlier quoted context omitted.
Congratulation to you and the team. I have just one question in the world of tensorflowjs how do I run this project on a browser I was hoping to use this project to introduce high students to data science ?
I haven no experience with TensorFlow.js. That said, using the RoboSat ONNX model exporter (rs export) you should be able to go from a trained PyTorch model to a portable ONNX protobuf, then from there to a TensorFlow model, and eventually to TensorFlow.js. At least that's how I would approach it. Keep me posted if you look into it and get it working, interesting use-case for sure.
RoboSat: feature extraction from aerial and satellite imagery
11–16 of 16 posts
Re: RoboSat: feature extraction from aerial and satellite imagery
#12Have you released pre-trained models? It would be pretty useful if you did, even as a just basis for transfer learning. Also a description of the model that is used? I assume this is the code[1], which references https://arxiv.org/abs/1806.00844 , but the code doesn't seem to use WideResnet (although I really know Keras much better than PyTorch so I'm probably missing something. [1] https://github.com/mapbox/robosat/…
The model architecture is kept simple on purpose. It used to be an encoder-decoder U-Net'ish architecture which we trained from scratch. Recently (https://github.com/mapbox/robosat/pull/46) I switched out the encoder to a pre-trained ResNet, as proposed by Alexander Buslaev. It's a mix of the papers listed in the docstring at the top with a focus on simplicity and maintainability:
https://github.com/mapbox/robosat/blob/1e687552fe9b254a14d55...
Internally we were also exploring a multi-class PSPNet but decided not to move forward with it right now: the RoboSat model is currently a binary model (feature vs. background) which makes a few things easier in practice, such as efficiently storing results which is needed when scaling it up e.g. to all of North America.
Re: RoboSat: feature extraction from aerial and satellite imagery
#13Re: RoboSat: feature extraction from aerial and satellite imagery
#14Have you released pre-trained models? It would be pretty useful if you did, even as a just basis for transfer learning. Also a description of the model that is used? I assume this is the code[1], which references https://arxiv.org/abs/1806.00844 , but the code doesn't seem to use WideResnet (although I really know Keras much better than PyTorch so I'm probably missing something. [1] https://github.com/mapbox/robosat/…
We haven't released pre-trained models yet. Mostly for two reasons: 1/ The PyTorch checkpoints depend on the specific Python model class. Even if you refactor only e.g. a MaxPool layer into a direct functional.max_pool function call, loading old checkpoints will no longer work. We have an ONNX model exporter now (rs export) which allows for self-contained and portable protobuf model and weight files. This workflow ne…
If I'm working in a new domain (which this is to me) then I prefer to get the workflow right (files in the right directories etc) before changing the NN architecture. It's a pretty big time investment to train a NN just to try it.
Re: RoboSat: feature extraction from aerial and satellite imagery
#15Hi Daniel, in your experience, what features is this model most suited for and with what granularity of imagery? For example, buildings/roads with landsat(30m)? Cars with 30cm resolution imagery?
There is not a single feature this model is most suited for: you can add arbitrary features (e.g. tennis courts, swimming pools) in pre-processing and train your model. Then the imagery quality depends on your feature, for example it will be hard to impossible to spot swimming pools in Landsat imagery.
Re: RoboSat: feature extraction from aerial and satellite imagery
#16We even use a Unet architecture with a pretrained resnet50 encoder, and some postprocessing to go from prob maps to polygons, like this project does. Of course, we are much more limited than what you propose, but it is reassuring our side project took the same course as what bugger entities do.