cleanlab / cleanlab/cleanvision
Expose methods for calculating statistics on individual images for on the fly evaluation
- Dominant language
- Python
- Stars
- 1.2k
- Forks
- 83
- PR merge metrics
- No merged PRs in 30d
Description
### 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](https://github.com/cleanlab/cleanvision/blob/main/src/cleanvision/issue_managers/image_property.py). The main methods here for calculating statistics and scores: [calculate](https://github.com/cleanlab/cleanvision/blob/main/src/cleanvision/issue_managers/image_property.py#L348) and [get_scores](https://github.com/cleanlab/cleanvision/blob/main/src/cleanvision/issue_managers/image_property.py#L351) can be found for each property.
### API
```python
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
```
Contributor guide
Research direction
Start with src/cleanvision/issue_managers/image_property.py and read the calculate and get_scores methods for each image property. Trace how cleanvision.utils exposes public functions, then make the requested per-image statistics and scores available for PIL images; done means the documented get_entropy and get_low_information_score calls work for individual images.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-vision, data
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100