cleanvision
cleanvision copied to clipboard
Expose methods for calculating statistics on individual images for on the fly evaluation
Motivation
Sometimes statistics on images like blurriness, brightness, entropy need to be monitored in a streaming setting for each individual image. For example, measuring entropy of images in an inference pipeline. Right now CleanVision only supports issue detection in images in a batch setting.
Goal
The goal here is to expose calculation of statistics like entropy, brightness, etc, for individual images from the package wrapped inside a module.
Code Details
The methods exist in a private module src/cleanvision/issue_managers/image_property.py. The main methods here for calculating statistics and scores: calculate and get_scores can be found for each property.
API
from cleanvision.utils import get_entropy, get_low_information_score
entropy = get_entropy(image) # PIL image
low_information_score = get_low_information_score(image) # PIL image
Hello @sanjanag! As per my understanding, we need to create individual files for each property (blurriness, brightness, entropy) inside utils directory. Further, the methods in these files are written same as in image_property.py. Correct?
Hi @manulpatel ! No, we don't need to create individual files for each property, expose all of them from the same module. There's no need to copy over code as well, you just need to internally call the methods in image_property.py appropriately.
Related to: https://github.com/cleanlab/cleanvision/issues/209