Skip to main content

Deep learning with remote sensing data.

Project description

Aeroenet

Python library to work with geospatial raster and vector data.

Modules

.backend

Keras losses (tensorflow backend)

  • .losses
    -- jaccard_loss
    -- bce_jaccard_loss
    -- cce_jaccard_loss
    -- custom_bce_jaccard_loss
  • .metrics
    -- iou_score
    -- f_score
    -- f1_score

.criterions

Metrics to work with spatial data

  • .raster
    -- IoU
    -- mIoU
  • .vector
    -- mAP50/mAP5095/mAPxx - instance-wise metric
    -- area_iou

.dataset

  • .raster
    -- Band/BandCollection
    -- BandSample/BandSampleCollection
  • .vector
    -- Feature/FeatureCollection
  • .transforms
    -- polygonize
    -- rasterize
  • .io
    -- Predictor
    -- WindowReader
    -- SampleWindowWriter
    -- SampleCollectionWindowWriter
  • .visualization
    -- add_mask

Quick start

import os
import matpoltib.pyplpot as plt 

from aeronet.dataset import BandCollection
from aeronet.dataset import RandomDataset

from aeronet.dataset.utils import parse_directory
from aeronet.dataset.visualization import add_mask

# configuration
SRC_DIR = '/path/to/elements/'
channels = ['RED', 'GRN', 'BLU']
labels = ['100']

# directories of dataset elements
dirs = [os.path.join(SRC_DIR, x) for x in os.listdir(SRC_DIR)]
print('Found collections: ', len(dirs), end='\n\n')

# parse channels in directories
band_paths = [parse_direcotry(x, channels + labels) for x in dirs]
print('BandCollection 0 paths:\n', band_paths[0], end='\n\n')

# convert to `BandCollection` objects
band_collections = [BandCollection(fps) for fps in band_paths]
print('BandCollection 0 object:\n', repr(band_collections[0]))


# create random dataset sampler
dataset = RandomDataset(band_collections, 
                        sample_size=(512, 512), 
                        input_channels=channels, 
                        output_labels=labels,
                        transform=None) # pre-processing function

# get random sample
generated_sample = dataset[0]
image = generated_sample['image']
mask = generated_sample['mask']

#visualize
masked_image = add_mask(image, mask)

plt.figure(figsize=(10,10))
plt.imshow(masked_image)
plt.show()                    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for aeronet, version 0.0.6
Filename, size & hash File type Python version Upload date
aeronet-0.0.6-py2.py3-none-any.whl (23.7 kB) View hashes Wheel py2.py3
aeronet-0.0.6.tar.gz (18.6 kB) View hashes Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page