Inspiration

What it does

How we built it

Inspiration

Images are widely used in research, photography, field documentation, datasets, and everyday communication, but poor image quality can reduce their usefulness. Blur, excessive brightness, darkness, low contrast, poor exposure, and inadequate resolution are common problems that are often noticed only after an image has already been captured or added to a dataset.

VisionCheck AI was created to provide a simple, interactive way to evaluate image quality before an image is accepted for further use.

What it does

VisionCheck AI analyzes an uploaded image using OpenCV and evaluates five major quality characteristics:

  • Sharpness
  • Brightness
  • Contrast
  • Exposure
  • Resolution

The application calculates numerical quality scores and provides an overall VisionCheck Score together with a descriptive quality status such as CLEAR, BLURRED, TOO DARK, TOO BRIGHT, LOW CONTRAST, POOR EXPOSURE, or LOW RESOLUTION.

It also provides a short recommendation explaining what may need to be improved.

VisionCheck AI is designed for researchers preparing image datasets, photographers reviewing captured images, field users documenting observations, and general users who want a fast image-quality check.

Interactive Quality Control Web

A key feature of VisionCheck AI is the Interactive Quality Control Web.

The five-point spider-web interface allows the user to adjust the decision thresholds for sharpness, brightness, darkness, contrast, and exposure in real time.

When a threshold point is moved, the currently loaded image is immediately re-evaluated. This allows users to adapt VisionCheck AI to different cameras, environments, imaging conditions, and application requirements.

The image-quality metrics are mathematically computed, while the default decision thresholds are practical empirical starting points that can be tuned interactively.

How we built it

VisionCheck AI was developed in Python with OpenCV 5 as the primary image-processing engine.

The main image-quality measurements include:

  • Variance of the Laplacian for sharpness estimation
  • Mean grayscale intensity for brightness assessment
  • Standard deviation of grayscale intensity for contrast measurement
  • Bright and dark pixel clipping analysis for exposure assessment
  • Image dimensions and megapixel count for resolution assessment

These measurements are normalized and combined into an overall VisionCheck Score.

The desktop interface was developed using Tkinter and Pillow. A custom interactive spider-web control was implemented to provide real-time threshold adjustment.

The project also includes an AWS deployment component for cloud-based analysis and reproducible deployment.

Dataset and evaluation

For prototype evaluation, we organized a balanced image dataset containing 120 images across three visual categories:

  • Human
  • Flora and Fauna
  • Scenery

Each category contains 20 good-quality and 20 poor-quality images, resulting in 60 good and 60 poor-quality images overall.

This diverse dataset allows VisionCheck AI to be evaluated across different visual subjects instead of being limited to a single imaging domain.

Final evaluation includes classification performance, representative successes, challenging cases, and known limitations.

Challenges

One major challenge was defining quality thresholds that remain useful across very different types of images.

For example, a sunset may naturally contain bright regions, while a wildlife or indoor image may have very different brightness and contrast characteristics.

Instead of treating one fixed threshold as universally correct, VisionCheck AI provides interactive threshold tuning so that the user retains control over the quality criteria.

Another challenge was making the application simple enough for nontechnical users while still exposing the underlying quality measurements.

What we learned

We learned that image quality cannot always be represented by a single score.

Different quality characteristics must be considered together, and acceptable values can depend on the intended application.

This motivated the combination of numerical OpenCV measurements, descriptive quality outputs, recommendations, and interactive user-adjustable thresholds.

Responsible use and limitations

VisionCheck AI is a decision-support tool and does not determine whether an image is scientifically valid, aesthetically good, or suitable for every professional application.

Quality thresholds may need adjustment depending on image content, camera characteristics, and intended use.

The system therefore keeps the user in control and clearly exposes both the measured scores and adjustable decision thresholds.

What's next

Future development will include larger and more diverse evaluation datasets, automatic threshold calibration, additional image-quality metrics, cloud-based batch analysis, and integration into research and photographic workflows.

Our goal is to make VisionCheck AI a practical and transparent image-quality screening tool that can be adapted to different users and imaging environments.

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for Untitled

Built With

+ 13 more
Share this project:

Updates

Submission history