Comments (11)
Are you running the Slovenia land use land cover example?
from eo-learn.
from eo-learn.
Dear @DanielMoraite
I'm working at Sinergise with the EO Research team, where we are also developing and maintaining eo-learn.
If you want to include Planet data that you already have at hand, the best way would be to look at some EOTask examples and create your own EOTask that appropriately loads the data that you have.
Cheers!
from eo-learn.
Hi @mlubej
I checked the Slovenia land use land cover example, but as I've now added a description above, saving and loading from a disk is not feasible in my case as the number of EOPatches is huge. I'd prefer getting final results from the EOExecutor itself.
Thanks,
Divyani
from eo-learn.
Hi @mlubej
I checked the Slovenia land use land cover example, but as I've now added a description above, saving and loading from a disk is not feasible in my case as the number of EOPatches is huge. I'd prefer getting final results from the EOExecutor itself.Thanks,
Divyani
Dear @divyanipatil,
the EOExecutor is moody sometimes, or at least this is what we noticed. You could try executing the last processing chain in the standard workflow and not with the executor, in the same way as the workflows before, in the same notebook.
See also this comment in #73
from eo-learn.
Hi @mlubej
I think there's some miscommunication. I was wondering why the return type of EOExecutor.run() is None. This specific use case of mine requires run() to return the WorkflowResult object obtained from execution of the Workflow.
Currently, this is how the method looks:
def _execute_workflow(cls, process_args):
workflow, input_args, log_path = process_args
if log_path:
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
handler = cls._get_log_handler(log_path)
logger.addHandler(handler)
stats = {'start_time': dt.datetime.now()}
try:
_ = workflow.execute(input_args, monitor=True)
except BaseException:
stats['error'] = traceback.format_exc()
stats['end_time'] = dt.datetime.now()
if log_path:
handler.close()
logger.removeHandler(handler)
return stats
And this is how I require it to be:
def _execute_workflow(cls, process_args):
workflow, input_args, log_path = process_args
if log_path:
logger = logging.getLogger()
logger.setLevel(logging.DEBUG)
handler = cls._get_log_handler(log_path)
logger.addHandler(handler)
stats = {'start_time': dt.datetime.now()}
try:
result = workflow.execute(input_args, monitor=True)
except BaseException:
stats['error'] = traceback.format_exc()
stats['end_time'] = dt.datetime.now()
if log_path:
handler.close()
logger.removeHandler(handler)
return result, stats
from eo-learn.
@AleksMat was there a specific reason for the above implementation of EOExecutor? I also think that getting the resulting WorkflowResults would be good :)
@divyanipatil It seems that you already exactly know what you want, so it would be great if you could do a pull request and contribute yourself!
Thanks!
from eo-learn.
@AleksMat was there a specific reason for the above implementation of EOExecutor? I also think that getting the resulting WorkflowResults would be good :)
This is exactly what i need to know, any specific reason the current implementation of EOExecutor. If not, I could go ahead and raise a PR for same.
Thank you so much!
from eo-learn.
Please, go ahead and create a PR! If you need it, then there is value in it. We can discuss the details later.
Thank you so much for contributing!
from eo-learn.
@divyanipatil @mlubej An alternative perhaps is to add at the end of the EOWorkflow a task that will either:
- delete everything except results in the EOPatch and save it to disk
- move results from an EOPatch to a new one and save it to disk
In both cases you'll end up with a light EOPatch that will contain only the feature that you're interested in (i.e. results of a classification) and will not require large amounts of storage.
from eo-learn.
In both cases you'll end up with a light EOPatch that will contain only the feature that you're interested in (i.e. results of a classification) and will not require large amounts of storage.
Hi @azupanc
As my use-case is semantic segmentation, the result would be an array of values, not a single classification category, hence storing and loading from disk is not feasible.
from eo-learn.
Related Issues (20)
- [BUG] ImportError: cannot import name 'PointSamplingTask' from 'eolearn.geometry' HOT 5
- SI_LULC_pipeline notebook HOT 9
- readthedocs links not working HOT 1
- [FEAT] Enable timestamp filtering from interval end towards interval start HOT 5
- [BUG] SentinelHubInputTask downloads incorrect timestamps HOT 6
- [BUG] Issue with the SpatialResizeTask in ImportTiffPipeline when using the resolution approach HOT 5
- [BUG] eo-learn installation issue due to open-cv latest update on Dec 30, 2022. HOT 2
- Registration HOT 4
- [BUG] Failing tests on MacOS related to lock-related EOExecutor tests HOT 1
- [BUG] Reading EOPatches saved with eo-learn 0.10.1 with eolearn 1.4 HOT 2
- [HELP] Where has eopatch_to_dataset gone? HOT 6
- [FEAT] TDigestTask handle nans HOT 1
- [HELP] Error when I'm trying to run land-cover-map HOT 5
- [HELP] Perform sen2cor atmospheric correction on L1C EOPatch HOT 2
- [HELP] Using eo-learn for the classification of land surface types of Ukraine HOT 23
- Why I have problems with these imports? HOT 3
- ExecutableNotFound: failed to execute WindowsPath('dot'), make sure the Graphviz executables are on your systems' PATH HOT 3
- how do i fix this HOT 2
- CRSError in rasterio when using ExportToTiffTask HOT 6
- `eo-learn` 1.5.0 migration guide
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eo-learn.