Earth observation processing framework for machine learning in Python
MIT License
Bot releases are hidden (Show)
Published by AleksMat over 2 years ago
EOPatch
changes:
pickle
to Geopackage, GeoJSON, and JSON files. Objects saved with pickle
can be loaded but the format is deprecated.in
keyword for checking whether an EOPatch
contains a given feature.EOPatch
plotting functionality, which now features a simpler matplotlib
back-end. See example notebook for more details.EOPatch
methods such as get_feature
, rename_feature
, etc.EOPatch.__repr__
method) skips empty features.EOTask
changes:
EOTask
method _parse_features
replaced with get_feature_parser
and additional helper methods (parse_feature
, parse_renamed_feature
, parse_features
, parse_renamed_features
).EOTask.__mul__
as task concatenation as it was unsound.EONode
is a newly introduced object for specifying computational graphs. It replaces raw EOTask
objects when building an EOWorkflow
.
EOWorkflow
changes:
LinearWorkflow
is replaced with linearly_connect_tasks
function that prepares nodes for a linear workflow.InputTask
.EONodes
form a tree-like structure of dependencies, hence the end-nodes of a workflow contain all information. An EOWorkflow
object can be constructed from end-nodes via from_endnodes
method.EOExecutor
changes:
RayExecutor
as an extension of EOExecutor
for working with the ray
library.EONode
objects instead of EOTasks
.OutputTask
.filesystem
argument for saving logs and reports.FeatureParser
now supports fewer input formats but handles those better. It now returns lists instead of generators. See documentation for more information.
WorkflowResults
are re-done. They now contain execution stats of nodes (start and end times) and the outputs of OutputTask
s in the workflow.
FeatureType
method is_time_dependant
renamed to is_temporal
.
LinearFunctionTask
which applies a linear function to features.MorphologicalFilterTask
moved from ml_tools
to features
module.geometry
to ml_tools
module. Sampling tasks have also been greatly upgraded, with the main being:
FractionSamplingTask
for sampling random points in a class-balanced wayBlockSamplingTask
for randomly sampling larger blocks of data (can also be 1 pixel blocks)GridSamplingTask
for deterministically sampling according to a grid.feature_extractor
module.ml_tools
(classifier
, postprocessing
, ...)extra
modules.black
and is now checked to be compliant with the standard.Published by zigaLuksic almost 3 years ago
Changelog:
lazy_loading=True
SentinelHubInputTask
now requests bands with correct units and should now work with more data collections. The parameter bands_dtype
is now by default set to None
, which uses the default units of each band. Note: due to changes the task no longer normalizes the output when bands_dtype=np.uint16
is used.Published by AleksMat about 3 years ago
Changelog:
EOWorkflow
now automatically makes a shallow copy of each EOPatch
before passing it to any EOTask
in the workflow.Task
. Old names have been deprecated.EOPatch.copy
and EOPatch.__delitem__
methods.eolearn.io.MeteoblueRasterTask
and eolearn.io.MeteoblueVectorTask
for obtaining weather data. Joint effort with Meteoblue.VectorToRasterTask
now supports rasterization of time-dependant vector features. Contributed by @asylve.SentinelHubInputTask
. Both SentinelHubInputTask
and SentinelHubEvalscriptTask
now return EOPatches with timestamps that don't have timezone information anymore.rasterio
dependency to rasterio>=1.2.7
eolearn.core
tests ported to pytest
framework.Published by AleksMat over 3 years ago
Changelog:
SaveTask
and LoadTask
don't automatically store a filesystem object anymore,ImportFromTiff
about file extensions, contributed by @rpitonak,SentinelHubInputTask
about data collection bands handling,GeoDBVectorImportTask
,NormalizedDifferenceIndexTask
doesn't show division warnings anymore,PointSamplingTask
Published by AleksMat over 3 years ago
Changelog:
VectorImportTask
, GeopediaVectorImportTask
, and GeoDBVectorImportTask
to eo-learn-io
.Published by AleksMat over 3 years ago
Changelog:
eo-learn-io
tasks that interact with Sentinel Hub services:
SentinelHubEvalscriptTask
that downloads data given a user-defined evalscript.SentinelHubInputTask
and SentinelHubEvalscriptTask
which use Sentinel Hub Process API.AddSen2CorClassificationFeature
to SentinelHubSen2corTask
. Now it uses Process API instead of OGC.AddMultiCloudMaskTask
to CloudMaskTask
.AddCloudMaskTask
as it is superseded by CloudMaskTask
.scikit-learn
version.eo-learn
repository.KeyboardInterrupt
in EOExecutor
,Published by AleksMat over 3 years ago
Changelog:
sentinelhub-py
3.2.0
and s2cloudless
1.5.0
.eolearn.coregistration.RegistrationTask
.eolearn.io.ExportToTiff
with paths on Windows.Published by AleksMat almost 4 years ago
Changelog:
sentinelhub-py
and Sentinel Hub services.SentinelHubInputTask
to better support any type of data collection. Using new DataCollection
class from sentinelhub-py
.ExportToTiff
and ImportFromTiff
tasks to support writing and reading from AWS S3 buckets. Implemented in cooperation with @wouellette.EOPatch.merge
method and MergeEOPatchesTask
task for merging the content of any number of EOPatches. Implemented in cooperation with @wouellette.EOPatch.concatenate
in favour of EOPatch.merge
.eolearn.features.DoublyLogisticApproximationTask
, contributed by @bsircelj.config
for SaveTask
and LoadTask
to enable defining custom AWS credentials.eolearn.features.ValueFilloutTask
.eo-learn
(sub)packages also as wheels.Published by AleksMat about 4 years ago
Changelog
geopandas
version 0.8
eolearn.features.ClusteringTask
, contributed by @bsirceljEOExecutor
SentinelHubInputTask
has now boolean type instead of uint8Published by AleksMat over 4 years ago
Changelog:
compress
parameter to ExportToTiff
, contributed by @atedstonePublished by AleksMat over 4 years ago
Changelog:
SentinelHubInputTask
and AddCloudMaskTask
Published by AleksMat over 4 years ago
Changelog:
SentinelHubInputTask
:
config
parameterSI_LULC_pipeline
notebook.Published by AleksMat over 4 years ago
Changelog:
geopandas
version 0.7.0
.eolearn.core.eodata_io.save_eopatch
function.eolearn.mask.MaskFeature
task - it now works also works with time-independent feature types.eolearn.io.SentinelHubInputTask
task.Published by AleksMat over 4 years ago
Change log:
sentinelhub-py
version 3.0.0
Published by iovsn over 4 years ago
eolearn.io.SentinelHubInputTask
: evalscript version was not passed to the sentinel-hub service.eolearn.core.EOWorkflow
: fixed generating task dependencies.Published by AleksMat almost 5 years ago
Changelog:
Added tasks eolearn.io.SentinelHubInputTask
and eolearn.io.SentinelHubDemTask
that implement satellite data download from Sentinel Hub Processing API.
Extended EOPatch saving and loading with PyFilesystem2
package:
PyFilesystem2
,eolearn.core.SaveTask
and eolearn.core.LoadTask
.Added eolearn.mask.AddMultiCloudMaskTask
for multi-temporal cloud detection.
Added official support for Python 3.8
.
Added multiple use case examples, contributed by @drewbo:
eolearn.io.ExportToTiff
task can now export into a custom CRS, contributed by @wouellette.
Improved Contributions guidelines, contributed by @PeterFogh.
Published by AleksMat about 5 years ago
Change log:
eolearn.core
:
DuplicateFeature
,InitializeFeature
,MoveFeature
,MergeFeatureTask
,MapFeatureTask
,ZipFeatureTask
,ExtractBandsTask
,CreateEOPatchTask
eolearn.features
:
ValueFilloutTask
,EuclideanNormTask
,NormalizedDifferenceIndexTask
eolearn.mask
:
SnowMask
,TheiaSnowMask
,ClassFrequencyTask
eolearn.ml_tools
:
TrainTestSplitTask
AddCloudMaskTask
VectorToRaster
now has optional parameters overlap_value
and buffer
ErosionTask
S1IWWMSInput
and S1IWWCSInput
tasks now have an optional parameter for orbit directionEOWorkflow.make_linear_workflow
methodLinearWorkflow
and WorkflowResults
EOExecutor
and the report it generatesfastai
, contributed by @GeoyiPublished by AleksMat over 5 years ago
Change log:
EOPatch
visualization are not being installed by default anymore. They can be installed additionally with pip install eo-learn-visualization[FULL]
option.Published by AleksMat over 5 years ago
Change log:
eolearn.core
to a new subpackage eolearn.visualization
EOExecutor
and how parallelization is handledEOExecutor
LinearInterpolation
task is now using numba
in the background for better performanceVectorToRaster
have changed. Both VectorToRaster
and RasterToVector
tasks have been improved.eolearn.geometry
ImportFromTiff
task to eolearn.io
, contributed by @drewboPublished by AleksMat over 5 years ago
Change log:
tqdm
progress bar to EOExecutor
.multiprocessing
to concurrent.futures
in EOExecutor
.ExportToTiff
can now export multi-channel tiff images and works with time-dependet features. Contributed by @wouellettesentinelhub-py
version 2.5.0
.InterpolationTask
(could happend only on Windows machines).eolearn.io
.EOWorkflow
, added get_tasks
method.