te

torchvision-enhance

๐Ÿ”ฅTorchSat ๐ŸŒ is an open-source deep learning framework for satellite imagery analysis based on PyTorch.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

315

Maintenance

Last Commit

1yr ago

Contributors

3

Package

Dependencies

0

License

Categories

Readme


TorchSat is an open-source deep learning framework for satellite imagery analysis based on PyTorch.

This project is still work in progress. If you want to know the latest progress, please check the develop branch.

Hightlight

  • ๐Ÿ˜‰ Support multi-channels(> 3 channels, e.g. 8 channels) images and TIFF file as input.
  • ๐Ÿ˜‹ Convenient data augmentation method for classification, sementic segmentation and object detection.
  • ๐Ÿ˜ Lots of models for satellite vision tasks, such as ResNet, DenseNet, UNet, PSPNet, SSD, FasterRCNN ...
  • ๐Ÿ˜ƒ Lots of common satellite datasets loader.
  • ๐Ÿ˜ฎ Training script for common satellite vision tasks.

Install

  • source: python3 setup.py install

How to use

Features

Data augmentation

We suppose all the input images, masks and bbox should be NumPy ndarray. The data shape should be [height, width] or [height, width, channels].

pixel level

Pixel-level transforms only change the input image and will leave any additional targets such as masks, bounding boxes unchanged. It support all channel images. Some transforms only support specific input channles.

TransformImagemasksBBoxes
ToTensorโœ“โœ“โœ“
Normalizeโœ“โœ“โœ“
ToGrayโœ“โœ“โœ“
GaussianBlurโœ“โœ“โœ“
RandomNoiseโœ“โœ“โœ“
RandomBrightnessโœ“โœ“โœ“
RandomContrastโœ“โœ“โœ“

spatial-level

Spatial-level transforms will simultaneously change both an input image as well as additional targets such as masks, bounding boxes. It support all channel images.

TransformImagemasksBBoxes
Resizeโœ“โœ“โœ“
Padโœ“โœ“โœ“
RandomHorizontalFlipโœ“โœ“โœ“
RandomVerticalFlipโœ“โœ“โœ“
RandomFlipโœ“โœ“โœ“
CenterCropโœ“โœ“โœ“
RandomCropโœ“โœ“โœ“
RandomResizedCropโœ“โœ“โœ“
ElasticTransformโœ“โœ“
RandomRotationโœ“โœ“โœ“
RandomShiftโœ“โœ“โœ“

Models

Classification

All models support multi-channels as input (e.g. 8 channels).

  • VGG: vgg11, vgg11_bn, vgg13, vgg13_bn, vgg16, vgg16_bn, vgg19_bn, vgg19
  • ResNet: resnet18, resnet34, resnet50, resnet101, resnet152, resnext50_32x4d,resnext101_32x8d, wide_resnet50_2, wide_resnet101_2
  • DenseNet: densenet121, densenet169, densenet201
  • Inception: inception_v3
  • MobileNet: mobilenet_v2
  • EfficientNet: efficientnet_b0, efficientnet_b1, efficientnet_b2, efficientnet_b3,efficientnet_b4, efficientnet_b5, efficientnet_b6, efficientnet_b7
  • ResNeSt: resnest50, resnest101, resnest200, resnest269

Sementic Segmentation

  • UNet: unet, unet34, unet101, unet152 (with resnet as backbone.)

Dataloader

Classification

Showcase

If you extend this repository or build projects that use it, we'd love to hear from you.

Reference

Note

  • If you are looking for the torchvision-enhance, please checkout the enhance branch. But it was deprecated.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100