Skip to main content

GeoPatch is a package for generating patches from remote sensing data

Project description

GeoPatch is a package for generating patches from remote sensing data PyPI version Downloads Github LinkedIn Twitter URL

GeoPatch enables the user to read, process and export GeoTIFFs in various patch sizes. The module is built on the Rasterio library but is much more convenient when it comes to reading and exporting GeoTIFs patches for training deep learning models.

Using this package user is able to feed satellite imagery and corresponding label data and exports patches in both Geotiff and Numpy array.

Any feedback from users is welcome and you can write to me at hejarshahabi@gmail.com in case of any contribution or suggestion.

Quick tutorial on how to use GeoPatch

1- Installation :

pip install GeoPatch

2- Calling the Package:

from GeoPatch import TrainPatch

3- Feeding data

for image and label variables both string and array

can be passed and the function automatically process and read dataset.

patch= TrainPatch( image="xxx/image.tif", label="xxx/label.tif",

patch_size=128, stride=64, channel_first=True)

4- Input data specifications

Using follwoing code the the shape and size of data can be displayed

patch.data_dimension()

5- Patch details

To display the number of orginal image patches can be generated based on given patch size and stride values.

patch.patch_info()

6- Saving image patch as a Geotiff file

To save image patches as Geotiff files in the current working directory with the given "folder_name", and if "only_label" pass as True, only patches will be save that has labelled data.

patch.save_Geotif(folder_name="tif", only_label=True)

7- Saving image patch as a Numpy array

Using this function image patches will be generated in Numpy format with data augmentation options. V_flip and H_flip are used to vertically and horizontally flip patches, respectively, and rotation is used to rotate patches in 90,180 and 270 degree.

patch.save_numpy(folder_name="npy", only_label=False, return_stacked=False, save_stack=False, V_flip=True, H_flip=True, Rotation=True)

#to return numpy patches as a stack file:

patch, label= patch.save_numpy(folder_name="npy", only_label=False, return_stacked=True, save_stack=False, V_flip=True, H_flip=True, Rotation=True)

8- Patch visualization

Patches with their corresponding labels can be displayed using this line of code.

In "folder_name" the exact name of the folder that patches are located in should be passed.

patch.visualize(folder_name='npy',patches_to_show=2,band_num=1,

fig_size=(10, 20),dpi=96)

9- Generating Prediction Patch

Using the following line of codes prediction patches can be generated.

from GeoPatch import PredictionPatch
Prediction= PredictionPatch( image="xxx/test_image.tif", patch_size=128, stride=128, channel_first=True)
Prediction.data_dimension()
Prediction.patch_info()

10- Saving Prediction Patches

Using the following line of code prediction patches can be saved as GeoTIF format in the provided folder.

Prediction.save_Geotif('folder_name')

Project details


Download files

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

Source Distribution

GeoPatch-1.1.1.tar.gz (22.5 MB view details)

Uploaded Source

Built Distribution

GeoPatch-1.1.1-py3-none-any.whl (22.5 MB view details)

Uploaded Python 3

File details

Details for the file GeoPatch-1.1.1.tar.gz.

File metadata

  • Download URL: GeoPatch-1.1.1.tar.gz
  • Upload date:
  • Size: 22.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for GeoPatch-1.1.1.tar.gz
Algorithm Hash digest
SHA256 5243717b659d77a554a46805a75b27bc751a48bccaccb5e56cecb6f5704b3a73
MD5 9a680f4df84d9c11f8ce820dc4cac7ca
BLAKE2b-256 4c06fe90b557aa81afabce251ba338ed65fad4c8ec2561b7345fb578ff5da1a1

See more details on using hashes here.

File details

Details for the file GeoPatch-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: GeoPatch-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 22.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for GeoPatch-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 84bad857337cfa3bdfe1566ec73131d03ef4c796bf1bcfb7c5a287f6cf91b4bf
MD5 c9d5a7efbeb7552b90b1664c1ee5b17d
BLAKE2b-256 0d61ebf707252298745c52422d39fb005f9f5255968a9c1de9bcaf564cf0b9b2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page