Skip to content

Conversation

@bfalls
Copy link
Owner

@bfalls bfalls commented Dec 25, 2025

  • Added a saliency API surface for per-8x8 block importance scores with configurable edge/contrast weighting and optional debug outputs.
  • Implemented CPU saliency calculation (luma extraction, blur-based contrast, Sobel edges, block aggregation, percentile normalization) plus heatmap/CSV debug writers.
  • Registered the saliency header and source in the Visual Studio project and filters.
  • Applied per-block coefficient scaling in the CPU DCT/quantization loop so quality maps bias bits toward important regions without altering global quant tables.
  • Derived saliency-driven block scaling from quality-map settings, including strength/min/max mapping, debug-aware saliency computation, and milder chroma scaling before invoking CPU compression passes.
  • Added an optional per-block inverse scale parameter to the GPU channel compression API to support quality map inputs without altering existing defaults.
  • CUDA DCT/quantization now accepts a device block-scale map and applies per-block coefficient scaling before quantization for standards-compliant quality-map control.
  • The GPU compression path computes saliency-driven block scales on the host, uploads per-channel maps (with milder chroma influence), and threads them through the CUDA launches.
  • Added helpers to auto place quality-map debug artifacts during compare runs, capture output sizes/timings/PSNR, and print a condensed compare table while avoiding duplicate GPU debug writes.
  • Documented a quality-map demo command that emits heatmaps and comparison output details in the README
  • Ensure the quality-map compare summary table always prints during compare runs, even when the GPU path is unavailable, filling in placeholder values when needed.
  • Enabled self-hosted builds, cached vcpkg and use local CUDA 13.0.

@bfalls bfalls merged commit ea7d623 into main Dec 25, 2025
1 check passed
@bfalls bfalls deleted the feature/content-aware-quality-map branch December 27, 2025 00:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants