You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I would like to be able, on a big dataset, to store image-level metrics.
Context
For example
Image1 :
WeightedFmeasure : 92%
Emeasure : 94%
tags: foo, bar
Image2 :
WeightedFmeasure : 93%
Emeasure : 90%
tags: bar
Image3 :
WeightedFmeasure : 88%
Emeasure : 97%
tags : foo
And then to be able to run the evaluation on different tags (foo/bar) (without re-running the image-level metrics computation)
Actual
In the current lib it is not direct to do this, because the image-level processing, and the cross-images processing are made together, and there is no cross-metric convention.
Suggestion
In metric.step(pred, gt)
return the image-level value of the metric (could be an array for dynamic results)
Run in 2 different steps
Compute the metric metric.compute(pred, gt) -> value
Store the value internally metric.load(pred, gt)
As a result
We can store image-level metrics when running metric.step(pred, gt)
We can reuse pre-stored metrics using metric.load(value) afterward, before running metric.get_results()
Would you be interested to change the API for this ? Would you like some help ?
The text was updated successfully, but these errors were encountered:
piercus
changed the title
add a load()step()
Split image-level processing from cross-image processing
Jul 24, 2024
Hello @lartpang, thanks for this great lib.
I would like to be able, on a big dataset, to store image-level metrics.
Context
For example
Image1 :
Image2 :
Image3 :
And then to be able to run the evaluation on different tags (foo/bar) (without re-running the image-level metrics computation)
Actual
In the current lib it is not direct to do this, because the image-level processing, and the cross-images processing are made together, and there is no cross-metric convention.
Suggestion
In
metric.step(pred, gt)
metric.compute(pred, gt) -> value
metric.load(pred, gt)
As a result
metric.step(pred, gt)
metric.load(value)
afterward, before runningmetric.get_results()
Would you be interested to change the API for this ? Would you like some help ?
The text was updated successfully, but these errors were encountered: